monkey-style-guide 2.0.103 → 2.0.107
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/README.md +88 -4
- package/assets/scss/partials/components/_date-range-picker.scss +24 -0
- package/assets/scss/partials/components/_input-phone.scss +9 -0
- package/bundles/monkey-style-guide.umd.js +10 -5
- package/bundles/monkey-style-guide.umd.js.map +1 -1
- package/esm2015/lib/components/date-range-picker/date-range-picker.component.js +24 -3
- package/esm2015/lib/components/input/input.component.js +2 -2
- package/fesm2015/monkey-style-guide.js +24 -3
- package/fesm2015/monkey-style-guide.js.map +1 -1
- package/lib/components/date-range-picker/date-range-picker.component.d.ts +3 -1
- package/monkey-style-guide-2.0.107.tgz +0 -0
- package/package.json +1 -1
- package/monkey-style-guide-2.0.103.tgz +0 -0
|
@@ -17,6 +17,7 @@ export class MonkeyDateRangePickerComponent {
|
|
|
17
17
|
constructor(fb, cdr) {
|
|
18
18
|
this.fb = fb;
|
|
19
19
|
this.cdr = cdr;
|
|
20
|
+
this.helperMessage = '';
|
|
20
21
|
this.onChange = new EventEmitter();
|
|
21
22
|
this.today = moment().format('YYYY-MM-DD');
|
|
22
23
|
this.onModelChange = (value) => { };
|
|
@@ -201,7 +202,7 @@ export class MonkeyDateRangePickerComponent {
|
|
|
201
202
|
}
|
|
202
203
|
}
|
|
203
204
|
MonkeyDateRangePickerComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.14", ngImport: i0, type: MonkeyDateRangePickerComponent, deps: [{ token: i1.FormBuilder }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
|
|
204
|
-
MonkeyDateRangePickerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.14", type: MonkeyDateRangePickerComponent, selector: "monkey-date-range-picker", inputs: { i18n: "i18n", infoMessage: "infoMessage", errorMessage: "errorMessage", value: "value" }, outputs: { onChange: "onChange" }, providers: [
|
|
205
|
+
MonkeyDateRangePickerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.14", type: MonkeyDateRangePickerComponent, selector: "monkey-date-range-picker", inputs: { label: "label", helperMessage: "helperMessage", i18n: "i18n", infoMessage: "infoMessage", errorMessage: "errorMessage", value: "value" }, outputs: { onChange: "onChange" }, providers: [
|
|
205
206
|
{
|
|
206
207
|
provide: NG_VALUE_ACCESSOR,
|
|
207
208
|
useExisting: forwardRef(() => MonkeyDateRangePickerComponent),
|
|
@@ -210,6 +211,14 @@ MonkeyDateRangePickerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "
|
|
|
210
211
|
CurrencyPipe,
|
|
211
212
|
], ngImport: i0, template: `
|
|
212
213
|
<mecx-date-range-picker-group [ngClass]="{ disabled: _disabled }" [id]="_id">
|
|
214
|
+
<mecx-date-range-picker-group-header>
|
|
215
|
+
<label>
|
|
216
|
+
{{ label }}
|
|
217
|
+
</label>
|
|
218
|
+
<helper>
|
|
219
|
+
{{ helperMessage }}
|
|
220
|
+
</helper>
|
|
221
|
+
</mecx-date-range-picker-group-header>
|
|
213
222
|
<mecx-date-range-picker-group-body>
|
|
214
223
|
<mecx-date-range-picker class="first-date-range">
|
|
215
224
|
<mecx-date-range-picker-header>
|
|
@@ -362,6 +371,14 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.14", ngImpo
|
|
|
362
371
|
selector: 'monkey-date-range-picker',
|
|
363
372
|
template: `
|
|
364
373
|
<mecx-date-range-picker-group [ngClass]="{ disabled: _disabled }" [id]="_id">
|
|
374
|
+
<mecx-date-range-picker-group-header>
|
|
375
|
+
<label>
|
|
376
|
+
{{ label }}
|
|
377
|
+
</label>
|
|
378
|
+
<helper>
|
|
379
|
+
{{ helperMessage }}
|
|
380
|
+
</helper>
|
|
381
|
+
</mecx-date-range-picker-group-header>
|
|
365
382
|
<mecx-date-range-picker-group-body>
|
|
366
383
|
<mecx-date-range-picker class="first-date-range">
|
|
367
384
|
<mecx-date-range-picker-header>
|
|
@@ -518,7 +535,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.14", ngImpo
|
|
|
518
535
|
CurrencyPipe,
|
|
519
536
|
],
|
|
520
537
|
}]
|
|
521
|
-
}], ctorParameters: function () { return [{ type: i1.FormBuilder }, { type: i0.ChangeDetectorRef }]; }, propDecorators: {
|
|
538
|
+
}], ctorParameters: function () { return [{ type: i1.FormBuilder }, { type: i0.ChangeDetectorRef }]; }, propDecorators: { label: [{
|
|
539
|
+
type: Input
|
|
540
|
+
}], helperMessage: [{
|
|
541
|
+
type: Input
|
|
542
|
+
}], i18n: [{
|
|
522
543
|
type: Input
|
|
523
544
|
}], infoMessage: [{
|
|
524
545
|
type: Input
|
|
@@ -529,4 +550,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.14", ngImpo
|
|
|
529
550
|
}], value: [{
|
|
530
551
|
type: Input
|
|
531
552
|
}] } });
|
|
532
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0ZS1yYW5nZS1waWNrZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbW9ua2V5LXN0eWxlLWd1aWRlL3NyYy9saWIvY29tcG9uZW50cy9kYXRlLXJhbmdlLXBpY2tlci9kYXRlLXJhbmdlLXBpY2tlci5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7NEJBSTRCO0FBQzVCLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQ0wsU0FBUyxFQUNULGlCQUFpQixFQUNqQixVQUFVLEVBRVYsTUFBTSxFQUNOLFlBQVksRUFDWixLQUFLLEdBRU4sTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUlMLGlCQUFpQixFQUNqQixVQUFVLEdBQ1gsTUFBTSxnQkFBZ0IsQ0FBQztBQUN4QixPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFDL0MsT0FBTyxLQUFLLE9BQU8sTUFBTSxRQUFRLENBQUM7Ozs7O0FBRWxDLE1BQU0sTUFBTSxHQUFHLE9BQU8sQ0FBQztBQWtLdkIsTUFBTSxPQUFPLDhCQUE4QjtJQTZCekMsWUFBb0IsRUFBZSxFQUFVLEdBQXNCO1FBQS9DLE9BQUUsR0FBRixFQUFFLENBQWE7UUFBVSxRQUFHLEdBQUgsR0FBRyxDQUFtQjtRQWR6RCxhQUFRLEdBQUcsSUFBSSxZQUFZLEVBQU8sQ0FBQztRQUVyQyxVQUFLLEdBQUcsTUFBTSxFQUFFLENBQUMsTUFBTSxDQUFDLFlBQVksQ0FBQyxDQUFDO1FBQ3RDLGtCQUFhLEdBQUcsQ0FBQyxLQUFVLEVBQUUsRUFBRSxHQUFFLENBQUMsQ0FBQztRQUNuQyxtQkFBYyxHQUFHLENBQUMsS0FBVSxFQUFFLEVBQUUsR0FBRSxDQUFDLENBQUM7UUFFckMsZUFBVSxHQUFHLE1BQU0sRUFBRSxDQUFDO1FBQ3RCLGdCQUFXLEdBQUcsTUFBTSxFQUFF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QW1KVDs0RkFXVSw4QkFBOEI7a0JBaEsxQyxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSwwQkFBMEI7b0JBQ3BDLFFBQVEsRUFBRTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBbUpUO29CQUNELGFBQWEsRUFBRSxpQkFBaUIsQ0FBQyxJQUFJO29CQUNyQyxTQUFTLEVBQUU7d0JBQ1Q7NEJBQ0UsT0FBTyxFQUFFLGlCQUFpQjs0QkFDMUIsV0FBVyxFQUFFLFVBQVUsQ0FBQyxHQUFHLEVBQUUsK0JBQStCLENBQUM7NEJBQzdELEtBQUssRUFBRSxJQUFJO3lCQUNaO3dCQUNELFlBQVk7cUJBQ2I7aUJBQ0Y7a0lBRVUsSUFBSTtzQkFBWixLQUFLO2dCQVlHLFdBQVc7c0JBQW5CLEtBQUs7Z0JBQ0csWUFBWTtzQkFBcEIsS0FBSztnQkFDSSxRQUFRO3NCQUFqQixNQUFNO2dCQWtHSCxLQUFLO3NCQURSLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyIvKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuICogQ29weXJpZ2h0IE1vbmtleSBFeGNoYW5nZS4gQWxsIFJpZ2h0cyBSZXNlcnZlZFxyXG4gKiBUaGlzIHN0eWxlIGd1aWRlIHdhcyBkZXZlbG9wZWQgYnkgTW9ua2V5IEV4Y2hhbmdlIFRlYW1cclxuICogTUlUIExpY2VuY2VcclxuICoqKioqKioqKioqKioqKioqKioqKioqKioqL1xyXG5pbXBvcnQgeyBDdXJyZW5jeVBpcGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xyXG5pbXBvcnQge1xyXG4gIENvbXBvbmVudCxcclxuICBWaWV3RW5jYXBzdWxhdGlvbixcclxuICBmb3J3YXJkUmVmLFxyXG4gIE9uSW5pdCxcclxuICBPdXRwdXQsXHJcbiAgRXZlbnRFbWl0dGVyLFxyXG4gIElucHV0LFxyXG4gIENoYW5nZURldGVjdG9yUmVmLFxyXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQge1xyXG4gIENvbnRyb2xWYWx1ZUFjY2Vzc29yLFxyXG4gIEZvcm1CdWlsZGVyLFxyXG4gIEZvcm1Hcm91cCxcclxuICBOR19WQUxVRV9BQ0NFU1NPUixcclxuICBWYWxpZGF0b3JzLFxyXG59IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuaW1wb3J0IHsgTW9ua2V5VXRpbHMgfSBmcm9tICcuLi8uLi9jb3JlL3V0aWxzJztcclxuaW1wb3J0ICogYXMgbW9tZW50XyBmcm9tICdtb21lbnQnO1xyXG5cclxuY29uc3QgbW9tZW50ID0gbW9tZW50XztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnbW9ua2V5LWRhdGUtcmFuZ2UtcGlja2VyJyxcclxuICB0ZW1wbGF0ZTogYFxyXG4gICAgPG1lY3gtZGF0ZS1yYW5nZS1waWNrZXItZ3JvdXAgW25nQ2xhc3NdPVwieyBkaXNhYmxlZDogX2Rpc2FibGVkIH1cIiBbaWRdPVwiX2lkXCI+XHJcbiAgICAgIDxtZWN4LWRhdGUtcmFuZ2UtcGlja2VyLWdyb3VwLWJvZHk+XHJcbiAgICAgICAgPG1lY3gtZGF0ZS1yYW5nZS1waWNrZXIgY2xhc3M9XCJmaXJzdC1kYXRlLXJhbmdlXCI+XHJcbiAgICAgICAgICA8bWVjeC1kYXRlLXJhbmdlLXBpY2tlci1oZWFkZXI+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjYWxlbmRhci10aXRsZVwiPlxyXG4gICAgICAgICAgICAgIDxtb25rZXktYnV0dG9uXHJcbiAgICAgICAgICAgICAgICBjbGFzcz1cImNhbGVuZGFyLXByZXZpb3VzXCJcclxuICAgICAgICAgICAgICAgIGNvbG9yPVwidGhlbWVcIlxyXG4gICAgICAgICAgICAgICAgaWNvbj1cImFycm93LWxlZnQtMTZcIlxyXG4gICAgICAgICAgICAgICAgdHlwZT1cInRlcnRpYXJ5XCJcclxuICAgICAgICAgICAgICAgIChjbGljayk9XCJwcmV2aW91c01vbnRoKClcIlxyXG4gICAgICAgICAgICAgICAgc2l6ZT1cInNtXCJcclxuICAgICAgICAgICAgICAgIFtkaXNhYmxlZF09XCJfZGlzYWJsZWRcIlxyXG4gICAgICAgICAgICAgID5cclxuICAgICAgICAgICAgICA8L21vbmtleS1idXR0b24+XHJcbiAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm1vbnRoLXllYXItdGl0bGVcIj5cclxuICAgICAgICAgICAgICAgIHt7IGkxOG4/Lm1vbnRocz8uW19kYXRlRmlyc3QuZm9ybWF0KCdNJyldIH19XHJcbiAgICAgICAgICAgICAgICB7eyBfZGF0ZUZpcnN0LmZvcm1hdCgnWVlZWScpIH19XHJcbiAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgPG1vbmtleS1idXR0b25cclxuICAgICAgICAgICAgICAgIGNsYXNzPVwiY2FsZW5kYXItbmV4dFwiXHJcbiAgICAgICAgICAgICAgICBjb2xvcj1cInRoZW1lXCJcclxuICAgICAgICAgICAgICAgIGljb249XCJhcnJvdy1yaWdodC0xNlwiXHJcbiAgICAgICAgICAgICAgICB0eXBlPVwidGVydGlhcnlcIlxyXG4gICAgICAgICAgICAgICAgKGNsaWNrKT1cIm5leHRNb250aCgpXCJcclxuICAgICAgICAgICAgICAgIHNpemU9XCJzbVwiXHJcbiAgICAgICAgICAgICAgICBbZGlzYWJsZWRdPVwiX2Rpc2FibGVkXCJcclxuICAgICAgICAgICAgICA+XHJcbiAgICAgICAgICAgICAgPC9tb25rZXktYnV0dG9uPlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cIndlZWtcIj5cclxuICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cIndlZWstZGF5XCIgKm5nRm9yPVwibGV0IGRheSBvZiBbMSwgMiwgMywgNCwgNSwgNiwgN11cIj5cclxuICAgICAgICAgICAgICAgIHt7IGkxOG4/LmRheXM/LltkYXldfX1cclxuICAgICAgICAgICAgICA8L3NwYW4+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgPC9tZWN4LWRhdGUtcmFuZ2UtcGlja2VyLWhlYWRlcj5cclxuICAgICAgICAgIDxtZWN4LWRhdGUtcmFuZ2UtcGlja2VyLWJvZHk+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJtb250aC13ZWVrXCIgKm5nRm9yPVwibGV0IHdlZWsgb2YgX2RheXNBcnJGaXJzdFwiPlxyXG4gICAgICAgICAgICAgIDxkaXZcclxuICAgICAgICAgICAgICAgIGNsYXNzPVwibW9udGgtZGF5XCJcclxuICAgICAgICAgICAgICAgIChjbGljayk9XCJzZWxlY3RlZERhdGUoZGF5KVwiXHJcbiAgICAgICAgICAgICAgICBbbmdDbGFzc109XCJ7XHJcbiAgICAgICAgICAgICAgICAgIGluYWN0aXZlOiAhZGF5LFxyXG4gICAgICAgICAgICAgICAgICBzZWxlY3RlZDogaXNTZWxlY3RlZChkYXkpLFxyXG4gICAgICAgICAgICAgICAgICB0b2RheTogdG9kYXlDaGVjayhkYXkpLFxyXG4gICAgICAgICAgICAgICAgICAnZmlyc3Qtc2VsZWN0ZWQnOiBpc0ZpcnN0U2VsZWN0ZWQoZGF5KSxcclxuICAgICAgICAgICAgICAgICAgJ2xhc3Qtc2VsZWN0ZWQnOiBpc0xhc3RTZWxlY3RlZChkYXkpXHJcbiAgICAgICAgICAgICAgICB9XCJcclxuICAgICAgICAgICAgICAgICpuZ0Zvcj1cImxldCBkYXkgb2Ygd2Vla1wiXHJcbiAgICAgICAgICAgICAgICAjZGl2T25lXHJcbiAgICAgICAgICAgICAgPlxyXG4gICAgICAgICAgICAgICAge3sgZGF5Py5kYXRlKCkgfX1cclxuICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICA8L21lY3gtZGF0ZS1yYW5nZS1waWNrZXItYm9keT5cclxuICAgICAgICA8L21lY3gtZGF0ZS1yYW5nZS1waWNrZXI+XHJcblxyXG4gICAgICAgIDxtZWN4LWRhdGUtcmFuZ2UtcGlja2VyIGNsYXNzPVwic2Vjb25kLWRhdGUtcmFuZ2VcIj5cclxuICAgICAgICAgIDxtZWN4LWRhdGUtcmFuZ2UtcGlja2VyLWhlYWRlcj5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNhbGVuZGFyLXRpdGxlXCI+XHJcbiAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm1vbnRoLXllYXItdGl0bGVcIj5cclxuICAgICAgICAgICAgICAgIHt7IGkxOG4/Lm1vbnRocz8uW19kYXRlU2Vjb25kLmZvcm1hdCgnTScpXSB9fVxyXG4gICAgICAgICAgICAgICAge3sgX2RhdGVTZWNvbmQuZm9ybWF0KCdZWVlZJykgfX1cclxuICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICA8bW9ua2V5LWJ1dHRvblxyXG4gICAgICAgICAgICAgICAgY2xhc3M9XCJjYWxlbmRhci1wcmV2aW91c1wiXHJcbiAgICAgICAgICAgICAgICBjb2xvcj1cInRoZW1lXCJcclxuICAgICAgICAgICAgICAgIGljb249XCJhcnJvdy1yaWdodC0xNlwiXHJcbiAgICAgICAgICAgICAgICB0eXBlPVwidGVydGlhcnlcIlxyXG4gICAgICAgICAgICAgICAgKGNsaWNrKT1cIm5leHRNb250aCgpXCJcclxuICAgICAgICAgICAgICAgIHNpemU9XCJzbVwiXHJcbiAgICAgICAgICAgICAgICBbZGlzYWJsZWRdPVwiX2Rpc2FibGVkXCJcclxuICAgICAgICAgICAgICA+XHJcbiAgICAgICAgICAgICAgPC9tb25rZXktYnV0dG9uPlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cIndlZWtcIj5cclxuICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cIndlZWstZGF5XCIgKm5nRm9yPVwibGV0IGRheSBvZiBbMSwgMiwgMywgNCwgNSwgNiwgN11cIj5cclxuICAgICAgICAgICAgICAgIHt7IGkxOG4/LmRheXM/LltkYXldfX1cclxuICAgICAgICAgICAgICA8L3NwYW4+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgPC9tZWN4LWRhdGUtcmFuZ2UtcGlja2VyLWhlYWRlcj5cclxuICAgICAgICAgIDxtZWN4LWRhdGUtcmFuZ2UtcGlja2VyLWJvZHk+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJtb250aC13ZWVrXCIgKm5nRm9yPVwibGV0IHdlZWsgb2YgX2RheXNBcnJTZWNvbmRcIj5cclxuICAgICAgICAgICAgICA8ZGl2XHJcbiAgICAgICAgICAgICAgICBjbGFzcz1cIm1vbnRoLWRheVwiXHJcbiAgICAgICAgICAgICAgICAoY2xpY2spPVwic2VsZWN0ZWREYXRlKGRheSlcIlxyXG4gICAgICAgICAgICAgICAgW25nQ2xhc3NdPVwie1xyXG4gICAgICAgICAgICAgICAgICBpbmFjdGl2ZTogIWRheSxcclxuICAgICAgICAgICAgICAgICAgc2VsZWN0ZWQ6IGlzU2VsZWN0ZWQoZGF5KSxcclxuICAgICAgICAgICAgICAgICAgdG9kYXk6IHRvZGF5Q2hlY2soZGF5KSxcclxuICAgICAgICAgICAgICAgICAgJ2ZpcnN0LXNlbGVjdGVkJzogaXNGaXJzdFNlbGVjdGVkKGRheSksXHJcbiAgICAgICAgICAgICAgICAgICdsYXN0LXNlbGVjdGVkJzogaXNMYXN0U2VsZWN0ZWQoZGF5KVxyXG4gICAgICAgICAgICAgICAgfVwiXHJcbiAgICAgICAgICAgICAgICAqbmdGb3I9XCJsZXQgZGF5IG9mIHdlZWtcIlxyXG4gICAgICAgICAgICAgID5cclxuICAgICAgICAgICAgICAgIHt7IGRheT8uZGF0ZSgpIH19XHJcbiAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgPC9tZWN4LWRhdGUtcmFuZ2UtcGlja2VyLWJvZHk+XHJcbiAgICAgICAgPC9tZWN4LWRhdGUtcmFuZ2UtcGlja2VyPlxyXG4gICAgICA8L21lY3gtZGF0ZS1yYW5nZS1waWNrZXItZ3JvdXAtYm9keT5cclxuICAgICAgPG1lY3gtZGF0ZS1yYW5nZS1waWNrZXItZ3JvdXAtaW5mbz5cclxuICAgICAgICA8aW5mbz5cclxuICAgICAgICAgIHt7IGluZm9NZXNzYWdlIH19XHJcbiAgICAgICAgPC9pbmZvPlxyXG4gICAgICAgIDxlcnJvcj5cclxuICAgICAgICAgIHt7IGVycm9yTWVzc2FnZSB9fVxyXG4gICAgICAgIDwvZXJyb3I+XHJcbiAgICAgIDwvbWVjeC1kYXRlLXJhbmdlLXBpY2tlci1ncm91cC1pbmZvPlxyXG4gICAgICA8bWVjeC1kYXRlLXJhbmdlLXBpY2tlci1ncm91cC1hY3Rpb24gW2NsYXNzLmVycm9yXT1cImVycm9yTWVzc2FnZT8udHJpbSgpXCI+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cImFjdGlvbi1kYXlzXCI+XHJcbiAgICAgICAgICA8bW9ua2V5LWJ1dHRvblxyXG4gICAgICAgICAgICBjb2xvcj1cInRoZW1lXCJcclxuICAgICAgICAgICAgdHlwZT1cInNlY29uZGFyeVwiXHJcbiAgICAgICAgICAgIChjbGljayk9XCJzZWxlY3RSYW5nZU9mRGF5cygzMClcIlxyXG4gICAgICAgICAgICBbZGlzYWJsZWRdPVwiX2Rpc2FibGVkXCJcclxuICAgICAgICAgID5cclxuICAgICAgICAgICAge3sgaTE4bj8uYWN0aW9ucz8uWyczMCddIH19XHJcbiAgICAgICAgICA8L21vbmtleS1idXR0b24+XHJcbiAgICAgICAgICA8bW9ua2V5LWJ1dHRvblxyXG4gICAgICAgICAgICBjb2xvcj1cInRoZW1lXCJcclxuICAgICAgICAgICAgdHlwZT1cInNlY29uZGFyeVwiXHJcbiAgICAgICAgICAgIChjbGljayk9XCJzZWxlY3RSYW5nZU9mRGF5cyg2MClcIlxyXG4gICAgICAgICAgICBbZGlzYWJsZWRdPVwiX2Rpc2FibGVkXCJcclxuICAgICAgICAgID5cclxuICAgICAgICAgICAge3sgaTE4bj8uYWN0aW9ucz8uWyc2MCddIH19XHJcbiAgICAgICAgICA8L21vbmtleS1idXR0b24+XHJcbiAgICAgICAgICA8bW9ua2V5LWJ1dHRvblxyXG4gICAgICAgICAgICBjb2xvcj1cInRoZW1lXCJcclxuICAgICAgICAgICAgdHlwZT1cInNlY29uZGFyeVwiXHJcbiAgICAgICAgICAgIChjbGljayk9XCJzZWxlY3RSYW5nZU9mRGF5cyg5MClcIlxyXG4gICAgICAgICAgICBbZGlzYWJsZWRdPVwiX2Rpc2FibGVkXCJcclxuICAgICAgICAgID5cclxuICAgICAgICAgICAge3sgaTE4bj8uYWN0aW9ucz8uWyc5MCddIH19XHJcbiAgICAgICAgICA8L21vbmtleS1idXR0b24+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPG1vbmtleS1idXR0b25cclxuICAgICAgICAgIGNvbG9yPVwidGhlbWVcIlxyXG4gICAgICAgICAgdHlwZT1cInByaW1hcnlcIlxyXG4gICAgICAgICAgKGNsaWNrKT1cIm5hdmlnYXRlVG9Ub2RheSgpXCJcclxuICAgICAgICAgIFtkaXNhYmxlZF09XCJfZGlzYWJsZWRcIlxyXG4gICAgICAgID5cclxuICAgICAgICAgIHt7IGkxOG4/LnRvZGF5IH19XHJcbiAgICAgICAgPC9tb25rZXktYnV0dG9uPlxyXG4gICAgICA8L21lY3gtZGF0ZS1yYW5nZS1waWNrZXItZ3JvdXAtYWN0aW9uPlxyXG4gICAgPC9tZWN4LWRhdGUtcmFuZ2UtcGlja2VyLWdyb3VwPlxyXG4gIGAsXHJcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcclxuICBwcm92aWRlcnM6IFtcclxuICAgIHtcclxuICAgICAgcHJvdmlkZTogTkdfVkFMVUVfQUNDRVNTT1IsXHJcbiAgICAgIHVzZUV4aXN0aW5nOiBmb3J3YXJkUmVmKCgpID0+IE1vbmtleURhdGVSYW5nZVBpY2tlckNvbXBvbmVudCksXHJcbiAgICAgIG11bHRpOiB0cnVlLFxyXG4gICAgfSxcclxuICAgIEN1cnJlbmN5UGlwZSxcclxuICBdLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgTW9ua2V5RGF0ZVJhbmdlUGlja2VyQ29tcG9uZW50IGltcGxlbWVudHMgQ29udHJvbFZhbHVlQWNjZXNzb3IsIE9uSW5pdCB7XHJcbiAgQElucHV0KCkgaTE4bjoge1xyXG4gICAgbW9udGhzOiB7XHJcbiAgICAgIFtzOiBzdHJpbmddOiBzdHJpbmc7XHJcbiAgICB9O1xyXG4gICAgZGF5czoge1xyXG4gICAgICBbczogc3RyaW5nXTogc3RyaW5nO1xyXG4gICAgfTtcclxuICAgIGFjdGlvbnM6IHtcclxuICAgICAgW3M6IHN0cmluZ106IHN0cmluZztcclxuICAgIH07XHJcbiAgICB0b2RheTogc3RyaW5nO1xyXG4gIH07XHJcbiAgQElucHV0KCkgaW5mb01lc3NhZ2U6IHN0cmluZztcclxuICBASW5wdXQoKSBlcnJvck1lc3NhZ2U6IHN0cmluZztcclxuICBAT3V0cHV0KCkgb25DaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPGFueT4oKTtcclxuXHJcbiAgcHJpdmF0ZSB0b2RheSA9IG1vbWVudCgpLmZvcm1hdCgnWVlZWS1NTS1ERCcpO1xyXG4gIHByaXZhdGUgb25Nb2RlbENoYW5nZSA9ICh2YWx1ZTogYW55KSA9PiB7fTtcclxuICBwcml2YXRlIG9uTW9kZWxUb3VjaGVkID0gKHZhbHVlOiBhbnkpID0+IHt9O1xyXG5cclxuICBwdWJsaWMgX2RhdGVGaXJzdCA9IG1vbWVudCgpO1xyXG4gIHB1YmxpYyBfZGF0ZVNlY29uZCA9IG1vbWVudCgpLmFkZCgxLCAnTScpO1xyXG4gIHB1YmxpYyBfaWQ6IHN0cmluZyA9IGBtZWN4LWRhdGUtcmFuZ2UtcGlja2VyLSR7TW9ua2V5VXRpbHMuZ2V0UmFuZG9tU3RyaW5nKDEwKX1gO1xyXG4gIHB1YmxpYyBfZGF5c0FyckZpcnN0ID0gW107XHJcbiAgcHVibGljIF9kYXlzQXJyU2Vjb25kID0gW107XHJcbiAgcHVibGljIF9kYXRlRm9ybTogRm9ybUdyb3VwO1xyXG4gIHB1YmxpYyBfZGlzYWJsZWQ6IGJvb2xlYW4gPSBmYWxzZTtcclxuXHJcbiAgY29uc3RydWN0b3IocHJpdmF0ZSBmYjogRm9ybUJ1aWxkZXIsIHByaXZhdGUgY2RyOiBDaGFuZ2VEZXRlY3RvclJlZikge1xyXG4gICAgdGhpcy5pbml0RGF0ZVJhbmdlKCk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGluaXREYXRlUmFuZ2UoKSB7XHJcbiAgICByZXR1cm4gKHRoaXMuX2RhdGVGb3JtID0gdGhpcy5mYi5ncm91cCh7XHJcbiAgICAgIHN0YXJ0RGF0ZTogW251bGwsIFZhbGlkYXRvcnMucmVxdWlyZWRdLFxyXG4gICAgICBlbmREYXRlOiBbbnVsbCwgVmFsaWRhdG9ycy5yZXF1aXJlZF0sXHJcbiAgICB9KSk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGNyZWF0ZUNhbGVuZGFyKG1vbnRoOiBtb21lbnQuTW9tZW50KSB7XHJcbiAgICBsZXQgZmlyc3REYXkgPSBtb21lbnQobW9udGgpLnN0YXJ0T2YoJ00nKTtcclxuICAgIGxldCBsYXN0RGF5ID0gbW9tZW50KG1vbnRoKS5lbmRPZignTScpO1xyXG4gICAgbGV0IGRheXMgPSBBcnJheS5hcHBseShudWxsLCB7IGxlbmd0aDogbW9udGguZGF5c0luTW9udGgoKSB9KVxyXG4gICAgICAubWFwKE51bWJlci5jYWxsLCBOdW1iZXIpXHJcbiAgICAgIC5tYXAoKG46IG51bWJlcikgPT4ge1xyXG4gICAgICAgIHJldHVybiBtb21lbnQoZmlyc3REYXkpLmFkZChuLCAnZCcpO1xyXG4gICAgICB9KTtcclxuXHJcbiAgICBsZXQgbiA9IDA7XHJcbiAgICB3aGlsZSAobiA8IGZpcnN0RGF5LndlZWtkYXkoKSkge1xyXG4gICAgICBkYXlzLnVuc2hpZnQobnVsbCk7XHJcbiAgICAgIG4rKztcclxuICAgIH1cclxuICAgIG4gPSAwO1xyXG4gICAgd2hpbGUgKG4gPCA3IC0gbGFzdERheS53ZWVrZGF5KCkpIHtcclxuICAgICAgZGF5cy5wdXNoKG51bGwpO1xyXG4gICAgICBuKys7XHJcbiAgICB9XHJcblxyXG4gICAgbGV0IGluZGV4ID0gMTtcclxuICAgIGxldCBncm91cCA9IFtdO1xyXG4gICAgbGV0IGdyb3VwZWQgPSBbXTtcclxuXHJcbiAgICBPYmplY3QuZW50cmllcyhkYXlzKS5tYXAoKFtrZXksIHZhbHVlXTogW3N0cmluZywgYW55XSkgPT4ge1xyXG4gICAgICBpZiAoaW5kZXggPiA3KSB7XHJcbiAgICAgICAgaW5kZXggPSAxO1xyXG4gICAgICAgIGdyb3VwZWQucHVzaChncm91cCk7XHJcbiAgICAgICAgZ3JvdXAgPSBbXTtcclxuICAgICAgfVxyXG5cclxuICAgICAgZ3JvdXAucHVzaCh2YWx1ZSk7XHJcbiAgICAgIGluZGV4Kys7XHJcbiAgICB9KTtcclxuICAgIGdyb3VwZWQucHVzaChncm91cCk7XHJcblxyXG4gICAgcmV0dXJuIGdyb3VwZWQ7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGJ1aWxkKCkge1xyXG4gICAgdGhpcy5fZGF5c0FyckZpcnN0ID0gdGhpcy5jcmVhdGVDYWxlbmRhcih0aGlzLl9kYXRlRmlyc3QpO1xyXG4gICAgdGhpcy5fZGF5c0FyclNlY29uZCA9IHRoaXMuY3JlYXRlQ2FsZW5kYXIodGhpcy5fZGF0ZVNlY29uZCk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGNsZWFyRGF0ZXMoKSB7XHJcbiAgICBpZiAodGhpcy5fZGlzYWJsZWQpIHJldHVybjtcclxuICAgIHRoaXMuX2RhdGVGb3JtLnNldFZhbHVlKHsgc3RhcnREYXRlOiBudWxsLCBlbmREYXRlOiBudWxsIH0pO1xyXG4gICAgdGhpcy53cml0ZVZhbHVlKHRoaXMuX2RhdGVGb3JtLnZhbHVlKTtcclxuICB9XHJcblxyXG4gIG5hdmlnYXRlVG9Ub2RheSgpIHtcclxuICAgIHRoaXMuX2RhdGVGaXJzdCA9IG1vbWVudCgpO1xyXG4gICAgdGhpcy5fZGF0ZVNlY29uZCA9IG1vbWVudCgpLmFkZCgxLCAnTScpO1xyXG4gICAgdGhpcy5idWlsZCgpO1xyXG4gIH1cclxuXHJcbiAgbmdPbkluaXQoKSB7XHJcbiAgICB0aGlzLmJ1aWxkKCk7XHJcbiAgfVxyXG5cclxuICByZWdpc3Rlck9uQ2hhbmdlKGZuOiBhbnkpOiB2b2lkIHtcclxuICAgIHRoaXMub25Nb2RlbENoYW5nZSA9IGZuO1xyXG4gIH1cclxuXHJcbiAgcmVnaXN0ZXJPblRvdWNoZWQoZm46IGFueSk6IHZvaWQge1xyXG4gICAgdGhpcy5vbk1vZGVsVG91Y2hlZCA9IGZuO1xyXG4gIH1cclxuXHJcbiAgc2V0RGlzYWJsZWRTdGF0ZT8oaXNEaXNhYmxlZDogYm9vbGVhbik6IHZvaWQge1xyXG4gICAgdGhpcy5fZGlzYWJsZWQgPSBpc0Rpc2FibGVkO1xyXG4gIH1cclxuXHJcbiAgQElucHV0KClcclxuICBzZXQgdmFsdWUodmFsdWU6IGFueSkge1xyXG4gICAgaWYgKFxyXG4gICAgICB2YWx1ZSAmJlxyXG4gICAgICBPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwodmFsdWUsICdzdGFydERhdGUnKSAmJlxyXG4gICAgICBPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwodmFsdWUsICdlbmREYXRlJylcclxuICAgICkge1xyXG4gICAgICB0aGlzLl9kYXRlRm9ybS5zZXRWYWx1ZSh2YWx1ZSk7XHJcbiAgICAgIHRoaXMuY2RyLmRldGVjdENoYW5nZXMoKTtcclxuICAgICAgdGhpcy5vbk1vZGVsQ2hhbmdlKHRoaXMuX2RhdGVGb3JtLnZhbHVlKTtcclxuICAgICAgdGhpcy5vbk1vZGVsVG91Y2hlZCh0aGlzLl9kYXRlRm9ybS52YWx1ZSk7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICB0aGlzLmNsZWFyRGF0ZXMoKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIGdldCB2YWx1ZSgpOiBhbnkge1xyXG4gICAgcmV0dXJuIHRoaXMuX2RhdGVGb3JtLnZhbHVlO1xyXG4gIH1cclxuXHJcbiAgd3JpdGVWYWx1ZSh2YWx1ZTogYW55KTogdm9pZCB7XHJcbiAgICB0aGlzLnZhbHVlID0gdmFsdWU7XHJcbiAgICB0aGlzLm9uQ2hhbmdlLm5leHQodmFsdWUpO1xyXG4gIH1cclxuXHJcbiAgbmV4dE1vbnRoKCkge1xyXG4gICAgaWYgKHRoaXMuX2Rpc2FibGVkKSByZXR1cm47XHJcbiAgICB0aGlzLl9kYXRlRmlyc3QuYWRkKDEsICdNJyk7XHJcbiAgICB0aGlzLl9kYXRlU2Vjb25kLmFkZCgxLCAnTScpO1xyXG5cclxuICAgIHRoaXMuX2RheXNBcnJGaXJzdCA9IHRoaXMuY3JlYXRlQ2FsZW5kYXIodGhpcy5fZGF0ZUZpcnN0KTtcclxuICAgIHRoaXMuX2RheXNBcnJTZWNvbmQgPSB0aGlzLmNyZWF0ZUNhbGVuZGFyKHRoaXMuX2RhdGVTZWNvbmQpO1xyXG4gIH1cclxuXHJcbiAgcHJldmlvdXNNb250aCgpIHtcclxuICAgIGlmICh0aGlzLl9kaXNhYmxlZCkgcmV0dXJuO1xyXG4gICAgdGhpcy5fZGF0ZUZpcnN0LnN1YnRyYWN0KDEsICdNJyk7XHJcbiAgICB0aGlzLl9kYXRlU2Vjb25kLnN1YnRyYWN0KDEsICdNJyk7XHJcblxyXG4gICAgdGhpcy5fZGF5c0FyckZpcnN0ID0gdGhpcy5jcmVhdGVDYWxlbmRhcih0aGlzLl9kYXRlRmlyc3QpO1xyXG4gICAgdGhpcy5fZGF5c0FyclNlY29uZCA9IHRoaXMuY3JlYXRlQ2FsZW5kYXIodGhpcy5fZGF0ZVNlY29uZCk7XHJcbiAgfVxyXG5cclxuICB0b2RheUNoZWNrKGRheTogbW9tZW50Lk1vbWVudCkge1xyXG4gICAgaWYgKCFkYXkpIHtcclxuICAgICAgcmV0dXJuIGZhbHNlO1xyXG4gICAgfVxyXG5cclxuICAgIHJldHVybiBtb21lbnQoKS5mb3JtYXQoJ0wnKSA9PT0gZGF5LmZvcm1hdCgnTCcpO1xyXG4gIH1cclxuXHJcbiAgaXNTZWxlY3RlZChkYXk6IG1vbWVudC5Nb21lbnQpIHtcclxuICAgIGlmICghZGF5KSB7XHJcbiAgICAgIHJldHVybiBmYWxzZTtcclxuICAgIH1cclxuXHJcbiAgICBsZXQgc3RhcnREYXRlTW9tZW50ID0gbW9tZW50KHRoaXMuX2RhdGVGb3JtLnZhbHVlLnN0YXJ0RGF0ZSwgJ1lZWVktTU0tREQnKTtcclxuICAgIGxldCBlbmREYXRlTW9tZW50ID0gbW9tZW50KHRoaXMuX2RhdGVGb3JtLnZhbHVlLmVuZERhdGUsICdZWVlZLU1NLUREJyk7XHJcblxyXG4gICAgaWYgKHRoaXMuX2RhdGVGb3JtLnZhbGlkKSB7XHJcbiAgICAgIHJldHVybiBzdGFydERhdGVNb21lbnQuaXNTYW1lT3JCZWZvcmUoZGF5KSAmJiBlbmREYXRlTW9tZW50LmlzU2FtZU9yQWZ0ZXIoZGF5KTtcclxuICAgIH1cclxuXHJcbiAgICBpZiAodGhpcy5fZGF0ZUZvcm0uZ2V0KCdzdGFydERhdGUnKS52YWxpZCkge1xyXG4gICAgICByZXR1cm4gc3RhcnREYXRlTW9tZW50LmlzU2FtZShkYXkpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgaXNGaXJzdFNlbGVjdGVkKGRheSkge1xyXG4gICAgY29uc3QgeyBfZGF0ZUZvcm0gfSA9IHRoaXM7XHJcbiAgICBjb25zdCB7IHN0YXJ0RGF0ZSB9ID0gX2RhdGVGb3JtLnZhbHVlO1xyXG4gICAgcmV0dXJuIGRheT8uaXNTYW1lKHN0YXJ0RGF0ZSk7XHJcbiAgfVxyXG5cclxuICBpc0xhc3RTZWxlY3RlZChkYXk6IG1vbWVudC5Nb21lbnQpIHtcclxuICAgIGNvbnN0IHsgX2RhdGVGb3JtIH0gPSB0aGlzO1xyXG4gICAgY29uc3QgeyBlbmREYXRlIH0gPSBfZGF0ZUZvcm0udmFsdWU7XHJcbiAgICByZXR1cm4gZGF5Py5pc1NhbWUoZW5kRGF0ZSk7XHJcbiAgfVxyXG5cclxuICBzZWxlY3RlZERhdGUoZGF5OiBtb21lbnQuTW9tZW50KSB7XHJcbiAgICBpZiAodGhpcy5fZGlzYWJsZWQpIHJldHVybjtcclxuICAgIGNvbnN0IHsgX2RhdGVGb3JtIH0gPSB0aGlzO1xyXG4gICAgbGV0IGRheUZvcm1hdHRlZCA9IGRheS5mb3JtYXQoJ1lZWVktTU0tREQnKTtcclxuXHJcbiAgICBpZiAoX2RhdGVGb3JtLnZhbGlkKSB7XHJcbiAgICAgIHRoaXMuY2xlYXJEYXRlcygpO1xyXG4gICAgfVxyXG5cclxuICAgIGxldCB7IHN0YXJ0RGF0ZSwgZW5kRGF0ZSB9ID0gX2RhdGVGb3JtLnZhbHVlO1xyXG4gICAgaWYgKHN0YXJ0RGF0ZSkge1xyXG4gICAgICBpZiAobW9tZW50KHN0YXJ0RGF0ZSkuaXNBZnRlcihtb21lbnQoZGF5Rm9ybWF0dGVkKSkpIHtcclxuICAgICAgICBlbmREYXRlID0gc3RhcnREYXRlO1xyXG4gICAgICAgIHN0YXJ0RGF0ZSA9IGRheUZvcm1hdHRlZDtcclxuICAgICAgfSBlbHNlIHtcclxuICAgICAgICBlbmREYXRlID0gZGF5Rm9ybWF0dGVkO1xyXG4gICAgICB9XHJcbiAgICB9IGVsc2Ugc3RhcnREYXRlID0gZGF5Rm9ybWF0dGVkO1xyXG5cclxuICAgIGlmIChzdGFydERhdGUpIHtcclxuICAgICAgX2RhdGVGb3JtLmdldCgnc3RhcnREYXRlJykucGF0Y2hWYWx1ZShzdGFydERhdGUpO1xyXG4gICAgfVxyXG5cclxuICAgIGlmIChlbmREYXRlKSB7XHJcbiAgICAgIF9kYXRlRm9ybS5nZXQoJ2VuZERhdGUnKS5wYXRjaFZhbHVlKGVuZERhdGUpO1xyXG4gICAgfVxyXG5cclxuICAgIHRoaXMud3JpdGVWYWx1ZShfZGF0ZUZvcm0udmFsdWUpO1xyXG4gIH1cclxuXHJcbiAgc2VsZWN0UmFuZ2VPZkRheXMoZGF5czogbnVtYmVyKSB7XHJcbiAgICBpZiAodGhpcy5fZGlzYWJsZWQpIHJldHVybjtcclxuICAgIGNvbnN0IHsgX2RhdGVGb3JtLCB0b2RheSB9ID0gdGhpcztcclxuICAgIGNvbnN0IHsgc3RhcnREYXRlIH0gPSBfZGF0ZUZvcm0udmFsdWU7XHJcblxyXG4gICAgY29uc3QgZmlyc3REYXkgPSBzdGFydERhdGUgfHwgdG9kYXk7XHJcbiAgICBjb25zdCBsYXN0RGF5ID0gbW9tZW50KGZpcnN0RGF5KS5hZGQoZGF5cywgJ2RheScpLmZvcm1hdCgnWVlZWS1NTS1ERCcpO1xyXG4gICAgX2RhdGVGb3JtLmdldCgnc3RhcnREYXRlJykucGF0Y2hWYWx1ZShmaXJzdERheSk7XHJcbiAgICBfZGF0ZUZvcm0uZ2V0KCdlbmREYXRlJykucGF0Y2hWYWx1ZShsYXN0RGF5KTtcclxuICAgIHRoaXMud3JpdGVWYWx1ZShfZGF0ZUZvcm0udmFsdWUpO1xyXG4gIH1cclxufVxyXG4iXX0=
|
|
553
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0ZS1yYW5nZS1waWNrZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbW9ua2V5LXN0eWxlLWd1aWRlL3NyYy9saWIvY29tcG9uZW50cy9kYXRlLXJhbmdlLXBpY2tlci9kYXRlLXJhbmdlLXBpY2tlci5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7NEJBSTRCO0FBQzVCLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQ0wsU0FBUyxFQUNULGlCQUFpQixFQUNqQixVQUFVLEVBRVYsTUFBTSxFQUNOLFlBQVksRUFDWixLQUFLLEdBRU4sTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUlMLGlCQUFpQixFQUNqQixVQUFVLEdBQ1gsTUFBTSxnQkFBZ0IsQ0FBQztBQUN4QixPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFDL0MsT0FBTyxLQUFLLE9BQU8sTUFBTSxRQUFRLENBQUM7Ozs7O0FBRWxDLE1BQU0sTUFBTSxHQUFHLE9BQU8sQ0FBQztBQTBLdkIsTUFBTSxPQUFPLDhCQUE4QjtJQStCekMsWUFBb0IsRUFBZSxFQUFVLEdBQXNCO1FBQS9DLE9BQUUsR0FBRixFQUFFLENBQWE7UUFBVSxRQUFHLEdBQUgsR0FBRyxDQUFtQjtRQTdCMUQsa0JBQWEsR0FBVyxFQUFFLENBQUM7UUFlMUIsYUFBUSxHQUFHLElBQUksWUFBWSxFQUFPLENBQUM7UUFFckMsVUFBSyxHQUFHLE1BQU0sRUFBRSxDQUFDLE1BQU0sQ0FBQyxZQUFZLENBQUMsQ0FBQztRQUN0QyxrQkFBYSxHQUFHLENBQUMsS0FBVSxFQUFFLEVBQUUsR0FBRSxDQUFDLENBQUM7UUFDbkMsbUJBQWMsR0FBRyxDQUFDLEtBQVUsRUFBRSxFQUFFLEdBQUUsQ0FBQyxDQUFDO1FBRXJDLGVBQVUsR0FBRyxNQUFNLEVBQUUsQ0FBQztRQUN0QixnQkFBVyxHQUFHLE1BQU0sRUFBRSxDQUFDLEdBQUcsQ0FBQyxDQUFDLEVBQUUsR0FBRyxDQUFDLENBQUM7UUFDbkMsUUFBRyxHQUFXLDBCQUEwQixXQUFXLENBQUMsZUFBZSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUM7UUFDMUUsa0JBQWEsR0FBRyxFQUFFLENBQUM7UUFDbkIsbUJBQWMsR0FBRyxFQUFFLENBQUM7UUFFcEIsY0FBUyxHQUFZLEtBQUssQ0FBQztRQUdoQyxJQUFJLENBQUMsYUFBYSxFQUFFLENBQUM7SUFDdkIsQ0FBQztJQUVPLGFBQWE7UUFDbkIsT0FBTyxDQUFDLElBQUksQ0FBQyxTQUFTLEdBQUcsSUFBSSxDQUFDLEVBQUUsQ0FBQyxLQUFLLENBQUM7WUFDckMsU0FBUyxFQUFFLENBQUMsSUFBSSxFQUFFLFVBQVUsQ0FBQyxRQUFRLENBQUM7WUFDdEMsT0FBTyxFQUFFLENBQUMsSUFBSSxFQUFFLFVBQVUsQ0FBQyxRQUFRLENBQUM7U0FDckMsQ0FBQyxDQUFDLENBQUM7SUFDTixDQUFDO0lBRU8sY0FBYyxDQUFDLEtBQW9CO1FBQ3pDLElBQUksUUFBUSxHQUFHLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDMUMsSUFBSSxPQUFPLEdBQUcsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUN2QyxJQUFJLElBQUksR0FBRyxLQUFLLENBQUMsS0FBSyxDQUFDLElBQUksRUFBRSxFQUFFLE1BQU0sRUFBRSxLQUFLLENBQUMsV0FBVyxFQUFFLEVBQUUsQ0FBQzthQUMxRCxHQUFHLENBQUMsTUFBTSxDQUFDLElBQUksRUFBRSxNQUFNLENBQUM7YUFDeEIsR0FBRyxDQUFDLENBQUMsQ0FBUyxFQUFFLEVBQUU7WUFDakIsT0FBTyxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsRUFBRSxHQUFHLENBQUMsQ0FBQztRQUN0QyxDQUFDLENBQUMsQ0FBQztRQUVMLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUNWLE9BQU8sQ0FBQyxHQUFHLFFBQVEsQ0FBQyxPQUFPLEVBQUUsRUFBRTtZQUM3QixJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDO1lBQ25CLENBQUMsRUFBRSxDQUFDO1NBQ0w7UUFDRCxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBQ04sT0FBTyxDQUFDLEdBQUcsQ0FBQyxHQUFHLE9BQU8sQ0FBQyxPQUFPLEVBQUUsRUFBRTtZQUNoQyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO1lBQ2hCLENBQUMsRUFBRSxDQUFDO1NBQ0w7UUFFRCxJQUFJLEtBQUssR0FBRyxDQUFDLENBQUM7UUFDZCxJQUFJLEtBQUssR0FBRyxFQUFFLENBQUM7UUFDZixJQUFJLE9BQU8sR0FBRyxFQUFFLENBQUM7UUFFakIsTUFBTSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEdBQUcsRUFBRSxLQUFLLENBQWdCLEVBQUUsRUFBRTtZQUN2RCxJQUFJLEtBQUssR0FBRyxDQUFDLEVBQUU7Z0JBQ2IsS0FBSyxHQUFHLENBQUMsQ0FBQztnQkFDVixPQUFPLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO2dCQUNwQixLQUFLLEdBQUcsRUFBRSxDQUFDO2FBQ1o7WUFFRCxLQUFLLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO1lBQ2xCLEtBQUssRUFBRSxDQUFDO1FBQ1YsQ0FBQyxDQUFDLENBQUM7UUFDSCxPQUFPLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBRXBCLE9BQU8sT0FBTyxDQUFDO0lBQ2pCLENBQUM7SUFFTyxLQUFLO1FBQ1gsSUFBSSxDQUFDLGFBQWEsR0FBRyxJQUFJLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQztRQUMxRCxJQUFJLENBQUMsY0FBYyxHQUFHLElBQUksQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDO0lBQzlELENBQUM7SUFFTyxVQUFVO1FBQ2hCLElBQUksSUFBSSxDQUFDLFNBQVM7WUFBRSxPQUFPO1FBQzNCLElBQUksQ0FBQyxTQUFTLENBQUMsUUFBUSxDQUFDLEVBQUUsU0FBUyxFQUFFLElBQUksRUFBRSxPQUFPLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQztRQUM1RCxJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDeEMsQ0FBQztJQUVELGVBQWU7UUFDYixJQUFJLENBQUMsVUFBVSxHQUFHLE1BQU0sRUFBRSxDQUFDO1FBQzNCLElBQUksQ0FBQyxXQUFXLEdBQUcsTUFBTSxFQUFFLENBQUMsR0FBRyxDQUFDLENBQUMsRUFBRSxHQUFHLENBQUMsQ0FBQztRQUN4QyxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUM7SUFDZixDQUFDO0lBRUQsUUFBUTtRQUNOLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQztJQUNmLENBQUM7SUFFRCxnQkFBZ0IsQ0FBQyxFQUFPO1FBQ3RCLElBQUksQ0FBQyxhQUFhLEdBQUcsRUFBRSxDQUFDO0lBQzFCLENBQUM7SUFFRCxpQkFBaUIsQ0FBQyxFQUFPO1FBQ3ZCLElBQUksQ0FBQyxjQUFjLEdBQUcsRUFBRSxDQUFDO0lBQzNCLENBQUM7SUFFRCxnQkFBZ0IsQ0FBRSxVQUFtQjtRQUNuQyxJQUFJLENBQUMsU0FBUyxHQUFHLFVBQVUsQ0FBQztJQUM5QixDQUFDO0lBRUQsSUFDSSxLQUFLLENBQUMsS0FBVTtRQUNsQixJQUNFLEtBQUs7WUFDTCxNQUFNLENBQUMsU0FBUyxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsS0FBSyxFQUFFLFdBQVcsQ0FBQztZQUN4RCxNQUFNLENBQUMsU0FBUyxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsS0FBSyxFQUFFLFNBQVMsQ0FBQyxFQUN0RDtZQUNBLElBQUksQ0FBQyxTQUFTLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxDQUFDO1lBQy9CLElBQUksQ0FBQyxHQUFHLENBQUMsYUFBYSxFQUFFLENBQUM7WUFDekIsSUFBSSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxDQUFDO1lBQ3pDLElBQUksQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsQ0FBQztTQUMzQzthQUFNO1lBQ0wsSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDO1NBQ25CO0lBQ0gsQ0FBQztJQUVELElBQUksS0FBSztRQUNQLE9BQU8sSUFBSSxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUM7SUFDOUIsQ0FBQztJQUVELFVBQVUsQ0FBQyxLQUFVO1FBQ25CLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO1FBQ25CLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQzVCLENBQUM7SUFFRCxTQUFTO1FBQ1AsSUFBSSxJQUFJLENBQUMsU0FBUztZQUFFLE9BQU87UUFDM0IsSUFBSSxDQUFDLFVBQVUsQ0FBQyxHQUFHLENBQUMsQ0FBQyxFQUFFLEdBQUcsQ0FBQyxDQUFDO1FBQzVCLElBQUksQ0FBQyxXQUFXLENBQUMsR0FBRyxDQUFDLENBQUMsRUFBRSxHQUFHLENBQUMsQ0FBQztRQUU3QixJQUFJLENBQUMsYUFBYSxHQUFHLElBQUksQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDO1FBQzFELElBQUksQ0FBQyxjQUFjLEdBQUcsSUFBSSxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUM7SUFDOUQsQ0FBQztJQUVELGFBQWE7UUFDWCxJQUFJLElBQUksQ0FBQyxTQUFTO1lBQUUsT0FBTztRQUMzQixJQUFJLENBQUMsVUFBVSxDQUFDLFFBQVEsQ0FBQyxDQUFDLEVBQUUsR0FBRyxDQUFDLENBQUM7UUFDakMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxRQUFRLENBQUMsQ0FBQyxFQUFFLEdBQUcsQ0FBQyxDQUFDO1FBRWxDLElBQUksQ0FBQyxhQUFhLEdBQUcsSUFBSSxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUM7UUFDMUQsSUFBSSxDQUFDLGNBQWMsR0FBRyxJQUFJLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQztJQUM5RCxDQUFDO0lBRUQsVUFBVSxDQUFDLEdBQWtCO1FBQzNCLElBQUksQ0FBQyxHQUFHLEVBQUU7WUFDUixPQUFPLEtBQUssQ0FBQztTQUNkO1FBRUQsT0FBTyxNQUFNLEVBQUUsQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLEtBQUssR0FBRyxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUNsRCxDQUFDO0lBRUQsVUFBVSxDQUFDLEdBQWtCO1FBQzNCLElBQUksQ0FBQyxHQUFHLEVBQUU7WUFDUixPQUFPLEtBQUssQ0FBQztTQUNkO1FBRUQsSUFBSSxlQUFlLEdBQUcsTUFBTSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLFNBQVMsRUFBRSxZQUFZLENBQUMsQ0FBQztRQUMzRSxJQUFJLGFBQWEsR0FBRyxNQUFNLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsT0FBTyxFQUFFLFlBQVksQ0FBQyxDQUFDO1FBRXZFLElBQUksSUFBSSxDQUFDLFNBQVMsQ0FBQyxLQUFLLEVBQUU7WUFDeEIsT0FBTyxlQUFlLENBQUMsY0FBYyxDQUFDLEdBQUcsQ0FBQyxJQUFJLGFBQWEsQ0FBQyxhQUFhLENBQUMsR0FBRyxDQUFDLENBQUM7U0FDaEY7UUFFRCxJQUFJLElBQUksQ0FBQyxTQUFTLENBQUMsR0FBRyxDQUFDLFdBQVcsQ0FBQyxDQUFDLEtBQUssRUFBRTtZQUN6QyxPQUFPLGVBQWUsQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUM7U0FDcEM7SUFDSCxDQUFDO0lBRUQsZUFBZSxDQUFDLEdBQUc7UUFDakIsTUFBTSxFQUFFLFNBQVMsRUFBRSxHQUFHLElBQUksQ0FBQztRQUMzQixNQUFNLEVBQUUsU0FBUyxFQUFFLEdBQUcsU0FBUyxDQUFDLEtBQUssQ0FBQztRQUN0QyxPQUFPLEdBQUcsYUFBSCxHQUFHLHVCQUFILEdBQUcsQ0FBRSxNQUFNLENBQUMsU0FBUyxDQUFDLENBQUM7SUFDaEMsQ0FBQztJQUVELGNBQWMsQ0FBQyxHQUFrQjtRQUMvQixNQUFNLEVBQUUsU0FBUyxFQUFFLEdBQUcsSUFBSSxDQUFDO1FBQzNCLE1BQU0sRUFBRSxPQUFPLEVBQUUsR0FBRyxTQUFTLENBQUMsS0FBSyxDQUFDO1FBQ3BDLE9BQU8sR0FBRyxhQUFILEdBQUcsdUJBQUgsR0FBRyxDQUFFLE1BQU0sQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUM5QixDQUFDO0lBRUQsWUFBWSxDQUFDLEdBQWtCO1FBQzdCLElBQUksSUFBSSxDQUFDLFNBQVM7WUFBRSxPQUFPO1FBQzNCLE1BQU0sRUFBRSxTQUFTLEVBQUUsR0FBRyxJQUFJLENBQUM7UUFDM0IsSUFBSSxZQUFZLEdBQUcsR0FBRyxDQUFDLE1BQU0sQ0FBQyxZQUFZLENBQUMsQ0FBQztRQUU1QyxJQUFJLFNBQVMsQ0FBQyxLQUFLLEVBQUU7WUFDbkIsSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDO1NBQ25CO1FBRUQsSUFBSSxFQUFFLFNBQVMsRUFBRSxPQUFPLEVBQUUsR0FBRyxTQUFTLENBQUMsS0FBSyxDQUFDO1FBQzdDLElBQUksU0FBUyxFQUFFO1lBQ2IsSUFBSSxNQUFNLENBQUMsU0FBUyxDQUFDLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxZQUFZLENBQUMsQ0FBQyxFQUFFO2dCQUNuRCxPQUFPLEdBQUcsU0FBUyxDQUFDO2dCQUNwQixTQUFTLEdBQUcsWUFBWSxDQUFDO2FBQzFCO2lCQUFNO2dCQUNMLE9BQU8sR0FBRyxZQUFZLENBQUM7YUFDeEI7U0FDRjs7WUFBTSxTQUFTLEdBQUcsWUFBWSxDQUFDO1FBRWhDLElBQUksU0FBUyxFQUFFO1lBQ2IsU0FBUyxDQUFDLEdBQUcsQ0FBQyxXQUFXLENBQUMsQ0FBQyxVQUFVLENBQUMsU0FBUyxDQUFDLENBQUM7U0FDbEQ7UUFFRCxJQUFJLE9BQU8sRUFBRTtZQUNYLFNBQVMsQ0FBQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUMsVUFBVSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1NBQzlDO1FBRUQsSUFBSSxDQUFDLFVBQVUsQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDbkMsQ0FBQztJQUVELGlCQUFpQixDQUFDLElBQVk7UUFDNUIsSUFBSSxJQUFJLENBQUMsU0FBUztZQUFFLE9BQU87UUFDM0IsTUFBTSxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsR0FBRyxJQUFJLENBQUM7UUFDbEMsTUFBTSxFQUFFLFNBQVMsRUFBRSxHQUFHLFNBQVMsQ0FBQyxLQUFLLENBQUM7UUFFdEMsTUFBTSxRQUFRLEdBQUcsU0FBUyxJQUFJLEtBQUssQ0FBQztRQUNwQyxNQUFNLE9BQU8sR0FBRyxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUMsR0FBRyxDQUFDLElBQUksRUFBRSxLQUFLLENBQUMsQ0FBQyxNQUFNLENBQUMsWUFBWSxDQUFDLENBQUM7UUFDdkUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxXQUFXLENBQUMsQ0FBQyxVQUFVLENBQUMsUUFBUSxDQUFDLENBQUM7UUFDaEQsU0FBUyxDQUFDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxVQUFVLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDN0MsSUFBSSxDQUFDLFVBQVUsQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDbkMsQ0FBQzs7NEhBMU9VLDhCQUE4QjtnSEFBOUIsOEJBQThCLDBPQVQ5QjtRQUNUO1lBQ0UsT0FBTyxFQUFFLGlCQUFpQjtZQUMxQixXQUFXLEVBQUUsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLDhCQUE4QixDQUFDO1lBQzdELEtBQUssRUFBRSxJQUFJO1NBQ1o7UUFDRCxZQUFZO0tBQ2IsMEJBcEtTOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQTJKVDs0RkFXVSw4QkFBOEI7a0JBeEsxQyxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSwwQkFBMEI7b0JBQ3BDLFFBQVEsRUFBRTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0EySlQ7b0JBQ0QsYUFBYSxFQUFFLGlCQUFpQixDQUFDLElBQUk7b0JBQ3JDLFNBQVMsRUFBRTt3QkFDVDs0QkFDRSxPQUFPLEVBQUUsaUJBQWlCOzRCQUMxQixXQUFXLEVBQUUsVUFBVSxDQUFDLEdBQUcsRUFBRSwrQkFBK0IsQ0FBQzs0QkFDN0QsS0FBSyxFQUFFLElBQUk7eUJBQ1o7d0JBQ0QsWUFBWTtxQkFDYjtpQkFDRjtrSUFFVSxLQUFLO3NCQUFiLEtBQUs7Z0JBQ0csYUFBYTtzQkFBckIsS0FBSztnQkFDRyxJQUFJO3NCQUFaLEtBQUs7Z0JBWUcsV0FBVztzQkFBbkIsS0FBSztnQkFDRyxZQUFZO3NCQUFwQixLQUFLO2dCQUNJLFFBQVE7c0JBQWpCLE1BQU07Z0JBa0dILEtBQUs7c0JBRFIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbIi8qKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4gKiBDb3B5cmlnaHQgTW9ua2V5IEV4Y2hhbmdlLiBBbGwgUmlnaHRzIFJlc2VydmVkXHJcbiAqIFRoaXMgc3R5bGUgZ3VpZGUgd2FzIGRldmVsb3BlZCBieSBNb25rZXkgRXhjaGFuZ2UgVGVhbVxyXG4gKiBNSVQgTGljZW5jZVxyXG4gKioqKioqKioqKioqKioqKioqKioqKioqKiovXHJcbmltcG9ydCB7IEN1cnJlbmN5UGlwZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XHJcbmltcG9ydCB7XHJcbiAgQ29tcG9uZW50LFxyXG4gIFZpZXdFbmNhcHN1bGF0aW9uLFxyXG4gIGZvcndhcmRSZWYsXHJcbiAgT25Jbml0LFxyXG4gIE91dHB1dCxcclxuICBFdmVudEVtaXR0ZXIsXHJcbiAgSW5wdXQsXHJcbiAgQ2hhbmdlRGV0ZWN0b3JSZWYsXHJcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7XHJcbiAgQ29udHJvbFZhbHVlQWNjZXNzb3IsXHJcbiAgRm9ybUJ1aWxkZXIsXHJcbiAgRm9ybUdyb3VwLFxyXG4gIE5HX1ZBTFVFX0FDQ0VTU09SLFxyXG4gIFZhbGlkYXRvcnMsXHJcbn0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xyXG5pbXBvcnQgeyBNb25rZXlVdGlscyB9IGZyb20gJy4uLy4uL2NvcmUvdXRpbHMnO1xyXG5pbXBvcnQgKiBhcyBtb21lbnRfIGZyb20gJ21vbWVudCc7XHJcblxyXG5jb25zdCBtb21lbnQgPSBtb21lbnRfO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdtb25rZXktZGF0ZS1yYW5nZS1waWNrZXInLFxyXG4gIHRlbXBsYXRlOiBgXHJcbiAgICA8bWVjeC1kYXRlLXJhbmdlLXBpY2tlci1ncm91cCBbbmdDbGFzc109XCJ7IGRpc2FibGVkOiBfZGlzYWJsZWQgfVwiIFtpZF09XCJfaWRcIj5cclxuICAgICAgPG1lY3gtZGF0ZS1yYW5nZS1waWNrZXItZ3JvdXAtaGVhZGVyPlxyXG4gICAgICAgIDxsYWJlbD5cclxuICAgICAgICAgIHt7IGxhYmVsIH19XHJcbiAgICAgICAgPC9sYWJlbD5cclxuICAgICAgICA8aGVscGVyPlxyXG4gICAgICAgICAge3sgaGVscGVyTWVzc2FnZSB9fVxyXG4gICAgICAgIDwvaGVscGVyPlxyXG4gICAgICA8L21lY3gtZGF0ZS1yYW5nZS1waWNrZXItZ3JvdXAtaGVhZGVyPlxyXG4gICAgICA8bWVjeC1kYXRlLXJhbmdlLXBpY2tlci1ncm91cC1ib2R5PlxyXG4gICAgICAgIDxtZWN4LWRhdGUtcmFuZ2UtcGlja2VyIGNsYXNzPVwiZmlyc3QtZGF0ZS1yYW5nZVwiPlxyXG4gICAgICAgICAgPG1lY3gtZGF0ZS1yYW5nZS1waWNrZXItaGVhZGVyPlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY2FsZW5kYXItdGl0bGVcIj5cclxuICAgICAgICAgICAgICA8bW9ua2V5LWJ1dHRvblxyXG4gICAgICAgICAgICAgICAgY2xhc3M9XCJjYWxlbmRhci1wcmV2aW91c1wiXHJcbiAgICAgICAgICAgICAgICBjb2xvcj1cInRoZW1lXCJcclxuICAgICAgICAgICAgICAgIGljb249XCJhcnJvdy1sZWZ0LTE2XCJcclxuICAgICAgICAgICAgICAgIHR5cGU9XCJ0ZXJ0aWFyeVwiXHJcbiAgICAgICAgICAgICAgICAoY2xpY2spPVwicHJldmlvdXNNb250aCgpXCJcclxuICAgICAgICAgICAgICAgIHNpemU9XCJzbVwiXHJcbiAgICAgICAgICAgICAgICBbZGlzYWJsZWRdPVwiX2Rpc2FibGVkXCJcclxuICAgICAgICAgICAgICA+XHJcbiAgICAgICAgICAgICAgPC9tb25rZXktYnV0dG9uPlxyXG4gICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJtb250aC15ZWFyLXRpdGxlXCI+XHJcbiAgICAgICAgICAgICAgICB7eyBpMThuPy5tb250aHM/LltfZGF0ZUZpcnN0LmZvcm1hdCgnTScpXSB9fVxyXG4gICAgICAgICAgICAgICAge3sgX2RhdGVGaXJzdC5mb3JtYXQoJ1lZWVknKSB9fVxyXG4gICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgIDxtb25rZXktYnV0dG9uXHJcbiAgICAgICAgICAgICAgICBjbGFzcz1cImNhbGVuZGFyLW5leHRcIlxyXG4gICAgICAgICAgICAgICAgY29sb3I9XCJ0aGVtZVwiXHJcbiAgICAgICAgICAgICAgICBpY29uPVwiYXJyb3ctcmlnaHQtMTZcIlxyXG4gICAgICAgICAgICAgICAgdHlwZT1cInRlcnRpYXJ5XCJcclxuICAgICAgICAgICAgICAgIChjbGljayk9XCJuZXh0TW9udGgoKVwiXHJcbiAgICAgICAgICAgICAgICBzaXplPVwic21cIlxyXG4gICAgICAgICAgICAgICAgW2Rpc2FibGVkXT1cIl9kaXNhYmxlZFwiXHJcbiAgICAgICAgICAgICAgPlxyXG4gICAgICAgICAgICAgIDwvbW9ua2V5LWJ1dHRvbj5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ3ZWVrXCI+XHJcbiAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJ3ZWVrLWRheVwiICpuZ0Zvcj1cImxldCBkYXkgb2YgWzEsIDIsIDMsIDQsIDUsIDYsIDddXCI+XHJcbiAgICAgICAgICAgICAgICB7eyBpMThuPy5kYXlzPy5bZGF5XX19XHJcbiAgICAgICAgICAgICAgPC9zcGFuPlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgIDwvbWVjeC1kYXRlLXJhbmdlLXBpY2tlci1oZWFkZXI+XHJcbiAgICAgICAgICA8bWVjeC1kYXRlLXJhbmdlLXBpY2tlci1ib2R5PlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwibW9udGgtd2Vla1wiICpuZ0Zvcj1cImxldCB3ZWVrIG9mIF9kYXlzQXJyRmlyc3RcIj5cclxuICAgICAgICAgICAgICA8ZGl2XHJcbiAgICAgICAgICAgICAgICBjbGFzcz1cIm1vbnRoLWRheVwiXHJcbiAgICAgICAgICAgICAgICAoY2xpY2spPVwic2VsZWN0ZWREYXRlKGRheSlcIlxyXG4gICAgICAgICAgICAgICAgW25nQ2xhc3NdPVwie1xyXG4gICAgICAgICAgICAgICAgICBpbmFjdGl2ZTogIWRheSxcclxuICAgICAgICAgICAgICAgICAgc2VsZWN0ZWQ6IGlzU2VsZWN0ZWQoZGF5KSxcclxuICAgICAgICAgICAgICAgICAgdG9kYXk6IHRvZGF5Q2hlY2soZGF5KSxcclxuICAgICAgICAgICAgICAgICAgJ2ZpcnN0LXNlbGVjdGVkJzogaXNGaXJzdFNlbGVjdGVkKGRheSksXHJcbiAgICAgICAgICAgICAgICAgICdsYXN0LXNlbGVjdGVkJzogaXNMYXN0U2VsZWN0ZWQoZGF5KVxyXG4gICAgICAgICAgICAgICAgfVwiXHJcbiAgICAgICAgICAgICAgICAqbmdGb3I9XCJsZXQgZGF5IG9mIHdlZWtcIlxyXG4gICAgICAgICAgICAgICAgI2Rpdk9uZVxyXG4gICAgICAgICAgICAgID5cclxuICAgICAgICAgICAgICAgIHt7IGRheT8uZGF0ZSgpIH19XHJcbiAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgPC9tZWN4LWRhdGUtcmFuZ2UtcGlja2VyLWJvZHk+XHJcbiAgICAgICAgPC9tZWN4LWRhdGUtcmFuZ2UtcGlja2VyPlxyXG5cclxuICAgICAgICA8bWVjeC1kYXRlLXJhbmdlLXBpY2tlciBjbGFzcz1cInNlY29uZC1kYXRlLXJhbmdlXCI+XHJcbiAgICAgICAgICA8bWVjeC1kYXRlLXJhbmdlLXBpY2tlci1oZWFkZXI+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjYWxlbmRhci10aXRsZVwiPlxyXG4gICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJtb250aC15ZWFyLXRpdGxlXCI+XHJcbiAgICAgICAgICAgICAgICB7eyBpMThuPy5tb250aHM/LltfZGF0ZVNlY29uZC5mb3JtYXQoJ00nKV0gfX1cclxuICAgICAgICAgICAgICAgIHt7IF9kYXRlU2Vjb25kLmZvcm1hdCgnWVlZWScpIH19XHJcbiAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgPG1vbmtleS1idXR0b25cclxuICAgICAgICAgICAgICAgIGNsYXNzPVwiY2FsZW5kYXItcHJldmlvdXNcIlxyXG4gICAgICAgICAgICAgICAgY29sb3I9XCJ0aGVtZVwiXHJcbiAgICAgICAgICAgICAgICBpY29uPVwiYXJyb3ctcmlnaHQtMTZcIlxyXG4gICAgICAgICAgICAgICAgdHlwZT1cInRlcnRpYXJ5XCJcclxuICAgICAgICAgICAgICAgIChjbGljayk9XCJuZXh0TW9udGgoKVwiXHJcbiAgICAgICAgICAgICAgICBzaXplPVwic21cIlxyXG4gICAgICAgICAgICAgICAgW2Rpc2FibGVkXT1cIl9kaXNhYmxlZFwiXHJcbiAgICAgICAgICAgICAgPlxyXG4gICAgICAgICAgICAgIDwvbW9ua2V5LWJ1dHRvbj5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ3ZWVrXCI+XHJcbiAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJ3ZWVrLWRheVwiICpuZ0Zvcj1cImxldCBkYXkgb2YgWzEsIDIsIDMsIDQsIDUsIDYsIDddXCI+XHJcbiAgICAgICAgICAgICAgICB7eyBpMThuPy5kYXlzPy5bZGF5XX19XHJcbiAgICAgICAgICAgICAgPC9zcGFuPlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgIDwvbWVjeC1kYXRlLXJhbmdlLXBpY2tlci1oZWFkZXI+XHJcbiAgICAgICAgICA8bWVjeC1kYXRlLXJhbmdlLXBpY2tlci1ib2R5PlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwibW9udGgtd2Vla1wiICpuZ0Zvcj1cImxldCB3ZWVrIG9mIF9kYXlzQXJyU2Vjb25kXCI+XHJcbiAgICAgICAgICAgICAgPGRpdlxyXG4gICAgICAgICAgICAgICAgY2xhc3M9XCJtb250aC1kYXlcIlxyXG4gICAgICAgICAgICAgICAgKGNsaWNrKT1cInNlbGVjdGVkRGF0ZShkYXkpXCJcclxuICAgICAgICAgICAgICAgIFtuZ0NsYXNzXT1cIntcclxuICAgICAgICAgICAgICAgICAgaW5hY3RpdmU6ICFkYXksXHJcbiAgICAgICAgICAgICAgICAgIHNlbGVjdGVkOiBpc1NlbGVjdGVkKGRheSksXHJcbiAgICAgICAgICAgICAgICAgIHRvZGF5OiB0b2RheUNoZWNrKGRheSksXHJcbiAgICAgICAgICAgICAgICAgICdmaXJzdC1zZWxlY3RlZCc6IGlzRmlyc3RTZWxlY3RlZChkYXkpLFxyXG4gICAgICAgICAgICAgICAgICAnbGFzdC1zZWxlY3RlZCc6IGlzTGFzdFNlbGVjdGVkKGRheSlcclxuICAgICAgICAgICAgICAgIH1cIlxyXG4gICAgICAgICAgICAgICAgKm5nRm9yPVwibGV0IGRheSBvZiB3ZWVrXCJcclxuICAgICAgICAgICAgICA+XHJcbiAgICAgICAgICAgICAgICB7eyBkYXk/LmRhdGUoKSB9fVxyXG4gICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgIDwvbWVjeC1kYXRlLXJhbmdlLXBpY2tlci1ib2R5PlxyXG4gICAgICAgIDwvbWVjeC1kYXRlLXJhbmdlLXBpY2tlcj5cclxuICAgICAgPC9tZWN4LWRhdGUtcmFuZ2UtcGlja2VyLWdyb3VwLWJvZHk+XHJcbiAgICAgIDxtZWN4LWRhdGUtcmFuZ2UtcGlja2VyLWdyb3VwLWluZm8+XHJcbiAgICAgICAgPGluZm8+XHJcbiAgICAgICAgICB7eyBpbmZvTWVzc2FnZSB9fVxyXG4gICAgICAgIDwvaW5mbz5cclxuICAgICAgICA8ZXJyb3I+XHJcbiAgICAgICAgICB7eyBlcnJvck1lc3NhZ2UgfX1cclxuICAgICAgICA8L2Vycm9yPlxyXG4gICAgICA8L21lY3gtZGF0ZS1yYW5nZS1waWNrZXItZ3JvdXAtaW5mbz5cclxuICAgICAgPG1lY3gtZGF0ZS1yYW5nZS1waWNrZXItZ3JvdXAtYWN0aW9uIFtjbGFzcy5lcnJvcl09XCJlcnJvck1lc3NhZ2U/LnRyaW0oKVwiPlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJhY3Rpb24tZGF5c1wiPlxyXG4gICAgICAgICAgPG1vbmtleS1idXR0b25cclxuICAgICAgICAgICAgY29sb3I9XCJ0aGVtZVwiXHJcbiAgICAgICAgICAgIHR5cGU9XCJzZWNvbmRhcnlcIlxyXG4gICAgICAgICAgICAoY2xpY2spPVwic2VsZWN0UmFuZ2VPZkRheXMoMzApXCJcclxuICAgICAgICAgICAgW2Rpc2FibGVkXT1cIl9kaXNhYmxlZFwiXHJcbiAgICAgICAgICA+XHJcbiAgICAgICAgICAgIHt7IGkxOG4/LmFjdGlvbnM/LlsnMzAnXSB9fVxyXG4gICAgICAgICAgPC9tb25rZXktYnV0dG9uPlxyXG4gICAgICAgICAgPG1vbmtleS1idXR0b25cclxuICAgICAgICAgICAgY29sb3I9XCJ0aGVtZVwiXHJcbiAgICAgICAgICAgIHR5cGU9XCJzZWNvbmRhcnlcIlxyXG4gICAgICAgICAgICAoY2xpY2spPVwic2VsZWN0UmFuZ2VPZkRheXMoNjApXCJcclxuICAgICAgICAgICAgW2Rpc2FibGVkXT1cIl9kaXNhYmxlZFwiXHJcbiAgICAgICAgICA+XHJcbiAgICAgICAgICAgIHt7IGkxOG4/LmFjdGlvbnM/LlsnNjAnXSB9fVxyXG4gICAgICAgICAgPC9tb25rZXktYnV0dG9uPlxyXG4gICAgICAgICAgPG1vbmtleS1idXR0b25cclxuICAgICAgICAgICAgY29sb3I9XCJ0aGVtZVwiXHJcbiAgICAgICAgICAgIHR5cGU9XCJzZWNvbmRhcnlcIlxyXG4gICAgICAgICAgICAoY2xpY2spPVwic2VsZWN0UmFuZ2VPZkRheXMoOTApXCJcclxuICAgICAgICAgICAgW2Rpc2FibGVkXT1cIl9kaXNhYmxlZFwiXHJcbiAgICAgICAgICA+XHJcbiAgICAgICAgICAgIHt7IGkxOG4/LmFjdGlvbnM/LlsnOTAnXSB9fVxyXG4gICAgICAgICAgPC9tb25rZXktYnV0dG9uPlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDxtb25rZXktYnV0dG9uXHJcbiAgICAgICAgICBjb2xvcj1cInRoZW1lXCJcclxuICAgICAgICAgIHR5cGU9XCJwcmltYXJ5XCJcclxuICAgICAgICAgIChjbGljayk9XCJuYXZpZ2F0ZVRvVG9kYXkoKVwiXHJcbiAgICAgICAgICBbZGlzYWJsZWRdPVwiX2Rpc2FibGVkXCJcclxuICAgICAgICA+XHJcbiAgICAgICAgICB7eyBpMThuPy50b2RheSB9fVxyXG4gICAgICAgIDwvbW9ua2V5LWJ1dHRvbj5cclxuICAgICAgPC9tZWN4LWRhdGUtcmFuZ2UtcGlja2VyLWdyb3VwLWFjdGlvbj5cclxuICAgIDwvbWVjeC1kYXRlLXJhbmdlLXBpY2tlci1ncm91cD5cclxuICBgLFxyXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXHJcbiAgcHJvdmlkZXJzOiBbXHJcbiAgICB7XHJcbiAgICAgIHByb3ZpZGU6IE5HX1ZBTFVFX0FDQ0VTU09SLFxyXG4gICAgICB1c2VFeGlzdGluZzogZm9yd2FyZFJlZigoKSA9PiBNb25rZXlEYXRlUmFuZ2VQaWNrZXJDb21wb25lbnQpLFxyXG4gICAgICBtdWx0aTogdHJ1ZSxcclxuICAgIH0sXHJcbiAgICBDdXJyZW5jeVBpcGUsXHJcbiAgXSxcclxufSlcclxuZXhwb3J0IGNsYXNzIE1vbmtleURhdGVSYW5nZVBpY2tlckNvbXBvbmVudCBpbXBsZW1lbnRzIENvbnRyb2xWYWx1ZUFjY2Vzc29yLCBPbkluaXQge1xyXG4gIEBJbnB1dCgpIGxhYmVsOiBzdHJpbmc7XHJcbiAgQElucHV0KCkgaGVscGVyTWVzc2FnZTogc3RyaW5nID0gJyc7XHJcbiAgQElucHV0KCkgaTE4bjoge1xyXG4gICAgbW9udGhzOiB7XHJcbiAgICAgIFtzOiBzdHJpbmddOiBzdHJpbmc7XHJcbiAgICB9O1xyXG4gICAgZGF5czoge1xyXG4gICAgICBbczogc3RyaW5nXTogc3RyaW5nO1xyXG4gICAgfTtcclxuICAgIGFjdGlvbnM6IHtcclxuICAgICAgW3M6IHN0cmluZ106IHN0cmluZztcclxuICAgIH07XHJcbiAgICB0b2RheTogc3RyaW5nO1xyXG4gIH07XHJcbiAgQElucHV0KCkgaW5mb01lc3NhZ2U6IHN0cmluZztcclxuICBASW5wdXQoKSBlcnJvck1lc3NhZ2U6IHN0cmluZztcclxuICBAT3V0cHV0KCkgb25DaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPGFueT4oKTtcclxuXHJcbiAgcHJpdmF0ZSB0b2RheSA9IG1vbWVudCgpLmZvcm1hdCgnWVlZWS1NTS1ERCcpO1xyXG4gIHByaXZhdGUgb25Nb2RlbENoYW5nZSA9ICh2YWx1ZTogYW55KSA9PiB7fTtcclxuICBwcml2YXRlIG9uTW9kZWxUb3VjaGVkID0gKHZhbHVlOiBhbnkpID0+IHt9O1xyXG5cclxuICBwdWJsaWMgX2RhdGVGaXJzdCA9IG1vbWVudCgpO1xyXG4gIHB1YmxpYyBfZGF0ZVNlY29uZCA9IG1vbWVudCgpLmFkZCgxLCAnTScpO1xyXG4gIHB1YmxpYyBfaWQ6IHN0cmluZyA9IGBtZWN4LWRhdGUtcmFuZ2UtcGlja2VyLSR7TW9ua2V5VXRpbHMuZ2V0UmFuZG9tU3RyaW5nKDEwKX1gO1xyXG4gIHB1YmxpYyBfZGF5c0FyckZpcnN0ID0gW107XHJcbiAgcHVibGljIF9kYXlzQXJyU2Vjb25kID0gW107XHJcbiAgcHVibGljIF9kYXRlRm9ybTogRm9ybUdyb3VwO1xyXG4gIHB1YmxpYyBfZGlzYWJsZWQ6IGJvb2xlYW4gPSBmYWxzZTtcclxuXHJcbiAgY29uc3RydWN0b3IocHJpdmF0ZSBmYjogRm9ybUJ1aWxkZXIsIHByaXZhdGUgY2RyOiBDaGFuZ2VEZXRlY3RvclJlZikge1xyXG4gICAgdGhpcy5pbml0RGF0ZVJhbmdlKCk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGluaXREYXRlUmFuZ2UoKSB7XHJcbiAgICByZXR1cm4gKHRoaXMuX2RhdGVGb3JtID0gdGhpcy5mYi5ncm91cCh7XHJcbiAgICAgIHN0YXJ0RGF0ZTogW251bGwsIFZhbGlkYXRvcnMucmVxdWlyZWRdLFxyXG4gICAgICBlbmREYXRlOiBbbnVsbCwgVmFsaWRhdG9ycy5yZXF1aXJlZF0sXHJcbiAgICB9KSk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGNyZWF0ZUNhbGVuZGFyKG1vbnRoOiBtb21lbnQuTW9tZW50KSB7XHJcbiAgICBsZXQgZmlyc3REYXkgPSBtb21lbnQobW9udGgpLnN0YXJ0T2YoJ00nKTtcclxuICAgIGxldCBsYXN0RGF5ID0gbW9tZW50KG1vbnRoKS5lbmRPZignTScpO1xyXG4gICAgbGV0IGRheXMgPSBBcnJheS5hcHBseShudWxsLCB7IGxlbmd0aDogbW9udGguZGF5c0luTW9udGgoKSB9KVxyXG4gICAgICAubWFwKE51bWJlci5jYWxsLCBOdW1iZXIpXHJcbiAgICAgIC5tYXAoKG46IG51bWJlcikgPT4ge1xyXG4gICAgICAgIHJldHVybiBtb21lbnQoZmlyc3REYXkpLmFkZChuLCAnZCcpO1xyXG4gICAgICB9KTtcclxuXHJcbiAgICBsZXQgbiA9IDA7XHJcbiAgICB3aGlsZSAobiA8IGZpcnN0RGF5LndlZWtkYXkoKSkge1xyXG4gICAgICBkYXlzLnVuc2hpZnQobnVsbCk7XHJcbiAgICAgIG4rKztcclxuICAgIH1cclxuICAgIG4gPSAwO1xyXG4gICAgd2hpbGUgKG4gPCA3IC0gbGFzdERheS53ZWVrZGF5KCkpIHtcclxuICAgICAgZGF5cy5wdXNoKG51bGwpO1xyXG4gICAgICBuKys7XHJcbiAgICB9XHJcblxyXG4gICAgbGV0IGluZGV4ID0gMTtcclxuICAgIGxldCBncm91cCA9IFtdO1xyXG4gICAgbGV0IGdyb3VwZWQgPSBbXTtcclxuXHJcbiAgICBPYmplY3QuZW50cmllcyhkYXlzKS5tYXAoKFtrZXksIHZhbHVlXTogW3N0cmluZywgYW55XSkgPT4ge1xyXG4gICAgICBpZiAoaW5kZXggPiA3KSB7XHJcbiAgICAgICAgaW5kZXggPSAxO1xyXG4gICAgICAgIGdyb3VwZWQucHVzaChncm91cCk7XHJcbiAgICAgICAgZ3JvdXAgPSBbXTtcclxuICAgICAgfVxyXG5cclxuICAgICAgZ3JvdXAucHVzaCh2YWx1ZSk7XHJcbiAgICAgIGluZGV4Kys7XHJcbiAgICB9KTtcclxuICAgIGdyb3VwZWQucHVzaChncm91cCk7XHJcblxyXG4gICAgcmV0dXJuIGdyb3VwZWQ7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGJ1aWxkKCkge1xyXG4gICAgdGhpcy5fZGF5c0FyckZpcnN0ID0gdGhpcy5jcmVhdGVDYWxlbmRhcih0aGlzLl9kYXRlRmlyc3QpO1xyXG4gICAgdGhpcy5fZGF5c0FyclNlY29uZCA9IHRoaXMuY3JlYXRlQ2FsZW5kYXIodGhpcy5fZGF0ZVNlY29uZCk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGNsZWFyRGF0ZXMoKSB7XHJcbiAgICBpZiAodGhpcy5fZGlzYWJsZWQpIHJldHVybjtcclxuICAgIHRoaXMuX2RhdGVGb3JtLnNldFZhbHVlKHsgc3RhcnREYXRlOiBudWxsLCBlbmREYXRlOiBudWxsIH0pO1xyXG4gICAgdGhpcy53cml0ZVZhbHVlKHRoaXMuX2RhdGVGb3JtLnZhbHVlKTtcclxuICB9XHJcblxyXG4gIG5hdmlnYXRlVG9Ub2RheSgpIHtcclxuICAgIHRoaXMuX2RhdGVGaXJzdCA9IG1vbWVudCgpO1xyXG4gICAgdGhpcy5fZGF0ZVNlY29uZCA9IG1vbWVudCgpLmFkZCgxLCAnTScpO1xyXG4gICAgdGhpcy5idWlsZCgpO1xyXG4gIH1cclxuXHJcbiAgbmdPbkluaXQoKSB7XHJcbiAgICB0aGlzLmJ1aWxkKCk7XHJcbiAgfVxyXG5cclxuICByZWdpc3Rlck9uQ2hhbmdlKGZuOiBhbnkpOiB2b2lkIHtcclxuICAgIHRoaXMub25Nb2RlbENoYW5nZSA9IGZuO1xyXG4gIH1cclxuXHJcbiAgcmVnaXN0ZXJPblRvdWNoZWQoZm46IGFueSk6IHZvaWQge1xyXG4gICAgdGhpcy5vbk1vZGVsVG91Y2hlZCA9IGZuO1xyXG4gIH1cclxuXHJcbiAgc2V0RGlzYWJsZWRTdGF0ZT8oaXNEaXNhYmxlZDogYm9vbGVhbik6IHZvaWQge1xyXG4gICAgdGhpcy5fZGlzYWJsZWQgPSBpc0Rpc2FibGVkO1xyXG4gIH1cclxuXHJcbiAgQElucHV0KClcclxuICBzZXQgdmFsdWUodmFsdWU6IGFueSkge1xyXG4gICAgaWYgKFxyXG4gICAgICB2YWx1ZSAmJlxyXG4gICAgICBPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwodmFsdWUsICdzdGFydERhdGUnKSAmJlxyXG4gICAgICBPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwodmFsdWUsICdlbmREYXRlJylcclxuICAgICkge1xyXG4gICAgICB0aGlzLl9kYXRlRm9ybS5zZXRWYWx1ZSh2YWx1ZSk7XHJcbiAgICAgIHRoaXMuY2RyLmRldGVjdENoYW5nZXMoKTtcclxuICAgICAgdGhpcy5vbk1vZGVsQ2hhbmdlKHRoaXMuX2RhdGVGb3JtLnZhbHVlKTtcclxuICAgICAgdGhpcy5vbk1vZGVsVG91Y2hlZCh0aGlzLl9kYXRlRm9ybS52YWx1ZSk7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICB0aGlzLmNsZWFyRGF0ZXMoKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIGdldCB2YWx1ZSgpOiBhbnkge1xyXG4gICAgcmV0dXJuIHRoaXMuX2RhdGVGb3JtLnZhbHVlO1xyXG4gIH1cclxuXHJcbiAgd3JpdGVWYWx1ZSh2YWx1ZTogYW55KTogdm9pZCB7XHJcbiAgICB0aGlzLnZhbHVlID0gdmFsdWU7XHJcbiAgICB0aGlzLm9uQ2hhbmdlLm5leHQodmFsdWUpO1xyXG4gIH1cclxuXHJcbiAgbmV4dE1vbnRoKCkge1xyXG4gICAgaWYgKHRoaXMuX2Rpc2FibGVkKSByZXR1cm47XHJcbiAgICB0aGlzLl9kYXRlRmlyc3QuYWRkKDEsICdNJyk7XHJcbiAgICB0aGlzLl9kYXRlU2Vjb25kLmFkZCgxLCAnTScpO1xyXG5cclxuICAgIHRoaXMuX2RheXNBcnJGaXJzdCA9IHRoaXMuY3JlYXRlQ2FsZW5kYXIodGhpcy5fZGF0ZUZpcnN0KTtcclxuICAgIHRoaXMuX2RheXNBcnJTZWNvbmQgPSB0aGlzLmNyZWF0ZUNhbGVuZGFyKHRoaXMuX2RhdGVTZWNvbmQpO1xyXG4gIH1cclxuXHJcbiAgcHJldmlvdXNNb250aCgpIHtcclxuICAgIGlmICh0aGlzLl9kaXNhYmxlZCkgcmV0dXJuO1xyXG4gICAgdGhpcy5fZGF0ZUZpcnN0LnN1YnRyYWN0KDEsICdNJyk7XHJcbiAgICB0aGlzLl9kYXRlU2Vjb25kLnN1YnRyYWN0KDEsICdNJyk7XHJcblxyXG4gICAgdGhpcy5fZGF5c0FyckZpcnN0ID0gdGhpcy5jcmVhdGVDYWxlbmRhcih0aGlzLl9kYXRlRmlyc3QpO1xyXG4gICAgdGhpcy5fZGF5c0FyclNlY29uZCA9IHRoaXMuY3JlYXRlQ2FsZW5kYXIodGhpcy5fZGF0ZVNlY29uZCk7XHJcbiAgfVxyXG5cclxuICB0b2RheUNoZWNrKGRheTogbW9tZW50Lk1vbWVudCkge1xyXG4gICAgaWYgKCFkYXkpIHtcclxuICAgICAgcmV0dXJuIGZhbHNlO1xyXG4gICAgfVxyXG5cclxuICAgIHJldHVybiBtb21lbnQoKS5mb3JtYXQoJ0wnKSA9PT0gZGF5LmZvcm1hdCgnTCcpO1xyXG4gIH1cclxuXHJcbiAgaXNTZWxlY3RlZChkYXk6IG1vbWVudC5Nb21lbnQpIHtcclxuICAgIGlmICghZGF5KSB7XHJcbiAgICAgIHJldHVybiBmYWxzZTtcclxuICAgIH1cclxuXHJcbiAgICBsZXQgc3RhcnREYXRlTW9tZW50ID0gbW9tZW50KHRoaXMuX2RhdGVGb3JtLnZhbHVlLnN0YXJ0RGF0ZSwgJ1lZWVktTU0tREQnKTtcclxuICAgIGxldCBlbmREYXRlTW9tZW50ID0gbW9tZW50KHRoaXMuX2RhdGVGb3JtLnZhbHVlLmVuZERhdGUsICdZWVlZLU1NLUREJyk7XHJcblxyXG4gICAgaWYgKHRoaXMuX2RhdGVGb3JtLnZhbGlkKSB7XHJcbiAgICAgIHJldHVybiBzdGFydERhdGVNb21lbnQuaXNTYW1lT3JCZWZvcmUoZGF5KSAmJiBlbmREYXRlTW9tZW50LmlzU2FtZU9yQWZ0ZXIoZGF5KTtcclxuICAgIH1cclxuXHJcbiAgICBpZiAodGhpcy5fZGF0ZUZvcm0uZ2V0KCdzdGFydERhdGUnKS52YWxpZCkge1xyXG4gICAgICByZXR1cm4gc3RhcnREYXRlTW9tZW50LmlzU2FtZShkYXkpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgaXNGaXJzdFNlbGVjdGVkKGRheSkge1xyXG4gICAgY29uc3QgeyBfZGF0ZUZvcm0gfSA9IHRoaXM7XHJcbiAgICBjb25zdCB7IHN0YXJ0RGF0ZSB9ID0gX2RhdGVGb3JtLnZhbHVlO1xyXG4gICAgcmV0dXJuIGRheT8uaXNTYW1lKHN0YXJ0RGF0ZSk7XHJcbiAgfVxyXG5cclxuICBpc0xhc3RTZWxlY3RlZChkYXk6IG1vbWVudC5Nb21lbnQpIHtcclxuICAgIGNvbnN0IHsgX2RhdGVGb3JtIH0gPSB0aGlzO1xyXG4gICAgY29uc3QgeyBlbmREYXRlIH0gPSBfZGF0ZUZvcm0udmFsdWU7XHJcbiAgICByZXR1cm4gZGF5Py5pc1NhbWUoZW5kRGF0ZSk7XHJcbiAgfVxyXG5cclxuICBzZWxlY3RlZERhdGUoZGF5OiBtb21lbnQuTW9tZW50KSB7XHJcbiAgICBpZiAodGhpcy5fZGlzYWJsZWQpIHJldHVybjtcclxuICAgIGNvbnN0IHsgX2RhdGVGb3JtIH0gPSB0aGlzO1xyXG4gICAgbGV0IGRheUZvcm1hdHRlZCA9IGRheS5mb3JtYXQoJ1lZWVktTU0tREQnKTtcclxuXHJcbiAgICBpZiAoX2RhdGVGb3JtLnZhbGlkKSB7XHJcbiAgICAgIHRoaXMuY2xlYXJEYXRlcygpO1xyXG4gICAgfVxyXG5cclxuICAgIGxldCB7IHN0YXJ0RGF0ZSwgZW5kRGF0ZSB9ID0gX2RhdGVGb3JtLnZhbHVlO1xyXG4gICAgaWYgKHN0YXJ0RGF0ZSkge1xyXG4gICAgICBpZiAobW9tZW50KHN0YXJ0RGF0ZSkuaXNBZnRlcihtb21lbnQoZGF5Rm9ybWF0dGVkKSkpIHtcclxuICAgICAgICBlbmREYXRlID0gc3RhcnREYXRlO1xyXG4gICAgICAgIHN0YXJ0RGF0ZSA9IGRheUZvcm1hdHRlZDtcclxuICAgICAgfSBlbHNlIHtcclxuICAgICAgICBlbmREYXRlID0gZGF5Rm9ybWF0dGVkO1xyXG4gICAgICB9XHJcbiAgICB9IGVsc2Ugc3RhcnREYXRlID0gZGF5Rm9ybWF0dGVkO1xyXG5cclxuICAgIGlmIChzdGFydERhdGUpIHtcclxuICAgICAgX2RhdGVGb3JtLmdldCgnc3RhcnREYXRlJykucGF0Y2hWYWx1ZShzdGFydERhdGUpO1xyXG4gICAgfVxyXG5cclxuICAgIGlmIChlbmREYXRlKSB7XHJcbiAgICAgIF9kYXRlRm9ybS5nZXQoJ2VuZERhdGUnKS5wYXRjaFZhbHVlKGVuZERhdGUpO1xyXG4gICAgfVxyXG5cclxuICAgIHRoaXMud3JpdGVWYWx1ZShfZGF0ZUZvcm0udmFsdWUpO1xyXG4gIH1cclxuXHJcbiAgc2VsZWN0UmFuZ2VPZkRheXMoZGF5czogbnVtYmVyKSB7XHJcbiAgICBpZiAodGhpcy5fZGlzYWJsZWQpIHJldHVybjtcclxuICAgIGNvbnN0IHsgX2RhdGVGb3JtLCB0b2RheSB9ID0gdGhpcztcclxuICAgIGNvbnN0IHsgc3RhcnREYXRlIH0gPSBfZGF0ZUZvcm0udmFsdWU7XHJcblxyXG4gICAgY29uc3QgZmlyc3REYXkgPSBzdGFydERhdGUgfHwgdG9kYXk7XHJcbiAgICBjb25zdCBsYXN0RGF5ID0gbW9tZW50KGZpcnN0RGF5KS5hZGQoZGF5cywgJ2RheScpLmZvcm1hdCgnWVlZWS1NTS1ERCcpO1xyXG4gICAgX2RhdGVGb3JtLmdldCgnc3RhcnREYXRlJykucGF0Y2hWYWx1ZShmaXJzdERheSk7XHJcbiAgICBfZGF0ZUZvcm0uZ2V0KCdlbmREYXRlJykucGF0Y2hWYWx1ZShsYXN0RGF5KTtcclxuICAgIHRoaXMud3JpdGVWYWx1ZShfZGF0ZUZvcm0udmFsdWUpO1xyXG4gIH1cclxufVxyXG4iXX0=
|
|
@@ -129,7 +129,7 @@ export class MonkeyInputComponent {
|
|
|
129
129
|
const inputChar = String.fromCharCode(event.charCode);
|
|
130
130
|
if (this.currency || this.onlyNumber || this.percent) {
|
|
131
131
|
pattern = /[0-9]/;
|
|
132
|
-
if (inputChar === '0' && !this.replaceZero(cmp)) {
|
|
132
|
+
if (!this.onlyNumber && inputChar === '0' && !this.replaceZero(cmp)) {
|
|
133
133
|
event.preventDefault();
|
|
134
134
|
return;
|
|
135
135
|
}
|
|
@@ -381,4 +381,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.14", ngImpo
|
|
|
381
381
|
type: HostListener,
|
|
382
382
|
args: ['click']
|
|
383
383
|
}] } });
|
|
384
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5wdXQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbW9ua2V5LXN0eWxlLWd1aWRlL3NyYy9saWIvY29tcG9uZW50cy9pbnB1dC9pbnB1dC5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7NEJBSTRCO0FBQzVCLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQ0wsU0FBUyxFQUNULGlCQUFpQixFQUNqQixLQUFLLEVBQ0wsVUFBVSxFQUNWLFlBQVksRUFHWixNQUFNLEVBQ04sWUFBWSxFQUNaLFNBQVMsR0FFVixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQXdCLGlCQUFpQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFekUsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGtCQUFrQixDQUFDOzs7Ozs7O0FBaUcvQyxNQUFNLE9BQU8sb0JBQW9CO0lBdUMvQixZQUNVLFlBQTBCLEVBQzFCLGVBQWdELEVBQ2hELEdBQXNCO1FBRnRCLGlCQUFZLEdBQVosWUFBWSxDQUFjO1FBQzFCLG9CQUFlLEdBQWYsZUFBZSxDQUFpQztRQUNoRCxRQUFHLEdBQUgsR0FBRyxDQUFtQjtRQXpDdkIsU0FBSSxHQUFXLGNBQWMsV0FBVyxDQUFDLGVBQWUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDO1FBRS9ELGtCQUFhLEdBQVcsRUFBRSxDQUFDO1FBQzNCLGdCQUFXLEdBQVcsRUFBRSxDQUFDO1FBT3pCLGNBQVMsR0FBVyxHQUFHLENBQUM7UUFReEIsaUJBQVksR0FBRyxLQUFLLENBQUM7UUFDcEIsYUFBUSxHQUFHLElBQUksWUFBWSxFQUFPLENBQUM7UUFJckMsa0JBQWEsR0FBRyxDQUFDLEtBQVUsRUFBRSxFQUFFLEdBQUUsQ0FBQyxDQUFDO1FBQ25DLG1CQUFjLEdBQUcsQ0FBQyxLQUFVLEVBQUUsRUFBRSxHQUFFLENB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aUxBRVUsSUFBSTtzQkFBWixLQUFLO2dCQUNHLEtBQUs7c0JBQWIsS0FBSztnQkFDRyxhQUFhO3NCQUFyQixLQUFLO2dCQUNHLFdBQVc7c0JBQW5CLEtBQUs7Z0JBQ0csSUFBSTtzQkFBWixLQUFLO2dCQUNHLElBQUk7c0JBQVosS0FBSztnQkFDRyxXQUFXO3NCQUFuQixLQUFLO2dCQUNHLFlBQVk7c0JBQXBCLEtBQUs7Z0JBQ0csSUFBSTtzQkFBWixLQUFLO2dCQUNHLE1BQU07c0JBQWQsS0FBSztnQkFDRyxTQUFTO3NCQUFqQixLQUFLO2dCQUNHLFVBQVU7c0JBQWxCLEtBQUs7Z0JBQ0csZ0JBQWdCO3NCQUF4QixLQUFLO2dCQUNHLFNBQVM7c0JBQWpCLEtBQUs7Z0JBQ0csU0FBUztzQkFBakIsS0FBSztnQkFDRyxVQUFVO3NCQUFsQixLQUFLO2dCQUNHLFFBQVE7c0JBQWhCLEtBQUs7Z0JBQ0csT0FBTztzQkFBZixLQUFLO2dCQUNHLFlBQVk7c0JBQXBCLEtBQUs7Z0JBQ0ksUUFBUTtzQkFBakIsTUFBTTtnQkFpQlAsV0FBVztzQkFIVixTQUFTO3VCQUFDLGFBQWEsRUFBRTt3QkFDeEIsTUFBTSxFQUFFLElBQUk7cUJBQ2I7Z0JBK0VHLEtBQUs7c0JBRFIsS0FBSztnQkErQk4sT0FBTztzQkFETixZQUFZO3VCQUFDLE9BQU8iLCJzb3VyY2VzQ29udGVudCI6WyIvKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuICogQ29weXJpZ2h0IE1vbmtleSBFeGNoYW5nZS4gQWxsIFJpZ2h0cyBSZXNlcnZlZFxyXG4gKiBUaGlzIHN0eWxlIGd1aWRlIHdhcyBkZXZlbG9wZWQgYnkgTW9ua2V5IEV4Y2hhbmdlIFRlYW1cclxuICogTUlUIExpY2VuY2VcclxuICoqKioqKioqKioqKioqKioqKioqKioqKioqL1xyXG5pbXBvcnQgeyBDdXJyZW5jeVBpcGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xyXG5pbXBvcnQge1xyXG4gIENvbXBvbmVudCxcclxuICBWaWV3RW5jYXBzdWxhdGlvbixcclxuICBJbnB1dCxcclxuICBmb3J3YXJkUmVmLFxyXG4gIEhvc3RMaXN0ZW5lcixcclxuICBPbkluaXQsXHJcbiAgRWxlbWVudFJlZixcclxuICBPdXRwdXQsXHJcbiAgRXZlbnRFbWl0dGVyLFxyXG4gIFZpZXdDaGlsZCxcclxuICBDaGFuZ2VEZXRlY3RvclJlZixcclxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgQ29udHJvbFZhbHVlQWNjZXNzb3IsIE5HX1ZBTFVFX0FDQ0VTU09SIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xyXG5pbXBvcnQgeyBNb25rZXlTdHlsZUd1aWRlU2V0dGluZ3NTZXJ2aWNlLCBNb25rZXlTdHlsZVNldHRpbmdzIH0gZnJvbSAnLi4vLi4vY29yZSc7XHJcbmltcG9ydCB7IE1vbmtleVV0aWxzIH0gZnJvbSAnLi4vLi4vY29yZS91dGlscyc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ21vbmtleS1pbnB1dCcsXHJcbiAgdGVtcGxhdGU6IGBcclxuICAgIDxtZWN4LWZvcm0tZmllbGQgW25nQ2xhc3NdPVwieyBkaXNhYmxlZDogX2Rpc2FibGVkIH1cIiBbaWRdPVwiX2lkXCI+XHJcbiAgICAgIDxtZWN4LWZvcm0tZmllbGQtaGVhZGVyPlxyXG4gICAgICAgIDxsYWJlbD5cclxuICAgICAgICAgIHt7IGxhYmVsIH19XHJcbiAgICAgICAgPC9sYWJlbD5cclxuICAgICAgICA8aGVscGVyPlxyXG4gICAgICAgICAge3sgaGVscGVyTWVzc2FnZSB9fVxyXG4gICAgICAgIDwvaGVscGVyPlxyXG4gICAgICA8L21lY3gtZm9ybS1maWVsZC1oZWFkZXI+XHJcbiAgICAgIDxtZWN4LWZvcm0tZmllbGQtYm9keSBbY2xhc3MuZXJyb3JdPVwiZXJyb3JNZXNzYWdlPy50cmltKClcIj5cclxuICAgICAgICA8bW9ua2V5LWljb25cclxuICAgICAgICAgIFtpY29uXT1cImljb25cIlxyXG4gICAgICAgICAgW2NvbG9yXT1cImVycm9yTWVzc2FnZT8udHJpbSgpID8gJyNmYTM4MzgnIDogJyM0QjRBNTMnXCJcclxuICAgICAgICAgICpuZ0lmPVwiaWNvblwiXHJcbiAgICAgICAgPjwvbW9ua2V5LWljb24+XHJcbiAgICAgICAgPHN5bWJvbD5cclxuICAgICAgICAgIHt7IF9zeW1ib2wgfX1cclxuICAgICAgICA8L3N5bWJvbD5cclxuICAgICAgICA8aW5wdXRcclxuICAgICAgICAgIFtuYW1lXT1cIm5hbWVcIlxyXG4gICAgICAgICAgW3R5cGVdPVwidHlwZVwiXHJcbiAgICAgICAgICBbcGxhY2Vob2xkZXJdPVwicGxhY2Vob2xkZXJcIlxyXG4gICAgICAgICAgKGlucHV0KT1cIm9uQ2hhbmdlVmFsdWUoJGV2ZW50KVwiXHJcbiAgICAgICAgICAoa2V5cHJlc3MpPVwib25LZXlQcmVzcygkZXZlbnQpXCJcclxuICAgICAgICAgIFtpZF09XCJuYW1lXCJcclxuICAgICAgICAgIFsobmdNb2RlbCldPVwiX2Zvcm1hdGVkVmFsdWVcIlxyXG4gICAgICAgICAgW2Rpc2FibGVkXT1cIl9kaXNhYmxlZFwiXHJcbiAgICAgICAgICBbbWFza109XCJtYXNrXCJcclxuICAgICAgICAgIFtwcmVmaXhdPVwicHJlZml4XCJcclxuICAgICAgICAgICpuZ0lmPVwibWFzayAmJiBwcmVmaXhcIlxyXG4gICAgICAgICAgI21vbmtleUlucHV0XHJcbiAgICAgICAgLz5cclxuICAgICAgICA8aW5wdXRcclxuICAgICAgICAgIFtuYW1lXT1cIm5hbWVcIlxyXG4gICAgICAgICAgW3R5cGVdPVwidHlwZVwiXHJcbiAgICAgICAgICBbcGxhY2Vob2xkZXJdPVwicGxhY2Vob2xkZXJcIlxyXG4gICAgICAgICAgKGlucHV0KT1cIm9uQ2hhbmdlVmFsdWUoJGV2ZW50KVwiXHJcbiAgICAgICAgICBbaWRdPVwibmFtZVwiXHJcbiAgICAgICAgICBbKG5nTW9kZWwpXT1cIl9mb3JtYXRlZFZhbHVlXCJcclxuICAgICAgICAgIChrZXlwcmVzcyk9XCJvbktleVByZXNzKCRldmVudClcIlxyXG4gICAgICAgICAgW2Rpc2FibGVkXT1cIl9kaXNhYmxlZFwiXHJcbiAgICAgICAgICBbbWFza109XCJtYXNrXCJcclxuICAgICAgICAgICpuZ0lmPVwibWFzayAmJiAhcHJlZml4XCJcclxuICAgICAgICAgICNtb25rZXlJbnB1dFxyXG4gICAgICAgIC8+XHJcbiAgICAgICAgPGlucHV0XHJcbiAgICAgICAgICBbbmFtZV09XCJuYW1lXCJcclxuICAgICAgICAgIFt0eXBlXT1cInR5cGVcIlxyXG4gICAgICAgICAgW3BsYWNlaG9sZGVyXT1cInBsYWNlaG9sZGVyXCJcclxuICAgICAgICAgIChpbnB1dCk9XCJvbkNoYW5nZVZhbHVlKCRldmVudClcIlxyXG4gICAgICAgICAgW2lkXT1cIm5hbWVcIlxyXG4gICAgICAgICAgWyhuZ01vZGVsKV09XCJfZm9ybWF0ZWRWYWx1ZVwiXHJcbiAgICAgICAgICAoa2V5cHJlc3MpPVwib25LZXlQcmVzcygkZXZlbnQpXCJcclxuICAgICAgICAgIFtkaXNhYmxlZF09XCJfZGlzYWJsZWRcIlxyXG4gICAgICAgICAgW21heExlbmd0aF09XCJtYXhMZW5ndGhcIlxyXG4gICAgICAgICAgKm5nSWY9XCIhbWFzayAmJiAhcHJlZml4XCJcclxuICAgICAgICAgIFttYXhdPVwibWF4RGF0ZVRvZGF5ID8gX21heERhdGVUb2RheSA6IG51bGxcIlxyXG4gICAgICAgICAgI21vbmtleUlucHV0XHJcbiAgICAgICAgLz5cclxuICAgICAgICA8bW9ua2V5LWljb25cclxuICAgICAgICAgIGljb249XCJleWUtb3Blbi0xNlwiXHJcbiAgICAgICAgICBbY29sb3JdPVwiZXJyb3JNZXNzYWdlPy50cmltKCkgPyAnI2ZhMzgzOCcgOiAnIzRCNEE1MydcIlxyXG4gICAgICAgICAgKm5nSWY9XCJfb2xkVHlwZSA9PT0gJ3Bhc3N3b3JkJyAmJiB0eXBlID09PSAndGV4dCdcIlxyXG4gICAgICAgICAgKGNsaWNrKT1cIm9uU2hvd0FuZEhpZGVQYXNzd29yZCgpXCJcclxuICAgICAgICA+PC9tb25rZXktaWNvbj5cclxuICAgICAgICA8bW9ua2V5LWljb25cclxuICAgICAgICAgIGljb249XCJleWUtY2xvc2VkLTE2XCJcclxuICAgICAgICAgIFtjb2xvcl09XCJlcnJvck1lc3NhZ2U/LnRyaW0oKSA/ICcjZmEzODM4JyA6ICcjNEI0QTUzJ1wiXHJcbiAgICAgICAgICAqbmdJZj1cIl9vbGRUeXBlID09PSAncGFzc3dvcmQnICYmIHR5cGUgPT09ICdwYXNzd29yZCdcIlxyXG4gICAgICAgICAgKGNsaWNrKT1cIm9uU2hvd0FuZEhpZGVQYXNzd29yZCgpXCJcclxuICAgICAgICA+PC9tb25rZXktaWNvbj5cclxuICAgICAgPC9tZWN4LWZvcm0tZmllbGQtYm9keT5cclxuICAgICAgPG1lY3gtZm9ybS1maWVsZC1mb290ZXI+XHJcbiAgICAgICAgPGluZm8+XHJcbiAgICAgICAgICB7eyBpbmZvTWVzc2FnZSB9fVxyXG4gICAgICAgIDwvaW5mbz5cclxuICAgICAgICA8ZXJyb3I+XHJcbiAgICAgICAgICB7eyBlcnJvck1lc3NhZ2UgfX1cclxuICAgICAgICA8L2Vycm9yPlxyXG4gICAgICA8L21lY3gtZm9ybS1maWVsZC1mb290ZXI+XHJcbiAgICA8L21lY3gtZm9ybS1maWVsZD5cclxuICBgLFxyXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXHJcbiAgcHJvdmlkZXJzOiBbXHJcbiAgICB7XHJcbiAgICAgIHByb3ZpZGU6IE5HX1ZBTFVFX0FDQ0VTU09SLFxyXG4gICAgICB1c2VFeGlzdGluZzogZm9yd2FyZFJlZigoKSA9PiBNb25rZXlJbnB1dENvbXBvbmVudCksXHJcbiAgICAgIG11bHRpOiB0cnVlLFxyXG4gICAgfSxcclxuICAgIEN1cnJlbmN5UGlwZSxcclxuICBdLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgTW9ua2V5SW5wdXRDb21wb25lbnQgaW1wbGVtZW50cyBDb250cm9sVmFsdWVBY2Nlc3NvciwgT25Jbml0IHtcclxuICBASW5wdXQoKSBuYW1lOiBzdHJpbmcgPSBgbWVjeC1pbnB1dC0ke01vbmtleVV0aWxzLmdldFJhbmRvbVN0cmluZygxMCl9YDtcclxuICBASW5wdXQoKSBsYWJlbDogc3RyaW5nO1xyXG4gIEBJbnB1dCgpIGhlbHBlck1lc3NhZ2U6IHN0cmluZyA9ICcnO1xyXG4gIEBJbnB1dCgpIHBsYWNlaG9sZGVyOiBzdHJpbmcgPSAnJztcclxuICBASW5wdXQoKSBpY29uOiBzdHJpbmc7XHJcbiAgQElucHV0KCkgdHlwZTogc3RyaW5nO1xyXG4gIEBJbnB1dCgpIGluZm9NZXNzYWdlOiBzdHJpbmc7XHJcbiAgQElucHV0KCkgZXJyb3JNZXNzYWdlOiBzdHJpbmc7XHJcbiAgQElucHV0KCkgbWFzazogc3RyaW5nO1xyXG4gIEBJbnB1dCgpIHByZWZpeDogc3RyaW5nO1xyXG4gIEBJbnB1dCgpIG1heExlbmd0aDogbnVtYmVyID0gMjU1O1xyXG4gIEBJbnB1dCgpIG9ubHlOdW1iZXI6IGFueTtcclxuICBASW5wdXQoKSBvbmx5QWxwaGFOdW1lcmljOiBhbnk7XHJcbiAgQElucHV0KCkgdXBwZXJDYXNlOiBhbnk7XHJcbiAgQElucHV0KCkgbG93ZXJDYXNlOiBhbnk7XHJcbiAgQElucHV0KCkgY2FwaXRhbGl6ZTogYW55O1xyXG4gIEBJbnB1dCgpIGN1cnJlbmN5OiBhbnk7XHJcbiAgQElucHV0KCkgcGVyY2VudDogYW55O1xyXG4gIEBJbnB1dCgpIG1heERhdGVUb2RheSA9IGZhbHNlO1xyXG4gIEBPdXRwdXQoKSBvbkNoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8YW55PigpO1xyXG5cclxuICBwcml2YXRlIHNldHRpbmdzOiBNb25rZXlTdHlsZVNldHRpbmdzO1xyXG4gIHByaXZhdGUgaGFuZGxlZFZhbHVlOiBhbnk7XHJcbiAgcHJpdmF0ZSBvbk1vZGVsQ2hhbmdlID0gKHZhbHVlOiBhbnkpID0+IHt9O1xyXG4gIHByaXZhdGUgb25Nb2RlbFRvdWNoZWQgPSAodmFsdWU6IGFueSkgPT4ge307XHJcblxyXG4gIHB1YmxpYyBfaWQ6IHN0cmluZyA9IGBtZWN4LWlucHV0LSR7TW9ua2V5VXRpbHMuZ2V0UmFuZG9tU3RyaW5nKDEwKX1gO1xyXG4gIHB1YmxpYyBfZGlzYWJsZWQ6IGJvb2xlYW4gPSBmYWxzZTtcclxuICBwdWJsaWMgX29sZFR5cGU6IHN0cmluZztcclxuICBwdWJsaWMgX2Zvcm1hdGVkVmFsdWU6IGFueTtcclxuICBwdWJsaWMgX21heERhdGVUb2RheSA9IG5ldyBEYXRlKCkudG9JU09TdHJpbmcoKS5zcGxpdCgnVCcpWzBdO1xyXG4gIHB1YmxpYyBfc3ltYm9sID0gJyc7XHJcblxyXG4gIEBWaWV3Q2hpbGQoJ21vbmtleUlucHV0Jywge1xyXG4gICAgc3RhdGljOiB0cnVlLFxyXG4gIH0pXHJcbiAgbW9ua2V5SW5wdXQ6IEVsZW1lbnRSZWY7XHJcblxyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHJpdmF0ZSBjdXJyZW5jeVBpcGU6IEN1cnJlbmN5UGlwZSxcclxuICAgIHByaXZhdGUgc2V0dGluZ3NTZXJ2aWNlOiBNb25rZXlTdHlsZUd1aWRlU2V0dGluZ3NTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSBjZHI6IENoYW5nZURldGVjdG9yUmVmXHJcbiAgKSB7fVxyXG5cclxuICBwcml2YXRlIGhhbmRsZVZhbHVlKHZhbHVlOiBhbnksIGFwcGx5ID0gZmFsc2UpOiBhbnkge1xyXG4gICAgaWYgKHRoaXMub25seU51bWJlcikge1xyXG4gICAgICByZXR1cm4gTW9ua2V5VXRpbHMuaGFuZGxlT25seU51bWJlcnMoYCR7dmFsdWV9YCk7XHJcbiAgICB9IGVsc2UgaWYgKHRoaXMub25seUFscGhhTnVtZXJpYykgcmV0dXJuIE1vbmtleVV0aWxzLmhhbmRsZU9ubHlBbHBoYU51bWVyaWMoYCR7dmFsdWV9YCk7XHJcbiAgICBlbHNlIGlmICh0aGlzLnVwcGVyQ2FzZSkgcmV0dXJuIGAke3ZhbHVlfWAudG9VcHBlckNhc2UoKTtcclxuICAgIGVsc2UgaWYgKHRoaXMubG93ZXJDYXNlKSByZXR1cm4gYCR7dmFsdWV9YC50b0xvd2VyQ2FzZSgpO1xyXG4gICAgZWxzZSBpZiAodGhpcy5jYXBpdGFsaXplKSByZXR1cm4gTW9ua2V5VXRpbHMuY2FwaXRhbGl6ZShgJHt2YWx1ZX1gLnRvVXBwZXJDYXNlKCkpO1xyXG4gICAgZWxzZSBpZiAodGhpcy5jdXJyZW5jeSB8fCB0aGlzLnBlcmNlbnQpIHtcclxuICAgICAgcmV0dXJuIE1vbmtleVV0aWxzLmhhbmRsZU9ubHlOdW1iZXJzKGAke3ZhbHVlfWApIC8gKGFwcGx5ID8gMTAwIDogMSk7XHJcbiAgICB9XHJcblxyXG4gICAgcmV0dXJuIHZhbHVlO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSByZXBsYWNlWmVybyh2YWx1ZTogYW55KSB7XHJcbiAgICByZXR1cm4gYCR7dmFsdWV9YC5yZXBsYWNlKG5ldyBSZWdFeHAoLzAvLCAnZycpLCAnJyk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGZvcm1hdFZhbHVlKHZhbHVlOiBhbnkpOiBhbnkge1xyXG4gICAgY29uc3QgeyBzZXR0aW5ncyB9ID0gdGhpcztcclxuICAgIGlmICh0aGlzLmN1cnJlbmN5KSB7XHJcbiAgICAgIGlmICghdmFsdWUgfHwgIXRoaXMucmVwbGFjZVplcm8odmFsdWUpKSByZXR1cm4gJyc7XHJcbiAgICAgIHJldHVybiB0aGlzLmN1cnJlbmN5UGlwZS50cmFuc2Zvcm0oXHJcbiAgICAgICAgdmFsdWUsXHJcbiAgICAgICAgc2V0dGluZ3M/LmN1cnJlbmN5Py5jb2RlIHx8ICdCUkwnLFxyXG4gICAgICAgICcnLFxyXG4gICAgICAgICcxLjItMicsXHJcbiAgICAgICAgc2V0dGluZ3M/LmN1cnJlbmN5Py5sb2NhbGUgfHwgJ3B0LUJSJ1xyXG4gICAgICApO1xyXG4gICAgfSBlbHNlIGlmICh0aGlzLnBlcmNlbnQpIHtcclxuICAgICAgcmV0dXJuIGAke3ZhbHVlfWA7XHJcbiAgICB9XHJcblxyXG4gICAgcmV0dXJuIHZhbHVlO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBoYW5kbGVTeW1ib2woKSB7XHJcbiAgICBjb25zdCB7IHNldHRpbmdzIH0gPSB0aGlzO1xyXG4gICAgaWYgKHRoaXMuY3VycmVuY3kpIHtcclxuICAgICAgdGhpcy5fc3ltYm9sID0ge1xyXG4gICAgICAgIEJSTDogJ1IkJyxcclxuICAgICAgICBDTFA6ICdDTFAnLFxyXG4gICAgICB9W3NldHRpbmdzPy5jdXJyZW5jeT8uY29kZSB8fCAnQlJMJ107XHJcbiAgICB9IGVsc2UgaWYgKHRoaXMucGVyY2VudCkge1xyXG4gICAgICB0aGlzLl9zeW1ib2wgPSAnJSc7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBuZ09uSW5pdCgpIHtcclxuICAgIGNvbnN0IHsgc2V0dGluZ3NTZXJ2aWNlIH0gPSB0aGlzO1xyXG4gICAgdGhpcy5fb2xkVHlwZSA9IHRoaXMudHlwZTtcclxuICAgIHNldHRpbmdzU2VydmljZS5zZXR0aW5ncygpLnN1YnNjcmliZSgodmFsOiBNb25rZXlTdHlsZVNldHRpbmdzKSA9PiB7XHJcbiAgICAgIHRoaXMuc2V0dGluZ3MgPSB2YWw7XHJcbiAgICAgIHRoaXMuaGFuZGxlU3ltYm9sKCk7XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIHJlZ2lzdGVyT25DaGFuZ2UoZm46IGFueSk6IHZvaWQge1xyXG4gICAgdGhpcy5vbk1vZGVsQ2hhbmdlID0gZm47XHJcbiAgfVxyXG5cclxuICByZWdpc3Rlck9uVG91Y2hlZChmbjogYW55KTogdm9pZCB7XHJcbiAgICB0aGlzLm9uTW9kZWxUb3VjaGVkID0gZm47XHJcbiAgfVxyXG5cclxuICBzZXREaXNhYmxlZFN0YXRlPyhpc0Rpc2FibGVkOiBib29sZWFuKTogdm9pZCB7XHJcbiAgICB0aGlzLl9kaXNhYmxlZCA9IGlzRGlzYWJsZWQ7XHJcbiAgfVxyXG5cclxuICBASW5wdXQoKVxyXG4gIHNldCB2YWx1ZSh2YWx1ZTogYW55KSB7XHJcbiAgICB0aGlzLmhhbmRsZWRWYWx1ZSA9IHZhbHVlO1xyXG4gICAgdGhpcy5fZm9ybWF0ZWRWYWx1ZSA9IHRoaXMuZm9ybWF0VmFsdWUodmFsdWUpO1xyXG4gICAgdGhpcy5jZHIuZGV0ZWN0Q2hhbmdlcygpO1xyXG4gICAgdGhpcy5vbk1vZGVsQ2hhbmdlKHRoaXMuaGFuZGxlZFZhbHVlKTtcclxuICAgIHRoaXMub25Nb2RlbFRvdWNoZWQodGhpcy5oYW5kbGVkVmFsdWUpO1xyXG4gIH1cclxuXHJcbiAgZ2V0IHZhbHVlKCk6IGFueSB7XHJcbiAgICByZXR1cm4gdGhpcy5oYW5kbGVkVmFsdWU7XHJcbiAgfVxyXG5cclxuICB3cml0ZVZhbHVlKHZhbHVlOiBhbnkpOiB2b2lkIHtcclxuICAgIHRoaXMudmFsdWUgPSB2YWx1ZTtcclxuICB9XHJcblxyXG4gIG9uQ2hhbmdlVmFsdWUoZXZlbnQ6IGFueSkge1xyXG4gICAgY29uc3QgdmFsdWUgPSB0aGlzLl9mb3JtYXRlZFZhbHVlO1xyXG4gICAgZXZlbnQ/LnByZXZlbnREZWZhdWx0KCk7XHJcbiAgICBldmVudD8uc3RvcFByb3BhZ2F0aW9uKCk7XHJcbiAgICBjb25zdCBoYW5kbGVkID0gdGhpcy5oYW5kbGVWYWx1ZSh2YWx1ZSwgdHJ1ZSk7XHJcbiAgICB0aGlzLndyaXRlVmFsdWUoaGFuZGxlZCk7XHJcbiAgICB0aGlzLm9uQ2hhbmdlLm5leHQoaGFuZGxlZCk7XHJcbiAgfVxyXG5cclxuICBvblNob3dBbmRIaWRlUGFzc3dvcmQoKSB7XHJcbiAgICB0aGlzLnR5cGUgPSB0aGlzLnR5cGUgPT09ICdwYXNzd29yZCcgPyAndGV4dCcgOiAncGFzc3dvcmQnO1xyXG4gIH1cclxuXHJcbiAgQEhvc3RMaXN0ZW5lcignY2xpY2snKVxyXG4gIG9uQ2xpY2soKSB7XHJcbiAgICBkb2N1bWVudD8uZ2V0RWxlbWVudEJ5SWQodGhpcy5faWQpPy5nZXRFbGVtZW50c0J5VGFnTmFtZSgnaW5wdXQnKT8uWzBdPy5mb2N1cygpO1xyXG4gIH1cclxuXHJcbiAgb25LZXlQcmVzcyhldmVudDogYW55KSB7XHJcbiAgICBsZXQgcGF0dGVybiA9IG51bGw7XHJcbiAgICBjb25zdCBjbXAgPSBldmVudD8udGFyZ2V0Py52YWx1ZTtcclxuICAgIGNvbnN0IGlucHV0Q2hhciA9IFN0cmluZy5mcm9tQ2hhckNvZGUoZXZlbnQuY2hhckNvZGUpO1xyXG4gICAgaWYgKHRoaXMuY3VycmVuY3kgfHwgdGhpcy5vbmx5TnVtYmVyIHx8IHRoaXMucGVyY2VudCkge1xyXG4gICAgICBwYXR0ZXJuID0gL1swLTldLztcclxuICAgICAgaWYgKGlucHV0Q2hhciA9PT0gJzAnICYmICF0aGlzLnJlcGxhY2VaZXJvKGNtcCkpIHtcclxuICAgICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xyXG4gICAgICAgIHJldHVybjtcclxuICAgICAgfVxyXG4gICAgfSBlbHNlIGlmICh0aGlzLm9ubHlBbHBoYU51bWVyaWMpIHtcclxuICAgICAgcGF0dGVybiA9IC9bXjAtOUEtWmEtel0vO1xyXG4gICAgfVxyXG5cclxuICAgIGlmIChwYXR0ZXJuICYmICFwYXR0ZXJuLnRlc3QoaW5wdXRDaGFyKSkge1xyXG4gICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iXX0=
|
|
384
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5wdXQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbW9ua2V5LXN0eWxlLWd1aWRlL3NyYy9saWIvY29tcG9uZW50cy9pbnB1dC9pbnB1dC5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7NEJBSTRCO0FBQzVCLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQ0wsU0FBUyxFQUNULGlCQUFpQixFQUNqQixLQUFLLEVBQ0wsVUFBVSxFQUNWLFlBQVksRUFHWixNQUFNLEVBQ04sWUFBWSxFQUNaLFNBQVMsR0FFVixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQXdCLGlCQUFpQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFekUsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGtCQUFrQixDQUFDOzs7Ozs7O0FBaUcvQyxNQUFNLE9BQU8sb0JBQW9CO0lBdUMvQixZQUNVLFlBQTBCLEVBQzFCLGVBQWdELEVBQ2hELEdBQXNCO1FBRnRCLGlCQUFZLEdBQVosWUFBWSxDQUFjO1FBQzFCLG9CQUFlLEdBQWYsZUFBZSxDQUFpQztRQUNoRCxRQUFHLEdBQUgsR0FBRyxDQUFtQjtRQXpDdkIsU0FBSSxHQUFXLGNBQWMsV0FBVyxDQUFDLGVBQWUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDO1FBRS9ELGtCQUFhLEdBQVcsRUFBRSxDQUFDO1FBQzNCLGdCQUFXLEdBQVcsRUFBRSxDQUFDO1FBT3pCLGNBQVMsR0FBVyxHQUFHLENBQUM7UUFReEIsaUJBQVksR0FBRyxLQUFLLENBQUM7UUFDcEIsYUFBUSxHQUFHLElBQUksWUFBWSxFQUFPLENBQUM7UUFJckMsa0JBQWEsR0FBRyxDQUFDLEtBQVUsRUFBRSxFQUFFLEdBQUUsQ0FBQyxDQUFDO1FBQ25DLG1CQUFjLEdBQUcsQ0FBQyxLQUFVLEVBQUUsRUFBRSxHQUFFLENB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Wjt3QkFDRCxZQUFZO3FCQUNiO2lCQUNGO2lMQUVVLElBQUk7c0JBQVosS0FBSztnQkFDRyxLQUFLO3NCQUFiLEtBQUs7Z0JBQ0csYUFBYTtzQkFBckIsS0FBSztnQkFDRyxXQUFXO3NCQUFuQixLQUFLO2dCQUNHLElBQUk7c0JBQVosS0FBSztnQkFDRyxJQUFJO3NCQUFaLEtBQUs7Z0JBQ0csV0FBVztzQkFBbkIsS0FBSztnQkFDRyxZQUFZO3NCQUFwQixLQUFLO2dCQUNHLElBQUk7c0JBQVosS0FBSztnQkFDRyxNQUFNO3NCQUFkLEtBQUs7Z0JBQ0csU0FBUztzQkFBakIsS0FBSztnQkFDRyxVQUFVO3NCQUFsQixLQUFLO2dCQUNHLGdCQUFnQjtzQkFBeEIsS0FBSztnQkFDRyxTQUFTO3NCQUFqQixLQUFLO2dCQUNHLFNBQVM7c0JBQWpCLEtBQUs7Z0JBQ0csVUFBVTtzQkFBbEIsS0FBSztnQkFDRyxRQUFRO3NCQUFoQixLQUFLO2dCQUNHLE9BQU87c0JBQWYsS0FBSztnQkFDRyxZQUFZO3NCQUFwQixLQUFLO2dCQUNJLFFBQVE7c0JBQWpCLE1BQU07Z0JBaUJQLFdBQVc7c0JBSFYsU0FBUzt1QkFBQyxhQUFhLEVBQUU7d0JBQ3hCLE1BQU0sRUFBRSxJQUFJO3FCQUNiO2dCQStFRyxLQUFLO3NCQURSLEtBQUs7Z0JBK0JOLE9BQU87c0JBRE4sWUFBWTt1QkFBQyxPQUFPIiwic291cmNlc0NvbnRlbnQiOlsiLyoqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiAqIENvcHlyaWdodCBNb25rZXkgRXhjaGFuZ2UuIEFsbCBSaWdodHMgUmVzZXJ2ZWRcclxuICogVGhpcyBzdHlsZSBndWlkZSB3YXMgZGV2ZWxvcGVkIGJ5IE1vbmtleSBFeGNoYW5nZSBUZWFtXHJcbiAqIE1JVCBMaWNlbmNlXHJcbiAqKioqKioqKioqKioqKioqKioqKioqKioqKi9cclxuaW1wb3J0IHsgQ3VycmVuY3lQaXBlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcclxuaW1wb3J0IHtcclxuICBDb21wb25lbnQsXHJcbiAgVmlld0VuY2Fwc3VsYXRpb24sXHJcbiAgSW5wdXQsXHJcbiAgZm9yd2FyZFJlZixcclxuICBIb3N0TGlzdGVuZXIsXHJcbiAgT25Jbml0LFxyXG4gIEVsZW1lbnRSZWYsXHJcbiAgT3V0cHV0LFxyXG4gIEV2ZW50RW1pdHRlcixcclxuICBWaWV3Q2hpbGQsXHJcbiAgQ2hhbmdlRGV0ZWN0b3JSZWYsXHJcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IENvbnRyb2xWYWx1ZUFjY2Vzc29yLCBOR19WQUxVRV9BQ0NFU1NPUiB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuaW1wb3J0IHsgTW9ua2V5U3R5bGVHdWlkZVNldHRpbmdzU2VydmljZSwgTW9ua2V5U3R5bGVTZXR0aW5ncyB9IGZyb20gJy4uLy4uL2NvcmUnO1xyXG5pbXBvcnQgeyBNb25rZXlVdGlscyB9IGZyb20gJy4uLy4uL2NvcmUvdXRpbHMnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdtb25rZXktaW5wdXQnLFxyXG4gIHRlbXBsYXRlOiBgXHJcbiAgICA8bWVjeC1mb3JtLWZpZWxkIFtuZ0NsYXNzXT1cInsgZGlzYWJsZWQ6IF9kaXNhYmxlZCB9XCIgW2lkXT1cIl9pZFwiPlxyXG4gICAgICA8bWVjeC1mb3JtLWZpZWxkLWhlYWRlcj5cclxuICAgICAgICA8bGFiZWw+XHJcbiAgICAgICAgICB7eyBsYWJlbCB9fVxyXG4gICAgICAgIDwvbGFiZWw+XHJcbiAgICAgICAgPGhlbHBlcj5cclxuICAgICAgICAgIHt7IGhlbHBlck1lc3NhZ2UgfX1cclxuICAgICAgICA8L2hlbHBlcj5cclxuICAgICAgPC9tZWN4LWZvcm0tZmllbGQtaGVhZGVyPlxyXG4gICAgICA8bWVjeC1mb3JtLWZpZWxkLWJvZHkgW2NsYXNzLmVycm9yXT1cImVycm9yTWVzc2FnZT8udHJpbSgpXCI+XHJcbiAgICAgICAgPG1vbmtleS1pY29uXHJcbiAgICAgICAgICBbaWNvbl09XCJpY29uXCJcclxuICAgICAgICAgIFtjb2xvcl09XCJlcnJvck1lc3NhZ2U/LnRyaW0oKSA/ICcjZmEzODM4JyA6ICcjNEI0QTUzJ1wiXHJcbiAgICAgICAgICAqbmdJZj1cImljb25cIlxyXG4gICAgICAgID48L21vbmtleS1pY29uPlxyXG4gICAgICAgIDxzeW1ib2w+XHJcbiAgICAgICAgICB7eyBfc3ltYm9sIH19XHJcbiAgICAgICAgPC9zeW1ib2w+XHJcbiAgICAgICAgPGlucHV0XHJcbiAgICAgICAgICBbbmFtZV09XCJuYW1lXCJcclxuICAgICAgICAgIFt0eXBlXT1cInR5cGVcIlxyXG4gICAgICAgICAgW3BsYWNlaG9sZGVyXT1cInBsYWNlaG9sZGVyXCJcclxuICAgICAgICAgIChpbnB1dCk9XCJvbkNoYW5nZVZhbHVlKCRldmVudClcIlxyXG4gICAgICAgICAgKGtleXByZXNzKT1cIm9uS2V5UHJlc3MoJGV2ZW50KVwiXHJcbiAgICAgICAgICBbaWRdPVwibmFtZVwiXHJcbiAgICAgICAgICBbKG5nTW9kZWwpXT1cIl9mb3JtYXRlZFZhbHVlXCJcclxuICAgICAgICAgIFtkaXNhYmxlZF09XCJfZGlzYWJsZWRcIlxyXG4gICAgICAgICAgW21hc2tdPVwibWFza1wiXHJcbiAgICAgICAgICBbcHJlZml4XT1cInByZWZpeFwiXHJcbiAgICAgICAgICAqbmdJZj1cIm1hc2sgJiYgcHJlZml4XCJcclxuICAgICAgICAgICNtb25rZXlJbnB1dFxyXG4gICAgICAgIC8+XHJcbiAgICAgICAgPGlucHV0XHJcbiAgICAgICAgICBbbmFtZV09XCJuYW1lXCJcclxuICAgICAgICAgIFt0eXBlXT1cInR5cGVcIlxyXG4gICAgICAgICAgW3BsYWNlaG9sZGVyXT1cInBsYWNlaG9sZGVyXCJcclxuICAgICAgICAgIChpbnB1dCk9XCJvbkNoYW5nZVZhbHVlKCRldmVudClcIlxyXG4gICAgICAgICAgW2lkXT1cIm5hbWVcIlxyXG4gICAgICAgICAgWyhuZ01vZGVsKV09XCJfZm9ybWF0ZWRWYWx1ZVwiXHJcbiAgICAgICAgICAoa2V5cHJlc3MpPVwib25LZXlQcmVzcygkZXZlbnQpXCJcclxuICAgICAgICAgIFtkaXNhYmxlZF09XCJfZGlzYWJsZWRcIlxyXG4gICAgICAgICAgW21hc2tdPVwibWFza1wiXHJcbiAgICAgICAgICAqbmdJZj1cIm1hc2sgJiYgIXByZWZpeFwiXHJcbiAgICAgICAgICAjbW9ua2V5SW5wdXRcclxuICAgICAgICAvPlxyXG4gICAgICAgIDxpbnB1dFxyXG4gICAgICAgICAgW25hbWVdPVwibmFtZVwiXHJcbiAgICAgICAgICBbdHlwZV09XCJ0eXBlXCJcclxuICAgICAgICAgIFtwbGFjZWhvbGRlcl09XCJwbGFjZWhvbGRlclwiXHJcbiAgICAgICAgICAoaW5wdXQpPVwib25DaGFuZ2VWYWx1ZSgkZXZlbnQpXCJcclxuICAgICAgICAgIFtpZF09XCJuYW1lXCJcclxuICAgICAgICAgIFsobmdNb2RlbCldPVwiX2Zvcm1hdGVkVmFsdWVcIlxyXG4gICAgICAgICAgKGtleXByZXNzKT1cIm9uS2V5UHJlc3MoJGV2ZW50KVwiXHJcbiAgICAgICAgICBbZGlzYWJsZWRdPVwiX2Rpc2FibGVkXCJcclxuICAgICAgICAgIFttYXhMZW5ndGhdPVwibWF4TGVuZ3RoXCJcclxuICAgICAgICAgICpuZ0lmPVwiIW1hc2sgJiYgIXByZWZpeFwiXHJcbiAgICAgICAgICBbbWF4XT1cIm1heERhdGVUb2RheSA/IF9tYXhEYXRlVG9kYXkgOiBudWxsXCJcclxuICAgICAgICAgICNtb25rZXlJbnB1dFxyXG4gICAgICAgIC8+XHJcbiAgICAgICAgPG1vbmtleS1pY29uXHJcbiAgICAgICAgICBpY29uPVwiZXllLW9wZW4tMTZcIlxyXG4gICAgICAgICAgW2NvbG9yXT1cImVycm9yTWVzc2FnZT8udHJpbSgpID8gJyNmYTM4MzgnIDogJyM0QjRBNTMnXCJcclxuICAgICAgICAgICpuZ0lmPVwiX29sZFR5cGUgPT09ICdwYXNzd29yZCcgJiYgdHlwZSA9PT0gJ3RleHQnXCJcclxuICAgICAgICAgIChjbGljayk9XCJvblNob3dBbmRIaWRlUGFzc3dvcmQoKVwiXHJcbiAgICAgICAgPjwvbW9ua2V5LWljb24+XHJcbiAgICAgICAgPG1vbmtleS1pY29uXHJcbiAgICAgICAgICBpY29uPVwiZXllLWNsb3NlZC0xNlwiXHJcbiAgICAgICAgICBbY29sb3JdPVwiZXJyb3JNZXNzYWdlPy50cmltKCkgPyAnI2ZhMzgzOCcgOiAnIzRCNEE1MydcIlxyXG4gICAgICAgICAgKm5nSWY9XCJfb2xkVHlwZSA9PT0gJ3Bhc3N3b3JkJyAmJiB0eXBlID09PSAncGFzc3dvcmQnXCJcclxuICAgICAgICAgIChjbGljayk9XCJvblNob3dBbmRIaWRlUGFzc3dvcmQoKVwiXHJcbiAgICAgICAgPjwvbW9ua2V5LWljb24+XHJcbiAgICAgIDwvbWVjeC1mb3JtLWZpZWxkLWJvZHk+XHJcbiAgICAgIDxtZWN4LWZvcm0tZmllbGQtZm9vdGVyPlxyXG4gICAgICAgIDxpbmZvPlxyXG4gICAgICAgICAge3sgaW5mb01lc3NhZ2UgfX1cclxuICAgICAgICA8L2luZm8+XHJcbiAgICAgICAgPGVycm9yPlxyXG4gICAgICAgICAge3sgZXJyb3JNZXNzYWdlIH19XHJcbiAgICAgICAgPC9lcnJvcj5cclxuICAgICAgPC9tZWN4LWZvcm0tZmllbGQtZm9vdGVyPlxyXG4gICAgPC9tZWN4LWZvcm0tZmllbGQ+XHJcbiAgYCxcclxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxyXG4gIHByb3ZpZGVyczogW1xyXG4gICAge1xyXG4gICAgICBwcm92aWRlOiBOR19WQUxVRV9BQ0NFU1NPUixcclxuICAgICAgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gTW9ua2V5SW5wdXRDb21wb25lbnQpLFxyXG4gICAgICBtdWx0aTogdHJ1ZSxcclxuICAgIH0sXHJcbiAgICBDdXJyZW5jeVBpcGUsXHJcbiAgXSxcclxufSlcclxuZXhwb3J0IGNsYXNzIE1vbmtleUlucHV0Q29tcG9uZW50IGltcGxlbWVudHMgQ29udHJvbFZhbHVlQWNjZXNzb3IsIE9uSW5pdCB7XHJcbiAgQElucHV0KCkgbmFtZTogc3RyaW5nID0gYG1lY3gtaW5wdXQtJHtNb25rZXlVdGlscy5nZXRSYW5kb21TdHJpbmcoMTApfWA7XHJcbiAgQElucHV0KCkgbGFiZWw6IHN0cmluZztcclxuICBASW5wdXQoKSBoZWxwZXJNZXNzYWdlOiBzdHJpbmcgPSAnJztcclxuICBASW5wdXQoKSBwbGFjZWhvbGRlcjogc3RyaW5nID0gJyc7XHJcbiAgQElucHV0KCkgaWNvbjogc3RyaW5nO1xyXG4gIEBJbnB1dCgpIHR5cGU6IHN0cmluZztcclxuICBASW5wdXQoKSBpbmZvTWVzc2FnZTogc3RyaW5nO1xyXG4gIEBJbnB1dCgpIGVycm9yTWVzc2FnZTogc3RyaW5nO1xyXG4gIEBJbnB1dCgpIG1hc2s6IHN0cmluZztcclxuICBASW5wdXQoKSBwcmVmaXg6IHN0cmluZztcclxuICBASW5wdXQoKSBtYXhMZW5ndGg6IG51bWJlciA9IDI1NTtcclxuICBASW5wdXQoKSBvbmx5TnVtYmVyOiBhbnk7XHJcbiAgQElucHV0KCkgb25seUFscGhhTnVtZXJpYzogYW55O1xyXG4gIEBJbnB1dCgpIHVwcGVyQ2FzZTogYW55O1xyXG4gIEBJbnB1dCgpIGxvd2VyQ2FzZTogYW55O1xyXG4gIEBJbnB1dCgpIGNhcGl0YWxpemU6IGFueTtcclxuICBASW5wdXQoKSBjdXJyZW5jeTogYW55O1xyXG4gIEBJbnB1dCgpIHBlcmNlbnQ6IGFueTtcclxuICBASW5wdXQoKSBtYXhEYXRlVG9kYXkgPSBmYWxzZTtcclxuICBAT3V0cHV0KCkgb25DaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPGFueT4oKTtcclxuXHJcbiAgcHJpdmF0ZSBzZXR0aW5nczogTW9ua2V5U3R5bGVTZXR0aW5ncztcclxuICBwcml2YXRlIGhhbmRsZWRWYWx1ZTogYW55O1xyXG4gIHByaXZhdGUgb25Nb2RlbENoYW5nZSA9ICh2YWx1ZTogYW55KSA9PiB7fTtcclxuICBwcml2YXRlIG9uTW9kZWxUb3VjaGVkID0gKHZhbHVlOiBhbnkpID0+IHt9O1xyXG5cclxuICBwdWJsaWMgX2lkOiBzdHJpbmcgPSBgbWVjeC1pbnB1dC0ke01vbmtleVV0aWxzLmdldFJhbmRvbVN0cmluZygxMCl9YDtcclxuICBwdWJsaWMgX2Rpc2FibGVkOiBib29sZWFuID0gZmFsc2U7XHJcbiAgcHVibGljIF9vbGRUeXBlOiBzdHJpbmc7XHJcbiAgcHVibGljIF9mb3JtYXRlZFZhbHVlOiBhbnk7XHJcbiAgcHVibGljIF9tYXhEYXRlVG9kYXkgPSBuZXcgRGF0ZSgpLnRvSVNPU3RyaW5nKCkuc3BsaXQoJ1QnKVswXTtcclxuICBwdWJsaWMgX3N5bWJvbCA9ICcnO1xyXG5cclxuICBAVmlld0NoaWxkKCdtb25rZXlJbnB1dCcsIHtcclxuICAgIHN0YXRpYzogdHJ1ZSxcclxuICB9KVxyXG4gIG1vbmtleUlucHV0OiBFbGVtZW50UmVmO1xyXG5cclxuICBjb25zdHJ1Y3RvcihcclxuICAgIHByaXZhdGUgY3VycmVuY3lQaXBlOiBDdXJyZW5jeVBpcGUsXHJcbiAgICBwcml2YXRlIHNldHRpbmdzU2VydmljZTogTW9ua2V5U3R5bGVHdWlkZVNldHRpbmdzU2VydmljZSxcclxuICAgIHByaXZhdGUgY2RyOiBDaGFuZ2VEZXRlY3RvclJlZlxyXG4gICkge31cclxuXHJcbiAgcHJpdmF0ZSBoYW5kbGVWYWx1ZSh2YWx1ZTogYW55LCBhcHBseSA9IGZhbHNlKTogYW55IHtcclxuICAgIGlmICh0aGlzLm9ubHlOdW1iZXIpIHtcclxuICAgICAgcmV0dXJuIE1vbmtleVV0aWxzLmhhbmRsZU9ubHlOdW1iZXJzKGAke3ZhbHVlfWApO1xyXG4gICAgfSBlbHNlIGlmICh0aGlzLm9ubHlBbHBoYU51bWVyaWMpIHJldHVybiBNb25rZXlVdGlscy5oYW5kbGVPbmx5QWxwaGFOdW1lcmljKGAke3ZhbHVlfWApO1xyXG4gICAgZWxzZSBpZiAodGhpcy51cHBlckNhc2UpIHJldHVybiBgJHt2YWx1ZX1gLnRvVXBwZXJDYXNlKCk7XHJcbiAgICBlbHNlIGlmICh0aGlzLmxvd2VyQ2FzZSkgcmV0dXJuIGAke3ZhbHVlfWAudG9Mb3dlckNhc2UoKTtcclxuICAgIGVsc2UgaWYgKHRoaXMuY2FwaXRhbGl6ZSkgcmV0dXJuIE1vbmtleVV0aWxzLmNhcGl0YWxpemUoYCR7dmFsdWV9YC50b1VwcGVyQ2FzZSgpKTtcclxuICAgIGVsc2UgaWYgKHRoaXMuY3VycmVuY3kgfHwgdGhpcy5wZXJjZW50KSB7XHJcbiAgICAgIHJldHVybiBNb25rZXlVdGlscy5oYW5kbGVPbmx5TnVtYmVycyhgJHt2YWx1ZX1gKSAvIChhcHBseSA/IDEwMCA6IDEpO1xyXG4gICAgfVxyXG5cclxuICAgIHJldHVybiB2YWx1ZTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgcmVwbGFjZVplcm8odmFsdWU6IGFueSkge1xyXG4gICAgcmV0dXJuIGAke3ZhbHVlfWAucmVwbGFjZShuZXcgUmVnRXhwKC8wLywgJ2cnKSwgJycpO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBmb3JtYXRWYWx1ZSh2YWx1ZTogYW55KTogYW55IHtcclxuICAgIGNvbnN0IHsgc2V0dGluZ3MgfSA9IHRoaXM7XHJcbiAgICBpZiAodGhpcy5jdXJyZW5jeSkge1xyXG4gICAgICBpZiAoIXZhbHVlIHx8ICF0aGlzLnJlcGxhY2VaZXJvKHZhbHVlKSkgcmV0dXJuICcnO1xyXG4gICAgICByZXR1cm4gdGhpcy5jdXJyZW5jeVBpcGUudHJhbnNmb3JtKFxyXG4gICAgICAgIHZhbHVlLFxyXG4gICAgICAgIHNldHRpbmdzPy5jdXJyZW5jeT8uY29kZSB8fCAnQlJMJyxcclxuICAgICAgICAnJyxcclxuICAgICAgICAnMS4yLTInLFxyXG4gICAgICAgIHNldHRpbmdzPy5jdXJyZW5jeT8ubG9jYWxlIHx8ICdwdC1CUidcclxuICAgICAgKTtcclxuICAgIH0gZWxzZSBpZiAodGhpcy5wZXJjZW50KSB7XHJcbiAgICAgIHJldHVybiBgJHt2YWx1ZX1gO1xyXG4gICAgfVxyXG5cclxuICAgIHJldHVybiB2YWx1ZTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgaGFuZGxlU3ltYm9sKCkge1xyXG4gICAgY29uc3QgeyBzZXR0aW5ncyB9ID0gdGhpcztcclxuICAgIGlmICh0aGlzLmN1cnJlbmN5KSB7XHJcbiAgICAgIHRoaXMuX3N5bWJvbCA9IHtcclxuICAgICAgICBCUkw6ICdSJCcsXHJcbiAgICAgICAgQ0xQOiAnQ0xQJyxcclxuICAgICAgfVtzZXR0aW5ncz8uY3VycmVuY3k/LmNvZGUgfHwgJ0JSTCddO1xyXG4gICAgfSBlbHNlIGlmICh0aGlzLnBlcmNlbnQpIHtcclxuICAgICAgdGhpcy5fc3ltYm9sID0gJyUnO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgbmdPbkluaXQoKSB7XHJcbiAgICBjb25zdCB7IHNldHRpbmdzU2VydmljZSB9ID0gdGhpcztcclxuICAgIHRoaXMuX29sZFR5cGUgPSB0aGlzLnR5cGU7XHJcbiAgICBzZXR0aW5nc1NlcnZpY2Uuc2V0dGluZ3MoKS5zdWJzY3JpYmUoKHZhbDogTW9ua2V5U3R5bGVTZXR0aW5ncykgPT4ge1xyXG4gICAgICB0aGlzLnNldHRpbmdzID0gdmFsO1xyXG4gICAgICB0aGlzLmhhbmRsZVN5bWJvbCgpO1xyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICByZWdpc3Rlck9uQ2hhbmdlKGZuOiBhbnkpOiB2b2lkIHtcclxuICAgIHRoaXMub25Nb2RlbENoYW5nZSA9IGZuO1xyXG4gIH1cclxuXHJcbiAgcmVnaXN0ZXJPblRvdWNoZWQoZm46IGFueSk6IHZvaWQge1xyXG4gICAgdGhpcy5vbk1vZGVsVG91Y2hlZCA9IGZuO1xyXG4gIH1cclxuXHJcbiAgc2V0RGlzYWJsZWRTdGF0ZT8oaXNEaXNhYmxlZDogYm9vbGVhbik6IHZvaWQge1xyXG4gICAgdGhpcy5fZGlzYWJsZWQgPSBpc0Rpc2FibGVkO1xyXG4gIH1cclxuXHJcbiAgQElucHV0KClcclxuICBzZXQgdmFsdWUodmFsdWU6IGFueSkge1xyXG4gICAgdGhpcy5oYW5kbGVkVmFsdWUgPSB2YWx1ZTtcclxuICAgIHRoaXMuX2Zvcm1hdGVkVmFsdWUgPSB0aGlzLmZvcm1hdFZhbHVlKHZhbHVlKTtcclxuICAgIHRoaXMuY2RyLmRldGVjdENoYW5nZXMoKTtcclxuICAgIHRoaXMub25Nb2RlbENoYW5nZSh0aGlzLmhhbmRsZWRWYWx1ZSk7XHJcbiAgICB0aGlzLm9uTW9kZWxUb3VjaGVkKHRoaXMuaGFuZGxlZFZhbHVlKTtcclxuICB9XHJcblxyXG4gIGdldCB2YWx1ZSgpOiBhbnkge1xyXG4gICAgcmV0dXJuIHRoaXMuaGFuZGxlZFZhbHVlO1xyXG4gIH1cclxuXHJcbiAgd3JpdGVWYWx1ZSh2YWx1ZTogYW55KTogdm9pZCB7XHJcbiAgICB0aGlzLnZhbHVlID0gdmFsdWU7XHJcbiAgfVxyXG5cclxuICBvbkNoYW5nZVZhbHVlKGV2ZW50OiBhbnkpIHtcclxuICAgIGNvbnN0IHZhbHVlID0gdGhpcy5fZm9ybWF0ZWRWYWx1ZTtcclxuICAgIGV2ZW50Py5wcmV2ZW50RGVmYXVsdCgpO1xyXG4gICAgZXZlbnQ/LnN0b3BQcm9wYWdhdGlvbigpO1xyXG4gICAgY29uc3QgaGFuZGxlZCA9IHRoaXMuaGFuZGxlVmFsdWUodmFsdWUsIHRydWUpO1xyXG4gICAgdGhpcy53cml0ZVZhbHVlKGhhbmRsZWQpO1xyXG4gICAgdGhpcy5vbkNoYW5nZS5uZXh0KGhhbmRsZWQpO1xyXG4gIH1cclxuXHJcbiAgb25TaG93QW5kSGlkZVBhc3N3b3JkKCkge1xyXG4gICAgdGhpcy50eXBlID0gdGhpcy50eXBlID09PSAncGFzc3dvcmQnID8gJ3RleHQnIDogJ3Bhc3N3b3JkJztcclxuICB9XHJcblxyXG4gIEBIb3N0TGlzdGVuZXIoJ2NsaWNrJylcclxuICBvbkNsaWNrKCkge1xyXG4gICAgZG9jdW1lbnQ/LmdldEVsZW1lbnRCeUlkKHRoaXMuX2lkKT8uZ2V0RWxlbWVudHNCeVRhZ05hbWUoJ2lucHV0Jyk/LlswXT8uZm9jdXMoKTtcclxuICB9XHJcblxyXG4gIG9uS2V5UHJlc3MoZXZlbnQ6IGFueSkge1xyXG4gICAgbGV0IHBhdHRlcm4gPSBudWxsO1xyXG4gICAgY29uc3QgY21wID0gZXZlbnQ/LnRhcmdldD8udmFsdWU7XHJcbiAgICBjb25zdCBpbnB1dENoYXIgPSBTdHJpbmcuZnJvbUNoYXJDb2RlKGV2ZW50LmNoYXJDb2RlKTtcclxuICAgIGlmICh0aGlzLmN1cnJlbmN5IHx8IHRoaXMub25seU51bWJlciB8fCB0aGlzLnBlcmNlbnQpIHtcclxuICAgICAgcGF0dGVybiA9IC9bMC05XS87XHJcbiAgICAgIGlmICghdGhpcy5vbmx5TnVtYmVyICYmIGlucHV0Q2hhciA9PT0gJzAnICYmICF0aGlzLnJlcGxhY2VaZXJvKGNtcCkpIHtcclxuICAgICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xyXG4gICAgICAgIHJldHVybjtcclxuICAgICAgfVxyXG4gICAgfSBlbHNlIGlmICh0aGlzLm9ubHlBbHBoYU51bWVyaWMpIHtcclxuICAgICAgcGF0dGVybiA9IC9bXjAtOUEtWmEtel0vO1xyXG4gICAgfVxyXG5cclxuICAgIGlmIChwYXR0ZXJuICYmICFwYXR0ZXJuLnRlc3QoaW5wdXRDaGFyKSkge1xyXG4gICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iXX0=
|
|
@@ -3198,6 +3198,7 @@ class MonkeyDateRangePickerComponent {
|
|
|
3198
3198
|
constructor(fb, cdr) {
|
|
3199
3199
|
this.fb = fb;
|
|
3200
3200
|
this.cdr = cdr;
|
|
3201
|
+
this.helperMessage = '';
|
|
3201
3202
|
this.onChange = new EventEmitter();
|
|
3202
3203
|
this.today = moment().format('YYYY-MM-DD');
|
|
3203
3204
|
this.onModelChange = (value) => { };
|
|
@@ -3382,7 +3383,7 @@ class MonkeyDateRangePickerComponent {
|
|
|
3382
3383
|
}
|
|
3383
3384
|
}
|
|
3384
3385
|
MonkeyDateRangePickerComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.14", ngImport: i0, type: MonkeyDateRangePickerComponent, deps: [{ token: i1$2.FormBuilder }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
|
|
3385
|
-
MonkeyDateRangePickerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.14", type: MonkeyDateRangePickerComponent, selector: "monkey-date-range-picker", inputs: { i18n: "i18n", infoMessage: "infoMessage", errorMessage: "errorMessage", value: "value" }, outputs: { onChange: "onChange" }, providers: [
|
|
3386
|
+
MonkeyDateRangePickerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.14", type: MonkeyDateRangePickerComponent, selector: "monkey-date-range-picker", inputs: { label: "label", helperMessage: "helperMessage", i18n: "i18n", infoMessage: "infoMessage", errorMessage: "errorMessage", value: "value" }, outputs: { onChange: "onChange" }, providers: [
|
|
3386
3387
|
{
|
|
3387
3388
|
provide: NG_VALUE_ACCESSOR,
|
|
3388
3389
|
useExisting: forwardRef(() => MonkeyDateRangePickerComponent),
|
|
@@ -3391,6 +3392,14 @@ MonkeyDateRangePickerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "
|
|
|
3391
3392
|
CurrencyPipe,
|
|
3392
3393
|
], ngImport: i0, template: `
|
|
3393
3394
|
<mecx-date-range-picker-group [ngClass]="{ disabled: _disabled }" [id]="_id">
|
|
3395
|
+
<mecx-date-range-picker-group-header>
|
|
3396
|
+
<label>
|
|
3397
|
+
{{ label }}
|
|
3398
|
+
</label>
|
|
3399
|
+
<helper>
|
|
3400
|
+
{{ helperMessage }}
|
|
3401
|
+
</helper>
|
|
3402
|
+
</mecx-date-range-picker-group-header>
|
|
3394
3403
|
<mecx-date-range-picker-group-body>
|
|
3395
3404
|
<mecx-date-range-picker class="first-date-range">
|
|
3396
3405
|
<mecx-date-range-picker-header>
|
|
@@ -3543,6 +3552,14 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.14", ngImpo
|
|
|
3543
3552
|
selector: 'monkey-date-range-picker',
|
|
3544
3553
|
template: `
|
|
3545
3554
|
<mecx-date-range-picker-group [ngClass]="{ disabled: _disabled }" [id]="_id">
|
|
3555
|
+
<mecx-date-range-picker-group-header>
|
|
3556
|
+
<label>
|
|
3557
|
+
{{ label }}
|
|
3558
|
+
</label>
|
|
3559
|
+
<helper>
|
|
3560
|
+
{{ helperMessage }}
|
|
3561
|
+
</helper>
|
|
3562
|
+
</mecx-date-range-picker-group-header>
|
|
3546
3563
|
<mecx-date-range-picker-group-body>
|
|
3547
3564
|
<mecx-date-range-picker class="first-date-range">
|
|
3548
3565
|
<mecx-date-range-picker-header>
|
|
@@ -3699,7 +3716,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.14", ngImpo
|
|
|
3699
3716
|
CurrencyPipe,
|
|
3700
3717
|
],
|
|
3701
3718
|
}]
|
|
3702
|
-
}], ctorParameters: function () { return [{ type: i1$2.FormBuilder }, { type: i0.ChangeDetectorRef }]; }, propDecorators: {
|
|
3719
|
+
}], ctorParameters: function () { return [{ type: i1$2.FormBuilder }, { type: i0.ChangeDetectorRef }]; }, propDecorators: { label: [{
|
|
3720
|
+
type: Input
|
|
3721
|
+
}], helperMessage: [{
|
|
3722
|
+
type: Input
|
|
3723
|
+
}], i18n: [{
|
|
3703
3724
|
type: Input
|
|
3704
3725
|
}], infoMessage: [{
|
|
3705
3726
|
type: Input
|
|
@@ -3847,7 +3868,7 @@ class MonkeyInputComponent {
|
|
|
3847
3868
|
const inputChar = String.fromCharCode(event.charCode);
|
|
3848
3869
|
if (this.currency || this.onlyNumber || this.percent) {
|
|
3849
3870
|
pattern = /[0-9]/;
|
|
3850
|
-
if (inputChar === '0' && !this.replaceZero(cmp)) {
|
|
3871
|
+
if (!this.onlyNumber && inputChar === '0' && !this.replaceZero(cmp)) {
|
|
3851
3872
|
event.preventDefault();
|
|
3852
3873
|
return;
|
|
3853
3874
|
}
|