@prutech/compliance 1.0.240 → 1.0.242
Sign up to get free protection for your applications and to get access to all the features.
- package/esm2020/lib/client-communication-history/models/comment-history-columns-def.mjs +2 -1
- package/esm2020/lib/conciliation-appointment-work-list/actions/conciliation-appointment-work-list.actions.mjs +4 -4
- package/esm2020/lib/conciliation-appointment-work-list/components/context-menu/conciliation-context-menu.component.mjs +11 -3
- package/esm2020/lib/conciliation-appointment-work-list/components/schedule-call-back-action/schedule-call-back-action.component.mjs +27 -20
- package/esm2020/lib/conciliation-appointment-work-list/conciliation-appointment-work-list.component.mjs +2 -1
- package/esm2020/lib/conciliation-appointment-work-list/effects/conciliation-appointment-work-list.effect.mjs +16 -3
- package/esm2020/lib/conciliation-appointment-work-list/models/federal-holidays-model.mjs +7 -4
- package/esm2020/lib/conciliation-appointment-work-list/reducers/federal-holidays-list.reducer.mjs +33 -0
- package/esm2020/lib/conciliation-appointment-work-list/reducers/root.reducer.mjs +8 -1
- package/esm2020/lib/conciliation-appointment-work-list/services/conciliation-appointment-work-list.service.mjs +4 -4
- package/esm2020/lib/conciliation-appointment-work-list/state/federal-holidays-list.state.mjs +10 -0
- package/esm2020/lib/noi-work-list/components/conference-by-phone-dialogbox/conference-by-phone-dialogbox.component.mjs +39 -6
- package/esm2020/lib/noi-work-list/components/context-menu/context-menu.component.mjs +6 -2
- package/esm2020/lib/noi-work-list/models/conference-by-phone-formmodel.mjs +2 -2
- package/esm2020/lib/noi-work-list/noi-work-list.component.mjs +11 -8
- package/esm2020/lib/noi-work-list/noi-work-list.module.mjs +4 -3
- package/esm2020/lib/telephone-settled-conference/components/context-menu/context-menu.component.mjs +6 -1
- package/esm2020/lib/telephone-settled-conference/components/re-schedule-call-back-action/re-schedule-call-back-action.component.mjs +24 -2
- package/esm2020/lib/telephone-settled-conference/models/conference-by-phone-formmodel.mjs +2 -2
- package/esm2020/lib/telephone-settled-conference/telephone-settled-conference.component.mjs +15 -8
- package/fesm2015/prutech-compliance.mjs +221 -79
- package/fesm2015/prutech-compliance.mjs.map +1 -1
- package/fesm2020/prutech-compliance.mjs +228 -79
- package/fesm2020/prutech-compliance.mjs.map +1 -1
- package/lib/conciliation-appointment-work-list/actions/conciliation-appointment-work-list.actions.d.ts +3 -3
- package/lib/conciliation-appointment-work-list/components/context-menu/conciliation-context-menu.component.d.ts +2 -0
- package/lib/conciliation-appointment-work-list/components/schedule-call-back-action/schedule-call-back-action.component.d.ts +7 -4
- package/lib/conciliation-appointment-work-list/effects/conciliation-appointment-work-list.effect.d.ts +1 -0
- package/lib/conciliation-appointment-work-list/models/federal-holidays-model.d.ts +5 -3
- package/lib/conciliation-appointment-work-list/reducers/federal-holidays-list.reducer.d.ts +5 -0
- package/lib/conciliation-appointment-work-list/reducers/root.reducer.d.ts +8 -0
- package/lib/conciliation-appointment-work-list/services/conciliation-appointment-work-list.service.d.ts +1 -1
- package/lib/conciliation-appointment-work-list/state/federal-holidays-list.state.d.ts +8 -0
- package/lib/noi-work-list/components/conference-by-phone-dialogbox/conference-by-phone-dialogbox.component.d.ts +7 -0
- package/lib/noi-work-list/components/context-menu/context-menu.component.d.ts +1 -0
- package/lib/noi-work-list/noi-work-list.component.d.ts +3 -1
- package/lib/telephone-settled-conference/components/context-menu/context-menu.component.d.ts +1 -0
- package/lib/telephone-settled-conference/components/re-schedule-call-back-action/re-schedule-call-back-action.component.d.ts +4 -0
- package/lib/telephone-settled-conference/telephone-settled-conference.component.d.ts +4 -1
- package/package.json +1 -1
@@ -89,10 +89,10 @@ export const conferenceByPhoneFormModel = {
|
|
89
89
|
flex: 100,
|
90
90
|
appearance: 'outline',
|
91
91
|
showLabelAbove: true,
|
92
|
-
required:
|
92
|
+
required: false,
|
93
93
|
},
|
94
94
|
],
|
95
95
|
referenceData: undefined,
|
96
96
|
sectionName: undefined,
|
97
97
|
};
|
98
|
-
//# sourceMappingURL=data:application/json;base64,
|
98
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uZmVyZW5jZS1ieS1waG9uZS1mb3JtbW9kZWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9wcnV0ZWNoL2NvbXBsaWFuY2Uvc3JjL2xpYi9ub2ktd29yay1saXN0L21vZGVscy9jb25mZXJlbmNlLWJ5LXBob25lLWZvcm1tb2RlbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUd2RCxNQUFNLENBQUMsTUFBTSwwQkFBMEIsR0FBYztJQUNqRCxZQUFZLEVBQUU7UUFDVjtZQUNJLEtBQUssRUFBRSxRQUFRO1lBQ2YsSUFBSSxFQUFFLGdCQUFnQjtZQUN0QixJQUFJLEVBQUUsZ0JBQWdCLENBQUMsVUFBVTtZQUNqQyxJQUFJLEVBQUUsRUFBRTtZQUNSLFVBQVUsRUFBRSxTQUFTO1lBQ3JCLGNBQWMsRUFBRSxJQUFJO1lBQ3BCLFFBQVEsRUFBRSxJQUFJO1NBQ2pCO1FBQ0Q7WUFDSSxLQUFLLEVBQUUsT0FBTztZQUNkLElBQUksRUFBRSxPQUFPO1lBQ2IsSUFBSSxFQUFFLGdCQUFnQixDQUFDLE1BQU07WUFDN0IsSUFBSSxFQUFFLEVBQUU7WUFDUixVQUFVLEVBQUUsU0FBUztZQUNyQixjQUFjLEVBQUUsSUFBSTtZQUNwQixRQUFRLEVBQUUsSUFBSTtTQUNqQjtRQUNEO1lBQ0ksS0FBSyxFQUFFLFNBQVM7WUFDaEIsSUFBSSxFQUFFLFNBQVM7WUFDZixJQUFJLEVBQUUsZ0JBQWdCLENBQUMsTUFBTTtZQUM3QixJQUFJLEVBQUUsRUFBRTtZQUNSLFVBQVUsRUFBRSxTQUFTO1lBQ3JCLGNBQWMsRUFBRSxJQUFJO1lBQ3BCLFFBQVEsRUFBRSxJQUFJO1NBQ2pCO1FBQ0Q7WUFDSSxLQUFLLEVBQUUsUUFBUTtZQUNmLElBQUksRUFBRSxnQkFBZ0I7WUFDdEIsSUFBSSxFQUFFLGdCQUFnQixDQUFDLFVBQVU7WUFDakMsSUFBSSxFQUFFLEVBQUU7WUFDUixVQUFVLEVBQUUsU0FBUztZQUNyQixjQUFjLEVBQUUsSUFBSTtZQUNwQixRQUFRLEVBQUUsSUFBSTtTQUNqQjtRQUNEO1lBQ0ksS0FBSyxFQUFFLE9BQU87WUFDZCxJQUFJLEVBQUUsT0FBTztZQUNiLElBQUksRUFBRSxnQkFBZ0IsQ0FBQyxNQUFNO1lBQzdCLElBQUksRUFBRSxFQUFFO1lBQ1IsVUFBVSxFQUFFLFNBQVM7WUFDckIsY0FBYyxFQUFFLElBQUk7WUFDcEIsUUFBUSxFQUFFLElBQUk7U0FDakI7UUFDRDtZQUNJLEtBQUssRUFBRSxTQUFTO1lBQ2hCLElBQUksRUFBRSxTQUFTO1lBQ2YsSUFBSSxFQUFFLGdCQUFnQixDQUFDLE1BQU07WUFDN0IsSUFBSSxFQUFFLEVBQUU7WUFDUixVQUFVLEVBQUUsU0FBUztZQUNyQixjQUFjLEVBQUUsSUFBSTtZQUNwQixRQUFRLEVBQUUsSUFBSTtTQUNqQjtRQUNEO1lBQ0ksS0FBSyxFQUFFLE1BQU07WUFDYixJQUFJLEVBQUUsS0FBSztZQUNYLElBQUksRUFBRSxnQkFBZ0IsQ0FBQyxLQUFLO1lBQzVCLElBQUksRUFBRSxHQUFHO1lBQ1QsVUFBVSxFQUFFLFNBQVM7WUFDckIsY0FBYyxFQUFFLElBQUk7WUFDcEIsUUFBUSxFQUFFLElBQUk7U0FDakI7UUFDRDtZQUNJLEtBQUssRUFBRSxjQUFjO1lBQ3JCLElBQUksRUFBRSxhQUFhO1lBQ25CLElBQUksRUFBRSxnQkFBZ0IsQ0FBQyxXQUFXO1lBQ2xDLElBQUksRUFBRSxHQUFHO1lBQ1QsVUFBVSxFQUFFLFNBQVM7WUFDckIsY0FBYyxFQUFFLElBQUk7WUFDcEIsUUFBUSxFQUFFLElBQUk7U0FDakI7UUFDRDtZQUNJLEtBQUssRUFBRSxlQUFlO1lBQ3RCLElBQUksRUFBRSxPQUFPO1lBQ2IsSUFBSSxFQUFFLGdCQUFnQixDQUFDLEtBQUs7WUFDNUIsSUFBSSxFQUFFLEdBQUc7WUFDVCxVQUFVLEVBQUUsU0FBUztZQUNyQixjQUFjLEVBQUUsSUFBSTtZQUNwQixRQUFRLEVBQUUsSUFBSTtTQUNqQjtRQUNEO1lBQ0ksS0FBSyxFQUFFLFVBQVU7WUFDakIsSUFBSSxFQUFFLFVBQVU7WUFDaEIsSUFBSSxFQUFFLGdCQUFnQixDQUFDLFFBQVE7WUFDL0IsSUFBSSxFQUFFLEdBQUc7WUFDVCxVQUFVLEVBQUUsU0FBUztZQUNyQixjQUFjLEVBQUUsSUFBSTtZQUNwQixRQUFRLEVBQUUsS0FBSztTQUNsQjtLQUNKO0lBQ0QsYUFBYSxFQUFFLFNBQVM7SUFDeEIsV0FBVyxFQUFFLFNBQVM7Q0FDekIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFB0RHluYW1pY0VsZW1lbnQgfSBmcm9tICdAcHJ1dGVjaC9jb21wb25lbnRzJztcclxuaW1wb3J0IHsgRm9ybU1vZGVsIH0gZnJvbSAnQHBydXRlY2gvY29tcG9uZW50cyc7XHJcblxyXG5leHBvcnQgY29uc3QgY29uZmVyZW5jZUJ5UGhvbmVGb3JtTW9kZWw6IEZvcm1Nb2RlbCA9IHtcclxuICAgIGVkaXRUZW1wbGF0ZTogW1xyXG4gICAgICAgIHtcclxuICAgICAgICAgICAgbGFiZWw6ICdEYXRlIDEnLFxyXG4gICAgICAgICAgICBuYW1lOiAnc2NoZWR1bGVkRGF0ZTEnLFxyXG4gICAgICAgICAgICB0eXBlOiBQdER5bmFtaWNFbGVtZW50LkRhdGVwaWNrZXIsXHJcbiAgICAgICAgICAgIGZsZXg6IDUwLFxyXG4gICAgICAgICAgICBhcHBlYXJhbmNlOiAnb3V0bGluZScsXHJcbiAgICAgICAgICAgIHNob3dMYWJlbEFib3ZlOiB0cnVlLFxyXG4gICAgICAgICAgICByZXF1aXJlZDogdHJ1ZSxcclxuICAgICAgICB9LFxyXG4gICAgICAgIHtcclxuICAgICAgICAgICAgbGFiZWw6ICdIb3VycycsXHJcbiAgICAgICAgICAgIG5hbWU6ICdob3VyMScsXHJcbiAgICAgICAgICAgIHR5cGU6IFB0RHluYW1pY0VsZW1lbnQuU2VsZWN0LFxyXG4gICAgICAgICAgICBmbGV4OiAyNSxcclxuICAgICAgICAgICAgYXBwZWFyYW5jZTogJ291dGxpbmUnLFxyXG4gICAgICAgICAgICBzaG93TGFiZWxBYm92ZTogdHJ1ZSxcclxuICAgICAgICAgICAgcmVxdWlyZWQ6IHRydWUsXHJcbiAgICAgICAgfSxcclxuICAgICAgICB7XHJcbiAgICAgICAgICAgIGxhYmVsOiAnTWludXRlcycsXHJcbiAgICAgICAgICAgIG5hbWU6ICdtaW51dGUxJyxcclxuICAgICAgICAgICAgdHlwZTogUHREeW5hbWljRWxlbWVudC5TZWxlY3QsXHJcbiAgICAgICAgICAgIGZsZXg6IDI1LFxyXG4gICAgICAgICAgICBhcHBlYXJhbmNlOiAnb3V0bGluZScsXHJcbiAgICAgICAgICAgIHNob3dMYWJlbEFib3ZlOiB0cnVlLFxyXG4gICAgICAgICAgICByZXF1aXJlZDogdHJ1ZSxcclxuICAgICAgICB9LFxyXG4gICAgICAgIHtcclxuICAgICAgICAgICAgbGFiZWw6ICdEYXRlIDInLFxyXG4gICAgICAgICAgICBuYW1lOiAnc2NoZWR1bGVkRGF0ZTInLFxyXG4gICAgICAgICAgICB0eXBlOiBQdER5bmFtaWNFbGVtZW50LkRhdGVwaWNrZXIsXHJcbiAgICAgICAgICAgIGZsZXg6IDUwLFxyXG4gICAgICAgICAgICBhcHBlYXJhbmNlOiAnb3V0bGluZScsXHJcbiAgICAgICAgICAgIHNob3dMYWJlbEFib3ZlOiB0cnVlLFxyXG4gICAgICAgICAgICByZXF1aXJlZDogdHJ1ZSxcclxuICAgICAgICB9LFxyXG4gICAgICAgIHtcclxuICAgICAgICAgICAgbGFiZWw6ICdIb3VycycsXHJcbiAgICAgICAgICAgIG5hbWU6ICdob3VyMicsXHJcbiAgICAgICAgICAgIHR5cGU6IFB0RHluYW1pY0VsZW1lbnQuU2VsZWN0LFxyXG4gICAgICAgICAgICBmbGV4OiAyNSxcclxuICAgICAgICAgICAgYXBwZWFyYW5jZTogJ291dGxpbmUnLFxyXG4gICAgICAgICAgICBzaG93TGFiZWxBYm92ZTogdHJ1ZSxcclxuICAgICAgICAgICAgcmVxdWlyZWQ6IHRydWUsXHJcbiAgICAgICAgfSxcclxuICAgICAgICB7XHJcbiAgICAgICAgICAgIGxhYmVsOiAnTWludXRlcycsXHJcbiAgICAgICAgICAgIG5hbWU6ICdtaW51dGUyJyxcclxuICAgICAgICAgICAgdHlwZTogUHREeW5hbWljRWxlbWVudC5TZWxlY3QsXHJcbiAgICAgICAgICAgIGZsZXg6IDI1LFxyXG4gICAgICAgICAgICBhcHBlYXJhbmNlOiAnb3V0bGluZScsXHJcbiAgICAgICAgICAgIHNob3dMYWJlbEFib3ZlOiB0cnVlLFxyXG4gICAgICAgICAgICByZXF1aXJlZDogdHJ1ZSxcclxuICAgICAgICB9LFxyXG4gICAgICAgIHtcclxuICAgICAgICAgICAgbGFiZWw6ICdDTlMjJyxcclxuICAgICAgICAgICAgbmFtZTogJ2NucycsXHJcbiAgICAgICAgICAgIHR5cGU6IFB0RHluYW1pY0VsZW1lbnQuSW5wdXQsXHJcbiAgICAgICAgICAgIGZsZXg6IDEwMCxcclxuICAgICAgICAgICAgYXBwZWFyYW5jZTogJ291dGxpbmUnLFxyXG4gICAgICAgICAgICBzaG93TGFiZWxBYm92ZTogdHJ1ZSxcclxuICAgICAgICAgICAgcmVxdWlyZWQ6IHRydWUsXHJcbiAgICAgICAgfSxcclxuICAgICAgICB7XHJcbiAgICAgICAgICAgIGxhYmVsOiAnUGhvbmUgTnVtYmVyJyxcclxuICAgICAgICAgICAgbmFtZTogJ3Bob25lTnVtYmVyJyxcclxuICAgICAgICAgICAgdHlwZTogUHREeW5hbWljRWxlbWVudC5QaG9uZU51bWJlcixcclxuICAgICAgICAgICAgZmxleDogMTAwLFxyXG4gICAgICAgICAgICBhcHBlYXJhbmNlOiAnb3V0bGluZScsXHJcbiAgICAgICAgICAgIHNob3dMYWJlbEFib3ZlOiB0cnVlLFxyXG4gICAgICAgICAgICByZXF1aXJlZDogdHJ1ZSxcclxuICAgICAgICB9LFxyXG4gICAgICAgIHtcclxuICAgICAgICAgICAgbGFiZWw6ICdFbWFpbCBhZGRyZXNzJyxcclxuICAgICAgICAgICAgbmFtZTogJ2VtYWlsJyxcclxuICAgICAgICAgICAgdHlwZTogUHREeW5hbWljRWxlbWVudC5JbnB1dCxcclxuICAgICAgICAgICAgZmxleDogMTAwLFxyXG4gICAgICAgICAgICBhcHBlYXJhbmNlOiAnb3V0bGluZScsXHJcbiAgICAgICAgICAgIHNob3dMYWJlbEFib3ZlOiB0cnVlLFxyXG4gICAgICAgICAgICByZXF1aXJlZDogdHJ1ZSxcclxuICAgICAgICB9LFxyXG4gICAgICAgIHtcclxuICAgICAgICAgICAgbGFiZWw6ICdDb21tZW50cycsXHJcbiAgICAgICAgICAgIG5hbWU6ICdjb21tZW50cycsXHJcbiAgICAgICAgICAgIHR5cGU6IFB0RHluYW1pY0VsZW1lbnQuVGV4dGFyZWEsXHJcbiAgICAgICAgICAgIGZsZXg6IDEwMCxcclxuICAgICAgICAgICAgYXBwZWFyYW5jZTogJ291dGxpbmUnLFxyXG4gICAgICAgICAgICBzaG93TGFiZWxBYm92ZTogdHJ1ZSxcclxuICAgICAgICAgICAgcmVxdWlyZWQ6IGZhbHNlLFxyXG4gICAgICAgIH0sXHJcbiAgICBdLFxyXG4gICAgcmVmZXJlbmNlRGF0YTogdW5kZWZpbmVkLFxyXG4gICAgc2VjdGlvbk5hbWU6IHVuZGVmaW5lZCxcclxufTsiXX0=
|
@@ -4,14 +4,16 @@ import { conciliationLookupsNameArray } from '../shared/constants/conciliation/c
|
|
4
4
|
import * as i0 from "@angular/core";
|
5
5
|
import * as i1 from "./services/noi-work-list.service";
|
6
6
|
import * as i2 from "../shared/modules/conciliation-lookups/services/lookups.service";
|
7
|
-
import * as i3 from "
|
8
|
-
import * as i4 from "
|
9
|
-
import * as i5 from "
|
7
|
+
import * as i3 from "../conciliation-appointment-work-list/services/conciliation-appointment-work-list.service";
|
8
|
+
import * as i4 from "@prutech/components";
|
9
|
+
import * as i5 from "./components/noi-work-sheet/noi-work-sheet.component";
|
10
|
+
import * as i6 from "@angular/common";
|
10
11
|
export class NoiWorkListComponent extends AbstractComponent {
|
11
|
-
constructor(noiWorkListService, lookupsService, tabService) {
|
12
|
+
constructor(noiWorkListService, lookupsService, conciliationWorkListService, tabService) {
|
12
13
|
super();
|
13
14
|
this.noiWorkListService = noiWorkListService;
|
14
15
|
this.lookupsService = lookupsService;
|
16
|
+
this.conciliationWorkListService = conciliationWorkListService;
|
15
17
|
this.tabService = tabService;
|
16
18
|
}
|
17
19
|
ngOnInit() {
|
@@ -25,6 +27,7 @@ export class NoiWorkListComponent extends AbstractComponent {
|
|
25
27
|
tabName: 'noi',
|
26
28
|
canClose: false,
|
27
29
|
});
|
30
|
+
this.conciliationWorkListService.dispatchLoadFederalHolidaysList();
|
28
31
|
}
|
29
32
|
get loading() {
|
30
33
|
return this.noiWorkListService.workListLoading;
|
@@ -33,10 +36,10 @@ export class NoiWorkListComponent extends AbstractComponent {
|
|
33
36
|
//
|
34
37
|
}
|
35
38
|
}
|
36
|
-
NoiWorkListComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: NoiWorkListComponent, deps: [{ token: i1.NoiWorkListService }, { token: i2.LookupsService }, { token: i3.TabService }], target: i0.ɵɵFactoryTarget.Component });
|
37
|
-
NoiWorkListComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: NoiWorkListComponent, selector: "prutech-noi-work-list", usesInheritance: true, ngImport: i0, template: "<app-nav-tabs></app-nav-tabs>\r\n<prutech-loader *ngIf=\"(loading | async) || (lookupLoading | async)\"></prutech-loader>\r\n\r\n<prutech-noi-work-sheet [workList]=\"workList | async\"></prutech-noi-work-sheet>\r\n", styles: [""], components: [{ type:
|
39
|
+
NoiWorkListComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: NoiWorkListComponent, deps: [{ token: i1.NoiWorkListService }, { token: i2.LookupsService }, { token: i3.ConciliationAppointmentWorkListService }, { token: i4.TabService }], target: i0.ɵɵFactoryTarget.Component });
|
40
|
+
NoiWorkListComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: NoiWorkListComponent, selector: "prutech-noi-work-list", usesInheritance: true, ngImport: i0, template: "<app-nav-tabs></app-nav-tabs>\r\n<prutech-loader *ngIf=\"(loading | async) || (lookupLoading | async)\"></prutech-loader>\r\n\r\n<prutech-noi-work-sheet [workList]=\"workList | async\"></prutech-noi-work-sheet>\r\n", styles: [""], components: [{ type: i4.TabsComponent, selector: "app-nav-tabs", inputs: ["primaryTab", "hideRouter"] }, { type: i4.LoaderComponent, selector: "prutech-loader" }, { type: i5.NoiWorkSheetComponent, selector: "prutech-noi-work-sheet", inputs: ["workList"] }], directives: [{ type: i6.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], pipes: { "async": i6.AsyncPipe }, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
38
41
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: NoiWorkListComponent, decorators: [{
|
39
42
|
type: Component,
|
40
43
|
args: [{ selector: 'prutech-noi-work-list', changeDetection: ChangeDetectionStrategy.OnPush, template: "<app-nav-tabs></app-nav-tabs>\r\n<prutech-loader *ngIf=\"(loading | async) || (lookupLoading | async)\"></prutech-loader>\r\n\r\n<prutech-noi-work-sheet [workList]=\"workList | async\"></prutech-noi-work-sheet>\r\n", styles: [""] }]
|
41
|
-
}], ctorParameters: function () { return [{ type: i1.NoiWorkListService }, { type: i2.LookupsService }, { type: i3.TabService }]; } });
|
42
|
-
//# sourceMappingURL=data:application/json;base64,
|
44
|
+
}], ctorParameters: function () { return [{ type: i1.NoiWorkListService }, { type: i2.LookupsService }, { type: i3.ConciliationAppointmentWorkListService }, { type: i4.TabService }]; } });
|
45
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm9pLXdvcmstbGlzdC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9wcnV0ZWNoL2NvbXBsaWFuY2Uvc3JjL2xpYi9ub2ktd29yay1saXN0L25vaS13b3JrLWxpc3QuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvcHJ1dGVjaC9jb21wbGlhbmNlL3NyYy9saWIvbm9pLXdvcmstbGlzdC9ub2ktd29yay1saXN0LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyx1QkFBdUIsRUFBRSxTQUFTLEVBQVMsTUFBTSxlQUFlLENBQUM7QUFDekUsT0FBTyxFQUFDLGlCQUFpQixFQUFhLE1BQU0scUJBQXFCLENBQUM7QUFLbEUsT0FBTyxFQUFDLDRCQUE0QixFQUFDLE1BQU0sa0VBQWtFLENBQUM7Ozs7Ozs7O0FBVTlHLE1BQU0sT0FBTyxvQkFBcUIsU0FBUSxpQkFBaUI7SUFJekQsWUFBb0Isa0JBQXNDLEVBQ3RDLGNBQThCLEVBQVMsMkJBQW1FLEVBQzFHLFVBQXNCO1FBQ3hDLEtBQUssRUFBRSxDQUFDO1FBSFUsdUJBQWtCLEdBQWxCLGtCQUFrQixDQUFvQjtRQUN0QyxtQkFBYyxHQUFkLGNBQWMsQ0FBZ0I7UUFBUyxnQ0FBMkIsR0FBM0IsMkJBQTJCLENBQXdDO1FBQzFHLGVBQVUsR0FBVixVQUFVLENBQVk7SUFFMUMsQ0FBQztJQUVELFFBQVE7UUFDTixJQUFJLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxRQUFRLENBQUM7UUFDakQsSUFBSSxDQUFDLGFBQWEsR0FBRyxJQUFJLENBQUMsY0FBYyxDQUFDLGNBQWMsQ0FBQztRQUN4RCxJQUFJLENBQUMsa0JBQWtCLENBQUMsdUJBQXVCLEVBQUUsQ0FBQztRQUNsRCxJQUFJLENBQUMsY0FBYyxDQUFDLG1CQUFtQixDQUFDLDRCQUE0QixDQUFDLENBQUM7UUFDdEUsSUFBSSxDQUFDLFVBQVUsQ0FBQyxjQUFjLENBQUM7WUFDN0IsS0FBSyxFQUFFLGNBQWM7WUFDckIsS0FBSyxFQUFFLGlCQUFpQjtZQUN4QixPQUFPLEVBQUUsS0FBSztZQUNkLFFBQVEsRUFBRSxLQUFLO1NBQ2hCLENBQUMsQ0FBQztRQUNILElBQUksQ0FBQywyQkFBMkIsQ0FBQywrQkFBK0IsRUFBRSxDQUFDO0lBQ3JFLENBQUM7SUFFRCxJQUFJLE9BQU87UUFDVCxPQUFPLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxlQUFlLENBQUM7SUFDakQsQ0FBQztJQUVELGNBQWM7UUFDWixFQUFFO0lBQ0osQ0FBQzs7a0hBOUJVLG9CQUFvQjtzR0FBcEIsb0JBQW9CLG9GQ2hCakMsd05BSUE7NEZEWWEsb0JBQW9CO2tCQU5oQyxTQUFTOytCQUNFLHVCQUF1QixtQkFHaEIsdUJBQXVCLENBQUMsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7Q2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgT25Jbml0fSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHtBYnN0cmFjdENvbXBvbmVudCwgVGFiU2VydmljZX0gZnJvbSAnQHBydXRlY2gvY29tcG9uZW50cyc7XHJcbmltcG9ydCB7T2JzZXJ2YWJsZX0gZnJvbSAncnhqcyc7XHJcblxyXG5pbXBvcnQge05vaVdvcmtMaXN0U2VydmljZX0gZnJvbSAnLi9zZXJ2aWNlcy9ub2ktd29yay1saXN0LnNlcnZpY2UnO1xyXG5pbXBvcnQge0xvb2t1cHNTZXJ2aWNlfSBmcm9tICcuLi9zaGFyZWQvbW9kdWxlcy9jb25jaWxpYXRpb24tbG9va3Vwcy9zZXJ2aWNlcy9sb29rdXBzLnNlcnZpY2UnO1xyXG5pbXBvcnQge2NvbmNpbGlhdGlvbkxvb2t1cHNOYW1lQXJyYXl9IGZyb20gJy4uL3NoYXJlZC9jb25zdGFudHMvY29uY2lsaWF0aW9uL2NvbmNpbGlhdGlvbi1sb29rdXBzLW5hbWUtYXJyYXknO1xyXG5pbXBvcnQgeyBOb2lXb3JrTGlzdE1vZGVsIH0gZnJvbSAnLi9tb2RlbHMvbm9pLXdvcmstbGlzdC1pdGVtLm1vZGVsJztcclxuaW1wb3J0IHsgQ29uY2lsaWF0aW9uQXBwb2ludG1lbnRXb3JrTGlzdFNlcnZpY2UgfSBmcm9tICcuLi9jb25jaWxpYXRpb24tYXBwb2ludG1lbnQtd29yay1saXN0L3NlcnZpY2VzL2NvbmNpbGlhdGlvbi1hcHBvaW50bWVudC13b3JrLWxpc3Quc2VydmljZSc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ3BydXRlY2gtbm9pLXdvcmstbGlzdCcsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL25vaS13b3JrLWxpc3QuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL25vaS13b3JrLWxpc3QuY29tcG9uZW50LnNjc3MnXSxcclxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcclxufSlcclxuZXhwb3J0IGNsYXNzIE5vaVdvcmtMaXN0Q29tcG9uZW50IGV4dGVuZHMgQWJzdHJhY3RDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xyXG4gIHdvcmtMaXN0OiBPYnNlcnZhYmxlPE5vaVdvcmtMaXN0TW9kZWxbXT47XHJcbiAgbG9va3VwTG9hZGluZzogT2JzZXJ2YWJsZTxib29sZWFuPjtcclxuXHJcbiAgY29uc3RydWN0b3IocHJpdmF0ZSBub2lXb3JrTGlzdFNlcnZpY2U6IE5vaVdvcmtMaXN0U2VydmljZSxcclxuICAgICAgICAgICAgICBwcml2YXRlIGxvb2t1cHNTZXJ2aWNlOiBMb29rdXBzU2VydmljZSxwcml2YXRlIGNvbmNpbGlhdGlvbldvcmtMaXN0U2VydmljZTogQ29uY2lsaWF0aW9uQXBwb2ludG1lbnRXb3JrTGlzdFNlcnZpY2UsXHJcbiAgICAgICAgICAgICAgcHJpdmF0ZSB0YWJTZXJ2aWNlOiBUYWJTZXJ2aWNlKSB7XHJcbiAgICBzdXBlcigpO1xyXG4gIH1cclxuXHJcbiAgbmdPbkluaXQoKTogdm9pZCB7XHJcbiAgICB0aGlzLndvcmtMaXN0ID0gdGhpcy5ub2lXb3JrTGlzdFNlcnZpY2Uud29ya0xpc3Q7XHJcbiAgICB0aGlzLmxvb2t1cExvYWRpbmcgPSB0aGlzLmxvb2t1cHNTZXJ2aWNlLmxvYWRpbmdMb29rdXBzO1xyXG4gICAgdGhpcy5ub2lXb3JrTGlzdFNlcnZpY2UuZGlzcGF0Y2hMb2FkTm9pV29ya0xpc3QoKTtcclxuICAgIHRoaXMubG9va3Vwc1NlcnZpY2UuZGlzcGF0Y2hMb2FkTG9va3Vwcyhjb25jaWxpYXRpb25Mb29rdXBzTmFtZUFycmF5KTtcclxuICAgIHRoaXMudGFiU2VydmljZS5kaXNwYXRjaEFkZFRhYih7XHJcbiAgICAgIGxhYmVsOiAnTk9JIFdvcmtsaXN0JyxcclxuICAgICAgcm91dGU6ICcvY29tcGxpYW5jZS9ub2knLFxyXG4gICAgICB0YWJOYW1lOiAnbm9pJyxcclxuICAgICAgY2FuQ2xvc2U6IGZhbHNlLFxyXG4gICAgfSk7XHJcbiAgICB0aGlzLmNvbmNpbGlhdGlvbldvcmtMaXN0U2VydmljZS5kaXNwYXRjaExvYWRGZWRlcmFsSG9saWRheXNMaXN0KCk7XHJcbiAgfVxyXG5cclxuICBnZXQgbG9hZGluZygpOiBPYnNlcnZhYmxlPGJvb2xlYW4+IHtcclxuICAgIHJldHVybiB0aGlzLm5vaVdvcmtMaXN0U2VydmljZS53b3JrTGlzdExvYWRpbmc7XHJcbiAgfVxyXG5cclxuICBhZnRlck9uRGVzdHJveSgpOiB2b2lkIHtcclxuICAgIC8vXHJcbiAgfVxyXG59XHJcbiIsIjxhcHAtbmF2LXRhYnM+PC9hcHAtbmF2LXRhYnM+XHJcbjxwcnV0ZWNoLWxvYWRlciAqbmdJZj1cIihsb2FkaW5nIHwgYXN5bmMpIHx8IChsb29rdXBMb2FkaW5nIHwgYXN5bmMpXCI+PC9wcnV0ZWNoLWxvYWRlcj5cclxuXHJcbjxwcnV0ZWNoLW5vaS13b3JrLXNoZWV0IFt3b3JrTGlzdF09XCJ3b3JrTGlzdCB8IGFzeW5jXCI+PC9wcnV0ZWNoLW5vaS13b3JrLXNoZWV0PlxyXG4iXX0=
|
@@ -21,6 +21,7 @@ import { ContextMenuNoiListComponent } from './components/context-menu/context-m
|
|
21
21
|
import { ConferenceByPhoneDialogboxComponent } from './components/conference-by-phone-dialogbox/conference-by-phone-dialogbox.component';
|
22
22
|
import { ConciliationAppointmentWorkListService } from '../conciliation-appointment-work-list/services/conciliation-appointment-work-list.service';
|
23
23
|
import { ConciliationAppointmentWorkListModule } from '../conciliation-appointment-work-list/conciliation-appointment-work-list.module';
|
24
|
+
import { ConciliationAppointmentWorkListEffect } from '../conciliation-appointment-work-list/effects/conciliation-appointment-work-list.effect';
|
24
25
|
import * as i0 from "@angular/core";
|
25
26
|
import * as i1 from "@ngrx/store";
|
26
27
|
import * as i2 from "@ngrx/effects";
|
@@ -60,7 +61,7 @@ NoiWorkListModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", versi
|
|
60
61
|
NoiWorkListRoutingModule,
|
61
62
|
StoreModule.forFeature('noiWorkList', reducers),
|
62
63
|
EffectsModule.forFeature([
|
63
|
-
NoiWorkListEffect,
|
64
|
+
NoiWorkListEffect, ConciliationAppointmentWorkListEffect,
|
64
65
|
]),
|
65
66
|
AgGridModule.withComponents([ContextMenuComponent, AgGridComponent]),
|
66
67
|
MaterialModule,
|
@@ -85,7 +86,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImpo
|
|
85
86
|
NoiWorkListRoutingModule,
|
86
87
|
StoreModule.forFeature('noiWorkList', reducers),
|
87
88
|
EffectsModule.forFeature([
|
88
|
-
NoiWorkListEffect,
|
89
|
+
NoiWorkListEffect, ConciliationAppointmentWorkListEffect,
|
89
90
|
]),
|
90
91
|
AgGridModule.withComponents([ContextMenuComponent, AgGridComponent]),
|
91
92
|
MaterialModule,
|
@@ -119,4 +120,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImpo
|
|
119
120
|
]
|
120
121
|
}]
|
121
122
|
}] });
|
122
|
-
//# sourceMappingURL=data:application/json;base64,
|
123
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm9pLXdvcmstbGlzdC5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9wcnV0ZWNoL2NvbXBsaWFuY2Uvc3JjL2xpYi9ub2ktd29yay1saXN0L25vaS13b3JrLWxpc3QubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsUUFBUSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDekQsT0FBTyxFQUF1QixRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDOUQsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDekQsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQzFELE9BQU8sRUFBRSxxQkFBcUIsR0FBRyxNQUFNLDBCQUEwQixDQUFDO0FBQ2xFLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDOUMsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUMxQyxPQUFPLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUNsRSxPQUFPLEVBQUUsZUFBZSxFQUFFLFVBQVUsRUFBRSxvQkFBb0IsRUFBRSxrQkFBa0IsRUFBZSxVQUFVLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUNySSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sWUFBWSxDQUFDO0FBRTFDLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQ25FLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLGtDQUFrQyxDQUFDO0FBQ3RFLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQzFFLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQztBQUNwRSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDbkQsT0FBTyxFQUFFLHlCQUF5QixFQUFFLE1BQU0sb0VBQW9FLENBQUM7QUFDL0csT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQ2pFLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLHNEQUFzRCxDQUFDO0FBQzdGLE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxNQUFNLGtEQUFrRCxDQUFDO0FBQy9GLE9BQU8sRUFBRSxtQ0FBbUMsRUFBRSxNQUFNLG9GQUFvRixDQUFDO0FBQ3pJLE9BQU8sRUFBRSxzQ0FBc0MsRUFBRSxNQUFNLDJGQUEyRixDQUFDO0FBQ25KLE9BQU8sRUFBRSxxQ0FBcUMsRUFBRSxNQUFNLGlGQUFpRixDQUFDO0FBQ3hJLE9BQU8sRUFBRSxxQ0FBcUMsRUFBRSxNQUFNLHlGQUF5RixDQUFDOzs7Ozs7QUF5Q2hKLE1BQU0sT0FBTyxpQkFBaUI7SUFDckIsTUFBTSxDQUFDLE9BQU8sQ0FBQyxXQUF3QjtRQUM1QyxPQUFPO1lBQ0wsUUFBUSxFQUFFLGlCQUFpQjtZQUMzQixTQUFTLEVBQUU7Z0JBQ1Q7b0JBQ0UsT0FBTyxFQUFFLGFBQWE7b0JBQ3RCLFFBQVEsRUFBRSxXQUFXO2lCQUN0QjthQUNGO1NBQ0YsQ0FBQztJQUNKLENBQUM7OytHQVhVLGlCQUFpQjtnSEFBakIsaUJBQWlCLGlCQWYxQixvQkFBb0I7UUFDcEIscUJBQXFCO1FBQ3JCLDJCQUEyQjtRQUMzQixtQ0FBbUMsYUF6Qm5DLFlBQVk7UUFDWix3QkFBd0IsbUVBTXhCLGNBQWM7UUFDZCxVQUFVO1FBQ1YsVUFBVTtRQUNWLGtCQUFrQixtQkFNbEIseUJBQXlCO1FBQ3pCLDBCQUEwQjtRQUMxQixZQUFZO1FBQ1oscUNBQXFDO2dIQWtCNUIsaUJBQWlCLGFBVmpCO1FBQ1Qsa0JBQWtCLEVBQUUsc0NBQXNDO1FBQzFELEVBQUUsT0FBTyxFQUFFLGlCQUFpQixFQUFFLFFBQVEsRUFBRSxxQkFBcUIsRUFBRSxLQUFLLEVBQUUsSUFBSSxFQUFFO1FBQzVFLFFBQVE7S0FDVCxZQWhDUTtZQUNQLFlBQVk7WUFDWix3QkFBd0I7WUFDeEIsV0FBVyxDQUFDLFVBQVUsQ0FBQyxhQUFhLEVBQUUsUUFBUSxDQUFDO1lBQy9DLGFBQWEsQ0FBQyxVQUFVLENBQUM7Z0JBQ3ZCLGlCQUFpQixFQUFDLHFDQUFxQzthQUN4RCxDQUFDO1lBQ0YsWUFBWSxDQUFDLGNBQWMsQ0FBQyxDQUFDLG9CQUFvQixFQUFFLGVBQWUsQ0FBQyxDQUFDO1lBQ3BFLGNBQWM7WUFDZCxVQUFVO1lBQ1YsVUFBVTtZQUNWLGtCQUFrQjtZQUNsQixZQUFZLENBQUMsT0FBTyxDQUFDO2dCQUNuQixPQUFPLEVBQUUsS0FBSztnQkFDZCxhQUFhLEVBQUUsaUJBQWlCO2dCQUNoQyxpQkFBaUIsRUFBRSxJQUFJO2FBQ3hCLENBQUM7WUFDRix5QkFBeUI7WUFDekIsMEJBQTBCO1lBQzFCLFlBQVk7WUFDWixxQ0FBcUM7U0FDdEM7NEZBaUJVLGlCQUFpQjtrQkF2QzdCLFFBQVE7bUJBQUM7b0JBQ1IsT0FBTyxFQUFFO3dCQUNQLFlBQVk7d0JBQ1osd0JBQXdCO3dCQUN4QixXQUFXLENBQUMsVUFBVSxDQUFDLGFBQWEsRUFBRSxRQUFRLENBQUM7d0JBQy9DLGFBQWEsQ0FBQyxVQUFVLENBQUM7NEJBQ3ZCLGlCQUFpQixFQUFDLHFDQUFxQzt5QkFDeEQsQ0FBQzt3QkFDRixZQUFZLENBQUMsY0FBYyxDQUFDLENBQUMsb0JBQW9CLEVBQUUsZUFBZSxDQUFDLENBQUM7d0JBQ3BFLGNBQWM7d0JBQ2QsVUFBVTt3QkFDVixVQUFVO3dCQUNWLGtCQUFrQjt3QkFDbEIsWUFBWSxDQUFDLE9BQU8sQ0FBQzs0QkFDbkIsT0FBTyxFQUFFLEtBQUs7NEJBQ2QsYUFBYSxFQUFFLGlCQUFpQjs0QkFDaEMsaUJBQWlCLEVBQUUsSUFBSTt5QkFDeEIsQ0FBQzt3QkFDRix5QkFBeUI7d0JBQ3pCLDBCQUEwQjt3QkFDMUIsWUFBWTt3QkFDWixxQ0FBcUM7cUJBQ3RDO29CQUNELFlBQVksRUFBRTt3QkFDWixvQkFBb0I7d0JBQ3BCLHFCQUFxQjt3QkFDckIsMkJBQTJCO3dCQUMzQixtQ0FBbUM7cUJBQ3BDO29CQUNELFNBQVMsRUFBRTt3QkFDVCxrQkFBa0IsRUFBRSxzQ0FBc0M7d0JBQzFELEVBQUUsT0FBTyxFQUFFLGlCQUFpQixFQUFFLFFBQVEsRUFBRSxxQkFBcUIsRUFBRSxLQUFLLEVBQUUsSUFBSSxFQUFFO3dCQUM1RSxRQUFRO3FCQUNUO29CQUNELGVBQWUsRUFBRTt3QkFDZixtQ0FBbUM7d0JBQ25DLDJCQUEyQjtxQkFDNUI7aUJBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21tb25Nb2R1bGUsIERhdGVQaXBlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcclxuaW1wb3J0IHsgTW9kdWxlV2l0aFByb3ZpZGVycywgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgSFRUUF9JTlRFUkNFUFRPUlMgfSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCc7XHJcbmltcG9ydCB7IEFnR3JpZE1vZHVsZSB9IGZyb20gJ0BhZy1ncmlkLWNvbW11bml0eS9hbmd1bGFyJztcclxuaW1wb3J0IHsgQXBpSW50ZXJjZXB0b3JTZXJ2aWNlLCB9IGZyb20gJ0BwcnV0ZWNoL2lkZW50aXR5LWNsaWVudCc7XHJcbmltcG9ydCB7IEVmZmVjdHNNb2R1bGUgfSBmcm9tICdAbmdyeC9lZmZlY3RzJztcclxuaW1wb3J0IHsgU3RvcmVNb2R1bGUgfSBmcm9tICdAbmdyeC9zdG9yZSc7XHJcbmltcG9ydCB7IEFwcG9pbnRtZW50U2NoZWR1bGVyTW9kdWxlIH0gZnJvbSAnQHBydXRlY2gvYXBwb2ludG1lbnQnO1xyXG5pbXBvcnQgeyBBZ0dyaWRDb21wb25lbnQsIENvcmVNb2R1bGUsIENvbnRleHRNZW51Q29tcG9uZW50LCBEeW5hbWljRm9ybXNNb2R1bGUsIEVudmlyb25tZW50LCBUYWJzTW9kdWxlIH0gZnJvbSAnQHBydXRlY2gvY29tcG9uZW50cyc7XHJcbmltcG9ydCB7IFRvYXN0ck1vZHVsZSB9IGZyb20gJ25neC10b2FzdHInO1xyXG5cclxuaW1wb3J0IHsgTm9pV29ya0xpc3RFZmZlY3QgfSBmcm9tICcuL2VmZmVjdHMvbm9pLXdvcmstbGlzdC5lZmZlY3QnO1xyXG5pbXBvcnQgeyBOb2lXb3JrTGlzdFNlcnZpY2UgfSBmcm9tICcuL3NlcnZpY2VzL25vaS13b3JrLWxpc3Quc2VydmljZSc7XHJcbmltcG9ydCB7IE5vaVdvcmtMaXN0Um91dGluZ01vZHVsZSB9IGZyb20gJy4vbm9pLXdvcmstbGlzdC1yb3V0aW5nLm1vZHVsZSc7XHJcbmltcG9ydCB7IE1hdGVyaWFsTW9kdWxlIH0gZnJvbSAnLi4vc2hhcmVkL21hdGVyaWFsL21hdGVyaWFsLm1vZHVsZSc7XHJcbmltcG9ydCB7IHJlZHVjZXJzIH0gZnJvbSAnLi9yZWR1Y2Vycy9yb290LnJlZHVjZXInO1xyXG5pbXBvcnQgeyBDb25jaWxpYXRpb25Mb29rdXBzTW9kdWxlIH0gZnJvbSAnLi4vc2hhcmVkL21vZHVsZXMvY29uY2lsaWF0aW9uLWxvb2t1cHMvY29uY2lsaWF0aW9uLWxvb2t1cHMubW9kdWxlJztcclxuaW1wb3J0IHsgU2hhcmVkTW9kdWxlIH0gZnJvbSAnLi4vc2hhcmVkL3NoYXJlZC5tb2R1bGUnO1xyXG5pbXBvcnQgeyBOb2lXb3JrTGlzdENvbXBvbmVudCB9IGZyb20gJy4vbm9pLXdvcmstbGlzdC5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBOb2lXb3JrU2hlZXRDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvbm9pLXdvcmstc2hlZXQvbm9pLXdvcmstc2hlZXQuY29tcG9uZW50JztcclxuaW1wb3J0IHsgQ29udGV4dE1lbnVOb2lMaXN0Q29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL2NvbnRleHQtbWVudS9jb250ZXh0LW1lbnUuY29tcG9uZW50JztcclxuaW1wb3J0IHsgQ29uZmVyZW5jZUJ5UGhvbmVEaWFsb2dib3hDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvY29uZmVyZW5jZS1ieS1waG9uZS1kaWFsb2dib3gvY29uZmVyZW5jZS1ieS1waG9uZS1kaWFsb2dib3guY29tcG9uZW50JztcclxuaW1wb3J0IHsgQ29uY2lsaWF0aW9uQXBwb2ludG1lbnRXb3JrTGlzdFNlcnZpY2UgfSBmcm9tICcuLi9jb25jaWxpYXRpb24tYXBwb2ludG1lbnQtd29yay1saXN0L3NlcnZpY2VzL2NvbmNpbGlhdGlvbi1hcHBvaW50bWVudC13b3JrLWxpc3Quc2VydmljZSc7XHJcbmltcG9ydCB7IENvbmNpbGlhdGlvbkFwcG9pbnRtZW50V29ya0xpc3RNb2R1bGUgfSBmcm9tICcuLi9jb25jaWxpYXRpb24tYXBwb2ludG1lbnQtd29yay1saXN0L2NvbmNpbGlhdGlvbi1hcHBvaW50bWVudC13b3JrLWxpc3QubW9kdWxlJztcclxuaW1wb3J0IHsgQ29uY2lsaWF0aW9uQXBwb2ludG1lbnRXb3JrTGlzdEVmZmVjdCB9IGZyb20gJy4uL2NvbmNpbGlhdGlvbi1hcHBvaW50bWVudC13b3JrLWxpc3QvZWZmZWN0cy9jb25jaWxpYXRpb24tYXBwb2ludG1lbnQtd29yay1saXN0LmVmZmVjdCc7XHJcblxyXG5ATmdNb2R1bGUoe1xyXG4gIGltcG9ydHM6IFtcclxuICAgIENvbW1vbk1vZHVsZSxcclxuICAgIE5vaVdvcmtMaXN0Um91dGluZ01vZHVsZSxcclxuICAgIFN0b3JlTW9kdWxlLmZvckZlYXR1cmUoJ25vaVdvcmtMaXN0JywgcmVkdWNlcnMpLFxyXG4gICAgRWZmZWN0c01vZHVsZS5mb3JGZWF0dXJlKFtcclxuICAgICAgTm9pV29ya0xpc3RFZmZlY3QsQ29uY2lsaWF0aW9uQXBwb2ludG1lbnRXb3JrTGlzdEVmZmVjdCxcclxuICAgIF0pLFxyXG4gICAgQWdHcmlkTW9kdWxlLndpdGhDb21wb25lbnRzKFtDb250ZXh0TWVudUNvbXBvbmVudCwgQWdHcmlkQ29tcG9uZW50XSksXHJcbiAgICBNYXRlcmlhbE1vZHVsZSxcclxuICAgIENvcmVNb2R1bGUsXHJcbiAgICBUYWJzTW9kdWxlLFxyXG4gICAgRHluYW1pY0Zvcm1zTW9kdWxlLFxyXG4gICAgVG9hc3RyTW9kdWxlLmZvclJvb3Qoe1xyXG4gICAgICB0aW1lT3V0OiAxMDAwMCxcclxuICAgICAgcG9zaXRpb25DbGFzczogJ3RvYXN0LXRvcC1yaWdodCcsXHJcbiAgICAgIHByZXZlbnREdXBsaWNhdGVzOiB0cnVlLFxyXG4gICAgfSksXHJcbiAgICBDb25jaWxpYXRpb25Mb29rdXBzTW9kdWxlLFxyXG4gICAgQXBwb2ludG1lbnRTY2hlZHVsZXJNb2R1bGUsXHJcbiAgICBTaGFyZWRNb2R1bGUsXHJcbiAgICBDb25jaWxpYXRpb25BcHBvaW50bWVudFdvcmtMaXN0TW9kdWxlLFxyXG4gIF0sXHJcbiAgZGVjbGFyYXRpb25zOiBbXHJcbiAgICBOb2lXb3JrTGlzdENvbXBvbmVudCxcclxuICAgIE5vaVdvcmtTaGVldENvbXBvbmVudCxcclxuICAgIENvbnRleHRNZW51Tm9pTGlzdENvbXBvbmVudCxcclxuICAgIENvbmZlcmVuY2VCeVBob25lRGlhbG9nYm94Q29tcG9uZW50LFxyXG4gIF0sXHJcbiAgcHJvdmlkZXJzOiBbXHJcbiAgICBOb2lXb3JrTGlzdFNlcnZpY2UsIENvbmNpbGlhdGlvbkFwcG9pbnRtZW50V29ya0xpc3RTZXJ2aWNlLFxyXG4gICAgeyBwcm92aWRlOiBIVFRQX0lOVEVSQ0VQVE9SUywgdXNlQ2xhc3M6IEFwaUludGVyY2VwdG9yU2VydmljZSwgbXVsdGk6IHRydWUgfSxcclxuICAgIERhdGVQaXBlLFxyXG4gIF0sXHJcbiAgZW50cnlDb21wb25lbnRzOiBbXHJcbiAgICBDb25mZXJlbmNlQnlQaG9uZURpYWxvZ2JveENvbXBvbmVudCxcclxuICAgIENvbnRleHRNZW51Tm9pTGlzdENvbXBvbmVudCxcclxuICBdXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBOb2lXb3JrTGlzdE1vZHVsZSB7XHJcbiAgcHVibGljIHN0YXRpYyBmb3JSb290KGVudmlyb25tZW50OiBFbnZpcm9ubWVudCk6IE1vZHVsZVdpdGhQcm92aWRlcnM8Tm9pV29ya0xpc3RNb2R1bGU+IHtcclxuICAgIHJldHVybiB7XHJcbiAgICAgIG5nTW9kdWxlOiBOb2lXb3JrTGlzdE1vZHVsZSxcclxuICAgICAgcHJvdmlkZXJzOiBbXHJcbiAgICAgICAge1xyXG4gICAgICAgICAgcHJvdmlkZTogJ2Vudmlyb25tZW50JyxcclxuICAgICAgICAgIHVzZVZhbHVlOiBlbnZpcm9ubWVudCxcclxuICAgICAgICB9LFxyXG4gICAgICBdLFxyXG4gICAgfTtcclxuICB9XHJcbn1cclxuIl19
|
package/esm2020/lib/telephone-settled-conference/components/context-menu/context-menu.component.mjs
CHANGED
@@ -59,6 +59,10 @@ export class TelephoneOrSettledConferencContextMenuComponent extends AbstractCom
|
|
59
59
|
this.actions = actions;
|
60
60
|
this.menuItems = this.getUpdatedMenuItems();
|
61
61
|
});
|
62
|
+
this.conciliationWorkListService.holidaysList.pipe(takeUntil(this.componentDestroyed))
|
63
|
+
.subscribe((data) => {
|
64
|
+
this.holidayList = data;
|
65
|
+
});
|
62
66
|
}
|
63
67
|
agInit(params) {
|
64
68
|
this.params = params;
|
@@ -237,6 +241,7 @@ export class TelephoneOrSettledConferencContextMenuComponent extends AbstractCom
|
|
237
241
|
disableClose: true,
|
238
242
|
data: {
|
239
243
|
conciliationLookups: this.conciliationLookups,
|
244
|
+
val: this.holidayList
|
240
245
|
},
|
241
246
|
});
|
242
247
|
// tslint:disable-next-line:no-any
|
@@ -442,4 +447,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImpo
|
|
442
447
|
type: Component,
|
443
448
|
args: [{ selector: 'prutech-telephone-context-menu', changeDetection: ChangeDetectionStrategy.OnPush, template: "<prutech-context-menu [menuItems]=\"menuItems\" (menuAction)=\"doAction($event)\"></prutech-context-menu>\r\n", styles: [""] }]
|
444
449
|
}], ctorParameters: function () { return [{ type: i1.MatDialog }, { type: i2.LookupsService }, { type: i3.TabService }, { type: i4.Router }, { type: i5.UserService }, { type: i6.ConciliationAppointmentWorkListService }, { type: i7.TelephoneOrSettledConferenceWorkListService }, { type: i4.ActivatedRoute }]; } });
|
445
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udGV4dC1tZW51LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3BydXRlY2gvY29tcGxpYW5jZS9zcmMvbGliL3RlbGVwaG9uZS1zZXR0bGVkLWNvbmZlcmVuY2UvY29tcG9uZW50cy9jb250ZXh0LW1lbnUvY29udGV4dC1tZW51LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3BydXRlY2gvY29tcGxpYW5jZS9zcmMvbGliL3RlbGVwaG9uZS1zZXR0bGVkLWNvbmZlcmVuY2UvY29tcG9uZW50cy9jb250ZXh0LW1lbnUvY29udGV4dC1tZW51LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxTQUFTLEVBQVUsTUFBTSxlQUFlLENBQUM7QUFJM0UsT0FBTyxFQUFFLGlCQUFpQixFQUE4RCxNQUFNLHFCQUFxQixDQUFDO0FBRXBILE9BQU8sRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFLEdBQUcsRUFBRSxHQUFHLEVBQUUsUUFBUSxFQUFFLE1BQU0sUUFBUSxDQUFDO0FBQzFELE9BQU8sRUFBRSxNQUFNLElBQUksT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRTlELE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUd2RCxPQUFPLEVBQUUsVUFBVSxFQUFFLHdCQUF3QixFQUFFLE1BQU0sd0NBQXdDLENBQUM7QUFDOUYsT0FBTyxFQUFFLCtCQUErQixFQUFFLE1BQU0sMEZBQTBGLENBQUM7QUFHM0ksT0FBTyxFQUFFLGtDQUFrQyxFQUFFLE1BQU0sa0dBQWtHLENBQUM7QUFDdEosT0FBTyxFQUFFLDZDQUE2QyxFQUFFLE1BQU0scURBQXFELENBQUM7QUFDcEgsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLDBEQUEwRCxDQUFD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SUFDSixDQUFDO0lBRUQsMkJBQTJCLENBQUMsT0FBc0QsRUFBRSxJQUFtRDtRQUNySSxNQUFNLGdCQUFnQixHQUFtRCxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxnQ0FBZ0MsRUFBRTtZQUMxSCxLQUFLLEVBQUUsVUFBVTtZQUNqQixZQUFZLEVBQUUsSUFBSTtZQUNsQixJQUFJLEVBQUU7Z0JBQ0osUUFBUSxFQUFFLFFBQVE7Z0JBQ2xCLE9BQU8sRUFBRSxPQUFPO2dCQUNoQixNQUFNLEVBQUUsYUFBYTtnQkFDckIsT0FBTyxFQUFFLHVCQUF1QjthQUNqQztTQUNGLENBQUMsQ0FBQztRQUVILGdCQUFnQixDQUFDLFdBQVcsRUFBRSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLGtCQUFrQixDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUMsQ0FBQyxHQUFZLEVBQUUsRUFBRTtZQUNqRyxJQUFJLENBQUMsQ0FBQyxHQUFHLEVBQUU7Z0JBQ1QsSUFBSSxDQUFDLDJDQUEyQyxDQUFDLGtCQUFrQixDQUFDLElBQUksNkNBQTZDLENBQUM7b0JBQ3BILEdBQUcsT0FBTztvQkFDVixZQUFZLEVBQUUsSUFBSTtpQkFDbkIsQ0FBQyxDQUFDLENBQUM7YUFDTDtpQkFBTTtnQkFDTCxJQUFJLENBQUMsMkNBQTJDLENBQUMsa0JBQWtCLENBQUMsSUFBSSw2Q0FBNkMsQ0FBQztvQkFDcEgsR0FBRyxPQUFPO29CQUNWLFlBQVksRUFBRSxLQUFLO2lCQUNwQixDQUFDLENBQUMsQ0FBQzthQUNMO1FBQ0gsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDOzs2SUF6YlUsK0NBQStDO2lJQUEvQywrQ0FBK0MsNkZDNUQ1RCwrR0FDQTs0RkQyRGEsK0NBQStDO2tCQU4zRCxTQUFTOytCQUNFLGdDQUFnQyxtQkFHekIsdUJBQXVCLENBQUMsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIE9uSW5pdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBBY3RpdmF0ZWRSb3V0ZSwgUm91dGVyIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcclxuaW1wb3J0IHsgTWF0RGlhbG9nLCBNYXREaWFsb2dSZWYgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9kaWFsb2cnO1xyXG5pbXBvcnQgeyBBZ0dyaWRBbmd1bGFyIH0gZnJvbSAnQGFnLWdyaWQtY29tbXVuaXR5L2FuZ3VsYXInO1xyXG5pbXBvcnQgeyBBYnN0cmFjdENvbXBvbmVudCwgQ29udGV4dE1lbnVBY3Rpb25JdGVtLCBDb250ZXh0TWVudUl0ZW0sIExvb2t1cCwgVGFiU2VydmljZSB9IGZyb20gJ0BwcnV0ZWNoL2NvbXBvbmVudHMnO1xyXG5pbXBvcnQgeyBVc2VyLCBVc2VyU2VydmljZSB9IGZyb20gJ0BwcnV0ZWNoL2lkZW50aXR5LWNsaWVudCc7XHJcbmltcG9ydCB7IGZpbHRlciwgZmluZCwgZ2V0LCBtYXAsIHRvU3RyaW5nIH0gZnJvbSAnbG9kYXNoJztcclxuaW1wb3J0IHsgZmlsdGVyIGFzIHJGaWx0ZXIsIHRha2VVbnRpbCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcclxuXHJcbmltcG9ydCB7IG1lbnVJdGVtcyB9IGZyb20gJy4uLy4uL2NvbnN0YW50cy9tZW51LWl0ZW1zJztcclxuaW1wb3J0IHsgVGVsZXBob25lT3JTZXR0bGVkQ29uZmVyZW5jZVdvcmtMaXN0SXRlbU1vZGVsIH0gZnJvbSAnLi4vLi4vbW9kZWxzL3RlbGVwaG9uZS1vci1zZXR0bGVkLWNvbmZlcmVuY2Utd29yay1saXN0LWl0ZW0ubW9kZWwnO1xyXG5pbXBvcnQgeyBUZWxlcGhvbmVPclNldHRsZWRDb25mZXJlbmNlV29ya0xpc3RTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvdGVsZXBob25lLW9yLXNldHRsZWQtY29uZmVyZW5jZS1saXN0LnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBkaWFsb2dTaXplLCByZWNvcmRPdXRyZWFjaGRpYWxvZ1NpemUgfSBmcm9tICcuLi8uLi8uLi9zaGFyZWQvY29uc3RhbnRzL2RpYWdsb2ctc2l6ZSc7XHJcbmltcG9ydCB7IEdvb2RDYXVzZUdyYW50ZWRBY3Rpb25Db21wb25lbnQgfSBmcm9tICcuLi8uLi8uLi9zaGFyZWQvY29tcG9uZW50cy9nb29kLWNhdXNlLWdyYW50ZWQtYWN0aW9uL2dvb2QtY2F1c2UtZ3JhbnRlZC1hY3Rpb24uY29tcG9uZW50JztcclxuaW1wb3J0IHsgTG9va3Vwc1NlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi9zaGFyZWQvbW9kdWxlcy9jb25jaWxpYXRpb24tbG9va3Vwcy9zZXJ2aWNlcy9sb29rdXBzLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBDb25jaWxpYXRpb25Mb29rdXBzIH0gZnJvbSAnLi4vLi4vLi4vc2hhcmVkL21vZGVscy9jb25jaWxpYXRpb24tbG9va3Vwcy5tb2RlbCc7XHJcbmltcG9ydCB7IEdvb2RDYXVzZU5vdEdyYW50ZWRBY3Rpb25Db21wb25lbnQgfSBmcm9tICcuLi8uLi8uLi9zaGFyZWQvY29tcG9uZW50cy9nb29kLWNhdXNlLW5vdC1ncmFudGVkLWFjdGlvbi9nb29kLWNhdXNlLW5vdC1ncmFudGVkLWFjdGlvbi5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBTYXZlVGVsZXBob25lT3JTZXR0bGVkQ29uZmVyZW5jZVN0YXR1c1BheWxvYWQgfSBmcm9tICcuLi8uLi9tb2RlbHMvc2F2ZS1jb25jaWxpYXRpb24tc3RhdHVzLXBheWxvYWQubW9kZWwnO1xyXG5pbXBvcnQgeyBhY3Rpb25zTGFiZWwgfSBmcm9tICcuLi8uLi8uLi9wcmUtY29uY2lsaWF0aW9uLXdvcmstbGlzdC9jb25zdGFudHMvbWVudS1pdGVtcyc7XHJcbmltcG9ydCB7IFllc05vQ29uZmlybWF0aW9uRGlhbG9nQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vLi4vc2hhcmVkL2NvbXBvbmVudHMveWVzLW5vLWNvbmZpcm1hdGlvbi1kaWFsb2cveWVzLW5vLWNvbmZpcm1hdGlvbi1kaWFsb2cuY29tcG9uZW50JztcclxuaW1wb3J0IHsgY29uZmlybUhlYWRlciwgZ29vZENhdXNlQ29uZmlybU1lc3NhZ2UsIG5vTGFiZWwsIHllc0xhYmVsIH0gZnJvbSAnLi4vLi4vY29uc3RhbnRzL3llcy1uby1jb25maXJtLWRlZmF1bHRzJztcclxuaW1wb3J0IHtcclxuICBjc0FwcG9pbnRtZW50cyxcclxuICBjc0Fzc2lnbm1lbnRzLFxyXG4gIGpjQXBwb2ludG1lbnRzLFxyXG4gIHNwbFJlZkFwcG9pbnRtZW50cyxcclxuICB0YWdBcHBvaW50bWVudHMsXHJcbiAgdGFnQXNzaWdubWVudHNcclxufSBmcm9tICcuLi8uLi8uLi9jb25jaWxpYXRpb24tYXBwb2ludG1lbnQtd29yay1saXN0L2NvbnN0YW50cy9vcmdpbmFsLWNhdGVnb3J5LWxvb2t1cC10eXBlcy5jb25zdGFudHMnO1xyXG5pbXBvcnQgeyBTYXZlU2NoZWR1bGluZ0NhbGxCYWNrTW9kZWwgfSBmcm9tICcuLi8uLi9tb2RlbHMvc2F2ZS1zY2hlZHVsaW5nLWNhbGwtYmFjay5tb2RlbCc7XHJcbmltcG9ydCB7IFJlU2NoZWR1bGVDYWxsQmFja0FjdGlvbkNvbXBvbmVudCB9IGZyb20gJy4uL3JlLXNjaGVkdWxlLWNhbGwtYmFjay1hY3Rpb24vcmUtc2NoZWR1bGUtY2FsbC1iYWNrLWFjdGlvbi5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBTYXZlT3V0cmVhY2hNb2RlbCB9IGZyb20gJy4uLy4uL21vZGVscy9zYXZlLW91dHJlYWNoLW1vZGVsJztcclxuaW1wb3J0IHsgUmVBc3NpZ25EYWlsb2dib3hDb21wb25lbnQgfSBmcm9tICcuLi9yZS1hc3NpZ24tZGFpbG9nYm94L3JlLWFzc2lnbi1kYWlsb2dib3guY29tcG9uZW50JztcclxuaW1wb3J0IHsgU3VibWl0UmVhc3NpZ25Nb2RlbCB9IGZyb20gJy4uLy4uL21vZGVscy9zdWJtaXQtcmUtYXNzaWduLWZyb21tb2RlbCc7XHJcbmltcG9ydCB7IEFzc2lnbm1lbnRzU3RpbGxBY3RpdmVEaWFsb2dib3hDb21wb25lbnQgfSBmcm9tICcuLi9hc3NpZ25tZW50cy1zdGlsbC1hY3RpdmUtZGlhbG9nYm94L2Fzc2lnbm1lbnRzLXN0aWxsLWFjdGl2ZS1kaWFsb2dib3guY29tcG9uZW50JztcclxuaW1wb3J0IHsgb3BlbkFwcG9pbnRtZW50RGlhbG9nIH0gZnJvbSAnLi4vLi4vLi4vc2hhcmVkL2Z1bmN0aW9ucy9vcGVuLWFwcG9pbnRtZW50JztcclxuaW1wb3J0IHtcclxuICBjbGllbnRGb2xsb3dVcEFjdGlvbklkLFxyXG4gIGdvb2RDYXVzZUdyYW50ZWRBY3Rpb25JZCxcclxuICBnb29kQ2F1c2VOb3RHcmFudGVkQWN0aW9uSWQsXHJcbiAgcmVBc3NpZ25Db25mZXJlbmNlQ2F0ZWdvcnlBY3Rpb25JZCxcclxuICByZWNvcmRPdXRyZWFjaEFjdGlvbklkLFxyXG4gIHJlU2NoZWR1bGVDb25mZXJlbmNlQnlQaG9uZUFjdGlvbklkLFxyXG4gIHdpdGhkcmF3QWN0aW9uSWQsXHJcbiAgY2FzZVN1bW1hcnlJZFxyXG59IGZyb20gJy4uLy4uL2NvbnN0YW50cy9tZW51LWFjdGlvbi1kZWZzJztcclxuaW1wb3J0IHsgQ2xpZW50Rm9sbG93dXBEYWlsb2dib3hDb21wb25lbnQgfSBmcm9tICcuLi9jbGllbnQtZm9sbG93dXAtZGFpbG9nYm94L2NsaWVudC1mb2xsb3d1cC1kYWlsb2dib3guY29tcG9uZW50JztcclxuaW1wb3J0IHsgV2l0aGRyYXdEYWlsb2dib3hDb21wb25lbnQgfSBmcm9tICcuLi93aXRoZHJhdy1kYWlsb2dib3gvd2l0aGRyYXctZGFpbG9nYm94LmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFJlY29yZE91dHJlYWNoZGlhbG9nYm94Q29tcG9uZW50IH0gZnJvbSAnLi4vcmVjb3JkLW91dHJlYWNoZGlhbG9nYm94L3JlY29yZC1vdXRyZWFjaGRpYWxvZ2JveC5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBTdWJtaXRCYXRjaFBvb2xBcHBvaW50bWVudE1vZGVsIH0gZnJvbSAnLi4vLi4vLi4vY29uY2lsaWF0aW9uLWFwcG9pbnRtZW50LXdvcmstbGlzdC9tb2RlbHMvc3VibWl0LWJhdGNoLXBvb2wtYXBwb2ludG1lbnQubW9kZWwnO1xyXG5pbXBvcnQgeyBDb25jaWxpYXRpb25BcHBvaW50bWVudFdvcmtMaXN0U2VydmljZSB9IGZyb20gJy4uLy4uLy4uL2NvbmNpbGlhdGlvbi1hcHBvaW50bWVudC13b3JrLWxpc3Qvc2VydmljZXMvY29uY2lsaWF0aW9uLWFwcG9pbnRtZW50LXdvcmstbGlzdC5zZXJ2aWNlJztcclxuaW1wb3J0IHsgR2VuZXJhdGVGSUExMTg3QUxldHRlckRpYWxvZ2JveENvbXBvbmVudCB9IGZyb20gJy4uLy4uLy4uL3NoYXJlZC9jb21wb25lbnRzL2dlbmVyYXRlLWZpYTExODctYWxldHRlci1kaWFsb2dib3gvZ2VuZXJhdGUtZmlhMTE4Ny1hbGV0dGVyLWRpYWxvZ2JveC5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyB0ZWxlQ29uZmVyZW5jZUlkIH0gZnJvbSAnLi4vLi4vLi4vY29uY2lsaWF0aW9uLWFwcG9pbnRtZW50LXdvcmstbGlzdC9jb25zdGFudHMvd29ya2xpc3RfaWQnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdwcnV0ZWNoLXRlbGVwaG9uZS1jb250ZXh0LW1lbnUnLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9jb250ZXh0LW1lbnUuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL2NvbnRleHQtbWVudS5jb21wb25lbnQuY3NzJ10sXHJcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBUZWxlcGhvbmVPclNldHRsZWRDb25mZXJlbmNDb250ZXh0TWVudUNvbXBvbmVudCBleHRlbmRzIEFic3RyYWN0Q29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcclxuXHJcbiAgbWVudUl0ZW1zOiBDb250ZXh0TWVudUl0ZW1bXSA9IG1lbnVJdGVtcztcclxuICBwYXJhbXM6IEFnR3JpZEFuZ3VsYXI7XHJcbiAgY29uY2lsaWF0aW9uTG9va3VwczogQ29uY2lsaWF0aW9uTG9va3VwcztcclxuICBhY3Rpb25zOiBMb29rdXBbXTtcclxuICB1c2VyOiBVc2VyO1xyXG5cclxuICBjb25zdHJ1Y3RvcihwdWJsaWMgZGlhbG9nOiBNYXREaWFsb2csXHJcbiAgICBwcml2YXRlIGxvb2t1cHNTZXJ2aWNlOiBMb29rdXBzU2VydmljZSxcclxuICAgIHByaXZhdGUgdGFiU2VydmljZTogVGFiU2VydmljZSxcclxuICAgIHByaXZhdGUgcm91dGVyOiBSb3V0ZXIsXHJcbiAgICBwcml2YXRlIHVzZXJTZXJ2aWNlOiBVc2VyU2VydmljZSxcclxuICAgIHByaXZhdGUgY29uY2lsaWF0aW9uV29ya0xpc3RTZXJ2aWNlOiBDb25jaWxpYXRpb25BcHBvaW50bWVudFdvcmtMaXN0U2VydmljZSxcclxuICAgIHByaXZhdGUgdGVsZXBob25lT3JTZXR0bGVkQ29uZmVyZW5jZVdvcmtMaXN0U2VydmljZTogVGVsZXBob25lT3JTZXR0bGVkQ29uZmVyZW5jZVdvcmtMaXN0U2VydmljZSxcclxuICAgIHByaXZhdGUgcm91dGU6IEFjdGl2YXRlZFJvdXRlLFxyXG4gICkge1xyXG4gICAgc3VwZXIoKTtcclxuICB9XHJcblxyXG4gIG5nT25Jbml0KCk6IHZvaWQge1xyXG4gICAgdGhpcy51c2VyU2VydmljZS51c2VyLnBpcGUoXHJcbiAgICAgIHRha2VVbnRpbCh0aGlzLmNvbXBvbmVudERlc3Ryb3llZCksXHJcbiAgICAgIHJGaWx0ZXIoKHVzZXI6IFVzZXIpID0+ICEhdXNlcikpXHJcbiAgICAgIC5zdWJzY3JpYmUoKHVzZXI6IFVzZXIpID0+IHtcclxuICAgICAgICB0aGlzLnVzZXIgPSB1c2VyO1xyXG4gICAgICB9KTtcclxuXHJcbiAgICB0aGlzLmxvb2t1cHNTZXJ2aWNlLmxvb2t1cHMucGlwZSh0YWtlVW50aWwodGhpcy5jb21wb25lbnREZXN0cm95ZWQpKVxyXG4gICAgICAuc3Vic2NyaWJlKChsb29rdXBzOiBDb25jaWxpYXRpb25Mb29rdXBzKSA9PiB7XHJcbiAgICAgICAgdGhpcy5jb25jaWxpYXRpb25Mb29rdXBzID0gbG9va3VwcztcclxuICAgICAgfSk7XHJcbiAgICB0aGlzLnRlbGVwaG9uZU9yU2V0dGxlZENvbmZlcmVuY2VXb3JrTGlzdFNlcnZpY2UuYWN0aW9ucy5waXBlKHRha2VVbnRpbCh0aGlzLmNvbXBvbmVudERlc3Ryb3llZCkpXHJcbiAgICAgIC5zdWJzY3JpYmUoKGFjdGlvbnM6IExvb2t1cFtdKSA9PiB7XHJcbiAgICAgICAgdGhpcy5hY3Rpb25zID0gYWN0aW9ucztcclxuICAgICAgICB0aGlzLm1lbnVJdGVtcyA9IHRoaXMuZ2V0VXBkYXRlZE1lbnVJdGVtcygpO1xyXG4gICAgICB9KTtcclxuICB9XHJcblxyXG4gIGFnSW5pdChwYXJhbXM6IEFnR3JpZEFuZ3VsYXIpOiB2b2lkIHtcclxuICAgIHRoaXMucGFyYW1zID0gcGFyYW1zO1xyXG4gICAgaWYgKGdldCh0aGlzLnBhcmFtcywgJ2RhdGEubGFzdEFjdGlvbklkJykgPT0gZ29vZENhdXNlTm90R3JhbnRlZEFjdGlvbklkKSB7XHJcbiAgICAgIHRoaXMubWVudUl0ZW1zID0gbWFwKHRoaXMubWVudUl0ZW1zLCAoaXRlbTogQ29udGV4dE1lbnVJdGVtKSA9PiB7XHJcbiAgICAgICAgcmV0dXJuIHtcclxuICAgICAgICAgIC4uLml0ZW0sXHJcbiAgICAgICAgICBpdGVtczogZmlsdGVyKGl0ZW0uaXRlbXMsIChhY3Rpb25JdGVtOiBDb250ZXh0TWVudUFjdGlvbkl0ZW0pID0+IGFjdGlvbkl0ZW0ucm91dGUgIT09IHRvU3RyaW5nKGdvb2RDYXVzZUdyYW50ZWRBY3Rpb25JZCkgJiYgYWN0aW9uSXRlbS5yb3V0ZSAhPT0gdG9TdHJpbmcoZ29vZENhdXNlTm90R3JhbnRlZEFjdGlvbklkKSksXHJcbiAgICAgICAgfTtcclxuICAgICAgfSk7XHJcbiAgICB9XHJcbiAgICBpZiAoIWdldCh0aGlzLnBhcmFtcywgJ2RhdGEuaXNHcmFudGVkJykpIHtcclxuICAgICAgdGhpcy5tZW51SXRlbXMgPSBtYXAodGhpcy5tZW51SXRlbXMsIChpdGVtOiBDb250ZXh0TWVudUl0ZW0pID0+IHtcclxuICAgICAgICByZXR1cm4ge1xyXG4gICAgICAgICAgLi4uaXRlbSwgaXRlbXM6IGZpbHRlcihpdGVtLml0ZW1zLCAoYWN0aW9uSXRlbTogQ29udGV4dE1lbnVBY3Rpb25JdGVtKSA9PiBhY3Rpb25JdGVtLnJvdXRlICE9PSB0b1N0cmluZyhnb29kQ2F1c2VHcmFudGVkQWN0aW9uSWQpJiYgYWN0aW9uSXRlbS5yb3V0ZSAhPT0gdG9TdHJpbmcoZ29vZENhdXNlTm90R3JhbnRlZEFjdGlvbklkKSksXHJcbiAgICAgICAgfTtcclxuICAgICAgfSk7XHJcbiAgICB9XHJcbiAgICBpZiAoIWdldCh0aGlzLnBhcmFtcywgJ2RhdGEuaXNTY2hlZHVsZScpICkge1xyXG4gICAgICB0aGlzLm1lbnVJdGVtcyA9IG1hcCh0aGlzLm1lbnVJdGVtcywgKGl0ZW06IENvbnRleHRNZW51SXRlbSkgPT4ge1xyXG4gICAgICAgIHJldHVybiB7XHJcbiAgICAgICAgICAuLi5pdGVtLCBpdGVtczogZmlsdGVyKGl0ZW0uaXRlbXMsIChhY3Rpb25JdGVtOiBDb250ZXh0TWVudUFjdGlvbkl0ZW0pID0+IGFjdGlvbkl0ZW0ucm91dGUgIT09IHRvU3RyaW5nKGNsaWVudEZvbGxvd1VwQWN0aW9uSWQpJiYgYWN0aW9uSXRlbS5yb3V0ZSAhPT0gdG9TdHJpbmcod2l0aGRyYXdBY3Rpb25JZCkpLFxyXG4gICAgICAgIH07XHJcbiAgICAgIH0pO1xyXG4gICAgfVxyXG4gICAgaWYgKCFnZXQodGhpcy5wYXJhbXMsICdkYXRhLmlzUmVTY2hlZHVsZScpICkge1xyXG4gICAgICB0aGlzLm1lbnVJdGVtcyA9IG1hcCh0aGlzLm1lbnVJdGVtcywgKGl0ZW06IENvbnRleHRNZW51SXRlbSkgPT4ge1xyXG4gICAgICAgIHJldHVybiB7XHJcbiAgICAgICAgICAuLi5pdGVtLCBpdGVtczogZmlsdGVyKGl0ZW0uaXRlbXMsIChhY3Rpb25JdGVtOiBDb250ZXh0TWVudUFjdGlvbkl0ZW0pID0+IGFjdGlvbkl0ZW0ucm91dGUgIT09IHRvU3RyaW5nKHJlU2NoZWR1bGVDb25mZXJlbmNlQnlQaG9uZUFjdGlvbklkKSksXHJcbiAgICAgICAgfTtcclxuICAgICAgfSk7XHJcbiAgICB9XHJcbiAgICBpZiAoIWdldCh0aGlzLnBhcmFtcywgJ2RhdGEuaXNPdXRyZWFjaCcpKSB7XHJcbiAgICAgIHRoaXMubWVudUl0ZW1zID0gbWFwKHRoaXMubWVudUl0ZW1zLCAoaXRlbTogQ29udGV4dE1lbnVJdGVtKSA9PiB7XHJcbiAgICAgICAgcmV0dXJuIHtcclxuICAgICAgICAgIC4uLml0ZW0sIGl0ZW1zOiBmaWx0ZXIoaXRlbS5pdGVtcywgKGFjdGlvbkl0ZW06IENvbnRleHRNZW51QWN0aW9uSXRlbSkgPT4gYWN0aW9uSXRlbS5yb3V0ZSAhPT0gdG9TdHJpbmcocmVjb3JkT3V0cmVhY2hBY3Rpb25JZCkpLFxyXG4gICAgICAgIH07XHJcbiAgICAgIH0pO1xyXG4gICAgfVxyXG4gICAgaWYgKCFnZXQodGhpcy5wYXJhbXMsICdkYXRhLmlzUmVBc3NpZ24nKSkge1xyXG4gICAgICB0aGlzLm1lbnVJdGVtcyA9IG1hcCh0aGlzLm1lbnVJdGVtcywgKGl0ZW06IENvbnRleHRNZW51SXRlbSkgPT4ge1xyXG4gICAgICAgIHJldHVybiB7XHJcbiAgICAgICAgICAuLi5pdGVtLCBpdGVtczogZmlsdGVyKGl0ZW0uaXRlbXMsIChhY3Rpb25JdGVtOiBDb250ZXh0TWVudUFjdGlvbkl0ZW0pID0+IGFjdGlvbkl0ZW0ucm91dGUgIT09IHRvU3RyaW5nKHJlQXNzaWduQ29uZmVyZW5jZUNhdGVnb3J5QWN0aW9uSWQpKSxcclxuICAgICAgICB9O1xyXG4gICAgICB9KTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIGdldFVwZGF0ZWRNZW51SXRlbXMoKTogQ29udGV4dE1lbnVJdGVtW10ge1xyXG4gICAgcmV0dXJuIG1hcCh0aGlzLm1lbnVJdGVtcywgKGl0ZW06IENvbnRleHRNZW51SXRlbSkgPT4ge1xyXG4gICAgICBpZiAoaXRlbS5sYWJlbCA9PT0gYWN0aW9uc0xhYmVsKSB7XHJcbiAgICAgICAgcmV0dXJuIHtcclxuICAgICAgICAgIGxhYmVsOiBhY3Rpb25zTGFiZWwsXHJcbiAgICAgICAgICBpdGVtczogZmlsdGVyKGl0ZW0uaXRlbXMsIChhY3Rpb25JdGVtOiBDb250ZXh0TWVudUFjdGlvbkl0ZW0pID0+XHJcbiAgICAgICAgICAgICEhZmluZCh0aGlzLmFjdGlvbnMsIChhY3Rpb25Mb29rdXA6IExvb2t1cCkgPT4gdG9TdHJpbmcoYWN0aW9uTG9va3VwLmxvb2t1cElkKSA9PT0gYWN0aW9uSXRlbS5yb3V0ZSkgfHwgYWN0aW9uSXRlbS5yb3V0ZSA9PT0gdG9TdHJpbmcoY2FzZVN1bW1hcnlJZCkpLFxyXG4gICAgICAgIH07XHJcbiAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgcmV0dXJuIGl0ZW07XHJcbiAgICAgIH1cclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgZG9BY3Rpb24oZXZlbnQ6IENvbnRleHRNZW51QWN0aW9uSXRlbSk6IHZvaWQge1xyXG4gICAgc3dpdGNoIChldmVudC5yb3V0ZSkge1xyXG4gICAgICBjYXNlIHRvU3RyaW5nKGdvb2RDYXVzZUdyYW50ZWRBY3Rpb25JZCk6XHJcbiAgICAgICAgdGhpcy5vcGVuR29vZENhdXNlR3JhbnRlZERpYWxvZyhnZXQodGhpcy5wYXJhbXMsICdkYXRhJykpO1xyXG4gICAgICAgIGJyZWFrO1xyXG4gICAgICAvLyBzdXBwb3NlIGdvb2QgY2F1c2UgZ3JhbnRlZCBsb29rdXBJZCBpcyAyXHJcbiAgICAgIGNhc2UgdG9TdHJpbmcoZ29vZENhdXNlTm90R3JhbnRlZEFjdGlvbklkKTpcclxuICAgICAgICB0aGlzLm9wZW5Hb29kQ2F1c2VOb3RHcmFudGVkRGlhbG9nKGdldCh0aGlzLnBhcmFtcywgJ2RhdGEnKSk7XHJcbiAgICAgICAgYnJlYWs7XHJcbiAgICAgIGNhc2UgdG9TdHJpbmcocmVTY2hlZHVsZUNvbmZlcmVuY2VCeVBob25lQWN0aW9uSWQpOlxyXG4gICAgICAgIHRoaXMub3BlblJlU2NoZWR1bGVDYWxsQmFja0RpYWxvZyhnZXQodGhpcy5wYXJhbXMsICdkYXRhJykpO1xyXG4gICAgICAgIGJyZWFrO1xyXG4gICAgICBjYXNlIHRvU3RyaW5nKHJlY29yZE91dHJlYWNoQWN0aW9uSWQpOlxyXG4gICAgICAgIHRoaXMub3Blbk91dHJlYWNoRGlhbG9nKGdldCh0aGlzLnBhcmFtcywgJ2RhdGEnKSk7XHJcbiAgICAgICAgYnJlYWs7XHJcbiAgICAgIGNhc2UgdG9TdHJpbmcocmVBc3NpZ25Db25mZXJlbmNlQ2F0ZWdvcnlBY3Rpb25JZCk6XHJcbiAgICAgICAgdGhpcy5vcGVuUmVBc3NpZ25EaWFsb2coZ2V0KHRoaXMucGFyYW1zLCAnZGF0YScpKTtcclxuICAgICAgICBicmVhaztcclxuICAgICAgY2FzZSB0b1N0cmluZyhjbGllbnRGb2xsb3dVcEFjdGlvbklkKTpcclxuICAgICAgICB0aGlzLm9wZW5DbGllbnRGb2xsb3d1cERhaWxvZyhnZXQodGhpcy5wYXJhbXMsICdkYXRhJykpO1xyXG4gICAgICAgIGJyZWFrO1xyXG4gICAgICBjYXNlIHRvU3RyaW5nKHdpdGhkcmF3QWN0aW9uSWQpOlxyXG4gICAgICAgIHRoaXMub3BlbndpdGhkcmF3RGFpbG9nKGdldCh0aGlzLnBhcmFtcywgJ2RhdGEnKSk7XHJcbiAgICAgICAgYnJlYWs7XHJcbiAgICAgIGNhc2UgdG9TdHJpbmcoY2FzZVN1bW1hcnlJZCk6XHJcbiAgICAgICAgdGhpcy5vcGVuQ2FzZXN1bW1hcnkoZ2V0KHRoaXMucGFyYW1zLCAnZGF0YScpKTtcclxuICAgICAgICBicmVhaztcclxuXHJcbiAgICAgIGRlZmF1bHQ6XHJcbiAgICAgICAgYnJlYWs7XHJcbiAgICB9XHJcbiAgfVxyXG4gIG9wZW5DYXNlc3VtbWFyeShpdGVtOiBUZWxlcGhvbmVPclNldHRsZWRDb25mZXJlbmNlV29ya0xpc3RJdGVtTW9kZWwpIHtcclxuICAgIHRoaXMucm91dGVyLm5hdmlnYXRlQnlVcmwoJy9jYXNlLXN1bW1hcnkvJyArIGl0ZW0/LmNtc0Nhc2VJZCk7XHJcbiAgfVxyXG4gIG9wZW53aXRoZHJhd0RhaWxvZyhpdGVtOiBUZWxlcGhvbmVPclNldHRsZWRDb25mZXJlbmNlV29ya0xpc3RJdGVtTW9kZWwpIHtcclxuICAgIGNvbnN0IGRpYWxvZ1JlZjogTWF0RGlhbG9nUmVmPFdpdGhkcmF3RGFpbG9nYm94Q29tcG9uZW50PiA9IHRoaXMuZGlhbG9nLm9wZW4oV2l0aGRyYXdEYWlsb2dib3hDb21wb25lbnQsIHtcclxuICAgICAgd2lkdGg6IGRpYWxvZ1NpemUsXHJcbiAgICAgIGRpc2FibGVDbG9zZTogdHJ1ZSxcclxuICAgICAgZGF0YToge1xyXG4gICAgICAgIGNvbmNpbGlhdGlvbkxvb2t1cHM6IHRoaXMuY29uY2lsaWF0aW9uTG9va3VwcyxcclxuICAgICAgfSxcclxuICAgIH0pO1xyXG5cclxuICAgIC8vIHRzbGludDpkaXNhYmxlLW5leHQtbGluZTpuby1hbnlcclxuICAgIGRpYWxvZ1JlZi5hZnRlckNsb3NlZCgpLnBpcGUodGFrZVVudGlsKHRoaXMuY29tcG9uZW50RGVzdHJveWVkKSkuc3Vic2NyaWJlKChyZXM6IGFueSkgPT4ge1xyXG4gICAgICBpZiAoISFyZXMpIHtcclxuICAgICAgICBjb25zdCBwYXlsb2FkOiBTdWJtaXRSZWFzc2lnbk1vZGVsID0gbmV3IFN1Ym1pdFJlYXNzaWduTW9kZWwoe1xyXG4gICAgICAgICAgLi4ucmVzLFxyXG4gICAgICAgICAgd2xUZWxlcGhvbmVTZXR0bGVkSWQ6IGdldChpdGVtLCAnd2xUZWxlcGhvbmVTZXR0bGVkSWQnKSxcclxuICAgICAgICAgIGFjdGlvbklkOiB3aXRoZHJhd0FjdGlvbklkLFxyXG5cclxuICAgICAgICB9KTtcclxuICAgICAgICB0aGlzLnRlbGVwaG9uZU9yU2V0dGxlZENvbmZlcmVuY2VXb3JrTGlzdFNlcnZpY2UuZGlzcGF0Y2hTYXZlUmVhc3NpZ24ocGF5bG9hZCk7XHJcblxyXG4gICAgICB9XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIG9wZW5DbGllbnRGb2xsb3d1cERhaWxvZyhpdGVtOiBUZWxlcGhvbmVPclNldHRsZWRDb25mZXJlbmNlV29ya0xpc3RJdGVtTW9kZWwpIHtcclxuICAgIGNvbnN0IGRpYWxvZ1JlZjogTWF0RGlhbG9nUmVmPENsaWVudEZvbGxvd3VwRGFpbG9nYm94Q29tcG9uZW50PiA9IHRoaXMuZGlhbG9nLm9wZW4oQ2xpZW50Rm9sbG93dXBEYWlsb2dib3hDb21wb25lbnQsIHtcclxuICAgICAgd2lkdGg6IGRpYWxvZ1NpemUsXHJcbiAgICAgIGRpc2FibGVDbG9zZTogdHJ1ZSxcclxuICAgICAgZGF0YToge1xyXG4gICAgICAgIGNvbmNpbGlhdGlvbkxvb2t1cHM6IHRoaXMuY29uY2lsaWF0aW9uTG9va3VwcyxcclxuICAgICAgfSxcclxuICAgIH0pO1xyXG5cclxuICAgIC8vIHRzbGludDpkaXNhYmxlLW5leHQtbGluZTpuby1hbnlcclxuICAgIGRpYWxvZ1JlZi5hZnRlckNsb3NlZCgpLnBpcGUodGFrZVVudGlsKHRoaXMuY29tcG9uZW50RGVzdHJveWVkKSkuc3Vic2NyaWJlKChyZXM6IGFueSkgPT4ge1xyXG4gICAgICBpZiAoISFyZXMpIHtcclxuICAgICAgICBjb25zdCBwYXlsb2FkOiBTdWJtaXRSZWFzc2lnbk1vZGVsID0gbmV3IFN1Ym1pdFJlYXNzaWduTW9kZWwoe1xyXG4gICAgICAgICAgLi4ucmVzLFxyXG4gICAgICAgICAgd2xUZWxlcGhvbmVTZXR0bGVkSWQ6IGdldChpdGVtLCAnd2xUZWxlcGhvbmVTZXR0bGVkSWQnKSxcclxuICAgICAgICAgIGFjdGlvbklkOiBjbGllbnRGb2xsb3dVcEFjdGlvbklkLFxyXG5cclxuICAgICAgICB9KTtcclxuICAgICAgICB0aGlzLnRlbGVwaG9uZU9yU2V0dGxlZENvbmZlcmVuY2VXb3JrTGlzdFNlcnZpY2UuZGlzcGF0Y2hTYXZlUmVhc3NpZ24ocGF5bG9hZCk7XHJcblxyXG4gICAgICB9XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIG9wZW5Bc3NpZ21lbnRTdGlsbEFjdGl2ZURpYWxvZyhpdGVtOiBUZWxlcGhvbmVPclNldHRsZWRDb25mZXJlbmNlV29ya0xpc3RJdGVtTW9kZWwpIHtcclxuICAgIGNvbnN0IGRpYWxvZ1JlZjogTWF0RGlhbG9nUmVmPEFzc2lnbm1lbnRzU3RpbGxBY3RpdmVEaWFsb2dib3hDb21wb25lbnQ+ID0gdGhpcy5kaWFsb2cub3BlbihBc3NpZ25tZW50c1N0aWxsQWN0aXZlRGlhbG9nYm94Q29tcG9uZW50LCB7XHJcbiAgICAgIHdpZHRoOiBkaWFsb2dTaXplLFxyXG4gICAgICBkaXNhYmxlQ2xvc2U6IHRydWUsXHJcbiAgICAgIGRhdGE6IHtcclxuICAgICAgICBjb25jaWxpYXRpb25Mb29rdXBzOiB0aGlzLmNvbmNpbGlhdGlvbkxvb2t1cHMsXHJcbiAgICAgIH0sXHJcbiAgICB9KTtcclxuXHJcbiAgICAvLyB0c2xpbnQ6ZGlzYWJsZS1uZXh0LWxpbmU6bm8tYW55XHJcbiAgICBkaWFsb2dSZWYuYWZ0ZXJDbG9zZWQoKS5waXBlKHRha2VVbnRpbCh0aGlzLmNvbXBvbmVudERlc3Ryb3llZCkpLnN1YnNjcmliZSgocmVzKSA9PiB7XHJcbiAgICAgIGlmIChyZXM/LmFzc2lnbm1lbnRzU3RpbGxBY3RpdmUpIHtcclxuICAgICAgICAvL3Jlc3RhcnQgdGltZWtlZXBpbmdcclxuXHJcbiAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgcmV0dXJuIG9wZW5BcHBvaW50bWVudERpYWxvZyh0aGlzLmRpYWxvZywgaXRlbT8uYXBwb2ludG1lbnRJZCk7XHJcbiAgICAgIH1cclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgb3BlblJlQXNzaWduRGlhbG9nKGl0ZW06IFRlbGVwaG9uZU9yU2V0dGxlZENvbmZlcmVuY2VXb3JrTGlzdEl0ZW1Nb2RlbCkge1xyXG4gICAgY29uc3QgZGlhbG9nUmVmOiBNYXREaWFsb2dSZWY8UmVBc3NpZ25EYWlsb2dib3hDb21wb25lbnQ+ID0gdGhpcy5kaWFsb2cub3BlbihSZUFzc2lnbkRhaWxvZ2JveENvbXBvbmVudCwge1xyXG4gICAgICB3aWR0aDogZGlhbG9nU2l6ZSxcclxuICAgICAgZGlzYWJsZUNsb3NlOiB0cnVlLFxyXG4gICAgICBkYXRhOiB7XHJcbiAgICAgICAgY29uY2lsaWF0aW9uTG9va3VwczogdGhpcy5jb25jaWxpYXRpb25Mb29rdXBzLFxyXG4gICAgICB9LFxyXG4gICAgfSk7XHJcblxyXG4gICAgLy8gdHNsaW50OmRpc2FibGUtbmV4dC1saW5lOm5vLWFueVxyXG4gICAgZGlhbG9nUmVmLmFmdGVyQ2xvc2VkKCkucGlwZSh0YWtlVW50aWwodGhpcy5jb21wb25lbnREZXN0cm95ZWQpKS5zdWJzY3JpYmUoKHJlczogYW55KSA9PiB7XHJcbiAgICAgIGlmICghIXJlcykge1xyXG4gICAgICAgIGNvbnN0IHBheWxvYWQ6IFN1Ym1pdFJlYXNzaWduTW9kZWwgPSBuZXcgU3VibWl0UmVhc3NpZ25Nb2RlbCh7XHJcbiAgICAgICAgICAuLi5yZXMsXHJcbiAgICAgICAgICB3bFRlbGVwaG9uZVNldHRsZWRJZDogZ2V0KGl0ZW0sICd3bFRlbGVwaG9uZVNldHRsZWRJZCcpLFxyXG4gICAgICAgICAgYWN0aW9uSWQ6IHJlQXNzaWduQ29uZmVyZW5jZUNhdGVnb3J5QWN0aW9uSWQsXHJcblxyXG4gICAgICAgIH0pO1xyXG4gICAgICAgIHRoaXMudGVsZXBob25lT3JTZXR0bGVkQ29uZmVyZW5jZVdvcmtMaXN0U2VydmljZS5kaXNwYXRjaFNhdmVSZWFzc2lnbihwYXlsb2FkKTtcclxuXHJcbiAgICAgIH1cclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgb3BlblJlU2NoZWR1bGVDYWxsQmFja0RpYWxvZyhpdGVtOiBUZWxlcGhvbmVPclNldHRsZWRDb25mZXJlbmNlV29ya0xpc3RJdGVtTW9kZWwpIHtcclxuICAgIGNvbnN0IGRpYWxvZ1JlZjogTWF0RGlhbG9nUmVmPFJlU2NoZWR1bGVDYWxsQmFja0FjdGlvbkNvbXBvbmVudD4gPSB0aGlzLmRpYWxvZz8ub3BlbihSZVNjaGVkdWxlQ2FsbEJhY2tBY3Rpb25Db21wb25lbnQsIHtcclxuICAgICAgd2lkdGg6IGRpYWxvZ1NpemUsXHJcbiAgICAgIGRpc2FibGVDbG9zZTogdHJ1ZSxcclxuICAgICAgZGF0YToge1xyXG4gICAgICAgIGNvbmNpbGlhdGlvbkxvb2t1cHM6IHRoaXMuY29uY2lsaWF0aW9uTG9va3VwcyxcclxuICAgICAgfSxcclxuICAgIH0pO1xyXG5cclxuICAgIC8vIHRzbGludDpkaXNhYmxlLW5leHQtbGluZTpuby1hbnlcclxuICAgIGRpYWxvZ1JlZi5hZnRlckNsb3NlZCgpLnBpcGUodGFrZVVudGlsKHRoaXMuY29tcG9uZW50RGVzdHJveWVkKSkuc3Vic2NyaWJlKChyZXM6IGFueSkgPT4ge1xyXG4gICAgICBpZiAoISFyZXMpIHtcclxuICAgICAgICBjb25zdCBwYXlsb2FkOiBTYXZlU2NoZWR1bGluZ0NhbGxCYWNrTW9kZWwgPSBuZXcgU2F2ZVNjaGVkdWxpbmdDYWxsQmFja01vZGVsKHtcclxuICAgICAgICAgIC4uLnJlcyxcclxuICAgICAgICAgIHdsVGVsZXBob25lU2V0dGxlZElkOiBnZXQoaXRlbSwgJ3dsVGVsZXBob25lU2V0dGxlZElkJyksXHJcbiAgICAgICAgICBhY3Rpb25JZDogcmVTY2hlZHVsZUNvbmZlcmVuY2VCeVBob25lQWN0aW9uSWQsXHJcblxyXG4gICAgICAgIH0pO1xyXG5cclxuICAgICAgICB0aGlzLnRlbGVwaG9uZU9yU2V0dGxlZENvbmZlcmVuY2VXb3JrTGlzdFNlcnZpY2UuZGlzcGF0Y2hTYXZlU2NoZWR1bGluZ0NhbGxCYWNrRGV0YWlsRGV0YWlscyhwYXlsb2FkKVxyXG4gICAgICB9XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIG9wZW5PdXRyZWFjaERpYWxvZyhpdGVtOiBUZWxlcGhvbmVPclNldHRsZWRDb25mZXJlbmNlV29ya0xpc3RJdGVtTW9kZWwpIHtcclxuICAgIGNvbnN0IGRpYWxvZ1JlZjogTWF0RGlhbG9nUmVmPFJlY29yZE91dHJlYWNoZGlhbG9nYm94Q29tcG9uZW50PiA9IHRoaXMuZGlhbG9nPy5vcGVuKFJlY29yZE91dHJlYWNoZGlhbG9nYm94Q29tcG9uZW50LCB7XHJcbiAgICAgIHdpZHRoOiByZWNvcmRPdXRyZWFjaGRpYWxvZ1NpemUsXHJcbiAgICAgIGRpc2FibGVDbG9zZTogdHJ1ZSxcclxuICAgICAgZGF0YTogaXRlbVxyXG4gICAgfSk7XHJcblxyXG4gICAgLy8gdHNsaW50OmRpc2FibGUtbmV4dC1saW5lOm5vLWFueVxyXG4gICAgZGlhbG9nUmVmLmFmdGVyQ2xvc2VkKCkucGlwZSh0YWtlVW50aWwodGhpcy5jb21wb25lbnREZXN0cm95ZWQpKS5zdWJzY3JpYmUoKHJlczogYW55KSA9PiB7XHJcbiAgICAgIGlmICghIXJlcykge1xyXG4gICAgICAgIGNvbnN0IHBheWxvYWQ6IFNhdmVPdXRyZWFjaE1vZGVsID0gbmV3IFNhdmVPdXRyZWFjaE1vZGVsKHtcclxuICAgICAgICAgIC4uLnJlcyxcclxuICAgICAgICAgIHdsVGVsZXBob25lU2V0dGxlZElkOiBnZXQoaXRlbSwgJ3dsVGVsZXBob25lU2V0dGxlZElkJyksXHJcbiAgICAgICAgICBhY3Rpb25JZDogcmVjb3JkT3V0cmVhY2hBY3Rpb25JZCxcclxuICAgICAgICB9KTtcclxuICAgICAgICB0aGlzLnRlbGVwaG9uZU9yU2V0dGxlZENvbmZlcmVuY2VXb3JrTGlzdFNlcnZpY2UuZGlzcGF0Y2hTYXZlT3V0cmVhY2hXb3JrbGlzdERldGFpbERldGFpbHMocGF5bG9hZClcclxuICAgICAgfVxyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICBvcGVuR29vZENhdXNlR3JhbnRlZERpYWxvZyhpdGVtOiBUZWxlcGhvbmVPclNldHRsZWRDb25mZXJlbmNlV29ya0xpc3RJdGVtTW9kZWwpOiB2b2lkIHtcclxuICAgIGlmIChpdGVtID8ub3JpZ2luYWxDYXRlZ29yeUlkID09PSBjc0FwcG9pbnRtZW50cyB8fCBpdGVtID8ub3JpZ2luYWxDYXRlZ29yeUlkID09PSBjc0Fzc2lnbm1lbnRzIHx8XHJcbiAgICAgIGl0ZW0gPy5vcmlnaW5hbENhdGVnb3J5SWQgPT09IHRhZ0FwcG9pbnRtZW50cyB8fCBpdGVtID8ub3JpZ2luYWxDYXRlZ29yeUlkID09PSB0YWdBc3NpZ25tZW50cyApIHtcclxuICAgIGNvbnN0IGRpYWxvZ1JlZjogTWF0RGlhbG9nUmVmPEdvb2RDYXVzZUdyYW50ZWRBY3Rpb25Db21wb25lbnQ+ID0gdGhpcy5kaWFsb2cub3BlbihHb29kQ2F1c2VHcmFudGVkQWN0aW9uQ29tcG9uZW50LCB7XHJcbiAgICAgIHdpZHRoOiBkaWFsb2dTaXplLFxyXG4gICAgICBkaXNhYmxlQ2xvc2U6IHRydWUsXHJcbiAgICAgIGRhdGE6IHtcclxuICAgICAgICBjb25jaWxpYXRpb25Mb29rdXBzOiB0aGlzLmNvbmNpbGlhdGlvbkxvb2t1cHMsXHJcbiAgICAgICAgc2hvd0luUGVyc29uOiBmYWxzZSxcclxuICAgICAgfSxcclxuICAgIH0pO1xyXG4gICAgZGlhbG9nUmVmLmFmdGVyQ2xvc2VkKCkucGlwZSh0YWtlVW50aWwodGhpcy5jb21wb25lbnREZXN0cm95ZWQpKS5zdWJzY3JpYmUoKHJlczogYW55KSA9PiB7XHJcbiAgICAgIGlmIChyZXMpIHtcclxuXHJcbiAgICAgICAgY29uc3QgZGlhbG9nUmVmID0gdGhpcy5kaWFsb2cub3BlbihHZW5lcmF0ZUZJQTExODdBTGV0dGVyRGlhbG9nYm94Q29tcG9uZW50LCB7XHJcbiAgICAgICAgICB3aWR0aDogJzU1dncnLFxyXG4gICAgICAgICAgZGlzYWJsZUNsb3NlOiB0cnVlLFxyXG4gICAgICAgICAgZGF0YToge1xyXG4gICAgICAgICAgICAvLyBhc3Nlc3NtZW50SWQ6IHRoaXMuYXNzZXNzbWVudElkIHx8IGdldCh0aGlzLmRhdGEsICdlYWVwQXNzZXNzbWVudElkJyksXHJcbiAgICAgICAgICAgIC8vIGNhc2VJZDogdGhpcy5jYXNlSWQsXHJcbiAgICAgICAgICB9LFxyXG4gICAgICAgIH0pO1xyXG4gICAgICAgIGRpYWxvZ1JlZi5hZnRlckNsb3NlZCgpXHJcbiAgICAgICAgICAucGlwZSh0YWtlVW50aWwodGhpcy5jb21wb25lbnREZXN0cm95ZWQpKVxyXG4gICAgICAgICAgLnN1YnNjcmliZSgobGV0dGVyVHlwZUlkOiBudW1iZXIpID0+IHtcclxuICAgICAgICAgICAgLy8gaWYgKGxldHRlclR5cGVJZCA9PT0gMSkge1xyXG4gICAgICAgICAgICAvLyAgIHRoaXMuY29uY2lsaWF0aW9uV29ya0xpc3RTZXJ2aWNlLmRpc3BhdGNoUHJpbnREb2N1bWVudCh7IGxldHRlclR5cGU6IGxldHRlclR5cGVJZCwgYXNzZXNzbWVudElkOiBnZXQoaXRlbSwgJ2VhZXBBc3Nlc3NtZW50SWQnKSwgQ21zQ2FzZUlEOiBnZXQoaXRlbSwgJ2Ntc0Nhc2VJZCcpLCB3b3JrbGlzdFR5cGU6IHRlbGVDb25mZXJlbmNlSWQgLGluZnJhY3Rpb25EYXRlOiBnZXQoaXRlbSwgJ2luZnJhY3Rpb25EYXRlJyl9KTtcclxuICAgICAgICAgICAgLy8gfSBlbHNlIGlmIChsZXR0ZXJUeXBlSWQgPT09IDIpIHtcclxuICAgICAgICAgICAgLy8gICB0aGlzLmNvbmNpbGlhdGlvbldvcmtMaXN0U2VydmljZS5kaXNwYXRjaFByaW50RG9jdW1lbnQoeyBsZXR0ZXJUeXBlOiBsZXR0ZXJUeXBlSWQsIGFzc2Vzc21lbnRJZDogZ2V0KGl0ZW0sICdlYWVwQXNzZXNzbWVudElkJyksIENtc0Nhc2VJRDogZ2V0KGl0ZW0sICdjbXNDYXNlSWQnKSwgd29ya2xpc3RUeXBlOiB0ZWxlQ29uZmVyZW5jZUlkLGluZnJhY3Rpb25EYXRlOiBnZXQoaXRlbSwgJ2luZnJhY3Rpb25EYXRlJyl9KTtcclxuICAgICAgICAgICAgLy8gfVxyXG4gICAgICAgICAgICBjb25zdCBwYXlsb2FkOiBTYXZlVGVsZXBob25lT3JTZXR0bGVkQ29uZmVyZW5jZVN0YXR1c1BheWxvYWQgPSBuZXcgU2F2ZVRlbGVwaG9uZU9yU2V0dGxlZENvbmZlcmVuY2VTdGF0dXNQYXlsb2FkKHtcclxuICAgICAgICAgICAgICAuLi5yZXMsXHJcbiAgICAgICAgICAgICAgd2xUZWxlcGhvbmVTZXR0bGVkSWQ6IGl0ZW0ud2xUZWxlcGhvbmVTZXR0bGVkSWQsXHJcbiAgICAgICAgICAgICAgYWN0aW9uSWQ6IDEsXHJcbiAgICAgICAgICAgICAgY2FzZUlkOiBpdGVtID8uY21zQ2FzZUlkLFxyXG4gICAgICAgICAgICAgIG9yaWdpbmFsQ2F0ZWdvcnlJZDogaXRlbSA/Lm9yaWdpbmFsQ2F0ZWdvcnlJZCxcclxuICAgICAgICAgICAgICBhc3Nlc3NtZW50SWQ6IGdldChpdGVtLCAnZWFlcEFzc2Vzc21lbnRJZCcpLFxyXG4gICAgICAgICAgICAgIGxldHRlclR5cGU6IGxldHRlclR5cGVJZCxcclxuICAgICAgICAgICAgICBpbmZyYWN0aW9uRGF0ZSA6IGdldChpdGVtLCAnaW5mcmFjdGlvbkRhdGUnKSxcclxuICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgICAgIHRoaXMudGVsZXBob25lT3JTZXR0bGVkQ29uZmVyZW5jZVdvcmtMaXN0U2VydmljZS5kaXNwYXRjaFNhdmVTdGF0dXMocGF5bG9hZCk7XHJcbiAgICAgICAgICB9KVxyXG4gICAgICAgIH1cclxuICAgIH0pO1xyXG4gIH0gZWxzZXtcclxuICAgIGNvbnN0IGRpYWxvZ1JlZjogTWF0RGlhbG9nUmVmPEdvb2RDYXVzZUdyYW50ZWRBY3Rpb25Db21wb25lbnQ+ID0gdGhpcy5kaWFsb2cub3BlbihHb29kQ2F1c2VHcmFudGVkQWN0aW9uQ29tcG9uZW50LCB7XHJcbiAgICAgIHdpZHRoOiBkaWFsb2dTaXplLFxyXG4gICAgICBkaXNhYmxlQ2xvc2U6IHRydWUsXHJcbiAgICAgIGRhdGE6IHtcclxuICAgICAgICBjb25jaWxpYXRpb25Mb29rdXBzOiB0aGlzLmNvbmNpbGlhdGlvbkxvb2t1cHMsXHJcbiAgICAgICAgc2hvd0luUGVyc29uOiBmYWxzZSxcclxuICAgICAgfSxcclxuICAgIH0pO1xyXG4gICAgZGlhbG9nUmVmLmFmdGVyQ2xvc2VkKCkucGlwZSh0YWtlVW50aWwodGhpcy5jb21wb25lbnREZXN0cm95ZWQpKS5zdWJzY3JpYmUoKHJlczogYW55KSA9PiB7XHJcbiAgICAgIGlmIChyZXMpIHtcclxuICAgICAgICBjb25zdCBkaWFsb2dSZWYgPSB0aGlzLmRpYWxvZy5vcGVuKEdlbmVyYXRlRklBMTE4N0FMZXR0ZXJEaWFsb2dib3hDb21wb25lbnQsIHtcclxuICAgICAgICAgIHdpZHRoOiAnNTV2dycsXHJcbiAgICAgICAgICBkaXNhYmxlQ2xvc2U6IHRydWUsXHJcbiAgICAgICAgICBkYXRhOiB7XHJcbiAgICAgICAgICAgIC8vIGFzc2Vzc21lbnRJZDogdGhpcy5hc3Nlc3NtZW50SWQgfHwgZ2V0KHRoaXMuZGF0YSwgJ2VhZXBBc3Nlc3NtZW50SWQnKSxcclxuICAgICAgICAgICAgLy8gY2FzZUlkOiB0aGlzLmNhc2VJZCxcclxuICAgICAgICAgIH0sXHJcbiAgICAgICAgfSk7XHJcbiAgICAgICAgZGlhbG9nUmVmLmFmdGVyQ2xvc2VkKClcclxuICAgICAgICAucGlwZSh0YWtlVW50aWwodGhpcy5jb21wb25lbnREZXN0cm95ZWQpKVxyXG4gICAgICAgIC5zdWJzY3JpYmUoKGxldHRlclR5cGVJZDogbnVtYmVyKSA9PiB7XHJcbiAgICAgICAgaWYgKGdldChpdGVtLCAnb3JpZ2luYWxDYXRlZ29yeUlkJykgPT09IGpjQXBwb2ludG1lbnRzIHx8XHJcbiAgICAgICAgICBnZXQoaXRlbSwgJ29yaWdpbmFsQ2F0ZWdvcnlJZCcpID09PSBzcGxSZWZBcHBvaW50bWVudHMgfHxcclxuICAgICAgICAgIGdldChpdGVtLCAnb3JpZ2luYWxDYXRlZ29yeUlkJykgPT09IG51bGwpIHtcclxuICAgICAgICAgIGNvbnN0IHBheWxvYWQ6IFNhdmVUZWxlcGhvbmVPclNldHRsZWRDb25mZXJlbmNlU3RhdHVzUGF5bG9hZCA9IG5ldyBTYXZlVGVsZXBob25lT3JTZXR0bGVkQ29uZmVyZW5jZVN0YXR1c1BheWxvYWQoe1xyXG4gICAgICAgICAgICAuLi5yZXMsXHJcbiAgICAgICAgICAgIHdsVGVsZXBob25lU2V0dGxlZElkOiBpdGVtLndsVGVsZXBob25lU2V0dGxlZElkLFxyXG4gICAgICAgICAgICBhY3Rpb25JZDogZ29vZENhdXNlR3JhbnRlZEFjdGlvbklkLFxyXG4gICAgICAgICAgICBjYXNlSWQ6IGl0ZW0gPy5jbXNDYXNlSWQsXHJcbiAgICAgICAgICAgIG9yaWdpbmFsQ2F0ZWdvcnlJZDogaXRlbSA/Lm9yaWdpbmFsQ2F0ZWdvcnlJZCxcclxuICAgICAgICAgICAgYXNzZXNzbWVudElkOiBnZXQoaXRlbSwgJ2VhZXBBc3Nlc3NtZW50SWQnKSxcclxuICAgICAgICAgICAgbGV0dGVyVHlwZTogbGV0dGVyVHlwZUlkLFxyXG4gICAgICAgICAgICBpbmZyYWN0aW9uRGF0ZSA6IGdldChpdGVtLCAnaW5mcmFjdGlvbkRhdGUnKSxcclxuICAgICAgICAgIH0pO1xyXG4gICAgICAgICAgdGhpcy50ZWxlcGhvbmVPclNldHRsZWRDb25mZXJlbmNlV29ya0xpc3RTZXJ2aWNlLmRpc3BhdGNoU2F2ZVN0YXR1cyhwYXlsb2FkKTtcclxuICAgICAgICAgIHRoaXMudGFiU2VydmljZS5kaXNwYXRjaEFkZFRhYih7XHJcbiAgICAgICAgICAgIHRhYk5hbWU6ICdlYS1lcC8nICsgaXRlbT8uY21zQ2FzZUlkLFxyXG4gICAgICAgICAgICByb3V0ZTogJy9lYS1lcC8nICsgaXRlbT8uY21zQ2FzZUlkLFxyXG4gICAgICAgICAgICBsYWJlbDogJ0Fzc2Vzc21lbnRzJyArICcgLSAnICsgaXRlbT8uY2xpZW50TmFtZSxcclxuICAgICAgICAgICAgY2FuQ2xvc2U6IHRydWUsXHJcbiAgICAgICAgICB9KTtcclxuICAgICAgICAgIHRoaXMucm91dGVyLm5hdmlnYXRlKFsnL2VhLWVwLycgKyBpdGVtPy5jbXNDYXNlSWRdLCB7IHJlbGF0aXZlVG86IHRoaXMucm91dGUsIHN0YXRlOiB7IGNsaWVudE5hbWU6IGl0ZW0/LmNsaWVudE5hbWUgfSB9KTtcclxuICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgY29uc3QgcGF5bG9hZDogU2F2ZVRlbGVwaG9uZU9yU2V0dGxlZENvbmZlcmVuY2VTdGF0dXNQYXlsb2FkID0gbmV3IFNhdmVUZWxlcGhvbmVPclNldHRsZWRDb25mZXJlbmNlU3RhdHVzUGF5bG9hZCh7XHJcbiAgICAgICAgICAgIC4uLnJlcyxcclxuICAgICAgICAgICAgd2xUZWxlcGhvbmVTZXR0bGVkSWQ6IGl0ZW0ud2xUZWxlcGhvbmVTZXR0bGVkSWQsXHJcbiAgICAgICAgICAgIGFjdGlvbklkOiBnb29kQ2F1c2VHcmFudGVkQWN0aW9uSWQsXHJcbiAgICAgICAgICAgIGNhc2VJZDogaXRlbSA/LmNtc0Nhc2VJZCxcclxuICAgICAgICAgICAgb3JpZ2luYWxDYXRlZ29yeUlkOiBpdGVtID8ub3JpZ2luYWxDYXRlZ29yeUlkLFxyXG4gICAgICAgICAgICBhc3Nlc3NtZW50SWQ6IGdldChpdGVtLCAnZWFlcEFzc2Vzc21lbnRJZCcpLFxyXG4gICAgICAgICAgICBsZXR0ZXJUeXBlOiBsZXR0ZXJUeXBlSWQsXHJcbiAgICAgICAgICAgIGluZnJhY3Rpb25EYXRlIDogZ2V0KGl0ZW0sICdpbmZyYWN0aW9uRGF0ZScpLFxyXG4gICAgICAgICAgfSk7XHJcbiAgICAgICAgICB0aGlzLnRlbGVwaG9uZU9yU2V0dGxlZENvbmZlcmVuY2VXb3JrTGlzdFNlcnZpY2UuZGlzcGF0Y2hTYXZlU3RhdHVzKHBheWxvYWQpO1xyXG4gICAgICAgIH1cclxuICAgICAgfSk7XHJcbiAgfVxyXG59KVxyXG59XHJcbiAgfVxyXG5cclxuICBzdWJtaXRCYXRjaFBvb2xBcHBvaW50bWVudChpdGVtOiBUZWxlcGhvbmVPclNldHRsZWRDb25mZXJlbmNlV29ya0xpc3RJdGVtTW9kZWwsIGFwcG9pbnRtZW50TllDV0FZY29kZTogc3RyaW5nKSB7XHJcbiAgICBjb25zdCBwYXlsb2FkOiBTdWJtaXRCYXRjaFBvb2xBcHBvaW50bWVudE1vZGVsID0gbmV3IFN1Ym1pdEJhdGNoUG9vbEFwcG9pbnRtZW50TW9kZWwoe1xyXG5cclxuICAgICAgY2FzZUlkOiBpdGVtPy5jbXNDYXNlSWQsXHJcbiAgICAgIHNpdGVJZDogZ2V0KGl0ZW0sICdzbVNpdGVJZCcpLFxyXG4gICAgICBhcHBvaW50bWVudElkOiBpdGVtPy5hcHBvaW50bWVudElkLFxyXG4gICAgICBlYWVwQXNzZXNzbWVudElkOiBnZXQoaXRlbSwgJ2VhZXBBc3Nlc3NtZW50SWQnKSxcclxuICAgICAgd2xUZWxlcGhvbmVTZXR0bGVkSWQ6IGdldChpdGVtLCAnd2xUZWxlcGhvbmVTZXR0bGVkSWQnKSxcclxuICAgICAgYXBwb2ludG1lbnROWUNXQVljb2RlOiBhcHBvaW50bWVudE5ZQ1dBWWNvZGUsXHJcbiAgICB9KTtcclxuICAgIHRoaXMuY29uY2lsaWF0aW9uV29ya0xpc3RTZXJ2aWNlLmRpc3BhdGNoU3VibWl0QmF0Y2hQb29sQXBwb2ludG1lbnQocGF5bG9hZCk7XHJcbiAgfVxyXG5cclxuICBvcGVuR29vZENhdXNlTm90R3JhbnRlZERpYWxvZyhpdGVtOiBUZWxlcGhvbmVPclNldHRsZWRDb25mZXJlbmNlV29ya0xpc3RJdGVtTW9kZWwpOiB2b2lkIHtcclxuICAgIGNvbnN0IGRpYWxvZ1JlZjogTWF0RGlhbG9nUmVmPEdvb2RDYXVzZU5vdEdyYW50ZWRBY3Rpb25Db21wb25lbnQ+ID0gdGhpcy5kaWFsb2c/Lm9wZW4oR29vZENhdXNlTm90R3JhbnRlZEFjdGlvbkNvbXBvbmVudCwge1xyXG4gICAgICB3aWR0aDogZGlhbG9nU2l6ZSxcclxuICAgICAgZGlzYWJsZUNsb3NlOiB0cnVlLFxyXG4gICAgICBkYXRhOiB7XHJcbiAgICAgICAgY29uY2lsaWF0aW9uTG9va3VwczogdGhpcy5jb25jaWxpYXRpb25Mb29rdXBzLFxyXG4gICAgICAgIGRhdGE6IGl0ZW1cclxuICAgICAgfSxcclxuICAgIH0pO1xyXG5cclxuICAgIC8vIHRzbGludDpkaXNhYmxlLW5leHQtbGluZTpuby1hbnlcclxuICAgIGRpYWxvZ1JlZi5hZnRlckNsb3NlZCgpLnBpcGUodGFrZVVudGlsKHRoaXMuY29tcG9uZW50RGVzdHJveWVkKSkuc3Vic2NyaWJlKChyZXM6IGFueSkgPT4ge1xyXG4gICAgICBpZiAoISFyZXMpIHtcclxuICAgICAgICB0aGlzLnRlbGVwaG9uZU9yU2V0dGxlZENvbmZlcmVuY2VXb3JrTGlzdFNlcnZpY2UuZGlzcGF0Y2hTYXZlU3RhdHVzKG5ldyBTYXZlVGVsZXBob25lT3JTZXR0bGVkQ29uZmVyZW5jZVN0YXR1c1BheWxvYWQoe1xyXG4gICAgICAgICAgLi4ucmVzLFxyXG4gICAgICAgICAgd2xUZWxlcGhvbmVTZXR0bGVkSWQ6IGdldChpdGVtLCAnd2xUZWxlcGhvbmVTZXR0bGVkSWQnKSxcclxuICAgICAgICAgIGFjdGlvbklkOiBnb29kQ2F1c2VOb3RHcmFudGVkQWN0aW9uSWQsXHJcbiAgICAgICAgfSkpO1xyXG4gICAgICB9XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIGFmdGVyT25EZXN0cm95KCk6IHZvaWQge1xyXG4gICAgLy9cclxuICB9XHJcblxyXG4gIG9wZW5ZZXNOb0NvbmZpcm1hdGlvbkRpYWxvZyhwYXlsb2FkOiBTYXZlVGVsZXBob25lT3JTZXR0bGVkQ29uZmVyZW5jZVN0YXR1c1BheWxvYWQsIGl0ZW06IFRlbGVwaG9uZU9yU2V0dGxlZENvbmZlcmVuY2VXb3JrTGlzdEl0ZW1Nb2RlbCk6IHZvaWQge1xyXG4gICAgY29uc3QgY29uZmlybURpYWxvZ1JlZjogTWF0RGlhbG9nUmVmPFllc05vQ29uZmlybWF0aW9uRGlhbG9nQ29tcG9uZW50PiA9IHRoaXMuZGlhbG9nLm9wZW4oWWVzTm9Db25maXJtYXRpb25EaWFsb2dDb21wb25lbnQsIHtcclxuICAgICAgd2lkdGg6IGRpYWxvZ1NpemUsXHJcbiAgICAgIGRpc2FibGVDbG9zZTogdHJ1ZSxcclxuICAgICAgZGF0YToge1xyXG4gICAgICAgIHllc0xhYmVsOiB5ZXNMYWJlbCxcclxuICAgICAgICBub0xhYmVsOiBub0xhYmVsLFxyXG4gICAgICAgIGhlYWRlcjogY29uZmlybUhlYWRlcixcclxuICAgICAgICBtZXNzYWdlOiBnb29kQ2F1c2VDb25maXJtTWVzc2FnZSxcclxuICAgICAgfSxcclxuICAgIH0pO1xyXG5cclxuICAgIGNvbmZpcm1EaWFsb2dSZWYuYWZ0ZXJDbG9zZWQoKS5waXBlKHRha2VVbnRpbCh0aGlzLmNvbXBvbmVudERlc3Ryb3llZCkpLnN1YnNjcmliZSgocmVzOiBib29sZWFuKSA9PiB7XHJcbiAgICAgIGlmICghIXJlcykge1xyXG4gICAgICAgIHRoaXMudGVsZXBob25lT3JTZXR0bGVkQ29uZmVyZW5jZVdvcmtMaXN0U2VydmljZS5kaXNwYXRjaFNhdmVTdGF0dXMobmV3IFNhdmVUZWxlcGhvbmVPclNldHRsZWRDb25mZXJlbmNlU3RhdHVzUGF5bG9hZCh7XHJcbiAgICAgICAgICAuLi5wYXlsb2FkLFxyXG4gICAgICAgICAgY29uZmlybVllc05vOiB0cnVlLFxyXG4gICAgICAgIH0pKTtcclxuICAgICAgfSBlbHNlIHtcclxuICAgICAgICB0aGlzLnRlbGVwaG9uZU9yU2V0dGxlZENvbmZlcmVuY2VXb3JrTGlzdFNlcnZpY2UuZGlzcGF0Y2hTYXZlU3RhdHVzKG5ldyBTYXZlVGVsZXBob25lT3JTZXR0bGVkQ29uZmVyZW5jZVN0YXR1c1BheWxvYWQoe1xyXG4gICAgICAgICAgLi4ucGF5bG9hZCxcclxuICAgICAgICAgIGNvbmZpcm1ZZXNObzogZmFsc2UsXHJcbiAgICAgICAgfSkpO1xyXG4gICAgICB9XHJcbiAgICB9KTtcclxuICB9XHJcbn1cclxuIiwiPHBydXRlY2gtY29udGV4dC1tZW51IFttZW51SXRlbXNdPVwibWVudUl0ZW1zXCIgKG1lbnVBY3Rpb24pPVwiZG9BY3Rpb24oJGV2ZW50KVwiPjwvcHJ1dGVjaC1jb250ZXh0LW1lbnU+XHJcbiJdfQ==
|
450
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udGV4dC1tZW51LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3BydXRlY2gvY29tcGxpYW5jZS9zcmMvbGliL3RlbGVwaG9uZS1zZXR0bGVkLWNvbmZlcmVuY2UvY29tcG9uZW50cy9jb250ZXh0LW1lbnUvY29udGV4dC1tZW51LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3BydXRlY2gvY29tcGxpYW5jZS9zcmMvbGliL3RlbGVwaG9uZS1zZXR0bGVkLWNvbmZlcmVuY2UvY29tcG9uZW50cy9jb250ZXh0LW1lbnUvY29udGV4dC1tZW51LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxTQUFTLEVBQVUsTUFBTSxlQUFlLENBQUM7QUFJM0UsT0FBTyxFQUFFLGlCQUFpQixFQUE4RCxNQUFNLHFCQUFxQixDQUFDO0FBRXBILE9BQU8sRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFLEdBQUcsRUFBRSxHQUFHLEVBQUUsUUFBUSxFQUFFLE1BQU0sUUFBUSxDQUFDO0FBQzFELE9BQU8sRUFBRSxNQUFNLElBQUksT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRTlELE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUd2RCxPQUFPLEVBQUUsVUFBVSxFQUFFLHdCQUF3QixFQUFFLE1BQU0sd0NBQXdDLENBQUM7QUFDOUYsT0FBTyxFQUFFLCtCQUErQixFQUFFLE1BQU0sMEZBQTBGLENBQUM7QUFHM0ksT0FBTyxFQUFFLGtDQUFrQyxFQUFFLE1BQU0sa0dBQWtHLENBQUM7QUFDdEosT0FBTyxFQUFFLDZDQUE2QyxFQUFFLE1BQU0scURBQXFELENBQUM7QUFDcEgsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLDBEQUEwRCxDQUFD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QUM7SUFDTCxDQUFDOzs2SUEvYlUsK0NBQStDO2lJQUEvQywrQ0FBK0MsNkZDN0Q1RCwrR0FDQTs0RkQ0RGEsK0NBQStDO2tCQU4zRCxTQUFTOytCQUNFLGdDQUFnQyxtQkFHekIsdUJBQXVCLENBQUMsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIE9uSW5pdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBBY3RpdmF0ZWRSb3V0ZSwgUm91dGVyIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcclxuaW1wb3J0IHsgTWF0RGlhbG9nLCBNYXREaWFsb2dSZWYgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9kaWFsb2cnO1xyXG5pbXBvcnQgeyBBZ0dyaWRBbmd1bGFyIH0gZnJvbSAnQGFnLWdyaWQtY29tbXVuaXR5L2FuZ3VsYXInO1xyXG5pbXBvcnQgeyBBYnN0cmFjdENvbXBvbmVudCwgQ29udGV4dE1lbnVBY3Rpb25JdGVtLCBDb250ZXh0TWVudUl0ZW0sIExvb2t1cCwgVGFiU2VydmljZSB9IGZyb20gJ0BwcnV0ZWNoL2NvbXBvbmVudHMnO1xyXG5pbXBvcnQgeyBVc2VyLCBVc2VyU2VydmljZSB9IGZyb20gJ0BwcnV0ZWNoL2lkZW50aXR5LWNsaWVudCc7XHJcbmltcG9ydCB7IGZpbHRlciwgZmluZCwgZ2V0LCBtYXAsIHRvU3RyaW5nIH0gZnJvbSAnbG9kYXNoJztcclxuaW1wb3J0IHsgZmlsdGVyIGFzIHJGaWx0ZXIsIHRha2VVbnRpbCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcclxuXHJcbmltcG9ydCB7IG1lbnVJdGVtcyB9IGZyb20gJy4uLy4uL2NvbnN0YW50cy9tZW51LWl0ZW1zJztcclxuaW1wb3J0IHsgVGVsZXBob25lT3JTZXR0bGVkQ29uZmVyZW5jZVdvcmtMaXN0SXRlbU1vZGVsIH0gZnJvbSAnLi4vLi4vbW9kZWxzL3RlbGVwaG9uZS1vci1zZXR0bGVkLWNvbmZlcmVuY2Utd29yay1saXN0LWl0ZW0ubW9kZWwnO1xyXG5pbXBvcnQgeyBUZWxlcGhvbmVPclNldHRsZWRDb25mZXJlbmNlV29ya0xpc3RTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvdGVsZXBob25lLW9yLXNldHRsZWQtY29uZmVyZW5jZS1saXN0LnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBkaWFsb2dTaXplLCByZWNvcmRPdXRyZWFjaGRpYWxvZ1NpemUgfSBmcm9tICcuLi8uLi8uLi9zaGFyZWQvY29uc3RhbnRzL2RpYWdsb2ctc2l6ZSc7XHJcbmltcG9ydCB7IEdvb2RDYXVzZUdyYW50ZWRBY3Rpb25Db21wb25lbnQgfSBmcm9tICcuLi8uLi8uLi9zaGFyZWQvY29tcG9uZW50cy9nb29kLWNhdXNlLWdyYW50ZWQtYWN0aW9uL2dvb2QtY2F1c2UtZ3JhbnRlZC1hY3Rpb24uY29tcG9uZW50JztcclxuaW1wb3J0IHsgTG9va3Vwc1NlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi9zaGFyZWQvbW9kdWxlcy9jb25jaWxpYXRpb24tbG9va3Vwcy9zZXJ2aWNlcy9sb29rdXBzLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBDb25jaWxpYXRpb25Mb29rdXBzIH0gZnJvbSAnLi4vLi4vLi4vc2hhcmVkL21vZGVscy9jb25jaWxpYXRpb24tbG9va3Vwcy5tb2RlbCc7XHJcbmltcG9ydCB7IEdvb2RDYXVzZU5vdEdyYW50ZWRBY3Rpb25Db21wb25lbnQgfSBmcm9tICcuLi8uLi8uLi9zaGFyZWQvY29tcG9uZW50cy9nb29kLWNhdXNlLW5vdC1ncmFudGVkLWFjdGlvbi9nb29kLWNhdXNlLW5vdC1ncmFudGVkLWFjdGlvbi5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBTYXZlVGVsZXBob25lT3JTZXR0bGVkQ29uZmVyZW5jZVN0YXR1c1BheWxvYWQgfSBmcm9tICcuLi8uLi9tb2RlbHMvc2F2ZS1jb25jaWxpYXRpb24tc3RhdHVzLXBheWxvYWQubW9kZWwnO1xyXG5pbXBvcnQgeyBhY3Rpb25zTGFiZWwgfSBmcm9tICcuLi8uLi8uLi9wcmUtY29uY2lsaWF0aW9uLXdvcmstbGlzdC9jb25zdGFudHMvbWVudS1pdGVtcyc7XHJcbmltcG9ydCB7IFllc05vQ29uZmlybWF0aW9uRGlhbG9nQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vLi4vc2hhcmVkL2NvbXBvbmVudHMveWVzLW5vLWNvbmZpcm1hdGlvbi1kaWFsb2cveWVzLW5vLWNvbmZpcm1hdGlvbi1kaWFsb2cuY29tcG9uZW50JztcclxuaW1wb3J0IHsgY29uZmlybUhlYWRlciwgZ29vZENhdXNlQ29uZmlybU1lc3NhZ2UsIG5vTGFiZWwsIHllc0xhYmVsIH0gZnJvbSAnLi4vLi4vY29uc3RhbnRzL3llcy1uby1jb25maXJtLWRlZmF1bHRzJztcclxuaW1wb3J0IHtcclxuICBjc0FwcG9pbnRtZW50cyxcclxuICBjc0Fzc2lnbm1lbnRzLFxyXG4gIGpjQXBwb2ludG1lbnRzLFxyXG4gIHNwbFJlZkFwcG9pbnRtZW50cyxcclxuICB0YWdBcHBvaW50bWVudHMsXHJcbiAgdGFnQXNzaWdubWVudHNcclxufSBmcm9tICcuLi8uLi8uLi9jb25jaWxpYXRpb24tYXBwb2ludG1lbnQtd29yay1saXN0L2NvbnN0YW50cy9vcmdpbmFsLWNhdGVnb3J5LWxvb2t1cC10eXBlcy5jb25zdGFudHMnO1xyXG5pbXBvcnQgeyBTYXZlU2NoZWR1bGluZ0NhbGxCYWNrTW9kZWwgfSBmcm9tICcuLi8uLi9tb2RlbHMvc2F2ZS1zY2hlZHVsaW5nLWNhbGwtYmFjay5tb2RlbCc7XHJcbmltcG9ydCB7IFJlU2NoZWR1bGVDYWxsQmFja0FjdGlvbkNvbXBvbmVudCB9IGZyb20gJy4uL3JlLXNjaGVkdWxlLWNhbGwtYmFjay1hY3Rpb24vcmUtc2NoZWR1bGUtY2FsbC1iYWNrLWFjdGlvbi5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBTYXZlT3V0cmVhY2hNb2RlbCB9IGZyb20gJy4uLy4uL21vZGVscy9zYXZlLW91dHJlYWNoLW1vZGVsJztcclxuaW1wb3J0IHsgUmVBc3NpZ25EYWlsb2dib3hDb21wb25lbnQgfSBmcm9tICcuLi9yZS1hc3NpZ24tZGFpbG9nYm94L3JlLWFzc2lnbi1kYWlsb2dib3guY29tcG9uZW50JztcclxuaW1wb3J0IHsgU3VibWl0UmVhc3NpZ25Nb2RlbCB9IGZyb20gJy4uLy4uL21vZGVscy9zdWJtaXQtcmUtYXNzaWduLWZyb21tb2RlbCc7XHJcbmltcG9ydCB7IEFzc2lnbm1lbnRzU3RpbGxBY3RpdmVEaWFsb2dib3hDb21wb25lbnQgfSBmcm9tICcuLi9hc3NpZ25tZW50cy1zdGlsbC1hY3RpdmUtZGlhbG9nYm94L2Fzc2lnbm1lbnRzLXN0aWxsLWFjdGl2ZS1kaWFsb2dib3guY29tcG9uZW50JztcclxuaW1wb3J0IHsgb3BlbkFwcG9pbnRtZW50RGlhbG9nIH0gZnJvbSAnLi4vLi4vLi4vc2hhcmVkL2Z1bmN0aW9ucy9vcGVuLWFwcG9pbnRtZW50JztcclxuaW1wb3J0IHtcclxuICBjbGllbnRGb2xsb3dVcEFjdGlvbklkLFxyXG4gIGdvb2RDYXVzZUdyYW50ZWRBY3Rpb25JZCxcclxuICBnb29kQ2F1c2VOb3RHcmFudGVkQWN0aW9uSWQsXHJcbiAgcmVBc3NpZ25Db25mZXJlbmNlQ2F0ZWdvcnlBY3Rpb25JZCxcclxuICByZWNvcmRPdXRyZWFjaEFjdGlvbklkLFxyXG4gIHJlU2NoZWR1bGVDb25mZXJlbmNlQnlQaG9uZUFjdGlvbklkLFxyXG4gIHdpdGhkcmF3QWN0aW9uSWQsXHJcbiAgY2FzZVN1bW1hcnlJZFxyXG59IGZyb20gJy4uLy4uL2NvbnN0YW50cy9tZW51LWFjdGlvbi1kZWZzJztcclxuaW1wb3J0IHsgQ2xpZW50Rm9sbG93dXBEYWlsb2dib3hDb21wb25lbnQgfSBmcm9tICcuLi9jbGllbnQtZm9sbG93dXAtZGFpbG9nYm94L2NsaWVudC1mb2xsb3d1cC1kYWlsb2dib3guY29tcG9uZW50JztcclxuaW1wb3J0IHsgV2l0aGRyYXdEYWlsb2dib3hDb21wb25lbnQgfSBmcm9tICcuLi93aXRoZHJhdy1kYWlsb2dib3gvd2l0aGRyYXctZGFpbG9nYm94LmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFJlY29yZE91dHJlYWNoZGlhbG9nYm94Q29tcG9uZW50IH0gZnJvbSAnLi4vcmVjb3JkLW91dHJlYWNoZGlhbG9nYm94L3JlY29yZC1vdXRyZWFjaGRpYWxvZ2JveC5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBTdWJtaXRCYXRjaFBvb2xBcHBvaW50bWVudE1vZGVsIH0gZnJvbSAnLi4vLi4vLi4vY29uY2lsaWF0aW9uLWFwcG9pbnRtZW50LXdvcmstbGlzdC9tb2RlbHMvc3VibWl0LWJhdGNoLXBvb2wtYXBwb2ludG1lbnQubW9kZWwnO1xyXG5pbXBvcnQgeyBDb25jaWxpYXRpb25BcHBvaW50bWVudFdvcmtMaXN0U2VydmljZSB9IGZyb20gJy4uLy4uLy4uL2NvbmNpbGlhdGlvbi1hcHBvaW50bWVudC13b3JrLWxpc3Qvc2VydmljZXMvY29uY2lsaWF0aW9uLWFwcG9pbnRtZW50LXdvcmstbGlzdC5zZXJ2aWNlJztcclxuaW1wb3J0IHsgR2VuZXJhdGVGSUExMTg3QUxldHRlckRpYWxvZ2JveENvbXBvbmVudCB9IGZyb20gJy4uLy4uLy4uL3NoYXJlZC9jb21wb25lbnRzL2dlbmVyYXRlLWZpYTExODctYWxldHRlci1kaWFsb2dib3gvZ2VuZXJhdGUtZmlhMTE4Ny1hbGV0dGVyLWRpYWxvZ2JveC5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyB0ZWxlQ29uZmVyZW5jZUlkIH0gZnJvbSAnLi4vLi4vLi4vY29uY2lsaWF0aW9uLWFwcG9pbnRtZW50LXdvcmstbGlzdC9jb25zdGFudHMvd29ya2xpc3RfaWQnO1xyXG5pbXBvcnQgeyBGZWRlcmFsSG9saWRheXNNb2RlbCB9IGZyb20gJy4uLy4uLy4uL2NvbmNpbGlhdGlvbi1hcHBvaW50bWVudC13b3JrLWxpc3QvbW9kZWxzL2ZlZGVyYWwtaG9saWRheXMtbW9kZWwnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdwcnV0ZWNoLXRlbGVwaG9uZS1jb250ZXh0LW1lbnUnLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9jb250ZXh0LW1lbnUuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL2NvbnRleHQtbWVudS5jb21wb25lbnQuY3NzJ10sXHJcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBUZWxlcGhvbmVPclNldHRsZWRDb25mZXJlbmNDb250ZXh0TWVudUNvbXBvbmVudCBleHRlbmRzIEFic3RyYWN0Q29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcclxuXHJcbiAgbWVudUl0ZW1zOiBDb250ZXh0TWVudUl0ZW1bXSA9IG1lbnVJdGVtcztcclxuICBwYXJhbXM6IEFnR3JpZEFuZ3VsYXI7XHJcbiAgY29uY2lsaWF0aW9uTG9va3VwczogQ29uY2lsaWF0aW9uTG9va3VwcztcclxuICBhY3Rpb25zOiBMb29rdXBbXTtcclxuICB1c2VyOiBVc2VyO1xyXG4gIGhvbGlkYXlMaXN0OmFueTtcclxuXHJcbiAgY29uc3RydWN0b3IocHVibGljIGRpYWxvZzogTWF0RGlhbG9nLFxyXG4gICAgcHJpdmF0ZSBsb29rdXBzU2VydmljZTogTG9va3Vwc1NlcnZpY2UsXHJcbiAgICBwcml2YXRlIHRhYlNlcnZpY2U6IFRhYlNlcnZpY2UsXHJcbiAgICBwcml2YXRlIHJvdXRlcjogUm91dGVyLFxyXG4gICAgcHJpdmF0ZSB1c2VyU2VydmljZTogVXNlclNlcnZpY2UsXHJcbiAgICBwcml2YXRlIGNvbmNpbGlhdGlvbldvcmtMaXN0U2VydmljZTogQ29uY2lsaWF0aW9uQXBwb2ludG1lbnRXb3JrTGlzdFNlcnZpY2UsXHJcbiAgICBwcml2YXRlIHRlbGVwaG9uZU9yU2V0dGxlZENvbmZlcmVuY2VXb3JrTGlzdFNlcnZpY2U6IFRlbGVwaG9uZU9yU2V0dGxlZENvbmZlcmVuY2VXb3JrTGlzdFNlcnZpY2UsXHJcbiAgICBwcml2YXRlIHJvdXRlOiBBY3RpdmF0ZWRSb3V0ZSxcclxuICApIHtcclxuICAgIHN1cGVyKCk7XHJcbiAgfVxyXG5cclxuICBuZ09uSW5pdCgpOiB2b2lkIHtcclxuICAgIHRoaXMudXNlclNlcnZpY2UudXNlci5waXBlKFxyXG4gICAgICB0YWtlVW50aWwodGhpcy5jb21wb25lbnREZXN0cm95ZWQpLFxyXG4gICAgICByRmlsdGVyKCh1c2VyOiBVc2VyKSA9PiAhIXVzZXIpKVxyXG4gICAgICAuc3Vic2NyaWJlKCh1c2VyOiBVc2VyKSA9PiB7XHJcbiAgICAgICAgdGhpcy51c2VyID0gdXNlcjtcclxuICAgICAgfSk7XHJcblxyXG4gICAgdGhpcy5sb29rdXBzU2VydmljZS5sb29rdXBzLnBpcGUodGFrZVVudGlsKHRoaXMuY29tcG9uZW50RGVzdHJveWVkKSlcclxuICAgICAgLnN1YnNjcmliZSgobG9va3VwczogQ29uY2lsaWF0aW9uTG9va3VwcykgPT4ge1xyXG4gICAgICAgIHRoaXMuY29uY2lsaWF0aW9uTG9va3VwcyA9IGxvb2t1cHM7XHJcbiAgICAgIH0pO1xyXG4gICAgdGhpcy50ZWxlcGhvbmVPclNldHRsZWRDb25mZXJlbmNlV29ya0xpc3RTZXJ2aWNlLmFjdGlvbnMucGlwZSh0YWtlVW50aWwodGhpcy5jb21wb25lbnREZXN0cm95ZWQpKVxyXG4gICAgICAuc3Vic2NyaWJlKChhY3Rpb25zOiBMb29rdXBbXSkgPT4ge1xyXG4gICAgICAgIHRoaXMuYWN0aW9ucyA9IGFjdGlvbnM7XHJcbiAgICAgICAgdGhpcy5tZW51SXRlbXMgPSB0aGlzLmdldFVwZGF0ZWRNZW51SXRlbXMoKTtcclxuICAgICAgfSk7XHJcbiAgICAgIHRoaXMuY29uY2lsaWF0aW9uV29ya0xpc3RTZXJ2aWNlLmhvbGlkYXlzTGlzdC5waXBlKHRha2VVbnRpbCh0aGlzLmNvbXBvbmVudERlc3Ryb3llZCkpXHJcbiAgICAgIC5zdWJzY3JpYmUoKGRhdGE6RmVkZXJhbEhvbGlkYXlzTW9kZWxbXSkgPT4ge1xyXG4gICAgICAgdGhpcy5ob2xpZGF5TGlzdCA9IGRhdGE7XHJcbiAgICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgYWdJbml0KHBhcmFtczogQWdHcmlkQW5ndWxhcik6IHZvaWQge1xyXG4gICAgdGhpcy5wYXJhbXMgPSBwYXJhbXM7XHJcbiAgICBpZiAoZ2V0KHRoaXMucGFyYW1zLCAnZGF0YS5sYXN0QWN0aW9uSWQnKSA9PSBnb29kQ2F1c2VOb3RHcmFudGVkQWN0aW9uSWQpIHtcclxuICAgICAgdGhpcy5tZW51SXRlbXMgPSBtYXAodGhpcy5tZW51SXRlbXMsIChpdGVtOiBDb250ZXh0TWVudUl0ZW0pID0+IHtcclxuICAgICAgICByZXR1cm4ge1xyXG4gICAgICAgICAgLi4uaXRlbSxcclxuICAgICAgICAgIGl0ZW1zOiBmaWx0ZXIoaXRlbS5pdGVtcywgKGFjdGlvbkl0ZW06IENvbnRleHRNZW51QWN0aW9uSXRlbSkgPT4gYWN0aW9uSXRlbS5yb3V0ZSAhPT0gdG9TdHJpbmcoZ29vZENhdXNlR3JhbnRlZEFjdGlvbklkKSAmJiBhY3Rpb25JdGVtLnJvdXRlICE9PSB0b1N0cmluZyhnb29kQ2F1c2VOb3RHcmFudGVkQWN0aW9uSWQpKSxcclxuICAgICAgICB9O1xyXG4gICAgICB9KTtcclxuICAgIH1cclxuICAgIGlmICghZ2V0KHRoaXMucGFyYW1zLCAnZGF0YS5pc0dyYW50ZWQnKSkge1xyXG4gICAgICB0aGlzLm1lbnVJdGVtcyA9IG1hcCh0aGlzLm1lbnVJdGVtcywgKGl0ZW06IENvbnRleHRNZW51SXRlbSkgPT4ge1xyXG4gICAgICAgIHJldHVybiB7XHJcbiAgICAgICAgICAuLi5pdGVtLCBpdGVtczogZmlsdGVyKGl0ZW0uaXRlbXMsIChhY3Rpb25JdGVtOiBDb250ZXh0TWVudUFjdGlvbkl0ZW0pID0+IGFjdGlvbkl0ZW0ucm91dGUgIT09IHRvU3RyaW5nKGdvb2RDYXVzZUdyYW50ZWRBY3Rpb25JZCkmJiBhY3Rpb25JdGVtLnJvdXRlICE9PSB0b1N0cmluZyhnb29kQ2F1c2VOb3RHcmFudGVkQWN0aW9uSWQpKSxcclxuICAgICAgICB9O1xyXG4gICAgICB9KTtcclxuICAgIH1cclxuICAgIGlmICghZ2V0KHRoaXMucGFyYW1zLCAnZGF0YS5pc1NjaGVkdWxlJykgKSB7XHJcbiAgICAgIHRoaXMubWVudUl0ZW1zID0gbWFwKHRoaXMubWVudUl0ZW1zLCAoaXRlbTogQ29udGV4dE1lbnVJdGVtKSA9PiB7XHJcbiAgICAgICAgcmV0dXJuIHtcclxuICAgICAgICAgIC4uLml0ZW0sIGl0ZW1zOiBmaWx0ZXIoaXRlbS5pdGVtcywgKGFjdGlvbkl0ZW06IENvbnRleHRNZW51QWN0aW9uSXRlbSkgPT4gYWN0aW9uSXRlbS5yb3V0ZSAhPT0gdG9TdHJpbmcoY2xpZW50Rm9sbG93VXBBY3Rpb25JZCkmJiBhY3Rpb25JdGVtLnJvdXRlICE9PSB0b1N0cmluZyh3aXRoZHJhd0FjdGlvbklkKSksXHJcbiAgICAgICAgfTtcclxuICAgICAgfSk7XHJcbiAgICB9XHJcbiAgICBpZiAoIWdldCh0aGlzLnBhcmFtcywgJ2RhdGEuaXNSZVNjaGVkdWxlJykgKSB7XHJcbiAgICAgIHRoaXMubWVudUl0ZW1zID0gbWFwKHRoaXMubWVudUl0ZW1zLCAoaXRlbTogQ29udGV4dE1lbnVJdGVtKSA9PiB7XHJcbiAgICAgICAgcmV0dXJuIHtcclxuICAgICAgICAgIC4uLml0ZW0sIGl0ZW1zOiBmaWx0ZXIoaXRlbS5pdGVtcywgKGFjdGlvbkl0ZW06IENvbnRleHRNZW51QWN0aW9uSXRlbSkgPT4gYWN0aW9uSXRlbS5yb3V0ZSAhPT0gdG9TdHJpbmcocmVTY2hlZHVsZUNvbmZlcmVuY2VCeVBob25lQWN0aW9uSWQpKSxcclxuICAgICAgICB9O1xyXG4gICAgICB9KTtcclxuICAgIH1cclxuICAgIGlmICghZ2V0KHRoaXMucGFyYW1zLCAnZGF0YS5pc091dHJlYWNoJykpIHtcclxuICAgICAgdGhpcy5tZW51SXRlbXMgPSBtYXAodGhpcy5tZW51SXRlbXMsIChpdGVtOiBDb250ZXh0TWVudUl0ZW0pID0+IHtcclxuICAgICAgICByZXR1cm4ge1xyXG4gICAgICAgICAgLi4uaXRlbSwgaXRlbXM6IGZpbHRlcihpdGVtLml0ZW1zLCAoYWN0aW9uSXRlbTogQ29udGV4dE1lbnVBY3Rpb25JdGVtKSA9PiBhY3Rpb25JdGVtLnJvdXRlICE9PSB0b1N0cmluZyhyZWNvcmRPdXRyZWFjaEFjdGlvbklkKSksXHJcbiAgICAgICAgfTtcclxuICAgICAgfSk7XHJcbiAgICB9XHJcbiAgICBpZiAoIWdldCh0aGlzLnBhcmFtcywgJ2RhdGEuaXNSZUFzc2lnbicpKSB7XHJcbiAgICAgIHRoaXMubWVudUl0ZW1zID0gbWFwKHRoaXMubWVudUl0ZW1zLCAoaXRlbTogQ29udGV4dE1lbnVJdGVtKSA9PiB7XHJcbiAgICAgICAgcmV0dXJuIHtcclxuICAgICAgICAgIC4uLml0ZW0sIGl0ZW1zOiBmaWx0ZXIoaXRlbS5pdGVtcywgKGFjdGlvbkl0ZW06IENvbnRleHRNZW51QWN0aW9uSXRlbSkgPT4gYWN0aW9uSXRlbS5yb3V0ZSAhPT0gdG9TdHJpbmcocmVBc3NpZ25Db25mZXJlbmNlQ2F0ZWdvcnlBY3Rpb25JZCkpLFxyXG4gICAgICAgIH07XHJcbiAgICAgIH0pO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgZ2V0VXBkYXRlZE1lbnVJdGVtcygpOiBDb250ZXh0TWVudUl0ZW1bXSB7XHJcbiAgICByZXR1cm4gbWFwKHRoaXMubWVudUl0ZW1zLCAoaXRlbTogQ29udGV4dE1lbnVJdGVtKSA9PiB7XHJcbiAgICAgIGlmIChpdGVtLmxhYmVsID09PSBhY3Rpb25zTGFiZWwpIHtcclxuICAgICAgICByZXR1cm4ge1xyXG4gICAgICAgICAgbGFiZWw6IGFjdGlvbnNMYWJlbCxcclxuICAgICAgICAgIGl0ZW1zOiBmaWx0ZXIoaXRlbS5pdGVtcywgKGFjdGlvbkl0ZW06IENvbnRleHRNZW51QWN0aW9uSXRlbSkgPT5cclxuICAgICAgICAgICAgISFmaW5kKHRoaXMuYWN0aW9ucywgKGFjdGlvbkxvb2t1cDogTG9va3VwKSA9PiB0b1N0cmluZyhhY3Rpb25Mb29rdXAubG9va3VwSWQpID09PSBhY3Rpb25JdGVtLnJvdXRlKSB8fCBhY3Rpb25JdGVtLnJvdXRlID09PSB0b1N0cmluZyhjYXNlU3VtbWFyeUlkKSksXHJcbiAgICAgICAgfTtcclxuICAgICAgfSBlbHNlIHtcclxuICAgICAgICByZXR1cm4gaXRlbTtcclxuICAgICAgfVxyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICBkb0FjdGlvbihldmVudDogQ29udGV4dE1lbnVBY3Rpb25JdGVtKTogdm9pZCB7XHJcbiAgICBzd2l0Y2ggKGV2ZW50LnJvdXRlKSB7XHJcbiAgICAgIGNhc2UgdG9TdHJpbmcoZ29vZENhdXNlR3JhbnRlZEFjdGlvbklkKTpcclxuICAgICAgICB0aGlzLm9wZW5Hb29kQ2F1c2VHcmFudGVkRGlhbG9nKGdldCh0aGlzLnBhcmFtcywgJ2RhdGEnKSk7XHJcbiAgICAgICAgYnJlYWs7XHJcbiAgICAgIC8vIHN1cHBvc2UgZ29vZCBjYXVzZSBncmFudGVkIGxvb2t1cElkIGlzIDJcclxuICAgICAgY2FzZSB0b1N0cmluZyhnb29kQ2F1c2VOb3RHcmFudGVkQWN0aW9uSWQpOlxyXG4gICAgICAgIHRoaXMub3Blbkdvb2RDYXVzZU5vdEdyYW50ZWREaWFsb2coZ2V0KHRoaXMucGFyYW1zLCAnZGF0YScpKTtcclxuICAgICAgICBicmVhaztcclxuICAgICAgY2FzZSB0b1N0cmluZyhyZVNjaGVkdWxlQ29uZmVyZW5jZUJ5UGhvbmVBY3Rpb25JZCk6XHJcbiAgICAgICAgdGhpcy5vcGVuUmVTY2hlZHVsZUNhbGxCYWNrRGlhbG9nKGdldCh0aGlzLnBhcmFtcywgJ2RhdGEnKSk7XHJcbiAgICAgICAgYnJlYWs7XHJcbiAgICAgIGNhc2UgdG9TdHJpbmcocmVjb3JkT3V0cmVhY2hBY3Rpb25JZCk6XHJcbiAgICAgICAgdGhpcy5vcGVuT3V0cmVhY2hEaWFsb2coZ2V0KHRoaXMucGFyYW1zLCAnZGF0YScpKTtcclxuICAgICAgICBicmVhaztcclxuICAgICAgY2FzZSB0b1N0cmluZyhyZUFzc2lnbkNvbmZlcmVuY2VDYXRlZ29yeUFjdGlvbklkKTpcclxuICAgICAgICB0aGlzLm9wZW5SZUFzc2lnbkRpYWxvZyhnZXQodGhpcy5wYXJhbXMsICdkYXRhJykpO1xyXG4gICAgICAgIGJyZWFrO1xyXG4gICAgICBjYXNlIHRvU3RyaW5nKGNsaWVudEZvbGxvd1VwQWN0aW9uSWQpOlxyXG4gICAgICAgIHRoaXMub3BlbkNsaWVudEZvbGxvd3VwRGFpbG9nKGdldCh0aGlzLnBhcmFtcywgJ2RhdGEnKSk7XHJcbiAgICAgICAgYnJlYWs7XHJcbiAgICAgIGNhc2UgdG9TdHJpbmcod2l0aGRyYXdBY3Rpb25JZCk6XHJcbiAgICAgICAgdGhpcy5vcGVud2l0aGRyYXdEYWlsb2coZ2V0KHRoaXMucGFyYW1zLCAnZGF0YScpKTtcclxuICAgICAgICBicmVhaztcclxuICAgICAgY2FzZSB0b1N0cmluZyhjYXNlU3VtbWFyeUlkKTpcclxuICAgICAgICB0aGlzLm9wZW5DYXNlc3VtbWFyeShnZXQodGhpcy5wYXJhbXMsICdkYXRhJykpO1xyXG4gICAgICAgIGJyZWFrO1xyXG5cclxuICAgICAgZGVmYXVsdDpcclxuICAgICAgICBicmVhaztcclxuICAgIH1cclxuICB9XHJcbiAgb3BlbkNhc2VzdW1tYXJ5KGl0ZW06IFRlbGVwaG9uZU9yU2V0dGxlZENvbmZlcmVuY2VXb3JrTGlzdEl0ZW1Nb2RlbCkge1xyXG4gICAgdGhpcy5yb3V0ZXIubmF2aWdhdGVCeVVybCgnL2Nhc2Utc3VtbWFyeS8nICsgaXRlbT8uY21zQ2FzZUlkKTtcclxuICB9XHJcbiAgb3BlbndpdGhkcmF3RGFpbG9nKGl0ZW06IFRlbGVwaG9uZU9yU2V0dGxlZENvbmZlcmVuY2VXb3JrTGlzdEl0ZW1Nb2RlbCkge1xyXG4gICAgY29uc3QgZGlhbG9nUmVmOiBNYXREaWFsb2dSZWY8V2l0aGRyYXdEYWlsb2dib3hDb21wb25lbnQ+ID0gdGhpcy5kaWFsb2cub3BlbihXaXRoZHJhd0RhaWxvZ2JveENvbXBvbmVudCwge1xyXG4gICAgICB3aWR0aDogZGlhbG9nU2l6ZSxcclxuICAgICAgZGlzYWJsZUNsb3NlOiB0cnVlLFxyXG4gICAgICBkYXRhOiB7XHJcbiAgICAgICAgY29uY2lsaWF0aW9uTG9va3VwczogdGhpcy5jb25jaWxpYXRpb25Mb29rdXBzLFxyXG4gICAgICB9LFxyXG4gICAgfSk7XHJcblxyXG4gICAgLy8gdHNsaW50OmRpc2FibGUtbmV4dC1saW5lOm5vLWFueVxyXG4gICAgZGlhbG9nUmVmLmFmdGVyQ2xvc2VkKCkucGlwZSh0YWtlVW50aWwodGhpcy5jb21wb25lbnREZXN0cm95ZWQpKS5zdWJzY3JpYmUoKHJlczogYW55KSA9PiB7XHJcbiAgICAgIGlmICghIXJlcykge1xyXG4gICAgICAgIGNvbnN0IHBheWxvYWQ6IFN1Ym1pdFJlYXNzaWduTW9kZWwgPSBuZXcgU3VibWl0UmVhc3NpZ25Nb2RlbCh7XHJcbiAgICAgICAgICAuLi5yZXMsXHJcbiAgICAgICAgICB3bFRlbGVwaG9uZVNldHRsZWRJZDogZ2V0KGl0ZW0sICd3bFRlbGVwaG9uZVNldHRsZWRJZCcpLFxyXG4gICAgICAgICAgYWN0aW9uSWQ6IHdpdGhkcmF3QWN0aW9uSWQsXHJcblxyXG4gICAgICAgIH0pO1xyXG4gICAgICAgIHRoaXMudGVsZXBob25lT3JTZXR0bGVkQ29uZmVyZW5jZVdvcmtMaXN0U2VydmljZS5kaXNwYXRjaFNhdmVSZWFzc2lnbihwYXlsb2FkKTtcclxuXHJcbiAgICAgIH1cclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgb3BlbkNsaWVudEZvbGxvd3VwRGFpbG9nKGl0ZW06IFRlbGVwaG9uZU9yU2V0dGxlZENvbmZlcmVuY2VXb3JrTGlzdEl0ZW1Nb2RlbCkge1xyXG4gICAgY29uc3QgZGlhbG9nUmVmOiBNYXREaWFsb2dSZWY8Q2xpZW50Rm9sbG93dXBEYWlsb2dib3hDb21wb25lbnQ+ID0gdGhpcy5kaWFsb2cub3BlbihDbGllbnRGb2xsb3d1cERhaWxvZ2JveENvbXBvbmVudCwge1xyXG4gICAgICB3aWR0aDogZGlhbG9nU2l6ZSxcclxuICAgICAgZGlzYWJsZUNsb3NlOiB0cnVlLFxyXG4gICAgICBkYXRhOiB7XHJcbiAgICAgICAgY29uY2lsaWF0aW9uTG9va3VwczogdGhpcy5jb25jaWxpYXRpb25Mb29rdXBzLFxyXG4gICAgICB9LFxyXG4gICAgfSk7XHJcblxyXG4gICAgLy8gdHNsaW50OmRpc2FibGUtbmV4dC1saW5lOm5vLWFueVxyXG4gICAgZGlhbG9nUmVmLmFmdGVyQ2xvc2VkKCkucGlwZSh0YWtlVW50aWwodGhpcy5jb21wb25lbnREZXN0cm95ZWQpKS5zdWJzY3JpYmUoKHJlczogYW55KSA9PiB7XHJcbiAgICAgIGlmICghIXJlcykge1xyXG4gICAgICAgIGNvbnN0IHBheWxvYWQ6IFN1Ym1pdFJlYXNzaWduTW9kZWwgPSBuZXcgU3VibWl0UmVhc3NpZ25Nb2RlbCh7XHJcbiAgICAgICAgICAuLi5yZXMsXHJcbiAgICAgICAgICB3bFRlbGVwaG9uZVNldHRsZWRJZDogZ2V0KGl0ZW0sICd3bFRlbGVwaG9uZVNldHRsZWRJZCcpLFxyXG4gICAgICAgICAgYWN0aW9uSWQ6IGNsaWVudEZvbGxvd1VwQWN0aW9uSWQsXHJcblxyXG4gICAgICAgIH0pO1xyXG4gICAgICAgIHRoaXMudGVsZXBob25lT3JTZXR0bGVkQ29uZmVyZW5jZVdvcmtMaXN0U2VydmljZS5kaXNwYXRjaFNhdmVSZWFzc2lnbihwYXlsb2FkKTtcclxuXHJcbiAgICAgIH1cclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgb3BlbkFzc2lnbWVudFN0aWxsQWN0aXZlRGlhbG9nKGl0ZW06IFRlbGVwaG9uZU9yU2V0dGxlZENvbmZlcmVuY2VXb3JrTGlzdEl0ZW1Nb2RlbCkge1xyXG4gICAgY29uc3QgZGlhbG9nUmVmOiBNYXREaWFsb2dSZWY8QXNzaWdubWVudHNTdGlsbEFjdGl2ZURpYWxvZ2JveENvbXBvbmVudD4gPSB0aGlzLmRpYWxvZy5vcGVuKEFzc2lnbm1lbnRzU3RpbGxBY3RpdmVEaWFsb2dib3hDb21wb25lbnQsIHtcclxuICAgICAgd2lkdGg6IGRpYWxvZ1NpemUsXHJcbiAgICAgIGRpc2FibGVDbG9zZTogdHJ1ZSxcclxuICAgICAgZGF0YToge1xyXG4gICAgICAgIGNvbmNpbGlhdGlvbkxvb2t1cHM6IHRoaXMuY29uY2lsaWF0aW9uTG9va3VwcyxcclxuICAgICAgfSxcclxuICAgIH0pO1xyXG5cclxuICAgIC8vIHRzbGludDpkaXNhYmxlLW5leHQtbGluZTpuby1hbnlcclxuICAgIGRpYWxvZ1JlZi5hZnRlckNsb3NlZCgpLnBpcGUodGFrZVVudGlsKHRoaXMuY29tcG9uZW50RGVzdHJveWVkKSkuc3Vic2NyaWJlKChyZXMpID0+IHtcclxuICAgICAgaWYgKHJlcz8uYXNzaWdubWVudHNTdGlsbEFjdGl2ZSkge1xyXG4gICAgICAgIC8vcmVzdGFydCB0aW1la2VlcGluZ1xyXG5cclxuICAgICAgfSBlbHNlIHtcclxuICAgICAgICByZXR1cm4gb3BlbkFwcG9pbnRtZW50RGlhbG9nKHRoaXMuZGlhbG9nLCBpdGVtPy5hcHBvaW50bWVudElkKTtcclxuICAgICAgfVxyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICBvcGVuUmVBc3NpZ25EaWFsb2coaXRlbTogVGVsZXBob25lT3JTZXR0bGVkQ29uZmVyZW5jZVdvcmtMaXN0SXRlbU1vZGVsKSB7XHJcbiAgICBjb25zdCBkaWFsb2dSZWY6IE1hdERpYWxvZ1JlZjxSZUFzc2lnbkRhaWxvZ2JveENvbXBvbmVudD4gPSB0aGlzLmRpYWxvZy5vcGVuKFJlQXNzaWduRGFpbG9nYm94Q29tcG9uZW50LCB7XHJcbiAgICAgIHdpZHRoOiBkaWFsb2dTaXplLFxyXG4gICAgICBkaXNhYmxlQ2xvc2U6IHRydWUsXHJcbiAgICAgIGRhdGE6IHtcclxuICAgICAgICBjb25jaWxpYXRpb25Mb29rdXBzOiB0aGlzLmNvbmNpbGlhdGlvbkxvb2t1cHMsXHJcbiAgICAgIH0sXHJcbiAgICB9KTtcclxuXHJcbiAgICAvLyB0c2xpbnQ6ZGlzYWJsZS1uZXh0LWxpbmU6bm8tYW55XHJcbiAgICBkaWFsb2dSZWYuYWZ0ZXJDbG9zZWQoKS5waXBlKHRha2VVbnRpbCh0aGlzLmNvbXBvbmVudERlc3Ryb3llZCkpLnN1YnNjcmliZSgocmVzOiBhbnkpID0+IHtcclxuICAgICAgaWYgKCEhcmVzKSB7XHJcbiAgICAgICAgY29uc3QgcGF5bG9hZDogU3VibWl0UmVhc3NpZ25Nb2RlbCA9IG5ldyBTdWJtaXRSZWFzc2lnbk1vZGVsKHtcclxuICAgICAgICAgIC4uLnJlcyxcclxuICAgICAgICAgIHdsVGVsZXBob25lU2V0dGxlZElkOiBnZXQoaXRlbSwgJ3dsVGVsZXBob25lU2V0dGxlZElkJyksXHJcbiAgICAgICAgICBhY3Rpb25JZDogcmVBc3NpZ25Db25mZXJlbmNlQ2F0ZWdvcnlBY3Rpb25JZCxcclxuXHJcbiAgICAgICAgfSk7XHJcbiAgICAgICAgdGhpcy50ZWxlcGhvbmVPclNldHRsZWRDb25mZXJlbmNlV29ya0xpc3RTZXJ2aWNlLmRpc3BhdGNoU2F2ZVJlYXNzaWduKHBheWxvYWQpO1xyXG5cclxuICAgICAgfVxyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICBvcGVuUmVTY2hlZHVsZUNhbGxCYWNrRGlhbG9nKGl0ZW06IFRlbGVwaG9uZU9yU2V0dGxlZENvbmZlcmVuY2VXb3JrTGlzdEl0ZW1Nb2RlbCkge1xyXG4gICAgY29uc3QgZGlhbG9nUmVmOiBNYXREaWFsb2dSZWY8UmVTY2hlZHVsZUNhbGxCYWNrQWN0aW9uQ29tcG9uZW50PiA9IHRoaXMuZGlhbG9nPy5vcGVuKFJlU2NoZWR1bGVDYWxsQmFja0FjdGlvbkNvbXBvbmVudCwge1xyXG4gICAgICB3aWR0aDogZGlhbG9nU2l6ZSxcclxuICAgICAgZGlzYWJsZUNsb3NlOiB0cnVlLFxyXG4gICAgICBkYXRhOiB7XHJcbiAgICAgICAgY29uY2lsaWF0aW9uTG9va3VwczogdGhpcy5jb25jaWxpYXRpb25Mb29rdXBzLFxyXG4gICAgICAgIHZhbDp0aGlzLmhvbGlkYXlMaXN0XHJcbiAgICAgIH0sXHJcbiAgICB9KTtcclxuXHJcbiAgICAvLyB0c2xpbnQ6ZGlzYWJsZS1uZXh0LWxpbmU6bm8tYW55XHJcbiAgICBkaWFsb2dSZWYuYWZ0ZXJDbG9zZWQoKS5waXBlKHRha2VVbnRpbCh0aGlzLmNvbXBvbmVudERlc3Ryb3llZCkpLnN1YnNjcmliZSgocmVzOiBhbnkpID0+IHtcclxuICAgICAgaWYgKCEhcmVzKSB7XHJcbiAgICAgICAgY29uc3QgcGF5bG9hZDogU2F2ZVNjaGVkdWxpbmdDYWxsQmFja01vZGVsID0gbmV3IFNhdmVTY2hlZHVsaW5nQ2FsbEJhY2tNb2RlbCh7XHJcbiAgICAgICAgICAuLi5yZXMsXHJcbiAgICAgICAgICB3bFRlbGVwaG9uZVNldHRsZWRJZDogZ2V0KGl0ZW0sICd3bFRlbGVwaG9uZVNldHRsZWRJZCcpLFxyXG4gICAgICAgICAgYWN0aW9uSWQ6IHJlU2NoZWR1bGVDb25mZXJlbmNlQnlQaG9uZUFjdGlvbklkLFxyXG5cclxuICAgICAgICB9KTtcclxuXHJcbiAgICAgICAgdGhpcy50ZWxlcGhvbmVPclNldHRsZWRDb25mZXJlbmNlV29ya0xpc3RTZXJ2aWNlLmRpc3BhdGNoU2F2ZVNjaGVkdWxpbmdDYWxsQmFja0RldGFpbERldGFpbHMocGF5bG9hZClcclxuICAgICAgfVxyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICBvcGVuT3V0cmVhY2hEaWFsb2coaXRlbTogVGVsZXBob25lT3JTZXR0bGVkQ29uZmVyZW5jZVdvcmtMaXN0SXRlbU1vZGVsKSB7XHJcbiAgICBjb25zdCBkaWFsb2dSZWY6IE1hdERpYWxvZ1JlZjxSZWNvcmRPdXRyZWFjaGRpYWxvZ2JveENvbXBvbmVudD4gPSB0aGlzLmRpYWxvZz8ub3BlbihSZWNvcmRPdXRyZWFjaGRpYWxvZ2JveENvbXBvbmVudCwge1xyXG4gICAgICB3aWR0aDogcmVjb3JkT3V0cmVhY2hkaWFsb2dTaXplLFxyXG4gICAgICBkaXNhYmxlQ2xvc2U6IHRydWUsXHJcbiAgICAgIGRhdGE6IGl0ZW1cclxuICAgIH0pO1xyXG5cclxuICAgIC8vIHRzbGludDpkaXNhYmxlLW5leHQtbGluZTpuby1hbnlcclxuICAgIGRpYWxvZ1JlZi5hZnRlckNsb3NlZCgpLnBpcGUodGFrZVVudGlsKHRoaXMuY29tcG9uZW50RGVzdHJveWVkKSkuc3Vic2NyaWJlKChyZXM6IGFueSkgPT4ge1xyXG4gICAgICBpZiAoISFyZXMpIHtcclxuICAgICAgICBjb25zdCBwYXlsb2FkOiBTYXZlT3V0cmVhY2hNb2RlbCA9IG5ldyBTYXZlT3V0cmVhY2hNb2RlbCh7XHJcbiAgICAgICAgICAuLi5yZXMsXHJcbiAgICAgICAgICB3bFRlbGVwaG9uZVNldHRsZWRJZDogZ2V0KGl0ZW0sICd3bFRlbGVwaG9uZVNldHRsZWRJZCcpLFxyXG4gICAgICAgICAgYWN0aW9uSWQ6IHJlY29yZE91dHJlYWNoQWN0aW9uSWQsXHJcbiAgICAgICAgfSk7XHJcbiAgICAgICAgdGhpcy50ZWxlcGhvbmVPclNldHRsZWRDb25mZXJlbmNlV29ya0xpc3RTZXJ2aWNlLmRpc3BhdGNoU2F2ZU91dHJlYWNoV29ya2xpc3REZXRhaWxEZXRhaWxzKHBheWxvYWQpXHJcbiAgICAgIH1cclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgb3Blbkdvb2RDYXVzZUdyYW50ZWREaWFsb2coaXRlbTogVGVsZXBob25lT3JTZXR0bGVkQ29uZmVyZW5jZVdvcmtMaXN0SXRlbU1vZGVsKTogdm9pZCB7XHJcbiAgICBpZiAoaXRlbSA/Lm9yaWdpbmFsQ2F0ZWdvcnlJZCA9PT0gY3NBcHBvaW50bWVudHMgfHwgaXRlbSA/Lm9yaWdpbmFsQ2F0ZWdvcnlJZCA9PT0gY3NBc3NpZ25tZW50cyB8fFxyXG4gICAgICBpdGVtID8ub3JpZ2luYWxDYXRlZ29yeUlkID09PSB0YWdBcHBvaW50bWVudHMgfHwgaXRlbSA/Lm9yaWdpbmFsQ2F0ZWdvcnlJZCA9PT0gdGFnQXNzaWdubWVudHMgKSB7XHJcbiAgICBjb25zdCBkaWFsb2dSZWY6IE1hdERpYWxvZ1JlZjxHb29kQ2F1c2VHcmFudGVkQWN0aW9uQ29tcG9uZW50PiA9IHRoaXMuZGlhbG9nLm9wZW4oR29vZENhdXNlR3JhbnRlZEFjdGlvbkNvbXBvbmVudCwge1xyXG4gICAgICB3aWR0aDogZGlhbG9nU2l6ZSxcclxuICAgICAgZGlzYWJsZUNsb3NlOiB0cnVlLFxyXG4gICAgICBkYXRhOiB7XHJcbiAgICAgICAgY29uY2lsaWF0aW9uTG9va3VwczogdGhpcy5jb25jaWxpYXRpb25Mb29rdXBzLFxyXG4gICAgICAgIHNob3dJblBlcnNvbjogZmFsc2UsXHJcbiAgICAgIH0sXHJcbiAgICB9KTtcclxuICAgIGRpYWxvZ1JlZi5hZnRlckNsb3NlZCgpLnBpcGUodGFrZVVudGlsKHRoaXMuY29tcG9uZW50RGVzdHJveWVkKSkuc3Vic2NyaWJlKChyZXM6IGFueSkgPT4ge1xyXG4gICAgICBpZiAocmVzKSB7XHJcblxyXG4gICAgICAgIGNvbnN0IGRpYWxvZ1JlZiA9IHRoaXMuZGlhbG9nLm9wZW4oR2VuZXJhdGVGSUExMTg3QUxldHRlckRpYWxvZ2JveENvbXBvbmVudCwge1xyXG4gICAgICAgICAgd2lkdGg6ICc1NXZ3JyxcclxuICAgICAgICAgIGRpc2FibGVDbG9zZTogdHJ1ZSxcclxuICAgICAgICAgIGRhdGE6IHtcclxuICAgICAgICAgICAgLy8gYXNzZXNzbWVudElkOiB0aGlzLmFzc2Vzc21lbnRJZCB8fCBnZXQodGhpcy5kYXRhLCAnZWFlcEFzc2Vzc21lbnRJZCcpLFxyXG4gICAgICAgICAgICAvLyBjYXNlSWQ6IHRoaXMuY2FzZUlkLFxyXG4gICAgICAgICAgfSxcclxuICAgICAgICB9KTtcclxuICAgICAgICBkaWFsb2dSZWYuYWZ0ZXJDbG9zZWQoKVxyXG4gICAgICAgICAgLnBpcGUodGFrZVVudGlsKHRoaXMuY29tcG9uZW50RGVzdHJveWVkKSlcclxuICAgICAgICAgIC5zdWJzY3JpYmUoKGxldHRlclR5cGVJZDogbnVtYmVyKSA9PiB7XHJcbiAgICAgICAgICAgIC8vIGlmIChsZXR0ZXJUeXBlSWQgPT09IDEpIHtcclxuICAgICAgICAgICAgLy8gICB0aGlzLmNvbmNpbGlhdGlvbldvcmtMaXN0U2VydmljZS5kaXNwYXRjaFByaW50RG9jdW1lbnQoeyBsZXR0ZXJUeXBlOiBsZXR0ZXJUeXBlSWQsIGFzc2Vzc21lbnRJZDogZ2V0KGl0ZW0sICdlYWVwQXNzZXNzbWVudElkJyksIENtc0Nhc2VJRDogZ2V0KGl0ZW0sICdjbXNDYXNlSWQnKSwgd29ya2xpc3RUeXBlOiB0ZWxlQ29uZmVyZW5jZUlkICxpbmZyYWN0aW9uRGF0ZTogZ2V0KGl0ZW0sICdpbmZyYWN0aW9uRGF0ZScpfSk7XHJcbiAgICAgICAgICAgIC8vIH0gZWxzZSBpZiAobGV0dGVyVHlwZUlkID09PSAyKSB7XHJcbiAgICAgICAgICAgIC8vICAgdGhpcy5jb25jaWxpYXRpb25Xb3JrTGlzdFNlcnZpY2UuZGlzcGF0Y2hQcmludERvY3VtZW50KHsgbGV0dGVyVHlwZTogbGV0dGVyVHlwZUlkLCBhc3Nlc3NtZW50SWQ6IGdldChpdGVtLCAnZWFlcEFzc2Vzc21lbnRJZCcpLCBDbXNDYXNlSUQ6IGdldChpdGVtLCAnY21zQ2FzZUlkJyksIHdvcmtsaXN0VHlwZTogdGVsZUNvbmZlcmVuY2VJZCxpbmZyYWN0aW9uRGF0ZTogZ2V0KGl0ZW0sICdpbmZyYWN0aW9uRGF0ZScpfSk7XHJcbiAgICAgICAgICAgIC8vIH1cclxuICAgICAgICAgICAgY29uc3QgcGF5bG9hZDogU2F2ZVRlbGVwaG9uZU9yU2V0dGxlZENvbmZlcmVuY2VTdGF0dXNQYXlsb2FkID0gbmV3IFNhdmVUZWxlcGhvbmVPclNldHRsZWRDb25mZXJlbmNlU3RhdHVzUGF5bG9hZCh7XHJcbiAgICAgICAgICAgICAgLi4ucmVzLFxyXG4gICAgICAgICAgICAgIHdsVGVsZXBob25lU2V0dGxlZElkOiBpdGVtLndsVGVsZXBob25lU2V0dGxlZElkLFxyXG4gICAgICAgICAgICAgIGFjdGlvbklkOiAxLFxyXG4gICAgICAgICAgICAgIGNhc2VJZDogaXRlbSA/LmNtc0Nhc2VJZCxcclxuICAgICAgICAgICAgICBvcmlnaW5hbENhdGVnb3J5SWQ6IGl0ZW0gPy5vcmlnaW5hbENhdGVnb3J5SWQsXHJcbiAgICAgICAgICAgICAgYXNzZXNzbWVudElkOiBnZXQoaXRlbSwgJ2VhZXBBc3Nlc3NtZW50SWQnKSxcclxuICAgICAgICAgICAgICBsZXR0ZXJUeXBlOiBsZXR0ZXJUeXBlSWQsXHJcbiAgICAgICAgICAgICAgaW5mcmFjdGlvbkRhdGUgOiBnZXQoaXRlbSwgJ2luZnJhY3Rpb25EYXRlJyksXHJcbiAgICAgICAgICAgIH0pO1xyXG4gICAgICAgICAgICB0aGlzLnRlbGVwaG9uZU9yU2V0dGxlZENvbmZlcmVuY2VXb3JrTGlzdFNlcnZpY2UuZGlzcGF0Y2hTYXZlU3RhdHVzKHBheWxvYWQpO1xyXG4gICAgICAgICAgfSlcclxuICAgICAgICB9XHJcbiAgICB9KTtcclxuICB9IGVsc2V7XHJcbiAgICBjb25zdCBkaWFsb2dSZWY6IE1hdERpYWxvZ1JlZjxHb29kQ2F1c2VHcmFudGVkQWN0aW9uQ29tcG9uZW50PiA9IHRoaXMuZGlhbG9nLm9wZW4oR29vZENhdXNlR3JhbnRlZEFjdGlvbkNvbXBvbmVudCwge1xyXG4gICAgICB3aWR0aDogZGlhbG9nU2l6ZSxcclxuICAgICAgZGlzYWJsZUNsb3NlOiB0cnVlLFxyXG4gICAgICBkYXRhOiB7XHJcbiAgICAgICAgY29uY2lsaWF0aW9uTG9va3VwczogdGhpcy5jb25jaWxpYXRpb25Mb29rdXBzLFxyXG4gICAgICAgIHNob3dJblBlcnNvbjogZmFsc2UsXHJcbiAgICAgIH0sXHJcbiAgICB9KTtcclxuICAgIGRpYWxvZ1JlZi5hZnRlckNsb3NlZCgpLnBpcGUodGFrZVVudGlsKHRoaXMuY29tcG9uZW50RGVzdHJveWVkKSkuc3Vic2NyaWJlKChyZXM6IGFueSkgPT4ge1xyXG4gICAgICBpZiAocmVzKSB7XHJcbiAgICAgICAgY29uc3QgZGlhbG9nUmVmID0gdGhpcy5kaWFsb2cub3BlbihHZW5lcmF0ZUZJQTExODdBTGV0dGVyRGlhbG9nYm94Q29tcG9uZW50LCB7XHJcbiAgICAgICAgICB3aWR0aDogJzU1dncnLFxyXG4gICAgICAgICAgZGlzYWJsZUNsb3NlOiB0cnVlLFxyXG4gICAgICAgICAgZGF0YToge1xyXG4gICAgICAgICAgICAvLyBhc3Nlc3NtZW50SWQ6IHRoaXMuYXNzZXNzbWVudElkIHx8IGdldCh0aGlzLmRhdGEsICdlYWVwQXNzZXNzbWVudElkJyksXHJcbiAgICAgICAgICAgIC8vIGNhc2VJZDogdGhpcy5jYXNlSWQsXHJcbiAgICAgICAgICB9LFxyXG4gICAgICAgIH0pO1xyXG4gICAgICAgIGRpYWxvZ1JlZi5hZnRlckNsb3NlZCgpXHJcbiAgICAgICAgLnBpcGUodGFrZVVudGlsKHRoaXMuY29tcG9uZW50RGVzdHJveWVkKSlcclxuICAgICAgICAuc3Vic2NyaWJlKChsZXR0ZXJUeXBlSWQ6IG51bWJlcikgPT4ge1xyXG4gICAgICAgIGlmIChnZXQoaXRlbSwgJ29yaWdpbmFsQ2F0ZWdvcnlJZCcpID09PSBqY0FwcG9pbnRtZW50cyB8fFxyXG4gICAgICAgICAgZ2V0KGl0ZW0sICdvcmlnaW5hbENhdGVnb3J5SWQnKSA9PT0gc3BsUmVmQXBwb2ludG1lbnRzIHx8XHJcbiAgICAgICAgICBnZXQoaXRlbSwgJ29yaWdpbmFsQ2F0ZWdvcnlJZCcpID09PSBudWxsKSB7XHJcbiAgICAgICAgICBjb25zdCBwYXlsb2FkOiBTYXZlVGVsZXBob25lT3JTZXR0bGVkQ29uZmVyZW5jZVN0YXR1c1BheWxvYWQgPSBuZXcgU2F2ZVRlbGVwaG9uZU9yU2V0dGxlZENvbmZlcmVuY2VTdGF0dXNQYXlsb2FkKHtcclxuICAgICAgICAgICAgLi4ucmVzLFxyXG4gICAgICAgICAgICB3bFRlbGVwaG9uZVNldHRsZWRJZDogaXRlbS53bFRlbGVwaG9uZVNldHRsZWRJZCxcclxuICAgICAgICAgICAgYWN0aW9uSWQ6IGdvb2RDYXVzZUdyYW50ZWRBY3Rpb25JZCxcclxuICAgICAgICAgICAgY2FzZUlkOiBpdGVtID8uY21zQ2FzZUlkLFxyXG4gICAgICAgICAgICBvcmlnaW5hbENhdGVnb3J5SWQ6IGl0ZW0gPy5vcmlnaW5hbENhdGVnb3J5SWQsXHJcbiAgICAgICAgICAgIGFzc2Vzc21lbnRJZDogZ2V0KGl0ZW0sICdlYWVwQXNzZXNzbWVudElkJyksXHJcbiAgICAgICAgICAgIGxldHRlclR5cGU6IGxldHRlclR5cGVJZCxcclxuICAgICAgICAgICAgaW5mcmFjdGlvbkRhdGUgOiBnZXQoaXRlbSwgJ2luZnJhY3Rpb25EYXRlJyksXHJcbiAgICAgICAgICB9KTtcclxuICAgICAgICAgIHRoaXMudGVsZXBob25lT3JTZXR0bGVkQ29uZmVyZW5jZVdvcmtMaXN0U2VydmljZS5kaXNwYXRjaFNhdmVTdGF0dXMocGF5bG9hZCk7XHJcbiAgICAgICAgICB0aGlzLnRhYlNlcnZpY2UuZGlzcGF0Y2hBZGRUYWIoe1xyXG4gICAgICAgICAgICB0YWJOYW1lOiAnZWEtZXAvJyArIGl0ZW0/LmNtc0Nhc2VJZCxcclxuICAgICAgICAgICAgcm91dGU6ICcvZWEtZXAvJyArIGl0ZW0/LmNtc0Nhc2VJZCxcclxuICAgICAgICAgICAgbGFiZWw6ICdBc3Nlc3NtZW50cycgKyAnIC0gJyArIGl0ZW0/LmNsaWVudE5hbWUsXHJcbiAgICAgICAgICAgIGNhbkNsb3NlOiB0cnVlLFxyXG4gICAgICAgICAgfSk7XHJcbiAgICAgICAgICB0aGlzLnJvdXRlci5uYXZpZ2F0ZShbJy9lYS1lcC8nICsgaXRlbT8uY21zQ2FzZUlkXSwgeyByZWxhdGl2ZVRvOiB0aGlzLnJvdXRlLCBzdGF0ZTogeyBjbGllbnROYW1lOiBpdGVtPy5jbGllbnROYW1lIH0gfSk7XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgIGNvbnN0IHBheWxvYWQ6IFNhdmVUZWxlcGhvbmVPclNldHRsZWRDb25mZXJlbmNlU3RhdHVzUGF5bG9hZCA9IG5ldyBTYXZlVGVsZXBob25lT3JTZXR0bGVkQ29uZmVyZW5jZVN0YXR1c1BheWxvYWQoe1xyXG4gICAgICAgICAgICAuLi5yZXMsXHJcbiAgICAgICAgICAgIHdsVGVsZXBob25lU2V0dGxlZElkOiBpdGVtLndsVGVsZXBob25lU2V0dGxlZElkLFxyXG4gICAgICAgICAgICBhY3Rpb25JZDogZ29vZENhdXNlR3JhbnRlZEFjdGlvbklkLFxyXG4gICAgICAgICAgICBjYXNlSWQ6IGl0ZW0gPy5jbXNDYXNlSWQsXHJcbiAgICAgICAgICAgIG9yaWdpbmFsQ2F0ZWdvcnlJZDogaXRlbSA/Lm9yaWdpbmFsQ2F0ZWdvcnlJZCxcclxuICAgICAgICAgICAgYXNzZXNzbWVudElkOiBnZXQoaXRlbSwgJ2VhZXBBc3Nlc3NtZW50SWQnKSxcclxuICAgICAgICAgICAgbGV0dGVyVHlwZTogbGV0dGVyVHlwZUlkLFxyXG4gICAgICAgICAgICBpbmZyYWN0aW9uRGF0ZSA6IGdldChpdGVtLCAnaW5mcmFjdGlvbkRhdGUnKSxcclxuICAgICAgICAgIH0pO1xyXG4gICAgICAgICAgdGhpcy50ZWxlcGhvbmVPclNldHRsZWRDb25mZXJlbmNlV29ya0xpc3RTZXJ2aWNlLmRpc3BhdGNoU2F2ZVN0YXR1cyhwYXlsb2FkKTtcclxuICAgICAgICB9XHJcbiAgICAgIH0pO1xyXG4gIH1cclxufSlcclxufVxyXG4gIH1cclxuXHJcbiAgc3VibWl0QmF0Y2hQb29sQXBwb2ludG1lbnQoaXRlbTogVGVsZXBob25lT3JTZXR0bGVkQ29uZmVyZW5jZVdvcmtMaXN0SXRlbU1vZGVsLCBhcHBvaW50bWVudE5ZQ1dBWWNvZGU6IHN0cmluZykge1xyXG4gICAgY29uc3QgcGF5bG9hZDogU3VibWl0QmF0Y2hQb29sQXBwb2ludG1lbnRNb2RlbCA9IG5ldyBTdWJtaXRCYXRjaFBvb2xBcHBvaW50bWVudE1vZGVsKHtcclxuXHJcbiAgICAgIGNhc2VJZDogaXRlbT8uY21zQ2FzZUlkLFxyXG4gICAgICBzaXRlSWQ6IGdldChpdGVtLCAnc21TaXRlSWQnKSxcclxuICAgICAgYXBwb2ludG1lbnRJZDogaXRlbT8uYXBwb2ludG1lbnRJZCxcclxuICAgICAgZWFlcEFzc2Vzc21lbnRJZDogZ2V0KGl0ZW0sICdlYWVwQXNzZXNzbWVudElkJyksXHJcbiAgICAgIHdsVGVsZXBob25lU2V0dGxlZElkOiBnZXQoaXRlbSwgJ3dsVGVsZXBob25lU2V0dGxlZElkJyksXHJcbiAgICAgIGFwcG9pbnRtZW50TllDV0FZY29kZTogYXBwb2ludG1lbnROWUNXQVljb2RlLFxyXG4gICAgfSk7XHJcbiAgICB0aGlzLmNvbmNpbGlhdGlvbldvcmtMaXN0U2VydmljZS5kaXNwYXRjaFN1Ym1pdEJhdGNoUG9vbEFwcG9pbnRtZW50KHBheWxvYWQpO1xyXG4gIH1cclxuXHJcbiAgb3Blbkdvb2RDYXVzZU5vdEdyYW50ZWREaWFsb2coaXRlbTogVGVsZXBob25lT3JTZXR0bGVkQ29uZmVyZW5jZVdvcmtMaXN0SXRlbU1vZGVsKTogdm9pZCB7XHJcbiAgICBjb25zdCBkaWFsb2dSZWY6IE1hdERpYWxvZ1JlZjxHb29kQ2F1c2VOb3RHcmFudGVkQWN0aW9uQ29tcG9uZW50PiA9IHRoaXMuZGlhbG9nPy5vcGVuKEdvb2RDYXVzZU5vdEdyYW50ZWRBY3Rpb25Db21wb25lbnQsIHtcclxuICAgICAgd2lkdGg6IGRpYWxvZ1NpemUsXHJcbiAgICAgIGRpc2FibGVDbG9zZTogdHJ1ZSxcclxuICAgICAgZGF0YToge1xyXG4gICAgICAgIGNvbmNpbGlhdGlvbkxvb2t1cHM6IHRoaXMuY29uY2lsaWF0aW9uTG9va3VwcyxcclxuICAgICAgICBkYXRhOiBpdGVtXHJcbiAgICAgIH0sXHJcbiAgICB9KTtcclxuXHJcbiAgICAvLyB0c2xpbnQ6ZGlzYWJsZS1uZXh0LWxpbmU6bm8tYW55XHJcbiAgICBkaWFsb2dSZWYuYWZ0ZXJDbG9zZWQoKS5waXBlKHRha2VVbnRpbCh0aGlzLmNvbXBvbmVudERlc3Ryb3llZCkpLnN1YnNjcmliZSgocmVzOiBhbnkpID0+IHtcclxuICAgICAgaWYgKCEhcmVzKSB7XHJcbiAgICAgICAgdGhpcy50ZWxlcGhvbmVPclNldHRsZWRDb25mZXJlbmNlV29ya0xpc3RTZXJ2aWNlLmRpc3BhdGNoU2F2ZVN0YXR1cyhuZXcgU2F2ZVRlbGVwaG9uZU9yU2V0dGxlZENvbmZlcmVuY2VTdGF0dXNQYXlsb2FkKHtcclxuICAgICAgICAgIC4uLnJlcyxcclxuICAgICAgICAgIHdsVGVsZXBob25lU2V0dGxlZElkOiBnZXQoaXRlbSwgJ3dsVGVsZXBob25lU2V0dGxlZElkJyksXHJcbiAgICAgICAgICBhY3Rpb25JZDogZ29vZENhdXNlTm90R3JhbnRlZEFjdGlvbklkLFxyXG4gICAgICAgIH0pKTtcclxuICAgICAgfVxyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICBhZnRlck9uRGVzdHJveSgpOiB2b2lkIHtcclxuICAgIC8vXHJcbiAgfVxyXG5cclxuICBvcGVuWWVzTm9Db25maXJtYXRpb25EaWFsb2cocGF5bG9hZDogU2F2ZVRlbGVwaG9uZU9yU2V0dGxlZENvbmZlcmVuY2VTdGF0dXNQYXlsb2FkLCBpdGVtOiBUZWxlcGhvbmVPclNldHRsZWRDb25mZXJlbmNlV29ya0xpc3RJdGVtTW9kZWwpOiB2b2lkIHtcclxuICAgIGNvbnN0IGNvbmZpcm1EaWFsb2dSZWY6IE1hdERpYWxvZ1JlZjxZZXNOb0NvbmZpcm1hdGlvbkRpYWxvZ0NvbXBvbmVudD4gPSB0aGlzLmRpYWxvZy5vcGVuKFllc05vQ29uZmlybWF0aW9uRGlhbG9nQ29tcG9uZW50LCB7XHJcbiAgICAgIHdpZHRoOiBkaWFsb2dTaXplLFxyXG4gICAgICBkaXNhYmxlQ2xvc2U6IHRydWUsXHJcbiAgICAgIGRhdGE6IHtcclxuICAgICAgICB5ZXNMYWJlbDogeWVzTGFiZWwsXHJcbiAgICAgICAgbm9MYWJlbDogbm9MYWJlbCxcclxuICAgICAgICBoZWFkZXI6IGNvbmZpcm1IZWFkZXIsXHJcbiAgICAgICAgbWVzc2FnZTogZ29vZENhdXNlQ29uZmlybU1lc3NhZ2UsXHJcbiAgICAgIH0sXHJcbiAgICB9KTtcclxuXHJcbiAgICBjb25maXJtRGlhbG9nUmVmLmFmdGVyQ2xvc2VkKCkucGlwZSh0YWtlVW50aWwodGhpcy5jb21wb25lbnREZXN0cm95ZWQpKS5zdWJzY3JpYmUoKHJlczogYm9vbGVhbikgPT4ge1xyXG4gICAgICBpZiAoISFyZXMpIHtcclxuICAgICAgICB0aGlzLnRlbGVwaG9uZU9yU2V0dGxlZENvbmZlcmVuY2VXb3JrTGlzdFNlcnZpY2UuZGlzcGF0Y2hTYXZlU3RhdHVzKG5ldyBTYXZlVGVsZXBob25lT3JTZXR0bGVkQ29uZmVyZW5jZVN0YXR1c1BheWxvYWQoe1xyXG4gICAgICAgICAgLi4ucGF5bG9hZCxcclxuICAgICAgICAgIGNvbmZpcm1ZZXNObzogdHJ1ZSxcclxuICAgICAgICB9KSk7XHJcbiAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgdGhpcy50ZWxlcGhvbmVPclNldHRsZWRDb25mZXJlbmNlV29ya0xpc3RTZXJ2aWNlLmRpc3BhdGNoU2F2ZVN0YXR1cyhuZXcgU2F2ZVRlbGVwaG9uZU9yU2V0dGxlZENvbmZlcmVuY2VTdGF0dXNQYXlsb2FkKHtcclxuICAgICAgICAgIC4uLnBheWxvYWQsXHJcbiAgICAgICAgICBjb25maXJtWWVzTm86IGZhbHNlLFxyXG4gICAgICAgIH0pKTtcclxuICAgICAgfVxyXG4gICAgfSk7XHJcbiAgfVxyXG59XHJcbiIsIjxwcnV0ZWNoLWNvbnRleHQtbWVudSBbbWVudUl0ZW1zXT1cIm1lbnVJdGVtc1wiIChtZW51QWN0aW9uKT1cImRvQWN0aW9uKCRldmVudClcIj48L3BydXRlY2gtY29udGV4dC1tZW51PlxyXG4iXX0=
|
@@ -2,7 +2,7 @@ import { Component, Inject, ViewChild } from '@angular/core';
|
|
2
2
|
import { AbstractComponent } from '@prutech/components';
|
3
3
|
import { MAT_DIALOG_DATA } from '@angular/material/dialog';
|
4
4
|
import { takeUntil } from 'rxjs/operators';
|
5
|
-
import { find, get, set, range } from 'lodash';
|
5
|
+
import { find, get, set, range, map, some } from 'lodash';
|
6
6
|
import { conferenceByPhoneFormModel } from '../../models/conference-by-phone-formmodel';
|
7
7
|
import moment from 'moment';
|
8
8
|
import * as i0 from "@angular/core";
|
@@ -22,10 +22,23 @@ export class ReScheduleCallBackActionComponent extends AbstractComponent {
|
|
22
22
|
this.reasonCtrlName = 'reasons';
|
23
23
|
this.inPersonCtrlName = 'person';
|
24
24
|
this.otherReasonCtrlName = 'otherReason';
|
25
|
+
this.apptDateCtrlName = 'scheduledDate1';
|
26
|
+
this.apptDate1CtrlName = 'scheduledDate2';
|
25
27
|
this.showInPerson = true;
|
28
|
+
this.myFilter = (date) => {
|
29
|
+
if (!date)
|
30
|
+
return false;
|
31
|
+
const day = date.day();
|
32
|
+
let isFederalHoliday = some(this.filteredDates, (f) => moment(f).isSame(moment(date)));
|
33
|
+
if (day === 0 || day === 6 || isFederalHoliday) {
|
34
|
+
return false;
|
35
|
+
}
|
36
|
+
return true;
|
37
|
+
};
|
26
38
|
this.elements =
|
27
39
|
this.dynamicFormService.mapFormData(this.scheduleData, conferenceByPhoneFormModel.editTemplate, undefined);
|
28
40
|
this.showInPerson = get(data, 'showInPerson', true);
|
41
|
+
this.filteredDates = map(get(data, 'val'), (d) => get(d, 'holidayDate'));
|
29
42
|
}
|
30
43
|
ngAfterViewInit() {
|
31
44
|
}
|
@@ -41,10 +54,19 @@ export class ReScheduleCallBackActionComponent extends AbstractComponent {
|
|
41
54
|
}
|
42
55
|
initDynamicFormElements() {
|
43
56
|
const fg = get(this.dynamicForm, 'dynamicFormGroup');
|
57
|
+
const today = new Date();
|
58
|
+
const apptDateElement = find(get(this.dynamicForm, 'elements'), (e) => e.name === this.apptDateCtrlName);
|
59
|
+
set(apptDateElement, 'min', new Date());
|
60
|
+
set(apptDateElement, 'max', new Date(today.getFullYear(), today.getMonth(), today.getDate() + 30));
|
61
|
+
set(apptDateElement, 'filter', this.myFilter);
|
44
62
|
const hour1Element = find(get(this.dynamicForm, 'elements'), (e) => e.name === 'hour1');
|
45
63
|
set(hour1Element, 'selections', this.hours);
|
46
64
|
const minute1Element = find(get(this.dynamicForm, 'elements'), (e) => e.name === 'minute1');
|
47
65
|
set(minute1Element, 'selections', this.minutes);
|
66
|
+
const apptDate1Element = find(get(this.dynamicForm, 'elements'), (e) => e.name === this.apptDate1CtrlName);
|
67
|
+
set(apptDate1Element, 'min', new Date());
|
68
|
+
set(apptDateElement, 'max', new Date(today.getFullYear(), today.getMonth(), today.getDate() + 30));
|
69
|
+
set(apptDateElement, 'filter', this.myFilter);
|
48
70
|
const hour2Element = find(get(this.dynamicForm, 'elements'), (e) => e.name === 'hour2');
|
49
71
|
set(hour2Element, 'selections', this.hours);
|
50
72
|
const minute2Element = find(get(this.dynamicForm, 'elements'), (e) => e.name === 'minute2');
|
@@ -114,4 +136,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImpo
|
|
114
136
|
type: ViewChild,
|
115
137
|
args: ['dynamicForm', { static: false }]
|
116
138
|
}] } });
|
117
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmUtc2NoZWR1bGUtY2FsbC1iYWNrLWFjdGlvbi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9wcnV0ZWNoL2NvbXBsaWFuY2Uvc3JjL2xpYi90ZWxlcGhvbmUtc2V0dGxlZC1jb25mZXJlbmNlL2NvbXBvbmVudHMvcmUtc2NoZWR1bGUtY2FsbC1iYWNrLWFjdGlvbi9yZS1zY2hlZHVsZS1jYWxsLWJhY2stYWN0aW9uLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3BydXRlY2gvY29tcGxpYW5jZS9zcmMvbGliL3RlbGVwaG9uZS1zZXR0bGVkLWNvbmZlcmVuY2UvY29tcG9uZW50cy9yZS1zY2hlZHVsZS1jYWxsLWJhY2stYWN0aW9uL3JlLXNjaGVkdWxlLWNhbGwtYmFjay1hY3Rpb24uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUEwQyxTQUFTLEVBQUUsTUFBTSxFQUFVLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUU3RyxPQUFPLEVBQ0wsaUJBQWlCLEVBRWxCLE1BQU0scUJBQXFCLENBQUM7QUFDN0IsT0FBTyxFQUFFLGVBQWUsRUFBZ0IsTUFBTSwwQkFBMEIsQ0FBQztBQUN6RSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDM0MsT0FBTyxFQUFFLElBQUksRUFBRSxHQUFHLEVBQUUsR0FBRyxFQUFFLEtBQUssRUFBRSxNQUFNLFFBQVEsQ0FBQztBQUUvQyxPQUFPLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSw0Q0FBNEMsQ0FBQztBQUN4RixPQUFPLE1BQU0sTUFBTSxRQUFRLENBQUM7Ozs7Ozs7QUFRNUIsTUFBTSxPQUFPLGlDQUFrQyxTQUFRLGlCQUFpQjtJQWdCdEUsWUFBbUIsU0FBMEQsRUFDbkUsa0JBQXlDO0lBQ2pELGtDQUFrQztJQUNGLElBQVM7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InNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFmdGVyVmlld0luaXQsIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIEluamVjdCwgT25Jbml0LCBWaWV3Q2hpbGQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgRm9ybUdyb3VwLCBWYWxpZGF0b3JzIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xyXG5pbXBvcnQge1xyXG4gIEFic3RyYWN0Q29tcG9uZW50LCBFbnRpdHksIElQdER5bmFtaWNFbGVtZW50Q29uZmlnLCBMb29rdXAsXHJcbiAgUHREeW5hbWljRm9ybXNDb21wb25lbnQsIFB0RHluYW1pY0Zvcm1zU2VydmljZVxyXG59IGZyb20gJ0BwcnV0ZWNoL2NvbXBvbmVudHMnO1xyXG5pbXBvcnQgeyBNQVRfRElBTE9HX0RBVEEsIE1hdERpYWxvZ1JlZiB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2RpYWxvZyc7XHJcbmltcG9ydCB7IHRha2VVbnRpbCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcclxuaW1wb3J0IHsgZmluZCwgZ2V0LCBzZXQsIHJhbmdlIH0gZnJvbSAnbG9kYXNoJztcclxuaW1wb3J0IHsgc2NoZWR1bGVPclJlc2NoZWR1bGVBY3Rpb25Gb3JtTW9kZWwgfSBmcm9tICcuLi8uLi9tb2RlbHMvc2NoZWR1bGUtY2FsbC1iYWNrLWFjdGlvbi5mb3JtbW9kZWwnO1xyXG5pbXBvcnQgeyBjb25mZXJlbmNlQnlQaG9uZUZvcm1Nb2RlbCB9IGZyb20gJy4uLy4uL21vZGVscy9jb25mZXJlbmNlLWJ5LXBob25lLWZvcm1tb2RlbCc7XHJcbmltcG9ydCBtb21lbnQgZnJvbSAnbW9tZW50JztcclxuaW1wb3J0IHsgbW9tZW50RGF0ZUZvcm1hdCB9IGZyb20gJy4uLy4uLy4uL3NoYXJlZC9jb25zdGFudHMvZGF0ZS1mb3JtYXQnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdsaWItcmUtc2NoZWR1bGUtY2FsbC1iYWNrLWFjdGlvbicsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL3JlLXNjaGVkdWxlLWNhbGwtYmFjay1hY3Rpb24uY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL3JlLXNjaGVkdWxlLWNhbGwtYmFjay1hY3Rpb24uY29tcG9uZW50LmNzcyddXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBSZVNjaGVkdWxlQ2FsbEJhY2tBY3Rpb25Db21wb25lbnQgZXh0ZW5kcyBBYnN0cmFjdENvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgQWZ0ZXJWaWV3SW5pdCB7XHJcblxyXG5cclxuICByZWFkb25seSByZWFzb25DdHJsTmFtZTogc3RyaW5nID0gJ3JlYXNvbnMnO1xyXG4gIHJlYWRvbmx5IGluUGVyc29uQ3RybE5hbWU6IHN0cmluZyA9ICdwZXJzb24nO1xyXG4gIHJlYWRvbmx5IG90aGVyUmVhc29uQ3RybE5hbWU6IHN0cmluZyA9ICdvdGhlclJlYXNvbic7XHJcbiAgaG91cnM6IG51bWJlcltdO1xyXG5cclxuICBlbGVtZW50czogSVB0RHluYW1pY0VsZW1lbnRDb25maWdbXTtcclxuICBzaG93SW5QZXJzb246IGJvb2xlYW4gPSB0cnVlO1xyXG5cclxuICBAVmlld0NoaWxkKCdkeW5hbWljRm9ybScsIHsgc3RhdGljOiBmYWxzZSB9KSBwdWJsaWMgZHluYW1pY0Zvcm06IFB0RHluYW1pY0Zvcm1zQ29tcG9uZW50O1xyXG4gIHNjaGVkdWxlRGF0YTogYW55O1xyXG4gIG1pbnV0ZXM6IG51bWJlcltdO1xyXG4gIGRhdGVUaW1lMjogYW55O1xyXG4gIGRhdGVUaW1lMTogYW55O1xyXG4gIGNvbnN0cnVjdG9yKHB1YmxpYyBkaWFsb2dSZWY6IE1hdERpYWxvZ1JlZjxSZVNjaGVkdWxlQ2FsbEJhY2tBY3Rpb25Db21wb25lbnQ+LFxyXG4gICAgcHJpdmF0ZSBkeW5hbWljRm9ybVNlcnZpY2U6IFB0RHluYW1pY0Zvcm1zU2VydmljZSxcclxuICAgIC8vIHRzbGludDpkaXNhYmxlLW5leHQtbGluZTpuby1hbnlcclxuICAgIEBJbmplY3QoTUFUX0RJQUxPR19EQVRBKSBwdWJsaWMgZGF0YTogYW55KSB7XHJcbiAgICBzdXBlcigpO1xyXG4gICAgdGhpcy5lbGVtZW50cyA9XHJcbiAgICAgIHRoaXMuZHluYW1pY0Zvcm1TZXJ2aWNlLm1hcEZvcm1EYXRhKHRoaXMuc2NoZWR1bGVEYXRhLCBjb25mZXJlbmNlQnlQaG9uZUZvcm1Nb2RlbC5lZGl0VGVtcGxhdGUsIHVuZGVmaW5lZCk7XHJcbiAgICB0aGlzLnNob3dJblBlcnNvbiA9IGdldChkYXRhLCAnc2hvd0luUGVyc29uJywgdHJ1ZSk7XHJcbiAgfVxyXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcclxuXHJcbiAgfVxyXG4gIG5nT25Jbml0KCk6IHZvaWQge1xyXG4gICAgdGhpcy5ob3VycyA9IHJhbmdlKDEsIDI1KTtcclxuICAgIHRoaXMubWludXRlcyA9IHJhbmdlKDAsIDYxKTtcclxuICB9XHJcblxyXG4gIGdldCBkeW5hbWljRm9ybUdyb3VwKCk6IEZvcm1Hcm91cCB7XHJcbiAgICByZXR1cm4gZ2V0KHRoaXMuZHluYW1pY0Zvcm0sICdkeW5hbWljRm9ybUdyb3VwJyk7XHJcbiAgfVxyXG5cclxuXHJcbiAgYWZ0ZXJPbkRlc3Ryb3koKTogdm9pZCB7XHJcbiAgICAvLyB0aHJvdyBuZXcgRXJyb3IoXCJNZXRob2Qgbm90IGltcGxlbWVudGVkLlwiKTtcclxuICB9XHJcblxyXG4gIGluaXREeW5hbWljRm9ybUVsZW1lbnRzKCk6IHZvaWQge1xyXG4gICAgY29uc3QgZmc6IEZvcm1Hcm91cCA9IGdldCh0aGlzLmR5bmFtaWNGb3JtLCAnZHluYW1pY0Zvcm1Hcm91cCcpO1xyXG5cclxuICAgIGNvbnN0IGhvdXIxRWxlbWVudDogSVB0RHluYW1pY0VsZW1lbnRDb25maWcgPSBmaW5kKGdldCh0aGlzLmR5bmFtaWNGb3JtLCAnZWxlbWVudHMnKSxcclxuICAgICAgKGU6IElQdER5bmFtaWNFbGVtZW50Q29uZmlnKSA9PiBlLm5hbWUgPT09ICdob3VyMScpO1xyXG4gICAgc2V0KGhvdXIxRWxlbWVudCwgJ3NlbGVjdGlvbnMnLCB0aGlzLmhvdXJzKTtcclxuICAgIGNvbnN0IG1pbnV0ZTFFbGVtZW50OiBJUHREeW5hbWljRWxlbWVudENvbmZpZyA9IGZpbmQoZ2V0KHRoaXMuZHluYW1pY0Zvcm0sICdlbGVtZW50cycpLFxyXG4gICAgICAoZTogSVB0RHluYW1pY0VsZW1lbnRDb25maWcpID0+IGUubmFtZSA9PT0gJ21pbnV0ZTEnKTtcclxuICAgIHNldChtaW51dGUxRWxlbWVudCwgJ3NlbGVjdGlvbnMnLCB0aGlzLm1pbnV0ZXMpO1xyXG5cclxuXHJcbiAgICBjb25zdCBob3VyMkVsZW1lbnQ6IElQdER5bmFtaWNFbGVtZW50Q29uZmlnID0gZmluZChnZXQodGhpcy5keW5hbWljRm9ybSwgJ2VsZW1lbnRzJyksXHJcbiAgICAgIChlOiBJUHREeW5hbWljRWxlbWVudENvbmZpZykgPT4gZS5uYW1lID09PSAnaG91cjInKTtcclxuICAgIHNldChob3VyMkVsZW1lbnQsICdzZWxlY3Rpb25zJywgdGhpcy5ob3Vycyk7XHJcbiAgICBjb25zdCBtaW51dGUyRWxlbWVudDogSVB0RHluYW1pY0VsZW1lbnRDb25maWcgPSBmaW5kKGdldCh0aGlzLmR5bmFtaWNGb3JtLCAnZWxlbWVudHMnKSxcclxuICAgICAgKGU6IElQdER5bmFtaWNFbGVtZW50Q29uZmlnKSA9PiBlLm5hbWUgPT09ICdtaW51dGUyJyk7XHJcbiAgICBzZXQobWludXRlMkVsZW1lbnQsICdzZWxlY3Rpb25zJywgdGhpcy5taW51dGVzKTtcclxuICAgIGZnLmNvbnRyb2xzLmhvdXIxLnZhbHVlQ2hhbmdlc1xyXG4gICAgICAucGlwZSh0YWtlVW50aWwodGhpcy5jb21wb25lbnREZXN0cm95ZWQpKVxyXG4gICAgICAuc3Vic2NyaWJlKChob3VyOiBudW1iZXIpID0+IHtcclxuICAgICAgICBmZy5jb250cm9scy5taW51dGUxLnZhbHVlQ2hhbmdlc1xyXG4gICAgICAgICAgLnBpcGUodGFrZVVudGlsKHRoaXMuY29tcG9uZW50RGVzdHJveWVkKSlcclxuICAgICAgICAgIC5zdWJzY3JpYmUoKG1pbnV0ZTogbnVtYmVyKSA9PiB7XHJcblxyXG4gICAgICAgICAgICBsZXQgdGltZTEgPSAoaG91ciArICc6JyArIG1pbnV0ZSkudG9TdHJpbmcoKVxyXG4gICAgICAgICAgICBjb25zb2xlLmxvZyh0aW1lMSwgXCJ0aW1lMVwiKVxyXG4gICAgICAgICAgICBjb25zdCBkZXRhaWxzRm9ybSA9IG1vbWVudChnZXQodGhpcy5keW5hbWljRm9ybSwgJ2R5bmFtaWNGb3JtLnZhbHVlLnNjaGVkdWxlZERhdGUxJykpLmZvcm1hdCgnTU0tREQtWVlZWScpO1xyXG4gICAgICAgICAgICBsZXQgZGF0ZVN0ciA9IGRldGFpbHNGb3JtLFxyXG4gICAgICAgICAgICAgIHRpbWVTdHIgPSB0aW1lMSxcclxuICAgICAgICAgICAgICBkYXRlMSA9IG1vbWVudChkYXRlU3RyKSxcclxuICAgICAgICAgICAgICBkYXRlRm9ybWF0ID0gbW9tZW50KGRhdGVTdHIpLmZvcm1hdCgneXl5eS1NTS1ERCcpLFxyXG4gICAgICAgICAgICAgIHRpbWUgPSBtb21lbnQodGltZVN0ciwgJ0hIOm1tJyk7XHJcblxyXG4gICAgICAgICAgICBkYXRlMS5zZXQoe1xyXG4gICAgICAgICAgICAgIGhvdXI6IHRpbWUuZ2V0KCdob3VyJyksXHJcbiAgICAgICAgICAgICAgbWludXRlOiB0aW1lLmdldCgnbWludXRlJyksXHJcbiAgICAgICAgICAgIH0pO1xyXG4gICAgICAgICAgICBsZXQgZGF0ZSA9IGRhdGVGb3JtYXQgKyAnVCcrIChob3VyPDEwPycwJzonJykraG91ciArJzonKyAobWludXRlPCAxMCA/ICcwJyA6ICcnKSttaW51dGUgKyAnOicrJzAwLjAwMFonXHJcblxyXG4gICAgICAgICAgICB0aGlzLmRhdGVUaW1lMSA9IGRhdGVcclxuICAgICAgICAgIH0pO1xyXG4gICAgICB9KTtcclxuXHJcblxyXG4gICAgZmcuY29udHJvbHMuaG91cjIudmFsdWVDaGFuZ2VzXHJcbiAgICAgIC5waXBlKHRha2VVbnRpbCh0aGlzLmNvbXBvbmVudERlc3Ryb3llZCkpXHJcbiAgICAgIC5zdWJzY3JpYmUoKGhvdXI6IG51bWJlcikgPT4ge1xyXG4gICAgICAgIGZnLmNvbnRyb2xzLm1pbnV0ZTIudmFsdWVDaGFuZ2VzXHJcbiAgICAgICAgICAucGlwZSh0YWtlVW50aWwodGhpcy5jb21wb25lbnREZXN0cm95ZWQpKVxyXG4gICAgICAgICAgLnN1YnNjcmliZSgobWludXRlOiBudW1iZXIpID0+IHtcclxuXHJcbiAgICAgICAgICAgIGxldCB0aW1lMSA9IChob3VyICsgJzonICsgbWludXRlKS50b1N0cmluZygpXHJcbiAgICAgICAgICAgIGNvbnNvbGUubG9nKHRpbWUxLCBcInRpbWUxXCIpXHJcbiAgICAgICAgICAgIGNvbnN0IGRhdGVGb3JtID0gbW9tZW50KGdldCh0aGlzLmR5bmFtaWNGb3JtLCAnZHluYW1pY0Zvcm0udmFsdWUuc2NoZWR1bGVkRGF0ZTInKSkuZm9ybWF0KCdNTS1ERC1ZWVlZJyk7XHJcblxyXG4gICAgICAgICAgICBsZXQgZGF0ZVN0ciA9IGRhdGVGb3JtLFxyXG4gICAgICAgICAgICB0aW1lU3RyID0gdGltZTEsXHJcbiAgICAgICAgICAgIGRhdGUxID0gbW9tZW50KGRhdGVTdHIpLFxyXG4gICAgICAgICAgICBkYXRlRm9ybWF0ID0gbW9tZW50KGRhdGVTdHIpLmZvcm1hdCgneXl5eS1NTS1ERCcpLFxyXG4gICAgICAgICAgICB0aW1lID0gbW9tZW50KHRpbWVTdHIsICdISDptbScpO1xyXG5cclxuICAgICAgICAgIGRhdGUxLnNldCh7XHJcbiAgICAgICAgICAgIGhvdXI6IHRpbWUuZ2V0KCdob3VyJyksXHJcbiAgICAgICAgICAgIG1pbnV0ZTogdGltZS5nZXQoJ21pbnV0ZScpLFxyXG4gICAgICAgICAgfSk7XHJcbiAgICAgICAgICBsZXQgZGF0ZSA9IGRhdGVGb3JtYXQgKyAnVCcrIChob3VyPDEwPycwJzonJykraG91ciArJzonKyAobWludXRlPCAxMCA/ICcwJyA6ICcnKSttaW51dGUgKyAnOicrJzAwLjAwMFonXHJcbiAgICAgICAgICAgIHRoaXMuZGF0ZVRpbWUyID0gZGF0ZTtcclxuICAgICAgICAgIH0pO1xyXG4gICAgICB9KTtcclxuXHJcbiAgfVxyXG5cclxuXHJcblxyXG5cclxuICBnZXQgaXNEaXNhYmxlZCgpOiBib29sZWFuIHtcclxuICAgIHJldHVybiB0aGlzLmR5bmFtaWNGb3JtR3JvdXAgJiYgdGhpcy5keW5hbWljRm9ybUdyb3VwLmludmFsaWQ7XHJcbiAgfVxyXG5cclxuICBjbG9zZU1vZGFsKGFjdGlvbjogYm9vbGVhbik6IHZvaWQge1xyXG4gICAgLy8gdHNsaW50OmRpc2FibGUtbmV4dC1saW5lOm5vLWFueVxyXG4gICAgbGV0IHBheUxvYWQgPSB0aGlzLmR5bmFtaWNGb3JtLnZhbHVlO1xyXG4gICAgc2V0KHBheUxvYWQsICdzY2hlZHVsZWREYXRlVGltZTEnLCB0aGlzLmRhdGVUaW1lMSk7XHJcbiAgICBzZXQocGF5TG9hZCwgJ3NjaGVkdWxlZERhdGVUaW1lMicsIHRoaXMuZGF0ZVRpbWUyKTtcclxuXHJcbiAgICBpZiAoYWN0aW9uKSB7XHJcbiAgICAgIHRoaXMuZGlhbG9nUmVmLmNsb3NlKHBheUxvYWQpO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgdGhpcy5kaWFsb2dSZWYuY2xvc2UodW5kZWZpbmVkKTtcclxuICAgIH1cclxuICB9XHJcblxyXG5cclxufVxyXG4iLCI8cHJ1dGVjaC1kaWFsb2ctYm94IGNsYXNzPVwicHJ1dGVjaC1kaWFsb2ctYm94XCI+XHJcbiAgICA8ZGl2IGNsYXNzPVwiaGVhZGVyXCI+UmUgU2NoZWR1bGUgQ29uZmVyZW5jZSBCeSBQaG9uZTwvZGl2PlxyXG4gICAgPGRpdiBjbGFzcz1cImJvZHkgcHJ1dGVjaC1kaWFsb2ctY29udGVudFwiIGZ4TGF5b3V0PVwiY29sdW1uXCIgZnhMYXlvdXRBbGlnbj1cInN0YXJ0IHN0cmV0Y2hcIiBmeExheW91dEdhcD1cIjEwcHhcIj5cclxuICBcclxuICAgICAgPHBydXRlY2gtZHluYW1pYy1mb3JtcyAqbmdJZj1cImVsZW1lbnRzXCIgKGluaXQpPVwiaW5pdER5bmFtaWNGb3JtRWxlbWVudHMoKVwiIFtlbGVtZW50c109XCJlbGVtZW50c1wiICNkeW5hbWljRm9ybT5cclxuICAgICAgICA8bmctdGVtcGxhdGUgbGV0LWVsZW1lbnQgbmdGb3IgW25nRm9yT2ZdPVwiZWxlbWVudHNcIj5cclxuICAgICAgICAgIDxuZy10ZW1wbGF0ZSBsZXQtY29udHJvbD1cImNvbnRyb2xcIiBbdGREeW5hbWljRm9ybXNFcnJvcl09XCJlbGVtZW50Lm5hbWVcIj5cclxuICAgICAgICAgICAgPHNwYW4gKm5nSWY9XCJjb250cm9sLnRvdWNoZWQgfHwgIWNvbnRyb2wucHJpc3RpbmVcIj5cclxuICAgICAgICAgICAgICA8c3BhbiAqbmdJZj1cImNvbnRyb2wuaGFzRXJyb3IoJ3JlcXVpcmVkJylcIj5SZXF1aXJlZDwvc3Bhbj5cclxuICAgICAgICAgICAgICA8c3BhbiAqbmdJZj1cImNvbnRyb2wuaGFzRXJyb3IoJ2ludmFsaWRTZWxlY3Rpb24nKVwiPkludmFsaWQgU2VsZWN0aW9uPC9zcGFuPlxyXG4gICAgICAgICAgICA8L3NwYW4+XHJcbiAgICAgICAgICA8L25nLXRlbXBsYXRlPlxyXG4gICAgICAgIDwvbmctdGVtcGxhdGU+XHJcbiAgICAgIDwvcHJ1dGVjaC1keW5hbWljLWZvcm1zPlxyXG4gICAgPC9kaXY+XHJcbiAgICA8ZGl2IGNsYXNzPVwiZGlhbG9nYm94Zm9vdGVyXCI+XHJcbiAgICAgIDxidXR0b24gbWF0LWZsYXQtYnV0dG9uIChjbGljayk9XCJjbG9zZU1vZGFsKGZhbHNlKVwiPkVYSVQ8L2J1dHRvbj5cclxuICAgICAgPGJ1dHRvbiBtYXQtZmxhdC1idXR0b25cclxuICAgICAgICAgICAgICBjb2xvcj1cInByaW1hcnlcIlxyXG4gICAgICAgICAgICAgIChjbGljayk9XCJjbG9zZU1vZGFsKHRydWUpXCJcclxuICAgICAgICAgICAgICBbZGlzYWJsZWRdPVwiaXNEaXNhYmxlZFwiPlJFU0NIRURVTEVDQUxMXHJcbiAgICAgIDwvYnV0dG9uPlxyXG4gICAgPC9kaXY+XHJcbiAgPC9wcnV0ZWNoLWRpYWxvZy1ib3g+XHJcbiAgIl19
|
139
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmUtc2NoZWR1bGUtY2FsbC1iYWNrLWFjdGlvbi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9wcnV0ZWNoL2NvbXBsaWFuY2Uvc3JjL2xpYi90ZWxlcGhvbmUtc2V0dGxlZC1jb25mZXJlbmNlL2NvbXBvbmVudHMvcmUtc2NoZWR1bGUtY2FsbC1iYWNrLWFjdGlvbi9yZS1zY2hlZHVsZS1jYWxsLWJhY2stYWN0aW9uLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3BydXRlY2gvY29tcGxpYW5jZS9zcmMvbGliL3RlbGVwaG9uZS1zZXR0bGVkLWNvbmZlcmVuY2UvY29tcG9uZW50cy9yZS1zY2hlZHVsZS1jYWxsLWJhY2stYWN0aW9uL3JlLXNjaGVkdWxlLWNhbGwtYmFjay1hY3Rpb24uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUEwQyxTQUFTLEVBQUUsTUFBTSxFQUFVLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUU3RyxPQUFPLEVBQ0wsaUJBQWlCLEVBRWxCLE1BQU0scUJBQXFCLENBQUM7QUFDN0IsT0FBTyxFQUFFLGVBQWUsRUFBZ0IsTUFBTSwwQkFBMEIsQ0FBQztBQUN6RSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDM0MsT0FBTyxFQUFFLElBQUksRUFBRSxHQUFHLEVBQUUsR0FBRyxFQUFFLEtBQUssRUFBRSxHQUFHLEVBQUUsSUFBSSxFQUFDLE1BQU0sUUFBUSxDQUFDO0FBRXpELE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLDRDQUE0QyxDQUFDO0FBQ3hGLE9BQU8sTUFBTSxNQUFNLFFBQVEsQ0FBQzs7Ozs7OztBQVE1QixNQUFNLE9BQU8saUNBQWtDLFNBQVEsaUJBQWlCO0lBbUJ0RSxZQUFtQixTQUEwRCxFQUNuRSxrQkFBeUM7SUFDakQsa0NBQWtDO0lBQ0YsSUFBUztRQUN6QyxLQUFLLEVBQUUsQ0FBQztRQUpTLGNBQVMsR0FBVCxTQUFTLENBQWlEO1FBQ25FLHVCQUFrQixHQUFsQixrQkFBa0IsQ0FBdUI7UUFFakIsU0FBSSxHQUFKLElBQUksQ0FBSztRQW5CbEMsbUJBQWMsR0FBVyxTQUFTLENBQUM7UUFDbkMscUJBQWdCLEdBQVcsUUFBUSxDQUFDO1FBQ3BDLHdCQUFtQixHQUFXLGFBQWEsQ0FBQztRQUM1QyxxQkFBZ0IsR0FBVyxnQkFBZ0IsQ0FBQztRQUM1QyxzQkFBaUIsR0FBVyxnQkFBZ0IsQ0FBQztRQUt0RCxpQkFBWSxHQUFZLElBQUksQ0FBQztRQWtDN0IsYUFBUSxHQUFHLENBQUMsSUFBSSxFQUFXLEVBQUU7WUFDM0IsSUFBRyxDQUFDLElBQUk7Z0JBQUUsT0FBTyxLQUFLLENBQUM7WUFDdEIsTUFBTSxHQUFHLEdBQUcsSUFBSSxDQUFDLEdBQUcsRUFBRSxDQUFDO1lBQ3ZCLElBQUksZ0JBQWdCLEdBQVksSUFBSSxDQUFDLElBQUksQ0FBQyxhQUFhLEVBQUUsQ0FBQyxDQUFPLEVBQUUsRUFBRSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQztZQUN0RyxJQUFHLEdBQUcsS0FBSyxDQUFDLElBQUksR0FBRyxLQUFLLENBQUMsSUFBSSxnQkFBZ0IsRUFBQztnQkFDNUMsT0FBTyxLQUFLLENBQUE7YUFDYjtZQUNELE9BQU8sSUFBSSxDQUFDO1FBQ2QsQ0FBQyxDQUFBO1FBOUJBLElBQUksQ0FBQyxRQUFRO1lBQ1gsSUFBSSxDQUFDLGtCQUFrQixDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsWUFBWSxFQUFFLDBCQUEwQixDQUFDLFlBQVksRUFBRSxTQUFTLENBQUMsQ0FBQztRQUM3RyxJQUFJLENBQUMsWUFBWSxHQUFHLEdBQUcsQ0FBQyxJQUFJLEVBQUUsY0FBYyxFQUFFLElBQUksQ0FBQyxDQUFDO1FBQ3BELElBQUksQ0FBQyxhQUFhLEdBQUcsR0FBRyxDQUFDLEdBQUcsQ0FBQyxJQUFJLEVBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFnQixFQUFFLEVBQUUsQ0FBQyxHQUFHLENBQUMsQ0FBQyxFQUFFLGFBQWEsQ0FBQyxDQUFDLENBQUM7SUFDekYsQ0FBQztJQUNELGVBQWU7SUFFZixDQUFDO0lBQ0QsUUFBUTtRQUNOLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQztRQUMxQixJQUFJLENBQUMsT0FBTyxHQUFHLEtBQUssQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUM7SUFDOUIsQ0FBQztJQUVELElBQUksZ0JBQWdCO1FBQ2xCLE9BQU8sR0FBRyxDQUFDLElBQUksQ0FBQyxXQUFXLEVBQUUsa0JBQWtCLENBQUMsQ0FBQztJQUNuRCxDQUFDO0lBR0QsY0FBYztRQUNaLDhDQUE4QztJQUNoRCxDQUFDO0lBWUQsdUJBQXVCO1FBQ3JCLE1BQU0sRUFBRSxHQUFjLEdBQUcsQ0FBQyxJQUFJLENBQUMsV0FBVyxFQUFFLGtCQUFrQixDQUFDLENBQUM7UUFDaEUsTUFBTSxLQUFLLEdBQUcsSUFBSSxJQUFJLEVBQUUsQ0FBQztRQUN6QixNQUFNLGVBQWUsR0FBNEIsSUFBSSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsV0FBVyxFQUFFLFVBQVUsQ0FBQyxFQUN2RixDQUFDLENBQTBCLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxJQUFJLEtBQUssSUFBSSxDQUFDLGdCQUFnQixDQUFDLENBQUM7UUFDbEUsR0FBRyxDQUFDLGVBQWUsRUFBRSxLQUFLLEVBQUUsSUFBSSxJQUFJLEVBQUUsQ0FBQyxDQUFDO1FBQ3hDLEdBQUcsQ0FBQyxlQUFlLEVBQUMsS0FBSyxFQUFDLElBQUksSUFBSSxDQUFDLEtBQUssQ0FBQyxXQUFXLEVBQUUsRUFBQyxLQUFLLENBQUMsUUFBUSxFQUFFLEVBQUUsS0FBSyxDQUFDLE9BQU8sRUFBRSxHQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUM7UUFFOUYsR0FBRyxDQUFDLGVBQWUsRUFBQyxRQUFRLEVBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBRTVDLE1BQU0sWUFBWSxHQUE0QixJQUFJLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxXQUFXLEVBQUUsVUFBVSxDQUFDLEVBQ2xGLENBQUMsQ0FBMEIsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksS0FBSyxPQUFPLENBQUMsQ0FBQztRQUN0RCxHQUFHLENBQUMsWUFBWSxFQUFFLFlBQVksRUFBRSxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDNUMsTUFBTSxjQUFjLEdBQTRCLElBQUksQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLFdBQVcsRUFBRSxVQUFVLENBQUMsRUFDcEYsQ0FBQyxDQUEwQixFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxLQUFLLFNBQVMsQ0FBQyxDQUFDO1FBQ3hELEdBQUcsQ0FBQyxjQUFjLEVBQUUsWUFBWSxFQUFFLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUVoRCxNQUFNLGdCQUFnQixHQUE0QixJQUFJLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxXQUFXLEVBQUUsVUFBVSxDQUFDLEVBQ3hGLENBQUMsQ0FBMEIsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksS0FBSyxJQUFJLENBQUMsaUJBQWlCLENBQUMsQ0FBQztRQUNuRSxHQUFHLENBQUMsZ0JBQWdCLEVBQUUsS0FBSyxFQUFFLElBQUksSUFBSSxFQUFFLENBQUMsQ0FBQztRQUN6QyxHQUFHLENBQUMsZUFBZSxFQUFDLEtBQUssRUFBQyxJQUFJLElBQUksQ0FBQyxLQUFLLENBQUMsV0FBVyxFQUFFLEVBQUMsS0FBSyxDQUFDLFFBQVEsRUFBRSxFQUFFLEtBQUssQ0FBQyxPQUFPLEVBQUUsR0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDO1FBRTlGLEdBQUcsQ0FBQyxlQUFlLEVBQUMsUUFBUSxFQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUU1QyxNQUFNLFlBQVksR0FBNEIsSUFBSSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsV0FBVyxFQUFFLFVBQVUsQ0FBQyxFQUNsRixDQUFDLENBQTBCLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxJQUFJLEtBQUssT0FBTyxDQUFDLENBQUM7UUFDdEQsR0FBRyxDQUFDLFlBQVksRUFBRSxZQUFZLEVBQUUsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQzVDLE1BQU0sY0FBYyxHQUE0QixJQUFJLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxXQUFXLEVBQUUsVUFBVSxDQUFDLEVBQ3BGLENBQUMsQ0FBMEIsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksS0FBSyxTQUFTLENBQUMsQ0FBQztRQUN4RCxHQUFHLENBQUMsY0FBYyxFQUFFLFlBQVksRUFBRSxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDaEQsRUFBRSxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsWUFBWTthQUMzQixJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDO2FBQ3hDLFNBQVMsQ0FBQyxDQUFDLElBQVksRUFBRSxFQUFFO1lBQzFCLEVBQUUsQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLFlBQVk7aUJBQzdCLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLGtCQUFrQixDQUFDLENBQUM7aUJBQ3hDLFNBQVMsQ0FBQyxDQUFDLE1BQWMsRUFBRSxFQUFFO2dCQUU1QixJQUFJLEtBQUssR0FBRyxDQUFDLElBQUksR0FBRyxHQUFHLEdBQUcsTUFBTSxDQUFDLENBQUMsUUFBUSxFQUFFLENBQUE7Z0JBQzVDLE9BQU8sQ0FBQyxHQUFHLENBQUMsS0FBSyxFQUFFLE9BQU8sQ0FBQyxDQUFBO2dCQUMzQixNQUFNLFdBQVcsR0FBRyxNQUFNLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxXQUFXLEVBQUUsa0NBQWtDLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxZQUFZLENBQUMsQ0FBQztnQkFDM0csSUFBSSxPQUFPLEdBQUcsV0FBVyxFQUN2QixPQUFPLEdBQUcsS0FBSyxFQUNmLEtBQUssR0FBRyxNQUFNLENBQUMsT0FBTyxDQUFDLEVBQ3ZCLFVBQVUsR0FBRyxNQUFNLENBQUMsT0FBTyxDQUFDLENBQUMsTUFBTSxDQUFDLFlBQVksQ0FBQyxFQUNqRCxJQUFJLEdBQUcsTUFBTSxDQUFDLE9BQU8sRUFBRSxPQUFPLENBQUMsQ0FBQztnQkFFbEMsS0FBSyxDQUFDLEdBQUcsQ0FBQztvQkFDUixJQUFJLEVBQUUsSUFBSSxDQUFDLEdBQUcsQ0FBQyxNQUFNLENBQUM7b0JBQ3RCLE1BQU0sRUFBRSxJQUFJLENBQUMsR0FBRyxDQUFDLFFBQVEsQ0FBQztpQkFDM0IsQ0FBQyxDQUFDO2dCQUNILElBQUksSUFBSSxHQUFHLFVBQVUsR0FBRyxHQUFHLEdBQUUsQ0FBQyxJQUFJLEdBQUMsRUFBRSxDQUFBLENBQUMsQ0FBQSxHQUFHLENBQUEsQ0FBQyxDQUFBLEVBQUUsQ0FBQyxHQUFDLElBQUksR0FBRSxHQUFHLEdBQUUsQ0FBQyxNQUFNLEdBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxHQUFDLE1BQU0sR0FBRyxHQUFHLEdBQUMsU0FBUyxDQUFBO2dCQUV2RyxJQUFJLENBQUMsU0FBUyxHQUFHLElBQUksQ0FBQTtZQUN2QixDQUFDLENBQUMsQ0FBQztRQUNQLENBQUMsQ0FBQyxDQUFDO1FBR0wsRUFBRSxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsWUFBWTthQUMzQixJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDO2FBQ3hDLFNBQVMsQ0FBQyxDQUFDLElBQVksRUFBRSxFQUFFO1lBQzFCLEVBQUUsQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLFlBQVk7aUJBQzdCLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLGtCQUFrQixDQUFDLENBQUM7aUJBQ3hDLFNBQVMsQ0FBQyxDQUFDLE1BQWMsRUFBRSxFQUFFO2dCQUU1QixJQUFJLEtBQUssR0FBRyxDQUFDLElBQUksR0FBRyxHQUFHLEdBQUcsTUFBTSxDQUFDLENBQUMsUUFBUSxFQUFFLENBQUE7Z0JBQzVDLE9BQU8sQ0FBQyxHQUFHLENBQUMsS0FBSyxFQUFFLE9BQU8sQ0FBQyxDQUFBO2dCQUMzQixNQUFNLFFBQVEsR0FBRyxNQUFNLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxXQUFXLEVBQUUsa0NBQWtDLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxZQUFZLENBQUMsQ0FBQztnQkFFeEcsSUFBSSxPQUFPLEdBQUcsUUFBUSxFQUN0QixPQUFPLEdBQUcsS0FBSyxFQUNmLEtBQUssR0FBRyxNQUFNLENBQUMsT0FBTyxDQUFDLEVBQ3ZCLFVBQVUsR0FBRyxNQUFNLENBQUMsT0FBTyxDQUFDLENBQUMsTUFBTSxDQUFDLFlBQVksQ0FBQyxFQUNqRCxJQUFJLEdBQUcsTUFBTSxDQUFDLE9BQU8sRUFBRSxPQUFPLENBQUMsQ0FBQztnQkFFbEMsS0FBSyxDQUFDLEdBQUcsQ0FBQztvQkFDUixJQUFJLEVBQUUsSUFBSSxDQUFDLEdBQUcsQ0FBQyxNQUFNLENBQUM7b0JBQ3RCLE1BQU0sRUFBRSxJQUFJLENBQUMsR0FBRyxDQUFDLFFBQVEsQ0FBQztpQkFDM0IsQ0FBQyxDQUFDO2dCQUNILElBQUksSUFBSSxHQUFHLFVBQVUsR0FBRyxHQUFHLEdBQUUsQ0FBQyxJQUFJLEdBQUMsRUFBRSxDQUFBLENBQUMsQ0FBQSxHQUFHLENBQUEsQ0FBQyxDQUFBLEVBQUUsQ0FBQyxHQUFDLElBQUksR0FBRSxHQUFHLEdBQUUsQ0FBQyxNQUFNLEdBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxHQUFDLE1BQU0sR0FBRyxHQUFHLEdBQUMsU0FBUyxDQUFBO2dCQUNyRyxJQUFJLENBQUMsU0FBUyxHQUFHLElBQUksQ0FBQztZQUN4QixDQUFDLENBQUMsQ0FBQztRQUNQLENBQUMsQ0FBQyxDQUFDO0lBRVAsQ0FBQztJQUtELElBQUksVUFBVTtRQUNaLE9BQU8sSUFBSSxDQUFDLGdCQUFnQixJQUFJLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxPQUFPLENBQUM7SUFDaEUsQ0FBQztJQUVELFVBQVUsQ0FBQyxNQUFlO1FBQ3hCLGtDQUFrQztRQUNsQyxJQUFJLE9BQU8sR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDLEtBQUssQ0FBQztRQUNyQyxHQUFHLENBQUMsT0FBTyxFQUFFLG9CQUFvQixFQUFFLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQztRQUNuRCxHQUFHLENBQUMsT0FBTyxFQUFFLG9CQUFvQixFQUFFLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQztRQUVuRCxJQUFJLE1BQU0sRUFBRTtZQUNWLElBQUksQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDO1NBQy9CO2FBQU07WUFDTCxJQUFJLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxTQUFTLENBQUMsQ0FBQztTQUNqQztJQUNILENBQUM7OytIQS9KVSxpQ0FBaUMsbUZBc0JsQyxlQUFlO21IQXRCZCxpQ0FBaUMsMk1DbkI5QyxtdUNBd0JFOzRGRExXLGlDQUFpQztrQkFMN0MsU0FBUzsrQkFDRSxrQ0FBa0M7OzBCQTBCekMsTUFBTTsyQkFBQyxlQUFlOzRDQVIyQixXQUFXO3NCQUE5RCxTQUFTO3VCQUFDLGFBQWEsRUFBRSxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBZnRlclZpZXdJbml0LCBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBJbmplY3QsIE9uSW5pdCwgVmlld0NoaWxkIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IEZvcm1Hcm91cCwgVmFsaWRhdG9ycyB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuaW1wb3J0IHtcclxuICBBYnN0cmFjdENvbXBvbmVudCwgRW50aXR5LCBJUHREeW5hbWljRWxlbWVudENvbmZpZywgTG9va3VwLFxyXG4gIFB0RHluYW1pY0Zvcm1zQ29tcG9uZW50LCBQdER5bmFtaWNGb3Jtc1NlcnZpY2VcclxufSBmcm9tICdAcHJ1dGVjaC9jb21wb25lbnRzJztcclxuaW1wb3J0IHsgTUFUX0RJQUxPR19EQVRBLCBNYXREaWFsb2dSZWYgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9kaWFsb2cnO1xyXG5pbXBvcnQgeyB0YWtlVW50aWwgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XHJcbmltcG9ydCB7IGZpbmQsIGdldCwgc2V0LCByYW5nZSwgbWFwLCBzb21lfSBmcm9tICdsb2Rhc2gnO1xyXG5pbXBvcnQgeyBzY2hlZHVsZU9yUmVzY2hlZHVsZUFjdGlvbkZvcm1Nb2RlbCB9IGZyb20gJy4uLy4uL21vZGVscy9zY2hlZHVsZS1jYWxsLWJhY2stYWN0aW9uLmZvcm1tb2RlbCc7XHJcbmltcG9ydCB7IGNvbmZlcmVuY2VCeVBob25lRm9ybU1vZGVsIH0gZnJvbSAnLi4vLi4vbW9kZWxzL2NvbmZlcmVuY2UtYnktcGhvbmUtZm9ybW1vZGVsJztcclxuaW1wb3J0IG1vbWVudCBmcm9tICdtb21lbnQnO1xyXG5pbXBvcnQgeyBtb21lbnREYXRlRm9ybWF0IH0gZnJvbSAnLi4vLi4vLi4vc2hhcmVkL2NvbnN0YW50cy9kYXRlLWZvcm1hdCc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2xpYi1yZS1zY2hlZHVsZS1jYWxsLWJhY2stYWN0aW9uJyxcclxuICB0ZW1wbGF0ZVVybDogJy4vcmUtc2NoZWR1bGUtY2FsbC1iYWNrLWFjdGlvbi5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmxzOiBbJy4vcmUtc2NoZWR1bGUtY2FsbC1iYWNrLWFjdGlvbi5jb21wb25lbnQuY3NzJ11cclxufSlcclxuZXhwb3J0IGNsYXNzIFJlU2NoZWR1bGVDYWxsQmFja0FjdGlvbkNvbXBvbmVudCBleHRlbmRzIEFic3RyYWN0Q29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBBZnRlclZpZXdJbml0IHtcclxuXHJcblxyXG4gIHJlYWRvbmx5IHJlYXNvbkN0cmxOYW1lOiBzdHJpbmcgPSAncmVhc29ucyc7XHJcbiAgcmVhZG9ubHkgaW5QZXJzb25DdHJsTmFtZTogc3RyaW5nID0gJ3BlcnNvbic7XHJcbiAgcmVhZG9ubHkgb3RoZXJSZWFzb25DdHJsTmFtZTogc3RyaW5nID0gJ290aGVyUmVhc29uJztcclxuICByZWFkb25seSBhcHB0RGF0ZUN0cmxOYW1lOiBzdHJpbmcgPSAnc2NoZWR1bGVkRGF0ZTEnO1xyXG4gIHJlYWRvbmx5IGFwcHREYXRlMUN0cmxOYW1lOiBzdHJpbmcgPSAnc2NoZWR1bGVkRGF0ZTInO1xyXG4gIGhvdXJzOiBudW1iZXJbXTtcclxuICBmaWx0ZXJlZERhdGVzOiBhbnk7XHJcblxyXG4gIGVsZW1lbnRzOiBJUHREeW5hbWljRWxlbWVudENvbmZpZ1tdO1xyXG4gIHNob3dJblBlcnNvbjogYm9vbGVhbiA9IHRydWU7XHJcblxyXG4gIEBWaWV3Q2hpbGQoJ2R5bmFtaWNGb3JtJywgeyBzdGF0aWM6IGZhbHNlIH0pIHB1YmxpYyBkeW5hbWljRm9ybTogUHREeW5hbWljRm9ybXNDb21wb25lbnQ7XHJcbiAgc2NoZWR1bGVEYXRhOiBhbnk7XHJcbiAgbWludXRlczogbnVtYmVyW107XHJcbiAgZGF0ZVRpbWUyOiBhbnk7XHJcbiAgZGF0ZVRpbWUxOiBhbnk7XHJcbiAgY29uc3RydWN0b3IocHVibGljIGRpYWxvZ1JlZjogTWF0RGlhbG9nUmVmPFJlU2NoZWR1bGVDYWxsQmFja0FjdGlvbkNvbXBvbmVudD4sXHJcbiAgICBwcml2YXRlIGR5bmFtaWNGb3JtU2VydmljZTogUHREeW5hbWljRm9ybXNTZXJ2aWNlLFxyXG4gICAgLy8gdHNsaW50OmRpc2FibGUtbmV4dC1saW5lOm5vLWFueVxyXG4gICAgQEluamVjdChNQVRfRElBTE9HX0RBVEEpIHB1YmxpYyBkYXRhOiBhbnkpIHtcclxuICAgIHN1cGVyKCk7XHJcbiAgICB0aGlzLmVsZW1lbnRzID1cclxuICAgICAgdGhpcy5keW5hbWljRm9ybVNlcnZpY2UubWFwRm9ybURhdGEodGhpcy5zY2hlZHVsZURhdGEsIGNvbmZlcmVuY2VCeVBob25lRm9ybU1vZGVsLmVkaXRUZW1wbGF0ZSwgdW5kZWZpbmVkKTtcclxuICAgIHRoaXMuc2hvd0luUGVyc29uID0gZ2V0KGRhdGEsICdzaG93SW5QZXJzb24nLCB0cnVlKTtcclxuICAgIHRoaXMuZmlsdGVyZWREYXRlcyA9IG1hcChnZXQoZGF0YSwndmFsJyksIChkOiBtb21lbnQuTW9tZW50KSA9PiBnZXQoZCwgJ2hvbGlkYXlEYXRlJykpO1xyXG4gIH1cclxuICBuZ0FmdGVyVmlld0luaXQoKTogdm9pZCB7XHJcblxyXG4gIH1cclxuICBuZ09uSW5pdCgpOiB2b2lkIHtcclxuICAgIHRoaXMuaG91cnMgPSByYW5nZSgxLCAyNSk7XHJcbiAgICB0aGlzLm1pbnV0ZXMgPSByYW5nZSgwLCA2MSk7XHJcbiAgfVxyXG5cclxuICBnZXQgZHluYW1pY0Zvcm1Hcm91cCgpOiBGb3JtR3JvdXAge1xyXG4gICAgcmV0dXJuIGdldCh0aGlzLmR5bmFtaWNGb3JtLCAnZHluYW1pY0Zvcm1Hcm91cCcpO1xyXG4gIH1cclxuXHJcblxyXG4gIGFmdGVyT25EZXN0cm95KCk6IHZvaWQge1xyXG4gICAgLy8gdGhyb3cgbmV3IEVycm9yKFwiTWV0aG9kIG5vdCBpbXBsZW1lbnRlZC5cIik7XHJcbiAgfVxyXG5cclxuICBteUZpbHRlciA9IChkYXRlKTogYm9vbGVhbiA9PiB7XHJcbiAgICBpZighZGF0ZSkgcmV0dXJuIGZhbHNlO1xyXG4gICAgIGNvbnN0IGRheSA9IGRhdGUuZGF5KCk7XHJcbiAgICAgbGV0IGlzRmVkZXJhbEhvbGlkYXk6IGJvb2xlYW4gPSBzb21lKHRoaXMuZmlsdGVyZWREYXRlcywgKGY6IERhdGUpID0+IG1vbWVudChmKS5pc1NhbWUobW9tZW50KGRhdGUpKSk7XHJcbiAgICAgaWYoZGF5ID09PSAwIHx8IGRheSA9PT0gNiB8fCBpc0ZlZGVyYWxIb2xpZGF5KXtcclxuICAgICAgIHJldHVybiBmYWxzZVxyXG4gICAgIH1cclxuICAgICByZXR1cm4gdHJ1ZTtcclxuICAgfVxyXG5cclxuICBpbml0RHluYW1pY0Zvcm1FbGVtZW50cygpOiB2b2lkIHtcclxuICAgIGNvbnN0IGZnOiBGb3JtR3JvdXAgPSBnZXQodGhpcy5keW5hbWljRm9ybSwgJ2R5bmFtaWNGb3JtR3JvdXAnKTtcclxuICAgIGNvbnN0IHRvZGF5ID0gbmV3IERhdGUoKTtcclxuICAgIGNvbnN0IGFwcHREYXRlRWxlbWVudDogSVB0RHluYW1pY0VsZW1lbnRDb25maWcgPSBmaW5kKGdldCh0aGlzLmR5bmFtaWNGb3JtLCAnZWxlbWVudHMnKSxcclxuICAgIChlOiBJUHREeW5hbWljRWxlbWVudENvbmZpZykgPT4gZS5uYW1lID09PSB0aGlzLmFwcHREYXRlQ3RybE5hbWUpO1xyXG4gICAgc2V0KGFwcHREYXRlRWxlbWVudCwgJ21pbicsIG5ldyBEYXRlKCkpO1xyXG4gICAgc2V0KGFwcHREYXRlRWxlbWVudCwnbWF4JyxuZXcgRGF0ZSh0b2RheS5nZXRGdWxsWWVhcigpLHRvZGF5LmdldE1vbnRoKCksIHRvZGF5LmdldERhdGUoKSszMCkpO1xyXG5cclxuICAgIHNldChhcHB0RGF0ZUVsZW1lbnQsJ2ZpbHRlcicsdGhpcy5teUZpbHRlcik7XHJcblxyXG4gICAgY29uc3QgaG91cjFFbGVtZW50OiBJUHREeW5hbWljRWxlbWVudENvbmZpZyA9IGZpbmQoZ2V0KHRoaXMuZHluYW1pY0Zvcm0sICdlbGVtZW50cycpLFxyXG4gICAgICAoZTogSVB0RHluYW1pY0VsZW1lbnRDb25maWcpID0+IGUubmFtZSA9PT0gJ2hvdXIxJyk7XHJcbiAgICBzZXQoaG91cjFFbGVtZW50LCAnc2VsZWN0aW9ucycsIHRoaXMuaG91cnMpO1xyXG4gICAgY29uc3QgbWludXRlMUVsZW1lbnQ6IElQdER5bmFtaWNFbGVtZW50Q29uZmlnID0gZmluZChnZXQodGhpcy5keW5hbWljRm9ybSwgJ2VsZW1lbnRzJyksXHJcbiAgICAgIChlOiBJUHREeW5hbWljRWxlbWVudENvbmZpZykgPT4gZS5uYW1lID09PSAnbWludXRlMScpO1xyXG4gICAgc2V0KG1pbnV0ZTFFbGVtZW50LCAnc2VsZWN0aW9ucycsIHRoaXMubWludXRlcyk7XHJcblxyXG4gICAgY29uc3QgYXBwdERhdGUxRWxlbWVudDogSVB0RHluYW1pY0VsZW1lbnRDb25maWcgPSBmaW5kKGdldCh0aGlzLmR5bmFtaWNGb3JtLCAnZWxlbWVudHMnKSxcclxuICAgIChlOiBJUHREeW5hbWljRWxlbWVudENvbmZpZykgPT4gZS5uYW1lID09PSB0aGlzLmFwcHREYXRlMUN0cmxOYW1lKTtcclxuICAgIHNldChhcHB0RGF0ZTFFbGVtZW50LCAnbWluJywgbmV3IERhdGUoKSk7XHJcbiAgICBzZXQoYXBwdERhdGVFbGVtZW50LCdtYXgnLG5ldyBEYXRlKHRvZGF5LmdldEZ1bGxZZWFyKCksdG9kYXkuZ2V0TW9udGgoKSwgdG9kYXkuZ2V0RGF0ZSgpKzMwKSk7XHJcblxyXG4gICAgc2V0KGFwcHREYXRlRWxlbWVudCwnZmlsdGVyJyx0aGlzLm15RmlsdGVyKTtcclxuXHJcbiAgICBjb25zdCBob3VyMkVsZW1lbnQ6IElQdER5bmFtaWNFbGVtZW50Q29uZmlnID0gZmluZChnZXQodGhpcy5keW5hbWljRm9ybSwgJ2VsZW1lbnRzJyksXHJcbiAgICAgIChlOiBJUHREeW5hbWljRWxlbWVudENvbmZpZykgPT4gZS5uYW1lID09PSAnaG91cjInKTtcclxuICAgIHNldChob3VyMkVsZW1lbnQsICdzZWxlY3Rpb25zJywgdGhpcy5ob3Vycyk7XHJcbiAgICBjb25zdCBtaW51dGUyRWxlbWVudDogSVB0RHluYW1pY0VsZW1lbnRDb25maWcgPSBmaW5kKGdldCh0aGlzLmR5bmFtaWNGb3JtLCAnZWxlbWVudHMnKSxcclxuICAgICAgKGU6IElQdER5bmFtaWNFbGVtZW50Q29uZmlnKSA9PiBlLm5hbWUgPT09ICdtaW51dGUyJyk7XHJcbiAgICBzZXQobWludXRlMkVsZW1lbnQsICdzZWxlY3Rpb25zJywgdGhpcy5taW51dGVzKTtcclxuICAgIGZnLmNvbnRyb2xzLmhvdXIxLnZhbHVlQ2hhbmdlc1xyXG4gICAgICAucGlwZSh0YWtlVW50aWwodGhpcy5jb21wb25lbnREZXN0cm95ZWQpKVxyXG4gICAgICAuc3Vic2NyaWJlKChob3VyOiBudW1iZXIpID0+IHtcclxuICAgICAgICBmZy5jb250cm9scy5taW51dGUxLnZhbHVlQ2hhbmdlc1xyXG4gICAgICAgICAgLnBpcGUodGFrZVVudGlsKHRoaXMuY29tcG9uZW50RGVzdHJveWVkKSlcclxuICAgICAgICAgIC5zdWJzY3JpYmUoKG1pbnV0ZTogbnVtYmVyKSA9PiB7XHJcblxyXG4gICAgICAgICAgICBsZXQgdGltZTEgPSAoaG91ciArICc6JyArIG1pbnV0ZSkudG9TdHJpbmcoKVxyXG4gICAgICAgICAgICBjb25zb2xlLmxvZyh0aW1lMSwgXCJ0aW1lMVwiKVxyXG4gICAgICAgICAgICBjb25zdCBkZXRhaWxzRm9ybSA9IG1vbWVudChnZXQodGhpcy5keW5hbWljRm9ybSwgJ2R5bmFtaWNGb3JtLnZhbHVlLnNjaGVkdWxlZERhdGUxJykpLmZvcm1hdCgnTU0tREQtWVlZWScpO1xyXG4gICAgICAgICAgICBsZXQgZGF0ZVN0ciA9IGRldGFpbHNGb3JtLFxyXG4gICAgICAgICAgICAgIHRpbWVTdHIgPSB0aW1lMSxcclxuICAgICAgICAgICAgICBkYXRlMSA9IG1vbWVudChkYXRlU3RyKSxcclxuICAgICAgICAgICAgICBkYXRlRm9ybWF0ID0gbW9tZW50KGRhdGVTdHIpLmZvcm1hdCgneXl5eS1NTS1ERCcpLFxyXG4gICAgICAgICAgICAgIHRpbWUgPSBtb21lbnQodGltZVN0ciwgJ0hIOm1tJyk7XHJcblxyXG4gICAgICAgICAgICBkYXRlMS5zZXQoe1xyXG4gICAgICAgICAgICAgIGhvdXI6IHRpbWUuZ2V0KCdob3VyJyksXHJcbiAgICAgICAgICAgICAgbWludXRlOiB0aW1lLmdldCgnbWludXRlJyksXHJcbiAgICAgICAgICAgIH0pO1xyXG4gICAgICAgICAgICBsZXQgZGF0ZSA9IGRhdGVGb3JtYXQgKyAnVCcrIChob3VyPDEwPycwJzonJykraG91ciArJzonKyAobWludXRlPCAxMCA/ICcwJyA6ICcnKSttaW51dGUgKyAnOicrJzAwLjAwMFonXHJcblxyXG4gICAgICAgICAgICB0aGlzLmRhdGVUaW1lMSA9IGRhdGVcclxuICAgICAgICAgIH0pO1xyXG4gICAgICB9KTtcclxuXHJcblxyXG4gICAgZmcuY29udHJvbHMuaG91cjIudmFsdWVDaGFuZ2VzXHJcbiAgICAgIC5waXBlKHRha2VVbnRpbCh0aGlzLmNvbXBvbmVudERlc3Ryb3llZCkpXHJcbiAgICAgIC5zdWJzY3JpYmUoKGhvdXI6IG51bWJlcikgPT4ge1xyXG4gICAgICAgIGZnLmNvbnRyb2xzLm1pbnV0ZTIudmFsdWVDaGFuZ2VzXHJcbiAgICAgICAgICAucGlwZSh0YWtlVW50aWwodGhpcy5jb21wb25lbnREZXN0cm95ZWQpKVxyXG4gICAgICAgICAgLnN1YnNjcmliZSgobWludXRlOiBudW1iZXIpID0+IHtcclxuXHJcbiAgICAgICAgICAgIGxldCB0aW1lMSA9IChob3VyICsgJzonICsgbWludXRlKS50b1N0cmluZygpXHJcbiAgICAgICAgICAgIGNvbnNvbGUubG9nKHRpbWUxLCBcInRpbWUxXCIpXHJcbiAgICAgICAgICAgIGNvbnN0IGRhdGVGb3JtID0gbW9tZW50KGdldCh0aGlzLmR5bmFtaWNGb3JtLCAnZHluYW1pY0Zvcm0udmFsdWUuc2NoZWR1bGVkRGF0ZTInKSkuZm9ybWF0KCdNTS1ERC1ZWVlZJyk7XHJcblxyXG4gICAgICAgICAgICBsZXQgZGF0ZVN0ciA9IGRhdGVGb3JtLFxyXG4gICAgICAgICAgICB0aW1lU3RyID0gdGltZTEsXHJcbiAgICAgICAgICAgIGRhdGUxID0gbW9tZW50KGRhdGVTdHIpLFxyXG4gICAgICAgICAgICBkYXRlRm9ybWF0ID0gbW9tZW50KGRhdGVTdHIpLmZvcm1hdCgneXl5eS1NTS1ERCcpLFxyXG4gICAgICAgICAgICB0aW1lID0gbW9tZW50KHRpbWVTdHIsICdISDptbScpO1xyXG5cclxuICAgICAgICAgIGRhdGUxLnNldCh7XHJcbiAgICAgICAgICAgIGhvdXI6IHRpbWUuZ2V0KCdob3VyJyksXHJcbiAgICAgICAgICAgIG1pbnV0ZTogdGltZS5nZXQoJ21pbnV0ZScpLFxyXG4gICAgICAgICAgfSk7XHJcbiAgICAgICAgICBsZXQgZGF0ZSA9IGRhdGVGb3JtYXQgKyAnVCcrIChob3VyPDEwPycwJzonJykraG91ciArJzonKyAobWludXRlPCAxMCA/ICcwJyA6ICcnKSttaW51dGUgKyAnOicrJzAwLjAwMFonXHJcbiAgICAgICAgICAgIHRoaXMuZGF0ZVRpbWUyID0gZGF0ZTtcclxuICAgICAgICAgIH0pO1xyXG4gICAgICB9KTtcclxuXHJcbiAgfVxyXG5cclxuXHJcblxyXG5cclxuICBnZXQgaXNEaXNhYmxlZCgpOiBib29sZWFuIHtcclxuICAgIHJldHVybiB0aGlzLmR5bmFtaWNGb3JtR3JvdXAgJiYgdGhpcy5keW5hbWljRm9ybUdyb3VwLmludmFsaWQ7XHJcbiAgfVxyXG5cclxuICBjbG9zZU1vZGFsKGFjdGlvbjogYm9vbGVhbik6IHZvaWQge1xyXG4gICAgLy8gdHNsaW50OmRpc2FibGUtbmV4dC1saW5lOm5vLWFueVxyXG4gICAgbGV0IHBheUxvYWQgPSB0aGlzLmR5bmFtaWNGb3JtLnZhbHVlO1xyXG4gICAgc2V0KHBheUxvYWQsICdzY2hlZHVsZWREYXRlVGltZTEnLCB0aGlzLmRhdGVUaW1lMSk7XHJcbiAgICBzZXQocGF5TG9hZCwgJ3NjaGVkdWxlZERhdGVUaW1lMicsIHRoaXMuZGF0ZVRpbWUyKTtcclxuXHJcbiAgICBpZiAoYWN0aW9uKSB7XHJcbiAgICAgIHRoaXMuZGlhbG9nUmVmLmNsb3NlKHBheUxvYWQpO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgdGhpcy5kaWFsb2dSZWYuY2xvc2UodW5kZWZpbmVkKTtcclxuICAgIH1cclxuICB9XHJcblxyXG5cclxufVxyXG4iLCI8cHJ1dGVjaC1kaWFsb2ctYm94IGNsYXNzPVwicHJ1dGVjaC1kaWFsb2ctYm94XCI+XHJcbiAgICA8ZGl2IGNsYXNzPVwiaGVhZGVyXCI+UmUgU2NoZWR1bGUgQ29uZmVyZW5jZSBCeSBQaG9uZTwvZGl2PlxyXG4gICAgPGRpdiBjbGFzcz1cImJvZHkgcHJ1dGVjaC1kaWFsb2ctY29udGVudFwiIGZ4TGF5b3V0PVwiY29sdW1uXCIgZnhMYXlvdXRBbGlnbj1cInN0YXJ0IHN0cmV0Y2hcIiBmeExheW91dEdhcD1cIjEwcHhcIj5cclxuICBcclxuICAgICAgPHBydXRlY2gtZHluYW1pYy1mb3JtcyAqbmdJZj1cImVsZW1lbnRzXCIgKGluaXQpPVwiaW5pdER5bmFtaWNGb3JtRWxlbWVudHMoKVwiIFtlbGVtZW50c109XCJlbGVtZW50c1wiICNkeW5hbWljRm9ybT5cclxuICAgICAgICA8bmctdGVtcGxhdGUgbGV0LWVsZW1lbnQgbmdGb3IgW25nRm9yT2ZdPVwiZWxlbWVudHNcIj5cclxuICAgICAgICAgIDxuZy10ZW1wbGF0ZSBsZXQtY29udHJvbD1cImNvbnRyb2xcIiBbdGREeW5hbWljRm9ybXNFcnJvcl09XCJlbGVtZW50Lm5hbWVcIj5cclxuICAgICAgICAgICAgPHNwYW4gKm5nSWY9XCJjb250cm9sLnRvdWNoZWQgfHwgIWNvbnRyb2wucHJpc3RpbmVcIj5cclxuICAgICAgICAgICAgICA8c3BhbiAqbmdJZj1cImNvbnRyb2wuaGFzRXJyb3IoJ3JlcXVpcmVkJylcIj5SZXF1aXJlZDwvc3Bhbj5cclxuICAgICAgICAgICAgICA8c3BhbiAqbmdJZj1cImNvbnRyb2wuaGFzRXJyb3IoJ2ludmFsaWRTZWxlY3Rpb24nKVwiPkludmFsaWQgU2VsZWN0aW9uPC9zcGFuPlxyXG4gICAgICAgICAgICA8L3NwYW4+XHJcbiAgICAgICAgICA8L25nLXRlbXBsYXRlPlxyXG4gICAgICAgIDwvbmctdGVtcGxhdGU+XHJcbiAgICAgIDwvcHJ1dGVjaC1keW5hbWljLWZvcm1zPlxyXG4gICAgPC9kaXY+XHJcbiAgICA8ZGl2IGNsYXNzPVwiZGlhbG9nYm94Zm9vdGVyXCI+XHJcbiAgICAgIDxidXR0b24gbWF0LWZsYXQtYnV0dG9uIChjbGljayk9XCJjbG9zZU1vZGFsKGZhbHNlKVwiPkVYSVQ8L2J1dHRvbj5cclxuICAgICAgPGJ1dHRvbiBtYXQtZmxhdC1idXR0b25cclxuICAgICAgICAgICAgICBjb2xvcj1cInByaW1hcnlcIlxyXG4gICAgICAgICAgICAgIChjbGljayk9XCJjbG9zZU1vZGFsKHRydWUpXCJcclxuICAgICAgICAgICAgICBbZGlzYWJsZWRdPVwiaXNEaXNhYmxlZFwiPlJFU0NIRURVTEVDQUxMXHJcbiAgICAgIDwvYnV0dG9uPlxyXG4gICAgPC9kaXY+XHJcbiAgPC9wcnV0ZWNoLWRpYWxvZy1ib3g+XHJcbiAgIl19
|