@tft/crispr-forms 13.0.21 → 14.0.1-rc.0
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 +77 -76
- package/esm2020/lib/abstracts/autocomplete-field.abstract.mjs +3 -3
- package/esm2020/lib/abstracts/crispr-field.abstract.mjs +3 -3
- package/esm2020/lib/crispr-forms.module.mjs +20 -21
- package/esm2020/lib/field-container/field-container.component.mjs +12 -14
- package/esm2020/lib/field.directive.mjs +8 -10
- package/esm2020/lib/form/form.component.mjs +45 -10
- package/esm2020/lib/form-group-list/form-group-list.component.mjs +8 -8
- package/esm2020/lib/form-group-list/form-group-list.module.mjs +12 -14
- package/esm2020/lib/form.helpers.mjs +1 -1
- package/esm2020/lib/material/autocomplete-chiplist-field/autocomplete-chiplist-field.component.mjs +70 -16
- package/esm2020/lib/material/autocomplete-field/autocomplete-field.component.mjs +62 -16
- package/esm2020/lib/material/button/button.component.mjs +47 -12
- package/esm2020/lib/material/checkbox-field/checkbox-field.component.mjs +49 -11
- package/esm2020/lib/material/datepicker-field/datepicker-field.component.mjs +60 -14
- package/esm2020/lib/material/divider/divider.component.mjs +31 -7
- package/esm2020/lib/material/file-upload/file-dropzone.directive.mjs +3 -3
- package/esm2020/lib/material/file-upload/file-upload.component.mjs +22 -24
- package/esm2020/lib/material/heading/heading.component.mjs +13 -15
- package/esm2020/lib/material/image-upload-field/image-upload-field.component.mjs +26 -28
- package/esm2020/lib/material/info/info.component.mjs +13 -15
- package/esm2020/lib/material/input-field/input-field.component.mjs +51 -12
- package/esm2020/lib/material/material.module.mjs +64 -168
- package/esm2020/lib/material/option/option.component.mjs +31 -6
- package/esm2020/lib/material/radio-field/radio-field.component.mjs +41 -10
- package/esm2020/lib/material/select-field/select-field.component.mjs +64 -14
- package/esm2020/lib/material/selected-file/selected-file.component.mjs +11 -13
- package/esm2020/lib/material/slider-field/slider-field.component.mjs +48 -9
- package/esm2020/lib/material/textarea-field/textarea-field.component.mjs +52 -13
- package/esm2020/lib/material/unit-conversion-field/unit-conversion-field.component.mjs +62 -16
- package/esm2020/lib/models/button.config.mjs +1 -1
- package/esm2020/lib/models/crispr-field.config.mjs +1 -1
- package/esm2020/lib/models/datepicker-field.config.mjs +1 -1
- package/esm2020/lib/models/select-field.config.mjs +1 -1
- package/esm2020/lib/pipes/crispr-pipes.module.mjs +5 -7
- package/esm2020/lib/pipes/initial-control-value.pipe.mjs +3 -3
- package/esm2020/lib/sub-group/sub-group.component.mjs +8 -8
- package/esm2020/lib/sub-group/sub-group.module.mjs +10 -12
- package/fesm2015/tft-crispr-forms.mjs +878 -494
- package/fesm2015/tft-crispr-forms.mjs.map +1 -1
- package/fesm2020/tft-crispr-forms.mjs +875 -491
- package/fesm2020/tft-crispr-forms.mjs.map +1 -1
- package/lib/abstracts/autocomplete-field.abstract.d.ts +4 -4
- package/lib/abstracts/crispr-field.abstract.d.ts +1 -1
- package/lib/crispr-forms.module.d.ts +11 -11
- package/lib/field-container/field-container.component.d.ts +2 -2
- package/lib/field.directive.d.ts +1 -1
- package/lib/form/form.component.d.ts +12 -2
- package/lib/form-group-list/form-group-list.component.d.ts +3 -3
- package/lib/form.helpers.d.ts +2 -2
- package/lib/material/autocomplete-chiplist-field/autocomplete-chiplist-field.component.d.ts +16 -1
- package/lib/material/autocomplete-field/autocomplete-field.component.d.ts +14 -1
- package/lib/material/button/button.component.d.ts +11 -1
- package/lib/material/checkbox-field/checkbox-field.component.d.ts +14 -3
- package/lib/material/datepicker-field/datepicker-field.component.d.ts +18 -6
- package/lib/material/divider/divider.component.d.ts +8 -1
- package/lib/material/file-upload/file-dropzone.directive.d.ts +1 -1
- package/lib/material/file-upload/file-upload.component.d.ts +3 -3
- package/lib/material/heading/heading.component.d.ts +1 -1
- package/lib/material/image-upload-field/image-upload-field.component.d.ts +3 -3
- package/lib/material/info/info.component.d.ts +1 -1
- package/lib/material/input-field/input-field.component.d.ts +14 -3
- package/lib/material/material.module.d.ts +21 -39
- package/lib/material/option/option.component.d.ts +8 -1
- package/lib/material/radio-field/radio-field.component.d.ts +12 -3
- package/lib/material/select-field/select-field.component.d.ts +17 -3
- package/lib/material/selected-file/selected-file.component.d.ts +1 -1
- package/lib/material/slider-field/slider-field.component.d.ts +14 -3
- package/lib/material/textarea-field/textarea-field.component.d.ts +14 -3
- package/lib/material/unit-conversion-field/unit-conversion-field.component.d.ts +18 -5
- package/lib/models/crispr-field.config.d.ts +8 -1
- package/lib/models/datepicker-field.config.d.ts +3 -4
- package/lib/models/select-field.config.d.ts +2 -1
- package/lib/pipes/initial-control-value.pipe.d.ts +1 -1
- package/lib/sub-group/sub-group.component.d.ts +3 -3
- package/package.json +12 -14
- package/tft-crispr-forms-14.0.1-rc.0.tgz +0 -0
- package/tft-crispr-forms-13.0.21.tgz +0 -0
- package/tft-crispr-forms.d.ts +0 -5
|
@@ -2,13 +2,13 @@ import { Component, ChangeDetectionStrategy, ChangeDetectorRef } from '@angular/
|
|
|
2
2
|
import { createControlForType } from '../form.helpers';
|
|
3
3
|
import { CrisprFieldComponent, crisprControlMixin } from '../abstracts';
|
|
4
4
|
import * as i0 from "@angular/core";
|
|
5
|
-
import * as i1 from "
|
|
5
|
+
import * as i1 from "@angular/common";
|
|
6
6
|
import * as i2 from "@angular/material/button";
|
|
7
7
|
import * as i3 from "@angular/material/icon";
|
|
8
|
-
import * as i4 from "
|
|
9
|
-
import * as i5 from "@
|
|
10
|
-
import * as i6 from "
|
|
11
|
-
import * as i7 from "
|
|
8
|
+
import * as i4 from "../field-container/field-container.component";
|
|
9
|
+
import * as i5 from "@angular/forms";
|
|
10
|
+
import * as i6 from "../field.directive";
|
|
11
|
+
import * as i7 from "@tft/form-validation-handler";
|
|
12
12
|
import * as i8 from "../pipes/initial-control-value.pipe";
|
|
13
13
|
const defaultConfig = {
|
|
14
14
|
addButtonLabel: 'ADD ITEM',
|
|
@@ -68,9 +68,9 @@ export class FormGroupListComponent extends FormGroupListMixin {
|
|
|
68
68
|
this.control.removeAt(index);
|
|
69
69
|
}
|
|
70
70
|
}
|
|
71
|
-
FormGroupListComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
72
|
-
FormGroupListComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "
|
|
73
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
71
|
+
FormGroupListComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.1", ngImport: i0, type: FormGroupListComponent, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
|
|
72
|
+
FormGroupListComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.1", type: FormGroupListComponent, selector: "crispr-form-group-list", usesInheritance: true, ngImport: i0, template: "\n<crispr-field-container\n [config]=\"config\"\n [group]=\"group\"\n [formGroup]=\"group\">\n\n <div [formArrayName]=\"config.controlName\">\n <!-- Don't add trackBy function, it confuses the state of the array -->\n <div *ngFor=\"let con of control?.controls; let i = index;\">\n <!-- TODO: use content projection to allow custom item label component -->\n <div class=\"item-header\">\n <span class=\"mat-h2\"> {{ config.itemLabelBuilder ? config.itemLabelBuilder(i) : 'Item ' + (i + 1) }} </span>\n <button\n mat-icon-button\n type=\"button\"\n *ngIf=\"i + 1 > config.minListLength\">\n <mat-icon (click)=\"clickDelete(i)\">delete</mat-icon>\n </button>\n </div>\n <div\n [formGroup]=\"con\">\n <!-- TODO: if chiplists didn't need to have labels mixed in with their values we could use [value]=\"control.value\" below -->\n <ng-container\n *ngFor=\"let field of config.itemConfig.fields;\"\n crisprField\n [value]=\"blockValue ? null : value && value[i] | initialControlValue : field\"\n [config]=\"field\"\n [group]=\"con\">\n </ng-container>\n </div>\n </div>\n </div>\n <div class=\"group-footer\">\n <button\n type=\"button\"\n class=\"add\"\n mat-raised-button\n [color]=\"config.addButtonColor\"\n (click)=\"clickAdd()\">\n {{config.addItemLabel || config.addButtonLabel}}\n </button>\n </div>\n\n</crispr-field-container>\n", styles: [".item-header{display:flex;justify-content:space-between}.group-footer{display:flex;justify-content:flex-end}.group-footer button.add{margin-bottom:16px}\n"], dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "component", type: i3.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i4.FieldContainerComponent, selector: "crispr-field-container", inputs: ["config", "group", "inlineField"] }, { kind: "directive", type: i5.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i5.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i5.FormArrayName, selector: "[formArrayName]", inputs: ["formArrayName"] }, { kind: "directive", type: i6.CrisprFieldDirective, selector: "[crisprField]", inputs: ["config", "group", "value"] }, { kind: "directive", type: i7.ControlErrorContainerDirective, selector: "[controlErrorContainer], [formGroup]" }, { kind: "pipe", type: i8.InitialControlValuePipe, name: "initialControlValue" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, preserveWhitespaces: true });
|
|
73
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.1", ngImport: i0, type: FormGroupListComponent, decorators: [{
|
|
74
74
|
type: Component,
|
|
75
75
|
args: [{ selector: 'crispr-form-group-list', changeDetection: ChangeDetectionStrategy.OnPush, template: "\n<crispr-field-container\n [config]=\"config\"\n [group]=\"group\"\n [formGroup]=\"group\">\n\n <div [formArrayName]=\"config.controlName\">\n <!-- Don't add trackBy function, it confuses the state of the array -->\n <div *ngFor=\"let con of control?.controls; let i = index;\">\n <!-- TODO: use content projection to allow custom item label component -->\n <div class=\"item-header\">\n <span class=\"mat-h2\"> {{ config.itemLabelBuilder ? config.itemLabelBuilder(i) : 'Item ' + (i + 1) }} </span>\n <button\n mat-icon-button\n type=\"button\"\n *ngIf=\"i + 1 > config.minListLength\">\n <mat-icon (click)=\"clickDelete(i)\">delete</mat-icon>\n </button>\n </div>\n <div\n [formGroup]=\"con\">\n <!-- TODO: if chiplists didn't need to have labels mixed in with their values we could use [value]=\"control.value\" below -->\n <ng-container\n *ngFor=\"let field of config.itemConfig.fields;\"\n crisprField\n [value]=\"blockValue ? null : value && value[i] | initialControlValue : field\"\n [config]=\"field\"\n [group]=\"con\">\n </ng-container>\n </div>\n </div>\n </div>\n <div class=\"group-footer\">\n <button\n type=\"button\"\n class=\"add\"\n mat-raised-button\n [color]=\"config.addButtonColor\"\n (click)=\"clickAdd()\">\n {{config.addItemLabel || config.addButtonLabel}}\n </button>\n </div>\n\n</crispr-field-container>\n", styles: [".item-header{display:flex;justify-content:space-between}.group-footer{display:flex;justify-content:flex-end}.group-footer button.add{margin-bottom:16px}\n"] }]
|
|
76
76
|
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }]; } });
|
|
@@ -11,8 +11,8 @@ import { FormValidationHandlerModule } from '@tft/form-validation-handler';
|
|
|
11
11
|
import * as i0 from "@angular/core";
|
|
12
12
|
export class FormGroupListModule {
|
|
13
13
|
}
|
|
14
|
-
FormGroupListModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
15
|
-
FormGroupListModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "
|
|
14
|
+
FormGroupListModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.1", ngImport: i0, type: FormGroupListModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
15
|
+
FormGroupListModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.0.1", ngImport: i0, type: FormGroupListModule, declarations: [FormGroupListComponent], imports: [CommonModule,
|
|
16
16
|
MatButtonModule,
|
|
17
17
|
MatIconModule,
|
|
18
18
|
FieldContainerModule,
|
|
@@ -20,17 +20,15 @@ FormGroupListModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", ver
|
|
|
20
20
|
CrisprFieldModule,
|
|
21
21
|
CrisprPipesModule,
|
|
22
22
|
FormValidationHandlerModule], exports: [FormGroupListComponent] });
|
|
23
|
-
FormGroupListModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
]] });
|
|
33
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.1", ngImport: i0, type: FormGroupListModule, decorators: [{
|
|
23
|
+
FormGroupListModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.0.1", ngImport: i0, type: FormGroupListModule, imports: [CommonModule,
|
|
24
|
+
MatButtonModule,
|
|
25
|
+
MatIconModule,
|
|
26
|
+
FieldContainerModule,
|
|
27
|
+
ReactiveFormsModule,
|
|
28
|
+
CrisprFieldModule,
|
|
29
|
+
CrisprPipesModule,
|
|
30
|
+
FormValidationHandlerModule] });
|
|
31
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.1", ngImport: i0, type: FormGroupListModule, decorators: [{
|
|
34
32
|
type: NgModule,
|
|
35
33
|
args: [{
|
|
36
34
|
imports: [
|
|
@@ -51,4 +49,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.1", ngImpor
|
|
|
51
49
|
]
|
|
52
50
|
}]
|
|
53
51
|
}] });
|
|
54
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
52
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybS1ncm91cC1saXN0Lm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY3Jpc3ByLWZvcm1zL3NyYy9saWIvZm9ybS1ncm91cC1saXN0L2Zvcm0tZ3JvdXAtbGlzdC5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQzNELE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQzFELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUN2RCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUN2RCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUNqRSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3JELE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBQ3JFLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsMkJBQTJCLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQzs7QUFxQjNFLE1BQU0sT0FBTyxtQkFBbUI7O2dIQUFuQixtQkFBbUI7aUhBQW5CLG1CQUFtQixpQkFKNUIsc0JBQXNCLGFBYnRCLFlBQVk7UUFDWixlQUFlO1FBQ2YsYUFBYTtRQUNiLG9CQUFvQjtRQUNwQixtQkFBbUI7UUFDbkIsaUJBQWlCO1FBQ2pCLGlCQUFpQjtRQUNqQiwyQkFBMkIsYUFHM0Isc0JBQXNCO2lIQU9iLG1CQUFtQixZQWpCNUIsWUFBWTtRQUNaLGVBQWU7UUFDZixhQUFhO1FBQ2Isb0JBQW9CO1FBQ3BCLG1CQUFtQjtRQUNuQixpQkFBaUI7UUFDakIsaUJBQWlCO1FBQ2pCLDJCQUEyQjsyRkFVbEIsbUJBQW1CO2tCQW5CL0IsUUFBUTttQkFBQztvQkFDUixPQUFPLEVBQUU7d0JBQ1AsWUFBWTt3QkFDWixlQUFlO3dCQUNmLGFBQWE7d0JBQ2Isb0JBQW9CO3dCQUNwQixtQkFBbUI7d0JBQ25CLGlCQUFpQjt3QkFDakIsaUJBQWlCO3dCQUNqQiwyQkFBMkI7cUJBQzVCO29CQUNELE9BQU8sRUFBRTt3QkFDUCxzQkFBc0I7cUJBQ3ZCO29CQUNELFlBQVksRUFBRTt3QkFDWixzQkFBc0I7cUJBQ3ZCO2lCQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTWF0QnV0dG9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvYnV0dG9uJztcbmltcG9ydCB7IEZpZWxkQ29udGFpbmVyTW9kdWxlIH0gZnJvbSAnLi4vZmllbGQtY29udGFpbmVyJztcbmltcG9ydCB7IE1hdEljb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9pY29uJztcbmltcG9ydCB7IENyaXNwckZpZWxkTW9kdWxlIH0gZnJvbSAnLi4vZmllbGQuZGlyZWN0aXZlJztcbmltcG9ydCB7IENyaXNwclBpcGVzTW9kdWxlIH0gZnJvbSAnLi4vcGlwZXMvY3Jpc3ByLXBpcGVzLm1vZHVsZSc7XG5pbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgUmVhY3RpdmVGb3Jtc01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IEZvcm1Hcm91cExpc3RDb21wb25lbnQgfSBmcm9tICcuL2Zvcm0tZ3JvdXAtbGlzdC5jb21wb25lbnQnO1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IEZvcm1WYWxpZGF0aW9uSGFuZGxlck1vZHVsZSB9IGZyb20gJ0B0ZnQvZm9ybS12YWxpZGF0aW9uLWhhbmRsZXInO1xuXG5ATmdNb2R1bGUoe1xuICBpbXBvcnRzOiBbXG4gICAgQ29tbW9uTW9kdWxlLFxuICAgIE1hdEJ1dHRvbk1vZHVsZSxcbiAgICBNYXRJY29uTW9kdWxlLFxuICAgIEZpZWxkQ29udGFpbmVyTW9kdWxlLFxuICAgIFJlYWN0aXZlRm9ybXNNb2R1bGUsXG4gICAgQ3Jpc3ByRmllbGRNb2R1bGUsXG4gICAgQ3Jpc3ByUGlwZXNNb2R1bGUsXG4gICAgRm9ybVZhbGlkYXRpb25IYW5kbGVyTW9kdWxlXG4gIF0sXG4gIGV4cG9ydHM6IFtcbiAgICBGb3JtR3JvdXBMaXN0Q29tcG9uZW50XG4gIF0sXG4gIGRlY2xhcmF0aW9uczogW1xuICAgIEZvcm1Hcm91cExpc3RDb21wb25lbnRcbiAgXVxufSlcblxuZXhwb3J0IGNsYXNzIEZvcm1Hcm91cExpc3RNb2R1bGUge1xufVxuIl19
|
|
@@ -187,4 +187,4 @@ export function filterOptionsByLabel(options, searchString) {
|
|
|
187
187
|
return option.label && option.label.toLowerCase().includes(searchString.toLowerCase());
|
|
188
188
|
});
|
|
189
189
|
}
|
|
190
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybS5oZWxwZXJzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vbGlicy9jcmlzcHItZm9ybXMvc3JjL2xpYi9mb3JtLmhlbHBlcnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBV0EsT0FBTyxFQUNMLFdBQVcsR0FDWixNQUFNLDhCQUE4QixDQUFBO0FBQ3JDLE9BQU8sRUFDTCxJQUFJLEVBRUosRUFBRSxFQUNGLFlBQVksRUFDWixhQUFhLEVBRWQsTUFBTSxNQUFNLENBQUM7QUFDZCxPQUFPLEVBQUUsU0FBUyxFQUFFLFNBQVMsRUFBRSxXQUFXLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNuRSxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFDM0MsT0FBTyxFQUFFLEdBQUcsRUFBZSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQXNCN0Q7Ozs7O0VBS0U7QUFDRixNQUFNLFVBQVUscUJBQXFCLENBQUMsS0FBZ0IsRUFBRSxNQUEwQjtJQUNoRixrREFBa0Q7SUFDbEQsSUFBSSxNQUFNLElBQUksTUFBTSxDQUFDLFdBQVcsSUFBSSxLQUFLLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsRUFBRTtRQUNoRSxPQUFPLGVBQWUsQ0FBQyxLQUFLLEVBQUUsTUFBTSxDQUFDLFdBQVcsQ0FBQyxDQUFDLElBQUk7UUFDcEQsb0ZBQW9GO1FBQ3BGLE9BQU8sQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLEVBQ3RCLEdBQUcsQ0FBQyxDQUFDLGVBQXdCLEVBQUUsRUFBRTtZQUMvQix3R0FBd0c7WUFDeEcscUhBQXFIO1lBQ3JILElBQUssTUFBTSxDQUFDLFFBQVEsSUFBSSxNQUFNLENBQUMsUUFBUSxZQUFZLFFBQVEsRUFBRztnQkFDNUQsT0FBTyxNQUFNLENBQUMsUUFBUSxDQUFDLGVBQWUsQ0FBQyxDQUFDO2FBQ3pDO2lCQUFNO2dCQUFFLE9BQU8sZUFBZSxDQUFDO2FBQUU7UUFD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T0FBdUIsRUFBRSxZQUFvQjtJQUNoRixPQUFPLE9BQU8sQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLEVBQUU7UUFDN0IsT0FBTyxNQUFNLENBQUMsS0FBSyxJQUFJLE1BQU0sQ0FBQyxLQUFLLENBQUMsV0FBVyxFQUFFLENBQUMsUUFBUSxDQUFDLFlBQVksQ0FBQyxXQUFXLEVBQUUsQ0FBQyxDQUFDO0lBQ3pGLENBQUMsQ0FBQyxDQUFDO0FBQ0wsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIHtcbiAgU2VsZWN0T3B0aW9uLFxuICBBbnlGaWVsZENvbmZpZyxcbiAgRm9ybUNvbmZpZyxcbiAgRm9ybUdyb3VwTGlzdENvbmZpZyxcbiAgQ3Jpc3ByQ29udHJvbENvbmZpZyxcbiAgT3B0aW9uc1R5cGUsXG4gIEF1dG9jb21wbGV0ZU9wdGlvbnNDYWxsYmFjayxcbiAgQ3Jpc3ByRmllbGRDb25maWcsXG4gIENvbnRyb2xWYWx1ZVxufSBmcm9tICcuL21vZGVscyc7XG5pbXBvcnQge1xuICBDb250cm9sVHlwZSxcbn0gZnJvbSAnLi9tb2RlbHMvY3Jpc3ByLWZpZWxkLmNvbmZpZydcbmltcG9ydCB7XG4gIGZyb20sXG4gIE9ic2VydmFibGUsXG4gIG9mLFxuICBpc09ic2VydmFibGUsXG4gIGNvbWJpbmVMYXRlc3QsXG4gIE9wZXJhdG9yRnVuY3Rpb25cbn0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBGb3JtR3JvdXAsIEZvcm1BcnJheSwgRm9ybUNvbnRyb2wgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyB2YWx1ZUluIH0gZnJvbSAnLi9mb3JtLm9wZXJhdG9ycyc7XG5pbXBvcnQgeyBtYXAsIHNoYXJlUmVwbGF5LCBzdGFydFdpdGggfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5cbi8qKlxuICogRFlOQU1JQyBGT1JNIFVUSUxTOiBhIGNvbGxlY3Rpb24gb2YgcHVyZS9tb3N0bHkgcHVyZSBmdW5jdGlvbnMgdGhhdCBhcmUgdXNlZnVsIGJvdGggaW50ZXJuYWxseSBhbmQgZm9yXG4gKiBkZXZlbG9waW5nIHRoZSBjb25zdW1pbmcgYXBwLlxuICpcbiAqIFRoZXkgYXJlIHNvcnRlZCBieSB1c2UgY2FzZTogYnVpbGRpbmcgb3V0IHRoZSBmb3JtIG9iamVjdDsgaGVscGVyIGZ1bmN0aW9ucyB0byB1c2Ugd2l0aCB0aGUgZGlzYWJsZWQkIGZ1bmN0aW9uO1xuICogaGVscGVyIGZ1bmN0aW9ucyB0byB1c2Ugd2l0aCB0aGUgY29tcHV0ZSBmaWVsZCBmdW5jdGlvbjsgYW5kIG90aGVyIGxvZ2ljIHNoYXJlZCBiZXR3ZWVuIGNvbXBvbmVudHNcbiAqL1xuXG4vKipcbiAqIFJlcXVpcmVkIGNvbmZpZ3VyYXRpb24gdG8gdXNlIHdpdGggY2hlY2tDb250cm9sRm9yVmFsdWVzIGZ1bmN0aW9uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQ2hlY2tDb250cm9sQ29uZmlnIHtcbiAgLy8gdGhlIGNvbnRyb2wgbmFtZSB0byB3YXRjaFxuICBjb250cm9sTmFtZTogc3RyaW5nO1xuICAvLyB0aGUgdmFsdWVzIHRvIHdhdGNoIGZvclxuICB2YWx1ZXM6IHN0cmluZ1tdO1xuICAvLyB0aGUgZnVuY3Rpb24gdG8gcnVuIG9uIHRoZSBib29sZWFuIHJldHVybmVkIGJ5IHRoZSB3YXRjaGVyXG4gIGV2YWx1YXRlPzogKGlzVmFsdWVJblZhbHVlczogYm9vbGVhbikgPT4gYm9vbGVhbjtcbn1cblxuLyoqXG4qIFdhdGNoZXMgYSBzaW5nbGUgY29udHJvbCBmb3IgYSBsaXN0IG9mIHZhbHVlcywgcmV0dXJucyB0cnVlIHdoZW4gZmllbGQgdmFsdWUgbWF0Y2hlcyBhbnkgdmFsdWUgaW4gbGlzdFxuKiB1bmxlc3MgYW4gZXZhbHVhdGUgbWV0aG9kIGlzIGZvdW5kIG9uIGNvbmZpZywgaW4gd2hpY2ggY2FzZSB0aGF0IG1ldGhvZCBpcyBydW4gb24gdGhlIHJldHVybmVkIGJvb2xlYW4gdmFsdWVcbiogQHBhcmFtIGdyb3VwIHRoZSBkaXJlY3QgcGFyZW50IG9mIHRoZSBmaWVsZCB3ZSB3YW50IHRvIHdhdGNoXG4qIEBwYXJhbSBjb25maWdcbiovXG5leHBvcnQgZnVuY3Rpb24gY2hlY2tDb250cm9sRm9yVmFsdWVzKGdyb3VwOiBGb3JtR3JvdXAsIGNvbmZpZzogQ2hlY2tDb250cm9sQ29uZmlnKTogT2JzZXJ2YWJsZTxib29sZWFuPiB7XG4gIC8vIGNoZWNrIHRoYXQgYWxsIHRoZSBwaWVjZXMgd2UgbmVlZCBhcmUgYXZhaWxhYmxlXG4gIGlmIChjb25maWcgJiYgY29uZmlnLmNvbnRyb2xOYW1lICYmIEFycmF5LmlzQXJyYXkoY29uZmlnLnZhbHVlcykpIHtcbiAgICByZXR1cm4gZ2V0VmFsdWVDaGFuZ2VzKGdyb3VwLCBjb25maWcuY29udHJvbE5hbWUpLnBpcGUoXG4gICAgICAvLyByZXR1cm4gYSBib29sZWFuLCB0cnVlIGlmIHZhbHVlIGlzIGluIHRoZSB2YWx1ZXMgYmVpbmcgd2F0Y2ggZm9yLCBvdGhlcndpc2UgZmFsc2VcbiAgICAgIHZhbHVlSW4oY29uZmlnLnZhbHVlcyksXG4gICAgICBtYXAoKGlzVmFsdWVJblZhbHVlczogYm9vbGVhbikgPT4ge1xuICAgICAgICAvLyBzaW5jZSB3ZSBjYW4gb25seSBjaGVjayBpZiB0aGUgdmFsdWUgaXMgaW4gdGhlIGxpc3Qgb2Ygd2F0Y2hlZCB2YWx1ZXMsIHRoZSBldmFsdWF0ZSBmdW5jdGlvbiBnaXZlcyB1c1xuICAgICAgICAvLyBhIGNoYW5jZSB0byBtYWtlIG90aGVyIGRlY2lzaW9ucyBiYXNlZCBvbiBpZiB0aGUgYm9vbGVhbiByZXR1cm5lZCwgZS5nLiByZXR1cm4gdHJ1ZSBpZiB2YWx1ZSBub3QgaW4gd2F0Y2hlZCB2YWx1ZXNcbiAgICAgICAgaWYgKCBjb25maWcuZXZhbHVhdGUgJiYgY29uZmlnLmV2YWx1YXRlIGluc3RhbmNlb2YgRnVuY3Rpb24gKSB7XG4gICAgICAgICAgcmV0dXJuIGNvbmZpZy5ldmFsdWF0ZShpc1ZhbHVlSW5WYWx1ZXMpO1xuICAgICAgICB9IGVsc2UgeyByZXR1cm4gaXNWYWx1ZUluVmFsdWVzOyB9XG4gICAgICB9KVxuICAgICk7XG4gIH0gZWxzZSB7XG4gICAgLy9cbiAgICByZXR1cm4gb2YodHJ1ZSk7XG4gIH1cbn1cblxuLyoqXG4gKiBUaGUgcmVxdWlyZWQgY29uZmlndXJhdGlvbiBmb3IgcnVubmluZyB0aGUgY2hlY2tDb250cm9sc0ZvclZhbHVlcyBmdW5jdGlvbi5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBDaGVja0NvbnRyb2xzQ29uZmlnIHtcbiAgLy8gYW4gYXJyYXkgb2YgY29udHJvbHMgdG8gd2F0Y2ggYW5kIHRoZSB2YWx1ZXMgdG8gY2hlY2sgZm9yXG4gIHdhdGNoQ29uZmlnczogQ2hlY2tDb250cm9sQ29uZmlnW107XG4gIC8vIHRoZSBmdW5jdGlvbiB0byBydW4gYWdhaW5zdCB0aGUgYXJyYXkgb2YgY3VycmVudCBmaWVsZCB2YWx1ZUluIHJlc3BvbnNlc1xuICBldmFsdWF0ZT86ICggYm9vbHM6IGJvb2xlYW5bXSApID0+IGJvb2xlYW47XG59XG5cbi8qKlxuICogV2F0Y2hlcyBhIGxpc3Qgb2YgZmllbGRzIGZvciBpbmRpdmlkdWFsIGxpc3RzIG9mIHZhbHVlcyByZXR1cm5pbmcgdHJ1ZSB3aGVuIGFueSBmaWVsZCBjb250YWlucyBvbmVcbiAqIG9mIHRoZSB2YWx1ZXMgYmVpbmcgd2F0Y2hlZCBmb3IsIG9yIG9wdGlvbmFsbHkgcnVubmluZyBhIGZ1bmN0aW9uIG9uIHRoZSBhcnJheSBvZiByZXNvbHZlZCBib29sZWFuc1xuICogZnJvbSB0aGUgbGlzdGVkIGZpZWxkcyBhbmQgcmV0dXJuaW5nIGEgYm9vbGVhblxuICogQHBhcmFtIGdyb3VwIHRoZSBmb3JtIGdyb3VwIHRoYXQgaGFzIHRoZSBmaWVsZHMgdG8gd2F0Y2ggYXMgZGlyZWN0IGRlc2NlbmRhbnRzXG4gKiBAcGFyYW0gY29uZmlnIHRoZSBjb25maWd1cmF0aW9uIHRvIHVzZSB3aGVuIGNhbGxpbmcgdGhlIGZ1bmN0aW9uXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBjaGVja0NvbnRyb2xzRm9yVmFsdWVzKGdyb3VwOiBGb3JtR3JvdXAsIGNvbmZpZzogQ2hlY2tDb250cm9sc0NvbmZpZyk6IE9ic2VydmFibGU8YW55PiB7XG4gIC8vIGlmIG5vIGNvbmZpZyBpcyBwYXNzZWQgd2UganVzdCB3YW50IHRvIHNob3cgdGhlIGZpZWxkLCBzbyB3ZSByZXR1cm4gYW4gb2JzZXJ2YWJsZSBvZiB0cnVlXG4gIGlmICghY29uZmlnIHx8ICFjb25maWcud2F0Y2hDb25maWdzKSB7IHJldHVybiBvZih0cnVlKTsgfVxuICAvLyB3ZSBydW4gY2hlY2tDb250cm9sRm9yVmFsdWVzIG9uIGV2ZXJ5IGNvbnRyb2wgaW4gdGhlIGxpc3Qgb2YgV2F0Y2hDb25maWdzIGNyZWF0aW5nXG4gIC8vIGFuIGFycmF5IG9mIE9ic2VydmFibGUgd2F0Y2hpbmcgZmllbGRzIGZvciB2YWx1ZXNcbiAgY29uc3QgZmllbGRUcmlnZ2VycyA9IGNvbmZpZy53YXRjaENvbmZpZ3MubWFwKHdhdGNoQ29uZmlnID0+IHtcbiAgICAvLyByZXNvbHZlcyBhIGJvb2xlYW4sIHRydWUgd2hlbiBmaWVsZCB2YWx1ZSBtYXRjaGVzIGEgd2F0Y2hlZCB2YWx1ZSwgb3RoZXJ3aXNlIGZhbHNlXG4gICAgcmV0dXJuIGNoZWNrQ29udHJvbEZvclZhbHVlcyhncm91cCwgd2F0Y2hDb25maWcpO1xuICB9KTtcblxuICByZXR1cm4gY29tYmluZUxhdGVzdChcbiAgICBmaWVsZFRyaWdnZXJzXG4gICkucGlwZShcbiAgICBzdGFydFdpdGgoW3RydWVdKSxcbiAgICBtYXAoKGJvb2xlYW5zOiBib29sZWFuW10pID0+IHtcbiAgICAgIC8vIGlmIHRoZSB1c2VyIHBhc3NlZCBhbiBldmFsdWF0ZSBmdW5jdGlvbiB1c2UgaXRcbiAgICAgIGlmIChjb25maWcuZXZhbHVhdGUgJiYgY29uZmlnLmV2YWx1YXRlIGluc3RhbmNlb2YgRnVuY3Rpb24pIHtcbiAgICAgICAgcmV0dXJuIGNvbmZpZy5ldmFsdWF0ZShib29sZWFucyk7XG4gICAgICB9IGVsc2UgeyAvLyBvdGhlcndpc2Ugd2UgcmV0dXJuIHRydWUgaWYgYW55IG9mIHRoZSB3YXRjaGVkIGZpZWxkcyByZXNvbHZlIHRvIHRydWVcbiAgICAgICAgcmV0dXJuIGJvb2xlYW5zLnNvbWUoYm9vbCA9PiBib29sKTtcbiAgICAgIH1cbiAgICB9KVxuICApO1xufVxuXG4vKipcbiAqIFRoZSByZXF1aXJlZCBjb25maWd1cmF0aW9uIHdoZW4gcnVubmluZyB0aGUgY29tcHV0ZVZhbHVlIGZ1bmN0aW9uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQ29tcHV0ZUZpZWxkQ29uZmlnPFQgPSBhbnksIFJUID0gYW55PiB7XG4gIC8vIGFycmF5IG9mIGNvbnRyb2wgbmFtZXMgd2hvJ3MgdmFsdWVzIHdlIHdhbnQgdG8gd2F0Y2hcbiAgY29udHJvbE5hbWVzVG9XYXRjaDogc3RyaW5nW107XG4gIC8vIHRoZSBmdW5jdGlvbiB3ZSB3YW50IHRvIGNhbGwgb24gdGhlIGFycmF5IG9mIHdhdGNoZWQgdmFsdWVzIHRvIGNvbXB1dGUgdGhlIHZhbHVlIG9mIHRoZSBjb250cm9sIHdlXG4gIGNvbXB1dGVDYWxsYmFjazogKFxuICAgIHZhbHVlczogKFQpW11cbiAgKSA9PiBSVDtcbn1cblxuLyoqXG4gKiBXYXRjaGVzIHZhbHVlcyBvbiBhbiBhcnJheSBvZiBmaWVsZHMsIGNvbXB1dGluZyB0aGVpciB2YWx1ZXMgYXMgdGhleSBjaGFuZ2VcbiAqIEBwYXJhbSBncm91cCB0aGUgZ3JvdXAgdG8gZ2V0IHRoZSBmaWVsZHMgZnJvbSwgZm9yIG5vdyBpdCBjYW4gb25seSBiZSB0aGUgcGFyZW50IG9mIHRoZSBjb21wdXRlZCBmaWVsZFxuICogQHBhcmFtIGNvbXB1dGVGaWVsZHNDb25maWcgdGhlIGNvbmZpZ3VyYXRpb24gdGhhdCBkcml2ZXMgdGhlIGNvbXB1dGF0aW9uLCBob2xkcyB0aGUgbmFtZXMgdG8gd2F0Y2ggYW5kIHRoZVxuICogY29tcHV0YXRpb24gZnVuY3Rpb24gdGhhdCBnZXQgY2FsbGVkIGFnYWluc3QgdGhlIGFycmF5IG9mIHZhbHVlc1xuICovXG5leHBvcnQgZnVuY3Rpb24gY29tcHV0ZVZhbHVlRnJvbUZpZWxkcyhncm91cDogRm9ybUdyb3VwLCBjb21wdXRlRmllbGRzQ29uZmlnOiBDb21wdXRlRmllbGRDb25maWcpOiBPYnNlcnZhYmxlPGFueT4ge1xuICAvLyBUT0RPOiBiZXR0ZXIgY2hlY2tpbmdcbiAgY29uc3QgeyBjb250cm9sTmFtZXNUb1dhdGNoIH0gPSBjb21wdXRlRmllbGRzQ29uZmlnO1xuICAvL2NyZWF0ZXMgYW4gb2JzZXJ2YWJsZSBsaXN0ZW5lciBmb3IgZWFjaCBjb250cm9sIGluIHRoZSBjb250cm9sTmFtZXNUb1dhdGNoIGFycmF5XG4gIHJldHVybiBjb21iaW5lTGF0ZXN0KFxuICAgIGNvbnRyb2xOYW1lc1RvV2F0Y2gubWFwKGNvbnRyb2xOYW1lVG9XYXRjaCA9PiBnZXRWYWx1ZUNoYW5nZXMoZ3JvdXAsIGNvbnRyb2xOYW1lVG9XYXRjaCkpXG4gICkucGlwZShcbiAgICAvLyBlYWNoIHRpbWUgYSB3YXRjaGVkIGZpZWxkIHZhbHVlcyBjaGFuZ2VzIGEgbmV3IGFycmF5IG9mIHRoZSBsYXRlc3QgZmllbGQgdmFsdWVzIGlzIHBpcGUgdGhyb3VnaCB0byB0aGVcbiAgICAvLyBjb21wdXRlIGNhbGxiYWNrLiBXaGljaCBydW5zIHRoZSB1c2VycyBsb2dpYyBvbiB0aGUgdmFsdWVzIHRvIGNvbXB1dGUgdGhpcyBmaWVsZHMgdmFsdWVcbiAgICBtYXAodmFsdWVzQXJyYXkgPT4gY29tcHV0ZUZpZWxkc0NvbmZpZy5jb21wdXRlQ2FsbGJhY2sodmFsdWVzQXJyYXkpKSxcbiAgKTtcbn1cblxuLyoqXG4gKiBBIHNpbXBsZSB3cmFwcGVyIGZvciBkb2luZyBlcnJvciBjaGVja2luZyBhcm91bmQgZ2V0dGluZyB0aGUgdmFsdWVDaGFuZ2VzIG9ic2VydmFibGUgZnJvbSBhIGNvbnRyb2wgb24gYSBmb3JtIGdyb3VwXG4gKiBAcGFyYW0gZ3JvdXAgdGhlIGZvcm0gZ3JvdXAgd2Ugd2FudCB0byBwdWxsIHRoZSBvYnNlcnZhYmxlIGZyb21cbiAqIEBwYXJhbSBjb250cm9sTmFtZSB0aGUgbmFtZSBvZiB0aGUgY29udHJvbCB3aG8ncyB2YWx1ZSB3ZSB3YW50IHRvIHN1YnNjcmliZSB0b1xuICovXG5mdW5jdGlvbiBnZXRWYWx1ZUNoYW5nZXMoZ3JvdXA6IEZvcm1Hcm91cCwgY29udHJvbE5hbWU6IHN0cmluZykge1xuICBjb25zdCBjb250cm9sID0gZ3JvdXAuZ2V0KGNvbnRyb2xOYW1lKTtcbiAgaWYgKCFjb250cm9sKSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKGBObyBjb250cm9sIHdpdGggY29udHJvbE5hbWUgJHtjb250cm9sTmFtZX1gLCApO1xuICB9XG4gIHJldHVybiBjb250cm9sLnZhbHVlQ2hhbmdlcztcbn1cbi8qKlxuICogIFRPRE86IG1vdmUgdG8gdXRpbHMgbGlicmFyeSBhZnRlciBsaWJyYXJ5IGlzIGJ1aWx0XG4gKiAgQWxsb3dzIGRldmVsb3BlciB0byBwYXNzIGFuIGFycmF5IG9mIG9wZXJhdG9ycyBpbnRvIHRoZSBwaXBlIG9mIGFuIE9ic2VydmFibGUuXG4gKiAgVXNlZnVsIGZvciBjcmVhdGluZyBmdW5jdGlvbiB3aXRoIGEgdmFyaWFibGUgYW1vdW50IG9mIG9wZXJhdG9ycyB0byBiZSBydW5cbiAqIEBwYXJhbSBvYnNlcnZhYmxlIHRoZSBvYnNlcnZhYmxlIHRvIHBhc3MgdGhlIG9wZXJhdG9ycyB0b1xuICogQHBhcmFtIG9wZXJhdG9ycyBhcnJheSBvZiBvcGVyYXRvcnMgdG8gcGlwZVxuICovXG5mdW5jdGlvbiBwaXBlT3BlcmF0b3JzSW50b09ic2VydmFibGUob2JzZXJ2YWJsZTogT2JzZXJ2YWJsZTxhbnk+LCBvcGVyYXRvcnM6IE9wZXJhdG9yRnVuY3Rpb248YW55LCBhbnk+W10pIHtcbiAgdHJ5IHtcbiAgICByZXR1cm4gb3BlcmF0b3JzLnJlZHVjZSgob2JzOiBPYnNlcnZhYmxlPHt9Piwgb3A6IE9wZXJhdG9yRnVuY3Rpb248e30sIHt9PikgPT4ge1xuICAgICAgcmV0dXJuIG9icy5waXBlKG9wKTtcbiAgICB9LCBvYnNlcnZhYmxlKTtcbiAgfSBjYXRjaCB7XG4gICAgY29uc29sZS5lcnJvcignVW5hYmxlIHRvIHBpcGUgb3BlcmF0b3JzIGludG8gb2JzZXJ2YWJsZScpO1xuICAgIHJldHVybiBvZihudWxsKTtcbiAgfVxufVxuXG5cbmV4cG9ydCBmdW5jdGlvbiBjYWxsT3B0aW9uc0lmRnVuY3Rpb24oXG4gIG9wdGlvbnM6IE9wdGlvbnNUeXBlIHwgQXV0b2NvbXBsZXRlT3B0aW9uc0NhbGxiYWNrLFxuICBwYXJlbnRHcm91cD86IEZvcm1Hcm91cCxcbiAgc2VhcmNoU3RyaW5nPzogc3RyaW5nXG4pOiBPcHRpb25zVHlwZSB7XG4gIHJldHVybiBvcHRpb25zIGluc3RhbmNlb2YgRnVuY3Rpb24gPyBvcHRpb25zKHBhcmVudEdyb3VwLCBzZWFyY2hTdHJpbmcpIDogb3B0aW9ucztcbn1cbi8qKlxuICogVGhlIHVzZXIgY2FuIGdpdmUgdXMgc2VsZWN0IG9wdGlvbnMgYXMgYW4gYXJyYXksIGEgZnVuY3Rpb24gdGhhdCByZXNvbHZlcyB0byBhIHByb21pc2UsXG4gKiBvciBhbiBvYnNlcnZhYmxlLiBUaGlzIGZ1bmN0aW9ucyBjb25zdW1lcyBhbnkgb2YgdGhvc2UgYW5kIHJldHVybnMgYW4gb2JzZXJ2YWJsZSB0aGF0XG4gKiByZXNvbHZlcyBhbiBhcnJheSBvZiBvcHRpb25zXG4gKlxuICogQHBhcmFtIG9wdGlvbnMgdGhlIG9wdGlvbnMgcGFzc2VkIGluIGZyb20gdGhlIGNvbmZpZ1xuICogQHBhcmFtIGVtcHR5TWVzc2FnZU9wdGlvbiB0aGUgbWVzc2FnZSB0byBkaXNwbGF5IHdoZW4gdGhlIGFycmF5IGlzIGVtcHR5XG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBvYnNlcnZhYmxpZnlPcHRpb25zKFxuICBvcHRpb25zOiBPcHRpb25zVHlwZSxcbiAgcGFyZW50R3JvdXA6IEZvcm1Hcm91cCxcbiAgc2VhcmNoU3RyaW5nPzogc3RyaW5nLFxuKTogT2JzZXJ2YWJsZTxTZWxlY3RPcHRpb25bXT4ge1xuICBjb25zdCBjYWxsZWRPcHRpb25zID0gY2FsbE9wdGlvbnNJZkZ1bmN0aW9uKG9wdGlvbnMsIHBhcmVudEdyb3VwLCBzZWFyY2hTdHJpbmcpO1xuICAvLyBpZiBvcHRpb25zIGFyZSBhIHByb21pc2VcbiAgY29uc3Qgb2JzZXJ2YWJsZU9wdGlvbnMgPSBjYWxsZWRPcHRpb25zIGluc3RhbmNlb2YgUHJvbWlzZVxuICAvLyBjb252ZXJ0IHRvIG9ic2VydmFibGVcbiAgPyBmcm9tKGNhbGxlZE9wdGlvbnMpXG4gIC8vIGlmIGFycmF5IHRoYXQgaXNuJ3QgZW1wdHlcbiAgOiBBcnJheS5pc0FycmF5KGNhbGxlZE9wdGlvbnMpICYmIGNhbGxlZE9wdGlvbnMubGVuZ3RoXG4gIC8vIGNvbnZlcnQgdG8gb2JzZXJ2YWJsZVxuICA/IG9mKGNhbGxlZE9wdGlvbnMpXG4gIC8vIGlmIG9ic2VydmFibGVcbiAgOiBpc09ic2VydmFibGUoY2FsbGVkT3B0aW9ucylcbiAgLy8gcmV0dXJuIGl0XG4gID8gY2FsbGVkT3B0aW9uc1xuICAvLyBlbHNlIGFuIGVtcHR5IGFycmF5XG4gIDogb2YoW10pO1xuICByZXR1cm4gb2JzZXJ2YWJsZU9wdGlvbnM7XG59XG5cbi8qKlxuICogRGV0ZXJtaW5lcyBpZiB0aGUgZmllbGQgY29uZmlnIGlzIGZvciBhIGZvcm0gY29udHJvbCAobm90IGEgZGl2aWRlciwgaGVhZGluZyBvciBvdGhlciBub24tY29udHJvbCBmaWVsZClcbiAqICAqL1xuZXhwb3J0IGZ1bmN0aW9uIGlzQ29udHJvbENvbmZpZyhmaWVsZENvbmZpZzogQ3Jpc3ByRmllbGRDb25maWcpOiBmaWVsZENvbmZpZyBpcyBDcmlzcHJDb250cm9sQ29uZmlnIHtcbiAgcmV0dXJuICdjb250cm9sTmFtZScgaW4gZmllbGRDb25maWc7XG59XG4vKipcbiAqIGJ1aWxkcyBvdXQgZm9ybSBncm91cCBiYXNlZCBvbiBjb25maWdcbiAqIEBwYXJhbSBjb25maWcgYSBjb25maWd1cmF0aW9uIGZvciBhIGZvcm0gZ3JvdXBcbiAqIEBwYXJhbSB2YWx1ZSBhbiBvYmplY3Qgb2YgaW5pdGlhbCB2YWx1ZXMgdG8gcGFzcyBpblxuICogQHBhcmFtIGdyb3VwIHRoZSBmb3JtIGdyb3VwIHRvIG1vZGlmeSBhbmQgYnVpbGQgb3V0XG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBidWlsZEZvcm1Hcm91cEZyb21Db25maWcoY29uZmlnOiBGb3JtQ29uZmlnLCB2YWx1ZSA9IG51bGwsIGdyb3VwOiBGb3JtR3JvdXAgPSBuZXcgRm9ybUdyb3VwKHt9KSApIHtcbiAgY29uZmlnLmZpZWxkcy5mb3JFYWNoKCAoY29udHJvbENvbmZpZzogQW55RmllbGRDb25maWcpID0+IHtcbiAgICBpZiAoaXNDb250cm9sQ29uZmlnKGNvbnRyb2xDb25maWcpKSB7XG4gICAgICAvLyB0aGVuIGFkZCBhIGNvbnRyb2wgdG8gdGhlIGdyb3VwIHVzaW5nIHRoZSBjb250cm9sTmFtZSBmcm9tIGNvbmZpZ3VyYXRpb25cbiAgICAgIGNvbnN0IHtjb250cm9sTmFtZX0gPSBjb250cm9sQ29uZmlnO1xuICAgICAgaWYgKGdyb3VwLmdldChjb250cm9sTmFtZSkpIHtcbiAgICAgICAgZ3JvdXAucmVtb3ZlQ29udHJvbChjb250cm9sTmFtZSk7XG4gICAgICB9XG4gICAgICAvLyBpZiB0aGVyZSdzIGEgdmFsdWUgb2JqZWN0IGFuZCBpdCBoYXMgYSBub24tbnVsbC91bmRlZmluZWQgdmFsdWUgZm9yIHRoaXMgZmllbGQgdXNlIGl0LlxuICAgICAgLy8gT3RoZXJ3aXNlLCBkZWZhdWx0IHRvIG51bGxcbiAgICAgIGNvbnN0IGNvbnRyb2xWYWx1ZSA9ICh2YWx1ZSAmJiB2YWx1ZVtjb250cm9sTmFtZV0pID8/IG51bGw7XG4gICAgICBjb25zdCBjb250cm9sID0gY3JlYXRlQ29udHJvbEZvclR5cGUoY29udHJvbENvbmZpZywgY29udHJvbFZhbHVlKVxuICAgICAgZ3JvdXAuYWRkQ29udHJvbChjb250cm9sTmFtZSwgY29udHJvbCk7XG4gICAgfVxuICB9KTtcbiAgZ3JvdXAuc2V0VmFsaWRhdG9ycyhjb25maWcudmFsaWRhdG9ycyk7XG4gIHJldHVybiBncm91cDtcbn1cblxuLyoqXG4gKiBBbmFseXplIHRoZSBjb25maWcgYW5kIGJ1aWxkIGEgZm9ybSBjb250cm9sIHRvIHNwZWMuIE5vdGljZSB3ZSBkb24ndCB1c2UgRm9ybUJ1aWxkZXIgaGVyZVxuICogYXMgd2Ugd2FudCB0byBrZWVwIHRoaXMgZnVuY3Rpb24gcHVyZS5cbiAqIEBwYXJhbSBjb250cm9sQ29uZmlnIHRoZSBjb25maWd1cmF0aW9uIG9iamVjdCBmb3IgdGhlIGNvbnRyb2wgdG8gYnVpbGRcbiAqIEBwYXJhbSB2YWx1ZSBhbiBpbml0aWFsIHZhbHVlIHRvIHVzZSBpZiBwYXNzZWQgaW5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGNyZWF0ZUNvbnRyb2xGb3JUeXBlKGNvbnRyb2xDb25maWc6IEFueUZpZWxkQ29uZmlnLCB2YWx1ZTogQ29udHJvbFZhbHVlID0gbnVsbCkgIHtcbiAgLy8gYnVpbGQgZm9ybSBjb250cm9sIG91dCBiYXNlZCBvbiB0aGUgY29udHJvbCB0eXBlXG4gIGNvbnN0IGNvbnRyb2wgPSBjb250cm9sQ29uZmlnLmNvbnRyb2xUeXBlID09PSBDb250cm9sVHlwZS5TVUJfR1JPVVBcbiAgICA/IGJ1aWxkRm9ybUdyb3VwRnJvbUNvbmZpZyhjb250cm9sQ29uZmlnIGFzIEZvcm1Db25maWcsIHZhbHVlKVxuICAgIDogY29udHJvbENvbmZpZy5jb250cm9sVHlwZSA9PT0gQ29udHJvbFR5cGUuR1JPVVBfTElTVFxuICAgID8gbmV3IEZvcm1BcnJheShbXSwgKGNvbnRyb2xDb25maWcgYXMgRm9ybUdyb3VwTGlzdENvbmZpZykudmFsaWRhdG9ycylcbiAgICA6IG5ldyBGb3JtQ29udHJvbChcbiAgICAgIHZhbHVlIHx8IG51bGwsXG4gICAgICAoY29udHJvbENvbmZpZyBhcyBDcmlzcHJDb250cm9sQ29uZmlnKS52YWxpZGF0b3JzXG4gICAgKTtcblxuICByZXR1cm4gY29udHJvbDtcbn1cblxuLyoqXG4gKiBBIGJhc2ljIGZpbHRlciBmdW5jdGlvbiB0aGF0IGZpbHRlcnMgdGhlIHNlYXJjaCBzdHJpbmcgYWdhaW5zdCB0aGUgbGFiZWwgb2YgdGhlIG9wdGlvbnMgb2JqZWN0XG4gKiBAcGFyYW0gb3B0aW9ucyB0aGUgYXJyYXkgb2Ygb3B0aW9ucyB0byBmaWx0ZXJcbiAqIEBwYXJhbSBzZWFyY2hTdHJpbmcgdGhlIHN0cmluZyBmcm9tIHRoZSBpbnB1dFxuICovXG5leHBvcnQgZnVuY3Rpb24gZmlsdGVyT3B0aW9uc0J5TGFiZWwob3B0aW9uczogU2VsZWN0T3B0aW9uW10sIHNlYXJjaFN0cmluZzogc3RyaW5nKSAge1xuICByZXR1cm4gb3B0aW9ucy5maWx0ZXIob3B0aW9uID0+IHtcbiAgICByZXR1cm4gb3B0aW9uLmxhYmVsICYmIG9wdGlvbi5sYWJlbC50b0xvd2VyQ2FzZSgpLmluY2x1ZGVzKHNlYXJjaFN0cmluZy50b0xvd2VyQ2FzZSgpKTtcbiAgfSk7XG59XG4iXX0=
|
|
190
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybS5oZWxwZXJzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vbGlicy9jcmlzcHItZm9ybXMvc3JjL2xpYi9mb3JtLmhlbHBlcnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBV0EsT0FBTyxFQUNMLFdBQVcsR0FDWixNQUFNLDhCQUE4QixDQUFBO0FBQ3JDLE9BQU8sRUFDTCxJQUFJLEVBRUosRUFBRSxFQUNGLFlBQVksRUFDWixhQUFhLEVBRWQsTUFBTSxNQUFNLENBQUM7QUFDZCxPQUFPLEVBQUUsU0FBUyxFQUFFLFNBQVMsRUFBRSxXQUFXLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNuRSxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFDM0MsT0FBTyxFQUFFLEdBQUcsRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQXNCaEQ7Ozs7O0VBS0U7QUFDRixNQUFNLFVBQVUscUJBQXFCLENBQUMsS0FBZ0IsRUFBRSxNQUEwQjtJQUNoRixrREFBa0Q7SUFDbEQsSUFBSSxNQUFNLElBQUksTUFBTSxDQUFDLFdBQVcsSUFBSSxLQUFLLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsRUFBRTtRQUNoRSxPQUFPLGVBQWUsQ0FBQyxLQUFLLEVBQUUsTUFBTSxDQUFDLFdBQVcsQ0FBQyxDQUFDLElBQUk7UUFDcEQsb0ZBQW9GO1FBQ3BGLE9BQU8sQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLEVBQ3RCLEdBQUcsQ0FBQyxDQUFDLGVBQXdCLEVBQUUsRUFBRTtZQUMvQix3R0FBd0c7WUFDeEcscUhBQXFIO1lBQ3JILElBQUssTUFBTSxDQUFDLFFBQVEsSUFBSSxNQUFNLENBQUMsUUFBUSxZQUFZLFFBQVEsRUFBRztnQkFDNUQsT0FBTyxNQUFNLENBQUMsUUFBUSxDQUFDLGVBQWUsQ0FBQyxDQUFDO2FBQ3pDO2lCQUFNO2dCQUFFLE9BQU8sZUFBZSxDQUFDO2FBQUU7UUFD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T0FBdUIsRUFBRSxZQUFvQjtJQUNoRixPQUFPLE9BQU8sQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLEVBQUU7UUFDN0IsT0FBTyxNQUFNLENBQUMsS0FBSyxJQUFJLE1BQU0sQ0FBQyxLQUFLLENBQUMsV0FBVyxFQUFFLENBQUMsUUFBUSxDQUFDLFlBQVksQ0FBQyxXQUFXLEVBQUUsQ0FBQyxDQUFDO0lBQ3pGLENBQUMsQ0FBQyxDQUFDO0FBQ0wsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIHtcbiAgU2VsZWN0T3B0aW9uLFxuICBBbnlGaWVsZENvbmZpZyxcbiAgRm9ybUNvbmZpZyxcbiAgRm9ybUdyb3VwTGlzdENvbmZpZyxcbiAgQ3Jpc3ByQ29udHJvbENvbmZpZyxcbiAgT3B0aW9uc1R5cGUsXG4gIEF1dG9jb21wbGV0ZU9wdGlvbnNDYWxsYmFjayxcbiAgQ3Jpc3ByRmllbGRDb25maWcsXG4gIENvbnRyb2xWYWx1ZVxufSBmcm9tICcuL21vZGVscyc7XG5pbXBvcnQge1xuICBDb250cm9sVHlwZSxcbn0gZnJvbSAnLi9tb2RlbHMvY3Jpc3ByLWZpZWxkLmNvbmZpZydcbmltcG9ydCB7XG4gIGZyb20sXG4gIE9ic2VydmFibGUsXG4gIG9mLFxuICBpc09ic2VydmFibGUsXG4gIGNvbWJpbmVMYXRlc3QsXG4gIE9wZXJhdG9yRnVuY3Rpb25cbn0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBGb3JtR3JvdXAsIEZvcm1BcnJheSwgRm9ybUNvbnRyb2wgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyB2YWx1ZUluIH0gZnJvbSAnLi9mb3JtLm9wZXJhdG9ycyc7XG5pbXBvcnQgeyBtYXAsIHN0YXJ0V2l0aCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcblxuLyoqXG4gKiBEWU5BTUlDIEZPUk0gVVRJTFM6IGEgY29sbGVjdGlvbiBvZiBwdXJlL21vc3RseSBwdXJlIGZ1bmN0aW9ucyB0aGF0IGFyZSB1c2VmdWwgYm90aCBpbnRlcm5hbGx5IGFuZCBmb3JcbiAqIGRldmVsb3BpbmcgdGhlIGNvbnN1bWluZyBhcHAuXG4gKlxuICogVGhleSBhcmUgc29ydGVkIGJ5IHVzZSBjYXNlOiBidWlsZGluZyBvdXQgdGhlIGZvcm0gb2JqZWN0OyBoZWxwZXIgZnVuY3Rpb25zIHRvIHVzZSB3aXRoIHRoZSBkaXNhYmxlZCQgZnVuY3Rpb247XG4gKiBoZWxwZXIgZnVuY3Rpb25zIHRvIHVzZSB3aXRoIHRoZSBjb21wdXRlIGZpZWxkIGZ1bmN0aW9uOyBhbmQgb3RoZXIgbG9naWMgc2hhcmVkIGJldHdlZW4gY29tcG9uZW50c1xuICovXG5cbi8qKlxuICogUmVxdWlyZWQgY29uZmlndXJhdGlvbiB0byB1c2Ugd2l0aCBjaGVja0NvbnRyb2xGb3JWYWx1ZXMgZnVuY3Rpb25cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBDaGVja0NvbnRyb2xDb25maWcge1xuICAvLyB0aGUgY29udHJvbCBuYW1lIHRvIHdhdGNoXG4gIGNvbnRyb2xOYW1lOiBzdHJpbmc7XG4gIC8vIHRoZSB2YWx1ZXMgdG8gd2F0Y2ggZm9yXG4gIHZhbHVlczogc3RyaW5nW107XG4gIC8vIHRoZSBmdW5jdGlvbiB0byBydW4gb24gdGhlIGJvb2xlYW4gcmV0dXJuZWQgYnkgdGhlIHdhdGNoZXJcbiAgZXZhbHVhdGU/OiAoaXNWYWx1ZUluVmFsdWVzOiBib29sZWFuKSA9PiBib29sZWFuO1xufVxuXG4vKipcbiogV2F0Y2hlcyBhIHNpbmdsZSBjb250cm9sIGZvciBhIGxpc3Qgb2YgdmFsdWVzLCByZXR1cm5zIHRydWUgd2hlbiBmaWVsZCB2YWx1ZSBtYXRjaGVzIGFueSB2YWx1ZSBpbiBsaXN0XG4qIHVubGVzcyBhbiBldmFsdWF0ZSBtZXRob2QgaXMgZm91bmQgb24gY29uZmlnLCBpbiB3aGljaCBjYXNlIHRoYXQgbWV0aG9kIGlzIHJ1biBvbiB0aGUgcmV0dXJuZWQgYm9vbGVhbiB2YWx1ZVxuKiBAcGFyYW0gZ3JvdXAgdGhlIGRpcmVjdCBwYXJlbnQgb2YgdGhlIGZpZWxkIHdlIHdhbnQgdG8gd2F0Y2hcbiogQHBhcmFtIGNvbmZpZ1xuKi9cbmV4cG9ydCBmdW5jdGlvbiBjaGVja0NvbnRyb2xGb3JWYWx1ZXMoZ3JvdXA6IEZvcm1Hcm91cCwgY29uZmlnOiBDaGVja0NvbnRyb2xDb25maWcpOiBPYnNlcnZhYmxlPGJvb2xlYW4+IHtcbiAgLy8gY2hlY2sgdGhhdCBhbGwgdGhlIHBpZWNlcyB3ZSBuZWVkIGFyZSBhdmFpbGFibGVcbiAgaWYgKGNvbmZpZyAmJiBjb25maWcuY29udHJvbE5hbWUgJiYgQXJyYXkuaXNBcnJheShjb25maWcudmFsdWVzKSkge1xuICAgIHJldHVybiBnZXRWYWx1ZUNoYW5nZXMoZ3JvdXAsIGNvbmZpZy5jb250cm9sTmFtZSkucGlwZShcbiAgICAgIC8vIHJldHVybiBhIGJvb2xlYW4sIHRydWUgaWYgdmFsdWUgaXMgaW4gdGhlIHZhbHVlcyBiZWluZyB3YXRjaCBmb3IsIG90aGVyd2lzZSBmYWxzZVxuICAgICAgdmFsdWVJbihjb25maWcudmFsdWVzKSxcbiAgICAgIG1hcCgoaXNWYWx1ZUluVmFsdWVzOiBib29sZWFuKSA9PiB7XG4gICAgICAgIC8vIHNpbmNlIHdlIGNhbiBvbmx5IGNoZWNrIGlmIHRoZSB2YWx1ZSBpcyBpbiB0aGUgbGlzdCBvZiB3YXRjaGVkIHZhbHVlcywgdGhlIGV2YWx1YXRlIGZ1bmN0aW9uIGdpdmVzIHVzXG4gICAgICAgIC8vIGEgY2hhbmNlIHRvIG1ha2Ugb3RoZXIgZGVjaXNpb25zIGJhc2VkIG9uIGlmIHRoZSBib29sZWFuIHJldHVybmVkLCBlLmcuIHJldHVybiB0cnVlIGlmIHZhbHVlIG5vdCBpbiB3YXRjaGVkIHZhbHVlc1xuICAgICAgICBpZiAoIGNvbmZpZy5ldmFsdWF0ZSAmJiBjb25maWcuZXZhbHVhdGUgaW5zdGFuY2VvZiBGdW5jdGlvbiApIHtcbiAgICAgICAgICByZXR1cm4gY29uZmlnLmV2YWx1YXRlKGlzVmFsdWVJblZhbHVlcyk7XG4gICAgICAgIH0gZWxzZSB7IHJldHVybiBpc1ZhbHVlSW5WYWx1ZXM7IH1cbiAgICAgIH0pXG4gICAgKTtcbiAgfSBlbHNlIHtcbiAgICAvL1xuICAgIHJldHVybiBvZih0cnVlKTtcbiAgfVxufVxuXG4vKipcbiAqIFRoZSByZXF1aXJlZCBjb25maWd1cmF0aW9uIGZvciBydW5uaW5nIHRoZSBjaGVja0NvbnRyb2xzRm9yVmFsdWVzIGZ1bmN0aW9uLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIENoZWNrQ29udHJvbHNDb25maWcge1xuICAvLyBhbiBhcnJheSBvZiBjb250cm9scyB0byB3YXRjaCBhbmQgdGhlIHZhbHVlcyB0byBjaGVjayBmb3JcbiAgd2F0Y2hDb25maWdzOiBDaGVja0NvbnRyb2xDb25maWdbXTtcbiAgLy8gdGhlIGZ1bmN0aW9uIHRvIHJ1biBhZ2FpbnN0IHRoZSBhcnJheSBvZiBjdXJyZW50IGZpZWxkIHZhbHVlSW4gcmVzcG9uc2VzXG4gIGV2YWx1YXRlPzogKCBib29sczogYm9vbGVhbltdICkgPT4gYm9vbGVhbjtcbn1cblxuLyoqXG4gKiBXYXRjaGVzIGEgbGlzdCBvZiBmaWVsZHMgZm9yIGluZGl2aWR1YWwgbGlzdHMgb2YgdmFsdWVzIHJldHVybmluZyB0cnVlIHdoZW4gYW55IGZpZWxkIGNvbnRhaW5zIG9uZVxuICogb2YgdGhlIHZhbHVlcyBiZWluZyB3YXRjaGVkIGZvciwgb3Igb3B0aW9uYWxseSBydW5uaW5nIGEgZnVuY3Rpb24gb24gdGhlIGFycmF5IG9mIHJlc29sdmVkIGJvb2xlYW5zXG4gKiBmcm9tIHRoZSBsaXN0ZWQgZmllbGRzIGFuZCByZXR1cm5pbmcgYSBib29sZWFuXG4gKiBAcGFyYW0gZ3JvdXAgdGhlIGZvcm0gZ3JvdXAgdGhhdCBoYXMgdGhlIGZpZWxkcyB0byB3YXRjaCBhcyBkaXJlY3QgZGVzY2VuZGFudHNcbiAqIEBwYXJhbSBjb25maWcgdGhlIGNvbmZpZ3VyYXRpb24gdG8gdXNlIHdoZW4gY2FsbGluZyB0aGUgZnVuY3Rpb25cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGNoZWNrQ29udHJvbHNGb3JWYWx1ZXMoZ3JvdXA6IEZvcm1Hcm91cCwgY29uZmlnOiBDaGVja0NvbnRyb2xzQ29uZmlnKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgLy8gaWYgbm8gY29uZmlnIGlzIHBhc3NlZCB3ZSBqdXN0IHdhbnQgdG8gc2hvdyB0aGUgZmllbGQsIHNvIHdlIHJldHVybiBhbiBvYnNlcnZhYmxlIG9mIHRydWVcbiAgaWYgKCFjb25maWcgfHwgIWNvbmZpZy53YXRjaENvbmZpZ3MpIHsgcmV0dXJuIG9mKHRydWUpOyB9XG4gIC8vIHdlIHJ1biBjaGVja0NvbnRyb2xGb3JWYWx1ZXMgb24gZXZlcnkgY29udHJvbCBpbiB0aGUgbGlzdCBvZiBXYXRjaENvbmZpZ3MgY3JlYXRpbmdcbiAgLy8gYW4gYXJyYXkgb2YgT2JzZXJ2YWJsZSB3YXRjaGluZyBmaWVsZHMgZm9yIHZhbHVlc1xuICBjb25zdCBmaWVsZFRyaWdnZXJzID0gY29uZmlnLndhdGNoQ29uZmlncy5tYXAod2F0Y2hDb25maWcgPT4ge1xuICAgIC8vIHJlc29sdmVzIGEgYm9vbGVhbiwgdHJ1ZSB3aGVuIGZpZWxkIHZhbHVlIG1hdGNoZXMgYSB3YXRjaGVkIHZhbHVlLCBvdGhlcndpc2UgZmFsc2VcbiAgICByZXR1cm4gY2hlY2tDb250cm9sRm9yVmFsdWVzKGdyb3VwLCB3YXRjaENvbmZpZyk7XG4gIH0pO1xuXG4gIHJldHVybiBjb21iaW5lTGF0ZXN0KFxuICAgIGZpZWxkVHJpZ2dlcnNcbiAgKS5waXBlKFxuICAgIHN0YXJ0V2l0aChbdHJ1ZV0pLFxuICAgIG1hcCgoYm9vbGVhbnM6IGJvb2xlYW5bXSkgPT4ge1xuICAgICAgLy8gaWYgdGhlIHVzZXIgcGFzc2VkIGFuIGV2YWx1YXRlIGZ1bmN0aW9uIHVzZSBpdFxuICAgICAgaWYgKGNvbmZpZy5ldmFsdWF0ZSAmJiBjb25maWcuZXZhbHVhdGUgaW5zdGFuY2VvZiBGdW5jdGlvbikge1xuICAgICAgICByZXR1cm4gY29uZmlnLmV2YWx1YXRlKGJvb2xlYW5zKTtcbiAgICAgIH0gZWxzZSB7IC8vIG90aGVyd2lzZSB3ZSByZXR1cm4gdHJ1ZSBpZiBhbnkgb2YgdGhlIHdhdGNoZWQgZmllbGRzIHJlc29sdmUgdG8gdHJ1ZVxuICAgICAgICByZXR1cm4gYm9vbGVhbnMuc29tZShib29sID0+IGJvb2wpO1xuICAgICAgfVxuICAgIH0pXG4gICk7XG59XG5cbi8qKlxuICogVGhlIHJlcXVpcmVkIGNvbmZpZ3VyYXRpb24gd2hlbiBydW5uaW5nIHRoZSBjb21wdXRlVmFsdWUgZnVuY3Rpb25cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBDb21wdXRlRmllbGRDb25maWc8VCA9IGFueSwgUlQgPSBhbnk+IHtcbiAgLy8gYXJyYXkgb2YgY29udHJvbCBuYW1lcyB3aG8ncyB2YWx1ZXMgd2Ugd2FudCB0byB3YXRjaFxuICBjb250cm9sTmFtZXNUb1dhdGNoOiBzdHJpbmdbXTtcbiAgLy8gdGhlIGZ1bmN0aW9uIHdlIHdhbnQgdG8gY2FsbCBvbiB0aGUgYXJyYXkgb2Ygd2F0Y2hlZCB2YWx1ZXMgdG8gY29tcHV0ZSB0aGUgdmFsdWUgb2YgdGhlIGNvbnRyb2wgd2VcbiAgY29tcHV0ZUNhbGxiYWNrOiAoXG4gICAgdmFsdWVzOiAoVClbXVxuICApID0+IFJUO1xufVxuXG4vKipcbiAqIFdhdGNoZXMgdmFsdWVzIG9uIGFuIGFycmF5IG9mIGZpZWxkcywgY29tcHV0aW5nIHRoZWlyIHZhbHVlcyBhcyB0aGV5IGNoYW5nZVxuICogQHBhcmFtIGdyb3VwIHRoZSBncm91cCB0byBnZXQgdGhlIGZpZWxkcyBmcm9tLCBmb3Igbm93IGl0IGNhbiBvbmx5IGJlIHRoZSBwYXJlbnQgb2YgdGhlIGNvbXB1dGVkIGZpZWxkXG4gKiBAcGFyYW0gY29tcHV0ZUZpZWxkc0NvbmZpZyB0aGUgY29uZmlndXJhdGlvbiB0aGF0IGRyaXZlcyB0aGUgY29tcHV0YXRpb24sIGhvbGRzIHRoZSBuYW1lcyB0byB3YXRjaCBhbmQgdGhlXG4gKiBjb21wdXRhdGlvbiBmdW5jdGlvbiB0aGF0IGdldCBjYWxsZWQgYWdhaW5zdCB0aGUgYXJyYXkgb2YgdmFsdWVzXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBjb21wdXRlVmFsdWVGcm9tRmllbGRzKGdyb3VwOiBGb3JtR3JvdXAsIGNvbXB1dGVGaWVsZHNDb25maWc6IENvbXB1dGVGaWVsZENvbmZpZyk6IE9ic2VydmFibGU8YW55PiB7XG4gIC8vIFRPRE86IGJldHRlciBjaGVja2luZ1xuICBjb25zdCB7IGNvbnRyb2xOYW1lc1RvV2F0Y2ggfSA9IGNvbXB1dGVGaWVsZHNDb25maWc7XG4gIC8vY3JlYXRlcyBhbiBvYnNlcnZhYmxlIGxpc3RlbmVyIGZvciBlYWNoIGNvbnRyb2wgaW4gdGhlIGNvbnRyb2xOYW1lc1RvV2F0Y2ggYXJyYXlcbiAgcmV0dXJuIGNvbWJpbmVMYXRlc3QoXG4gICAgY29udHJvbE5hbWVzVG9XYXRjaC5tYXAoY29udHJvbE5hbWVUb1dhdGNoID0+IGdldFZhbHVlQ2hhbmdlcyhncm91cCwgY29udHJvbE5hbWVUb1dhdGNoKSlcbiAgKS5waXBlKFxuICAgIC8vIGVhY2ggdGltZSBhIHdhdGNoZWQgZmllbGQgdmFsdWVzIGNoYW5nZXMgYSBuZXcgYXJyYXkgb2YgdGhlIGxhdGVzdCBmaWVsZCB2YWx1ZXMgaXMgcGlwZSB0aHJvdWdoIHRvIHRoZVxuICAgIC8vIGNvbXB1dGUgY2FsbGJhY2suIFdoaWNoIHJ1bnMgdGhlIHVzZXJzIGxvZ2ljIG9uIHRoZSB2YWx1ZXMgdG8gY29tcHV0ZSB0aGlzIGZpZWxkcyB2YWx1ZVxuICAgIG1hcCh2YWx1ZXNBcnJheSA9PiBjb21wdXRlRmllbGRzQ29uZmlnLmNvbXB1dGVDYWxsYmFjayh2YWx1ZXNBcnJheSkpLFxuICApO1xufVxuXG4vKipcbiAqIEEgc2ltcGxlIHdyYXBwZXIgZm9yIGRvaW5nIGVycm9yIGNoZWNraW5nIGFyb3VuZCBnZXR0aW5nIHRoZSB2YWx1ZUNoYW5nZXMgb2JzZXJ2YWJsZSBmcm9tIGEgY29udHJvbCBvbiBhIGZvcm0gZ3JvdXBcbiAqIEBwYXJhbSBncm91cCB0aGUgZm9ybSBncm91cCB3ZSB3YW50IHRvIHB1bGwgdGhlIG9ic2VydmFibGUgZnJvbVxuICogQHBhcmFtIGNvbnRyb2xOYW1lIHRoZSBuYW1lIG9mIHRoZSBjb250cm9sIHdobydzIHZhbHVlIHdlIHdhbnQgdG8gc3Vic2NyaWJlIHRvXG4gKi9cbmZ1bmN0aW9uIGdldFZhbHVlQ2hhbmdlcyhncm91cDogRm9ybUdyb3VwLCBjb250cm9sTmFtZTogc3RyaW5nKSB7XG4gIGNvbnN0IGNvbnRyb2wgPSBncm91cC5nZXQoY29udHJvbE5hbWUpO1xuICBpZiAoIWNvbnRyb2wpIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoYE5vIGNvbnRyb2wgd2l0aCBjb250cm9sTmFtZSAke2NvbnRyb2xOYW1lfWAsICk7XG4gIH1cbiAgcmV0dXJuIGNvbnRyb2wudmFsdWVDaGFuZ2VzO1xufVxuLyoqXG4gKiAgVE9ETzogbW92ZSB0byB1dGlscyBsaWJyYXJ5IGFmdGVyIGxpYnJhcnkgaXMgYnVpbHRcbiAqICBBbGxvd3MgZGV2ZWxvcGVyIHRvIHBhc3MgYW4gYXJyYXkgb2Ygb3BlcmF0b3JzIGludG8gdGhlIHBpcGUgb2YgYW4gT2JzZXJ2YWJsZS5cbiAqICBVc2VmdWwgZm9yIGNyZWF0aW5nIGZ1bmN0aW9uIHdpdGggYSB2YXJpYWJsZSBhbW91bnQgb2Ygb3BlcmF0b3JzIHRvIGJlIHJ1blxuICogQHBhcmFtIG9ic2VydmFibGUgdGhlIG9ic2VydmFibGUgdG8gcGFzcyB0aGUgb3BlcmF0b3JzIHRvXG4gKiBAcGFyYW0gb3BlcmF0b3JzIGFycmF5IG9mIG9wZXJhdG9ycyB0byBwaXBlXG4gKi9cbmZ1bmN0aW9uIHBpcGVPcGVyYXRvcnNJbnRvT2JzZXJ2YWJsZShvYnNlcnZhYmxlOiBPYnNlcnZhYmxlPGFueT4sIG9wZXJhdG9yczogT3BlcmF0b3JGdW5jdGlvbjxhbnksIGFueT5bXSkge1xuICB0cnkge1xuICAgIHJldHVybiBvcGVyYXRvcnMucmVkdWNlKChvYnM6IE9ic2VydmFibGU8e30+LCBvcDogT3BlcmF0b3JGdW5jdGlvbjx7fSwge30+KSA9PiB7XG4gICAgICByZXR1cm4gb2JzLnBpcGUob3ApO1xuICAgIH0sIG9ic2VydmFibGUpO1xuICB9IGNhdGNoIHtcbiAgICBjb25zb2xlLmVycm9yKCdVbmFibGUgdG8gcGlwZSBvcGVyYXRvcnMgaW50byBvYnNlcnZhYmxlJyk7XG4gICAgcmV0dXJuIG9mKG51bGwpO1xuICB9XG59XG5cblxuZXhwb3J0IGZ1bmN0aW9uIGNhbGxPcHRpb25zSWZGdW5jdGlvbihcbiAgb3B0aW9uczogT3B0aW9uc1R5cGUgfCBBdXRvY29tcGxldGVPcHRpb25zQ2FsbGJhY2ssXG4gIHBhcmVudEdyb3VwPzogRm9ybUdyb3VwLFxuICBzZWFyY2hTdHJpbmc/OiBzdHJpbmdcbik6IE9wdGlvbnNUeXBlIHtcbiAgcmV0dXJuIG9wdGlvbnMgaW5zdGFuY2VvZiBGdW5jdGlvbiA/IG9wdGlvbnMocGFyZW50R3JvdXAsIHNlYXJjaFN0cmluZykgOiBvcHRpb25zO1xufVxuLyoqXG4gKiBUaGUgdXNlciBjYW4gZ2l2ZSB1cyBzZWxlY3Qgb3B0aW9ucyBhcyBhbiBhcnJheSwgYSBmdW5jdGlvbiB0aGF0IHJlc29sdmVzIHRvIGEgcHJvbWlzZSxcbiAqIG9yIGFuIG9ic2VydmFibGUuIFRoaXMgZnVuY3Rpb25zIGNvbnN1bWVzIGFueSBvZiB0aG9zZSBhbmQgcmV0dXJucyBhbiBvYnNlcnZhYmxlIHRoYXRcbiAqIHJlc29sdmVzIGFuIGFycmF5IG9mIG9wdGlvbnNcbiAqXG4gKiBAcGFyYW0gb3B0aW9ucyB0aGUgb3B0aW9ucyBwYXNzZWQgaW4gZnJvbSB0aGUgY29uZmlnXG4gKiBAcGFyYW0gZW1wdHlNZXNzYWdlT3B0aW9uIHRoZSBtZXNzYWdlIHRvIGRpc3BsYXkgd2hlbiB0aGUgYXJyYXkgaXMgZW1wdHlcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIG9ic2VydmFibGlmeU9wdGlvbnMoXG4gIG9wdGlvbnM6IE9wdGlvbnNUeXBlLFxuICBwYXJlbnRHcm91cDogRm9ybUdyb3VwLFxuICBzZWFyY2hTdHJpbmc/OiBzdHJpbmcsXG4pOiBPYnNlcnZhYmxlPFNlbGVjdE9wdGlvbltdPiB7XG4gIGNvbnN0IGNhbGxlZE9wdGlvbnMgPSBjYWxsT3B0aW9uc0lmRnVuY3Rpb24ob3B0aW9ucywgcGFyZW50R3JvdXAsIHNlYXJjaFN0cmluZyk7XG4gIC8vIGlmIG9wdGlvbnMgYXJlIGEgcHJvbWlzZVxuICBjb25zdCBvYnNlcnZhYmxlT3B0aW9ucyA9IGNhbGxlZE9wdGlvbnMgaW5zdGFuY2VvZiBQcm9taXNlXG4gIC8vIGNvbnZlcnQgdG8gb2JzZXJ2YWJsZVxuICA/IGZyb20oY2FsbGVkT3B0aW9ucylcbiAgLy8gaWYgYXJyYXkgdGhhdCBpc24ndCBlbXB0eVxuICA6IEFycmF5LmlzQXJyYXkoY2FsbGVkT3B0aW9ucykgJiYgY2FsbGVkT3B0aW9ucy5sZW5ndGhcbiAgLy8gY29udmVydCB0byBvYnNlcnZhYmxlXG4gID8gb2YoY2FsbGVkT3B0aW9ucylcbiAgLy8gaWYgb2JzZXJ2YWJsZVxuICA6IGlzT2JzZXJ2YWJsZShjYWxsZWRPcHRpb25zKVxuICAvLyByZXR1cm4gaXRcbiAgPyBjYWxsZWRPcHRpb25zXG4gIC8vIGVsc2UgYW4gZW1wdHkgYXJyYXlcbiAgOiBvZihbXSk7XG4gIHJldHVybiBvYnNlcnZhYmxlT3B0aW9ucztcbn1cblxuLyoqXG4gKiBEZXRlcm1pbmVzIGlmIHRoZSBmaWVsZCBjb25maWcgaXMgZm9yIGEgZm9ybSBjb250cm9sIChub3QgYSBkaXZpZGVyLCBoZWFkaW5nIG9yIG90aGVyIG5vbi1jb250cm9sIGZpZWxkKVxuICogICovXG5leHBvcnQgZnVuY3Rpb24gaXNDb250cm9sQ29uZmlnKGZpZWxkQ29uZmlnOiBDcmlzcHJGaWVsZENvbmZpZyk6IGZpZWxkQ29uZmlnIGlzIENyaXNwckNvbnRyb2xDb25maWcge1xuICByZXR1cm4gJ2NvbnRyb2xOYW1lJyBpbiBmaWVsZENvbmZpZztcbn1cbi8qKlxuICogYnVpbGRzIG91dCBmb3JtIGdyb3VwIGJhc2VkIG9uIGNvbmZpZ1xuICogQHBhcmFtIGNvbmZpZyBhIGNvbmZpZ3VyYXRpb24gZm9yIGEgZm9ybSBncm91cFxuICogQHBhcmFtIHZhbHVlIGFuIG9iamVjdCBvZiBpbml0aWFsIHZhbHVlcyB0byBwYXNzIGluXG4gKiBAcGFyYW0gZ3JvdXAgdGhlIGZvcm0gZ3JvdXAgdG8gbW9kaWZ5IGFuZCBidWlsZCBvdXRcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGJ1aWxkRm9ybUdyb3VwRnJvbUNvbmZpZyhjb25maWc6IEZvcm1Db25maWcsIHZhbHVlID0gbnVsbCwgZ3JvdXA6IEZvcm1Hcm91cCA9IG5ldyBGb3JtR3JvdXAoe30pICkge1xuICBjb25maWcuZmllbGRzLmZvckVhY2goIChjb250cm9sQ29uZmlnOiBBbnlGaWVsZENvbmZpZykgPT4ge1xuICAgIGlmIChpc0NvbnRyb2xDb25maWcoY29udHJvbENvbmZpZykpIHtcbiAgICAgIC8vIHRoZW4gYWRkIGEgY29udHJvbCB0byB0aGUgZ3JvdXAgdXNpbmcgdGhlIGNvbnRyb2xOYW1lIGZyb20gY29uZmlndXJhdGlvblxuICAgICAgY29uc3Qge2NvbnRyb2xOYW1lfSA9IGNvbnRyb2xDb25maWc7XG4gICAgICBpZiAoZ3JvdXAuZ2V0KGNvbnRyb2xOYW1lKSkge1xuICAgICAgICBncm91cC5yZW1vdmVDb250cm9sKGNvbnRyb2xOYW1lKTtcbiAgICAgIH1cbiAgICAgIC8vIGlmIHRoZXJlJ3MgYSB2YWx1ZSBvYmplY3QgYW5kIGl0IGhhcyBhIG5vbi1udWxsL3VuZGVmaW5lZCB2YWx1ZSBmb3IgdGhpcyBmaWVsZCB1c2UgaXQuXG4gICAgICAvLyBPdGhlcndpc2UsIGRlZmF1bHQgdG8gbnVsbFxuICAgICAgY29uc3QgY29udHJvbFZhbHVlID0gKHZhbHVlICYmIHZhbHVlW2NvbnRyb2xOYW1lXSkgPz8gbnVsbDtcbiAgICAgIGNvbnN0IGNvbnRyb2wgPSBjcmVhdGVDb250cm9sRm9yVHlwZShjb250cm9sQ29uZmlnLCBjb250cm9sVmFsdWUpXG4gICAgICBncm91cC5hZGRDb250cm9sKGNvbnRyb2xOYW1lLCBjb250cm9sKTtcbiAgICB9XG4gIH0pO1xuICBncm91cC5zZXRWYWxpZGF0b3JzKGNvbmZpZy52YWxpZGF0b3JzKTtcbiAgcmV0dXJuIGdyb3VwO1xufVxuXG4vKipcbiAqIEFuYWx5emUgdGhlIGNvbmZpZyBhbmQgYnVpbGQgYSBmb3JtIGNvbnRyb2wgdG8gc3BlYy4gTm90aWNlIHdlIGRvbid0IHVzZSBGb3JtQnVpbGRlciBoZXJlXG4gKiBhcyB3ZSB3YW50IHRvIGtlZXAgdGhpcyBmdW5jdGlvbiBwdXJlLlxuICogQHBhcmFtIGNvbnRyb2xDb25maWcgdGhlIGNvbmZpZ3VyYXRpb24gb2JqZWN0IGZvciB0aGUgY29udHJvbCB0byBidWlsZFxuICogQHBhcmFtIHZhbHVlIGFuIGluaXRpYWwgdmFsdWUgdG8gdXNlIGlmIHBhc3NlZCBpblxuICovXG5leHBvcnQgZnVuY3Rpb24gY3JlYXRlQ29udHJvbEZvclR5cGUoY29udHJvbENvbmZpZzogQW55RmllbGRDb25maWcsIHZhbHVlOiBDb250cm9sVmFsdWUgPSBudWxsKSAge1xuICAvLyBidWlsZCBmb3JtIGNvbnRyb2wgb3V0IGJhc2VkIG9uIHRoZSBjb250cm9sIHR5cGVcbiAgY29uc3QgY29udHJvbCA9IGNvbnRyb2xDb25maWcuY29udHJvbFR5cGUgPT09IENvbnRyb2xUeXBlLlNVQl9HUk9VUFxuICAgID8gYnVpbGRGb3JtR3JvdXBGcm9tQ29uZmlnKGNvbnRyb2xDb25maWcgYXMgRm9ybUNvbmZpZywgdmFsdWUpXG4gICAgOiBjb250cm9sQ29uZmlnLmNvbnRyb2xUeXBlID09PSBDb250cm9sVHlwZS5HUk9VUF9MSVNUXG4gICAgPyBuZXcgRm9ybUFycmF5KFtdLCAoY29udHJvbENvbmZpZyBhcyBGb3JtR3JvdXBMaXN0Q29uZmlnKS52YWxpZGF0b3JzKVxuICAgIDogbmV3IEZvcm1Db250cm9sKFxuICAgICAgdmFsdWUgfHwgbnVsbCxcbiAgICAgIChjb250cm9sQ29uZmlnIGFzIENyaXNwckNvbnRyb2xDb25maWcpLnZhbGlkYXRvcnNcbiAgICApO1xuXG4gIHJldHVybiBjb250cm9sO1xufVxuXG4vKipcbiAqIEEgYmFzaWMgZmlsdGVyIGZ1bmN0aW9uIHRoYXQgZmlsdGVycyB0aGUgc2VhcmNoIHN0cmluZyBhZ2FpbnN0IHRoZSBsYWJlbCBvZiB0aGUgb3B0aW9ucyBvYmplY3RcbiAqIEBwYXJhbSBvcHRpb25zIHRoZSBhcnJheSBvZiBvcHRpb25zIHRvIGZpbHRlclxuICogQHBhcmFtIHNlYXJjaFN0cmluZyB0aGUgc3RyaW5nIGZyb20gdGhlIGlucHV0XG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBmaWx0ZXJPcHRpb25zQnlMYWJlbChvcHRpb25zOiBTZWxlY3RPcHRpb25bXSwgc2VhcmNoU3RyaW5nOiBzdHJpbmcpICB7XG4gIHJldHVybiBvcHRpb25zLmZpbHRlcihvcHRpb24gPT4ge1xuICAgIHJldHVybiBvcHRpb24ubGFiZWwgJiYgb3B0aW9uLmxhYmVsLnRvTG93ZXJDYXNlKCkuaW5jbHVkZXMoc2VhcmNoU3RyaW5nLnRvTG93ZXJDYXNlKCkpO1xuICB9KTtcbn1cbiJdfQ==
|
package/esm2020/lib/material/autocomplete-chiplist-field/autocomplete-chiplist-field.component.mjs
CHANGED
|
@@ -1,23 +1,31 @@
|
|
|
1
|
-
import { Component, ChangeDetectionStrategy, ViewChild, ElementRef } from '@angular/core';
|
|
1
|
+
import { Component, ChangeDetectionStrategy, ViewChild, ElementRef, NgModule } from '@angular/core';
|
|
2
2
|
import { map, tap } from 'rxjs/operators';
|
|
3
|
-
import { MatAutocompleteTrigger } from '@angular/material/autocomplete';
|
|
3
|
+
import { MatAutocompleteModule, MatAutocompleteTrigger } from '@angular/material/autocomplete';
|
|
4
4
|
import { BehaviorSubject, combineLatest } from 'rxjs';
|
|
5
5
|
import { ENTER } from '@angular/cdk/keycodes';
|
|
6
6
|
import { DEFAULT_EMPTY_OPTIONS_MESSAGE } from '../../models';
|
|
7
7
|
import { AbstractAutocompleteComponent } from '../../abstracts';
|
|
8
|
+
import { MatChipsModule } from '@angular/material/chips';
|
|
9
|
+
import { CommonModule } from '@angular/common';
|
|
10
|
+
import { ReactiveFormsModule } from '@angular/forms';
|
|
11
|
+
import { MatOptionModule } from '@angular/material/core';
|
|
12
|
+
import { MatInputModule } from '@angular/material/input';
|
|
13
|
+
import { FieldContainerModule } from '../../field-container';
|
|
14
|
+
import { InfoModule } from '../info/info.component';
|
|
15
|
+
import { OptionModule } from '../option';
|
|
16
|
+
import { MatIconModule } from '@angular/material/icon';
|
|
8
17
|
import * as i0 from "@angular/core";
|
|
9
|
-
import * as i1 from "
|
|
10
|
-
import * as i2 from "
|
|
11
|
-
import * as i3 from "
|
|
12
|
-
import * as i4 from "@angular/
|
|
13
|
-
import * as i5 from "
|
|
18
|
+
import * as i1 from "@angular/common";
|
|
19
|
+
import * as i2 from "../info/info.component";
|
|
20
|
+
import * as i3 from "../option/option.component";
|
|
21
|
+
import * as i4 from "@angular/forms";
|
|
22
|
+
import * as i5 from "../../field-container/field-container.component";
|
|
14
23
|
import * as i6 from "@angular/material/autocomplete";
|
|
15
24
|
import * as i7 from "@angular/material/core";
|
|
16
|
-
import * as i8 from "
|
|
17
|
-
import * as i9 from "@angular/
|
|
18
|
-
import * as i10 from "@
|
|
19
|
-
import * as i11 from "@angular/
|
|
20
|
-
import * as i12 from "@angular/material/input";
|
|
25
|
+
import * as i8 from "@angular/material/form-field";
|
|
26
|
+
import * as i9 from "@angular/material/input";
|
|
27
|
+
import * as i10 from "@angular/material/chips";
|
|
28
|
+
import * as i11 from "@angular/material/icon";
|
|
21
29
|
const defaultConfig = {
|
|
22
30
|
chipsSelectable: true,
|
|
23
31
|
areChipsRemovable: true,
|
|
@@ -96,9 +104,9 @@ export class AutocompleteChiplistFieldComponent extends AbstractAutocompleteComp
|
|
|
96
104
|
this.chips$.next(remainingChips);
|
|
97
105
|
}
|
|
98
106
|
}
|
|
99
|
-
AutocompleteChiplistFieldComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
100
|
-
AutocompleteChiplistFieldComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "
|
|
101
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
107
|
+
AutocompleteChiplistFieldComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.1", ngImport: i0, type: AutocompleteChiplistFieldComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
|
|
108
|
+
AutocompleteChiplistFieldComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.1", type: AutocompleteChiplistFieldComponent, selector: "crispr-autocomplete-chiplist-field", viewQueries: [{ propertyName: "chipInput", first: true, predicate: ["autoInput"], descendants: true, read: MatAutocompleteTrigger }, { propertyName: "chipInputRef", first: true, predicate: ["autoInput"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<crispr-field-container\n [config]=\"config\"\n [group]=\"group\">\n\n <mat-form-field\n [color]=\"config.color\"\n [appearance]=\"config.appearance\"\n [formGroup]=\"group\">\n <mat-label *ngIf=\"config.label\">\n {{config.label}}\n </mat-label>\n\n <mat-chip-list\n #chipList>\n <mat-chip\n class=\"refinement-chip\"\n *ngFor=\"let chip of controlValue$ | async\"\n [selectable]=\"config.chipsSelectable\"\n [removable]=\"config.areChipsRemovable\"\n (removed)=\"removeChip(chip)\">\n <span *ngIf=\"chip.imageUrl as imageUrl\" class=\"image-container\">\n <img [src]=\"imageUrl\" alt=\"image of {{chip.label}}\">\n </span>\n {{chip.label}}\n <mat-icon\n matChipRemove\n *ngIf=\"config.areChipsRemovable\">\n cancel\n </mat-icon>\n </mat-chip>\n <input class=\"hidden-error-directive-anchor\" [formControlName]=\"config.controlName\" type=\"text\"/>\n\n <input\n matInput\n [formControl]=\"autocompleteInputControl\"\n [placeholder]=\"config.placeholder\"\n [matChipInputFor]=\"chipList\"\n [matAutocomplete]=\"auto\"\n (keydown.tab)=\"handleTab($event)\"\n [matChipInputSeparatorKeyCodes]=\"config.separatorKeyCodes\"\n (matChipInputTokenEnd)=\"handleTokenEnd($event)\"\n role=\"searchbox\"\n type=\"text\"\n autocapitalize=\"off\"\n autocorrect=\"off\"\n spellcheck=\"false\"\n #autoInput/>\n <span *ngIf=\"config.fieldSuffix\" matSuffix>{{config.fieldSuffix}}</span>\n <crispr-info\n *ngIf=\"config.info\"\n matSuffix\n [info]=\"config.info \">\n </crispr-info>\n\n </mat-chip-list>\n <mat-autocomplete\n #auto=\"matAutocomplete\"\n [autoActiveFirstOption]=\"this.config.autoActiveFirstOption\"\n (optionSelected)=\"handleSelect($event)\"\n [displayWith]=\"mapToLabel\">\n <ng-container *ngIf=\"remainingOptions$ | async as remainingOptions; else emptyOption\">\n <ng-container *ngIf=\"remainingOptions.length > 0; else emptyOption\">\n <mat-option\n *ngFor=\"let option of remainingOptions$ | async\"\n [value]=\"option\">\n <crispr-option [option]=\"option\"></crispr-option>\n </mat-option>\n </ng-container>\n\n </ng-container>\n <ng-template #emptyOption>\n <mat-option disabled=\"true\">\n {{config.emptyOptionsMessage}}\n </mat-option>\n </ng-template>\n </mat-autocomplete>\n\n <mat-hint *ngIf=\"config.hint && (control.valid || !control.touched)\">{{config.hint}}</mat-hint>\n\n </mat-form-field>\n</crispr-field-container>\n", styles: [".refinement-chip .image-container{width:26px;height:26px;border-radius:50%;overflow:hidden;margin:-2px 4px -2px -8px}.refinement-chip .image-container img{width:100%;height:100%;object-fit:cover}.hidden-error-directive-anchor{display:none}\n"], dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.InfoComponent, selector: "crispr-info", inputs: ["info"] }, { kind: "component", type: i3.OptionComponent, selector: "crispr-option", inputs: ["option"] }, { kind: "directive", type: i4.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i4.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i4.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i4.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "directive", type: i4.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i4.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "component", type: i5.FieldContainerComponent, selector: "crispr-field-container", inputs: ["config", "group", "inlineField"] }, { kind: "component", type: i6.MatAutocomplete, selector: "mat-autocomplete", inputs: ["disableRipple"], exportAs: ["matAutocomplete"] }, { kind: "directive", type: i6.MatAutocompleteTrigger, selector: "input[matAutocomplete], textarea[matAutocomplete]", exportAs: ["matAutocompleteTrigger"] }, { kind: "component", type: i7.MatOption, selector: "mat-option", exportAs: ["matOption"] }, { kind: "component", type: i8.MatFormField, selector: "mat-form-field", inputs: ["color", "appearance", "hideRequiredMarker", "hintLabel", "floatLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i8.MatHint, selector: "mat-hint", inputs: ["align", "id"] }, { kind: "directive", type: i8.MatLabel, selector: "mat-label" }, { kind: "directive", type: i8.MatSuffix, selector: "[matSuffix]" }, { kind: "directive", type: i9.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { kind: "component", type: i10.MatChipList, selector: "mat-chip-list", inputs: ["role", "aria-describedby", "errorStateMatcher", "multiple", "compareWith", "value", "required", "placeholder", "disabled", "aria-orientation", "selectable", "tabIndex"], outputs: ["change", "valueChange"], exportAs: ["matChipList"] }, { kind: "directive", type: i10.MatChip, selector: "mat-basic-chip, [mat-basic-chip], mat-chip, [mat-chip]", inputs: ["color", "disableRipple", "tabIndex", "role", "selected", "value", "selectable", "disabled", "removable"], outputs: ["selectionChange", "destroyed", "removed"], exportAs: ["matChip"] }, { kind: "directive", type: i10.MatChipInput, selector: "input[matChipInputFor]", inputs: ["matChipInputFor", "matChipInputAddOnBlur", "matChipInputSeparatorKeyCodes", "placeholder", "id", "disabled"], outputs: ["matChipInputTokenEnd"], exportAs: ["matChipInput", "matChipInputFor"] }, { kind: "directive", type: i10.MatChipRemove, selector: "[matChipRemove]" }, { kind: "component", type: i11.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, preserveWhitespaces: true });
|
|
109
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.1", ngImport: i0, type: AutocompleteChiplistFieldComponent, decorators: [{
|
|
102
110
|
type: Component,
|
|
103
111
|
args: [{ selector: 'crispr-autocomplete-chiplist-field', changeDetection: ChangeDetectionStrategy.OnPush, template: "<crispr-field-container\n [config]=\"config\"\n [group]=\"group\">\n\n <mat-form-field\n [color]=\"config.color\"\n [appearance]=\"config.appearance\"\n [formGroup]=\"group\">\n <mat-label *ngIf=\"config.label\">\n {{config.label}}\n </mat-label>\n\n <mat-chip-list\n #chipList>\n <mat-chip\n class=\"refinement-chip\"\n *ngFor=\"let chip of controlValue$ | async\"\n [selectable]=\"config.chipsSelectable\"\n [removable]=\"config.areChipsRemovable\"\n (removed)=\"removeChip(chip)\">\n <span *ngIf=\"chip.imageUrl as imageUrl\" class=\"image-container\">\n <img [src]=\"imageUrl\" alt=\"image of {{chip.label}}\">\n </span>\n {{chip.label}}\n <mat-icon\n matChipRemove\n *ngIf=\"config.areChipsRemovable\">\n cancel\n </mat-icon>\n </mat-chip>\n <input class=\"hidden-error-directive-anchor\" [formControlName]=\"config.controlName\" type=\"text\"/>\n\n <input\n matInput\n [formControl]=\"autocompleteInputControl\"\n [placeholder]=\"config.placeholder\"\n [matChipInputFor]=\"chipList\"\n [matAutocomplete]=\"auto\"\n (keydown.tab)=\"handleTab($event)\"\n [matChipInputSeparatorKeyCodes]=\"config.separatorKeyCodes\"\n (matChipInputTokenEnd)=\"handleTokenEnd($event)\"\n role=\"searchbox\"\n type=\"text\"\n autocapitalize=\"off\"\n autocorrect=\"off\"\n spellcheck=\"false\"\n #autoInput/>\n <span *ngIf=\"config.fieldSuffix\" matSuffix>{{config.fieldSuffix}}</span>\n <crispr-info\n *ngIf=\"config.info\"\n matSuffix\n [info]=\"config.info \">\n </crispr-info>\n\n </mat-chip-list>\n <mat-autocomplete\n #auto=\"matAutocomplete\"\n [autoActiveFirstOption]=\"this.config.autoActiveFirstOption\"\n (optionSelected)=\"handleSelect($event)\"\n [displayWith]=\"mapToLabel\">\n <ng-container *ngIf=\"remainingOptions$ | async as remainingOptions; else emptyOption\">\n <ng-container *ngIf=\"remainingOptions.length > 0; else emptyOption\">\n <mat-option\n *ngFor=\"let option of remainingOptions$ | async\"\n [value]=\"option\">\n <crispr-option [option]=\"option\"></crispr-option>\n </mat-option>\n </ng-container>\n\n </ng-container>\n <ng-template #emptyOption>\n <mat-option disabled=\"true\">\n {{config.emptyOptionsMessage}}\n </mat-option>\n </ng-template>\n </mat-autocomplete>\n\n <mat-hint *ngIf=\"config.hint && (control.valid || !control.touched)\">{{config.hint}}</mat-hint>\n\n </mat-form-field>\n</crispr-field-container>\n", styles: [".refinement-chip .image-container{width:26px;height:26px;border-radius:50%;overflow:hidden;margin:-2px 4px -2px -8px}.refinement-chip .image-container img{width:100%;height:100%;object-fit:cover}.hidden-error-directive-anchor{display:none}\n"] }]
|
|
104
112
|
}], propDecorators: { chipInput: [{
|
|
@@ -108,4 +116,50 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.1", ngImpor
|
|
|
108
116
|
type: ViewChild,
|
|
109
117
|
args: ['autoInput']
|
|
110
118
|
}] } });
|
|
111
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0b2NvbXBsZXRlLWNoaXBsaXN0LWZpZWxkLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY3Jpc3ByLWZvcm1zL3NyYy9saWIvbWF0ZXJpYWwvYXV0b2NvbXBsZXRlLWNoaXBsaXN0LWZpZWxkL2F1dG9jb21wbGV0ZS1jaGlwbGlzdC1maWVsZC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NyaXNwci1mb3Jtcy9zcmMvbGliL21hdGVyaWFsL2F1dG9jb21wbGV0ZS1jaGlwbGlzdC1maWVsZC9hdXRvY29tcGxldGUtY2hpcGxpc3QtZmllbGQuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBVSx1QkFBdUIsRUFBRSxTQUFTLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ2xHLE9BQU8sRUFBRSxHQUFHLEVBQUUsR0FBRyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDMUMsT0FBTyxFQUFnQyxzQkFBc0IsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQ3RHLE9BQU8sRUFBYyxlQUFlLEVBQUUsYUFBYSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ2xFLE9BQU8sRUFBRSxLQUFLLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUU5QyxPQUFPLEVBQW1DLDZCQUE2QixFQUFnQixNQUFNLGNBQWMsQ0FBQztBQUM1RyxPQUFPLEVBQUUsNkJBQTZCLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQzs7Ozs7Ozs7Ozs7Ozs7QUFHaEUsTUFBTSxhQUFhLEdBQTZDO0lBQzlELGVBQWUsRUFBRSxJQUFJO0lBQ3JCLGlCQUFpQixFQUFFLElBQUk7SUFDdkIsV0FBVyxFQUFFLElBQUk7SUFDakIscUJBQXFCLEVBQUUsSUFBSTtJQUMzQixhQUFhLEVBQUUsT0FBTztJQUN0QixnQkFBZ0IsRUFBRSxHQUFHO0lBQ3JCLGVB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QUNILGNBQWMsQ0FBQyxLQUF3QjtRQUNyQyxJQUFJLElBQUksQ0FBQyxTQUFTLENBQUMsWUFBWSxFQUFFO1lBQy9CLElBQUksQ0FBQyxTQUFTLENBQUMsWUFBWSxDQUFDLE1BQU0sRUFBRSxDQUFDO1NBQ3RDO1FBQ0QsS0FBSyxDQUFDLFNBQVMsRUFBRSxLQUFLLEVBQUUsQ0FBQztJQUMzQixDQUFDO0lBRUQsVUFBVSxDQUFDLE1BQW9CO1FBQzdCLE9BQU8sTUFBTSxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUM7SUFDcEMsQ0FBQztJQUVELFVBQVUsQ0FBQyxXQUF5QjtRQUNsQyxNQUFNLGNBQWMsR0FBbUIsSUFBSSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsSUFBSSxLQUFLLFdBQVcsQ0FBQyxDQUFDO1FBQzlGLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxDQUFDO0lBQ25DLENBQUM7OytIQW5GVSxrQ0FBa0M7bUhBQWxDLGtDQUFrQyw2SkFnQmIsc0JBQXNCLGdKQzdDeEQscXRGQWlGQTsyRkRwRGEsa0NBQWtDO2tCQU45QyxTQUFTOytCQUNFLG9DQUFvQyxtQkFHN0IsdUJBQXVCLENBQUMsTUFBTTs4QkFrQlcsU0FBUztzQkFBbEUsU0FBUzt1QkFBQyxXQUFXLEVBQUUsRUFBRSxJQUFJLEVBQUUsc0JBQXNCLEVBQUU7Z0JBQ2hDLFlBQVk7c0JBQW5DLFNBQVM7dUJBQUMsV0FBVyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgT25Jbml0LCBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgVmlld0NoaWxkLCBFbGVtZW50UmVmIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBtYXAsIHRhcCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7IE1hdEF1dG9jb21wbGV0ZVNlbGVjdGVkRXZlbnQsIE1hdEF1dG9jb21wbGV0ZVRyaWdnZXIgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9hdXRvY29tcGxldGUnO1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSwgQmVoYXZpb3JTdWJqZWN0LCBjb21iaW5lTGF0ZXN0IH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBFTlRFUiB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9rZXljb2Rlcyc7XG5cbmltcG9ydCB7IEF1dG9jb21wbGV0ZUNoaXBsaXN0RmllbGRDb25maWcsIERFRkFVTFRfRU1QVFlfT1BUSU9OU19NRVNTQUdFLCBTZWxlY3RPcHRpb24gfSBmcm9tICcuLi8uLi9tb2RlbHMnO1xuaW1wb3J0IHsgQWJzdHJhY3RBdXRvY29tcGxldGVDb21wb25lbnQgfSBmcm9tICcuLi8uLi9hYnN0cmFjdHMnO1xuaW1wb3J0IHsgTWF0Q2hpcElucHV0RXZlbnQgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9jaGlwcyc7XG5cbmNvbnN0IGRlZmF1bHRDb25maWc6IFBhcnRpYWw8QXV0b2NvbXBsZXRlQ2hpcGxpc3RGaWVsZENvbmZpZz4gPSB7XG4gIGNoaXBzU2VsZWN0YWJsZTogdHJ1ZSxcbiAgYXJlQ2hpcHNSZW1vdmFibGU6IHRydWUsXG4gIHRhYlRvU2VsZWN0OiB0cnVlLFxuICBhdXRvQWN0aXZlRmlyc3RPcHRpb246IHRydWUsXG4gIGltYWdlVXJsUGFyYW06ICdpbWFnZScsXG4gIHR5cGVEZWJvdW5jZVRpbWU6IDUwMCxcbiAgYWxsb3dEdXBsaWNhdGVzOiBmYWxzZSxcbiAgZHVwbGljYXRlQ29tcGFyZUZ1bmN0aW9uOiAoY2hpcCwgb3B0aW9uKSA9PiBjaGlwLnZhbHVlID09PSBvcHRpb24udmFsdWUsXG4gIHNlcGFyYXRvcktleUNvZGVzOiBbRU5URVJdLFxuICBlbXB0eU9wdGlvbnNNZXNzYWdlOiBERUZBVUxUX0VNUFRZX09QVElPTlNfTUVTU0FHRSxcbn1cblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnY3Jpc3ByLWF1dG9jb21wbGV0ZS1jaGlwbGlzdC1maWVsZCcsXG4gIHRlbXBsYXRlVXJsOiAnLi9hdXRvY29tcGxldGUtY2hpcGxpc3QtZmllbGQuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9hdXRvY29tcGxldGUtY2hpcGxpc3QtZmllbGQuY29tcG9uZW50LnNjc3MnXSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2hcbn0pXG5leHBvcnQgY2xhc3MgQXV0b2NvbXBsZXRlQ2hpcGxpc3RGaWVsZENvbXBvbmVudFxuICBleHRlbmRzIEFic3RyYWN0QXV0b2NvbXBsZXRlQ29tcG9uZW50PEF1dG9jb21wbGV0ZUNoaXBsaXN0RmllbGRDb25maWc+IGltcGxlbWVudHMgT25Jbml0IHtcbiAgZGVmYXVsdENvbmZpZyA9IGRlZmF1bHRDb25maWc7XG4gIGNoaXBzJCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8U2VsZWN0T3B0aW9uW10+KFtdKTtcbiAgcmVtYWluaW5nT3B0aW9ucyQ6IE9ic2VydmFibGU8U2VsZWN0T3B0aW9uW10+O1xuXG4gIGNvbnRyb2xWYWx1ZSQgPSB0aGlzLmNoaXBzJC5waXBlKFxuICAgIHRhcChjaGlwcyA9PiB7XG4gICAgICB0aGlzLmNvbnRyb2wuc2V0VmFsdWUoY2hpcHMubWFwKGNoaXAgPT4gY2hpcC52YWx1ZSkpXG4gICAgfSlcbiAgKTtcblxuXG4gIC8vIFdlIG5lZWQgdXNlIFZpZXdDaGlsZCB0d2ljZSBvbiB0aGUgc2FtZSB0ZW1wbGF0ZSByZWYgdG8gYWNjZXNzIGFzIGRpZmZlcmVudCB0eXBlc1xuICAvLyAtIHRoZSBNYXRBdXRvY29tcGxldGVUcmlnZ2VyIGlzIHVzZWQgdG8gZm9yIHNlbGVjdGluZyB2YWx1ZSBvbiB0YWJcbiAgLy8gLSB0aGUgRWxlbWVudFJlZjxIVE1MSW5wdXRFbGVtZW50PiBpcyB1c2VkIHRvIGNsZWFyIHRoZSB2YWx1ZSBmcm9tIGlucHV0IGVsZW1lbnQgb24gc2VsZWN0aW9uXG4gIEBWaWV3Q2hpbGQoJ2F1dG9JbnB1dCcsIHsgcmVhZDogTWF0QXV0b2NvbXBsZXRlVHJpZ2dlciB9KSBjaGlwSW5wdXQ6IE1hdEF1dG9jb21wbGV0ZVRyaWdnZXI7XG4gIEBWaWV3Q2hpbGQoJ2F1dG9JbnB1dCcpIGNoaXBJbnB1dFJlZjogRWxlbWVudFJlZjxIVE1MSW5wdXRFbGVtZW50PjtcblxuXG4gIG5nT25Jbml0KCkge1xuICAgIHN1cGVyLm5nT25Jbml0KCk7XG4gICAgdGhpcy5yZW1haW5pbmdPcHRpb25zJCA9IGNvbWJpbmVMYXRlc3QoW1xuICAgICAgdGhpcy5jaGlwcyQsXG4gICAgICB0aGlzLm9wdGlvbnMkXG4gICAgXSkucGlwZShcbiAgICAgIG1hcCgoW2NoaXBzLCBvcHRpb25zXSkgPT4ge1xuICAgICAgICByZXR1cm4gdGhpcy5jb25maWcuYWxsb3dEdXBsaWNhdGVzXG4gICAgICAgICAgPyBvcHRpb25zXG4gICAgICAgICAgOiBvcHRpb25zPy5maWx0ZXIob3B0aW9uID0+IHtcbiAgICAgICAgICAgIHJldHVybiAhY2hpcHMuc29tZShjaGlwID0+IHRoaXMuY29uZmlnLmR1cGxpY2F0ZUNvbXBhcmVGdW5jdGlvbihjaGlwLCBvcHRpb24pKTtcbiAgICAgICAgICB9KTtcbiAgICAgIH0pXG4gICAgKVxuICB9XG5cbiAgc2V0Q29udHJvbFZhbHVlKHZhbHVlOiBTZWxlY3RPcHRpb25bXSkge1xuICAgIGlmICh2YWx1ZSkge1xuICAgICAgdGhpcy5jaGlwcyQubmV4dCh2YWx1ZSk7XG4gICAgfVxuICB9XG5cbiAgLy8gaGFuZGxlcyBtYXQgc2VsZWN0aW5nXG4gIGhhbmRsZVNlbGVjdChldmVudDogTWF0QXV0b2NvbXBsZXRlU2VsZWN0ZWRFdmVudCkge1xuICAgIGNvbnN0IHNlbGVjdGVkT3B0aW9uOiBTZWxlY3RPcHRpb24gPSBldmVudC5vcHRpb24udmFsdWUgYXMgU2VsZWN0T3B0aW9uO1xuICAgIHRoaXMuY2hpcHMkLm5leHQoWy4uLnRoaXMuY2hpcHMkLnZhbHVlLCAgc2VsZWN0ZWRPcHRpb25dKTtcbiAgICB0aGlzLmNoaXBJbnB1dFJlZi5uYXRpdmVFbGVtZW50LnZhbHVlID0gJyc7XG4gICAgdGhpcy5hdXRvY29tcGxldGVJbnB1dENvbnRyb2wuc2V0VmFsdWUoJycpO1xuICAgIC8vIHNldFRpbWVvdXQgbmVlZGVkIGJlY2F1c2UgdGhlIHBhbmVsIHRoaW5rcyBpdCdzIHN0aWxsIG9wZW4gYXQgdGhpcyBwb2ludFxuICAgIHNldFRpbWVvdXQoKCkgPT4gdGhpcy5jaGlwSW5wdXQub3BlblBhbmVsKCkpXG4gIH1cblxuICAvKipcbiAgICogVG8gZm9sbG93IEFSSUEgc3RhbmRhcmRzIHdlIHdhbnQgdG8gc2VsZWN0IHRoZSBhY3RpdmUgb3B0aW9uIG9uIGJsdXIuXG4gICAqIG1hdENoaXBJbnB1dEFkZE9uQmx1ciBzaG91bGQgZG8gdGhpcyBidXQgaXQgY2F1c2VzIGJ1Z2d5IGJlaGF2aW91clxuICAgKiBAcGFyYW0gZXZlbnQgYmx1ciBldmVudCB0aGF0IHRyaWdnZXJzIHRoZSBoYW5kbGUgYmx1clxuICAgKi9cbiAgaGFuZGxlVGFiKF9ldmVudDogRm9jdXNFdmVudCkge1xuICAgIGlmICh0aGlzLmNoaXBJbnB1dC5hY3RpdmVPcHRpb24gJiYgKHRoaXMuY29uZmlnLnRhYlRvU2VsZWN0IHx8IHRoaXMuY29uZmlnLmFkZENoaXBPbkJsdXIpKSB7XG4gICAgICBjb25zdCBjaGlwID0gdGhpcy5jaGlwSW5wdXQuYWN0aXZlT3B0aW9uLnZhbHVlO1xuICAgICAgdGhpcy5jaGlwcyQubmV4dChbLi4udGhpcy5jaGlwcyQudmFsdWUsICBjaGlwXSk7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIEhhbmRsZXMgc2VsZWN0aW9uIHZpYSBrZXkgdG9rZW5zIHBhc3NlZCB0aHJvdWdoIHNlcGFyYXRvcktleUNvZGVzIHByb3BlcnRcbiAgICogTk9URTogSWYgVEFCIGlzIHVzZWQgZm9jdXMgZG9lcyBub3QgbW92ZSBvbiB0byBuZXh0IGNvbXBvbmVudFxuICAgKiBAcGFyYW0gZXZlbnRcbiAgICovXG4gIGhhbmRsZVRva2VuRW5kKGV2ZW50OiBNYXRDaGlwSW5wdXRFdmVudCkge1xuICAgIGlmICh0aGlzLmNoaXBJbnB1dC5hY3RpdmVPcHRpb24pIHtcbiAgICAgIHRoaXMuY2hpcElucHV0LmFjdGl2ZU9wdGlvbi5zZWxlY3QoKTtcbiAgICB9XG4gICAgZXZlbnQuY2hpcElucHV0Py5jbGVhcigpO1xuICB9XG5cbiAgbWFwVG9MYWJlbChvcHRpb246IFNlbGVjdE9wdGlvbikge1xuICAgIHJldHVybiBvcHRpb24gPyBvcHRpb24ubGFiZWwgOiAnJztcbiAgfVxuXG4gIHJlbW92ZUNoaXAocmVtb3ZlZENoaXA6IFNlbGVjdE9wdGlvbikge1xuICAgIGNvbnN0IHJlbWFpbmluZ0NoaXBzOiBTZWxlY3RPcHRpb25bXSA9IHRoaXMuY2hpcHMkLnZhbHVlLmZpbHRlcihjaGlwID0+IGNoaXAgIT09IHJlbW92ZWRDaGlwKTtcbiAgICB0aGlzLmNoaXBzJC5uZXh0KHJlbWFpbmluZ0NoaXBzKTtcbiAgfVxufVxuIiwiPGNyaXNwci1maWVsZC1jb250YWluZXJcbiAgW2NvbmZpZ109XCJjb25maWdcIlxuICBbZ3JvdXBdPVwiZ3JvdXBcIj5cblxuICA8bWF0LWZvcm0tZmllbGRcbiAgICBbY29sb3JdPVwiY29uZmlnLmNvbG9yXCJcbiAgICBbYXBwZWFyYW5jZV09XCJjb25maWcuYXBwZWFyYW5jZVwiXG4gICAgW2Zvcm1Hcm91cF09XCJncm91cFwiPlxuICAgIDxtYXQtbGFiZWwgKm5nSWY9XCJjb25maWcubGFiZWxcIj5cbiAgICAgIHt7Y29uZmlnLmxhYmVsfX1cbiAgICA8L21hdC1sYWJlbD5cblxuICAgIDxtYXQtY2hpcC1saXN0XG4gICAgICAjY2hpcExpc3Q+XG4gICAgICA8bWF0LWNoaXBcbiAgICAgICAgY2xhc3M9XCJyZWZpbmVtZW50LWNoaXBcIlxuICAgICAgICAqbmdGb3I9XCJsZXQgY2hpcCBvZiBjb250cm9sVmFsdWUkIHwgYXN5bmNcIlxuICAgICAgICBbc2VsZWN0YWJsZV09XCJjb25maWcuY2hpcHNTZWxlY3RhYmxlXCJcbiAgICAgICAgW3JlbW92YWJsZV09XCJjb25maWcuYXJlQ2hpcHNSZW1vdmFibGVcIlxuICAgICAgICAocmVtb3ZlZCk9XCJyZW1vdmVDaGlwKGNoaXApXCI+XG4gICAgICAgIDxzcGFuICpuZ0lmPVwiY2hpcC5pbWFnZVVybCBhcyBpbWFnZVVybFwiIGNsYXNzPVwiaW1hZ2UtY29udGFpbmVyXCI+XG4gICAgICAgICAgPGltZyBbc3JjXT1cImltYWdlVXJsXCIgYWx0PVwiaW1hZ2Ugb2Yge3tjaGlwLmxhYmVsfX1cIj5cbiAgICAgICAgPC9zcGFuPlxuICAgICAgICB7e2NoaXAubGFiZWx9fVxuICAgICAgICA8bWF0LWljb25cbiAgICAgICAgICBtYXRDaGlwUmVtb3ZlXG4gICAgICAgICAgKm5nSWY9XCJjb25maWcuYXJlQ2hpcHNSZW1vdmFibGVcIj5cbiAgICAgICAgICBjYW5jZWxcbiAgICAgICAgPC9tYXQtaWNvbj5cbiAgICAgIDwvbWF0LWNoaXA+XG4gICAgICA8aW5wdXQgY2xhc3M9XCJoaWRkZW4tZXJyb3ItZGlyZWN0aXZlLWFuY2hvclwiIFtmb3JtQ29udHJvbE5hbWVdPVwiY29uZmlnLmNvbnRyb2xOYW1lXCIgdHlwZT1cInRleHRcIi8+XG5cbiAgICAgIDxpbnB1dFxuICAgICAgICBtYXRJbnB1dFxuICAgICAgICBbZm9ybUNvbnRyb2xdPVwiYXV0b2NvbXBsZXRlSW5wdXRDb250cm9sXCJcbiAgICAgICAgW3BsYWNlaG9sZGVyXT1cImNvbmZpZy5wbGFjZWhvbGRlclwiXG4gICAgICAgIFttYXRDaGlwSW5wdXRGb3JdPVwiY2hpcExpc3RcIlxuICAgICAgICBbbWF0QXV0b2NvbXBsZXRlXT1cImF1dG9cIlxuICAgICAgICAoa2V5ZG93bi50YWIpPVwiaGFuZGxlVGFiKCRldmVudClcIlxuICAgICAgICBbbWF0Q2hpcElucHV0U2VwYXJhdG9yS2V5Q29kZXNdPVwiY29uZmlnLnNlcGFyYXRvcktleUNvZGVzXCJcbiAgICAgICAgKG1hdENoaXBJbnB1dFRva2VuRW5kKT1cImhhbmRsZVRva2VuRW5kKCRldmVudClcIlxuICAgICAgICByb2xlPVwic2VhcmNoYm94XCJcbiAgICAgICAgdHlwZT1cInRleHRcIlxuICAgICAgICBhdXRvY2FwaXRhbGl6ZT1cIm9mZlwiXG4gICAgICAgIGF1dG9jb3JyZWN0PVwib2ZmXCJcbiAgICAgICAgc3BlbGxjaGVjaz1cImZhbHNlXCJcbiAgICAgICAgI2F1dG9JbnB1dC8+XG4gICAgICA8c3BhbiAqbmdJZj1cImNvbmZpZy5maWVsZFN1ZmZpeFwiIG1hdFN1ZmZpeD57e2NvbmZpZy5maWVsZFN1ZmZpeH19PC9zcGFuPlxuICAgICAgPGNyaXNwci1pbmZvXG4gICAgICAgICpuZ0lmPVwiY29uZmlnLmluZm9cIlxuICAgICAgICBtYXRTdWZmaXhcbiAgICAgICAgW2luZm9dPVwiY29uZmlnLmluZm8gXCI+XG4gICAgICA8L2NyaXNwci1pbmZvPlxuXG4gICAgPC9tYXQtY2hpcC1saXN0PlxuICAgIDxtYXQtYXV0b2NvbXBsZXRlXG4gICAgICAjYXV0bz1cIm1hdEF1dG9jb21wbGV0ZVwiXG4gICAgICBbYXV0b0FjdGl2ZUZpcnN0T3B0aW9uXT1cInRoaXMuY29uZmlnLmF1dG9BY3RpdmVGaXJzdE9wdGlvblwiXG4gICAgICAob3B0aW9uU2VsZWN0ZWQpPVwiaGFuZGxlU2VsZWN0KCRldmVudClcIlxuICAgICAgW2Rpc3BsYXlXaXRoXT1cIm1hcFRvTGFiZWxcIj5cbiAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJyZW1haW5pbmdPcHRpb25zJCB8IGFzeW5jIGFzIHJlbWFpbmluZ09wdGlvbnM7IGVsc2UgZW1wdHlPcHRpb25cIj5cbiAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cInJlbWFpbmluZ09wdGlvbnMubGVuZ3RoID4gMDsgZWxzZSBlbXB0eU9wdGlvblwiPlxuICAgICAgICAgICA8bWF0LW9wdGlvblxuICAgICAgICAgICAgKm5nRm9yPVwibGV0IG9wdGlvbiBvZiByZW1haW5pbmdPcHRpb25zJCB8IGFzeW5jXCJcbiAgICAgICAgICAgIFt2YWx1ZV09XCJvcHRpb25cIj5cbiAgICAgICAgICAgIDxjcmlzcHItb3B0aW9uIFtvcHRpb25dPVwib3B0aW9uXCI+PC9jcmlzcHItb3B0aW9uPlxuICAgICAgICAgIDwvbWF0LW9wdGlvbj5cbiAgICAgICAgPC9uZy1jb250YWluZXI+XG5cbiAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgPG5nLXRlbXBsYXRlICNlbXB0eU9wdGlvbj5cbiAgICAgICAgPG1hdC1vcHRpb24gZGlzYWJsZWQ9XCJ0cnVlXCI+XG4gICAgICAgICAge3tjb25maWcuZW1wdHlPcHRpb25zTWVzc2FnZX19XG4gICAgICAgIDwvbWF0LW9wdGlvbj5cbiAgICAgIDwvbmctdGVtcGxhdGU+XG4gICAgPC9tYXQtYXV0b2NvbXBsZXRlPlxuXG4gICAgPG1hdC1oaW50ICpuZ0lmPVwiY29uZmlnLmhpbnQgJiYgKGNvbnRyb2wudmFsaWQgfHwgIWNvbnRyb2wudG91Y2hlZClcIj57e2NvbmZpZy5oaW50fX08L21hdC1oaW50PlxuXG4gIDwvbWF0LWZvcm0tZmllbGQ+XG48L2NyaXNwci1maWVsZC1jb250YWluZXI+XG4iXX0=
|
|
119
|
+
export class AutocompleteChiplistFieldModule {
|
|
120
|
+
}
|
|
121
|
+
AutocompleteChiplistFieldModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.1", ngImport: i0, type: AutocompleteChiplistFieldModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
122
|
+
AutocompleteChiplistFieldModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.0.1", ngImport: i0, type: AutocompleteChiplistFieldModule, declarations: [AutocompleteChiplistFieldComponent], imports: [CommonModule,
|
|
123
|
+
InfoModule,
|
|
124
|
+
OptionModule,
|
|
125
|
+
ReactiveFormsModule,
|
|
126
|
+
FieldContainerModule,
|
|
127
|
+
MatAutocompleteModule,
|
|
128
|
+
MatInputModule,
|
|
129
|
+
MatOptionModule,
|
|
130
|
+
MatChipsModule,
|
|
131
|
+
MatIconModule], exports: [AutocompleteChiplistFieldComponent] });
|
|
132
|
+
AutocompleteChiplistFieldModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.0.1", ngImport: i0, type: AutocompleteChiplistFieldModule, imports: [CommonModule,
|
|
133
|
+
InfoModule,
|
|
134
|
+
OptionModule,
|
|
135
|
+
ReactiveFormsModule,
|
|
136
|
+
FieldContainerModule,
|
|
137
|
+
MatAutocompleteModule,
|
|
138
|
+
MatInputModule,
|
|
139
|
+
MatOptionModule,
|
|
140
|
+
MatChipsModule,
|
|
141
|
+
MatIconModule] });
|
|
142
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.1", ngImport: i0, type: AutocompleteChiplistFieldModule, decorators: [{
|
|
143
|
+
type: NgModule,
|
|
144
|
+
args: [{
|
|
145
|
+
imports: [
|
|
146
|
+
CommonModule,
|
|
147
|
+
InfoModule,
|
|
148
|
+
OptionModule,
|
|
149
|
+
ReactiveFormsModule,
|
|
150
|
+
FieldContainerModule,
|
|
151
|
+
MatAutocompleteModule,
|
|
152
|
+
MatInputModule,
|
|
153
|
+
MatOptionModule,
|
|
154
|
+
MatChipsModule,
|
|
155
|
+
MatIconModule
|
|
156
|
+
],
|
|
157
|
+
exports: [
|
|
158
|
+
AutocompleteChiplistFieldComponent
|
|
159
|
+
],
|
|
160
|
+
declarations: [
|
|
161
|
+
AutocompleteChiplistFieldComponent
|
|
162
|
+
]
|
|
163
|
+
}]
|
|
164
|
+
}] });
|
|
165
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0b2NvbXBsZXRlLWNoaXBsaXN0LWZpZWxkLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY3Jpc3ByLWZvcm1zL3NyYy9saWIvbWF0ZXJpYWwvYXV0b2NvbXBsZXRlLWNoaXBsaXN0LWZpZWxkL2F1dG9jb21wbGV0ZS1jaGlwbGlzdC1maWVsZC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NyaXNwci1mb3Jtcy9zcmMvbGliL21hdGVyaWFsL2F1dG9jb21wbGV0ZS1jaGlwbGlzdC1maWVsZC9hdXRvY29tcGxldGUtY2hpcGxpc3QtZmllbGQuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBVSx1QkFBdUIsRUFBRSxTQUFTLEVBQUUsVUFBVSxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUM1RyxPQUFPLEVBQUUsR0FBRyxFQUFFLEdBQUcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzFDLE9BQU8sRUFBRSxxQkFBcUIsRUFBZ0Msc0JBQXNCLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUM3SCxPQUFPLEVBQWMsZUFBZSxFQUFFLGFBQWEsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUNsRSxPQUFPLEVBQUUsS0FBSyxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFFOUMsT0FBTyxFQUFtQyw2QkFBNkIsRUFBZ0IsTUFBTSxjQUFjLENBQUM7QUFDNUcsT0FBTyxFQUFFLDZCQUE2QixFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDaEUsT0FBTyxFQUFxQixjQUFjLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUM1RSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDckQsT0FBTyxFQUFFLGVBQWUs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Qyw2SkFnQmIsc0JBQXNCLGdKQ3REeEQscXRGQWlGQTsyRkQzQ2Esa0NBQWtDO2tCQU45QyxTQUFTOytCQUNFLG9DQUFvQyxtQkFHN0IsdUJBQXVCLENBQUMsTUFBTTs4QkFrQlcsU0FBUztzQkFBbEUsU0FBUzt1QkFBQyxXQUFXLEVBQUUsRUFBRSxJQUFJLEVBQUUsc0JBQXNCLEVBQUU7Z0JBQ2hDLFlBQVk7c0JBQW5DLFNBQVM7dUJBQUMsV0FBVzs7QUF3RnhCLE1BQU0sT0FBTywrQkFBK0I7OzRIQUEvQiwrQkFBK0I7NkhBQS9CLCtCQUErQixpQkF6Ry9CLGtDQUFrQyxhQXVGM0MsWUFBWTtRQUNaLFVBQVU7UUFDVixZQUFZO1FBQ1osbUJBQW1CO1FBQ25CLG9CQUFvQjtRQUNwQixxQkFBcUI7UUFDckIsY0FBYztRQUNkLGVBQWU7UUFDZixjQUFjO1FBQ2QsYUFBYSxhQWhHSixrQ0FBa0M7NkhBeUdsQywrQkFBK0IsWUFsQnhDLFlBQVk7UUFDWixVQUFVO1FBQ1YsWUFBWTtRQUNaLG1CQUFtQjtRQUNuQixvQkFBb0I7UUFDcEIscUJBQXFCO1FBQ3JCLGNBQWM7UUFDZCxlQUFlO1FBQ2YsY0FBYztRQUNkLGFBQWE7MkZBU0osK0JBQStCO2tCQXBCM0MsUUFBUTttQkFBQztvQkFDUixPQUFPLEVBQUU7d0JBQ1AsWUFBWTt3QkFDWixVQUFVO3dCQUNWLFlBQVk7d0JBQ1osbUJBQW1CO3dCQUNuQixvQkFBb0I7d0JBQ3BCLHFCQUFxQjt3QkFDckIsY0FBYzt3QkFDZCxlQUFlO3dCQUNmLGNBQWM7d0JBQ2QsYUFBYTtxQkFDZDtvQkFDRCxPQUFPLEVBQUU7d0JBQ1Asa0NBQWtDO3FCQUNuQztvQkFDRCxZQUFZLEVBQUU7d0JBQ1osa0NBQWtDO3FCQUNuQztpQkFDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgT25Jbml0LCBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgVmlld0NoaWxkLCBFbGVtZW50UmVmLCBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgbWFwLCB0YXAgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQgeyBNYXRBdXRvY29tcGxldGVNb2R1bGUsIE1hdEF1dG9jb21wbGV0ZVNlbGVjdGVkRXZlbnQsIE1hdEF1dG9jb21wbGV0ZVRyaWdnZXIgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9hdXRvY29tcGxldGUnO1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSwgQmVoYXZpb3JTdWJqZWN0LCBjb21iaW5lTGF0ZXN0IH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBFTlRFUiB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9rZXljb2Rlcyc7XG5cbmltcG9ydCB7IEF1dG9jb21wbGV0ZUNoaXBsaXN0RmllbGRDb25maWcsIERFRkFVTFRfRU1QVFlfT1BUSU9OU19NRVNTQUdFLCBTZWxlY3RPcHRpb24gfSBmcm9tICcuLi8uLi9tb2RlbHMnO1xuaW1wb3J0IHsgQWJzdHJhY3RBdXRvY29tcGxldGVDb21wb25lbnQgfSBmcm9tICcuLi8uLi9hYnN0cmFjdHMnO1xuaW1wb3J0IHsgTWF0Q2hpcElucHV0RXZlbnQsIE1hdENoaXBzTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvY2hpcHMnO1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IFJlYWN0aXZlRm9ybXNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBNYXRPcHRpb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9jb3JlJztcbmltcG9ydCB7IE1hdElucHV0TW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvaW5wdXQnO1xuaW1wb3J0IHsgRmllbGRDb250YWluZXJNb2R1bGUgfSBmcm9tICcuLi8uLi9maWVsZC1jb250YWluZXInO1xuaW1wb3J0IHsgQXV0b2NvbXBsZXRlRmllbGRDb21wb25lbnQgfSBmcm9tICcuLi9hdXRvY29tcGxldGUtZmllbGQvYXV0b2NvbXBsZXRlLWZpZWxkLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBJbmZvTW9kdWxlIH0gZnJvbSAnLi4vaW5mby9pbmZvLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBPcHRpb25Nb2R1bGUgfSBmcm9tICcuLi9vcHRpb24nO1xuaW1wb3J0IHsgTWF0SWNvbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2ljb24nO1xuXG5jb25zdCBkZWZhdWx0Q29uZmlnOiBQYXJ0aWFsPEF1dG9jb21wbGV0ZUNoaXBsaXN0RmllbGRDb25maWc+ID0ge1xuICBjaGlwc1NlbGVjdGFibGU6IHRydWUsXG4gIGFyZUNoaXBzUmVtb3ZhYmxlOiB0cnVlLFxuICB0YWJUb1NlbGVjdDogdHJ1ZSxcbiAgYXV0b0FjdGl2ZUZpcnN0T3B0aW9uOiB0cnVlLFxuICBpbWFnZVVybFBhcmFtOiAnaW1hZ2UnLFxuICB0eXBlRGVib3VuY2VUaW1lOiA1MDAsXG4gIGFsbG93RHVwbGljYXRlczogZmFsc2UsXG4gIGR1cGxpY2F0ZUNvbXBhcmVGdW5jdGlvbjogKGNoaXAsIG9wdGlvbikgPT4gY2hpcC52YWx1ZSA9PT0gb3B0aW9uLnZhbHVlLFxuICBzZXBhcmF0b3JLZXlDb2RlczogW0VOVEVSXSxcbiAgZW1wdHlPcHRpb25zTWVzc2FnZTogREVGQVVMVF9FTVBUWV9PUFRJT05TX01FU1NBR0UsXG59XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2NyaXNwci1hdXRvY29tcGxldGUtY2hpcGxpc3QtZmllbGQnLFxuICB0ZW1wbGF0ZVVybDogJy4vYXV0b2NvbXBsZXRlLWNoaXBsaXN0LWZpZWxkLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vYXV0b2NvbXBsZXRlLWNoaXBsaXN0LWZpZWxkLmNvbXBvbmVudC5zY3NzJ10sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoXG59KVxuZXhwb3J0IGNsYXNzIEF1dG9jb21wbGV0ZUNoaXBsaXN0RmllbGRDb21wb25lbnRcbiAgZXh0ZW5kcyBBYnN0cmFjdEF1dG9jb21wbGV0ZUNvbXBvbmVudDxBdXRvY29tcGxldGVDaGlwbGlzdEZpZWxkQ29uZmlnPiBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gIGRlZmF1bHRDb25maWcgPSBkZWZhdWx0Q29uZmlnO1xuICBjaGlwcyQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PFNlbGVjdE9wdGlvbltdPihbXSk7XG4gIHJlbWFpbmluZ09wdGlvbnMkOiBPYnNlcnZhYmxlPFNlbGVjdE9wdGlvbltdPjtcblxuICBjb250cm9sVmFsdWUkID0gdGhpcy5jaGlwcyQucGlwZShcbiAgICB0YXAoY2hpcHMgPT4ge1xuICAgICAgdGhpcy5jb250cm9sLnNldFZhbHVlKGNoaXBzLm1hcChjaGlwID0+IGNoaXAudmFsdWUpKVxuICAgIH0pXG4gICk7XG5cblxuICAvLyBXZSBuZWVkIHVzZSBWaWV3Q2hpbGQgdHdpY2Ugb24gdGhlIHNhbWUgdGVtcGxhdGUgcmVmIHRvIGFjY2VzcyBhcyBkaWZmZXJlbnQgdHlwZXNcbiAgLy8gLSB0aGUgTWF0QXV0b2NvbXBsZXRlVHJpZ2dlciBpcyB1c2VkIHRvIGZvciBzZWxlY3RpbmcgdmFsdWUgb24gdGFiXG4gIC8vIC0gdGhlIEVsZW1lbnRSZWY8SFRNTElucHV0RWxlbWVudD4gaXMgdXNlZCB0byBjbGVhciB0aGUgdmFsdWUgZnJvbSBpbnB1dCBlbGVtZW50IG9uIHNlbGVjdGlvblxuICBAVmlld0NoaWxkKCdhdXRvSW5wdXQnLCB7IHJlYWQ6IE1hdEF1dG9jb21wbGV0ZVRyaWdnZXIgfSkgY2hpcElucHV0OiBNYXRBdXRvY29tcGxldGVUcmlnZ2VyO1xuICBAVmlld0NoaWxkKCdhdXRvSW5wdXQnKSBjaGlwSW5wdXRSZWY6IEVsZW1lbnRSZWY8SFRNTElucHV0RWxlbWVudD47XG5cblxuICBuZ09uSW5pdCgpIHtcbiAgICBzdXBlci5uZ09uSW5pdCgpO1xuICAgIHRoaXMucmVtYWluaW5nT3B0aW9ucyQgPSBjb21iaW5lTGF0ZXN0KFtcbiAgICAgIHRoaXMuY2hpcHMkLFxuICAgICAgdGhpcy5vcHRpb25zJFxuICAgIF0pLnBpcGUoXG4gICAgICBtYXAoKFtjaGlwcywgb3B0aW9uc10pID0+IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuY29uZmlnLmFsbG93RHVwbGljYXRlc1xuICAgICAgICAgID8gb3B0aW9uc1xuICAgICAgICAgIDogb3B0aW9ucz8uZmlsdGVyKG9wdGlvbiA9PiB7XG4gICAgICAgICAgICByZXR1cm4gIWNoaXBzLnNvbWUoY2hpcCA9PiB0aGlzLmNvbmZpZy5kdXBsaWNhdGVDb21wYXJlRnVuY3Rpb24oY2hpcCwgb3B0aW9uKSk7XG4gICAgICAgICAgfSk7XG4gICAgICB9KVxuICAgIClcbiAgfVxuXG4gIHNldENvbnRyb2xWYWx1ZSh2YWx1ZTogU2VsZWN0T3B0aW9uW10pIHtcbiAgICBpZiAodmFsdWUpIHtcbiAgICAgIHRoaXMuY2hpcHMkLm5leHQodmFsdWUpO1xuICAgIH1cbiAgfVxuXG4gIC8vIGhhbmRsZXMgbWF0IHNlbGVjdGluZ1xuICBoYW5kbGVTZWxlY3QoZXZlbnQ6IE1hdEF1dG9jb21wbGV0ZVNlbGVjdGVkRXZlbnQpIHtcbiAgICBjb25zdCBzZWxlY3RlZE9wdGlvbjogU2VsZWN0T3B0aW9uID0gZXZlbnQub3B0aW9uLnZhbHVlIGFzIFNlbGVjdE9wdGlvbjtcbiAgICB0aGlzLmNoaXBzJC5uZXh0KFsuLi50aGlzLmNoaXBzJC52YWx1ZSwgIHNlbGVjdGVkT3B0aW9uXSk7XG4gICAgdGhpcy5jaGlwSW5wdXRSZWYubmF0aXZlRWxlbWVudC52YWx1ZSA9ICcnO1xuICAgIHRoaXMuYXV0b2NvbXBsZXRlSW5wdXRDb250cm9sLnNldFZhbHVlKCcnKTtcbiAgICAvLyBzZXRUaW1lb3V0IG5lZWRlZCBiZWNhdXNlIHRoZSBwYW5lbCB0aGlua3MgaXQncyBzdGlsbCBvcGVuIGF0IHRoaXMgcG9pbnRcbiAgICBzZXRUaW1lb3V0KCgpID0+IHRoaXMuY2hpcElucHV0Lm9wZW5QYW5lbCgpKVxuICB9XG5cbiAgLyoqXG4gICAqIFRvIGZvbGxvdyBBUklBIHN0YW5kYXJkcyB3ZSB3YW50IHRvIHNlbGVjdCB0aGUgYWN0aXZlIG9wdGlvbiBvbiBibHVyLlxuICAgKiBtYXRDaGlwSW5wdXRBZGRPbkJsdXIgc2hvdWxkIGRvIHRoaXMgYnV0IGl0IGNhdXNlcyBidWdneSBiZWhhdmlvdXJcbiAgICogQHBhcmFtIGV2ZW50IGJsdXIgZXZlbnQgdGhhdCB0cmlnZ2VycyB0aGUgaGFuZGxlIGJsdXJcbiAgICovXG4gIGhhbmRsZVRhYihfZXZlbnQ6IEZvY3VzRXZlbnQpIHtcbiAgICBpZiAodGhpcy5jaGlwSW5wdXQuYWN0aXZlT3B0aW9uICYmICh0aGlzLmNvbmZpZy50YWJUb1NlbGVjdCB8fCB0aGlzLmNvbmZpZy5hZGRDaGlwT25CbHVyKSkge1xuICAgICAgY29uc3QgY2hpcCA9IHRoaXMuY2hpcElucHV0LmFjdGl2ZU9wdGlvbi52YWx1ZTtcbiAgICAgIHRoaXMuY2hpcHMkLm5leHQoWy4uLnRoaXMuY2hpcHMkLnZhbHVlLCAgY2hpcF0pO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBIYW5kbGVzIHNlbGVjdGlvbiB2aWEga2V5IHRva2VucyBwYXNzZWQgdGhyb3VnaCBzZXBhcmF0b3JLZXlDb2RlcyBwcm9wZXJ0XG4gICAqIE5PVEU6IElmIFRBQiBpcyB1c2VkIGZvY3VzIGRvZXMgbm90IG1vdmUgb24gdG8gbmV4dCBjb21wb25lbnRcbiAgICogQHBhcmFtIGV2ZW50XG4gICAqL1xuICBoYW5kbGVUb2tlbkVuZChldmVudDogTWF0Q2hpcElucHV0RXZlbnQpIHtcbiAgICBpZiAodGhpcy5jaGlwSW5wdXQuYWN0aXZlT3B0aW9uKSB7XG4gICAgICB0aGlzLmNoaXBJbnB1dC5hY3RpdmVPcHRpb24uc2VsZWN0KCk7XG4gICAgfVxuICAgIGV2ZW50LmNoaXBJbnB1dD8uY2xlYXIoKTtcbiAgfVxuXG4gIG1hcFRvTGFiZWwob3B0aW9uOiBTZWxlY3RPcHRpb24pIHtcbiAgICByZXR1cm4gb3B0aW9uID8gb3B0aW9uLmxhYmVsIDogJyc7XG4gIH1cblxuICByZW1vdmVDaGlwKHJlbW92ZWRDaGlwOiBTZWxlY3RPcHRpb24pIHtcbiAgICBjb25zdCByZW1haW5pbmdDaGlwczogU2VsZWN0T3B0aW9uW10gPSB0aGlzLmNoaXBzJC52YWx1ZS5maWx0ZXIoY2hpcCA9PiBjaGlwICE9PSByZW1vdmVkQ2hpcCk7XG4gICAgdGhpcy5jaGlwcyQubmV4dChyZW1haW5pbmdDaGlwcyk7XG4gIH1cbn1cbkBOZ01vZHVsZSh7XG4gIGltcG9ydHM6IFtcbiAgICBDb21tb25Nb2R1bGUsXG4gICAgSW5mb01vZHVsZSxcbiAgICBPcHRpb25Nb2R1bGUsXG4gICAgUmVhY3RpdmVGb3Jtc01vZHVsZSxcbiAgICBGaWVsZENvbnRhaW5lck1vZHVsZSxcbiAgICBNYXRBdXRvY29tcGxldGVNb2R1bGUsXG4gICAgTWF0SW5wdXRNb2R1bGUsXG4gICAgTWF0T3B0aW9uTW9kdWxlLFxuICAgIE1hdENoaXBzTW9kdWxlLFxuICAgIE1hdEljb25Nb2R1bGVcbiAgXSxcbiAgZXhwb3J0czogW1xuICAgIEF1dG9jb21wbGV0ZUNoaXBsaXN0RmllbGRDb21wb25lbnRcbiAgXSxcbiAgZGVjbGFyYXRpb25zOiBbXG4gICAgQXV0b2NvbXBsZXRlQ2hpcGxpc3RGaWVsZENvbXBvbmVudFxuICBdXG59KVxuZXhwb3J0IGNsYXNzIEF1dG9jb21wbGV0ZUNoaXBsaXN0RmllbGRNb2R1bGUge1xufVxuIiwiPGNyaXNwci1maWVsZC1jb250YWluZXJcbiAgW2NvbmZpZ109XCJjb25maWdcIlxuICBbZ3JvdXBdPVwiZ3JvdXBcIj5cblxuICA8bWF0LWZvcm0tZmllbGRcbiAgICBbY29sb3JdPVwiY29uZmlnLmNvbG9yXCJcbiAgICBbYXBwZWFyYW5jZV09XCJjb25maWcuYXBwZWFyYW5jZVwiXG4gICAgW2Zvcm1Hcm91cF09XCJncm91cFwiPlxuICAgIDxtYXQtbGFiZWwgKm5nSWY9XCJjb25maWcubGFiZWxcIj5cbiAgICAgIHt7Y29uZmlnLmxhYmVsfX1cbiAgICA8L21hdC1sYWJlbD5cblxuICAgIDxtYXQtY2hpcC1saXN0XG4gICAgICAjY2hpcExpc3Q+XG4gICAgICA8bWF0LWNoaXBcbiAgICAgICAgY2xhc3M9XCJyZWZpbmVtZW50LWNoaXBcIlxuICAgICAgICAqbmdGb3I9XCJsZXQgY2hpcCBvZiBjb250cm9sVmFsdWUkIHwgYXN5bmNcIlxuICAgICAgICBbc2VsZWN0YWJsZV09XCJjb25maWcuY2hpcHNTZWxlY3RhYmxlXCJcbiAgICAgICAgW3JlbW92YWJsZV09XCJjb25maWcuYXJlQ2hpcHNSZW1vdmFibGVcIlxuICAgICAgICAocmVtb3ZlZCk9XCJyZW1vdmVDaGlwKGNoaXApXCI+XG4gICAgICAgIDxzcGFuICpuZ0lmPVwiY2hpcC5pbWFnZVVybCBhcyBpbWFnZVVybFwiIGNsYXNzPVwiaW1hZ2UtY29udGFpbmVyXCI+XG4gICAgICAgICAgPGltZyBbc3JjXT1cImltYWdlVXJsXCIgYWx0PVwiaW1hZ2Ugb2Yge3tjaGlwLmxhYmVsfX1cIj5cbiAgICAgICAgPC9zcGFuPlxuICAgICAgICB7e2NoaXAubGFiZWx9fVxuICAgICAgICA8bWF0LWljb25cbiAgICAgICAgICBtYXRDaGlwUmVtb3ZlXG4gICAgICAgICAgKm5nSWY9XCJjb25maWcuYXJlQ2hpcHNSZW1vdmFibGVcIj5cbiAgICAgICAgICBjYW5jZWxcbiAgICAgICAgPC9tYXQtaWNvbj5cbiAgICAgIDwvbWF0LWNoaXA+XG4gICAgICA8aW5wdXQgY2xhc3M9XCJoaWRkZW4tZXJyb3ItZGlyZWN0aXZlLWFuY2hvclwiIFtmb3JtQ29udHJvbE5hbWVdPVwiY29uZmlnLmNvbnRyb2xOYW1lXCIgdHlwZT1cInRleHRcIi8+XG5cbiAgICAgIDxpbnB1dFxuICAgICAgICBtYXRJbnB1dFxuICAgICAgICBbZm9ybUNvbnRyb2xdPVwiYXV0b2NvbXBsZXRlSW5wdXRDb250cm9sXCJcbiAgICAgICAgW3BsYWNlaG9sZGVyXT1cImNvbmZpZy5wbGFjZWhvbGRlclwiXG4gICAgICAgIFttYXRDaGlwSW5wdXRGb3JdPVwiY2hpcExpc3RcIlxuICAgICAgICBbbWF0QXV0b2NvbXBsZXRlXT1cImF1dG9cIlxuICAgICAgICAoa2V5ZG93bi50YWIpPVwiaGFuZGxlVGFiKCRldmVudClcIlxuICAgICAgICBbbWF0Q2hpcElucHV0U2VwYXJhdG9yS2V5Q29kZXNdPVwiY29uZmlnLnNlcGFyYXRvcktleUNvZGVzXCJcbiAgICAgICAgKG1hdENoaXBJbnB1dFRva2VuRW5kKT1cImhhbmRsZVRva2VuRW5kKCRldmVudClcIlxuICAgICAgICByb2xlPVwic2VhcmNoYm94XCJcbiAgICAgICAgdHlwZT1cInRleHRcIlxuICAgICAgICBhdXRvY2FwaXRhbGl6ZT1cIm9mZlwiXG4gICAgICAgIGF1dG9jb3JyZWN0PVwib2ZmXCJcbiAgICAgICAgc3BlbGxjaGVjaz1cImZhbHNlXCJcbiAgICAgICAgI2F1dG9JbnB1dC8+XG4gICAgICA8c3BhbiAqbmdJZj1cImNvbmZpZy5maWVsZFN1ZmZpeFwiIG1hdFN1ZmZpeD57e2NvbmZpZy5maWVsZFN1ZmZpeH19PC9zcGFuPlxuICAgICAgPGNyaXNwci1pbmZvXG4gICAgICAgICpuZ0lmPVwiY29uZmlnLmluZm9cIlxuICAgICAgICBtYXRTdWZmaXhcbiAgICAgICAgW2luZm9dPVwiY29uZmlnLmluZm8gXCI+XG4gICAgICA8L2NyaXNwci1pbmZvPlxuXG4gICAgPC9tYXQtY2hpcC1saXN0PlxuICAgIDxtYXQtYXV0b2NvbXBsZXRlXG4gICAgICAjYXV0bz1cIm1hdEF1dG9jb21wbGV0ZVwiXG4gICAgICBbYXV0b0FjdGl2ZUZpcnN0T3B0aW9uXT1cInRoaXMuY29uZmlnLmF1dG9BY3RpdmVGaXJzdE9wdGlvblwiXG4gICAgICAob3B0aW9uU2VsZWN0ZWQpPVwiaGFuZGxlU2VsZWN0KCRldmVudClcIlxuICAgICAgW2Rpc3BsYXlXaXRoXT1cIm1hcFRvTGFiZWxcIj5cbiAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJyZW1haW5pbmdPcHRpb25zJCB8IGFzeW5jIGFzIHJlbWFpbmluZ09wdGlvbnM7IGVsc2UgZW1wdHlPcHRpb25cIj5cbiAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cInJlbWFpbmluZ09wdGlvbnMubGVuZ3RoID4gMDsgZWxzZSBlbXB0eU9wdGlvblwiPlxuICAgICAgICAgICA8bWF0LW9wdGlvblxuICAgICAgICAgICAgKm5nRm9yPVwibGV0IG9wdGlvbiBvZiByZW1haW5pbmdPcHRpb25zJCB8IGFzeW5jXCJcbiAgICAgICAgICAgIFt2YWx1ZV09XCJvcHRpb25cIj5cbiAgICAgICAgICAgIDxjcmlzcHItb3B0aW9uIFtvcHRpb25dPVwib3B0aW9uXCI+PC9jcmlzcHItb3B0aW9uPlxuICAgICAgICAgIDwvbWF0LW9wdGlvbj5cbiAgICAgICAgPC9uZy1jb250YWluZXI+XG5cbiAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgPG5nLXRlbXBsYXRlICNlbXB0eU9wdGlvbj5cbiAgICAgICAgPG1hdC1vcHRpb24gZGlzYWJsZWQ9XCJ0cnVlXCI+XG4gICAgICAgICAge3tjb25maWcuZW1wdHlPcHRpb25zTWVzc2FnZX19XG4gICAgICAgIDwvbWF0LW9wdGlvbj5cbiAgICAgIDwvbmctdGVtcGxhdGU+XG4gICAgPC9tYXQtYXV0b2NvbXBsZXRlPlxuXG4gICAgPG1hdC1oaW50ICpuZ0lmPVwiY29uZmlnLmhpbnQgJiYgKGNvbnRyb2wudmFsaWQgfHwgIWNvbnRyb2wudG91Y2hlZClcIj57e2NvbmZpZy5oaW50fX08L21hdC1oaW50PlxuXG4gIDwvbWF0LWZvcm0tZmllbGQ+XG48L2NyaXNwci1maWVsZC1jb250YWluZXI+XG4iXX0=
|