@colijnit/corecomponents_v12 255.1.11 → 255.1.12
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/bundles/colijnit-corecomponents_v12.umd.js +27 -13
- package/bundles/colijnit-corecomponents_v12.umd.js.map +1 -1
- package/colijnit-corecomponents_v12-255.1.11.tgz +0 -0
- package/colijnit-corecomponents_v12.metadata.json +1 -1
- package/esm2015/lib/components/hour-scheduling/hour-scheduling.component.js +24 -12
- package/esm2015/lib/components/input-number-picker/input-number-picker.component.js +2 -1
- package/esm2015/lib/core/enum/core-components-icon.enum.js +1 -1
- package/esm2015/lib/core/enum/filterItem-mode.enum.js +3 -3
- package/fesm2015/colijnit-corecomponents_v12.js +25 -12
- package/fesm2015/colijnit-corecomponents_v12.js.map +1 -1
- package/lib/components/hour-scheduling/hour-scheduling.component.d.ts +4 -3
- package/lib/components/hour-scheduling/style/_layout.scss +2 -0
- package/package.json +1 -1
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
import { Component, Input, HostBinding, ViewEncapsulation, ChangeDetectorRef, Output, EventEmitter, } from '@angular/core';
|
|
1
|
+
import { Component, Input, HostBinding, ViewEncapsulation, ChangeDetectorRef, Output, EventEmitter, NgZone, ChangeDetectionStrategy, } from '@angular/core';
|
|
2
2
|
import { DatePipe } from '@angular/common';
|
|
3
3
|
export class HourSchedulingComponent {
|
|
4
|
-
constructor(cdRef, datePipe) {
|
|
4
|
+
constructor(cdRef, datePipe, zone) {
|
|
5
5
|
this.cdRef = cdRef;
|
|
6
6
|
this.datePipe = datePipe;
|
|
7
|
-
this.
|
|
7
|
+
this.zone = zone;
|
|
8
8
|
this.hourLabels = [];
|
|
9
9
|
this.scheduledObjects = {};
|
|
10
10
|
this.activeHour = null;
|
|
@@ -13,14 +13,15 @@ export class HourSchedulingComponent {
|
|
|
13
13
|
this.customTemplateUsed = false;
|
|
14
14
|
this.timeChangeEvent = new EventEmitter();
|
|
15
15
|
this.newObjectPlanEvent = new EventEmitter();
|
|
16
|
-
|
|
16
|
+
this.showClass = true;
|
|
17
|
+
document.addEventListener('click', () => this.onDocumentClick);
|
|
17
18
|
}
|
|
18
19
|
ngOnInit() {
|
|
19
20
|
this.generateTimeBlocks();
|
|
20
21
|
this.generateScheduledObjects();
|
|
21
22
|
}
|
|
22
23
|
ngOnDestroy() {
|
|
23
|
-
document.removeEventListener('click', this.onDocumentClick
|
|
24
|
+
document.removeEventListener('click', () => this.onDocumentClick);
|
|
24
25
|
}
|
|
25
26
|
generateTimeBlocks() {
|
|
26
27
|
let startUnix = !this.childProp ? this.dateToUnixEpoch(new Date(this.schedule[this.startTimeProp])) : this.dateToUnixEpoch(new Date(this.schedule[this.childProp][this.startTimeProp]));
|
|
@@ -65,12 +66,21 @@ export class HourSchedulingComponent {
|
|
|
65
66
|
}
|
|
66
67
|
onDragOver(event) {
|
|
67
68
|
event.preventDefault();
|
|
68
|
-
|
|
69
|
-
|
|
69
|
+
event.stopPropagation();
|
|
70
|
+
this.zone.runOutsideAngular(() => {
|
|
71
|
+
const currentTarget = event.currentTarget;
|
|
72
|
+
if (!currentTarget.classList.contains('drag-over')) {
|
|
73
|
+
currentTarget.classList.add('drag-over');
|
|
74
|
+
}
|
|
75
|
+
});
|
|
70
76
|
}
|
|
71
77
|
onDragLeave(event) {
|
|
72
|
-
|
|
73
|
-
|
|
78
|
+
event.preventDefault();
|
|
79
|
+
event.stopPropagation();
|
|
80
|
+
this.zone.runOutsideAngular(() => {
|
|
81
|
+
const currentTarget = event.currentTarget;
|
|
82
|
+
currentTarget.classList.remove('drag-over');
|
|
83
|
+
});
|
|
74
84
|
}
|
|
75
85
|
onDrop(event, hour) {
|
|
76
86
|
event.preventDefault();
|
|
@@ -241,12 +251,14 @@ HourSchedulingComponent.decorators = [
|
|
|
241
251
|
</div>
|
|
242
252
|
</div>
|
|
243
253
|
`,
|
|
254
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
244
255
|
encapsulation: ViewEncapsulation.None
|
|
245
256
|
},] }
|
|
246
257
|
];
|
|
247
258
|
HourSchedulingComponent.ctorParameters = () => [
|
|
248
259
|
{ type: ChangeDetectorRef },
|
|
249
|
-
{ type: DatePipe }
|
|
260
|
+
{ type: DatePipe },
|
|
261
|
+
{ type: NgZone }
|
|
250
262
|
];
|
|
251
263
|
HourSchedulingComponent.propDecorators = {
|
|
252
264
|
schedule: [{ type: Input }],
|
|
@@ -259,6 +271,6 @@ HourSchedulingComponent.propDecorators = {
|
|
|
259
271
|
idProp: [{ type: Input }],
|
|
260
272
|
timeChangeEvent: [{ type: Output }],
|
|
261
273
|
newObjectPlanEvent: [{ type: Output }],
|
|
262
|
-
|
|
274
|
+
showClass: [{ type: HostBinding, args: ['class.co-hour-scheduling',] }]
|
|
263
275
|
};
|
|
264
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaG91ci1zY2hlZHVsaW5nLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmVjb21wb25lbnRzL3NyYy9saWIvY29tcG9uZW50cy9ob3VyLXNjaGVkdWxpbmcvaG91ci1zY2hlZHVsaW5nLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsU0FBUyxFQUNULEtBQUssRUFFTCxXQUFXLEVBQ1gsaUJBQWlCLEVBQ2pCLGlCQUFpQixFQUNKLE1BQU0sRUFBRSxZQUFZLEdBQ2xDLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBQyxRQUFRLEVBQUMsTUFBTSxpQkFBaUIsQ0FBQztBQStGekMsTUFBTSxPQUFPLHVCQUF1QjtJQTBCbEMsWUFBb0IsS0FBd0IsRUFBVSxRQUFrQjtRQUFwRCxVQUFLLEdBQUwsS0FBSyxDQUFtQjtRQUFVLGFBQVEsR0FBUixRQUFRLENBQVU7UUF4QmpFLGNBQVMsR0FBRyxJQUFJLENBQUM7UUFDakIsZUFBVSxHQUFhLEVBQUUsQ0FBQztRQUMxQixxQkFBZ0IsR0FBMkMsRUFBRSxDQUFDO1FBQzlELGVBQVUsR0FBa0IsSUFBSSxDQUFDO1FBQ2pDLG1CQUFjLEdBQWtCLElBQUksQ0FBQztRQUVwQyxrQkFBYSxHQUFlLElBQUksQ0FBQztRQVF6Qix1QkFBa0IsR0FBWSxLQUFLLENBQUM7UUFHbkMsb0JBQWUsR0FBeUIsSUFBSSxZQUFZLEVBQVUsQ0FBQztRQUNuRSx1QkFBa0IsR0FBd0QsSUFBSSxZQUFZLEVBR3ZHLENBQUM7UUFJSCxRQUFRLENBQUMsZ0JBQWdCLENBQUMsT0FBTyxFQUFFLElBQUksQ0FBQyxlQUFlLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUM7SUFDdEUsQ0FBQztJQUVELFFBQVE7UUFDTixJQUFJLENBQUMsa0JBQWtCLEVBQUUsQ0FBQztRQUMxQixJQUFJLENBQUMsd0JBQXdCLEVB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SzswQkFDTCxLQUFLO3dCQUNMLEtBQUs7NkJBQ0wsS0FBSztpQ0FDTCxLQUFLO3FCQUNMLEtBQUs7OEJBRUwsTUFBTTtpQ0FDTixNQUFNO2lDQW1CTixXQUFXLFNBQUMsMEJBQTBCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcclxuICBDb21wb25lbnQsXHJcbiAgSW5wdXQsXHJcbiAgT25Jbml0LFxyXG4gIEhvc3RCaW5kaW5nLFxyXG4gIFZpZXdFbmNhcHN1bGF0aW9uLFxyXG4gIENoYW5nZURldGVjdG9yUmVmLFxyXG4gIFRlbXBsYXRlUmVmLCBPdXRwdXQsIEV2ZW50RW1pdHRlcixcclxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHtEYXRlUGlwZX0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcclxuaW1wb3J0IHtPVVRQVVR9IGZyb20gXCJ0aHJlZS9leGFtcGxlcy9qc20vcG9zdHByb2Nlc3NpbmcvU0FPUGFzc1wiO1xyXG5pbXBvcnQge21pbn0gZnJvbSBcInRocmVlL2V4YW1wbGVzL2pzbS9ub2Rlcy9tYXRoL01hdGhOb2RlXCI7XHJcbmltcG9ydCB7cGFyc2V9IGZyb20gXCJAYW5ndWxhci9jb21waWxlci9zcmMvcmVuZGVyMy92aWV3L3N0eWxlX3BhcnNlclwiO1xyXG5cclxuaW50ZXJmYWNlIFNjaGVkdWxpbmdPYmplY3Qge1xyXG4gIHN0YXJ0OiBudW1iZXI7XHJcbiAgZW5kOiBudW1iZXI7XHJcbiAgdGl0bGU/OiBzdHJpbmc7XHJcbiAgc3ViVGl0bGU/OiBzdHJpbmc7XHJcblxyXG4gIFtrZXk6IHN0cmluZ106IGFueTsgLy8gQWxsb3dzIGR5bmFtaWMgcHJvcGVydGllcyBpbmNsdWRpbmcgdW5pcXVlIGlkZW50aWZpZXJzXHJcbn1cclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnY28taG91ci1zY2hlZHVsaW5nJyxcclxuICB0ZW1wbGF0ZTogYFxyXG4gICAgPGRpdiBjbGFzcz1cInRpbWUtYmxvY2tcIiAqbmdGb3I9XCJsZXQgaG91ciBvZiBob3VyTGFiZWxzXCI+XHJcbiAgICAgIDxkaXYgY2xhc3M9XCJob3VyLWxhYmVsXCI+PHNwYW4gW3RleHRDb250ZW50XT1cImhvdXJcIj48L3NwYW4+PC9kaXY+XHJcbiAgICAgIDxkaXYgY2xhc3M9XCJvYmplY3QtZGlzcGxheVwiPlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJmaXJzdC1oYWxmLWhvdXIgb2JqZWN0LWhhbGZcIlxyXG4gICAgICAgICAgICAgW25nQ2xhc3NdPVwieydoYXMtb2JqZWN0cyc6IHNjaGVkdWxlZE9iamVjdHNbaG91cl0/Lmxlbmd0aCA+IDAsICdhY3RpdmUnOiBhY3RpdmVIYWxmSG91ciA9PT0gaG91ciArICctZmlyc3RIYWxmJ31cIlxyXG4gICAgICAgICAgICAgKGRyYWdvdmVyKT1cIm9uRHJhZ092ZXIoJGV2ZW50KVwiXHJcbiAgICAgICAgICAgICAoZHJhZ2xlYXZlKT1cIm9uRHJhZ0xlYXZlKCRldmVudClcIlxyXG4gICAgICAgICAgICAgKGNsaWNrKT1cIm9uT2JqZWN0RGlzcGxheUNsaWNrKGhvdXIsICdmaXJzdEhhbGYnKVwiXHJcbiAgICAgICAgICAgICAoZHJvcCk9XCJvbkRyb3AoJGV2ZW50LCBob3VyKVwiPlxyXG4gICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIiFjdXN0b21UZW1wbGF0ZVVzZWRcIj5cclxuICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cInNjaGVkdWxlZE9iamVjdHNbaG91cl1cIj5cclxuICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImhpZGRlbi1ob3VyLWxhYmVsXCIgW2hpZGRlbl09XCJ0cnVlXCIgW3RleHRDb250ZW50XT1cImhvdXJcIj48L3NwYW4+XHJcbiAgICAgICAgICAgICAgPGRpdlxyXG4gICAgICAgICAgICAgICAgKm5nRm9yPVwibGV0IG9iaiBvZiBzY2hlZHVsZWRPYmplY3RzW2hvdXJdXCJcclxuICAgICAgICAgICAgICAgIGNsYXNzPVwic2NoZWR1bGVkLW9iamVjdFwiXHJcbiAgICAgICAgICAgICAgICBbZHJhZ2dhYmxlXT1cInRydWVcIlxyXG4gICAgICAgICAgICAgICAgKGRyYWdzdGFydCk9XCJvbkRyYWdTdGFydCgkZXZlbnQsIG9iailcIlxyXG4gICAgICAgICAgICAgID5cclxuICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiaGlkZGVuLWhvdXItbGFiZWxcIiBbaGlkZGVuXT1cInRydWVcIiBbdGV4dENvbnRlbnRdPVwiYWRkTWludXRlcyhob3VyKVwiPjwvc3Bhbj5cclxuICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwidGl0bGVcIiBbdGV4dENvbnRlbnRdPVwib2JqLnRpdGxlXCI+PC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJzdWItdGl0bGVcIiBbdGV4dENvbnRlbnRdPVwib2JqLnN1YlRpdGxlXCI+PC9zcGFuPlxyXG4gICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgICAgICAgIDwvbmctY29udGFpbmVyPlxyXG5cclxuICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJjdXN0b21UZW1wbGF0ZVVzZWRcIj5cclxuICAgICAgICAgICAgPG5nLXRlbXBsYXRlXHJcbiAgICAgICAgICAgICAgW25nVGVtcGxhdGVPdXRsZXRdPVwiY3VzdG9tVGVtcGxhdGVcIlxyXG4gICAgICAgICAgICAgIFtuZ1RlbXBsYXRlT3V0bGV0Q29udGV4dF09XCJ7XHJcbiAgICAgICAgICAgICAgaG91cjogaG91cixcclxuICAgICAgICAgICAgICBoaWRkZW5Ib3VyOiBob3VyLFxyXG4gICAgICAgICAgICAgIG9iamVjdHM6IHNjaGVkdWxlZE9iamVjdHNbaG91cl1cclxuICAgICAgICAgICAgfVwiXHJcbiAgICAgICAgICAgID5cclxuICAgICAgICAgICAgPC9uZy10ZW1wbGF0ZT5cclxuICAgICAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwic2Vjb25kLWhhbGYtaG91ciBvYmplY3QtaGFsZlwiXHJcbiAgICAgICAgICAgICBbbmdDbGFzc109XCJ7J2hhcy1vYmplY3RzJzogc2NoZWR1bGVkT2JqZWN0c1thZGRNaW51dGVzKGhvdXIpXT8ubGVuZ3RoID4gMCwgJ2FjdGl2ZSc6IGFjdGl2ZUhhbGZIb3VyID09PSBob3VyICsgJy1zZWNvbmRIYWxmJ31cIlxyXG4gICAgICAgICAgICAgKGRyYWdvdmVyKT1cIm9uRHJhZ092ZXIoJGV2ZW50KVwiXHJcbiAgICAgICAgICAgICAoZHJhZ2xlYXZlKT1cIm9uRHJhZ0xlYXZlKCRldmVudClcIlxyXG4gICAgICAgICAgICAgKGNsaWNrKT1cIm9uT2JqZWN0RGlzcGxheUNsaWNrKGhvdXIsICdzZWNvbmRIYWxmJylcIlxyXG4gICAgICAgICAgICAgKGRyb3ApPVwib25Ecm9wKCRldmVudCwgYWRkTWludXRlcyhob3VyKSlcIj5cclxuICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCIhY3VzdG9tVGVtcGxhdGVVc2VkXCI+XHJcbiAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJzY2hlZHVsZWRPYmplY3RzW2FkZE1pbnV0ZXMoaG91cildXCI+XHJcbiAgICAgICAgICAgICAgPGRpdlxyXG4gICAgICAgICAgICAgICAgKm5nRm9yPVwibGV0IG9iaiBvZiBzY2hlZHVsZWRPYmplY3RzW2FkZE1pbnV0ZXMoaG91cildXCJcclxuICAgICAgICAgICAgICAgIGNsYXNzPVwic2NoZWR1bGVkLW9iamVjdFwiXHJcbiAgICAgICAgICAgICAgICBbZHJhZ2dhYmxlXT1cInRydWVcIlxyXG4gICAgICAgICAgICAgICAgKGRyYWdzdGFydCk9XCJvbkRyYWdTdGFydCgkZXZlbnQsIG9iailcIlxyXG4gICAgICAgICAgICAgID5cclxuICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwidGl0bGVcIiBbdGV4dENvbnRlbnRdPVwib2JqLnRpdGxlXCI+PC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJzdWItdGl0bGVcIiBbdGV4dENvbnRlbnRdPVwib2JqLnN1YlRpdGxlXCI+PC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJoaWRkZW4taG91ci1sYWJlbFwiIFtoaWRkZW5dPVwidHJ1ZVwiIFt0ZXh0Q29udGVudF09XCJhZGRNaW51dGVzKGhvdXIpXCI+PC9zcGFuPlxyXG4gICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgICAgICAgIDwvbmctY29udGFpbmVyPlxyXG5cclxuICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJjdXN0b21UZW1wbGF0ZVVzZWRcIj5cclxuICAgICAgICAgICAgPG5nLXRlbXBsYXRlXHJcbiAgICAgICAgICAgICAgW25nVGVtcGxhdGVPdXRsZXRdPVwiY3VzdG9tVGVtcGxhdGVcIlxyXG4gICAgICAgICAgICAgIFtuZ1RlbXBsYXRlT3V0bGV0Q29udGV4dF09XCJ7XHJcbiAgICAgICAgICAgICAgaG91cjogaG91cixcclxuICAgICAgICAgICAgICBoaWRkZW5Ib3VyOiBhZGRNaW51dGVzKGhvdXIpLFxyXG4gICAgICAgICAgICAgIG9iamVjdHM6IHNjaGVkdWxlZE9iamVjdHNbYWRkTWludXRlcyhob3VyKV1cclxuICAgICAgICAgICAgfVwiXHJcbiAgICAgICAgICAgID5cclxuICAgICAgICAgICAgPC9uZy10ZW1wbGF0ZT5cclxuICAgICAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgICAgIDwvZGl2PlxyXG5cclxuXHJcbiAgICAgIDwvZGl2PlxyXG4gICAgPC9kaXY+XHJcbiAgYCxcclxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgSG91clNjaGVkdWxpbmdDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xyXG5cclxuICBwdWJsaWMgc2hvd0NsYXNzID0gdHJ1ZTtcclxuICBwdWJsaWMgaG91ckxhYmVsczogc3RyaW5nW10gPSBbXTtcclxuICBwdWJsaWMgc2NoZWR1bGVkT2JqZWN0czogeyBbaG91cjogc3RyaW5nXTogU2NoZWR1bGluZ09iamVjdFtdIH0gPSB7fTtcclxuICBwdWJsaWMgYWN0aXZlSG91cjogc3RyaW5nIHwgbnVsbCA9IG51bGw7XHJcbiAgcHVibGljIGFjdGl2ZUhhbGZIb3VyOiBzdHJpbmcgfCBudWxsID0gbnVsbDtcclxuXHJcbiAgcHJpdmF0ZSBkcmFnZ2VkT2JqZWN0OiBhbnkgfCBudWxsID0gbnVsbDtcclxuXHJcbiAgQElucHV0KCkgcHVibGljIHNjaGVkdWxlOiBhbnk7XHJcbiAgQElucHV0KCkgcHVibGljIHN0YXJ0VGltZVByb3A6IHN0cmluZztcclxuICBASW5wdXQoKSBwdWJsaWMgZW5kVGltZVByb3A6IHN0cmluZztcclxuICBASW5wdXQoKSBwdWJsaWMgb2JqZWN0c1Byb3A6IHN0cmluZztcclxuICBASW5wdXQoKSBwdWJsaWMgY2hpbGRQcm9wOiBzdHJpbmc7XHJcbiAgQElucHV0KCkgcHVibGljIGN1c3RvbVRlbXBsYXRlOiBUZW1wbGF0ZVJlZjxhbnk+O1xyXG4gIEBJbnB1dCgpIHB1YmxpYyBjdXN0b21UZW1wbGF0ZVVzZWQ6IGJvb2xlYW4gPSBmYWxzZTtcclxuICBASW5wdXQoKSBwdWJsaWMgaWRQcm9wOiBzdHJpbmc7ICAvLyBJbnB1dCBmb3IgdW5pcXVlIGlkZW50aWZpZXIgcHJvcGVydHlcclxuXHJcbiAgQE91dHB1dCgpIHB1YmxpYyB0aW1lQ2hhbmdlRXZlbnQ6IEV2ZW50RW1pdHRlcjxPYmplY3Q+ID0gbmV3IEV2ZW50RW1pdHRlcjxPYmplY3Q+KCk7XHJcbiAgQE91dHB1dCgpIHB1YmxpYyBuZXdPYmplY3RQbGFuRXZlbnQ6IEV2ZW50RW1pdHRlcjx7IGN1cnJlbnRIb3VyOiBzdHJpbmcsIGRhdGE6IHN0cmluZyB9PiA9IG5ldyBFdmVudEVtaXR0ZXI8e1xyXG4gICAgY3VycmVudEhvdXI6IHN0cmluZyxcclxuICAgIGRhdGE6IHN0cmluZ1xyXG4gIH0+KCk7XHJcblxyXG5cclxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGNkUmVmOiBDaGFuZ2VEZXRlY3RvclJlZiwgcHJpdmF0ZSBkYXRlUGlwZTogRGF0ZVBpcGUpIHtcclxuICAgIGRvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoJ2NsaWNrJywgdGhpcy5vbkRvY3VtZW50Q2xpY2suYmluZCh0aGlzKSk7XHJcbiAgfVxyXG5cclxuICBuZ09uSW5pdCgpIHtcclxuICAgIHRoaXMuZ2VuZXJhdGVUaW1lQmxvY2tzKCk7XHJcbiAgICB0aGlzLmdlbmVyYXRlU2NoZWR1bGVkT2JqZWN0cygpO1xyXG4gIH1cclxuXHJcbiAgbmdPbkRlc3Ryb3koKSB7XHJcbiAgICBkb2N1bWVudC5yZW1vdmVFdmVudExpc3RlbmVyKCdjbGljaycsIHRoaXMub25Eb2N1bWVudENsaWNrLmJpbmQodGhpcykpO1xyXG4gIH1cclxuXHJcbiAgQEhvc3RCaW5kaW5nKCdjbGFzcy5jby1ob3VyLXNjaGVkdWxpbmcnKVxyXG5cclxuICBwdWJsaWMgZ2VuZXJhdGVUaW1lQmxvY2tzKCkge1xyXG4gICAgbGV0IHN0YXJ0VW5peDogbnVtYmVyID0gIXRoaXMuY2hpbGRQcm9wID8gdGhpcy5kYXRlVG9Vbml4RXBvY2gobmV3IERhdGUodGhpcy5zY2hlZHVsZVt0aGlzLnN0YXJ0VGltZVByb3BdKSkgOiB0aGlzLmRhdGVUb1VuaXhFcG9jaChuZXcgRGF0ZSh0aGlzLnNjaGVkdWxlW3RoaXMuY2hpbGRQcm9wXVt0aGlzLnN0YXJ0VGltZVByb3BdKSk7XHJcbiAgICBsZXQgZW5kVW5peDogbnVtYmVyID0gIXRoaXMuY2hpbGRQcm9wID8gdGhpcy5kYXRlVG9Vbml4RXBvY2gobmV3IERhdGUodGhpcy5zY2hlZHVsZVt0aGlzLmVuZFRpbWVQcm9wXSkpIDogdGhpcy5kYXRlVG9Vbml4RXBvY2gobmV3IERhdGUodGhpcy5zY2hlZHVsZVt0aGlzLmNoaWxkUHJvcF1bdGhpcy5lbmRUaW1lUHJvcF0pKTtcclxuXHJcbiAgICBsZXQgaW50ZXJ2YWwgPSA2MCAqIDYwO1xyXG5cclxuICAgIGZvciAobGV0IGhvdXJDb3VudCA9IHN0YXJ0VW5peDsgaG91ckNvdW50IDw9IGVuZFVuaXg7IGhvdXJDb3VudCArPSBpbnRlcnZhbCkge1xyXG4gICAgICBsZXQgaG91ciA9IG5ldyBEYXRlKGhvdXJDb3VudCAqIDEwMDApXHJcbiAgICAgIGxldCBob3VyU3RyaW5nID0gYCR7aG91ci5nZXRIb3VycygpfToke2hvdXIuZ2V0TWludXRlcygpID09PSAwID8gJzAwJyA6IGhvdXIuZ2V0TWludXRlcygpfWA7XHJcbiAgICAgIHRoaXMuaG91ckxhYmVscy5wdXNoKGhvdXJTdHJpbmcpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHVibGljIGdlbmVyYXRlU2NoZWR1bGVkT2JqZWN0cygpIHtcclxuICAgIGNvbnN0IG9iamVjdHNMaXN0ID0gdGhpcy5zY2hlZHVsZVt0aGlzLm9iamVjdHNQcm9wXTtcclxuXHJcbiAgICBsZXQgc3RhcnRVbml4OiBudW1iZXIgPSAhdGhpcy5jaGlsZFByb3AgPyB0aGlzLmRhdGVUb1VuaXhFcG9jaChuZXcgRGF0ZSh0aGlzLnNjaGVkdWxlW3RoaXMuc3RhcnRUaW1lUHJvcF0pKSA6IHRoaXMuZGF0ZVRvVW5peEVwb2NoKG5ldyBEYXRlKHRoaXMuc2NoZWR1bGVbdGhpcy5jaGlsZFByb3BdW3RoaXMuc3RhcnRUaW1lUHJvcF0pKTtcclxuICAgIGxldCBlbmRVbml4OiBudW1iZXIgPSAhdGhpcy5jaGlsZFByb3AgPyB0aGlzLmRhdGVUb1VuaXhFcG9jaChuZXcgRGF0ZSh0aGlzLnNjaGVkdWxlW3RoaXMuZW5kVGltZVByb3BdKSkgOiB0aGlzLmRhdGVUb1VuaXhFcG9jaChuZXcgRGF0ZSh0aGlzLnNjaGVkdWxlW3RoaXMuY2hpbGRQcm9wXVt0aGlzLmVuZFRpbWVQcm9wXSkpO1xyXG5cclxuICAgIGxldCBpbnRlcnZhbCA9IDMwICogNjA7XHJcblxyXG4gICAgZm9yIChsZXQgaG91ckNvdW50ID0gc3RhcnRVbml4OyBob3VyQ291bnQgPD0gZW5kVW5peDsgaG91ckNvdW50ICs9IGludGVydmFsKSB7XHJcbiAgICAgIGxldCBob3VyID0gbmV3IERhdGUoaG91ckNvdW50ICogMTAwMClcclxuICAgICAgbGV0IGhvdXJTdHJpbmcgPSBgJHtob3VyLmdldEhvdXJzKCl9OiR7aG91ci5nZXRNaW51dGVzKCkgPT09IDAgPyAnMDAnIDogaG91ci5nZXRNaW51dGVzKCl9YDtcclxuICAgICAgdGhpcy5zY2hlZHVsZWRPYmplY3RzW2hvdXJTdHJpbmddID0gdGhpcy5fZ2V0T2JqZWN0c0ZvckhvdXJBbmRNaW51dGVzKFxyXG4gICAgICAgIGhvdXIuZ2V0SG91cnMoKSxcclxuICAgICAgICBob3VyLmdldE1pbnV0ZXMoKSxcclxuICAgICAgICBvYmplY3RzTGlzdFxyXG4gICAgICApO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBfZ2V0T2JqZWN0c0ZvckhvdXJBbmRNaW51dGVzKFxyXG4gICAgaG91cjogbnVtYmVyLFxyXG4gICAgbWludXRlczogbnVtYmVyLFxyXG4gICAgb2JqZWN0c0xpc3Q6IGFueVtdXHJcbiAgKTogU2NoZWR1bGluZ09iamVjdFtdIHtcclxuICAgIGNvbnN0IG9iamVjdHNGb3JIb3VyOiBTY2hlZHVsaW5nT2JqZWN0W10gPSBbXTtcclxuICAgIG9iamVjdHNMaXN0LmZvckVhY2goKG9iaikgPT4ge1xyXG4gICAgICBsZXQgc3BsaXQgPSB0aGlzLmNvbnZlcnRUb0hvdXJOb3RhdGlvbihvYmpbdGhpcy5zdGFydFRpbWVQcm9wXSkuc3BsaXQoJzonKTtcclxuICAgICAgaWYgKHBhcnNlSW50KHNwbGl0WzBdKSA9PT0gaG91ciAmJiBwYXJzZUludChzcGxpdFsxXSkgPT09IG1pbnV0ZXMpIHtcclxuICAgICAgICBvYmplY3RzRm9ySG91ci5wdXNoKHsuLi5vYmp9KTtcclxuICAgICAgfVxyXG4gICAgfSk7XHJcblxyXG4gICAgcmV0dXJuIG9iamVjdHNGb3JIb3VyO1xyXG4gIH1cclxuXHJcblxyXG4gIHB1YmxpYyBvbkRyYWdTdGFydChldmVudDogRHJhZ0V2ZW50LCBvYmo6IGFueSkge1xyXG4gICAgY29uc3QgY3VycmVudFRhcmdldCA9IGV2ZW50LmN1cnJlbnRUYXJnZXQgYXMgSFRNTEVsZW1lbnQ7XHJcbiAgICBjb25zdCBjdXJyZW50SG91clNwYW4gPVxyXG4gICAgICBjdXJyZW50VGFyZ2V0LnBhcmVudEVsZW1lbnQhLnBhcmVudEVsZW1lbnQhLnF1ZXJ5U2VsZWN0b3IoXHJcbiAgICAgICAgJy5oaWRkZW4taG91ci1sYWJlbCdcclxuICAgICAgKSE7XHJcbiAgICBjb25zdCBjdXJyZW50SG91ciA9IGN1cnJlbnRIb3VyU3Bhbi50ZXh0Q29udGVudCE7XHJcblxyXG4gICAgdGhpcy5kcmFnZ2VkT2JqZWN0ID0gb2JqO1xyXG4gICAgZXZlbnQuZGF0YVRyYW5zZmVyIS5zZXREYXRhKFxyXG4gICAgICAndGV4dCcsXHJcbiAgICAgIEpTT04uc3RyaW5naWZ5KHtvYmo6IHRoaXMuZHJhZ2dlZE9iamVjdCwgY3VycmVudEhvdXJ9KVxyXG4gICAgKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBvbkN1c3RvbURyYWdTdGFydChldmVudDogRHJhZ0V2ZW50LCBvYmo6IFNjaGVkdWxpbmdPYmplY3QpIHtcclxuICAgIHRoaXMub25EcmFnU3RhcnQoZXZlbnQsIG9iaik7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgb25EcmFnT3ZlcihldmVudDogRHJhZ0V2ZW50KSB7XHJcbiAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xyXG4gICAgY29uc3QgY3VycmVudFRhcmdldCA9IGV2ZW50LmN1cnJlbnRUYXJnZXQgYXMgSFRNTEVsZW1lbnQ7XHJcbiAgICBjdXJyZW50VGFyZ2V0LmNsYXNzTGlzdC5hZGQoJ2RyYWctb3ZlcicpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIG9uRHJhZ0xlYXZlKGV2ZW50OiBEcmFnRXZlbnQpIHtcclxuICAgIGNvbnN0IGN1cnJlbnRUYXJnZXQgPSBldmVudC5jdXJyZW50VGFyZ2V0IGFzIEhUTUxFbGVtZW50O1xyXG4gICAgY3VycmVudFRhcmdldC5jbGFzc0xpc3QucmVtb3ZlKCdkcmFnLW92ZXInKTsgIC8vIFJlbW92ZSAnZHJhZy1vdmVyJyBjbGFzc1xyXG4gIH1cclxuXHJcbiAgcHVibGljIG9uRHJvcChldmVudDogRHJhZ0V2ZW50LCBob3VyOiBzdHJpbmcpIHtcclxuICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XHJcbiAgICBldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcclxuXHJcbiAgICBjb25zdCBjdXJyZW50VGFyZ2V0ID0gZXZlbnQuY3VycmVudFRhcmdldCBhcyBIVE1MRWxlbWVudDtcclxuICAgIGN1cnJlbnRUYXJnZXQuY2xhc3NMaXN0LnJlbW92ZSgnZHJhZy1vdmVyJyk7XHJcblxyXG4gICAgbGV0IHBhcnNlZCA9IHRoaXMudHJ5UGFyc2VKU09OT2JqZWN0KGV2ZW50LmRhdGFUcmFuc2ZlciEuZ2V0RGF0YShcInRleHRcIikpO1xyXG5cclxuICAgIGlmICghcGFyc2VkKSB7XHJcbiAgICAgIHRoaXMubmV3T2JqZWN0UGxhbkV2ZW50LmVtaXQoe2N1cnJlbnRIb3VyOiBob3VyLCBkYXRhOiBwYXJzZWQudG9TdHJpbmcoKX0pO1xyXG4gICAgICByZXR1cm47XHJcbiAgICB9XHJcblxyXG5cclxuICAgIGNvbnN0IHNwbGl0SG91ciA9IGhvdXIuc3BsaXQoJzonKTtcclxuXHJcbiAgICBjb25zdCBuZXdFbmRNaW51dGVzID0gc3BsaXRIb3VyWzFdID09PSBcIjAwXCIgPyAzMCA6IDA7XHJcbiAgICBjb25zdCBuZXdFbmRIb3VyID0gc3BsaXRIb3VyWzFdID09PSBcIjMwXCIgPyAocGFyc2VJbnQoc3BsaXRIb3VyWzBdKSArIDEpIDogcGFyc2VJbnQoc3BsaXRIb3VyWzBdKTtcclxuXHJcbiAgICBjb25zdCBvcmlnaW5hbFN0YXJ0SG91ciA9IHRoaXMuY29udmVydFRvSG91ck5vdGF0aW9uKHBhcnNlZC5vYmpbdGhpcy5zdGFydFRpbWVQcm9wXSk7XHJcbiAgICAvLyBHZXQgdGhlIHVuaXF1ZSBpZGVudGlmaWVyIHZhbHVlIGZyb20gdGhlIG9iamVjdCB1c2luZyB0aGUgYGlkUHJvcGBcclxuICAgIGNvbnN0IG9iaklkID0gcGFyc2VkLm9ialt0aGlzLmlkUHJvcF07XHJcblxyXG4gICAgLy8gRW5zdXJlIHdlIGNyZWF0ZSBhIG5ldyBvYmplY3QgdG8gYXZvaWQgbXV0YXRpb24gaXNzdWVzXHJcblxyXG4gICAgY29uc3QgdXBkYXRlZE9iamVjdCA9IHtcclxuICAgICAgLi4ucGFyc2VkLm9iaixcclxuICAgICAgW3RoaXMuc3RhcnRUaW1lUHJvcF06IHRoaXMuY3JlYXRlRGF0ZShwYXJzZUludChzcGxpdEhvdXJbMF0pLCBwYXJzZUludChzcGxpdEhvdXJbMV0pKSxcclxuICAgICAgW3RoaXMuZW5kVGltZVByb3BdOiB0aGlzLmNyZWF0ZURhdGUobmV3RW5kSG91ciwgbmV3RW5kTWludXRlcylcclxuICAgIH07XHJcblxyXG5cclxuICAgIC8vIFJlbW92ZSB0aGUgb2JqZWN0IGZyb20gaXRzIG9sZCBob3VyIGJsb2NrIHVzaW5nIGl0cyB1bmlxdWUgaWRcclxuICAgIGNvbnN0IG9yaWdpbmFsSG91ckJsb2NrID0gdGhpcy5mb3JtYXRIb3VyKHBhcnNlSW50KG9yaWdpbmFsU3RhcnRIb3VyLnNwbGl0KCc6JylbMF0pLCBwYXJzZUludChvcmlnaW5hbFN0YXJ0SG91ci5zcGxpdCgnOicpWzFdKSk7XHJcbiAgICB0aGlzLnNjaGVkdWxlZE9iamVjdHNbb3JpZ2luYWxIb3VyQmxvY2tdID0gdGhpcy5zY2hlZHVsZWRPYmplY3RzW29yaWdpbmFsSG91ckJsb2NrXS5maWx0ZXIobyA9PiBvW3RoaXMuaWRQcm9wXSAhPT0gb2JqSWQpO1xyXG5cclxuICAgIC8vIEFkZCB0aGUgb2JqZWN0IHRvIHRoZSBuZXcgaG91ciBibG9ja1xyXG5cclxuICAgIGlmICghdGhpcy5zY2hlZHVsZWRPYmplY3RzW2hvdXJdKSB7XHJcbiAgICAgIHRoaXMuc2NoZWR1bGVkT2JqZWN0c1tob3VyXSA9IFtdO1xyXG4gICAgfVxyXG4gICAgdGhpcy5zY2hlZHVsZWRPYmplY3RzW2hvdXJdLnB1c2godXBkYXRlZE9iamVjdCk7XHJcblxyXG4gICAgLy8gQ2xlYXIgdGhlIGRyYWdnZWQgb2JqZWN0XHJcbiAgICB0aGlzLmRyYWdnZWRPYmplY3QgPSBudWxsO1xyXG5cclxuICAgIHRoaXMudGltZUNoYW5nZUV2ZW50LmVtaXQodXBkYXRlZE9iamVjdCk7XHJcbiAgICAvLyBUcmlnZ2VyIGNoYW5nZSBkZXRlY3Rpb24gdG8gdXBkYXRlIHRoZSB2aWV3XHJcbiAgICB0aGlzLmNkUmVmLmRldGVjdENoYW5nZXMoKTtcclxuXHJcbiAgfVxyXG5cclxuICBwdWJsaWMgY29udmVydFRvSG91ck5vdGF0aW9uKGRhdGU6IERhdGUpOiBzdHJpbmcge1xyXG4gICAgcmV0dXJuIHRoaXMuZGF0ZVBpcGUudHJhbnNmb3JtKG5ldyBEYXRlKGRhdGUpLnRvSVNPU3RyaW5nKCksICdISDptbScpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGNyZWF0ZURhdGUoaG91cnM6IG51bWJlciwgbWludXRlcz86IG51bWJlcikge1xyXG4gICAgbGV0IGRhdGUgPSBuZXcgRGF0ZSgpO1xyXG4gICAgZGF0ZS5zZXRIb3Vycyhob3Vycyk7XHJcbiAgICBkYXRlLnNldE1pbnV0ZXMobWludXRlcyA/IG1pbnV0ZXMgOiAwKTtcclxuICAgIHJldHVybiBkYXRlO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGRhdGVUb1VuaXhFcG9jaChkYXRlOiBEYXRlKTogbnVtYmVyIHtcclxuICAgIHJldHVybiBNYXRoLmZsb29yKGRhdGUuZ2V0VGltZSgpKSAvIDEwMDA7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgZm9ybWF0SG91cihob3VyOiBudW1iZXIsIG1pbnV0ZXM/OiBudW1iZXIpOiBzdHJpbmcge1xyXG4gICAgcmV0dXJuIGAke2hvdXJ9OiR7bWludXRlcyA/IG1pbnV0ZXMgOiAnMDAnfWA7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgYWRkTWludXRlcyhob3VyOiBzdHJpbmcpIHtcclxuICAgIGxldCBzcGxpdCA9IGhvdXIuc3BsaXQoXCI6XCIpO1xyXG4gICAgc3BsaXRbMV0gPSBcIjMwXCI7XHJcbiAgICByZXR1cm4gc3BsaXQuam9pbignOicpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIG9uRG9jdW1lbnRDbGljayhldmVudDogRXZlbnQpIHtcclxuICAgIGNvbnN0IHRhcmdldEVsZW1lbnQgPSBldmVudC50YXJnZXQgYXMgSFRNTEVsZW1lbnQ7XHJcblxyXG4gICAgLy8gQ2xlYXIgYWN0aXZlIHN0YXRlIHdoZW4gY2xpY2tpbmcgb3V0c2lkZVxyXG4gICAgaWYgKCF0YXJnZXRFbGVtZW50LmNsb3Nlc3QoJy5vYmplY3QtZGlzcGxheScpKSB7XHJcbiAgICAgIHRoaXMuYWN0aXZlSGFsZkhvdXIgPSBudWxsO1xyXG4gICAgICB0aGlzLmNkUmVmLmRldGVjdENoYW5nZXMoKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHB1YmxpYyBvbk9iamVjdERpc3BsYXlDbGljayhob3VyOiBzdHJpbmcsIGhhbGY6ICdmaXJzdEhhbGYnIHwgJ3NlY29uZEhhbGYnKSB7XHJcbiAgICBjb25zdCBoYWxmSG91cklkZW50aWZpZXIgPSBgJHtob3VyfS0ke2hhbGZ9YDtcclxuXHJcbiAgICBpZiAodGhpcy5hY3RpdmVIYWxmSG91ciA9PT0gaGFsZkhvdXJJZGVudGlmaWVyKSB7XHJcbiAgICAgIC8vIERlYWN0aXZhdGUgaWYgY2xpY2tlZCBhZ2FpblxyXG4gICAgICB0aGlzLmFjdGl2ZUhhbGZIb3VyID0gbnVsbDtcclxuICAgIH0gZWxzZSBpZiAodGhpcy5zY2hlZHVsZWRPYmplY3RzW2hvdXJdPy5sZW5ndGggPiAwIHx8IHRoaXMuc2NoZWR1bGVkT2JqZWN0c1t0aGlzLmFkZE1pbnV0ZXMoaG91cildPy5sZW5ndGggPiAwKSB7XHJcbiAgICAgIC8vIEFjdGl2YXRlIHRoZSBoYWxmLWhvdXIgaWYgdGhlcmUgYXJlIG9iamVjdHNcclxuICAgICAgdGhpcy5hY3RpdmVIYWxmSG91ciA9IGhhbGZIb3VySWRlbnRpZmllcjtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHB1YmxpYyB0cnlQYXJzZUpTT05PYmplY3QoanNvblN0cmluZzogc3RyaW5nKSB7XHJcbiAgICB0cnkge1xyXG4gICAgICBsZXQgbyA9IEpTT04ucGFyc2UoanNvblN0cmluZyk7XHJcblxyXG4gICAgICAvLyBIYW5kbGUgbm9uLWV4Y2VwdGlvbi10aHJvd2luZyBjYXNlczpcclxuICAgICAgLy8gTmVpdGhlciBKU09OLnBhcnNlKGZhbHNlKSBvciBKU09OLnBhcnNlKDEyMzQpIHRocm93IGVycm9ycywgaGVuY2UgdGhlIHR5cGUtY2hlY2tpbmcsXHJcbiAgICAgIC8vIGJ1dC4uLiBKU09OLnBhcnNlKG51bGwpIHJldHVybnMgbnVsbCwgYW5kIHR5cGVvZiBudWxsID09PSBcIm9iamVjdFwiLFxyXG4gICAgICAvLyBzbyB3ZSBtdXN0IGNoZWNrIGZvciB0aGF0LCB0b28uIFRoYW5rZnVsbHksIG51bGwgaXMgZmFsc2V5LCBzbyB0aGlzIHN1ZmZpY2VzOlxyXG4gICAgICBpZiAobyAmJiB0eXBlb2YgbyA9PT0gXCJvYmplY3RcIikge1xyXG4gICAgICAgIHJldHVybiBvO1xyXG4gICAgICB9XHJcbiAgICB9IGNhdGNoIChlKSB7XHJcbiAgICB9XHJcblxyXG4gICAgcmV0dXJuIGZhbHNlO1xyXG4gIH07XHJcbn1cclxuIl19
|
|
276
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaG91ci1zY2hlZHVsaW5nLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmVjb21wb25lbnRzL3NyYy9saWIvY29tcG9uZW50cy9ob3VyLXNjaGVkdWxpbmcvaG91ci1zY2hlZHVsaW5nLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsU0FBUyxFQUNULEtBQUssRUFFTCxXQUFXLEVBQ1gsaUJBQWlCLEVBQ2pCLGlCQUFpQixFQUNKLE1BQU0sRUFBRSxZQUFZLEVBQUUsTUFBTSxFQUFFLHVCQUF1QixHQUNuRSxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUMsUUFBUSxFQUFDLE1BQU0saUJBQWlCLENBQUM7QUE0RnpDLE1BQU0sT0FBTyx1QkFBdUI7SUEyQmxDLFlBQ1UsS0FBd0IsRUFDeEIsUUFBa0IsRUFDbEIsSUFBWTtRQUZaLFVBQUssR0FBTCxLQUFLLENBQW1CO1FBQ3hCLGFBQVEsR0FBUixRQUFRLENBQVU7UUFDbEIsU0FBSSxHQUFKLElBQUksQ0FBUTtRQTVCZixlQUFVLEdBQWEsRUFBRSxDQUFDO1FBQzFCLHFCQUFnQixHQUEyQyxFQUFFLENBQUM7UUFDOUQsZUFBVSxHQUFrQixJQUFJLENBQUM7UUFDakMsbUJBQWMsR0FBa0IsSUFBSSxDQUFDO1FBRXBDLGtCQUFhLEdBQWUsSUFBSSxDQUFDO1FBUXpCLHVCQUFrQixHQUFZLEtBQUssQ0FBQztRQUduQyxvQkFBZSxHQUF5QixJQUFJLFlBQVksRUFBVSxDQUFDO1FBQ25FLHVCQUFrQixHQUF3RCxJQUFJLFlBQVksRUFHdkcsQ0FBQztRQUdFLGNBQVMsR0FBWSxJQUFJLENBQUM7UUFPL0IsUUFBUSxDQUFDLGdCQUFnQixDQUFDLE9BQU8sRUFBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsZUFBZSxDQUFDLENBQUM7SUFDaEUsQ0FBQztJQUVELFFBQVE7UUFDTixJQUFJLENBQUMsa0JBQWtCLEVBQUUsQ0FBQztRQUMxQixJQUFJLENBQUMsd0JBQXdCLEVBQUUsQ0FBQztJQUNsQyxDQUFDO0lBRUQsV0FBVztRQUNULFFBQVEsQ0FBQyxtQkFBbUIsQ0FBQyxPQUFPLEVBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxDQUFDO0lBQ25FLENBQUM7SUFFTSxrQkFBa0I7UUFDdkIsSUFBSSxTQUFTLEdBQVcsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsZUFBZSxDQUFDLElBQUksSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxJQUFJLElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQ2hNLElBQUksT0FBTyxHQUFXLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxJQUFJLElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxlQUFlLENBQUMsSUFBSSxJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUUxTCxJQUFJLFFBQVEsR0FBRyxFQUFFLEdBQUcsRUFBRSxDQUFDO1FBRXZCLEtBQUssSUFBSSxTQUFTLEdBQUcsU0FBUyxFQUFFLFNBQVMsSUFBSSxPQUFPLEVBQUUsU0FBUyxJQUFJLFFBQVEsRUFBRTtZQUMzRSxJQUFJLElBQUksR0FBRyxJQUFJLElBQUksQ0FBQyxTQUFTLEdBQUcsSUFBSSxDQUFDLENBQUE7WUFDckMsSUFBSSxVQUFVLEdBQUcsR0FBRyxJQUFJLENBQUMsUUFBUSxFQUFFLElBQUksSUFBSSxDQUFDLFVBQVUsRUFBRSxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsVUFBVSxFQUFFLEVBQUUsQ0FBQztZQUM1RixJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQztTQUNsQztJQUNILENBQUM7SUFFTSx3QkFBd0I7UUFDN0IsTUFBTSxXQUFXLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUM7UUFFcEQsSUFBSSxTQUFTLEdBQVcsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsZUFBZSxDQUFDLElBQUksSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxJQUFJLElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQ2hNLElBQUksT0FBTyxHQUFXLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxJQUFJLElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxlQUFlLENBQUMsSUFBSSxJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUUxTCxJQUFJLFFBQVEsR0FBRyxFQUFFLEdBQUcsRUFBRSxDQUFDO1FBRXZCLEtBQUssSUFBSSxTQUFTLEdBQUcsU0FB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Q0FBQyxDQUFDO2FBQ1Y7U0FDRjtRQUFDLE9BQU8sQ0FBQyxFQUFFO1NBQ1g7UUFFRCxPQUFPLEtBQUssQ0FBQztJQUNmLENBQUM7SUFBQSxDQUFDOzs7WUF0VUgsU0FBUyxTQUFDO2dCQUNULFFBQVEsRUFBRSxvQkFBb0I7Z0JBQzlCLFFBQVEsRUFBRTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQTRFVDtnQkFDRCxlQUFlLEVBQUUsdUJBQXVCLENBQUMsTUFBTTtnQkFDL0MsYUFBYSxFQUFFLGlCQUFpQixDQUFDLElBQUk7YUFDdEM7OztZQTlGQyxpQkFBaUI7WUFHWCxRQUFRO1lBRnFCLE1BQU07Ozt1QkF1R3hDLEtBQUs7NEJBQ0wsS0FBSzswQkFDTCxLQUFLOzBCQUNMLEtBQUs7d0JBQ0wsS0FBSzs2QkFDTCxLQUFLO2lDQUNMLEtBQUs7cUJBQ0wsS0FBSzs4QkFFTCxNQUFNO2lDQUNOLE1BQU07d0JBS04sV0FBVyxTQUFDLDBCQUEwQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XHJcbiAgQ29tcG9uZW50LFxyXG4gIElucHV0LFxyXG4gIE9uSW5pdCxcclxuICBIb3N0QmluZGluZyxcclxuICBWaWV3RW5jYXBzdWxhdGlvbixcclxuICBDaGFuZ2VEZXRlY3RvclJlZixcclxuICBUZW1wbGF0ZVJlZiwgT3V0cHV0LCBFdmVudEVtaXR0ZXIsIE5nWm9uZSwgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXHJcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7RGF0ZVBpcGV9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XHJcbmludGVyZmFjZSBTY2hlZHVsaW5nT2JqZWN0IHtcclxuICBzdGFydDogbnVtYmVyO1xyXG4gIGVuZDogbnVtYmVyO1xyXG4gIHRpdGxlPzogc3RyaW5nO1xyXG4gIHN1YlRpdGxlPzogc3RyaW5nO1xyXG5cclxuICBba2V5OiBzdHJpbmddOiBhbnk7IC8vIEFsbG93cyBkeW5hbWljIHByb3BlcnRpZXMgaW5jbHVkaW5nIHVuaXF1ZSBpZGVudGlmaWVyc1xyXG59XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2NvLWhvdXItc2NoZWR1bGluZycsXHJcbiAgdGVtcGxhdGU6IGBcclxuICAgIDxkaXYgY2xhc3M9XCJ0aW1lLWJsb2NrXCIgKm5nRm9yPVwibGV0IGhvdXIgb2YgaG91ckxhYmVsc1wiPlxyXG4gICAgICA8ZGl2IGNsYXNzPVwiaG91ci1sYWJlbFwiPjxzcGFuIFt0ZXh0Q29udGVudF09XCJob3VyXCI+PC9zcGFuPjwvZGl2PlxyXG4gICAgICA8ZGl2IGNsYXNzPVwib2JqZWN0LWRpc3BsYXlcIj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwiZmlyc3QtaGFsZi1ob3VyIG9iamVjdC1oYWxmXCJcclxuICAgICAgICAgICAgIFtuZ0NsYXNzXT1cInsnaGFzLW9iamVjdHMnOiBzY2hlZHVsZWRPYmplY3RzW2hvdXJdPy5sZW5ndGggPiAwLCAnYWN0aXZlJzogYWN0aXZlSGFsZkhvdXIgPT09IGhvdXIgKyAnLWZpcnN0SGFsZid9XCJcclxuICAgICAgICAgICAgIChkcmFnb3Zlcik9XCJvbkRyYWdPdmVyKCRldmVudClcIlxyXG4gICAgICAgICAgICAgKGRyYWdsZWF2ZSk9XCJvbkRyYWdMZWF2ZSgkZXZlbnQpXCJcclxuICAgICAgICAgICAgIChjbGljayk9XCJvbk9iamVjdERpc3BsYXlDbGljayhob3VyLCAnZmlyc3RIYWxmJylcIlxyXG4gICAgICAgICAgICAgKGRyb3ApPVwib25Ecm9wKCRldmVudCwgaG91cilcIj5cclxuICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCIhY3VzdG9tVGVtcGxhdGVVc2VkXCI+XHJcbiAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJzY2hlZHVsZWRPYmplY3RzW2hvdXJdXCI+XHJcbiAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJoaWRkZW4taG91ci1sYWJlbFwiIFtoaWRkZW5dPVwidHJ1ZVwiIFt0ZXh0Q29udGVudF09XCJob3VyXCI+PC9zcGFuPlxyXG4gICAgICAgICAgICAgIDxkaXZcclxuICAgICAgICAgICAgICAgICpuZ0Zvcj1cImxldCBvYmogb2Ygc2NoZWR1bGVkT2JqZWN0c1tob3VyXVwiXHJcbiAgICAgICAgICAgICAgICBjbGFzcz1cInNjaGVkdWxlZC1vYmplY3RcIlxyXG4gICAgICAgICAgICAgICAgW2RyYWdnYWJsZV09XCJ0cnVlXCJcclxuICAgICAgICAgICAgICAgIChkcmFnc3RhcnQpPVwib25EcmFnU3RhcnQoJGV2ZW50LCBvYmopXCJcclxuICAgICAgICAgICAgICA+XHJcbiAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImhpZGRlbi1ob3VyLWxhYmVsXCIgW2hpZGRlbl09XCJ0cnVlXCIgW3RleHRDb250ZW50XT1cImFkZE1pbnV0ZXMoaG91cilcIj48L3NwYW4+XHJcbiAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cInRpdGxlXCIgW3RleHRDb250ZW50XT1cIm9iai50aXRsZVwiPjwvc3Bhbj5cclxuICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwic3ViLXRpdGxlXCIgW3RleHRDb250ZW50XT1cIm9iai5zdWJUaXRsZVwiPjwvc3Bhbj5cclxuICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XHJcbiAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cclxuXHJcbiAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiY3VzdG9tVGVtcGxhdGVVc2VkXCI+XHJcbiAgICAgICAgICAgIDxuZy10ZW1wbGF0ZVxyXG4gICAgICAgICAgICAgIFtuZ1RlbXBsYXRlT3V0bGV0XT1cImN1c3RvbVRlbXBsYXRlXCJcclxuICAgICAgICAgICAgICBbbmdUZW1wbGF0ZU91dGxldENvbnRleHRdPVwie1xyXG4gICAgICAgICAgICAgIGhvdXI6IGhvdXIsXHJcbiAgICAgICAgICAgICAgaGlkZGVuSG91cjogaG91cixcclxuICAgICAgICAgICAgICBvYmplY3RzOiBzY2hlZHVsZWRPYmplY3RzW2hvdXJdXHJcbiAgICAgICAgICAgIH1cIlxyXG4gICAgICAgICAgICA+XHJcbiAgICAgICAgICAgIDwvbmctdGVtcGxhdGU+XHJcbiAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgICAgICA8L2Rpdj5cclxuXHJcbiAgICAgICAgPGRpdiBjbGFzcz1cInNlY29uZC1oYWxmLWhvdXIgb2JqZWN0LWhhbGZcIlxyXG4gICAgICAgICAgICAgW25nQ2xhc3NdPVwieydoYXMtb2JqZWN0cyc6IHNjaGVkdWxlZE9iamVjdHNbYWRkTWludXRlcyhob3VyKV0/Lmxlbmd0aCA+IDAsICdhY3RpdmUnOiBhY3RpdmVIYWxmSG91ciA9PT0gaG91ciArICctc2Vjb25kSGFsZid9XCJcclxuICAgICAgICAgICAgIChkcmFnb3Zlcik9XCJvbkRyYWdPdmVyKCRldmVudClcIlxyXG4gICAgICAgICAgICAgKGRyYWdsZWF2ZSk9XCJvbkRyYWdMZWF2ZSgkZXZlbnQpXCJcclxuICAgICAgICAgICAgIChjbGljayk9XCJvbk9iamVjdERpc3BsYXlDbGljayhob3VyLCAnc2Vjb25kSGFsZicpXCJcclxuICAgICAgICAgICAgIChkcm9wKT1cIm9uRHJvcCgkZXZlbnQsIGFkZE1pbnV0ZXMoaG91cikpXCI+XHJcbiAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiIWN1c3RvbVRlbXBsYXRlVXNlZFwiPlxyXG4gICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwic2NoZWR1bGVkT2JqZWN0c1thZGRNaW51dGVzKGhvdXIpXVwiPlxyXG4gICAgICAgICAgICAgIDxkaXZcclxuICAgICAgICAgICAgICAgICpuZ0Zvcj1cImxldCBvYmogb2Ygc2NoZWR1bGVkT2JqZWN0c1thZGRNaW51dGVzKGhvdXIpXVwiXHJcbiAgICAgICAgICAgICAgICBjbGFzcz1cInNjaGVkdWxlZC1vYmplY3RcIlxyXG4gICAgICAgICAgICAgICAgW2RyYWdnYWJsZV09XCJ0cnVlXCJcclxuICAgICAgICAgICAgICAgIChkcmFnc3RhcnQpPVwib25EcmFnU3RhcnQoJGV2ZW50LCBvYmopXCJcclxuICAgICAgICAgICAgICA+XHJcbiAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cInRpdGxlXCIgW3RleHRDb250ZW50XT1cIm9iai50aXRsZVwiPjwvc3Bhbj5cclxuICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwic3ViLXRpdGxlXCIgW3RleHRDb250ZW50XT1cIm9iai5zdWJUaXRsZVwiPjwvc3Bhbj5cclxuICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiaGlkZGVuLWhvdXItbGFiZWxcIiBbaGlkZGVuXT1cInRydWVcIiBbdGV4dENvbnRlbnRdPVwiYWRkTWludXRlcyhob3VyKVwiPjwvc3Bhbj5cclxuICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XHJcbiAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cclxuXHJcbiAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiY3VzdG9tVGVtcGxhdGVVc2VkXCI+XHJcbiAgICAgICAgICAgIDxuZy10ZW1wbGF0ZVxyXG4gICAgICAgICAgICAgIFtuZ1RlbXBsYXRlT3V0bGV0XT1cImN1c3RvbVRlbXBsYXRlXCJcclxuICAgICAgICAgICAgICBbbmdUZW1wbGF0ZU91dGxldENvbnRleHRdPVwie1xyXG4gICAgICAgICAgICAgIGhvdXI6IGhvdXIsXHJcbiAgICAgICAgICAgICAgaGlkZGVuSG91cjogYWRkTWludXRlcyhob3VyKSxcclxuICAgICAgICAgICAgICBvYmplY3RzOiBzY2hlZHVsZWRPYmplY3RzW2FkZE1pbnV0ZXMoaG91cildXHJcbiAgICAgICAgICAgIH1cIlxyXG4gICAgICAgICAgICA+XHJcbiAgICAgICAgICAgIDwvbmctdGVtcGxhdGU+XHJcbiAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgICAgICA8L2Rpdj5cclxuXHJcblxyXG4gICAgICA8L2Rpdj5cclxuICAgIDwvZGl2PlxyXG4gIGAsXHJcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXHJcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcclxufSlcclxuZXhwb3J0IGNsYXNzIEhvdXJTY2hlZHVsaW5nQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcclxuXHJcbiAgcHVibGljIGhvdXJMYWJlbHM6IHN0cmluZ1tdID0gW107XHJcbiAgcHVibGljIHNjaGVkdWxlZE9iamVjdHM6IHsgW2hvdXI6IHN0cmluZ106IFNjaGVkdWxpbmdPYmplY3RbXSB9ID0ge307XHJcbiAgcHVibGljIGFjdGl2ZUhvdXI6IHN0cmluZyB8IG51bGwgPSBudWxsO1xyXG4gIHB1YmxpYyBhY3RpdmVIYWxmSG91cjogc3RyaW5nIHwgbnVsbCA9IG51bGw7XHJcblxyXG4gIHByaXZhdGUgZHJhZ2dlZE9iamVjdDogYW55IHwgbnVsbCA9IG51bGw7XHJcblxyXG4gIEBJbnB1dCgpIHB1YmxpYyBzY2hlZHVsZTogYW55O1xyXG4gIEBJbnB1dCgpIHB1YmxpYyBzdGFydFRpbWVQcm9wOiBzdHJpbmc7XHJcbiAgQElucHV0KCkgcHVibGljIGVuZFRpbWVQcm9wOiBzdHJpbmc7XHJcbiAgQElucHV0KCkgcHVibGljIG9iamVjdHNQcm9wOiBzdHJpbmc7XHJcbiAgQElucHV0KCkgcHVibGljIGNoaWxkUHJvcDogc3RyaW5nO1xyXG4gIEBJbnB1dCgpIHB1YmxpYyBjdXN0b21UZW1wbGF0ZTogVGVtcGxhdGVSZWY8YW55PjtcclxuICBASW5wdXQoKSBwdWJsaWMgY3VzdG9tVGVtcGxhdGVVc2VkOiBib29sZWFuID0gZmFsc2U7XHJcbiAgQElucHV0KCkgcHVibGljIGlkUHJvcDogc3RyaW5nOyAgLy8gSW5wdXQgZm9yIHVuaXF1ZSBpZGVudGlmaWVyIHByb3BlcnR5XHJcblxyXG4gIEBPdXRwdXQoKSBwdWJsaWMgdGltZUNoYW5nZUV2ZW50OiBFdmVudEVtaXR0ZXI8T2JqZWN0PiA9IG5ldyBFdmVudEVtaXR0ZXI8T2JqZWN0PigpO1xyXG4gIEBPdXRwdXQoKSBwdWJsaWMgbmV3T2JqZWN0UGxhbkV2ZW50OiBFdmVudEVtaXR0ZXI8eyBjdXJyZW50SG91cjogc3RyaW5nLCBkYXRhOiBzdHJpbmcgfT4gPSBuZXcgRXZlbnRFbWl0dGVyPHtcclxuICAgIGN1cnJlbnRIb3VyOiBzdHJpbmcsXHJcbiAgICBkYXRhOiBzdHJpbmdcclxuICB9PigpO1xyXG5cclxuICBASG9zdEJpbmRpbmcoJ2NsYXNzLmNvLWhvdXItc2NoZWR1bGluZycpXHJcbiAgcHVibGljIHNob3dDbGFzczogYm9vbGVhbiA9IHRydWU7XHJcblxyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHJpdmF0ZSBjZFJlZjogQ2hhbmdlRGV0ZWN0b3JSZWYsXHJcbiAgICBwcml2YXRlIGRhdGVQaXBlOiBEYXRlUGlwZSxcclxuICAgIHByaXZhdGUgem9uZTogTmdab25lXHJcbiAgKSB7XHJcbiAgICBkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCdjbGljaycsKCkgPT4gdGhpcy5vbkRvY3VtZW50Q2xpY2spO1xyXG4gIH1cclxuXHJcbiAgbmdPbkluaXQoKSB7XHJcbiAgICB0aGlzLmdlbmVyYXRlVGltZUJsb2NrcygpO1xyXG4gICAgdGhpcy5nZW5lcmF0ZVNjaGVkdWxlZE9iamVjdHMoKTtcclxuICB9XHJcblxyXG4gIG5nT25EZXN0cm95KCkge1xyXG4gICAgZG9jdW1lbnQucmVtb3ZlRXZlbnRMaXN0ZW5lcignY2xpY2snLCgpID0+IHRoaXMub25Eb2N1bWVudENsaWNrKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBnZW5lcmF0ZVRpbWVCbG9ja3MoKSB7XHJcbiAgICBsZXQgc3RhcnRVbml4OiBudW1iZXIgPSAhdGhpcy5jaGlsZFByb3AgPyB0aGlzLmRhdGVUb1VuaXhFcG9jaChuZXcgRGF0ZSh0aGlzLnNjaGVkdWxlW3RoaXMuc3RhcnRUaW1lUHJvcF0pKSA6IHRoaXMuZGF0ZVRvVW5peEVwb2NoKG5ldyBEYXRlKHRoaXMuc2NoZWR1bGVbdGhpcy5jaGlsZFByb3BdW3RoaXMuc3RhcnRUaW1lUHJvcF0pKTtcclxuICAgIGxldCBlbmRVbml4OiBudW1iZXIgPSAhdGhpcy5jaGlsZFByb3AgPyB0aGlzLmRhdGVUb1VuaXhFcG9jaChuZXcgRGF0ZSh0aGlzLnNjaGVkdWxlW3RoaXMuZW5kVGltZVByb3BdKSkgOiB0aGlzLmRhdGVUb1VuaXhFcG9jaChuZXcgRGF0ZSh0aGlzLnNjaGVkdWxlW3RoaXMuY2hpbGRQcm9wXVt0aGlzLmVuZFRpbWVQcm9wXSkpO1xyXG5cclxuICAgIGxldCBpbnRlcnZhbCA9IDYwICogNjA7XHJcblxyXG4gICAgZm9yIChsZXQgaG91ckNvdW50ID0gc3RhcnRVbml4OyBob3VyQ291bnQgPD0gZW5kVW5peDsgaG91ckNvdW50ICs9IGludGVydmFsKSB7XHJcbiAgICAgIGxldCBob3VyID0gbmV3IERhdGUoaG91ckNvdW50ICogMTAwMClcclxuICAgICAgbGV0IGhvdXJTdHJpbmcgPSBgJHtob3VyLmdldEhvdXJzKCl9OiR7aG91ci5nZXRNaW51dGVzKCkgPT09IDAgPyAnMDAnIDogaG91ci5nZXRNaW51dGVzKCl9YDtcclxuICAgICAgdGhpcy5ob3VyTGFiZWxzLnB1c2goaG91clN0cmluZyk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgZ2VuZXJhdGVTY2hlZHVsZWRPYmplY3RzKCkge1xyXG4gICAgY29uc3Qgb2JqZWN0c0xpc3QgPSB0aGlzLnNjaGVkdWxlW3RoaXMub2JqZWN0c1Byb3BdO1xyXG5cclxuICAgIGxldCBzdGFydFVuaXg6IG51bWJlciA9ICF0aGlzLmNoaWxkUHJvcCA/IHRoaXMuZGF0ZVRvVW5peEVwb2NoKG5ldyBEYXRlKHRoaXMuc2NoZWR1bGVbdGhpcy5zdGFydFRpbWVQcm9wXSkpIDogdGhpcy5kYXRlVG9Vbml4RXBvY2gobmV3IERhdGUodGhpcy5zY2hlZHVsZVt0aGlzLmNoaWxkUHJvcF1bdGhpcy5zdGFydFRpbWVQcm9wXSkpO1xyXG4gICAgbGV0IGVuZFVuaXg6IG51bWJlciA9ICF0aGlzLmNoaWxkUHJvcCA/IHRoaXMuZGF0ZVRvVW5peEVwb2NoKG5ldyBEYXRlKHRoaXMuc2NoZWR1bGVbdGhpcy5lbmRUaW1lUHJvcF0pKSA6IHRoaXMuZGF0ZVRvVW5peEVwb2NoKG5ldyBEYXRlKHRoaXMuc2NoZWR1bGVbdGhpcy5jaGlsZFByb3BdW3RoaXMuZW5kVGltZVByb3BdKSk7XHJcblxyXG4gICAgbGV0IGludGVydmFsID0gMzAgKiA2MDtcclxuXHJcbiAgICBmb3IgKGxldCBob3VyQ291bnQgPSBzdGFydFVuaXg7IGhvdXJDb3VudCA8PSBlbmRVbml4OyBob3VyQ291bnQgKz0gaW50ZXJ2YWwpIHtcclxuICAgICAgbGV0IGhvdXIgPSBuZXcgRGF0ZShob3VyQ291bnQgKiAxMDAwKVxyXG4gICAgICBsZXQgaG91clN0cmluZyA9IGAke2hvdXIuZ2V0SG91cnMoKX06JHtob3VyLmdldE1pbnV0ZXMoKSA9PT0gMCA/ICcwMCcgOiBob3VyLmdldE1pbnV0ZXMoKX1gO1xyXG4gICAgICB0aGlzLnNjaGVkdWxlZE9iamVjdHNbaG91clN0cmluZ10gPSB0aGlzLl9nZXRPYmplY3RzRm9ySG91ckFuZE1pbnV0ZXMoXHJcbiAgICAgICAgaG91ci5nZXRIb3VycygpLFxyXG4gICAgICAgIGhvdXIuZ2V0TWludXRlcygpLFxyXG4gICAgICAgIG9iamVjdHNMaXN0XHJcbiAgICAgICk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIF9nZXRPYmplY3RzRm9ySG91ckFuZE1pbnV0ZXMoXHJcbiAgICBob3VyOiBudW1iZXIsXHJcbiAgICBtaW51dGVzOiBudW1iZXIsXHJcbiAgICBvYmplY3RzTGlzdDogYW55W11cclxuICApOiBTY2hlZHVsaW5nT2JqZWN0W10ge1xyXG4gICAgY29uc3Qgb2JqZWN0c0ZvckhvdXI6IFNjaGVkdWxpbmdPYmplY3RbXSA9IFtdO1xyXG4gICAgb2JqZWN0c0xpc3QuZm9yRWFjaCgob2JqKSA9PiB7XHJcbiAgICAgIGxldCBzcGxpdCA9IHRoaXMuY29udmVydFRvSG91ck5vdGF0aW9uKG9ialt0aGlzLnN0YXJ0VGltZVByb3BdKS5zcGxpdCgnOicpO1xyXG4gICAgICBpZiAocGFyc2VJbnQoc3BsaXRbMF0pID09PSBob3VyICYmIHBhcnNlSW50KHNwbGl0WzFdKSA9PT0gbWludXRlcykge1xyXG4gICAgICAgIG9iamVjdHNGb3JIb3VyLnB1c2goey4uLm9ian0pO1xyXG4gICAgICB9XHJcbiAgICB9KTtcclxuXHJcbiAgICByZXR1cm4gb2JqZWN0c0ZvckhvdXI7XHJcbiAgfVxyXG5cclxuXHJcbiAgcHVibGljIG9uRHJhZ1N0YXJ0KGV2ZW50OiBEcmFnRXZlbnQsIG9iajogYW55KSB7XHJcbiAgICBjb25zdCBjdXJyZW50VGFyZ2V0ID0gZXZlbnQuY3VycmVudFRhcmdldCBhcyBIVE1MRWxlbWVudDtcclxuICAgIGNvbnN0IGN1cnJlbnRIb3VyU3BhbiA9XHJcbiAgICAgIGN1cnJlbnRUYXJnZXQucGFyZW50RWxlbWVudCEucGFyZW50RWxlbWVudCEucXVlcnlTZWxlY3RvcihcclxuICAgICAgICAnLmhpZGRlbi1ob3VyLWxhYmVsJ1xyXG4gICAgICApITtcclxuICAgIGNvbnN0IGN1cnJlbnRIb3VyID0gY3VycmVudEhvdXJTcGFuLnRleHRDb250ZW50ITtcclxuXHJcbiAgICB0aGlzLmRyYWdnZWRPYmplY3QgPSBvYmo7XHJcbiAgICBldmVudC5kYXRhVHJhbnNmZXIhLnNldERhdGEoXHJcbiAgICAgICd0ZXh0JyxcclxuICAgICAgSlNPTi5zdHJpbmdpZnkoe29iajogdGhpcy5kcmFnZ2VkT2JqZWN0LCBjdXJyZW50SG91cn0pXHJcbiAgICApO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIG9uQ3VzdG9tRHJhZ1N0YXJ0KGV2ZW50OiBEcmFnRXZlbnQsIG9iajogU2NoZWR1bGluZ09iamVjdCkge1xyXG4gICAgdGhpcy5vbkRyYWdTdGFydChldmVudCwgb2JqKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBvbkRyYWdPdmVyKGV2ZW50OiBEcmFnRXZlbnQpIHtcclxuICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XHJcbiAgICBldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcclxuICAgIHRoaXMuem9uZS5ydW5PdXRzaWRlQW5ndWxhcigoKSA9PiB7XHJcbiAgICAgIGNvbnN0IGN1cnJlbnRUYXJnZXQgPSBldmVudC5jdXJyZW50VGFyZ2V0IGFzIEhUTUxFbGVtZW50O1xyXG4gICAgICBpZiAoIWN1cnJlbnRUYXJnZXQuY2xhc3NMaXN0LmNvbnRhaW5zKCdkcmFnLW92ZXInKSkge1xyXG4gICAgICAgIGN1cnJlbnRUYXJnZXQuY2xhc3NMaXN0LmFkZCgnZHJhZy1vdmVyJyk7XHJcbiAgICAgIH1cclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIG9uRHJhZ0xlYXZlKGV2ZW50OiBEcmFnRXZlbnQpIHtcclxuICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XHJcbiAgICBldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcclxuICAgIHRoaXMuem9uZS5ydW5PdXRzaWRlQW5ndWxhcigoKSA9PiB7XHJcbiAgICAgIGNvbnN0IGN1cnJlbnRUYXJnZXQgPSBldmVudC5jdXJyZW50VGFyZ2V0IGFzIEhUTUxFbGVtZW50O1xyXG4gICAgICBjdXJyZW50VGFyZ2V0LmNsYXNzTGlzdC5yZW1vdmUoJ2RyYWctb3ZlcicpO1xyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgb25Ecm9wKGV2ZW50OiBEcmFnRXZlbnQsIGhvdXI6IHN0cmluZykge1xyXG4gICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcclxuICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xyXG5cclxuICAgIGNvbnN0IGN1cnJlbnRUYXJnZXQgPSBldmVudC5jdXJyZW50VGFyZ2V0IGFzIEhUTUxFbGVtZW50O1xyXG4gICAgY3VycmVudFRhcmdldC5jbGFzc0xpc3QucmVtb3ZlKCdkcmFnLW92ZXInKTtcclxuXHJcbiAgICBsZXQgcGFyc2VkID0gdGhpcy50cnlQYXJzZUpTT05PYmplY3QoZXZlbnQuZGF0YVRyYW5zZmVyIS5nZXREYXRhKFwidGV4dFwiKSk7XHJcblxyXG4gICAgaWYgKCFwYXJzZWQpIHtcclxuICAgICAgdGhpcy5uZXdPYmplY3RQbGFuRXZlbnQuZW1pdCh7Y3VycmVudEhvdXI6IGhvdXIsIGRhdGE6IHBhcnNlZC50b1N0cmluZygpfSk7XHJcbiAgICAgIHJldHVybjtcclxuICAgIH1cclxuXHJcbiAgICBjb25zdCBzcGxpdEhvdXIgPSBob3VyLnNwbGl0KCc6Jyk7XHJcblxyXG4gICAgY29uc3QgbmV3RW5kTWludXRlcyA9IHNwbGl0SG91clsxXSA9PT0gXCIwMFwiID8gMzAgOiAwO1xyXG4gICAgY29uc3QgbmV3RW5kSG91ciA9IHNwbGl0SG91clsxXSA9PT0gXCIzMFwiID8gKHBhcnNlSW50KHNwbGl0SG91clswXSkgKyAxKSA6IHBhcnNlSW50KHNwbGl0SG91clswXSk7XHJcblxyXG4gICAgY29uc3Qgb3JpZ2luYWxTdGFydEhvdXIgPSB0aGlzLmNvbnZlcnRUb0hvdXJOb3RhdGlvbihwYXJzZWQub2JqW3RoaXMuc3RhcnRUaW1lUHJvcF0pO1xyXG4gICAgLy8gR2V0IHRoZSB1bmlxdWUgaWRlbnRpZmllciB2YWx1ZSBmcm9tIHRoZSBvYmplY3QgdXNpbmcgdGhlIGBpZFByb3BgXHJcbiAgICBjb25zdCBvYmpJZCA9IHBhcnNlZC5vYmpbdGhpcy5pZFByb3BdO1xyXG5cclxuICAgIC8vIEVuc3VyZSB3ZSBjcmVhdGUgYSBuZXcgb2JqZWN0IHRvIGF2b2lkIG11dGF0aW9uIGlzc3Vlc1xyXG5cclxuICAgIGNvbnN0IHVwZGF0ZWRPYmplY3QgPSB7XHJcbiAgICAgIC4uLnBhcnNlZC5vYmosXHJcbiAgICAgIFt0aGlzLnN0YXJ0VGltZVByb3BdOiB0aGlzLmNyZWF0ZURhdGUocGFyc2VJbnQoc3BsaXRIb3VyWzBdKSwgcGFyc2VJbnQoc3BsaXRIb3VyWzFdKSksXHJcbiAgICAgIFt0aGlzLmVuZFRpbWVQcm9wXTogdGhpcy5jcmVhdGVEYXRlKG5ld0VuZEhvdXIsIG5ld0VuZE1pbnV0ZXMpXHJcbiAgICB9O1xyXG5cclxuICAgIC8vIFJlbW92ZSB0aGUgb2JqZWN0IGZyb20gaXRzIG9sZCBob3VyIGJsb2NrIHVzaW5nIGl0cyB1bmlxdWUgaWRcclxuICAgIGNvbnN0IG9yaWdpbmFsSG91ckJsb2NrID0gdGhpcy5mb3JtYXRIb3VyKHBhcnNlSW50KG9yaWdpbmFsU3RhcnRIb3VyLnNwbGl0KCc6JylbMF0pLCBwYXJzZUludChvcmlnaW5hbFN0YXJ0SG91ci5zcGxpdCgnOicpWzFdKSk7XHJcbiAgICB0aGlzLnNjaGVkdWxlZE9iamVjdHNbb3JpZ2luYWxIb3VyQmxvY2tdID0gdGhpcy5zY2hlZHVsZWRPYmplY3RzW29yaWdpbmFsSG91ckJsb2NrXS5maWx0ZXIobyA9PiBvW3RoaXMuaWRQcm9wXSAhPT0gb2JqSWQpO1xyXG5cclxuICAgIC8vIEFkZCB0aGUgb2JqZWN0IHRvIHRoZSBuZXcgaG91ciBibG9ja1xyXG5cclxuICAgIGlmICghdGhpcy5zY2hlZHVsZWRPYmplY3RzW2hvdXJdKSB7XHJcbiAgICAgIHRoaXMuc2NoZWR1bGVkT2JqZWN0c1tob3VyXSA9IFtdO1xyXG4gICAgfVxyXG4gICAgdGhpcy5zY2hlZHVsZWRPYmplY3RzW2hvdXJdLnB1c2godXBkYXRlZE9iamVjdCk7XHJcblxyXG4gICAgLy8gQ2xlYXIgdGhlIGRyYWdnZWQgb2JqZWN0XHJcbiAgICB0aGlzLmRyYWdnZWRPYmplY3QgPSBudWxsO1xyXG5cclxuICAgIHRoaXMudGltZUNoYW5nZUV2ZW50LmVtaXQodXBkYXRlZE9iamVjdCk7XHJcbiAgICAvLyBUcmlnZ2VyIGNoYW5nZSBkZXRlY3Rpb24gdG8gdXBkYXRlIHRoZSB2aWV3XHJcbiAgICB0aGlzLmNkUmVmLmRldGVjdENoYW5nZXMoKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBjb252ZXJ0VG9Ib3VyTm90YXRpb24oZGF0ZTogRGF0ZSk6IHN0cmluZyB7XHJcbiAgICByZXR1cm4gdGhpcy5kYXRlUGlwZS50cmFuc2Zvcm0obmV3IERhdGUoZGF0ZSkudG9JU09TdHJpbmcoKSwgJ0hIOm1tJyk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgY3JlYXRlRGF0ZShob3VyczogbnVtYmVyLCBtaW51dGVzPzogbnVtYmVyKSB7XHJcbiAgICBsZXQgZGF0ZSA9IG5ldyBEYXRlKCk7XHJcbiAgICBkYXRlLnNldEhvdXJzKGhvdXJzKTtcclxuICAgIGRhdGUuc2V0TWludXRlcyhtaW51dGVzID8gbWludXRlcyA6IDApO1xyXG4gICAgcmV0dXJuIGRhdGU7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgZGF0ZVRvVW5peEVwb2NoKGRhdGU6IERhdGUpOiBudW1iZXIge1xyXG4gICAgcmV0dXJuIE1hdGguZmxvb3IoZGF0ZS5nZXRUaW1lKCkpIC8gMTAwMDtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBmb3JtYXRIb3VyKGhvdXI6IG51bWJlciwgbWludXRlcz86IG51bWJlcik6IHN0cmluZyB7XHJcbiAgICByZXR1cm4gYCR7aG91cn06JHttaW51dGVzID8gbWludXRlcyA6ICcwMCd9YDtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBhZGRNaW51dGVzKGhvdXI6IHN0cmluZykge1xyXG4gICAgbGV0IHNwbGl0ID0gaG91ci5zcGxpdChcIjpcIik7XHJcbiAgICBzcGxpdFsxXSA9IFwiMzBcIjtcclxuICAgIHJldHVybiBzcGxpdC5qb2luKCc6Jyk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgb25Eb2N1bWVudENsaWNrKGV2ZW50OiBFdmVudCkge1xyXG4gICAgY29uc3QgdGFyZ2V0RWxlbWVudCA9IGV2ZW50LnRhcmdldCBhcyBIVE1MRWxlbWVudDtcclxuXHJcbiAgICAvLyBDbGVhciBhY3RpdmUgc3RhdGUgd2hlbiBjbGlja2luZyBvdXRzaWRlXHJcbiAgICBpZiAoIXRhcmdldEVsZW1lbnQuY2xvc2VzdCgnLm9iamVjdC1kaXNwbGF5JykpIHtcclxuICAgICAgdGhpcy5hY3RpdmVIYWxmSG91ciA9IG51bGw7XHJcbiAgICAgIHRoaXMuY2RSZWYuZGV0ZWN0Q2hhbmdlcygpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHVibGljIG9uT2JqZWN0RGlzcGxheUNsaWNrKGhvdXI6IHN0cmluZywgaGFsZjogJ2ZpcnN0SGFsZicgfCAnc2Vjb25kSGFsZicpIHtcclxuICAgIGNvbnN0IGhhbGZIb3VySWRlbnRpZmllciA9IGAke2hvdXJ9LSR7aGFsZn1gO1xyXG5cclxuICAgIGlmICh0aGlzLmFjdGl2ZUhhbGZIb3VyID09PSBoYWxmSG91cklkZW50aWZpZXIpIHtcclxuICAgICAgLy8gRGVhY3RpdmF0ZSBpZiBjbGlja2VkIGFnYWluXHJcbiAgICAgIHRoaXMuYWN0aXZlSGFsZkhvdXIgPSBudWxsO1xyXG4gICAgfSBlbHNlIGlmICh0aGlzLnNjaGVkdWxlZE9iamVjdHNbaG91cl0/Lmxlbmd0aCA+IDAgfHwgdGhpcy5zY2hlZHVsZWRPYmplY3RzW3RoaXMuYWRkTWludXRlcyhob3VyKV0/Lmxlbmd0aCA+IDApIHtcclxuICAgICAgLy8gQWN0aXZhdGUgdGhlIGhhbGYtaG91ciBpZiB0aGVyZSBhcmUgb2JqZWN0c1xyXG4gICAgICB0aGlzLmFjdGl2ZUhhbGZIb3VyID0gaGFsZkhvdXJJZGVudGlmaWVyO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHVibGljIHRyeVBhcnNlSlNPTk9iamVjdChqc29uU3RyaW5nOiBzdHJpbmcpIHtcclxuICAgIHRyeSB7XHJcbiAgICAgIGxldCBvID0gSlNPTi5wYXJzZShqc29uU3RyaW5nKTtcclxuXHJcbiAgICAgIC8vIEhhbmRsZSBub24tZXhjZXB0aW9uLXRocm93aW5nIGNhc2VzOlxyXG4gICAgICAvLyBOZWl0aGVyIEpTT04ucGFyc2UoZmFsc2UpIG9yIEpTT04ucGFyc2UoMTIzNCkgdGhyb3cgZXJyb3JzLCBoZW5jZSB0aGUgdHlwZS1jaGVja2luZyxcclxuICAgICAgLy8gYnV0Li4uIEpTT04ucGFyc2UobnVsbCkgcmV0dXJucyBudWxsLCBhbmQgdHlwZW9mIG51bGwgPT09IFwib2JqZWN0XCIsXHJcbiAgICAgIC8vIHNvIHdlIG11c3QgY2hlY2sgZm9yIHRoYXQsIHRvby4gVGhhbmtmdWxseSwgbnVsbCBpcyBmYWxzZXksIHNvIHRoaXMgc3VmZmljZXM6XHJcbiAgICAgIGlmIChvICYmIHR5cGVvZiBvID09PSBcIm9iamVjdFwiKSB7XHJcbiAgICAgICAgcmV0dXJuIG87XHJcbiAgICAgIH1cclxuICAgIH0gY2F0Y2ggKGUpIHtcclxuICAgIH1cclxuXHJcbiAgICByZXR1cm4gZmFsc2U7XHJcbiAgfTtcclxufVxyXG4iXX0=
|
|
@@ -255,6 +255,7 @@ InputNumberPickerComponent.decorators = [
|
|
|
255
255
|
[readonly]="readonly"
|
|
256
256
|
[disabled]="disabled"
|
|
257
257
|
[required]="required"
|
|
258
|
+
[placeholder]="label"
|
|
258
259
|
(ngModelChange)="handleChangeModel($event)"
|
|
259
260
|
(keydown)="handleInputKeyDown($event)"
|
|
260
261
|
(blur)="handleBlur()"/>
|
|
@@ -311,4 +312,4 @@ InputNumberPickerComponent.propDecorators = {
|
|
|
311
312
|
__decorate([
|
|
312
313
|
InputBoolean()
|
|
313
314
|
], InputNumberPickerComponent.prototype, "noValidation", void 0);
|
|
314
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5wdXQtbnVtYmVyLXBpY2tlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlY29tcG9uZW50cy9zcmMvbGliL2NvbXBvbmVudHMvaW5wdXQtbnVtYmVyLXBpY2tlci9pbnB1dC1udW1iZXItcGlja2VyLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUNILHVCQUF1QixFQUN2QixpQkFBaUIsRUFDakIsU0FBUyxFQUNULHdCQUF3QixFQUFFLFVBQVUsRUFDcEMsWUFBWSxFQUNaLFVBQVUsRUFDVixXQUFXLEVBQ1gsTUFBTSxFQUNOLEtBQUssRUFDTCxNQUFNLEVBR04sUUFBUSxFQUNSLE1BQU0sRUFFTixpQkFBaUIsRUFDcEIsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFDLGtCQUFrQixFQUFDLE1BQU0sOEJBQThCLENBQUM7QUFDaEUsT0FBTyxFQUFDLFlBQVksRUFBQyxNQUFNLDhDQUE4QyxDQUFDO0FBRTFFLE9BQU8sRUFBQyw0QkFBNEIsRUFBQyxNQUFNLGtEQUFrRCxDQUFDO0FBQzlGLE9BQU8sRUFBQyxpQ0FBaUMsRUFBQyxNQUFNLHVEQUF1RCxDQUFDO0FBR3hHLE9BQU8sRUFBQyx1Q0FBdUMsRUFBQyxNQUFNLDREQUE0RCxDQUFDO0FBQ25ILE9BQU8sRUFBQywrQkFBK0IsRUFBQyxNQUFNLG9EQUFvRCxDQUFDO0FBQ25HLE9BQU8sRUFBQyxnQkFBZ0IsRUFBQyxNQUFNLDRCQUE0QixDQUFDO0FBQzVELE9BQU8sRUFBQyxrQkFBa0IsRUFBQyxNQUFNLDJDQUEyQyxDQUFDO0FBQzdFLE9BQU8sRUFBQyw4Q0FBOEMsRUFBQyxNQUFNLGlFQUFpRSxDQUFDO0FBQy9ILE9BQU8sRUFBQyxhQUFhLEVBQUMsTUFBTSx3QkFBd0IsQ0FBQztBQUNyRCxPQUFPLEVBQUMsY0FBYyxFQUFDLE1BQU0sK0JBQStCLENBQUM7QUFFN0Qs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Q0FBa0M7dUJBSzlDLFdBQVcsU0FBQyxpQkFBaUI7d0JBSzdCLFdBQVcsU0FBQyw4QkFBOEI7O0FBeEIzQztJQURVLFlBQVksRUFBRTtnRUFDWSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gICAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gICAgQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICAgQ29tcG9uZW50LFxuICAgIENvbXBvbmVudEZhY3RvcnlSZXNvbHZlciwgRWxlbWVudFJlZixcbiAgICBFdmVudEVtaXR0ZXIsXG4gICAgZm9yd2FyZFJlZixcbiAgICBIb3N0QmluZGluZyxcbiAgICBJbmplY3QsXG4gICAgSW5wdXQsXG4gICAgTmdab25lLFxuICAgIE9uRGVzdHJveSxcbiAgICBPbkluaXQsXG4gICAgT3B0aW9uYWwsXG4gICAgT3V0cHV0LFxuICAgIFZpZXdDaGlsZCxcbiAgICBWaWV3RW5jYXBzdWxhdGlvblxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7QmFzZUlucHV0Q29tcG9uZW50fSBmcm9tICcuLi9iYXNlL2Jhc2UtaW5wdXQuY29tcG9uZW50JztcbmltcG9ydCB7SW5wdXRCb29sZWFufSBmcm9tICcuLi8uLi9jb3JlL2RlY29yYXRvci9pbnB1dC1ib29sZWFuLmRlY29yYXRvcic7XG5pbXBvcnQge1N1YnNjcmlwdGlvbn0gZnJvbSAncnhqcyc7XG5pbXBvcnQge0JvdW5kc0NvbnN0cmFpbmVkTnVtYmVyVmFsdWV9IGZyb20gJy4uLy4uL2NvcmUvbW9kZWwvYm91bmRzLWNvbnN0cmFpbmVkLW51bWJlci12YWx1ZSc7XG5pbXBvcnQge05VTUJFUl9JTlBVVFNfS0VZX0RPV05fV0hJVEVfTElTVH0gZnJvbSAnLi4vLi4vY29yZS9jb25zdGFudC9udW1iZXItaW5wdXRzLWtleS1kb3duLXdoaXRlLWxpc3QnO1xuaW1wb3J0IHtLZXlib2FyZENvZGV9IGZyb20gJy4uLy4uL2NvcmUvZW51bS9rZXlib2FyZC1jb2RlLmVudW0nO1xuaW1wb3J0IHtJbnB1dFRleHRDb21wb25lbnR9IGZyb20gJy4uL2lucHV0LXRleHQvaW5wdXQtdGV4dC5jb21wb25lbnQnO1xuaW1wb3J0IHtGb3JtSW5wdXRVc2VyTW9kZWxDaGFuZ2VMaXN0ZW5lclNlcnZpY2V9IGZyb20gJy4uLy4uL2NvcmUvc2VydmljZS9mb3JtLWlucHV0LXVzZXItY2hhbmdlLWxpc3RlbmVyLnNlcnZpY2UnO1xuaW1wb3J0IHtJbnB1dE51bWJlclBpY2tlckJ1dHRvblNob3dNb2RlfSBmcm9tICcuLi8uLi9jb3JlL2VudW0vaW5wdXQtbnVtYmVyLXBpY2tlci1zaG93LW1vZGUuZW51bSc7XG5pbXBvcnQge0ljb25DYWNoZVNlcnZpY2V9IGZyb20gJy4uL2ljb24vaWNvbi1jYWNoZS5zZXJ2aWNlJztcbmltcG9ydCB7Q29yZUNvbXBvbmVudHNJY29ufSBmcm9tICcuLi8uLi9jb3JlL2VudW0vY29yZS1jb21wb25lbnRzLWljb24uZW51bSc7XG5pbXBvcnQge1NDUkVFTl9DT05GSUdfQURBUFRFUl9DT01QT05FTlRfSU5URVJGQUNFX05BTUV9IGZyb20gJy4uLy4uL2ludGVyZmFjZXMvc2NyZWVuLWNvbmZpZy1hZGFwdGVyLWNvbXBvbmVudC1pbnRlcmZhY2UtbmFtZSc7XG5pbXBvcnQge0Zvcm1Db21wb25lbnR9IGZyb20gJy4uL2Zvcm0vZm9ybS5jb21wb25lbnQnO1xuaW1wb3J0IHtPdmVybGF5U2VydmljZX0gZnJvbSAnLi4vLi4vc2VydmljZS9vdmVybGF5LnNlcnZpY2UnO1xuaW1wb3J0IHtTYWZlSHRtbH0gZnJvbSAnQGFuZ3VsYXIvcGxhdGZvcm0tYnJvd3Nlcic7XG5pbXBvcnQge05nWm9uZVdyYXBwZXJTZXJ2aWNlfSBmcm9tICcuLi8uLi9jb3JlL3NlcnZpY2Uvbmctem9uZS13cmFwcGVyLnNlcnZpY2UnO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ2NvLWlucHV0LW51bWJlci1waWNrZXInLFxuICAgIHRlbXBsYXRlOiBgXG4gICAgICAgIDxkaXYgY2xhc3M9XCJpY29uLXdyYXBwZXJcIiAqbmdJZj1cImxlZnRJY29uRGF0YVwiPlxuICAgICAgICAgICAgPGNvLWljb24gY2xhc3M9XCJpbnB1dC1udW1iZXItcGlja2VyLWljb25cIiBbaWNvbkRhdGFdPVwibGVmdEljb25EYXRhXCIgKGNsaWNrKT1cImljb25DbGljay5lbWl0KCRldmVudClcIj48L2NvLWljb24+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwic3BhY2VyXCI+PC9kaXY+XG4gICAgICAgIDwvZGl2PlxuICAgICAgICA8ZGl2IGNsYXNzPVwiYnV0dG9uLXdyYXBwZXJcIj5cbiAgICAgICAgICAgIDxjby1idXR0b24gKm5nSWY9XCJzaG93QnV0dG9uc1wiIGNsYXNzPVwibWludXMtb3BlcmF0b3JcIiBbY2xhc3Muc2VsZWN0XT1cIm1pblNlbGVjdGVkXCIgdGFiaW5kZXg9XCItMVwiXG4gICAgICAgICAgICAgICAgICAgICAgIFtkaXNhYmxlZF09XCJyZWFkb25seVwiXG4gICAgICAgICAgICAgICAgICAgICAgIFtpY29uRGF0YV09XCJpY29uQ2FjaGVTZXJ2aWNlLmdldEljb24obWludXNJY29uKVwiXG4gICAgICAgICAgICAgICAgICAgICAgIChtb3VzZWRvd24pPVwib25NaW51c01vdXNlRG93bigkZXZlbnQpXCJcbiAgICAgICAgICAgICAgICAgICAgICAgKG1vdXNldXApPVwic3RvcEF1dG9Db3VudGluZygpXCIgKG1vdXNlbGVhdmUpPVwic3RvcEF1dG9Db3VudGluZygpXCI+PC9jby1idXR0b24+XG4gICAgICAgIDwvZGl2PlxuICAgICAgICA8aW5wdXQgdHlwZT1cInRleHRcIlxuICAgICAgICAgICAgICAgW3RhYkluZGV4XT1cInJlYWRvbmx5ID8gLTEgOiAwXCJcbiAgICAgICAgICAgICAgIFtuZ01vZGVsXT1cIm1vZGVsXCJcbiAgICAgICAgICAgICAgIFtyZWFkb25seV09XCJyZWFkb25seVwiXG4gICAgICAgICAgICAgICBbZGlzYWJsZWRdPVwiZGlzYWJsZWRcIlxuICAgICAgICAgICAgICAgW3JlcXVpcmVkXT1cInJlcXVpcmVkXCJcbiAgICAgICAgICAgICAgIChuZ01vZGVsQ2hhbmdlKT1cImhhbmRsZUNoYW5nZU1vZGVsKCRldmVudClcIlxuICAgICAgICAgICAgICAgKGtleWRvd24pPVwiaGFuZGxlSW5wdXRLZXlEb3duKCRldmVudClcIlxuICAgICAgICAgICAgICAgKGJsdXIpPVwiaGFuZGxlQmx1cigpXCIvPlxuICAgICAgICA8ZGl2IGNsYXNzPVwiYnV0dG9uLXdyYXBwZXJcIj5cbiAgICAgICAgICAgIDxjby1idXR0b24gKm5nSWY9XCJzaG93QnV0dG9uc1wiIGNsYXNzPVwicGx1cy1vcGVyYXRvclwiIFtjbGFzcy5zZWxlY3RdPVwicGx1c1NlbGVjdGVkXCIgdGFiaW5kZXg9XCItMVwiXG4gICAgICAgICAgICAgICAgICAgICAgIFtkaXNhYmxlZF09XCJyZWFkb25seVwiXG4gICAgICAgICAgICAgICAgICAgICAgIFtpY29uRGF0YV09XCJpY29uQ2FjaGVTZXJ2aWNlLmdldEljb24ocGx1c0ljb24pXCJcbiAgICAgICAgICAgICAgICAgICAgICAgKG1vdXNlZG93bik9XCJvblBsdXNNb3VzZURvd24oJGV2ZW50KVwiXG4gICAgICAgICAgICAgICAgICAgICAgIChtb3VzZXVwKT1cInN0b3BBdXRvQ291bnRpbmcoKVwiIChtb3VzZWxlYXZlKT1cInN0b3BBdXRvQ291bnRpbmcoKVwiPjwvY28tYnV0dG9uPlxuICAgICAgICA8L2Rpdj5cbiAgICBgLFxuICAgIHByb3ZpZGVyczogW1xuICAgICAgICBPdmVybGF5U2VydmljZSwge1xuICAgICAgICAgICAgcHJvdmlkZTogU0NSRUVOX0NPTkZJR19BREFQVEVSX0NPTVBPTkVOVF9JTlRFUkZBQ0VfTkFNRSwgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gSW5wdXROdW1iZXJQaWNrZXJDb21wb25lbnQpXG4gICAgICAgIH0sIHtcbiAgICAgICAgICAgIHByb3ZpZGU6IEJhc2VJbnB1dENvbXBvbmVudCxcbiAgICAgICAgICAgIHVzZUV4aXN0aW5nOiBJbnB1dE51bWJlclBpY2tlckNvbXBvbmVudFxuICAgICAgICB9XSxcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxufSlcbi8vIEEgY29tcG9uZW50IHRoYXQgbGV0cyB1c2VycyBwaWNrIGEgbnVtYmVyIGJ5IGluY3JlYXNpbmcgYW5kIGRlY3JlYXNpbmcgaXQgd2l0aCBidXR0b25zLCBvciBieSB0eXBpbmcuXG5leHBvcnQgY2xhc3MgSW5wdXROdW1iZXJQaWNrZXJDb21wb25lbnQgZXh0ZW5kcyBCYXNlSW5wdXRDb21wb25lbnQ8bnVtYmVyPiBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95IHtcblxuICAgIC8vIEBvdmVycmlkZVxuICAgIEBJbnB1dCgpXG4gICAgcHVibGljIHNldCBtb2RlbChtb2RlbDogbnVtYmVyKSB7XG4gICAgICAgIHRoaXMuc2V0VmFsdWUobW9kZWwsIHRydWUpO1xuICAgICAgICBzdXBlci5tb2RlbCA9IG1vZGVsO1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXQgbW9kZWwoKTogbnVtYmVyIHtcbiAgICAgICAgcmV0dXJuIHN1cGVyLm1vZGVsO1xuICAgIH1cblxuICAgIEBJbnB1dCgpXG4gICAgcHVibGljIG1vZGVsQ2hhbmdlT25FbnRlcjogYm9vbGVhbiA9IHRydWU7XG5cbiAgICBASG9zdEJpbmRpbmcoJ2NsYXNzLmhhcy1pY29uJylcbiAgICBASW5wdXQoKVxuICAgIHB1YmxpYyBsZWZ0SWNvbkRhdGE6IFNhZmVIdG1sIHwgdW5kZWZpbmVkO1xuXG4gICAgQElucHV0KClcbiAgICBwdWJsaWMgc2V0IG1pbihtaW46IG51bWJlcikge1xuICAgICAgICB0aGlzLm51bWJlckxvZ2ljLm1pbiA9IG1pbjtcbiAgICB9XG5cbiAgICBASW5wdXQoKVxuICAgIHB1YmxpYyBzZXQgc3RlcChzdGVwOiBudW1iZXIpIHtcbiAgICAgICAgdGhpcy5udW1iZXJMb2dpYy5zdGVwID0gc3RlcDtcbiAgICB9XG5cbiAgICBASW5wdXQoKVxuICAgIHB1YmxpYyBzZXQgbWF4KG1heDogbnVtYmVyKSB7XG4gICAgICAgIHRoaXMubnVtYmVyTG9naWMubWF4ID0gbWF4O1xuICAgIH1cblxuICAgIEBJbnB1dCgpXG4gICAgcHVibGljIG5nTW9kZWxPcHRpb25zOiBhbnk7XG5cbiAgICBASW5wdXQoKVxuICAgIHB1YmxpYyBtaW51c0ljb246IENvcmVDb21wb25lbnRzSWNvbiA9IENvcmVDb21wb25lbnRzSWNvbi5NaW51c1NpbXBsZTtcblxuICAgIEBJbnB1dCgpXG4gICAgcHVibGljIHBsdXNJY29uOiBDb3JlQ29tcG9uZW50c0ljb24gPSBDb3JlQ29tcG9uZW50c0ljb24uUGx1c1NpbXBsZTtcblxuICAgIC8vIFdoZXRoZXIgdG8gc2hvdyBidXR0b25zICdhbHdheXMnLCAnb25Gb2N1c09ubHknLCBvciAnbmV2ZXInXG4gICAgQElucHV0KClcbiAgICBwdWJsaWMgYnV0dG9uU2hvd01vZGU6IElucHV0TnVtYmVyUGlja2VyQnV0dG9uU2hvd01vZGUgPSBJbnB1dE51bWJlclBpY2tlckJ1dHRvblNob3dNb2RlLkFsd2F5cztcblxuICAgIC8vIEBvdmVycmlkZSBEZWZhdWx0IHRydWUgZm9yIHVzLlxuICAgIEBJbnB1dCgpIEBJbnB1dEJvb2xlYW4oKVxuICAgIHB1YmxpYyBub1ZhbGlkYXRpb246IGJvb2xlYW4gPSB0cnVlO1xuXG4gICAgQElucHV0KClcbiAgICBwdWJsaWMgc2V0IGRlY2ltYWxzKGRlY2ltYWxzOiBudW1iZXIpIHtcbiAgICAgICAgdGhpcy5udW1iZXJMb2dpYy5kZWNpbWFscyA9IGRlY2ltYWxzO1xuICAgIH1cblxuICAgIC8vIEBvdmVycmlkZVxuICAgIEBPdXRwdXQoKVxuICAgIHB1YmxpYyByZWFkb25seSBtb2RlbENoYW5nZTogRXZlbnRFbWl0dGVyPG51bWJlcj4gPSBuZXcgRXZlbnRFbWl0dGVyPG51bWJlcj4oKTtcblxuICAgIEBPdXRwdXQoKVxuICAgIHB1YmxpYyByZWFkb25seSBpY29uQ2xpY2s6IEV2ZW50RW1pdHRlcjxNb3VzZUV2ZW50PiA9IG5ldyBFdmVudEVtaXR0ZXI8TW91c2VFdmVudD4oKTtcblxuICAgIEBIb3N0QmluZGluZygnY2xhc3Muc2hvdy1idXR0b25zLW9uLWZvY3VzLW9ubHknKVxuICAgIHB1YmxpYyBnZXQgc2hvd0J1dHRvbnNPbkZvY3VzT25seSgpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuYnV0dG9uU2hvd01vZGUgPT09IElucHV0TnVtYmVyUGlja2VyQnV0dG9uU2hvd01vZGUuT25Gb2N1c09ubHk7XG4gICAgfVxuXG4gICAgQEhvc3RCaW5kaW5nKCdjbGFzcy5oYXMtbGFiZWwnKVxuICAgIHB1YmxpYyBnZXQgaGFzTGFiZWwoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiAhIXRoaXMubGFiZWw7XG4gICAgfVxuXG4gICAgQEhvc3RCaW5kaW5nKCdjbGFzcy5jby1pbnB1dC1udW1iZXItcGlja2VyJylcbiAgICBwdWJsaWMgc2hvd0NsYXNzKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICB9XG5cbiAgICBwdWJsaWMgc2hvd0J1dHRvbnM6IGJvb2xlYW47XG5cbiAgICBwdWJsaWMgcmVhZG9ubHkgbXlLZXlEb3duV2hpdGVMaXN0OiBLZXlib2FyZENvZGVbXSA9IE5VTUJFUl9JTlBVVFNfS0VZX0RPV05fV0hJVEVfTElTVDtcblxuICAgIHB1YmxpYyByZWFkb25seSBudW1iZXJMb2dpYzogQm91bmRzQ29uc3RyYWluZWROdW1iZXJWYWx1ZSA9IG5ldyBCb3VuZHNDb25zdHJhaW5lZE51bWJlclZhbHVlKCk7XG5cbiAgICBwdWJsaWMgbWluU2VsZWN0ZWQ6IGJvb2xlYW4gPSBmYWxzZTtcbiAgICBwdWJsaWMgcGx1c1NlbGVjdGVkOiBib29sZWFuID0gZmFsc2U7XG5cbiAgICBwcml2YXRlIF9udW1iZXJJbnB1dEhhc0ZvY3VzOiBib29sZWFuID0gZmFsc2U7XG4gICAgcHJpdmF0ZSBfY2hhbmdlRnJvbUJ1dHRvbjogYm9vbGVhbiA9IGZhbHNlO1xuXG4gICAgcHJpdmF0ZSBfbnVtYmVyTG9naWNWYWx1ZUNoYW5nZVN1YjogU3Vic2NyaXB0aW9uO1xuICAgIHByaXZhdGUgcmVhZG9ubHkgX2RlbGF5QmVmb3JlU3RhcnRBdXRvQ291bnRNczogbnVtYmVyID0gNjY2O1xuICAgIC8vIHRoZSAnc3BlZWQgZ2VhcnMnIGZvciBhdXRvIGNvdW50aW5nXG4gICAgcHJpdmF0ZSByZWFkb25seSBfc3RlcEZhY3RvcnM6IG51bWJlcltdID0gWzEsIDEwLCAyMF07XG4gICAgLy8gaW5jcmVhc2Ugc3RlcCBzaXplIHRpbWluZ1xuICAgIHByaXZhdGUgcmVhZG9ubHkgX21zQ2hhbmdlU3RlcEZhY3RvcjogbnVtYmVyID0gMTAwMDtcbiAgICAvLyBzdGVwIHNwZWVkXG4gICAgcHJpdmF0ZSByZWFkb25seSBfbXNEb1N0ZXA6IG51bWJlciA9IDU7XG4gICAgLy8gaG9sZCB0aGUgbW91c2UgZG93biBhbmQgdGhpcyBpbmNyZWFzZXMgZm9yIGEgZmFzdGVyIGF1dG8gaW5jcmVtZW50XG4gICAgcHJpdmF0ZSBfc3RlcEZhY3RvcjogbnVtYmVyID0gdGhpcy5fc3RlcEZhY3RvcnNbMF07XG4gICAgcHJpdmF0ZSBfbWF5QXV0b0NvdW50OiBib29sZWFuID0gZmFsc2U7XG5cbiAgICBwcml2YXRlIF9hdXRvQ291bnRUaW1lb3V0OiBudW1iZXI7XG4gICAgcHJpdmF0ZSBfc3RlcEluY3JlbWVudFRpbWVvdXQ6IG51bWJlcjtcbiAgICBwcml2YXRlIF9zdGFydEF1dG9jb3VudFRpbWVvdXQ6IG51bWJlcjtcblxuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBAT3B0aW9uYWwoKSBwdWJsaWMgZm9ybUNvbXBvbmVudDogRm9ybUNvbXBvbmVudCxcbiAgICAgICAgQEluamVjdChJY29uQ2FjaGVTZXJ2aWNlKSBwdWJsaWMgaWNvbkNhY2hlU2VydmljZTogSWNvbkNhY2hlU2VydmljZSxcbiAgICAgICAgcHJvdGVjdGVkIG92ZXJsYXlTZXJ2aWNlOiBPdmVybGF5U2VydmljZSxcbiAgICAgICAgcHJpdmF0ZSBfbmdab25lOiBOZ1pvbmUsXG4gICAgICAgIHByb3RlY3RlZCBjb21wb25lbnRGYWN0b3J5UmVzb2x2ZXI6IENvbXBvbmVudEZhY3RvcnlSZXNvbHZlcixcbiAgICAgICAgY2hhbmdlRGV0ZWN0b3I6IENoYW5nZURldGVjdG9yUmVmLFxuICAgICAgICBmb3JtVXNlckNoYW5nZUxpc3RlbmVyOiBGb3JtSW5wdXRVc2VyTW9kZWxDaGFuZ2VMaXN0ZW5lclNlcnZpY2UsXG4gICAgICAgIHByb3RlY3RlZCBuZ1pvbmVXcmFwcGVyPzogTmdab25lV3JhcHBlclNlcnZpY2UsXG4gICAgICAgIHB1YmxpYyBlbGVtZW50UmVmPzogRWxlbWVudFJlZixcbiAgICApIHtcbiAgICAgICAgc3VwZXIoY2hhbmdlRGV0ZWN0b3IsIGNvbXBvbmVudEZhY3RvcnlSZXNvbHZlciwgb3ZlcmxheVNlcnZpY2UsIGZvcm1Vc2VyQ2hhbmdlTGlzdGVuZXIsIG5nWm9uZVdyYXBwZXIsIGVsZW1lbnRSZWYpO1xuXG4gICAgICAgIHRoaXMuX251bWJlckxvZ2ljVmFsdWVDaGFuZ2VTdWIgPSB0aGlzLm51bWJlckxvZ2ljLnZhbHVlQ2hhbmdlLnN1YnNjcmliZSgodmFsdWU6IG51bWJlcikgPT4ge1xuICAgICAgICAgICAgaWYgKCF0aGlzLl9tYXlBdXRvQ291bnQpIHtcbiAgICAgICAgICAgICAgICB0aGlzLm1vZGVsID0gdmFsdWU7XG4gICAgICAgICAgICAgICAgaWYgKCF0aGlzLm1vZGVsQ2hhbmdlT25FbnRlciB8fCB0aGlzLl9jaGFuZ2VGcm9tQnV0dG9uKSB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMubW9kZWxDaGFuZ2UuZW1pdCh2YWx1ZSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIC8vIGN1c3RvbSBmb3JtIHVzZXIgY2hhZ25lIGxpc3RlbmVyIC5uZXh0IGJlY2F1c2Ugd2UgZG9uJ3QgdXNlciBzdXBlci51cGRhdGVNb2RlbCgpIHdoaWNoIG5vcm1hbGx5IGRvZXMgdGhhdCBmb3IgdXNcbiAgICAgICAgICAgICAgICBpZiAodGhpcy5fbWFya2VkQXNVc2VyVG91Y2hlZCkge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLmZvcm1Vc2VyQ2hhbmdlTGlzdGVuZXIudXNlck1vZGVsQ2hhbmdlLm5leHQodmFsdWUpO1xuICAgICAgICAgICAgICAgICAgICB0aGlzLnVzZXJNb2RlbENoYW5nZS5uZXh0KHZhbHVlKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIG5nT25Jbml0KCk6IHZvaWQge1xuICAgICAgICAvLyB0aGlzLm51bWJlckxvZ2ljLnNldFZhbHVlKHRoaXMubW9kZWwsIHRydWUpO1xuICAgICAgICAvLyB0aGlzLm51bWJlckxvZ2ljLmluaXQodHJ1ZSk7XG4gICAgICAgIHRoaXMuX3VwZGF0ZUJ1dHRvbnNTaG93U3RhdGUoKTtcbiAgICB9XG5cbiAgICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5fbnVtYmVyTG9naWNWYWx1ZUNoYW5nZVN1Yi51bnN1YnNjcmliZSgpO1xuICAgICAgICBjbGVhclRpbWVvdXQodGhpcy5fYXV0b0NvdW50VGltZW91dCk7XG4gICAgICAgIGNsZWFyVGltZW91dCh0aGlzLl9zdGVwSW5jcmVtZW50VGltZW91dCk7XG4gICAgICAgIGNsZWFyVGltZW91dCh0aGlzLl9zdGFydEF1dG9jb3VudFRpbWVvdXQpO1xuICAgIH1cblxuICAgIC8vIE5vdGU6IHJlY3Vyc2l2ZSB0aHJvdWdoIHNldFRpbWVvdXQoKS5cbiAgICBwdWJsaWMgZG9JbmNyZW1lbnRBdXRvKCk6IHZvaWQge1xuICAgICAgICB0aGlzLl9tYXlBdXRvQ291bnQgPSB0cnVlO1xuXG4gICAgICAgIHRoaXMuaW5jcmVtZW50KHRoaXMuX3N0ZXBGYWN0b3IpO1xuXG4gICAgICAgIHRoaXMuX25nWm9uZS5ydW5PdXRzaWRlQW5ndWxhcigoKSA9PiB7XG4gICAgICAgICAgICB0aGlzLl9hdXRvQ291bnRUaW1lb3V0ID0gd2luZG93LnNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICAgICAgICAgIGlmICh0aGlzLl9tYXlBdXRvQ291bnQpIHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5kb0luY3JlbWVudEF1dG8oKTtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5jaGFuZ2VEZXRlY3Rvci5kZXRlY3RDaGFuZ2VzKCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSwgdGhpcy5fbXNEb1N0ZXApO1xuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBwdWJsaWMgaGFuZGxlSW5wdXRLZXlEb3duKGV2ZW50OiBLZXlib2FyZEV2ZW50KTogYm9vbGVhbiB7XG4gICAgICAgIC8vIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgICAgIGlmIChldmVudC5jb2RlID09PSAnRW50ZXInIHx8IGV2ZW50LmNvZGUgPT09ICdOdW1wYWRFbnRlcicpIHtcbiAgICAgICAgICAgIHRoaXMubW9kZWxDaGFuZ2UubmV4dCh0aGlzLm1vZGVsKTtcbiAgICAgICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgICAgfVxuICAgICAgICBpZiAodGhpcy5teUtleURvd25XaGl0ZUxpc3QuZmluZCgoaykgPT4gayA9PT0gZXZlbnQua2V5Q29kZSkgPT09IHVuZGVmaW5lZCkge1xuICAgICAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHVibGljIGhhbmRsZUJsdXIoKTogdm9pZCB7XG4gICAgICAgIHRoaXMubW9kZWxDaGFuZ2UubmV4dCh0aGlzLm1vZGVsKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgaGFuZGxlQ2hhbmdlTW9kZWwodmFsdWU6IG51bWJlcik6IHZvaWQge1xuICAgICAgICB0aGlzLl9jaGFuZ2VGcm9tQnV0dG9uID0gZmFsc2U7XG4gICAgICAgIHRoaXMubnVtYmVyTG9naWMuc2V0VmFsdWUodmFsdWUpO1xuICAgIH1cblxuICAgIC8vIE5vdGU6IHJlY3Vyc2l2ZSB0aHJvdWdoIHNldFRpbWVvdXQoKS5cbiAgICBwdWJsaWMgZG9EZWNyZW1lbnRBdXRvKCk6IHZvaWQge1xuICAgICAgICB0aGlzLl9tYXlBdXRvQ291bnQgPSB0cnVlO1xuXG4gICAgICAgIHRoaXMuZGVjcmVtZW50KHRoaXMuX3N0ZXBGYWN0b3IpO1xuXG4gICAgICAgIHRoaXMuX25nWm9uZS5ydW5PdXRzaWRlQW5ndWxhcigoKSA9PiB7XG4gICAgICAgICAgICB0aGlzLl9hdXRvQ291bnRUaW1lb3V0ID0gd2luZG93LnNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICAgICAgICAgIGlmICh0aGlzLl9tYXlBdXRvQ291bnQpIHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5kb0RlY3JlbWVudEF1dG8oKTtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5jaGFuZ2VEZXRlY3Rvci5kZXRlY3RDaGFuZ2VzKCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSwgdGhpcy5fbXNEb1N0ZXApO1xuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBwdWJsaWMgc3RvcEF1dG9Db3VudGluZygpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5taW5TZWxlY3RlZCA9IGZhbHNlO1xuICAgICAgICB0aGlzLnBsdXNTZWxlY3RlZCA9IGZhbHNlO1xuICAgICAgICB0aGlzLl9tYXlBdXRvQ291bnQgPSBmYWxzZTtcbiAgICAgICAgdGhpcy5fc3RlcEZhY3RvciA9IHRoaXMuX3N0ZXBGYWN0b3JzWzBdO1xuICAgIH1cblxuICAgIC8vIFNldHMgdGhlIGN1cnJlbnQgbnVtYmVyIHZhbHVlIHdpdGggZ2l2ZW4gbmV3VmFsdWUsIG9wdGlvbmFsbHkgc2lsZW50IChubyB2YWx1ZUNoYW5nZSBldmVudCBmaXJlZCkuXG4gICAgcHVibGljIHNldFZhbHVlKG5ld1ZhbHVlOiBudW1iZXIsIHNpbGVudDogYm9vbGVhbiA9IGZhbHNlKTogdm9pZCB7XG4gICAgICAgIHRoaXMubnVtYmVyTG9naWMuc2V0VmFsdWUobmV3VmFsdWUsIHNpbGVudCk7XG4gICAgfVxuXG4gICAgcHVibGljIGluY3JlbWVudChzdGVwczogbnVtYmVyID0gMSk6IHZvaWQge1xuICAgICAgICB0aGlzLl9jaGFuZ2VGcm9tQnV0dG9uID0gdHJ1ZTtcbiAgICAgICAgdGhpcy5udW1iZXJMb2dpYy5pbmNyZW1lbnQoc3RlcHMpO1xuICAgIH1cblxuICAgIHB1YmxpYyBkZWNyZW1lbnQoc3RlcHM6IG51bWJlciA9IDEpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5fY2hhbmdlRnJvbUJ1dHRvbiA9IHRydWU7XG4gICAgICAgIHRoaXMubnVtYmVyTG9naWMuZGVjcmVtZW50KHN0ZXBzKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgb25QbHVzTW91c2VEb3duKGV2ZW50OiBFdmVudCk6IHZvaWQge1xuICAgICAgICBpZiAodGhpcy5yZWFkb25seSkge1xuICAgICAgICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgICB0aGlzLnBsdXNTZWxlY3RlZCA9IHRydWU7XG4gICAgICAgIHRoaXMuX21hcmtlZEFzVXNlclRvdWNoZWQgPSB0cnVlO1xuXG4gICAgICAgIC8vIGtlZXBzIGZvY3VzIG9uIGlucHV0IHRleHQgaW5zdGVhZCBvZiBidXR0b25cbiAgICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcblxuICAgICAgICB0aGlzLmluY3JlbWVudCgpO1xuICAgICAgICB0aGlzLl9tYXlBdXRvQ291bnQgPSB0cnVlO1xuXG4gICAgICAgIGNsZWFyVGltZW91dCh0aGlzLl9zdGFydEF1dG9jb3VudFRpbWVvdXQpO1xuICAgICAgICB0aGlzLl9zdGFydEF1dG9jb3VudFRpbWVvdXQgPSB3aW5kb3cuc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgICAgICBpZiAodGhpcy5fbWF5QXV0b0NvdW50KSB7XG4gICAgICAgICAgICAgICAgdGhpcy5kb0luY3JlbWVudEF1dG8oKTtcbiAgICAgICAgICAgICAgICB0aGlzLl9kb0luY3JlYXNlU3RlcEZhY3RvcigpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9LCB0aGlzLl9kZWxheUJlZm9yZVN0YXJ0QXV0b0NvdW50TXMpO1xuICAgIH1cblxuICAgIHB1YmxpYyBvbk1pbnVzTW91c2VEb3duKGV2ZW50OiBFdmVudCk6IHZvaWQge1xuICAgICAgICBpZiAodGhpcy5yZWFkb25seSkge1xuICAgICAgICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgICB0aGlzLm1pblNlbGVjdGVkID0gdHJ1ZTtcbiAgICAgICAgdGhpcy5fbWFya2VkQXNVc2VyVG91Y2hlZCA9IHRydWU7XG4gICAgICAgIC8vIGtlZXBzIGZvY3VzIG9uIGlucHV0IHRleHQgaW5zdGVhZCBvZiBidXR0b25cbiAgICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcblxuICAgICAgICB0aGlzLmRlY3JlbWVudCgpO1xuICAgICAgICB0aGlzLl9tYXlBdXRvQ291bnQgPSB0cnVlO1xuXG4gICAgICAgIGNsZWFyVGltZW91dCh0aGlzLl9zdGFydEF1dG9jb3VudFRpbWVvdXQpO1xuICAgICAgICB0aGlzLl9zdGFydEF1dG9jb3VudFRpbWVvdXQgPSB3aW5kb3cuc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgICAgICBpZiAodGhpcy5fbWF5QXV0b0NvdW50KSB7XG4gICAgICAgICAgICAgICAgdGhpcy5kb0RlY3JlbWVudEF1dG8oKTtcbiAgICAgICAgICAgICAgICB0aGlzLl9kb0luY3JlYXNlU3RlcEZhY3RvcigpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9LCB0aGlzLl9kZWxheUJlZm9yZVN0YXJ0QXV0b0NvdW50TXMpO1xuICAgIH1cblxuICAgIC8vIE5vdGU6IHJlY3Vyc2l2ZS5cbiAgICBwcml2YXRlIF9kb0luY3JlYXNlU3RlcEZhY3RvcigpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5fc3RlcEluY3JlbWVudFRpbWVvdXQgPSB3aW5kb3cuc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgICAgICBpZiAodGhpcy5fbWF5QXV0b0NvdW50KSB7XG4gICAgICAgICAgICAgICAgdGhpcy5fc3RlcEZhY3RvciA9IHRoaXMuX2dldE5leHRTdGVwRmFjdG9yTW91c2VEb3duKCk7XG4gICAgICAgICAgICAgICAgdGhpcy5fZG9JbmNyZWFzZVN0ZXBGYWN0b3IoKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSwgdGhpcy5fbXNDaGFuZ2VTdGVwRmFjdG9yKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIF9nZXROZXh0U3RlcEZhY3Rvck1vdXNlRG93bigpOiBudW1iZXIge1xuICAgICAgICBjb25zdCBjdXJJZHg6IG51bWJlciA9IHRoaXMuX3N0ZXBGYWN0b3JzLmluZGV4T2YodGhpcy5fc3RlcEZhY3Rvcik7XG4gICAgICAgIGlmIChjdXJJZHggPCB0aGlzLl9zdGVwRmFjdG9ycy5sZW5ndGggLSAxKSB7XG4gICAgICAgICAgICByZXR1cm4gdGhpcy5fc3RlcEZhY3RvcnNbY3VySWR4ICsgMV07XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHRoaXMuX3N0ZXBGYWN0b3I7XG4gICAgfVxuXG4gICAgLy8gU2hvdyBvciBoaWRlICsgYW5kIC0gYnV0dG9ucy4gTWlnaHQgaGlkZSBidXR0b25zIGlmIG51bWJlciBpbnB1dCBsb3N0IGZvY3VzIGFuZCBidXR0b24gc2hvdyBtb2RlIGlzIG9uIGZvY3VzIG9ubHkuXG4gICAgcHJpdmF0ZSBfdXBkYXRlQnV0dG9uc1Nob3dTdGF0ZSgpOiB2b2lkIHtcbiAgICAgICAgc3dpdGNoICh0aGlzLmJ1dHRvblNob3dNb2RlKSB7XG4gICAgICAgICAgICBjYXNlIElucHV0TnVtYmVyUGlja2VyQnV0dG9uU2hvd01vZGUuQWx3YXlzOlxuICAgICAgICAgICAgZGVmYXVsdDpcbiAgICAgICAgICAgICAgICB0aGlzLnNob3dCdXR0b25zID0gdHJ1ZTtcbiAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgIGNhc2UgSW5wdXROdW1iZXJQaWNrZXJCdXR0b25TaG93TW9kZS5PbkZvY3VzT25seTpcbiAgICAgICAgICAgICAgICB0aGlzLnNob3dCdXR0b25zID0gdGhpcy5fbnVtYmVySW5wdXRIYXNGb2N1cztcbiAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgIGNhc2UgSW5wdXROdW1iZXJQaWNrZXJCdXR0b25TaG93TW9kZS5OZXZlcjpcbiAgICAgICAgICAgICAgICB0aGlzLnNob3dCdXR0b25zID0gZmFsc2U7XG4gICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgIH1cbiAgICB9XG59XG4iXX0=
|
|
315
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5wdXQtbnVtYmVyLXBpY2tlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlY29tcG9uZW50cy9zcmMvbGliL2NvbXBvbmVudHMvaW5wdXQtbnVtYmVyLXBpY2tlci9pbnB1dC1udW1iZXItcGlja2VyLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUNILHVCQUF1QixFQUN2QixpQkFBaUIsRUFDakIsU0FBUyxFQUNULHdCQUF3QixFQUFFLFVBQVUsRUFDcEMsWUFBWSxFQUNaLFVBQVUsRUFDVixXQUFXLEVBQ1gsTUFBTSxFQUNOLEtBQUssRUFDTCxNQUFNLEVBR04sUUFBUSxFQUNSLE1BQU0sRUFFTixpQkFBaUIsRUFDcEIsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFDLGtCQUFrQixFQUFDLE1BQU0sOEJBQThCLENBQUM7QUFDaEUsT0FBTyxFQUFDLFlBQVksRUFBQyxNQUFNLDhDQUE4QyxDQUFDO0FBRTFFLE9BQU8sRUFBQyw0QkFBNEIsRUFBQyxNQUFNLGtEQUFrRCxDQUFDO0FBQzlGLE9BQU8sRUFBQyxpQ0FBaUMsRUFBQyxNQUFNLHVEQUF1RCxDQUFDO0FBR3hHLE9BQU8sRUFBQyx1Q0FBdUMsRUFBQyxNQUFNLDREQUE0RCxDQUFDO0FBQ25ILE9BQU8sRUFBQywrQkFBK0IsRUFBQyxNQUFNLG9EQUFvRCxDQUFDO0FBQ25HLE9BQU8sRUFBQyxnQkFBZ0IsRUFBQyxNQUFNLDRCQUE0QixDQUFDO0FBQzVELE9BQU8sRUFBQyxrQkFBa0IsRUFBQyxNQUFNLDJDQUEyQyxDQUFDO0FBQzdFLE9BQU8sRUFBQyw4Q0FBOEMsRUFBQyxNQUFNLGlFQUFpRSxDQUFDO0FBQy9ILE9BQU8sRUFBQyxhQUFhLEVBQUMsTUFBTSx3QkFBd0IsQ0FBQztBQUNyRCxPQUFPLEVBQUMsY0FBYyxFQUFDLE1BQU0sK0JBQStCLENBQUM7QUFFN0Qs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a0NBQWtDO3VCQUs5QyxXQUFXLFNBQUMsaUJBQWlCO3dCQUs3QixXQUFXLFNBQUMsOEJBQThCOztBQXhCM0M7SUFEVSxZQUFZLEVBQUU7Z0VBQ1kiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICAgIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICAgIENoYW5nZURldGVjdG9yUmVmLFxuICAgIENvbXBvbmVudCxcbiAgICBDb21wb25lbnRGYWN0b3J5UmVzb2x2ZXIsIEVsZW1lbnRSZWYsXG4gICAgRXZlbnRFbWl0dGVyLFxuICAgIGZvcndhcmRSZWYsXG4gICAgSG9zdEJpbmRpbmcsXG4gICAgSW5qZWN0LFxuICAgIElucHV0LFxuICAgIE5nWm9uZSxcbiAgICBPbkRlc3Ryb3ksXG4gICAgT25Jbml0LFxuICAgIE9wdGlvbmFsLFxuICAgIE91dHB1dCxcbiAgICBWaWV3Q2hpbGQsXG4gICAgVmlld0VuY2Fwc3VsYXRpb25cbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge0Jhc2VJbnB1dENvbXBvbmVudH0gZnJvbSAnLi4vYmFzZS9iYXNlLWlucHV0LmNvbXBvbmVudCc7XG5pbXBvcnQge0lucHV0Qm9vbGVhbn0gZnJvbSAnLi4vLi4vY29yZS9kZWNvcmF0b3IvaW5wdXQtYm9vbGVhbi5kZWNvcmF0b3InO1xuaW1wb3J0IHtTdWJzY3JpcHRpb259IGZyb20gJ3J4anMnO1xuaW1wb3J0IHtCb3VuZHNDb25zdHJhaW5lZE51bWJlclZhbHVlfSBmcm9tICcuLi8uLi9jb3JlL21vZGVsL2JvdW5kcy1jb25zdHJhaW5lZC1udW1iZXItdmFsdWUnO1xuaW1wb3J0IHtOVU1CRVJfSU5QVVRTX0tFWV9ET1dOX1dISVRFX0xJU1R9IGZyb20gJy4uLy4uL2NvcmUvY29uc3RhbnQvbnVtYmVyLWlucHV0cy1rZXktZG93bi13aGl0ZS1saXN0JztcbmltcG9ydCB7S2V5Ym9hcmRDb2RlfSBmcm9tICcuLi8uLi9jb3JlL2VudW0va2V5Ym9hcmQtY29kZS5lbnVtJztcbmltcG9ydCB7SW5wdXRUZXh0Q29tcG9uZW50fSBmcm9tICcuLi9pbnB1dC10ZXh0L2lucHV0LXRleHQuY29tcG9uZW50JztcbmltcG9ydCB7Rm9ybUlucHV0VXNlck1vZGVsQ2hhbmdlTGlzdGVuZXJTZXJ2aWNlfSBmcm9tICcuLi8uLi9jb3JlL3NlcnZpY2UvZm9ybS1pbnB1dC11c2VyLWNoYW5nZS1saXN0ZW5lci5zZXJ2aWNlJztcbmltcG9ydCB7SW5wdXROdW1iZXJQaWNrZXJCdXR0b25TaG93TW9kZX0gZnJvbSAnLi4vLi4vY29yZS9lbnVtL2lucHV0LW51bWJlci1waWNrZXItc2hvdy1tb2RlLmVudW0nO1xuaW1wb3J0IHtJY29uQ2FjaGVTZXJ2aWNlfSBmcm9tICcuLi9pY29uL2ljb24tY2FjaGUuc2VydmljZSc7XG5pbXBvcnQge0NvcmVDb21wb25lbnRzSWNvbn0gZnJvbSAnLi4vLi4vY29yZS9lbnVtL2NvcmUtY29tcG9uZW50cy1pY29uLmVudW0nO1xuaW1wb3J0IHtTQ1JFRU5fQ09ORklHX0FEQVBURVJfQ09NUE9ORU5UX0lOVEVSRkFDRV9OQU1FfSBmcm9tICcuLi8uLi9pbnRlcmZhY2VzL3NjcmVlbi1jb25maWctYWRhcHRlci1jb21wb25lbnQtaW50ZXJmYWNlLW5hbWUnO1xuaW1wb3J0IHtGb3JtQ29tcG9uZW50fSBmcm9tICcuLi9mb3JtL2Zvcm0uY29tcG9uZW50JztcbmltcG9ydCB7T3ZlcmxheVNlcnZpY2V9IGZyb20gJy4uLy4uL3NlcnZpY2Uvb3ZlcmxheS5zZXJ2aWNlJztcbmltcG9ydCB7U2FmZUh0bWx9IGZyb20gJ0Bhbmd1bGFyL3BsYXRmb3JtLWJyb3dzZXInO1xuaW1wb3J0IHtOZ1pvbmVXcmFwcGVyU2VydmljZX0gZnJvbSAnLi4vLi4vY29yZS9zZXJ2aWNlL25nLXpvbmUtd3JhcHBlci5zZXJ2aWNlJztcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICdjby1pbnB1dC1udW1iZXItcGlja2VyJyxcbiAgICB0ZW1wbGF0ZTogYFxuICAgICAgICA8ZGl2IGNsYXNzPVwiaWNvbi13cmFwcGVyXCIgKm5nSWY9XCJsZWZ0SWNvbkRhdGFcIj5cbiAgICAgICAgICAgIDxjby1pY29uIGNsYXNzPVwiaW5wdXQtbnVtYmVyLXBpY2tlci1pY29uXCIgW2ljb25EYXRhXT1cImxlZnRJY29uRGF0YVwiIChjbGljayk9XCJpY29uQ2xpY2suZW1pdCgkZXZlbnQpXCI+PC9jby1pY29uPlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cInNwYWNlclwiPjwvZGl2PlxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgPGRpdiBjbGFzcz1cImJ1dHRvbi13cmFwcGVyXCI+XG4gICAgICAgICAgICA8Y28tYnV0dG9uICpuZ0lmPVwic2hvd0J1dHRvbnNcIiBjbGFzcz1cIm1pbnVzLW9wZXJhdG9yXCIgW2NsYXNzLnNlbGVjdF09XCJtaW5TZWxlY3RlZFwiIHRhYmluZGV4PVwiLTFcIlxuICAgICAgICAgICAgICAgICAgICAgICBbZGlzYWJsZWRdPVwicmVhZG9ubHlcIlxuICAgICAgICAgICAgICAgICAgICAgICBbaWNvbkRhdGFdPVwiaWNvbkNhY2hlU2VydmljZS5nZXRJY29uKG1pbnVzSWNvbilcIlxuICAgICAgICAgICAgICAgICAgICAgICAobW91c2Vkb3duKT1cIm9uTWludXNNb3VzZURvd24oJGV2ZW50KVwiXG4gICAgICAgICAgICAgICAgICAgICAgIChtb3VzZXVwKT1cInN0b3BBdXRvQ291bnRpbmcoKVwiIChtb3VzZWxlYXZlKT1cInN0b3BBdXRvQ291bnRpbmcoKVwiPjwvY28tYnV0dG9uPlxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgPGlucHV0IHR5cGU9XCJ0ZXh0XCJcbiAgICAgICAgICAgICAgIFt0YWJJbmRleF09XCJyZWFkb25seSA/IC0xIDogMFwiXG4gICAgICAgICAgICAgICBbbmdNb2RlbF09XCJtb2RlbFwiXG4gICAgICAgICAgICAgICBbcmVhZG9ubHldPVwicmVhZG9ubHlcIlxuICAgICAgICAgICAgICAgW2Rpc2FibGVkXT1cImRpc2FibGVkXCJcbiAgICAgICAgICAgICAgIFtyZXF1aXJlZF09XCJyZXF1aXJlZFwiXG4gICAgICAgICAgICAgICBbcGxhY2Vob2xkZXJdPVwibGFiZWxcIlxuICAgICAgICAgICAgICAgKG5nTW9kZWxDaGFuZ2UpPVwiaGFuZGxlQ2hhbmdlTW9kZWwoJGV2ZW50KVwiXG4gICAgICAgICAgICAgICAoa2V5ZG93bik9XCJoYW5kbGVJbnB1dEtleURvd24oJGV2ZW50KVwiXG4gICAgICAgICAgICAgICAoYmx1cik9XCJoYW5kbGVCbHVyKClcIi8+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJidXR0b24td3JhcHBlclwiPlxuICAgICAgICAgICAgPGNvLWJ1dHRvbiAqbmdJZj1cInNob3dCdXR0b25zXCIgY2xhc3M9XCJwbHVzLW9wZXJhdG9yXCIgW2NsYXNzLnNlbGVjdF09XCJwbHVzU2VsZWN0ZWRcIiB0YWJpbmRleD1cIi0xXCJcbiAgICAgICAgICAgICAgICAgICAgICAgW2Rpc2FibGVkXT1cInJlYWRvbmx5XCJcbiAgICAgICAgICAgICAgICAgICAgICAgW2ljb25EYXRhXT1cImljb25DYWNoZVNlcnZpY2UuZ2V0SWNvbihwbHVzSWNvbilcIlxuICAgICAgICAgICAgICAgICAgICAgICAobW91c2Vkb3duKT1cIm9uUGx1c01vdXNlRG93bigkZXZlbnQpXCJcbiAgICAgICAgICAgICAgICAgICAgICAgKG1vdXNldXApPVwic3RvcEF1dG9Db3VudGluZygpXCIgKG1vdXNlbGVhdmUpPVwic3RvcEF1dG9Db3VudGluZygpXCI+PC9jby1idXR0b24+XG4gICAgICAgIDwvZGl2PlxuICAgIGAsXG4gICAgcHJvdmlkZXJzOiBbXG4gICAgICAgIE92ZXJsYXlTZXJ2aWNlLCB7XG4gICAgICAgICAgICBwcm92aWRlOiBTQ1JFRU5fQ09ORklHX0FEQVBURVJfQ09NUE9ORU5UX0lOVEVSRkFDRV9OQU1FLCB1c2VFeGlzdGluZzogZm9yd2FyZFJlZigoKSA9PiBJbnB1dE51bWJlclBpY2tlckNvbXBvbmVudClcbiAgICAgICAgfSwge1xuICAgICAgICAgICAgcHJvdmlkZTogQmFzZUlucHV0Q29tcG9uZW50LFxuICAgICAgICAgICAgdXNlRXhpc3Rpbmc6IElucHV0TnVtYmVyUGlja2VyQ29tcG9uZW50XG4gICAgICAgIH1dLFxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICAgIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXG59KVxuLy8gQSBjb21wb25lbnQgdGhhdCBsZXRzIHVzZXJzIHBpY2sgYSBudW1iZXIgYnkgaW5jcmVhc2luZyBhbmQgZGVjcmVhc2luZyBpdCB3aXRoIGJ1dHRvbnMsIG9yIGJ5IHR5cGluZy5cbmV4cG9ydCBjbGFzcyBJbnB1dE51bWJlclBpY2tlckNvbXBvbmVudCBleHRlbmRzIEJhc2VJbnB1dENvbXBvbmVudDxudW1iZXI+IGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xuXG4gICAgLy8gQG92ZXJyaWRlXG4gICAgQElucHV0KClcbiAgICBwdWJsaWMgc2V0IG1vZGVsKG1vZGVsOiBudW1iZXIpIHtcbiAgICAgICAgdGhpcy5zZXRWYWx1ZShtb2RlbCwgdHJ1ZSk7XG4gICAgICAgIHN1cGVyLm1vZGVsID0gbW9kZWw7XG4gICAgfVxuXG4gICAgcHVibGljIGdldCBtb2RlbCgpOiBudW1iZXIge1xuICAgICAgICByZXR1cm4gc3VwZXIubW9kZWw7XG4gICAgfVxuXG4gICAgQElucHV0KClcbiAgICBwdWJsaWMgbW9kZWxDaGFuZ2VPbkVudGVyOiBib29sZWFuID0gdHJ1ZTtcblxuICAgIEBIb3N0QmluZGluZygnY2xhc3MuaGFzLWljb24nKVxuICAgIEBJbnB1dCgpXG4gICAgcHVibGljIGxlZnRJY29uRGF0YTogU2FmZUh0bWwgfCB1bmRlZmluZWQ7XG5cbiAgICBASW5wdXQoKVxuICAgIHB1YmxpYyBzZXQgbWluKG1pbjogbnVtYmVyKSB7XG4gICAgICAgIHRoaXMubnVtYmVyTG9naWMubWluID0gbWluO1xuICAgIH1cblxuICAgIEBJbnB1dCgpXG4gICAgcHVibGljIHNldCBzdGVwKHN0ZXA6IG51bWJlcikge1xuICAgICAgICB0aGlzLm51bWJlckxvZ2ljLnN0ZXAgPSBzdGVwO1xuICAgIH1cblxuICAgIEBJbnB1dCgpXG4gICAgcHVibGljIHNldCBtYXgobWF4OiBudW1iZXIpIHtcbiAgICAgICAgdGhpcy5udW1iZXJMb2dpYy5tYXggPSBtYXg7XG4gICAgfVxuXG4gICAgQElucHV0KClcbiAgICBwdWJsaWMgbmdNb2RlbE9wdGlvbnM6IGFueTtcblxuICAgIEBJbnB1dCgpXG4gICAgcHVibGljIG1pbnVzSWNvbjogQ29yZUNvbXBvbmVudHNJY29uID0gQ29yZUNvbXBvbmVudHNJY29uLk1pbnVzU2ltcGxlO1xuXG4gICAgQElucHV0KClcbiAgICBwdWJsaWMgcGx1c0ljb246IENvcmVDb21wb25lbnRzSWNvbiA9IENvcmVDb21wb25lbnRzSWNvbi5QbHVzU2ltcGxlO1xuXG4gICAgLy8gV2hldGhlciB0byBzaG93IGJ1dHRvbnMgJ2Fsd2F5cycsICdvbkZvY3VzT25seScsIG9yICduZXZlcidcbiAgICBASW5wdXQoKVxuICAgIHB1YmxpYyBidXR0b25TaG93TW9kZTogSW5wdXROdW1iZXJQaWNrZXJCdXR0b25TaG93TW9kZSA9IElucHV0TnVtYmVyUGlja2VyQnV0dG9uU2hvd01vZGUuQWx3YXlzO1xuXG4gICAgLy8gQG92ZXJyaWRlIERlZmF1bHQgdHJ1ZSBmb3IgdXMuXG4gICAgQElucHV0KCkgQElucHV0Qm9vbGVhbigpXG4gICAgcHVibGljIG5vVmFsaWRhdGlvbjogYm9vbGVhbiA9IHRydWU7XG5cbiAgICBASW5wdXQoKVxuICAgIHB1YmxpYyBzZXQgZGVjaW1hbHMoZGVjaW1hbHM6IG51bWJlcikge1xuICAgICAgICB0aGlzLm51bWJlckxvZ2ljLmRlY2ltYWxzID0gZGVjaW1hbHM7XG4gICAgfVxuXG4gICAgLy8gQG92ZXJyaWRlXG4gICAgQE91dHB1dCgpXG4gICAgcHVibGljIHJlYWRvbmx5IG1vZGVsQ2hhbmdlOiBFdmVudEVtaXR0ZXI8bnVtYmVyPiA9IG5ldyBFdmVudEVtaXR0ZXI8bnVtYmVyPigpO1xuXG4gICAgQE91dHB1dCgpXG4gICAgcHVibGljIHJlYWRvbmx5IGljb25DbGljazogRXZlbnRFbWl0dGVyPE1vdXNlRXZlbnQ+ID0gbmV3IEV2ZW50RW1pdHRlcjxNb3VzZUV2ZW50PigpO1xuXG4gICAgQEhvc3RCaW5kaW5nKCdjbGFzcy5zaG93LWJ1dHRvbnMtb24tZm9jdXMtb25seScpXG4gICAgcHVibGljIGdldCBzaG93QnV0dG9uc09uRm9jdXNPbmx5KCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy5idXR0b25TaG93TW9kZSA9PT0gSW5wdXROdW1iZXJQaWNrZXJCdXR0b25TaG93TW9kZS5PbkZvY3VzT25seTtcbiAgICB9XG5cbiAgICBASG9zdEJpbmRpbmcoJ2NsYXNzLmhhcy1sYWJlbCcpXG4gICAgcHVibGljIGdldCBoYXNMYWJlbCgpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuICEhdGhpcy5sYWJlbDtcbiAgICB9XG5cbiAgICBASG9zdEJpbmRpbmcoJ2NsYXNzLmNvLWlucHV0LW51bWJlci1waWNrZXInKVxuICAgIHB1YmxpYyBzaG93Q2xhc3MoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0cnVlO1xuICAgIH1cblxuICAgIHB1YmxpYyBzaG93QnV0dG9uczogYm9vbGVhbjtcblxuICAgIHB1YmxpYyByZWFkb25seSBteUtleURvd25XaGl0ZUxpc3Q6IEtleWJvYXJkQ29kZVtdID0gTlVNQkVSX0lOUFVUU19LRVlfRE9XTl9XSElURV9MSVNUO1xuXG4gICAgcHVibGljIHJlYWRvbmx5IG51bWJlckxvZ2ljOiBCb3VuZHNDb25zdHJhaW5lZE51bWJlclZhbHVlID0gbmV3IEJvdW5kc0NvbnN0cmFpbmVkTnVtYmVyVmFsdWUoKTtcblxuICAgIHB1YmxpYyBtaW5TZWxlY3RlZDogYm9vbGVhbiA9IGZhbHNlO1xuICAgIHB1YmxpYyBwbHVzU2VsZWN0ZWQ6IGJvb2xlYW4gPSBmYWxzZTtcblxuICAgIHByaXZhdGUgX251bWJlcklucHV0SGFzRm9jdXM6IGJvb2xlYW4gPSBmYWxzZTtcbiAgICBwcml2YXRlIF9jaGFuZ2VGcm9tQnV0dG9uOiBib29sZWFuID0gZmFsc2U7XG5cbiAgICBwcml2YXRlIF9udW1iZXJMb2dpY1ZhbHVlQ2hhbmdlU3ViOiBTdWJzY3JpcHRpb247XG4gICAgcHJpdmF0ZSByZWFkb25seSBfZGVsYXlCZWZvcmVTdGFydEF1dG9Db3VudE1zOiBudW1iZXIgPSA2NjY7XG4gICAgLy8gdGhlICdzcGVlZCBnZWFycycgZm9yIGF1dG8gY291bnRpbmdcbiAgICBwcml2YXRlIHJlYWRvbmx5IF9zdGVwRmFjdG9yczogbnVtYmVyW10gPSBbMSwgMTAsIDIwXTtcbiAgICAvLyBpbmNyZWFzZSBzdGVwIHNpemUgdGltaW5nXG4gICAgcHJpdmF0ZSByZWFkb25seSBfbXNDaGFuZ2VTdGVwRmFjdG9yOiBudW1iZXIgPSAxMDAwO1xuICAgIC8vIHN0ZXAgc3BlZWRcbiAgICBwcml2YXRlIHJlYWRvbmx5IF9tc0RvU3RlcDogbnVtYmVyID0gNTtcbiAgICAvLyBob2xkIHRoZSBtb3VzZSBkb3duIGFuZCB0aGlzIGluY3JlYXNlcyBmb3IgYSBmYXN0ZXIgYXV0byBpbmNyZW1lbnRcbiAgICBwcml2YXRlIF9zdGVwRmFjdG9yOiBudW1iZXIgPSB0aGlzLl9zdGVwRmFjdG9yc1swXTtcbiAgICBwcml2YXRlIF9tYXlBdXRvQ291bnQ6IGJvb2xlYW4gPSBmYWxzZTtcblxuICAgIHByaXZhdGUgX2F1dG9Db3VudFRpbWVvdXQ6IG51bWJlcjtcbiAgICBwcml2YXRlIF9zdGVwSW5jcmVtZW50VGltZW91dDogbnVtYmVyO1xuICAgIHByaXZhdGUgX3N0YXJ0QXV0b2NvdW50VGltZW91dDogbnVtYmVyO1xuXG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIEBPcHRpb25hbCgpIHB1YmxpYyBmb3JtQ29tcG9uZW50OiBGb3JtQ29tcG9uZW50LFxuICAgICAgICBASW5qZWN0KEljb25DYWNoZVNlcnZpY2UpIHB1YmxpYyBpY29uQ2FjaGVTZXJ2aWNlOiBJY29uQ2FjaGVTZXJ2aWNlLFxuICAgICAgICBwcm90ZWN0ZWQgb3ZlcmxheVNlcnZpY2U6IE92ZXJsYXlTZXJ2aWNlLFxuICAgICAgICBwcml2YXRlIF9uZ1pvbmU6IE5nWm9uZSxcbiAgICAgICAgcHJvdGVjdGVkIGNvbXBvbmVudEZhY3RvcnlSZXNvbHZlcjogQ29tcG9uZW50RmFjdG9yeVJlc29sdmVyLFxuICAgICAgICBjaGFuZ2VEZXRlY3RvcjogQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICAgICAgIGZvcm1Vc2VyQ2hhbmdlTGlzdGVuZXI6IEZvcm1JbnB1dFVzZXJNb2RlbENoYW5nZUxpc3RlbmVyU2VydmljZSxcbiAgICAgICAgcHJvdGVjdGVkIG5nWm9uZVdyYXBwZXI/OiBOZ1pvbmVXcmFwcGVyU2VydmljZSxcbiAgICAgICAgcHVibGljIGVsZW1lbnRSZWY/OiBFbGVtZW50UmVmLFxuICAgICkge1xuICAgICAgICBzdXBlcihjaGFuZ2VEZXRlY3RvciwgY29tcG9uZW50RmFjdG9yeVJlc29sdmVyLCBvdmVybGF5U2VydmljZSwgZm9ybVVzZXJDaGFuZ2VMaXN0ZW5lciwgbmdab25lV3JhcHBlciwgZWxlbWVudFJlZik7XG5cbiAgICAgICAgdGhpcy5fbnVtYmVyTG9naWNWYWx1ZUNoYW5nZVN1YiA9IHRoaXMubnVtYmVyTG9naWMudmFsdWVDaGFuZ2Uuc3Vic2NyaWJlKCh2YWx1ZTogbnVtYmVyKSA9PiB7XG4gICAgICAgICAgICBpZiAoIXRoaXMuX21heUF1dG9Db3VudCkge1xuICAgICAgICAgICAgICAgIHRoaXMubW9kZWwgPSB2YWx1ZTtcbiAgICAgICAgICAgICAgICBpZiAoIXRoaXMubW9kZWxDaGFuZ2VPbkVudGVyIHx8IHRoaXMuX2NoYW5nZUZyb21CdXR0b24pIHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5tb2RlbENoYW5nZS5lbWl0KHZhbHVlKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgLy8gY3VzdG9tIGZvcm0gdXNlciBjaGFnbmUgbGlzdGVuZXIgLm5leHQgYmVjYXVzZSB3ZSBkb24ndCB1c2VyIHN1cGVyLnVwZGF0ZU1vZGVsKCkgd2hpY2ggbm9ybWFsbHkgZG9lcyB0aGF0IGZvciB1c1xuICAgICAgICAgICAgICAgIGlmICh0aGlzLl9tYXJrZWRBc1VzZXJUb3VjaGVkKSB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuZm9ybVVzZXJDaGFuZ2VMaXN0ZW5lci51c2VyTW9kZWxDaGFuZ2UubmV4dCh2YWx1ZSk7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMudXNlck1vZGVsQ2hhbmdlLm5leHQodmFsdWUpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgICAgIC8vIHRoaXMubnVtYmVyTG9naWMuc2V0VmFsdWUodGhpcy5tb2RlbCwgdHJ1ZSk7XG4gICAgICAgIC8vIHRoaXMubnVtYmVyTG9naWMuaW5pdCh0cnVlKTtcbiAgICAgICAgdGhpcy5fdXBkYXRlQnV0dG9uc1Nob3dTdGF0ZSgpO1xuICAgIH1cblxuICAgIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgICAgICB0aGlzLl9udW1iZXJMb2dpY1ZhbHVlQ2hhbmdlU3ViLnVuc3Vic2NyaWJlKCk7XG4gICAgICAgIGNsZWFyVGltZW91dCh0aGlzLl9hdXRvQ291bnRUaW1lb3V0KTtcbiAgICAgICAgY2xlYXJUaW1lb3V0KHRoaXMuX3N0ZXBJbmNyZW1lbnRUaW1lb3V0KTtcbiAgICAgICAgY2xlYXJUaW1lb3V0KHRoaXMuX3N0YXJ0QXV0b2NvdW50VGltZW91dCk7XG4gICAgfVxuXG4gICAgLy8gTm90ZTogcmVjdXJzaXZlIHRocm91Z2ggc2V0VGltZW91dCgpLlxuICAgIHB1YmxpYyBkb0luY3JlbWVudEF1dG8oKTogdm9pZCB7XG4gICAgICAgIHRoaXMuX21heUF1dG9Db3VudCA9IHRydWU7XG5cbiAgICAgICAgdGhpcy5pbmNyZW1lbnQodGhpcy5fc3RlcEZhY3Rvcik7XG5cbiAgICAgICAgdGhpcy5fbmdab25lLnJ1bk91dHNpZGVBbmd1bGFyKCgpID0+IHtcbiAgICAgICAgICAgIHRoaXMuX2F1dG9Db3VudFRpbWVvdXQgPSB3aW5kb3cuc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgICAgICAgICAgaWYgKHRoaXMuX21heUF1dG9Db3VudCkge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLmRvSW5jcmVtZW50QXV0bygpO1xuICAgICAgICAgICAgICAgICAgICB0aGlzLmNoYW5nZURldGVjdG9yLmRldGVjdENoYW5nZXMoKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9LCB0aGlzLl9tc0RvU3RlcCk7XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIHB1YmxpYyBoYW5kbGVJbnB1dEtleURvd24oZXZlbnQ6IEtleWJvYXJkRXZlbnQpOiBib29sZWFuIHtcbiAgICAgICAgLy8gZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICAgICAgaWYgKGV2ZW50LmNvZGUgPT09ICdFbnRlcicgfHwgZXZlbnQuY29kZSA9PT0gJ051bXBhZEVudGVyJykge1xuICAgICAgICAgICAgdGhpcy5tb2RlbENoYW5nZS5uZXh0KHRoaXMubW9kZWwpO1xuICAgICAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgICB9XG4gICAgICAgIGlmICh0aGlzLm15S2V5RG93bldoaXRlTGlzdC5maW5kKChrKSA9PiBrID09PSBldmVudC5rZXlDb2RlKSA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwdWJsaWMgaGFuZGxlQmx1cigpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5tb2RlbENoYW5nZS5uZXh0KHRoaXMubW9kZWwpO1xuICAgIH1cblxuICAgIHB1YmxpYyBoYW5kbGVDaGFuZ2VNb2RlbCh2YWx1ZTogbnVtYmVyKTogdm9pZCB7XG4gICAgICAgIHRoaXMuX2NoYW5nZUZyb21CdXR0b24gPSBmYWxzZTtcbiAgICAgICAgdGhpcy5udW1iZXJMb2dpYy5zZXRWYWx1ZSh2YWx1ZSk7XG4gICAgfVxuXG4gICAgLy8gTm90ZTogcmVjdXJzaXZlIHRocm91Z2ggc2V0VGltZW91dCgpLlxuICAgIHB1YmxpYyBkb0RlY3JlbWVudEF1dG8oKTogdm9pZCB7XG4gICAgICAgIHRoaXMuX21heUF1dG9Db3VudCA9IHRydWU7XG5cbiAgICAgICAgdGhpcy5kZWNyZW1lbnQodGhpcy5fc3RlcEZhY3Rvcik7XG5cbiAgICAgICAgdGhpcy5fbmdab25lLnJ1bk91dHNpZGVBbmd1bGFyKCgpID0+IHtcbiAgICAgICAgICAgIHRoaXMuX2F1dG9Db3VudFRpbWVvdXQgPSB3aW5kb3cuc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgICAgICAgICAgaWYgKHRoaXMuX21heUF1dG9Db3VudCkge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLmRvRGVjcmVtZW50QXV0bygpO1xuICAgICAgICAgICAgICAgICAgICB0aGlzLmNoYW5nZURldGVjdG9yLmRldGVjdENoYW5nZXMoKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9LCB0aGlzLl9tc0RvU3RlcCk7XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIHB1YmxpYyBzdG9wQXV0b0NvdW50aW5nKCk6IHZvaWQge1xuICAgICAgICB0aGlzLm1pblNlbGVjdGVkID0gZmFsc2U7XG4gICAgICAgIHRoaXMucGx1c1NlbGVjdGVkID0gZmFsc2U7XG4gICAgICAgIHRoaXMuX21heUF1dG9Db3VudCA9IGZhbHNlO1xuICAgICAgICB0aGlzLl9zdGVwRmFjdG9yID0gdGhpcy5fc3RlcEZhY3RvcnNbMF07XG4gICAgfVxuXG4gICAgLy8gU2V0cyB0aGUgY3VycmVudCBudW1iZXIgdmFsdWUgd2l0aCBnaXZlbiBuZXdWYWx1ZSwgb3B0aW9uYWxseSBzaWxlbnQgKG5vIHZhbHVlQ2hhbmdlIGV2ZW50IGZpcmVkKS5cbiAgICBwdWJsaWMgc2V0VmFsdWUobmV3VmFsdWU6IG51bWJlciwgc2lsZW50OiBib29sZWFuID0gZmFsc2UpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5udW1iZXJMb2dpYy5zZXRWYWx1ZShuZXdWYWx1ZSwgc2lsZW50KTtcbiAgICB9XG5cbiAgICBwdWJsaWMgaW5jcmVtZW50KHN0ZXBzOiBudW1iZXIgPSAxKTogdm9pZCB7XG4gICAgICAgIHRoaXMuX2NoYW5nZUZyb21CdXR0b24gPSB0cnVlO1xuICAgICAgICB0aGlzLm51bWJlckxvZ2ljLmluY3JlbWVudChzdGVwcyk7XG4gICAgfVxuXG4gICAgcHVibGljIGRlY3JlbWVudChzdGVwczogbnVtYmVyID0gMSk6IHZvaWQge1xuICAgICAgICB0aGlzLl9jaGFuZ2VGcm9tQnV0dG9uID0gdHJ1ZTtcbiAgICAgICAgdGhpcy5udW1iZXJMb2dpYy5kZWNyZW1lbnQoc3RlcHMpO1xuICAgIH1cblxuICAgIHB1YmxpYyBvblBsdXNNb3VzZURvd24oZXZlbnQ6IEV2ZW50KTogdm9pZCB7XG4gICAgICAgIGlmICh0aGlzLnJlYWRvbmx5KSB7XG4gICAgICAgICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG4gICAgICAgIHRoaXMucGx1c1NlbGVjdGVkID0gdHJ1ZTtcbiAgICAgICAgdGhpcy5fbWFya2VkQXNVc2VyVG91Y2hlZCA9IHRydWU7XG5cbiAgICAgICAgLy8ga2VlcHMgZm9jdXMgb24gaW5wdXQgdGV4dCBpbnN0ZWFkIG9mIGJ1dHRvblxuICAgICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuXG4gICAgICAgIHRoaXMuaW5jcmVtZW50KCk7XG4gICAgICAgIHRoaXMuX21heUF1dG9Db3VudCA9IHRydWU7XG5cbiAgICAgICAgY2xlYXJUaW1lb3V0KHRoaXMuX3N0YXJ0QXV0b2NvdW50VGltZW91dCk7XG4gICAgICAgIHRoaXMuX3N0YXJ0QXV0b2NvdW50VGltZW91dCA9IHdpbmRvdy5zZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgICAgIGlmICh0aGlzLl9tYXlBdXRvQ291bnQpIHtcbiAgICAgICAgICAgICAgICB0aGlzLmRvSW5jcmVtZW50QXV0bygpO1xuICAgICAgICAgICAgICAgIHRoaXMuX2RvSW5jcmVhc2VTdGVwRmFjdG9yKCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0sIHRoaXMuX2RlbGF5QmVmb3JlU3RhcnRBdXRvQ291bnRNcyk7XG4gICAgfVxuXG4gICAgcHVibGljIG9uTWludXNNb3VzZURvd24oZXZlbnQ6IEV2ZW50KTogdm9pZCB7XG4gICAgICAgIGlmICh0aGlzLnJlYWRvbmx5KSB7XG4gICAgICAgICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG4gICAgICAgIHRoaXMubWluU2VsZWN0ZWQgPSB0cnVlO1xuICAgICAgICB0aGlzLl9tYXJrZWRBc1VzZXJUb3VjaGVkID0gdHJ1ZTtcbiAgICAgICAgLy8ga2VlcHMgZm9jdXMgb24gaW5wdXQgdGV4dCBpbnN0ZWFkIG9mIGJ1dHRvblxuICAgICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuXG4gICAgICAgIHRoaXMuZGVjcmVtZW50KCk7XG4gICAgICAgIHRoaXMuX21heUF1dG9Db3VudCA9IHRydWU7XG5cbiAgICAgICAgY2xlYXJUaW1lb3V0KHRoaXMuX3N0YXJ0QXV0b2NvdW50VGltZW91dCk7XG4gICAgICAgIHRoaXMuX3N0YXJ0QXV0b2NvdW50VGltZW91dCA9IHdpbmRvdy5zZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgICAgIGlmICh0aGlzLl9tYXlBdXRvQ291bnQpIHtcbiAgICAgICAgICAgICAgICB0aGlzLmRvRGVjcmVtZW50QXV0bygpO1xuICAgICAgICAgICAgICAgIHRoaXMuX2RvSW5jcmVhc2VTdGVwRmFjdG9yKCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0sIHRoaXMuX2RlbGF5QmVmb3JlU3RhcnRBdXRvQ291bnRNcyk7XG4gICAgfVxuXG4gICAgLy8gTm90ZTogcmVjdXJzaXZlLlxuICAgIHByaXZhdGUgX2RvSW5jcmVhc2VTdGVwRmFjdG9yKCk6IHZvaWQge1xuICAgICAgICB0aGlzLl9zdGVwSW5jcmVtZW50VGltZW91dCA9IHdpbmRvdy5zZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgICAgIGlmICh0aGlzLl9tYXlBdXRvQ291bnQpIHtcbiAgICAgICAgICAgICAgICB0aGlzLl9zdGVwRmFjdG9yID0gdGhpcy5fZ2V0TmV4dFN0ZXBGYWN0b3JNb3VzZURvd24oKTtcbiAgICAgICAgICAgICAgICB0aGlzLl9kb0luY3JlYXNlU3RlcEZhY3RvcigpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9LCB0aGlzLl9tc0NoYW5nZVN0ZXBGYWN0b3IpO1xuICAgIH1cblxuICAgIHByaXZhdGUgX2dldE5leHRTdGVwRmFjdG9yTW91c2VEb3duKCk6IG51bWJlciB7XG4gICAgICAgIGNvbnN0IGN1cklkeDogbnVtYmVyID0gdGhpcy5fc3RlcEZhY3RvcnMuaW5kZXhPZih0aGlzLl9zdGVwRmFjdG9yKTtcbiAgICAgICAgaWYgKGN1cklkeCA8IHRoaXMuX3N0ZXBGYWN0b3JzLmxlbmd0aCAtIDEpIHtcbiAgICAgICAgICAgIHJldHVybiB0aGlzLl9zdGVwRmFjdG9yc1tjdXJJZHggKyAxXTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gdGhpcy5fc3RlcEZhY3RvcjtcbiAgICB9XG5cbiAgICAvLyBTaG93IG9yIGhpZGUgKyBhbmQgLSBidXR0b25zLiBNaWdodCBoaWRlIGJ1dHRvbnMgaWYgbnVtYmVyIGlucHV0IGxvc3QgZm9jdXMgYW5kIGJ1dHRvbiBzaG93IG1vZGUgaXMgb24gZm9jdXMgb25seS5cbiAgICBwcml2YXRlIF91cGRhdGVCdXR0b25zU2hvd1N0YXRlKCk6IHZvaWQge1xuICAgICAgICBzd2l0Y2ggKHRoaXMuYnV0dG9uU2hvd01vZGUpIHtcbiAgICAgICAgICAgIGNhc2UgSW5wdXROdW1iZXJQaWNrZXJCdXR0b25TaG93TW9kZS5BbHdheXM6XG4gICAgICAgICAgICBkZWZhdWx0OlxuICAgICAgICAgICAgICAgIHRoaXMuc2hvd0J1dHRvbnMgPSB0cnVlO1xuICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgY2FzZSBJbnB1dE51bWJlclBpY2tlckJ1dHRvblNob3dNb2RlLk9uRm9jdXNPbmx5OlxuICAgICAgICAgICAgICAgIHRoaXMuc2hvd0J1dHRvbnMgPSB0aGlzLl9udW1iZXJJbnB1dEhhc0ZvY3VzO1xuICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgY2FzZSBJbnB1dE51bWJlclBpY2tlckJ1dHRvblNob3dNb2RlLk5ldmVyOlxuICAgICAgICAgICAgICAgIHRoaXMuc2hvd0J1dHRvbnMgPSBmYWxzZTtcbiAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgfVxuICAgIH1cbn1cbiJdfQ==
|
|
@@ -299,4 +299,4 @@ export var CoreComponentsIcon;
|
|
|
299
299
|
CoreComponentsIcon["XAxis"] = "x_axis";
|
|
300
300
|
CoreComponentsIcon["YAxis"] = "y_axis";
|
|
301
301
|
})(CoreComponentsIcon || (CoreComponentsIcon = {}));
|
|
302
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29yZS1jb21wb25lbnRzLWljb24uZW51bS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmVjb21wb25lbnRzL3NyYy9saWIvY29yZS9lbnVtL2NvcmUtY29tcG9uZW50cy1pY29uLmVudW0udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsZ0dBQWdHO0FBRWhHLE1BQU0sQ0FBTixJQUFZLGtCQTBTWDtBQTFTRCxXQUFZLGtCQUFrQjtJQUMxQix5Q0FBbUIsQ0FBQTtJQUNuQiw2REFBdUMsQ0FBQTtJQUN2QywrQ0FBeUIsQ0FBQTtJQUN6Qix3REFBa0MsQ0FBQTtJQUNsQyw4Q0FBd0IsQ0FBQTtJQUN4QixxREFBK0IsQ0FBQTtJQUMvQix1REFBaUMsQ0FBQTtJQUNqQyw4Q0FBd0IsQ0FBQTtJQUN4QixrRUFBNEMsQ0FBQTtJQUM1Qyx5REFBbUMsQ0FBQTtJQUNuQyx5REFBbUMsQ0FBQTtJQUNuQywyREFBcUMsQ0FBQTtJQUNyQyxxREFBK0IsQ0FBQTtJQUMvQixvRUFBOEMsQ0FBQTtJQUM5QywyREFBcUMsQ0FBQTtJQUNyQywyREFBcUMsQ0FBQTtJQUNyQyw2REFBdUMsQ0FBQTtJQUN2Qyx1REFBaUMsQ0FBQTtJQUNqQywwQ0FBb0IsQ0FBQTtJQUNwQix5Q0FBbUIsQ0FBQTtJQUNuQiwyREFBcUMsQ0FBQTtJQUNyQyxzREFBZ0MsQ0FBQTtJQUNoQyxpREFBMkIsQ0FBQTtJQUMzQiwrQ0FBeUIsQ0FBQTtJQUN6Qix5Q0FBbUIsQ0FBQTtJQUNuQix3Q0FBa0IsQ0FBQTtJQUNsQixxQ0FBZSxDQUFBO0lBQ2YsbUVBQTZDLENBQUE7SUFDN0MscUNBQWUsQ0FBQTtJQUNmLHlEQUFtQyxDQUFBO0lBQ25DLDBEQUFvQyxDQUFBO0lBQ3BDLHFEQUErQixDQUFBO0lBQy9CLDJDQUFxQixDQUFBO0lBQ3JCLGtEQUE0QixDQUFBO0lBQzVCLGlFQUEyQyxDQUFBO0lBQzNDLHNEQUFnQyxDQUFBO0lBQ2hD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QixDQUFBO0lBQ25CLHVDQUFpQixDQUFBO0lBQ2pCLGlDQUFXLENBQUE7SUFDWCx5REFBbUMsQ0FBQTtJQUNuQyw2RUFBdUQsQ0FBQTtJQUN2RCx1Q0FBaUIsQ0FBQTtJQUNqQixzQ0FBZ0IsQ0FBQTtJQUNoQixzQ0FBZ0IsQ0FBQTtBQUNwQixDQUFDLEVBMVNXLGtCQUFrQixLQUFsQixrQkFBa0IsUUEwUzdCIiwic291cmNlc0NvbnRlbnQiOlsiLyoqIEFVVE8gR0VORVJBVEVEIEZJTEUuIERPIE5PVCBDSEFOR0UuLiBPUiBZT1UgV0lMTCBTVUZGRVIgVEhFIENPTlNFUVVFTkNFUyBPRiBZT1VSIEFDVElPTlMgKiovXG5cbmV4cG9ydCBlbnVtIENvcmVDb21wb25lbnRzSWNvbiB7XG4gICAgQWNjb3VudCA9IFwiYWNjb3VudFwiLFxuICAgIEFjY291bnRSb3VuZE9wZW4gPSBcImFjY291bnRfcm91bmRfb3BlblwiLFxuICAgIEFjdGl2aXRpZXMgPSBcImFjdGl2aXRpZXNcIixcbiAgICBBZGRUb0NhcnREcm9wID0gXCJhZGRfdG9fY2FydF9kcm9wXCIsXG4gICAgQXJyb3dEb3duID0gXCJhcnJvd19kb3duXCIsXG4gICAgQXJyb3dGYXRMZWZ0ID0gXCJhcnJvd19mYXRfbGVmdFwiLFxuICAgIEFycm93RmF0UmlnaHQgPSBcImFycm93X2ZhdF9yaWdodFwiLFxuICAgIEFycm93TGVmdCA9IFwiYXJyb3dfbGVmdFwiLFxuICAgIEFycm93TGVmdFJvdW5kT3BlbiA9IFwiYXJyb3dfbGVmdF9yb3VuZF9vcGVuXCIsXG4gICAgQXJyb3dQb2ludERvd24gPSBcImFycm93X3BvaW50X2Rvd25cIixcbiAgICBBcnJvd1BvaW50TGVmdCA9IFwiYXJyb3dfcG9pbnRfbGVmdFwiLFxuICAgIEFycm93UG9pbnRSaWdodCA9IFwiYXJyb3dfcG9pbnRfcmlnaHRcIixcbiAgICBBcnJvd1BvaW50VXAgPSBcImFycm93X3BvaW50X3VwXCIsXG4gICAgQXJyb3dSaWdodFJvdW5kT3BlbiA9IFwiYXJyb3dfcmlnaHRfcm91bmRfb3BlblwiLFxuICAgIEFycm93U2Nyb2xsRG93biA9IFwiYXJyb3dfc2Nyb2xsX2Rvd25cIixcbiAgICBBcnJvd1Njcm9sbExlZnQgPSBcImFycm93X3Njcm9sbF9sZWZ0XCIsXG4gICAgQXJyb3dTY3JvbGxSaWdodCA9IFwiYXJyb3dfc2Nyb2xsX3JpZ2h0XCIsXG4gICAgQXJyb3dTY3JvbGxVcCA9IFwiYXJyb3dfc2Nyb2xsX3VwXCIsXG4gICAgQXJyb3dVcCA9IFwiYXJyb3dfdXBcIixcbiAgICBBcnRpY2xlID0gXCJhcnRpY2xlXCIsXG4gICAgQXJ0aWNsZVdpdGhGb2xkID0gXCJhcnRpY2xlX3dpdGhfZm9sZFwiLFxuICAgIEFzdGVyaXNrU21hbGwgPSBcImFzdGVyaXNrX3NtYWxsXCIsXG4gICAgQXR0YWNobWVudHMgPSBcImF0dGFjaG1lbnRzXCIsXG4gICAgQmFja1RvVG9wID0gXCJiYWNrX3RvX3RvcFwiLFxuICAgIEJhcmNvZGUgPSBcIkJhcmNvZGVcIixcbiAgICBCaWdNYWMgPSBcImJpZ19tYWNcIixcbiAgICBCb3hlcyA9IFwiYm94ZXNcIixcbiAgICBCb3hlc1BhY2tpbmdSZWd1bGFyID0gXCJib3hlc19wYWNraW5nX3JlZ3VsYXJcIixcbiAgICBCcnVzaCA9IFwiYnJ1c2hcIixcbiAgICBCcnVzaFJvdW5kT3BlbiA9IFwiYnJ1c2hfcm91bmRfb3BlblwiLFxuICAgIEJ1aWxkaW5nQ29sdW1ucyA9IFwiYnVpbGRpbmdfY29sdW1uc1wiLFxuICAgIEJ1c2luZXNzcnVsZXMgPSBcImJ1c2luZXNzcnVsZXNcIixcbiAgICBDYWxlbmRhciA9IFwiY2FsZW5kYXJcIixcbiAgICBDYWxlbmRhckRheSA9IFwiY2FsZW5kYXJfZGF5XCIsXG4gICAgQ2FsZW5kYXJEYXlSZWd1bGFyID0gXCJjYWxlbmRhcl9kYXlfcmVndWxhclwiLFxuICAgIENhbGVuZGFyRW1wdHkgPSBcImNhbGVuZGFyX2VtcHR5XCIsXG4gICAgQ2FsZW5kYXJSYW5nZSA9IFwiY2FsZW5kYXJfcmFuZ2VcIixcbiAgICBDYWxlbmRhclJvdW5kT3BlbiA9IFwiY2FsZW5kYXJfcm91bmRfb3BlblwiLFxuICAgIENhbWVyYSA9IFwiY2FtZXJhXCIsXG4gICAgQ2FuY2VsID0gXCJjYW5jZWxcIixcbiAgICBDYW5jZWxSb3VuZEZpbGxlZCA9IFwiY2FuY2VsX3JvdW5kX2ZpbGxlZFwiLFxuICAgIENhbmNlbFJvdW5kT3BlbiA9IFwiY2FuY2VsX3JvdW5kX29wZW5cIixcbiAgICBDYXJ0ID0gXCJjYXJ0XCIsXG4gICAgQ2FydE9wZW4gPSBcImNhcnRfb3BlblwiLFxuICAgIENhc2VNYW5hZ2VyID0gXCJjYXNlX21hbmFnZXJcIixcbiAgICBDYXNoUmVnaXN0ZXIgPSBcIkNhc2hSZWdpc3RlclwiLFxuICAgIENhc2hSZWdpc3RlclNpbXBsZSA9IFwiY2FzaF9yZWdpc3Rlcl9zaW1wbGVcIixcbiAgICBDaGFuZ2VMb2NhdGlvbiA9IFwiY2hhbmdlX2xvY2F0aW9uXCIsXG4gICAgQ2hlY2sgPSBcImNoZWNrXCIsXG4gICAgQ2hlY2tEdW90b25lID0gXCJjaGVja19kdW90b25lXCIsXG4gICAgQ2hlY2tSb3VuZCA9IFwiY2hlY2tfcm91bmRcIixcbiAgICBDaGVja1JvdW5kT3BlbiA9IFwiY2hlY2tfcm91bmRfb3BlblwiLFxuICAgIENoZWNrU2ltcGxlID0gXCJjaGVja19zaW1wbGVcIixcbiAgICBDaGVja1RoaW4gPSBcImNoZWNrX3RoaW5cIixcbiAgICBDaGV2cm9uRG93blJlZ3VsYXIgPSBcImNoZXZyb25fZG93bl9yZWd1bGFyXCIsXG4gICAgQ2hldnJvblVwUmVndWxhciA9IFwiY2hldnJvbl91cF9yZWd1bGFyXCIsXG4gICAgQ2lyY2xlUGx1c1NraW5ueSA9IFwiQ2lyY2xlUGx1c1NraW5ueVwiLFxuICAgIENsaWVudCA9IFwiY2xpZW50XCIsXG4gICAgQ2xvY2sgPSBcImNsb2NrXCIsXG4gICAgQ2xvY2tBcnJvdyA9IFwiY2xvY2tBcnJvd1wiLFxuICAgIENvZ1doZWVsUGx1cyA9IFwiY29nV2hlZWxQbHVzXCIsXG4gICAgQ29nV2hlZWxzID0gXCJjb2dXaGVlbHNcIixcbiAgICBDb2x1bW5PcHRpb25zID0gXCJjb2x1bW5fb3B0aW9uc1wiLFxuICAgIENvbXBhbnkgPSBcImNvbXBhbnlcIixcbiAgICBDb21wYW55RmxhdCA9IFwiY29tcGFueV9mbGF0XCIsXG4gICAgQ29uZmlndXJhYmxlID0gXCJjb25maWd1cmFibGVcIixcbiAgICBDb25zdWx0YW50ID0gXCJjb25zdWx0YW50XCIsXG4gICAgQ29weSA9IFwiY29weVwiLFxuICAgIENyb3NzaGFpcjEgPSBcImNyb3NzaGFpcl8xXCIsXG4gICAgQ3Jvc3NTa2lubnkgPSBcIkNyb3NzU2tpbm55XCIsXG4gICAgRGFzaGJvYXJkID0gXCJkYXNoYm9hcmRcIixcbiAgICBEZWxpdmVyeU1ldGhvZCA9IFwiZGVsaXZlcnlfbWV0aG9kXCIsXG4gICAgRGVsaXZlcnlTdGF0dXNVbmNoZWNrID0gXCJkZWxpdmVyeV9zdGF0dXNfdW5jaGVja1wiLFxuICAgIERlbGl2ZXJ5VHJ1Y2sgPSBcImRlbGl2ZXJ5X3RydWNrXCIsXG4gICAgRGV0YWlsUmVjb3JkID0gXCJkZXRhaWxfcmVjb3JkXCIsXG4gICAgRGV0YWlsVmlldyA9IFwiZGV0YWlsX3ZpZXdcIixcbiAgICBEaWN0aW9uYXJ5ID0gXCJkaWN0aW9uYXJ5XCIsXG4gICAgRG9jdW1lbnRzID0gXCJkb2N1bWVudHNcIixcbiAgICBEb2N1bWVudFdyZW5jaCA9IFwiZG9jdW1lbnRXcmVuY2hcIixcbiAgICBEb2xsYXIgPSBcImRvbGxhclwiLFxuICAgIERvd25sb2FkID0gXCJkb3dubG9hZFwiLFxuICAgIERyb3Bkb3duID0gXCJkcm9wZG93blwiLFxuICAgIERyb3B6b25lID0gXCJkcm9wem9uZVwiLFxuICAgIEVkaXRQZW5jaWwgPSBcImVkaXRfcGVuY2lsXCIsXG4gICAgRWRpdFBlbmNpbENpcmNsZSA9IFwiZWRpdF9wZW5jaWxfY2lyY2xlXCIsXG4gICAgRWRpdFBlbmNpbFJvdW5kID0gXCJlZGl0X3BlbmNpbF9yb3VuZFwiLFxuICAgIEVkaXRQZW5jaWxTaW1wbGUgPSBcImVkaXRfcGVuY2lsX3NpbXBsZVwiLFxuICAgIEVtYWlsID0gXCJlbWFpbFwiLFxuICAgIEVtYWlsUm91bmRPcGVuID0gXCJlbWFpbF9yb3VuZF9vcGVuXCIsXG4gICAgRW1wbG95ZWUgPSBcImVtcGxveWVlXCIsXG4gICAgRW1wbG95ZWVUd28gPSBcImVtcGxveWVlX3R3b1wiLFxuICAgIEVtcGxveWVyID0gXCJlbXBsb3llclwiLFxuICAgIEVtcGxveW1lbnQgPSBcImVtcGxveW1lbnRcIixcbiAgICBFbXBsb3ltZW50RW5kID0gXCJlbXBsb3ltZW50X2VuZFwiLFxuICAgIEVxdWFsID0gXCJlcXVhbFwiLFxuICAgIEV1cm8gPSBcImV1cm9cIixcbiAgICBFeGNsYW1hdGlvbiA9IFwiZXhjbGFtYXRpb25cIixcbiAgICBFeGNsYW1hdGlvblJvdW5kT3BlbiA9IFwiZXhjbGFtYXRpb25fcm91bmRfb3BlblwiLFxuICAgIEV5ZUNpcmNsZSA9IFwiZXllX2NpcmNsZVwiLFxuICAgIEV5ZUNpcmNsZUxhcmdlID0gXCJleWVfY2lyY2xlX2xhcmdlXCIsXG4gICAgRXllUm91bmRGaWxsZWQgPSBcImV5ZV9yb3VuZF9maWxsZWRcIixcbiAgICBGYWN0b3J5ID0gXCJmYWN0b3J5XCIsXG4gICAgRmFzdHRyYWNrID0gXCJmYXN0dHJhY2tcIixcbiAgICBGaWx0ZXIgPSBcImZpbHRlclwiLFxuICAgIEZpbmlzaCA9IFwiZmluaXNoXCIsXG4gICAgRml4ZWRPcHRpb25WYWx1ZVRyZWUgPSBcImZpeGVkX29wdGlvbl92YWx1ZV90cmVlXCIsXG4gICAgRml4ZWRUcmVlT3B0aW9uVmFsdWUgPSBcImZpeGVkX3RyZWVfb3B0aW9uX3ZhbHVlXCIsXG4gICAgRmxvcHB5RGlza1NvbGlkID0gXCJmbG9wcHlfZGlza19zb2xpZFwiLFxuICAgIEZvbGRlckFycm93ID0gXCJGb2xkZXJBcnJvd1wiLFxuICAgIEZvbGRlckFycm93SW4gPSBcImZvbGRlcl9hcnJvd19pblwiLFxuICAgIEZvcm11bGEgPSBcImZvcm11bGFcIixcbiAgICBGdWxsc2NyZWVuID0gXCJmdWxsc2NyZWVuXCIsXG4gICAgR2VhckRvdWJsZSA9IFwiZ2Vhcl9kb3VibGVcIixcbiAgICBHbG9iYWxTZWFyY2ggPSBcImdsb2JhbF9zZWFyY2hcIixcbiAgICBHbG9iZSA9IFwiZ2xvYmVcIixcbiAgICBHcmVhdGVyVGhhbiA9IFwiZ3JlYXRlcl90aGFuXCIsXG4gICAgR3JvdXBieSA9IFwiZ3JvdXBieVwiLFxuICAgIEhhbWJ1cmdlciA9IFwiaGFtYnVyZ2VyXCIsXG4gICAgSGFuZFBvaW50ZXIgPSBcImhhbmRfcG9pbnRlclwiLFxuICAgIEhiYXJjaGFydCA9IFwiaGJhcmNoYXJ0XCIsXG4gICAgSG9tZSA9IFwiSG9tZVwiLFxuICAgIEhvbWVDaXJjbGUgPSBcImhvbWVfY2lyY2xlXCIsXG4gICAgSG9tZU9wZW4gPSBcImhvbWVfb3BlblwiLFxuICAgIEhvbWVSb3VuZE9wZW4gPSBcImhvbWVfcm91bmRfb3BlblwiLFxuICAgIEhvdXJnbGFzcyA9IFwiaG91cmdsYXNzXCIsXG4gICAgSWNvbjNkID0gXCJpY29uXzNkXCIsXG4gICAgSWQgPSBcImlkXCIsXG4gICAgSW1hZ2UgPSBcImltYWdlXCIsXG4gICAgSW5jb21pbmdTdG9yYWdlID0gXCJpbmNvbWluZ19zdG9yYWdlXCIsXG4gICAgSW5mb3JtYXRpb24gPSBcImluZm9ybWF0aW9uXCIsXG4gICAgSW5mb3JtYXRpb25Sb3VuZE9wZW4gPSBcImluZm9ybWF0aW9uX3JvdW5kX29wZW5cIixcbiAgICBJbnB1dE11bHRpcGxlY2hvaWNlID0gXCJpbnB1dF9tdWx0aXBsZWNob2ljZVwiLFxuICAgIElucHV0VGV4dCA9IFwiaW5wdXRfdGV4dFwiLFxuICAgIElucHV0VGV4dGFyZWEgPSBcImlucHV0X3RleHRhcmVhXCIsXG4gICAgSW52ZW50b3J5ID0gXCJpbnZlbnRvcnlcIixcbiAgICBJbnZvaWNlID0gXCJpbnZvaWNlXCIsXG4gICAgSW9uZUxvZ28gPSBcImlvbmVfbG9nb1wiLFxuICAgIElvbmVMb2dvRmF0ID0gXCJpb25lX2xvZ29fZmF0XCIsXG4gICAgSW9uZVN0YXR1c05leHQgPSBcImlvbmVfc3RhdHVzX25leHRcIixcbiAgICBJb25lV29ya2Zsb3cgPSBcImlvbmVfd29ya2Zsb3dcIixcbiAgICBLZXlib2FyZCA9IFwia2V5Ym9hcmRcIixcbiAgICBLZXljaGFpbiA9IFwia2V5Y2hhaW5cIixcbiAgICBMYWJlbCA9IFwibGFiZWxcIixcbiAgICBMYWJlbFJvdW5kT3BlbiA9IFwibGFiZWxfcm91bmRfb3BlblwiLFxuICAgIExhbmRtYXJrRmxhZyA9IFwibGFuZG1hcmtfZmxhZ1wiLFxuICAgIExpYnJhcnkgPSBcImxpYnJhcnlcIixcbiAgICBMaW5lY2hhcnQgPSBcImxpbmVjaGFydFwiLFxuICAgIExpbmtlZFByb2R1Y3RzID0gXCJsaW5rZWRfcHJvZHVjdHNcIixcbiAgICBMaW5rQ2lyY2xlID0gXCJsaW5rX2NpcmNsZVwiLFxuICAgIExpc3RWaWV3ID0gXCJsaXN0X3ZpZXdcIixcbiAgICBMb2NhdGlvbiA9IFwibG9jYXRpb25cIixcbiAgICBMb2NrID0gXCJsb2NrXCIsXG4gICAgTG9ja1JvdW5kT3BlbiA9IFwibG9ja19yb3VuZF9vcGVuXCIsXG4gICAgTG9nbyA9IFwibG9nb1wiLFxuICAgIExvZ291dCA9IFwibG9nb3V0XCIsXG4gICAgTWFnaWNXYW5kID0gXCJtYWdpY193YW5kXCIsXG4gICAgTWFnbmlmaWVyID0gXCJtYWduaWZpZXJcIixcbiAgICBNYW5hZ2VyID0gXCJtYW5hZ2VyXCIsXG4gICAgTWFzayA9IFwibWFza1wiLFxuICAgIE1hc3RlckRldGFpbCA9IFwibWFzdGVyX2RldGFpbFwiLFxuICAgIE1hdGVyaWFsQ2lyY2xlTGFyZ2UgPSBcIm1hdGVyaWFsX2NpcmNsZV9sYXJnZVwiLFxuICAgIE1lZGFsQnJvbnplID0gXCJtZWRhbF9icm9uemVcIixcbiAgICBNZWRhbEdvbGQgPSBcIm1lZGFsX2dvbGRcIixcbiAgICBNZWRhbFNpbHZlciA9IFwibWVkYWxfc2lsdmVyXCIsXG4gICAgTWVkaWNhbE9mZmljZXIgPSBcIm1lZGljYWxfb2ZmaWNlclwiLFxuICAgIE1pY3JvcGhvbmUgPSBcIm1pY3JvcGhvbmVcIixcbiAgICBNaW51c1JvdW5kT3BlbiA9IFwibWludXNfcm91bmRfb3BlblwiLFxuICAgIE1pbnVzU2ltcGxlID0gXCJtaW51c19zaW1wbGVcIixcbiAgICBNb2JpbGUgPSBcIm1vYmlsZVwiLFxuICAgIE11bHRpU2VsZWN0Q2hlY2sgPSBcIm11bHRpX3NlbGVjdF9jaGVja1wiLFxuICAgIE5ld1Rhc2sgPSBcIm5ld190YXNrXCIsXG4gICAgTm90ZSA9IFwibm90ZVwiLFxuICAgIE5vdGVCb3JkZXJlZCA9IFwibm90ZV9ib3JkZXJlZFwiLFxuICAgIE5vdGlmaWNhdGlvbiA9IFwibm90aWZpY2F0aW9uXCIsXG4gICAgTm90RXF1YWwgPSBcIm5vdF9lcXVhbFwiLFxuICAgIE9wdGlvbiA9IFwib3B0aW9uXCIsXG4gICAgT3B0aW9uc2V0ID0gXCJvcHRpb25zZXRcIixcbiAgICBPcmRlciA9IFwib3JkZXJcIixcbiAgICBPcmRlcnBpY2tpbmcgPSBcIm9yZGVycGlja2luZ1wiLFxuICAgIE91dGdvaW5nU3RvcmFnZSA9IFwib3V0Z29pbmdfc3RvcmFnZVwiLFxuICAgIE92ZXJCb29raW5nID0gXCJvdmVyX2Jvb2tpbmdcIixcbiAgICBQYXVzZUNpcmNsZSA9IFwicGF1c2VfY2lyY2xlXCIsXG4gICAgUGVuY2lsUm91bmRPcGVuID0gXCJwZW5jaWxfcm91bmRfb3BlblwiLFxuICAgIFBlblRvU3F1YXJlU29saWQgPSBcInBlbl90b19zcXVhcmVfc29saWRcIixcbiAgICBQaG9uZSA9IFwicGhvbmVcIixcbiAgICBQaG9uZVJvdW5kT3BlbiA9IFwicGhvbmVfcm91bmRfb3BlblwiLFxuICAgIFBpZWNoYXJ0ID0gXCJwaWVjaGFydFwiLFxuICAgIFBpbiA9IFwicGluXCIsXG4gICAgUGluUm91bmRPcGVuID0gXCJwaW5fcm91bmRfb3BlblwiLFxuICAgIFBsYXlDaXJjbGUgPSBcInBsYXlfY2lyY2xlXCIsXG4gICAgUGx1c1JvdW5kID0gXCJwbHVzX3JvdW5kXCIsXG4gICAgUGx1c1JvdW5kT3BlbiA9IFwicGx1c19yb3VuZF9vcGVuXCIsXG4gICAgUGx1c1NpbXBsZSA9IFwicGx1c19zaW1wbGVcIixcbiAgICBQbHVzU2tpbm55ID0gXCJwbHVzX3NraW5ueVwiLFxuICAgIFBsdXNTb2xpZCA9IFwicGx1c19zb2xpZFwiLFxuICAgIFBsdXNTdGFycyA9IFwicGx1c19zdGFyc1wiLFxuICAgIFBvaW50ZXIgPSBcInBvaW50ZXJcIixcbiAgICBQb2ludGVyM2QgPSBcInBvaW50ZXJfM2RcIixcbiAgICBQb2ludGVyRmlsbGVkID0gXCJwb2ludGVyX2ZpbGxlZFwiLFxuICAgIFBPUyA9IFwiUE9TXCIsXG4gICAgUG9zaXRpb25pbmcgPSBcInBvc2l0aW9uaW5nXCIsXG4gICAgUHJlZ25hbmN5ID0gXCJwcmVnbmFuY3lcIixcbiAgICBQcmVzZXQgPSBcInByZXNldFwiLFxuICAgIFByaW50ID0gXCJwcmludFwiLFxuICAgIFByb2R1Y3RQcm9wZXJ0aWVzID0gXCJwcm9kdWN0X3Byb3BlcnRpZXNcIixcbiAgICBQdXJjaGFzZSA9IFwicHVyY2hhc2VcIixcbiAgICBRcmNvZGUgPSBcInFyY29kZVwiLFxuICAgIFF1ZXN0aW9uID0gXCJxdWVzdGlvblwiLFxuICAgIFJhZGlvVW5jaGVjayA9IFwicmFkaW9fdW5jaGVja1wiLFxuICAgIFJhbmdlID0gXCJyYW5nZVwiLFxuICAgIFJhbmdlU2VsZWN0ID0gXCJyYW5nZV9zZWxlY3RcIixcbiAgICBSZWN0YW5nbGVzID0gXCJyZWN0YW5nbGVzXCIsXG4gICAgUmVmcmVzaCA9IFwicmVmcmVzaFwiLFxuICAgIFJlZ3VsYXJCb3hlc1BhY2tpbmdDaXJjbGVDaGVjayA9IFwicmVndWxhcl9ib3hlc19wYWNraW5nX2NpcmNsZV9jaGVja1wiLFxuICAgIFJlbGF0aW9ucyA9IFwicmVsYXRpb25zXCIsXG4gICAgUmVtYXJrID0gXCJyZW1hcmtcIixcbiAgICBSZW1hcmtSb3VuZE9wZW4gPSBcInJlbWFya19yb3VuZF9vcGVuXCIsXG4gICAgUmVwb3J0SW5UeXBlID0gXCJyZXBvcnRfaW5fdHlwZVwiLFxuICAgIFJlc2l6ZSA9IFwicmVzaXplXCIsXG4gICAgUmVzaXplRG93biA9IFwicmVzaXplX2Rvd25cIixcbiAgICBSZXNpemVVcCA9IFwicmVzaXplX3VwXCIsXG4gICAgUmV0dXJucyA9IFwicmV0dXJuc1wiLFxuICAgIFJldHVybkdvb2RzID0gXCJyZXR1cm5fZ29vZHNcIixcbiAgICBSb3RhdGVMZWZ0U29saWQgPSBcInJvdGF0ZV9sZWZ0X3NvbGlkXCIsXG4gICAgU2F2ZURpc2sgPSBcInNhdmVfZGlza1wiLFxuICAgIFNhdmVTa2lubnkgPSBcInNhdmVfc2tpbm55XCIsXG4gICAgU2NhbGVCYWxhbmNlZCA9IFwic2NhbGVfYmFsYW5jZWRcIixcbiAgICBTY2FubmVyID0gXCJzY2FubmVyXCIsXG4gICAgU2VhcmNoUm91bmRPcGVuID0gXCJzZWFyY2hfcm91bmRfb3BlblwiLFxuICAgIFNlY3Rpb25zID0gXCJzZWN0aW9uc1wiLFxuICAgIFNlbGVjdEFsbFJvdW5kID0gXCJzZWxlY3RfYWxsX3JvdW5kXCIsXG4gICAgU2VydmljZXMgPSBcInNlcnZpY2VzXCIsXG4gICAgU2V0dGluZ3MgPSBcInNldHRpbmdzXCIsXG4gICAgU2hvcCA9IFwiU2hvcFwiLFxuICAgIFNob3BwaW5nQ2FydCA9IFwic2hvcHBpbmdfY2FydFwiLFxuICAgIFNob3BwaW5nQ2FydE5yID0gXCJzaG9wcGluZ19jYXJ0X25yXCIsXG4gICAgU2hvcnRjdXQgPSBcInNob3J0Y3V0XCIsXG4gICAgU2luZ2xlUGVyc29uID0gXCJTaW5nbGVQZXJzb25cIixcbiAgICBTa2lsbHMgPSBcInNraWxsc1wiLFxuICAgIFNsaWRlclBhbmVsID0gXCJzbGlkZXJfcGFuZWxcIixcbiAgICBTbGlkZUluID0gXCJzbGlkZV9pblwiLFxuICAgIFNtYWxsZXJUaGFuID0gXCJzbWFsbGVyX3RoYW5cIixcbiAgICBTbWFsbFRpbGVzID0gXCJzbWFsbF90aWxlc1wiLFxuICAgIFNvcnRBc2MgPSBcInNvcnRfYXNjXCIsXG4gICAgU29ydERlc2MgPSBcInNvcnRfZGVzY1wiLFxuICAgIFN0YXIgPSBcIlN0YXJcIixcbiAgICBTdGFyUm91bmRPcGVuID0gXCJzdGFyX3JvdW5kX29wZW5cIixcbiAgICBTdGF0dXNBY3RpdmUgPSBcInN0YXR1c19hY3RpdmVcIixcbiAgICBTdGF0dXNBZG9wdGlvbiA9IFwic3RhdHVzX2Fkb3B0aW9uXCIsXG4gICAgU3RhdHVzRm9zdGVyY2FyZSA9IFwic3RhdHVzX2Zvc3RlcmNhcmVcIixcbiAgICBTdGF0dXNJbGwgPSBcInN0YXR1c19pbGxcIixcbiAgICBTdGF0dXNMZWF2ZSA9IFwic3RhdHVzX2xlYXZlXCIsXG4gICAgU3RhdHVzUHJlZ25hbmN5ID0gXCJzdGF0dXNfcHJlZ25hbmN5XCIsXG4gICAgU3RvY2sgPSBcInN0b2NrXCIsXG4gICAgU3RvY2tNYW5hZ2VtZW50ID0gXCJzdG9ja19tYW5hZ2VtZW50XCIsXG4gICAgU3RvcmFnZSA9IFwic3RvcmFnZVwiLFxuICAgIFN1cGVydmlzb3IgPSBcInN1cGVydmlzb3JcIixcbiAgICBTdXBwbGllciA9IFwic3VwcGxpZXJcIixcbiAgICBTdXJnZXJ5ID0gXCJzdXJnZXJ5XCIsXG4gICAgVGFibGVjaGFydCA9IFwidGFibGVjaGFydFwiLFxuICAgIFRhZyA9IFwidGFnXCIsXG4gICAgVGFsa1Rvb011Y2ggPSBcInRhbGtfdG9vX211Y2hcIixcbiAgICBUYXJnZXQgPSBcInRhcmdldFwiLFxuICAgIFRhc2sgPSBcInRhc2tcIixcbiAgICBUaGlja0xpbmVzID0gXCJ0aGlja19saW5lc1wiLFxuICAgIFRoaW5MaW5lcyA9IFwidGhpbl9saW5lc1wiLFxuICAgIFRocmVlU2l4dHlWaWV3ID0gXCJ0aHJlZV9zaXh0eV92aWV3XCIsXG4gICAgVGh1bWJCcm9uemUgPSBcInRodW1iX2Jyb256ZVwiLFxuICAgIFRodW1iR29sZCA9IFwidGh1bWJfZ29sZFwiLFxuICAgIFRodW1iU2lsdmVyID0gXCJ0aHVtYl9zaWx2ZXJcIixcbiAgICBUaW1lbGluZSA9IFwidGltZWxpbmVcIixcbiAgICBUcmFuc2FjdGlvbnMgPSBcInRyYW5zYWN0aW9uc1wiLFxuICAgIFRyYW5zYWN0aW9uRGV0YWlsID0gXCJ0cmFuc2FjdGlvbl9kZXRhaWxcIixcbiAgICBUcmFzaEJpbiA9IFwiVHJhc2hCaW5cIixcbiAgICBUcmFzaENhblNvbGlkID0gXCJ0cmFzaF9jYW5fc29saWRcIixcbiAgICBUcmlhbmdsZURvd24gPSBcInRyaWFuZ2xlX2Rvd25cIixcbiAgICBUcmlhbmdsZUxhcmdlID0gXCJ0cmlhbmdsZV9sYXJnZVwiLFxuICAgIFRyaWFuZ2xlTGVmdCA9IFwidHJpYW5nbGVfbGVmdFwiLFxuICAgIFRyaWFuZ2xlUmlnaHQgPSBcInRyaWFuZ2xlX3JpZ2h0XCIsXG4gICAgVHJpYW5nbGVVcCA9IFwidHJpYW5nbGVfdXBcIixcbiAgICBUcnVjayA9IFwidHJ1Y2tcIixcbiAgICBUcnVja0NhbGVuZGFyID0gXCJ0cnVja19jYWxlbmRhclwiLFxuICAgIFVuZG9Sb3VuZE9wZW4gPSBcInVuZG9fcm91bmRfb3BlblwiLFxuICAgIFVzZXIgPSBcInVzZXJcIixcbiAgICBWYXJpYW50cyA9IFwidmFyaWFudHNcIixcbiAgICBWYmFyY2hhcnQgPSBcInZiYXJjaGFydFwiLFxuICAgIFZpZXcgPSBcInZpZXdcIixcbiAgICBXYXJlaG91c2UgPSBcIndhcmVob3VzZVwiLFxuICAgIFdhdGVybWFyayA9IFwid2F0ZXJtYXJrXCIsXG4gICAgV2Vic2l0ZSA9IFwid2Vic2l0ZVwiLFxuICAgIFdpemFyZCA9IFwid2l6YXJkXCIsXG4gICAgV21zID0gXCJ3bXNcIixcbiAgICBXb3JrSW5Qcm9ncmVzcyA9IFwid29ya19pbl9wcm9ncmVzc1wiLFxuICAgIFdvcmtJblByb2dyZXNzUm91bmRPcGVuID0gXCJ3b3JrX2luX3Byb2dyZXNzX3JvdW5kX29wZW5cIixcbiAgICBXcmVuY2ggPSBcIndyZW5jaFwiLFxuICAgIFhBeGlzID0gXCJ4X2F4aXNcIixcbiAgICBZQXhpcyA9IFwieV9heGlzXCJcbn0iXX0=
|
|
302
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29yZS1jb21wb25lbnRzLWljb24uZW51bS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmVjb21wb25lbnRzL3NyYy9saWIvY29yZS9lbnVtL2NvcmUtY29tcG9uZW50cy1pY29uLmVudW0udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsZ0dBQWdHO0FBRWhHLE1BQU0sQ0FBTixJQUFZLGtCQTBTWDtBQTFTRCxXQUFZLGtCQUFrQjtJQUMxQix5Q0FBbUIsQ0FBQTtJQUNuQiw2REFBdUMsQ0FBQTtJQUN2QywrQ0FBeUIsQ0FBQTtJQUN6Qix3REFBa0MsQ0FBQTtJQUNsQyw4Q0FBd0IsQ0FBQTtJQUN4QixxREFBK0IsQ0FBQTtJQUMvQix1REFBaUMsQ0FBQTtJQUNqQyw4Q0FBd0IsQ0FBQTtJQUN4QixrRUFBNEMsQ0FBQTtJQUM1Qyx5REFBbUMsQ0FBQTtJQUNuQyx5REFBbUMsQ0FBQTtJQUNuQywyREFBcUMsQ0FBQTtJQUNyQyxxREFBK0IsQ0FBQTtJQUMvQixvRUFBOEMsQ0FBQTtJQUM5QywyREFBcUMsQ0FBQTtJQUNyQywyREFBcUMsQ0FBQTtJQUNyQyw2REFBdUMsQ0FBQTtJQUN2Qyx1REFBaUMsQ0FBQTtJQUNqQywwQ0FBb0IsQ0FBQTtJQUNwQix5Q0FBbUIsQ0FBQTtJQUNuQiwyREFBcUMsQ0FBQTtJQUNyQyxzREFBZ0MsQ0FBQTtJQUNoQyxpREFBMkIsQ0FBQTtJQUMzQiwrQ0FBeUIsQ0FBQTtJQUN6Qix5Q0FBbUIsQ0FBQTtJQUNuQix3Q0FBa0IsQ0FBQTtJQUNsQixxQ0FBZSxDQUFBO0lBQ2YsbUVBQTZDLENBQUE7SUFDN0MscUNBQWUsQ0FBQTtJQUNmLHlEQUFtQyxDQUFBO0lBQ25DLDBEQUFvQyxDQUFBO0lBQ3BDLHFEQUErQixDQUFBO0lBQy9CLDJDQUFxQixDQUFBO0lBQ3JCLGtEQUE0QixDQUFBO0lBQzVCLGlFQUEyQyxDQUFBO0lBQzNDLHNEQUFnQyxDQUFBO0lBQ2hDLHNEQUFnQyxDQUFBO0lBQ2hDLCtEQUF5QyxDQUFBO0lBQ3pDLHVDQUFpQixDQUFBO0lBQ2pCLHVDQUFpQixDQUFBO0lBQ2pCLCtEQUF5QyxDQUFBO0lBQ3pDLDJEQUFxQyxDQUFBO0lBQ3JDLG1DQUFhLENBQUE7SUFDYiw0Q0FBc0IsQ0FBQTtJQUN0QixrREFBNEIsQ0FBQTtJQUM1QixtREFBNkIsQ0FBQTtJQUM3QixpRUFBMkMsQ0FBQTtJQUMzQyx3REFBa0MsQ0FBQTtJQUNsQyxxQ0FBZSxDQUFBO0lBQ2Ysb0RBQThCLENBQUE7SUFDOUIsZ0RBQTBCLENBQUE7SUFDMUIseURBQW1DLENBQUE7SUFDbkMsa0RBQTRCLENBQUE7SUFDNUIsOENBQXdCLENBQUE7SUFDeEIsaUVBQTJDLENBQUE7SUFDM0MsNkRBQXVDLENBQUE7SUFDdkMsMkRBQXFDLENBQUE7SUFDckMsdUNBQWlCLENBQUE7SUFDakIscUNBQWUsQ0FBQTtJQUNmLCtDQUF5QixDQUFBO0lBQ3pCLG1EQUE2QixDQUFBO0lBQzdCLDZDQUF1QixDQUFBO0lBQ3ZCLHNEQUFnQyxDQUFBO0lBQ2hDLHlDQUFtQixDQUFBO0lBQ25CLGtEQUE0QixDQUFBO0lBQzVCLG1EQUE2QixDQUFBO0lBQzdCLCtDQUF5QixDQUFBO0lBQ3pCLG1DQUFhLENBQUE7SUFDYixnREFBMEIsQ0FBQTtJQUMxQixpREFBMkIsQ0FBQTtJQUMzQiw2Q0FBdUIsQ0FBQTtJQUN2Qix3REFBa0MsQ0FBQTtJQUNsQyx1RUFBaUQsQ0FBQTtJQUNqRCxzREFBZ0MsQ0FBQTtJQUNoQyxvREFBOEIsQ0FBQTtJQUM5QixnREFBMEIsQ0FBQTtJQUMxQiwrQ0FBeUIsQ0FBQTtJQUN6Qiw2Q0FBdUIsQ0FBQTtJQUN2Qix1REFBaUMsQ0FBQTtJQUNqQyx1Q0FBaUIsQ0FBQTtJQUNqQiwyQ0FBcUIsQ0FBQTtJQUNyQiwyQ0FBcUIsQ0FBQTtJQUNyQiwyQ0FBcUIsQ0FBQTtJQUNyQixnREFBMEIsQ0FBQTtJQUMxQiw2REFBdUMsQ0FBQTtJQUN2QywyREFBcUMsQ0FBQTtJQUNyQyw2REFBdUMsQ0FBQTtJQUN2QyxxQ0FBZSxDQUFBO0lBQ2YseURBQW1DLENBQUE7SUFDbkMsMkNBQXFCLENBQUE7SUFDckIsa0RBQTRCLENBQUE7SUFDNUIsMkNBQXFCLENBQUE7SUFDckIsK0NBQXlCLENBQUE7SUFDekIsc0RBQWdDLENBQUE7SUFDaEMscUNBQWUsQ0FBQTtJQUNmLG1DQUFhLENBQUE7SUFDYixpREFBMkIsQ0FBQTtJQUMzQixxRUFBK0MsQ0FBQTtJQUMvQyw4Q0FBd0IsQ0FBQTtJQUN4Qix5REFBbUMsQ0FBQTtJQUNuQyx5REFBbUMsQ0FBQTtJQUNuQyx5Q0FBbUIsQ0FBQTtJQUNuQiw2Q0FBdUIsQ0FBQTtJQUN2Qix1Q0FBaUIsQ0FBQTtJQUNqQix1Q0FBaUIsQ0FBQTtJQUNqQixzRUFBZ0QsQ0FBQTtJQUNoRCxzRUFBZ0QsQ0FBQTtJQUNoRCwyREFBcUMsQ0FBQTtJQUNyQyxpREFBMkIsQ0FBQTtJQUMzQix1REFBaUMsQ0FBQTtJQUNqQyx5Q0FBbUIsQ0FBQTtJQUNuQiwrQ0FBeUIsQ0FBQTtJQUN6QixnREFBMEIsQ0FBQTtJQUMxQixvREFBOEIsQ0FBQTtJQUM5QixxQ0FBZSxDQUFBO0lBQ2Ysa0RBQTRCLENBQUE7SUFDNUIseUNBQW1CLENBQUE7SUFDbkIsNkNBQXVCLENBQUE7SUFDdkIsa0RBQTRCLENBQUE7SUFDNUIsNkNBQXVCLENBQUE7SUFDdkIsbUNBQWEsQ0FBQTtJQUNiLGdEQUEwQixDQUFBO0lBQzFCLDRDQUFzQixDQUFBO0lBQ3RCLHVEQUFpQyxDQUFBO0lBQ2pDLDZDQUF1QixDQUFBO0lBQ3ZCLHdDQUFrQixDQUFBO0lBQ2xCLCtCQUFTLENBQUE7SUFDVCxxQ0FBZSxDQUFBO0lBQ2YsMERBQW9DLENBQUE7SUFDcEMsaURBQTJCLENBQUE7SUFDM0IscUVBQStDLENBQUE7SUFDL0Msa0VBQTRDLENBQUE7SUFDNUMsOENBQXdCLENBQUE7SUFDeEIsc0RBQWdDLENBQUE7SUFDaEMsNkNBQXVCLENBQUE7SUFDdkIseUNBQW1CLENBQUE7SUFDbkIsNENBQXNCLENBQUE7SUFDdEIsbURBQTZCLENBQUE7SUFDN0IseURBQW1DLENBQUE7SUFDbkMsb0RBQThCLENBQUE7SUFDOUIsMkNBQXFCLENBQUE7SUFDckIsMkNBQXFCLENBQUE7SUFDckIscUNBQWUsQ0FBQTtJQUNmLHlEQUFtQyxDQUFBO0lBQ25DLG9EQUE4QixDQUFBO0lBQzlCLHlDQUFtQixDQUFBO0lBQ25CLDZDQUF1QixDQUFBO0lBQ3ZCLHdEQUFrQyxDQUFBO0lBQ2xDLGdEQUEwQixDQUFBO0lBQzFCLDRDQUFzQixDQUFBO0lBQ3RCLDJDQUFxQixDQUFBO0lBQ3JCLG1DQUFhLENBQUE7SUFDYix1REFBaUMsQ0FBQTtJQUNqQyxtQ0FBYSxDQUFBO0lBQ2IsdUNBQWlCLENBQUE7SUFDakIsOENBQXdCLENBQUE7SUFDeEIsNkNBQXVCLENBQUE7SUFDdkIseUNBQW1CLENBQUE7SUFDbkIsbUNBQWEsQ0FBQTtJQUNiLG9EQUE4QixDQUFBO0lBQzlCLG1FQUE2QyxDQUFBO0lBQzdDLGtEQUE0QixDQUFBO0lBQzVCLDhDQUF3QixDQUFBO0lBQ3hCLGtEQUE0QixDQUFBO0lBQzVCLHdEQUFrQyxDQUFBO0lBQ2xDLCtDQUF5QixDQUFBO0lBQ3pCLHlEQUFtQyxDQUFBO0lBQ25DLGtEQUE0QixDQUFBO0lBQzVCLHVDQUFpQixDQUFBO0lBQ2pCLDZEQUF1QyxDQUFBO0lBQ3ZDLDBDQUFvQixDQUFBO0lBQ3BCLG1DQUFhLENBQUE7SUFDYixvREFBOEIsQ0FBQTtJQUM5QixtREFBNkIsQ0FBQTtJQUM3Qiw0Q0FBc0IsQ0FBQTtJQUN0Qix1Q0FBaUIsQ0FBQTtJQUNqQiw2Q0FBdUIsQ0FBQTtJQUN2QixxQ0FBZSxDQUFBO0lBQ2YsbURBQTZCLENBQUE7SUFDN0IsMERBQW9DLENBQUE7SUFDcEMsa0RBQTRCLENBQUE7SUFDNUIsa0RBQTRCLENBQUE7SUFDNUIsMkRBQXFDLENBQUE7SUFDckMsOERBQXdDLENBQUE7SUFDeEMscUNBQWUsQ0FBQTtJQUNmLHlEQUFtQyxDQUFBO0lBQ25DLDJDQUFxQixDQUFBO0lBQ3JCLGlDQUFXLENBQUE7SUFDWCxxREFBK0IsQ0FBQTtJQUMvQixnREFBMEIsQ0FBQTtJQUMxQiw4Q0FBd0IsQ0FBQTtJQUN4Qix1REFBaUMsQ0FBQTtJQUNqQyxnREFBMEIsQ0FBQTtJQUMxQixnREFBMEIsQ0FBQTtJQUMxQiw4Q0FBd0IsQ0FBQTtJQUN4Qiw4Q0FBd0IsQ0FBQTtJQUN4Qix5Q0FBbUIsQ0FBQTtJQUNuQiw4Q0FBd0IsQ0FBQTtJQUN4QixzREFBZ0MsQ0FBQTtJQUNoQyxpQ0FBVyxDQUFBO0lBQ1gsaURBQTJCLENBQUE7SUFDM0IsNkNBQXVCLENBQUE7SUFDdkIsdUNBQWlCLENBQUE7SUFDakIscUNBQWUsQ0FBQTtJQUNmLDhEQUF3QyxDQUFBO0lBQ3hDLDJDQUFxQixDQUFBO0lBQ3JCLHVDQUFpQixDQUFBO0lBQ2pCLDJDQUFxQixDQUFBO0lBQ3JCLG9EQUE4QixDQUFBO0lBQzlCLHFDQUFlLENBQUE7SUFDZixrREFBNEIsQ0FBQTtJQUM1QiwrQ0FBeUIsQ0FBQTtJQUN6Qix5Q0FBbUIsQ0FBQTtJQUNuQiwyRkFBcUUsQ0FBQTtJQUNyRSw2Q0FBdUIsQ0FBQTtJQUN2Qix1Q0FBaUIsQ0FBQTtJQUNqQiwyREFBcUMsQ0FBQTtJQUNyQyxxREFBK0IsQ0FBQTtJQUMvQix1Q0FBaUIsQ0FBQTtJQUNqQixnREFBMEIsQ0FBQTtJQUMxQiw0Q0FBc0IsQ0FBQTtJQUN0Qix5Q0FBbUIsQ0FBQTtJQUNuQixrREFBNEIsQ0FBQTtJQUM1QiwyREFBcUMsQ0FBQTtJQUNyQyw0Q0FBc0IsQ0FBQTtJQUN0QixnREFBMEIsQ0FBQTtJQUMxQixzREFBZ0MsQ0FBQTtJQUNoQyx5Q0FBbUIsQ0FBQTtJQUNuQiwyREFBcUMsQ0FBQTtJQUNyQywyQ0FBcUIsQ0FBQTtJQUNyQix5REFBbUMsQ0FBQTtJQUNuQywyQ0FBcUIsQ0FBQTtJQUNyQiwyQ0FBcUIsQ0FBQTtJQUNyQixtQ0FBYSxDQUFBO0lBQ2Isb0RBQThCLENBQUE7SUFDOUIseURBQW1DLENBQUE7SUFDbkMsMkNBQXFCLENBQUE7SUFDckIsbURBQTZCLENBQUE7SUFDN0IsdUNBQWlCLENBQUE7SUFDakIsa0RBQTRCLENBQUE7SUFDNUIsMENBQW9CLENBQUE7SUFDcEIsa0RBQTRCLENBQUE7SUFDNUIsZ0RBQTBCLENBQUE7SUFDMUIsMENBQW9CLENBQUE7SUFDcEIsNENBQXNCLENBQUE7SUFDdEIsbUNBQWEsQ0FBQTtJQUNiLHVEQUFpQyxDQUFBO0lBQ2pDLG9EQUE4QixDQUFBO0lBQzlCLHdEQUFrQyxDQUFBO0lBQ2xDLDREQUFzQyxDQUFBO0lBQ3RDLDhDQUF3QixDQUFBO0lBQ3hCLGtEQUE0QixDQUFBO0lBQzVCLDBEQUFvQyxDQUFBO0lBQ3BDLHFDQUFlLENBQUE7SUFDZiwwREFBb0MsQ0FBQTtJQUNwQyx5Q0FBbUIsQ0FBQTtJQUNuQiwrQ0FBeUIsQ0FBQTtJQUN6QiwyQ0FBcUIsQ0FBQTtJQUNyQix5Q0FBbUIsQ0FBQTtJQUNuQiwrQ0FBeUIsQ0FBQTtJQUN6QixpQ0FBVyxDQUFBO0lBQ1gsbURBQTZCLENBQUE7SUFDN0IsdUNBQWlCLENBQUE7SUFDakIsbUNBQWEsQ0FBQTtJQUNiLGdEQUEwQixDQUFBO0lBQzFCLDhDQUF3QixDQUFBO0lBQ3hCLHlEQUFtQyxDQUFBO0lBQ25DLGtEQUE0QixDQUFBO0lBQzVCLDhDQUF3QixDQUFBO0lBQ3hCLGtEQUE0QixDQUFBO0lBQzVCLDJDQUFxQixDQUFBO0lBQ3JCLG1EQUE2QixDQUFBO0lBQzdCLDhEQUF3QyxDQUFBO0lBQ3hDLDJDQUFxQixDQUFBO0lBQ3JCLHVEQUFpQyxDQUFBO0lBQ2pDLG9EQUE4QixDQUFBO0lBQzlCLHNEQUFnQyxDQUFBO0lBQ2hDLG9EQUE4QixDQUFBO0lBQzlCLHNEQUFnQyxDQUFBO0lBQ2hDLGdEQUEwQixDQUFBO0lBQzFCLHFDQUFlLENBQUE7SUFDZixzREFBZ0MsQ0FBQTtJQUNoQyx1REFBaUMsQ0FBQTtJQUNqQyxtQ0FBYSxDQUFBO0lBQ2IsMkNBQXFCLENBQUE7SUFDckIsNkNBQXVCLENBQUE7SUFDdkIsbUNBQWEsQ0FBQTtJQUNiLDZDQUF1QixDQUFBO0lBQ3ZCLDZDQUF1QixDQUFBO0lBQ3ZCLHlDQUFtQixDQUFBO0lBQ25CLHVDQUFpQixDQUFBO0lBQ2pCLGlDQUFXLENBQUE7SUFDWCx5REFBbUMsQ0FBQTtJQUNuQyw2RUFBdUQsQ0FBQTtJQUN2RCx1Q0FBaUIsQ0FBQTtJQUNqQixzQ0FBZ0IsQ0FBQTtJQUNoQixzQ0FBZ0IsQ0FBQTtBQUNwQixDQUFDLEVBMVNXLGtCQUFrQixLQUFsQixrQkFBa0IsUUEwUzdCIiwic291cmNlc0NvbnRlbnQiOlsiLyoqIEFVVE8gR0VORVJBVEVEIEZJTEUuIERPIE5PVCBDSEFOR0UuLiBPUiBZT1UgV0lMTCBTVUZGRVIgVEhFIENPTlNFUVVFTkNFUyBPRiBZT1VSIEFDVElPTlMgKiovXG5cbmV4cG9ydCBlbnVtIENvcmVDb21wb25lbnRzSWNvbiB7XG4gICAgQWNjb3VudCA9IFwiYWNjb3VudFwiLFxuICAgIEFjY291bnRSb3VuZE9wZW4gPSBcImFjY291bnRfcm91bmRfb3BlblwiLFxuICAgIEFjdGl2aXRpZXMgPSBcImFjdGl2aXRpZXNcIixcbiAgICBBZGRUb0NhcnREcm9wID0gXCJhZGRfdG9fY2FydF9kcm9wXCIsXG4gICAgQXJyb3dEb3duID0gXCJhcnJvd19kb3duXCIsXG4gICAgQXJyb3dGYXRMZWZ0ID0gXCJhcnJvd19mYXRfbGVmdFwiLFxuICAgIEFycm93RmF0UmlnaHQgPSBcImFycm93X2ZhdF9yaWdodFwiLFxuICAgIEFycm93TGVmdCA9IFwiYXJyb3dfbGVmdFwiLFxuICAgIEFycm93TGVmdFJvdW5kT3BlbiA9IFwiYXJyb3dfbGVmdF9yb3VuZF9vcGVuXCIsXG4gICAgQXJyb3dQb2ludERvd24gPSBcImFycm93X3BvaW50X2Rvd25cIixcbiAgICBBcnJvd1BvaW50TGVmdCA9IFwiYXJyb3dfcG9pbnRfbGVmdFwiLFxuICAgIEFycm93UG9pbnRSaWdodCA9IFwiYXJyb3dfcG9pbnRfcmlnaHRcIixcbiAgICBBcnJvd1BvaW50VXAgPSBcImFycm93X3BvaW50X3VwXCIsXG4gICAgQXJyb3dSaWdodFJvdW5kT3BlbiA9IFwiYXJyb3dfcmlnaHRfcm91bmRfb3BlblwiLFxuICAgIEFycm93U2Nyb2xsRG93biA9IFwiYXJyb3dfc2Nyb2xsX2Rvd25cIixcbiAgICBBcnJvd1Njcm9sbExlZnQgPSBcImFycm93X3Njcm9sbF9sZWZ0XCIsXG4gICAgQXJyb3dTY3JvbGxSaWdodCA9IFwiYXJyb3dfc2Nyb2xsX3JpZ2h0XCIsXG4gICAgQXJyb3dTY3JvbGxVcCA9IFwiYXJyb3dfc2Nyb2xsX3VwXCIsXG4gICAgQXJyb3dVcCA9IFwiYXJyb3dfdXBcIixcbiAgICBBcnRpY2xlID0gXCJhcnRpY2xlXCIsXG4gICAgQXJ0aWNsZVdpdGhGb2xkID0gXCJhcnRpY2xlX3dpdGhfZm9sZFwiLFxuICAgIEFzdGVyaXNrU21hbGwgPSBcImFzdGVyaXNrX3NtYWxsXCIsXG4gICAgQXR0YWNobWVudHMgPSBcImF0dGFjaG1lbnRzXCIsXG4gICAgQmFja1RvVG9wID0gXCJiYWNrX3RvX3RvcFwiLFxuICAgIEJhcmNvZGUgPSBcIkJhcmNvZGVcIixcbiAgICBCaWdNYWMgPSBcImJpZ19tYWNcIixcbiAgICBCb3hlcyA9IFwiYm94ZXNcIixcbiAgICBCb3hlc1BhY2tpbmdSZWd1bGFyID0gXCJib3hlc19wYWNraW5nX3JlZ3VsYXJcIixcbiAgICBCcnVzaCA9IFwiYnJ1c2hcIixcbiAgICBCcnVzaFJvdW5kT3BlbiA9IFwiYnJ1c2hfcm91bmRfb3BlblwiLFxuICAgIEJ1aWxkaW5nQ29sdW1ucyA9IFwiYnVpbGRpbmdfY29sdW1uc1wiLFxuICAgIEJ1c2luZXNzcnVsZXMgPSBcImJ1c2luZXNzcnVsZXNcIixcbiAgICBDYWxlbmRhciA9IFwiY2FsZW5kYXJcIixcbiAgICBDYWxlbmRhckRheSA9IFwiY2FsZW5kYXJfZGF5XCIsXG4gICAgQ2FsZW5kYXJEYXlSZWd1bGFyID0gXCJjYWxlbmRhcl9kYXlfcmVndWxhclwiLFxuICAgIENhbGVuZGFyRW1wdHkgPSBcImNhbGVuZGFyX2VtcHR5XCIsXG4gICAgQ2FsZW5kYXJSYW5nZSA9IFwiY2FsZW5kYXJfcmFuZ2VcIixcbiAgICBDYWxlbmRhclJvdW5kT3BlbiA9IFwiY2FsZW5kYXJfcm91bmRfb3BlblwiLFxuICAgIENhbWVyYSA9IFwiY2FtZXJhXCIsXG4gICAgQ2FuY2VsID0gXCJjYW5jZWxcIixcbiAgICBDYW5jZWxSb3VuZEZpbGxlZCA9IFwiY2FuY2VsX3JvdW5kX2ZpbGxlZFwiLFxuICAgIENhbmNlbFJvdW5kT3BlbiA9IFwiY2FuY2VsX3JvdW5kX29wZW5cIixcbiAgICBDYXJ0ID0gXCJjYXJ0XCIsXG4gICAgQ2FydE9wZW4gPSBcImNhcnRfb3BlblwiLFxuICAgIENhc2VNYW5hZ2VyID0gXCJjYXNlX21hbmFnZXJcIixcbiAgICBDYXNoUmVnaXN0ZXIgPSBcIkNhc2hSZWdpc3RlclwiLFxuICAgIENhc2hSZWdpc3RlclNpbXBsZSA9IFwiY2FzaF9yZWdpc3Rlcl9zaW1wbGVcIixcbiAgICBDaGFuZ2VMb2NhdGlvbiA9IFwiY2hhbmdlX2xvY2F0aW9uXCIsXG4gICAgQ2hlY2sgPSBcImNoZWNrXCIsXG4gICAgQ2hlY2tEdW90b25lID0gXCJjaGVja19kdW90b25lXCIsXG4gICAgQ2hlY2tSb3VuZCA9IFwiY2hlY2tfcm91bmRcIixcbiAgICBDaGVja1JvdW5kT3BlbiA9IFwiY2hlY2tfcm91bmRfb3BlblwiLFxuICAgIENoZWNrU2ltcGxlID0gXCJjaGVja19zaW1wbGVcIixcbiAgICBDaGVja1RoaW4gPSBcImNoZWNrX3RoaW5cIixcbiAgICBDaGV2cm9uRG93blJlZ3VsYXIgPSBcImNoZXZyb25fZG93bl9yZWd1bGFyXCIsXG4gICAgQ2hldnJvblVwUmVndWxhciA9IFwiY2hldnJvbl91cF9yZWd1bGFyXCIsXG4gICAgQ2lyY2xlUGx1c1NraW5ueSA9IFwiQ2lyY2xlUGx1c1NraW5ueVwiLFxuICAgIENsaWVudCA9IFwiY2xpZW50XCIsXG4gICAgQ2xvY2sgPSBcImNsb2NrXCIsXG4gICAgQ2xvY2tBcnJvdyA9IFwiY2xvY2tBcnJvd1wiLFxuICAgIENvZ1doZWVsUGx1cyA9IFwiY29nV2hlZWxQbHVzXCIsXG4gICAgQ29nV2hlZWxzID0gXCJjb2dXaGVlbHNcIixcbiAgICBDb2x1bW5PcHRpb25zID0gXCJjb2x1bW5fb3B0aW9uc1wiLFxuICAgIENvbXBhbnkgPSBcImNvbXBhbnlcIixcbiAgICBDb21wYW55RmxhdCA9IFwiY29tcGFueV9mbGF0XCIsXG4gICAgQ29uZmlndXJhYmxlID0gXCJjb25maWd1cmFibGVcIixcbiAgICBDb25zdWx0YW50ID0gXCJjb25zdWx0YW50XCIsXG4gICAgQ29weSA9IFwiY29weVwiLFxuICAgIENyb3NzaGFpcjEgPSBcImNyb3NzaGFpcl8xXCIsXG4gICAgQ3Jvc3NTa2lubnkgPSBcIkNyb3NzU2tpbm55XCIsXG4gICAgRGFzaGJvYXJkID0gXCJkYXNoYm9hcmRcIixcbiAgICBEZWxpdmVyeU1ldGhvZCA9IFwiZGVsaXZlcnlfbWV0aG9kXCIsXG4gICAgRGVsaXZlcnlTdGF0dXNVbmNoZWNrID0gXCJkZWxpdmVyeV9zdGF0dXNfdW5jaGVja1wiLFxuICAgIERlbGl2ZXJ5VHJ1Y2sgPSBcImRlbGl2ZXJ5X3RydWNrXCIsXG4gICAgRGV0YWlsUmVjb3JkID0gXCJkZXRhaWxfcmVjb3JkXCIsXG4gICAgRGV0YWlsVmlldyA9IFwiZGV0YWlsX3ZpZXdcIixcbiAgICBEaWN0aW9uYXJ5ID0gXCJkaWN0aW9uYXJ5XCIsXG4gICAgRG9jdW1lbnRzID0gXCJkb2N1bWVudHNcIixcbiAgICBEb2N1bWVudFdyZW5jaCA9IFwiZG9jdW1lbnRXcmVuY2hcIixcbiAgICBEb2xsYXIgPSBcImRvbGxhclwiLFxuICAgIERvd25sb2FkID0gXCJkb3dubG9hZFwiLFxuICAgIERyb3Bkb3duID0gXCJkcm9wZG93blwiLFxuICAgIERyb3B6b25lID0gXCJkcm9wem9uZVwiLFxuICAgIEVkaXRQZW5jaWwgPSBcImVkaXRfcGVuY2lsXCIsXG4gICAgRWRpdFBlbmNpbENpcmNsZSA9IFwiZWRpdF9wZW5jaWxfY2lyY2xlXCIsXG4gICAgRWRpdFBlbmNpbFJvdW5kID0gXCJlZGl0X3BlbmNpbF9yb3VuZFwiLFxuICAgIEVkaXRQZW5jaWxTaW1wbGUgPSBcImVkaXRfcGVuY2lsX3NpbXBsZVwiLFxuICAgIEVtYWlsID0gXCJlbWFpbFwiLFxuICAgIEVtYWlsUm91bmRPcGVuID0gXCJlbWFpbF9yb3VuZF9vcGVuXCIsXG4gICAgRW1wbG95ZWUgPSBcImVtcGxveWVlXCIsXG4gICAgRW1wbG95ZWVUd28gPSBcImVtcGxveWVlX3R3b1wiLFxuICAgIEVtcGxveWVyID0gXCJlbXBsb3llclwiLFxuICAgIEVtcGxveW1lbnQgPSBcImVtcGxveW1lbnRcIixcbiAgICBFbXBsb3ltZW50RW5kID0gXCJlbXBsb3ltZW50X2VuZFwiLFxuICAgIEVxdWFsID0gXCJlcXVhbFwiLFxuICAgIEV1cm8gPSBcImV1cm9cIixcbiAgICBFeGNsYW1hdGlvbiA9IFwiZXhjbGFtYXRpb25cIixcbiAgICBFeGNsYW1hdGlvblJvdW5kT3BlbiA9IFwiZXhjbGFtYXRpb25fcm91bmRfb3BlblwiLFxuICAgIEV5ZUNpcmNsZSA9IFwiZXllX2NpcmNsZVwiLFxuICAgIEV5ZUNpcmNsZUxhcmdlID0gXCJleWVfY2lyY2xlX2xhcmdlXCIsXG4gICAgRXllUm91bmRGaWxsZWQgPSBcImV5ZV9yb3VuZF9maWxsZWRcIixcbiAgICBGYWN0b3J5ID0gXCJmYWN0b3J5XCIsXG4gICAgRmFzdHRyYWNrID0gXCJmYXN0dHJhY2tcIixcbiAgICBGaWx0ZXIgPSBcImZpbHRlclwiLFxuICAgIEZpbmlzaCA9IFwiZmluaXNoXCIsXG4gICAgRml4ZWRPcHRpb25WYWx1ZVRyZWUgPSBcImZpeGVkX29wdGlvbl92YWx1ZV90cmVlXCIsXG4gICAgRml4ZWRUcmVlT3B0aW9uVmFsdWUgPSBcImZpeGVkX3RyZWVfb3B0aW9uX3ZhbHVlXCIsXG4gICAgRmxvcHB5RGlza1NvbGlkID0gXCJmbG9wcHlfZGlza19zb2xpZFwiLFxuICAgIEZvbGRlckFycm93ID0gXCJGb2xkZXJBcnJvd1wiLFxuICAgIEZvbGRlckFycm93SW4gPSBcImZvbGRlcl9hcnJvd19pblwiLFxuICAgIEZvcm11bGEgPSBcImZvcm11bGFcIixcbiAgICBGdWxsc2NyZWVuID0gXCJmdWxsc2NyZWVuXCIsXG4gICAgR2VhckRvdWJsZSA9IFwiZ2Vhcl9kb3VibGVcIixcbiAgICBHbG9iYWxTZWFyY2ggPSBcImdsb2JhbF9zZWFyY2hcIixcbiAgICBHbG9iZSA9IFwiZ2xvYmVcIixcbiAgICBHcmVhdGVyVGhhbiA9IFwiZ3JlYXRlcl90aGFuXCIsXG4gICAgR3JvdXBieSA9IFwiZ3JvdXBieVwiLFxuICAgIEhhbWJ1cmdlciA9IFwiaGFtYnVyZ2VyXCIsXG4gICAgSGFuZFBvaW50ZXIgPSBcImhhbmRfcG9pbnRlclwiLFxuICAgIEhiYXJjaGFydCA9IFwiaGJhcmNoYXJ0XCIsXG4gICAgSG9tZSA9IFwiSG9tZVwiLFxuICAgIEhvbWVDaXJjbGUgPSBcImhvbWVfY2lyY2xlXCIsXG4gICAgSG9tZU9wZW4gPSBcImhvbWVfb3BlblwiLFxuICAgIEhvbWVSb3VuZE9wZW4gPSBcImhvbWVfcm91bmRfb3BlblwiLFxuICAgIEhvdXJnbGFzcyA9IFwiaG91cmdsYXNzXCIsXG4gICAgSWNvbjNkID0gXCJpY29uXzNkXCIsXG4gICAgSWQgPSBcImlkXCIsXG4gICAgSW1hZ2UgPSBcImltYWdlXCIsXG4gICAgSW5jb21pbmdTdG9yYWdlID0gXCJpbmNvbWluZ19zdG9yYWdlXCIsXG4gICAgSW5mb3JtYXRpb24gPSBcImluZm9ybWF0aW9uXCIsXG4gICAgSW5mb3JtYXRpb25Sb3VuZE9wZW4gPSBcImluZm9ybWF0aW9uX3JvdW5kX29wZW5cIixcbiAgICBJbnB1dE11bHRpcGxlY2hvaWNlID0gXCJpbnB1dF9tdWx0aXBsZWNob2ljZVwiLFxuICAgIElucHV0VGV4dCA9IFwiaW5wdXRfdGV4dFwiLFxuICAgIElucHV0VGV4dGFyZWEgPSBcImlucHV0X3RleHRhcmVhXCIsXG4gICAgSW52ZW50b3J5ID0gXCJpbnZlbnRvcnlcIixcbiAgICBJbnZvaWNlID0gXCJpbnZvaWNlXCIsXG4gICAgSW9uZUxvZ28gPSBcImlvbmVfbG9nb1wiLFxuICAgIElvbmVMb2dvRmF0ID0gXCJpb25lX2xvZ29fZmF0XCIsXG4gICAgSW9uZVN0YXR1c05leHQgPSBcImlvbmVfc3RhdHVzX25leHRcIixcbiAgICBJb25lV29ya2Zsb3cgPSBcImlvbmVfd29ya2Zsb3dcIixcbiAgICBLZXlib2FyZCA9IFwia2V5Ym9hcmRcIixcbiAgICBLZXljaGFpbiA9IFwia2V5Y2hhaW5cIixcbiAgICBMYWJlbCA9IFwibGFiZWxcIixcbiAgICBMYWJlbFJvdW5kT3BlbiA9IFwibGFiZWxfcm91bmRfb3BlblwiLFxuICAgIExhbmRtYXJrRmxhZyA9IFwibGFuZG1hcmtfZmxhZ1wiLFxuICAgIExpYnJhcnkgPSBcImxpYnJhcnlcIixcbiAgICBMaW5lY2hhcnQgPSBcImxpbmVjaGFydFwiLFxuICAgIExpbmtlZFByb2R1Y3RzID0gXCJsaW5rZWRfcHJvZHVjdHNcIixcbiAgICBMaW5rQ2lyY2xlID0gXCJsaW5rX2NpcmNsZVwiLFxuICAgIExpc3RWaWV3ID0gXCJsaXN0X3ZpZXdcIixcbiAgICBMb2NhdGlvbiA9IFwibG9jYXRpb25cIixcbiAgICBMb2NrID0gXCJsb2NrXCIsXG4gICAgTG9ja1JvdW5kT3BlbiA9IFwibG9ja19yb3VuZF9vcGVuXCIsXG4gICAgTG9nbyA9IFwibG9nb1wiLFxuICAgIExvZ291dCA9IFwibG9nb3V0XCIsXG4gICAgTWFnaWNXYW5kID0gXCJtYWdpY193YW5kXCIsXG4gICAgTWFnbmlmaWVyID0gXCJtYWduaWZpZXJcIixcbiAgICBNYW5hZ2VyID0gXCJtYW5hZ2VyXCIsXG4gICAgTWFzayA9IFwibWFza1wiLFxuICAgIE1hc3RlckRldGFpbCA9IFwibWFzdGVyX2RldGFpbFwiLFxuICAgIE1hdGVyaWFsQ2lyY2xlTGFyZ2UgPSBcIm1hdGVyaWFsX2NpcmNsZV9sYXJnZVwiLFxuICAgIE1lZGFsQnJvbnplID0gXCJtZWRhbF9icm9uemVcIixcbiAgICBNZWRhbEdvbGQgPSBcIm1lZGFsX2dvbGRcIixcbiAgICBNZWRhbFNpbHZlciA9IFwibWVkYWxfc2lsdmVyXCIsXG4gICAgTWVkaWNhbE9mZmljZXIgPSBcIm1lZGljYWxfb2ZmaWNlclwiLFxuICAgIE1pY3JvcGhvbmUgPSBcIm1pY3JvcGhvbmVcIixcbiAgICBNaW51c1JvdW5kT3BlbiA9IFwibWludXNfcm91bmRfb3BlblwiLFxuICAgIE1pbnVzU2ltcGxlID0gXCJtaW51c19zaW1wbGVcIixcbiAgICBNb2JpbGUgPSBcIm1vYmlsZVwiLFxuICAgIE11bHRpU2VsZWN0Q2hlY2sgPSBcIm11bHRpX3NlbGVjdF9jaGVja1wiLFxuICAgIE5ld1Rhc2sgPSBcIm5ld190YXNrXCIsXG4gICAgTm90ZSA9IFwibm90ZVwiLFxuICAgIE5vdGVCb3JkZXJlZCA9IFwibm90ZV9ib3JkZXJlZFwiLFxuICAgIE5vdGlmaWNhdGlvbiA9IFwibm90aWZpY2F0aW9uXCIsXG4gICAgTm90RXF1YWwgPSBcIm5vdF9lcXVhbFwiLFxuICAgIE9wdGlvbiA9IFwib3B0aW9uXCIsXG4gICAgT3B0aW9uc2V0ID0gXCJvcHRpb25zZXRcIixcbiAgICBPcmRlciA9IFwib3JkZXJcIixcbiAgICBPcmRlcnBpY2tpbmcgPSBcIm9yZGVycGlja2luZ1wiLFxuICAgIE91dGdvaW5nU3RvcmFnZSA9IFwib3V0Z29pbmdfc3RvcmFnZVwiLFxuICAgIE92ZXJCb29raW5nID0gXCJvdmVyX2Jvb2tpbmdcIixcbiAgICBQYXVzZUNpcmNsZSA9IFwicGF1c2VfY2lyY2xlXCIsXG4gICAgUGVuY2lsUm91bmRPcGVuID0gXCJwZW5jaWxfcm91bmRfb3BlblwiLFxuICAgIFBlblRvU3F1YXJlU29saWQgPSBcInBlbl90b19zcXVhcmVfc29saWRcIixcbiAgICBQaG9uZSA9IFwicGhvbmVcIixcbiAgICBQaG9uZVJvdW5kT3BlbiA9IFwicGhvbmVfcm91bmRfb3BlblwiLFxuICAgIFBpZWNoYXJ0ID0gXCJwaWVjaGFydFwiLFxuICAgIFBpbiA9IFwicGluXCIsXG4gICAgUGluUm91bmRPcGVuID0gXCJwaW5fcm91bmRfb3BlblwiLFxuICAgIFBsYXlDaXJjbGUgPSBcInBsYXlfY2lyY2xlXCIsXG4gICAgUGx1c1JvdW5kID0gXCJwbHVzX3JvdW5kXCIsXG4gICAgUGx1c1JvdW5kT3BlbiA9IFwicGx1c19yb3VuZF9vcGVuXCIsXG4gICAgUGx1c1NpbXBsZSA9IFwicGx1c19zaW1wbGVcIixcbiAgICBQbHVzU2tpbm55ID0gXCJwbHVzX3NraW5ueVwiLFxuICAgIFBsdXNTb2xpZCA9IFwicGx1c19zb2xpZFwiLFxuICAgIFBsdXNTdGFycyA9IFwicGx1c19zdGFyc1wiLFxuICAgIFBvaW50ZXIgPSBcInBvaW50ZXJcIixcbiAgICBQb2ludGVyM2QgPSBcInBvaW50ZXJfM2RcIixcbiAgICBQb2ludGVyRmlsbGVkID0gXCJwb2ludGVyX2ZpbGxlZFwiLFxuICAgIFBPUyA9IFwiUE9TXCIsXG4gICAgUG9zaXRpb25pbmcgPSBcInBvc2l0aW9uaW5nXCIsXG4gICAgUHJlZ25hbmN5ID0gXCJwcmVnbmFuY3lcIixcbiAgICBQcmVzZXQgPSBcInByZXNldFwiLFxuICAgIFByaW50ID0gXCJwcmludFwiLFxuICAgIFByb2R1Y3RQcm9wZXJ0aWVzID0gXCJwcm9kdWN0X3Byb3BlcnRpZXNcIixcbiAgICBQdXJjaGFzZSA9IFwicHVyY2hhc2VcIixcbiAgICBRcmNvZGUgPSBcInFyY29kZVwiLFxuICAgIFF1ZXN0aW9uID0gXCJxdWVzdGlvblwiLFxuICAgIFJhZGlvVW5jaGVjayA9IFwicmFkaW9fdW5jaGVja1wiLFxuICAgIFJhbmdlID0gXCJyYW5nZVwiLFxuICAgIFJhbmdlU2VsZWN0ID0gXCJyYW5nZV9zZWxlY3RcIixcbiAgICBSZWN0YW5nbGVzID0gXCJyZWN0YW5nbGVzXCIsXG4gICAgUmVmcmVzaCA9IFwicmVmcmVzaFwiLFxuICAgIFJlZ3VsYXJCb3hlc1BhY2tpbmdDaXJjbGVDaGVjayA9IFwicmVndWxhcl9ib3hlc19wYWNraW5nX2NpcmNsZV9jaGVja1wiLFxuICAgIFJlbGF0aW9ucyA9IFwicmVsYXRpb25zXCIsXG4gICAgUmVtYXJrID0gXCJyZW1hcmtcIixcbiAgICBSZW1hcmtSb3VuZE9wZW4gPSBcInJlbWFya19yb3VuZF9vcGVuXCIsXG4gICAgUmVwb3J0SW5UeXBlID0gXCJyZXBvcnRfaW5fdHlwZVwiLFxuICAgIFJlc2l6ZSA9IFwicmVzaXplXCIsXG4gICAgUmVzaXplRG93biA9IFwicmVzaXplX2Rvd25cIixcbiAgICBSZXNpemVVcCA9IFwicmVzaXplX3VwXCIsXG4gICAgUmV0dXJucyA9IFwicmV0dXJuc1wiLFxuICAgIFJldHVybkdvb2RzID0gXCJyZXR1cm5fZ29vZHNcIixcbiAgICBSb3RhdGVMZWZ0U29saWQgPSBcInJvdGF0ZV9sZWZ0X3NvbGlkXCIsXG4gICAgU2F2ZURpc2sgPSBcInNhdmVfZGlza1wiLFxuICAgIFNhdmVTa2lubnkgPSBcInNhdmVfc2tpbm55XCIsXG4gICAgU2NhbGVCYWxhbmNlZCA9IFwic2NhbGVfYmFsYW5jZWRcIixcbiAgICBTY2FubmVyID0gXCJzY2FubmVyXCIsXG4gICAgU2VhcmNoUm91bmRPcGVuID0gXCJzZWFyY2hfcm91bmRfb3BlblwiLFxuICAgIFNlY3Rpb25zID0gXCJzZWN0aW9uc1wiLFxuICAgIFNlbGVjdEFsbFJvdW5kID0gXCJzZWxlY3RfYWxsX3JvdW5kXCIsXG4gICAgU2VydmljZXMgPSBcInNlcnZpY2VzXCIsXG4gICAgU2V0dGluZ3MgPSBcInNldHRpbmdzXCIsXG4gICAgU2hvcCA9IFwiU2hvcFwiLFxuICAgIFNob3BwaW5nQ2FydCA9IFwic2hvcHBpbmdfY2FydFwiLFxuICAgIFNob3BwaW5nQ2FydE5yID0gXCJzaG9wcGluZ19jYXJ0X25yXCIsXG4gICAgU2hvcnRjdXQgPSBcInNob3J0Y3V0XCIsXG4gICAgU2luZ2xlUGVyc29uID0gXCJTaW5nbGVQZXJzb25cIixcbiAgICBTa2lsbHMgPSBcInNraWxsc1wiLFxuICAgIFNsaWRlclBhbmVsID0gXCJzbGlkZXJfcGFuZWxcIixcbiAgICBTbGlkZUluID0gXCJzbGlkZV9pblwiLFxuICAgIFNtYWxsZXJUaGFuID0gXCJzbWFsbGVyX3RoYW5cIixcbiAgICBTbWFsbFRpbGVzID0gXCJzbWFsbF90aWxlc1wiLFxuICAgIFNvcnRBc2MgPSBcInNvcnRfYXNjXCIsXG4gICAgU29ydERlc2MgPSBcInNvcnRfZGVzY1wiLFxuICAgIFN0YXIgPSBcIlN0YXJcIixcbiAgICBTdGFyUm91bmRPcGVuID0gXCJzdGFyX3JvdW5kX29wZW5cIixcbiAgICBTdGF0dXNBY3RpdmUgPSBcInN0YXR1c19hY3RpdmVcIixcbiAgICBTdGF0dXNBZG9wdGlvbiA9IFwic3RhdHVzX2Fkb3B0aW9uXCIsXG4gICAgU3RhdHVzRm9zdGVyY2FyZSA9IFwic3RhdHVzX2Zvc3RlcmNhcmVcIixcbiAgICBTdGF0dXNJbGwgPSBcInN0YXR1c19pbGxcIixcbiAgICBTdGF0dXNMZWF2ZSA9IFwic3RhdHVzX2xlYXZlXCIsXG4gICAgU3RhdHVzUHJlZ25hbmN5ID0gXCJzdGF0dXNfcHJlZ25hbmN5XCIsXG4gICAgU3RvY2sgPSBcInN0b2NrXCIsXG4gICAgU3RvY2tNYW5hZ2VtZW50ID0gXCJzdG9ja19tYW5hZ2VtZW50XCIsXG4gICAgU3RvcmFnZSA9IFwic3RvcmFnZVwiLFxuICAgIFN1cGVydmlzb3IgPSBcInN1cGVydmlzb3JcIixcbiAgICBTdXBwbGllciA9IFwic3VwcGxpZXJcIixcbiAgICBTdXJnZXJ5ID0gXCJzdXJnZXJ5XCIsXG4gICAgVGFibGVjaGFydCA9IFwidGFibGVjaGFydFwiLFxuICAgIFRhZyA9IFwidGFnXCIsXG4gICAgVGFsa1Rvb011Y2ggPSBcInRhbGtfdG9vX211Y2hcIixcbiAgICBUYXJnZXQgPSBcInRhcmdldFwiLFxuICAgIFRhc2sgPSBcInRhc2tcIixcbiAgICBUaGlja0xpbmVzID0gXCJ0aGlja19saW5lc1wiLFxuICAgIFRoaW5MaW5lcyA9IFwidGhpbl9saW5lc1wiLFxuICAgIFRocmVlU2l4dHlWaWV3ID0gXCJ0aHJlZV9zaXh0eV92aWV3XCIsXG4gICAgVGh1bWJCcm9uemUgPSBcInRodW1iX2Jyb256ZVwiLFxuICAgIFRodW1iR29sZCA9IFwidGh1bWJfZ29sZFwiLFxuICAgIFRodW1iU2lsdmVyID0gXCJ0aHVtYl9zaWx2ZXJcIixcbiAgICBUaW1lbGluZSA9IFwidGltZWxpbmVcIixcbiAgICBUcmFuc2FjdGlvbnMgPSBcInRyYW5zYWN0aW9uc1wiLFxuICAgIFRyYW5zYWN0aW9uRGV0YWlsID0gXCJ0cmFuc2FjdGlvbl9kZXRhaWxcIixcbiAgICBUcmFzaEJpbiA9IFwiVHJhc2hCaW5cIixcbiAgICBUcmFzaENhblNvbGlkID0gXCJ0cmFzaF9jYW5fc29saWRcIixcbiAgICBUcmlhbmdsZURvd24gPSBcInRyaWFuZ2xlX2Rvd25cIixcbiAgICBUcmlhbmdsZUxhcmdlID0gXCJ0cmlhbmdsZV9sYXJnZVwiLFxuICAgIFRyaWFuZ2xlTGVmdCA9IFwidHJpYW5nbGVfbGVmdFwiLFxuICAgIFRyaWFuZ2xlUmlnaHQgPSBcInRyaWFuZ2xlX3JpZ2h0XCIsXG4gICAgVHJpYW5nbGVVcCA9IFwidHJpYW5nbGVfdXBcIixcbiAgICBUcnVjayA9IFwidHJ1Y2tcIixcbiAgICBUcnVja0NhbGVuZGFyID0gXCJ0cnVja19jYWxlbmRhclwiLFxuICAgIFVuZG9Sb3VuZE9wZW4gPSBcInVuZG9fcm91bmRfb3BlblwiLFxuICAgIFVzZXIgPSBcInVzZXJcIixcbiAgICBWYXJpYW50cyA9IFwidmFyaWFudHNcIixcbiAgICBWYmFyY2hhcnQgPSBcInZiYXJjaGFydFwiLFxuICAgIFZpZXcgPSBcInZpZXdcIixcbiAgICBXYXJlaG91c2UgPSBcIndhcmVob3VzZVwiLFxuICAgIFdhdGVybWFyayA9IFwid2F0ZXJtYXJrXCIsXG4gICAgV2Vic2l0ZSA9IFwid2Vic2l0ZVwiLFxuICAgIFdpemFyZCA9IFwid2l6YXJkXCIsXG4gICAgV21zID0gXCJ3bXNcIixcbiAgICBXb3JrSW5Qcm9ncmVzcyA9IFwid29ya19pbl9wcm9ncmVzc1wiLFxuICAgIFdvcmtJblByb2dyZXNzUm91bmRPcGVuID0gXCJ3b3JrX2luX3Byb2dyZXNzX3JvdW5kX29wZW5cIixcbiAgICBXcmVuY2ggPSBcIndyZW5jaFwiLFxuICAgIFhBeGlzID0gXCJ4X2F4aXNcIixcbiAgICBZQXhpcyA9IFwieV9heGlzXCJcbn1cbiJdfQ==
|
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
export var FilterItemMode;
|
|
2
2
|
(function (FilterItemMode) {
|
|
3
3
|
//This mode makes the Filter display a multi select list
|
|
4
|
-
// Input will be passed along directly as a string with the following syntax: "
|
|
4
|
+
// Input will be passed along directly as a string with the following syntax: "?='choice 1', ?='choice2'"
|
|
5
5
|
FilterItemMode["Filterlist"] = "filterlist";
|
|
6
6
|
//This mode makes the Filter display a single select list
|
|
7
7
|
// Input will be passed along directly as a simple string.
|
|
8
8
|
FilterItemMode["SingleSelectList"] = "singleSelectList";
|
|
9
9
|
//This mode makes the Filter display a multi select list
|
|
10
|
-
// Input will be passed along directly as a simple
|
|
10
|
+
// Input will be passed along directly as a simple collection of strings.
|
|
11
11
|
FilterItemMode["SelectListWithStringCollectionOutput"] = "selectListWithStringCollectionOutput";
|
|
12
12
|
//This mode makes the Filter display a multi select list
|
|
13
13
|
// Available choices will need to have their identifying value be a number. The summation of all these numbers will be passed along.
|
|
@@ -40,4 +40,4 @@ export var FilterItemMode;
|
|
|
40
40
|
// It's value will be passed along as either a 1 or and 0.
|
|
41
41
|
FilterItemMode["CheckboxToBinary"] = "checkboxToBinary";
|
|
42
42
|
})(FilterItemMode || (FilterItemMode = {}));
|
|
43
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
43
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsdGVySXRlbS1tb2RlLmVudW0uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlY29tcG9uZW50cy9zcmMvbGliL2NvcmUvZW51bS9maWx0ZXJJdGVtLW1vZGUuZW51bS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxNQUFNLENBQU4sSUFBWSxjQXdEWDtBQXhERCxXQUFZLGNBQWM7SUFFeEIsd0RBQXdEO0lBQ3hELHlHQUF5RztJQUN6RywyQ0FBeUIsQ0FBQTtJQUV6Qix5REFBeUQ7SUFDekQsMERBQTBEO0lBQzFELHVEQUFxQyxDQUFBO0lBRXJDLHdEQUF3RDtJQUN4RCx5RUFBeUU7SUFDekUsK0ZBQTZFLENBQUE7SUFFN0Usd0RBQXdEO0lBQ3hELG9JQUFvSTtJQUNwSSwyRUFBeUQsQ0FBQTtJQUV6RCw2RkFBNkY7SUFDN0YsdUNBQXVDO0lBQ3ZDLG1DQUFpQixDQUFBO0lBRWpCLDZGQUE2RjtJQUM3RixvRUFBb0U7SUFDcEUsbURBQWlDLENBQUE7SUFFakMsd0RBQXdEO0lBQ3hELDRFQUE0RTtJQUM1RSx5Q0FBdUIsQ0FBQTtJQUV2Qix3REFBd0Q7SUFDeEQsOERBQThEO0lBQzlELHlDQUF1QixDQUFBO0lBRXZCLHVEQUF1RDtJQUN2RCxzSEFBc0g7SUFDdEgsbURBQWlDLENBQUE7SUFFakMsdURBQXVEO0lBQ3ZELHlEQUF5RDtJQUN6RCx1Q0FBcUIsQ0FBQTtJQUVyQix1REFBdUQ7SUFDdkQsOERBQThEO0lBQzlELCtEQUE2QyxDQUFBO0lBRTdDLHVEQUF1RDtJQUN2RCxzRUFBc0U7SUFDdEUsbURBQWlDLENBQUE7SUFFakMsdURBQXVEO0lBQ3ZELDBEQUEwRDtJQUMxRCx1REFBcUMsQ0FBQTtBQUl2QyxDQUFDLEVBeERXLGNBQWMsS0FBZCxjQUFjLFFBd0R6QiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBlbnVtIEZpbHRlckl0ZW1Nb2RlIHtcclxuXHJcbiAgLy9UaGlzIG1vZGUgbWFrZXMgdGhlIEZpbHRlciBkaXNwbGF5IGEgbXVsdGkgc2VsZWN0IGxpc3RcclxuICAvLyBJbnB1dCB3aWxsIGJlIHBhc3NlZCBhbG9uZyBkaXJlY3RseSBhcyBhIHN0cmluZyB3aXRoIHRoZSBmb2xsb3dpbmcgc3ludGF4OiBcIj89J2Nob2ljZSAxJywgPz0nY2hvaWNlMidcIlxyXG4gIEZpbHRlcmxpc3QgPSAnZmlsdGVybGlzdCcsXHJcblxyXG4gIC8vVGhpcyBtb2RlIG1ha2VzIHRoZSBGaWx0ZXIgZGlzcGxheSBhIHNpbmdsZSBzZWxlY3QgbGlzdFxyXG4gIC8vIElucHV0IHdpbGwgYmUgcGFzc2VkIGFsb25nIGRpcmVjdGx5IGFzIGEgc2ltcGxlIHN0cmluZy5cclxuICBTaW5nbGVTZWxlY3RMaXN0ID0gJ3NpbmdsZVNlbGVjdExpc3QnLFxyXG5cclxuICAvL1RoaXMgbW9kZSBtYWtlcyB0aGUgRmlsdGVyIGRpc3BsYXkgYSBtdWx0aSBzZWxlY3QgbGlzdFxyXG4gIC8vIElucHV0IHdpbGwgYmUgcGFzc2VkIGFsb25nIGRpcmVjdGx5IGFzIGEgc2ltcGxlIGNvbGxlY3Rpb24gb2Ygc3RyaW5ncy5cclxuICBTZWxlY3RMaXN0V2l0aFN0cmluZ0NvbGxlY3Rpb25PdXRwdXQgPSAnc2VsZWN0TGlzdFdpdGhTdHJpbmdDb2xsZWN0aW9uT3V0cHV0JyxcclxuXHJcbiAgLy9UaGlzIG1vZGUgbWFrZXMgdGhlIEZpbHRlciBkaXNwbGF5IGEgbXVsdGkgc2VsZWN0IGxpc3RcclxuICAvLyBBdmFpbGFibGUgY2hvaWNlcyB3aWxsIG5lZWQgdG8gaGF2ZSB0aGVpciBpZGVudGlmeWluZyB2YWx1ZSBiZSBhIG51bWJlci4gVGhlIHN1bW1hdGlvbiBvZiBhbGwgdGhlc2UgbnVtYmVycyB3aWxsIGJlIHBhc3NlZCBhbG9uZy5cclxuICBTZWxlY3RMaXN0V2l0aE51bWJlck91dHB1dCA9ICdzZWxlY3RMaXN0V2l0aE51bWJlck91dHB1dCcsXHJcblxyXG4gIC8vVGhpcyBtb2RlIG1ha2VzIHRoZSBGaWx0ZXIgZGlzcGxheSBhIG1pbiBhbmQgbWF4IGZpZWxkLiBUaGlzIHNob3VsZCBldmVudHVhbGx5IGJlIGEgc2xpZGVyLlxyXG4gIC8vIGlucHV0IGlzIHBhc3NlZCBhbG9uZyBhcyBcIm1pbiAtIG1heFwiXHJcbiAgU2xpZGVyID0gJ3NsaWRlcicsXHJcblxyXG4gIC8vVGhpcyBtb2RlIG1ha2VzIHRoZSBGaWx0ZXIgZGlzcGxheSBhIG1pbiBhbmQgbWF4IGZpZWxkLiBUaGlzIHNob3VsZCBldmVudHVhbGx5IGJlIGEgc2xpZGVyLlxyXG4gIC8vIGlucHV0IGlzIHBhc3NlZCBhbG9uZyBhcyBcIm1pbiAtIG1heFwiIFRoaXMgdmVyc2lvbiBjYW4gYmUgZW1wdGllZC5cclxuICBOdWxsYWJsZVNsaWRlciA9ICdudWxsYWJsZVNsaWRlcicsXHJcblxyXG4gIC8vVGhpcyBtb2RlIG1ha2VzIHRoZSBGaWx0ZXIgZGlzcGxheSBhIHNpbXBsZSB0ZXh0ZmllbGQuXHJcbiAgLy8gVGhlIHZhbHVlIHR5cGVkIGludG8gdGhlIGZpZWxkIHdpbGwgYmUgcGFzc2VkIGFsb25nIGRpcmVjdGx5IGFzIGEgc3RyaW5nLlxyXG4gIFRleHRGaWVsZCA9ICd0ZXh0RmllbGQnLFxyXG5cclxuICAvL1RoaXMgbW9kZSBtYWtlcyB0aGUgRmlsdGVyIGRpc3BsYXkgYSBzaW1wbGUgZGF0ZUZpZWxkLlxyXG4gIC8vIEZpZWxkIGlucHV0IHdpbGwgYmUgcGFzc2VkIGFsb25nIGRpcmVjdGx5IGFzIGEgZGF0ZSBvYmplY3QuXHJcbiAgRGF0ZUZpZWxkID0gJ2RhdGVGaWVsZCcsXHJcblxyXG4gIC8vVGhpcyBtb2RlIG1ha2VzIHRoZSBGaWx0ZXIgZGlzcGxheSBhIGRhdGVSYW5nZSBmaWVsZC5cclxuICAvLyBGaWVsZCBpbnB1dCB3aWxsIGJlIHBhc3NlZCBhbG9uZyBkaXJlY3RseSBhcyBhIHN0cmluZyB3aXRoIHRoZSBmb2xsb3dpbmcgc3ludGF4OiBcIj8+PScwMS0wOC0yMDIyJyYgPzw9JzMxLTA4LTIwMjInXCJcclxuICBEYXRlUmFuZ2VGaWVsZCA9ICdkYXRlUmFuZ2VGaWVsZCcsXHJcblxyXG4gIC8vVGhpcyBtb2RlIG1ha2VzIHRoZSBGaWx0ZXIgZGlzcGxheSBhIHNpbXBsZSBjaGVja0JveC5cclxuICAvLyBJdCdzIHZhbHVlIHdpbGwgYmUgcGFzc2VkIGFsb25nIGRpcmVjdGx5IGFzIGEgYm9vbGVhbi5cclxuICBDaGVja2JveCA9ICdjaGVja2JveCcsXHJcblxyXG4gIC8vVGhpcyBtb2RlIG1ha2VzIHRoZSBGaWx0ZXIgZGlzcGxheSBhIHNpbXBsZSBjaGVja0JveC5cclxuICAvLyBJdCdzIHZhbHVlIHdpbGwgYmUgcGFzc2VkIGFsb25nIGFzIGVpdGhlciBhICdUJyBvciBhbmQgJ0YnLlxyXG4gIENoZWNrYm94VG9TaW1wbGVUZXh0ID0gJ2NoZWNrYm94VG9TaW1wbGVUZXh0JyxcclxuXHJcbiAgLy9UaGlzIG1vZGUgbWFrZXMgdGhlIEZpbHRlciBkaXNwbGF5IGEgc2ltcGxlIGNoZWNrQm94LlxyXG4gIC8vIEl0J3MgdmFsdWUgd2lsbCBiZSBwYXNzZWQgYWxvbmcgYXMgZWl0aGVyIGEgXCI/PSdUJ1wiIG9yIGFuZCBcIj89J0YnXCIuXHJcbiAgQ2hlY2tib3hUb1RleHQgPSAnY2hlY2tib3hUb1RleHQnLFxyXG5cclxuICAvL1RoaXMgbW9kZSBtYWtlcyB0aGUgRmlsdGVyIGRpc3BsYXkgYSBzaW1wbGUgY2hlY2tCb3guXHJcbiAgLy8gSXQncyB2YWx1ZSB3aWxsIGJlIHBhc3NlZCBhbG9uZyBhcyBlaXRoZXIgYSAxIG9yIGFuZCAwLlxyXG4gIENoZWNrYm94VG9CaW5hcnkgPSAnY2hlY2tib3hUb0JpbmFyeScsXHJcblxyXG5cclxuXHJcbn1cclxuIl19
|
|
@@ -5184,13 +5184,13 @@ IconCollapseHandleModule.decorators = [
|
|
|
5184
5184
|
var FilterItemMode;
|
|
5185
5185
|
(function (FilterItemMode) {
|
|
5186
5186
|
//This mode makes the Filter display a multi select list
|
|
5187
|
-
// Input will be passed along directly as a string with the following syntax: "
|
|
5187
|
+
// Input will be passed along directly as a string with the following syntax: "?='choice 1', ?='choice2'"
|
|
5188
5188
|
FilterItemMode["Filterlist"] = "filterlist";
|
|
5189
5189
|
//This mode makes the Filter display a single select list
|
|
5190
5190
|
// Input will be passed along directly as a simple string.
|
|
5191
5191
|
FilterItemMode["SingleSelectList"] = "singleSelectList";
|
|
5192
5192
|
//This mode makes the Filter display a multi select list
|
|
5193
|
-
// Input will be passed along directly as a simple
|
|
5193
|
+
// Input will be passed along directly as a simple collection of strings.
|
|
5194
5194
|
FilterItemMode["SelectListWithStringCollectionOutput"] = "selectListWithStringCollectionOutput";
|
|
5195
5195
|
//This mode makes the Filter display a multi select list
|
|
5196
5196
|
// Available choices will need to have their identifying value be a number. The summation of all these numbers will be passed along.
|
|
@@ -7467,6 +7467,7 @@ InputNumberPickerComponent.decorators = [
|
|
|
7467
7467
|
[readonly]="readonly"
|
|
7468
7468
|
[disabled]="disabled"
|
|
7469
7469
|
[required]="required"
|
|
7470
|
+
[placeholder]="label"
|
|
7470
7471
|
(ngModelChange)="handleChangeModel($event)"
|
|
7471
7472
|
(keydown)="handleInputKeyDown($event)"
|
|
7472
7473
|
(blur)="handleBlur()"/>
|
|
@@ -13687,10 +13688,10 @@ ColorSequenceService.decorators = [
|
|
|
13687
13688
|
];
|
|
13688
13689
|
|
|
13689
13690
|
class HourSchedulingComponent {
|
|
13690
|
-
constructor(cdRef, datePipe) {
|
|
13691
|
+
constructor(cdRef, datePipe, zone) {
|
|
13691
13692
|
this.cdRef = cdRef;
|
|
13692
13693
|
this.datePipe = datePipe;
|
|
13693
|
-
this.
|
|
13694
|
+
this.zone = zone;
|
|
13694
13695
|
this.hourLabels = [];
|
|
13695
13696
|
this.scheduledObjects = {};
|
|
13696
13697
|
this.activeHour = null;
|
|
@@ -13699,14 +13700,15 @@ class HourSchedulingComponent {
|
|
|
13699
13700
|
this.customTemplateUsed = false;
|
|
13700
13701
|
this.timeChangeEvent = new EventEmitter();
|
|
13701
13702
|
this.newObjectPlanEvent = new EventEmitter();
|
|
13702
|
-
|
|
13703
|
+
this.showClass = true;
|
|
13704
|
+
document.addEventListener('click', () => this.onDocumentClick);
|
|
13703
13705
|
}
|
|
13704
13706
|
ngOnInit() {
|
|
13705
13707
|
this.generateTimeBlocks();
|
|
13706
13708
|
this.generateScheduledObjects();
|
|
13707
13709
|
}
|
|
13708
13710
|
ngOnDestroy() {
|
|
13709
|
-
document.removeEventListener('click', this.onDocumentClick
|
|
13711
|
+
document.removeEventListener('click', () => this.onDocumentClick);
|
|
13710
13712
|
}
|
|
13711
13713
|
generateTimeBlocks() {
|
|
13712
13714
|
let startUnix = !this.childProp ? this.dateToUnixEpoch(new Date(this.schedule[this.startTimeProp])) : this.dateToUnixEpoch(new Date(this.schedule[this.childProp][this.startTimeProp]));
|
|
@@ -13751,12 +13753,21 @@ class HourSchedulingComponent {
|
|
|
13751
13753
|
}
|
|
13752
13754
|
onDragOver(event) {
|
|
13753
13755
|
event.preventDefault();
|
|
13754
|
-
|
|
13755
|
-
|
|
13756
|
+
event.stopPropagation();
|
|
13757
|
+
this.zone.runOutsideAngular(() => {
|
|
13758
|
+
const currentTarget = event.currentTarget;
|
|
13759
|
+
if (!currentTarget.classList.contains('drag-over')) {
|
|
13760
|
+
currentTarget.classList.add('drag-over');
|
|
13761
|
+
}
|
|
13762
|
+
});
|
|
13756
13763
|
}
|
|
13757
13764
|
onDragLeave(event) {
|
|
13758
|
-
|
|
13759
|
-
|
|
13765
|
+
event.preventDefault();
|
|
13766
|
+
event.stopPropagation();
|
|
13767
|
+
this.zone.runOutsideAngular(() => {
|
|
13768
|
+
const currentTarget = event.currentTarget;
|
|
13769
|
+
currentTarget.classList.remove('drag-over');
|
|
13770
|
+
});
|
|
13760
13771
|
}
|
|
13761
13772
|
onDrop(event, hour) {
|
|
13762
13773
|
event.preventDefault();
|
|
@@ -13927,12 +13938,14 @@ HourSchedulingComponent.decorators = [
|
|
|
13927
13938
|
</div>
|
|
13928
13939
|
</div>
|
|
13929
13940
|
`,
|
|
13941
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
13930
13942
|
encapsulation: ViewEncapsulation.None
|
|
13931
13943
|
},] }
|
|
13932
13944
|
];
|
|
13933
13945
|
HourSchedulingComponent.ctorParameters = () => [
|
|
13934
13946
|
{ type: ChangeDetectorRef },
|
|
13935
|
-
{ type: DatePipe }
|
|
13947
|
+
{ type: DatePipe },
|
|
13948
|
+
{ type: NgZone }
|
|
13936
13949
|
];
|
|
13937
13950
|
HourSchedulingComponent.propDecorators = {
|
|
13938
13951
|
schedule: [{ type: Input }],
|
|
@@ -13945,7 +13958,7 @@ HourSchedulingComponent.propDecorators = {
|
|
|
13945
13958
|
idProp: [{ type: Input }],
|
|
13946
13959
|
timeChangeEvent: [{ type: Output }],
|
|
13947
13960
|
newObjectPlanEvent: [{ type: Output }],
|
|
13948
|
-
|
|
13961
|
+
showClass: [{ type: HostBinding, args: ['class.co-hour-scheduling',] }]
|
|
13949
13962
|
};
|
|
13950
13963
|
|
|
13951
13964
|
class HourSchedulingTestObjectComponent {
|