@provoly/dashboard 0.15.5 → 0.15.7
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/admin/i18n/en.translations.d.ts +1 -0
- package/admin/i18n/fr.translations.d.ts +1 -0
- package/assets/svgs/arrow-left-s-fill.svg +1 -0
- package/assets/svgs/arrow-right-s-fill.svg +1 -0
- package/assets/svgs/skip-left-fill.svg +1 -0
- package/assets/svgs/skip-right-fill.svg +1 -0
- package/esm2022/admin/components/admin-fields/admin-fields-form/admin-fields-form.component.mjs +8 -5
- package/esm2022/admin/components/admin-metadata/admin-select-metadata/admin-select-metadata.component.mjs +15 -13
- package/esm2022/admin/i18n/en.translations.mjs +3 -2
- package/esm2022/admin/i18n/fr.translations.mjs +3 -2
- package/esm2022/admin/store/admin.service.mjs +2 -2
- package/esm2022/components/metadata-editor/metadata-editor.component.mjs +4 -4
- package/esm2022/dataset/components/dataset.component.mjs +3 -2
- package/esm2022/lib/core/auth/geoAuth.service.mjs +11 -7
- package/esm2022/lib/core/model/admin-api.model.mjs +1 -1
- package/esm2022/lib/dashboard/resultset-utils.mjs +17 -2
- package/esm2022/lib/dashboard/store/dashboard.actions.mjs +1 -1
- package/esm2022/lib/dashboard/store/dashboard.effects.mjs +2 -2
- package/esm2022/lib/dashboard/store/manifest.service.mjs +3 -2
- package/esm2022/presentation/components/add-edit-presentation/add-edit-presentation.component.mjs +5 -1
- package/esm2022/widgets/widget-map/component/widget-map.component.mjs +18 -10
- package/esm2022/widgets/widget-table/component/widget-table.component.mjs +40 -4
- package/esm2022/widgets/widget-table/i18n/en.translations.mjs +3 -2
- package/esm2022/widgets/widget-table/i18n/fr.translations.mjs +3 -2
- package/fesm2022/provoly-dashboard-admin.mjs +26 -19
- package/fesm2022/provoly-dashboard-admin.mjs.map +1 -1
- package/fesm2022/provoly-dashboard-components-metadata-editor.mjs +3 -3
- package/fesm2022/provoly-dashboard-components-metadata-editor.mjs.map +1 -1
- package/fesm2022/provoly-dashboard-dataset.mjs +2 -1
- package/fesm2022/provoly-dashboard-dataset.mjs.map +1 -1
- package/fesm2022/provoly-dashboard-presentation.mjs +4 -0
- package/fesm2022/provoly-dashboard-presentation.mjs.map +1 -1
- package/fesm2022/provoly-dashboard-widgets-widget-map.mjs +17 -9
- package/fesm2022/provoly-dashboard-widgets-widget-map.mjs.map +1 -1
- package/fesm2022/provoly-dashboard-widgets-widget-table.mjs +43 -5
- package/fesm2022/provoly-dashboard-widgets-widget-table.mjs.map +1 -1
- package/fesm2022/provoly-dashboard.mjs +29 -9
- package/fesm2022/provoly-dashboard.mjs.map +1 -1
- package/lib/core/model/admin-api.model.d.ts +2 -0
- package/lib/dashboard/store/dashboard.actions.d.ts +8 -0
- package/lib/dashboard/store/manifest.service.d.ts +4 -1
- package/package.json +1 -1
- package/presentation/components/add-edit-presentation/add-edit-presentation.component.d.ts +1 -1
- package/styles/components/_a-table.scss +33 -2
- package/widgets/widget-map/component/widget-map.component.d.ts +4 -2
- package/widgets/widget-table/component/widget-table.component.d.ts +13 -1
- package/widgets/widget-table/i18n/en.translations.d.ts +1 -0
- package/widgets/widget-table/i18n/fr.translations.d.ts +1 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M8 12L14 6V18L8 12Z"></path></svg>
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M16 12L10 18V6L16 12Z"></path></svg>
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M7 18V6H9V18H7ZM11 12 17 6V18L11 12Z"></path></svg>
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M17 6 17 18H15L15 6 17 6ZM13 12 7 18V6L13 12Z"></path></svg>
|
package/esm2022/admin/components/admin-fields/admin-fields-form/admin-fields-form.component.mjs
CHANGED
|
@@ -64,9 +64,12 @@ export class AdminFieldsFormComponent {
|
|
|
64
64
|
type: this.currentField.type
|
|
65
65
|
});
|
|
66
66
|
this.fieldForm.controls['type'].disable();
|
|
67
|
+
if (this.isGeographicType) {
|
|
68
|
+
this.fieldForm.addControl('crs', new FormControl(this.currentField.crs, [Validators.required]));
|
|
69
|
+
this.fieldForm.controls['crs'].disable();
|
|
70
|
+
}
|
|
67
71
|
}
|
|
68
|
-
|
|
69
|
-
this.selectedFieldTypeDescription$ = this.fieldForm.get('type').valueChanges.pipe(startWith(this.fieldTypeTranslations[0]['varType']), distinctUntilChanged(), map((selectedType) => this.fieldTypeTranslations.find((translation) => translation['varType'] === selectedType)?.['description'] ??
|
|
72
|
+
this.selectedFieldTypeDescription$ = this.fieldForm.get('type')?.valueChanges.pipe(startWith(this.currentField?.type ?? this.fieldTypeTranslations[0]['varType']), distinctUntilChanged(), map((selectedType) => this.fieldTypeTranslations.find((translation) => translation['varType'] === selectedType)?.['description'] ??
|
|
70
73
|
''));
|
|
71
74
|
this.fieldForm.get('type').valueChanges.subscribe((type) => {
|
|
72
75
|
if (this.isGeographicType) {
|
|
@@ -101,12 +104,12 @@ export class AdminFieldsFormComponent {
|
|
|
101
104
|
return this.currentField ? this.goBackPathEdit : this.goBackPath;
|
|
102
105
|
}
|
|
103
106
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.6", ngImport: i0, type: AdminFieldsFormComponent, deps: [{ token: i1.Store }, { token: i2.Router }, { token: i2.ActivatedRoute }, { token: i3.UntypedFormBuilder }, { token: i4.PryI18nService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
104
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.1.6", type: AdminFieldsFormComponent, selector: "pry-admin-fields-form", inputs: { currentField: "currentField" }, ngImport: i0, template: "<div>\n <form class=\"o-form\" [formGroup]=\"fieldForm\" (ngSubmit)=\"addField()\">\n <div class=\"m-form-label-field -width-sm\">\n <label id=\"name-label\" for=\"field_name\" class=\"a-label\">\n {{ '@pry.admin.fields.name' | i18n }} *\n <span class=\"u-visually-hidden\">({{ '@pry.admin.required' | i18n }})</span>\n </label>\n <input\n id=\"field_name\"\n type=\"text\"\n class=\"a-form-field\"\n formControlName=\"name\"\n [attr.aria-labelledby]=\"isSubmitted && fieldForm.get('name')?.invalid ? 'name-label name-error' : 'name-label'\"\n [attr.aria-invalid]=\"isSubmitted && fieldForm.get('name')?.invalid\"\n required\n />\n <label\n *ngIf=\"isSubmitted && fieldForm.get('name')?.invalid\"\n id=\"name-error\"\n for=\"field_name\"\n class=\"a-label a-label--help -error\"\n >\n <span *ngIf=\"fieldForm.get('name')?.hasError('same-name')\">{{ '@pry.admin.exists' | i18n }}</span>\n <span *ngIf=\"fieldForm.get('name')?.hasError('required')\">{{ '@pry.admin.required' | i18n }}</span>\n <span *ngIf=\"fieldForm.get('name')?.hasError('minlength')\">{{\n '@pry.admin.minLength' | i18n : { len: 3 }\n }}</span>\n <span *ngIf=\"fieldForm.get('name')?.hasError('maxlength')\">{{\n '@pry.admin.maxLength' | i18n : { len: 100 }\n }}</span>\n <span *ngIf=\"fieldForm.get('name')?.hasError('whitespace') && !fieldForm.get('name')?.hasError('minlength')\">{{\n '@pry.admin.noWhitespace' | i18n\n }}</span>\n </label>\n </div>\n\n <div class=\"m-form-label-field -width-sm\">\n <label class=\"a-label\">\n {{ '@pry.admin.fields.type' | i18n }} *\n <span class=\"u-visually-hidden\">({{ '@pry.admin.required' | i18n }})</span>\n </label>\n <div class=\"title-container\">\n <pry-select\n class=\"a-pry-select -width-sm\"\n formControlName=\"type\"\n [
|
|
107
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.1.6", type: AdminFieldsFormComponent, selector: "pry-admin-fields-form", inputs: { currentField: "currentField" }, ngImport: i0, template: "<div>\n <form class=\"o-form\" [formGroup]=\"fieldForm\" (ngSubmit)=\"addField()\">\n <div class=\"m-form-label-field -width-sm\">\n <label id=\"name-label\" for=\"field_name\" class=\"a-label\">\n {{ '@pry.admin.fields.name' | i18n }} *\n <span class=\"u-visually-hidden\">({{ '@pry.admin.required' | i18n }})</span>\n </label>\n <input\n id=\"field_name\"\n type=\"text\"\n class=\"a-form-field\"\n formControlName=\"name\"\n [attr.aria-labelledby]=\"isSubmitted && fieldForm.get('name')?.invalid ? 'name-label name-error' : 'name-label'\"\n [attr.aria-invalid]=\"isSubmitted && fieldForm.get('name')?.invalid\"\n required\n />\n <label\n *ngIf=\"isSubmitted && fieldForm.get('name')?.invalid\"\n id=\"name-error\"\n for=\"field_name\"\n class=\"a-label a-label--help -error\"\n >\n <span *ngIf=\"fieldForm.get('name')?.hasError('same-name')\">{{ '@pry.admin.exists' | i18n }}</span>\n <span *ngIf=\"fieldForm.get('name')?.hasError('required')\">{{ '@pry.admin.required' | i18n }}</span>\n <span *ngIf=\"fieldForm.get('name')?.hasError('minlength')\">{{\n '@pry.admin.minLength' | i18n : { len: 3 }\n }}</span>\n <span *ngIf=\"fieldForm.get('name')?.hasError('maxlength')\">{{\n '@pry.admin.maxLength' | i18n : { len: 100 }\n }}</span>\n <span *ngIf=\"fieldForm.get('name')?.hasError('whitespace') && !fieldForm.get('name')?.hasError('minlength')\">{{\n '@pry.admin.noWhitespace' | i18n\n }}</span>\n </label>\n </div>\n\n <div class=\"m-form-label-field -width-sm\">\n <label class=\"a-label\">\n {{ '@pry.admin.fields.type' | i18n }} *\n <span class=\"u-visually-hidden\">({{ '@pry.admin.required' | i18n }})</span>\n </label>\n <div class=\"title-container\">\n <pry-select\n class=\"a-pry-select -width-sm\"\n formControlName=\"type\"\n [items]=\"fieldTypeTranslations\"\n [itemsAsOption]=\"true\"\n bindValue=\"varType\"\n bindLabel=\"translation\"\n [isForm]=\"true\"\n ></pry-select>\n <ng-container>\n <div class=\"info-icon description-container description\">\n <span class=\"info-text\">i</span>\n </div>\n <div class=\"description-tooltip title-tooltip\">\n <p class=\"a-p -date\">{{ selectedFieldTypeDescription$ | async }}</p>\n </div>\n </ng-container>\n </div>\n </div>\n\n <div class=\"m-form-label-field -width-sm\" *ngIf=\"isGeographicType\">\n <label class=\"a-label\">\n {{ '@pry.admin.fields.crs' | i18n }} *\n <span class=\"u-visually-hidden\">({{ '@pry.admin.required' | i18n }})</span>\n </label>\n <div class=\"title-container\">\n <pry-select\n class=\"a-pry-select -width-sm\"\n formControlName=\"crs\"\n [labelTranslate]=\"false\"\n [items]=\"CRS_OPTIONS\"\n [itemsAsOption]=\"true\"\n bindValue=\"code\"\n bindLabel=\"label\"\n [isForm]=\"true\"\n id=\"crs\"\n ></pry-select>\n </div>\n <label\n *ngIf=\"isSubmitted && fieldForm.get('crs') && fieldForm.get('crs')?.invalid\"\n id=\"crs-error\"\n for=\"crs\"\n class=\"a-label a-label--help -error\"\n >\n <span *ngIf=\"fieldForm.get('name')?.hasError('required')\">{{ '@pry.admin.required' | i18n }}</span>\n </label>\n </div>\n\n <div class=\"m-btn-group -width-sm\">\n <button\n type=\"button\"\n class=\"a-btn a-btn--secondary\"\n (click)=\"goBack()\"\n [innerHTML]=\"'@pry.admin.cancel' | i18n\"\n ></button>\n <button\n class=\"a-btn a-btn--primary\"\n type=\"submit\"\n [innerHTML]=\"(currentField ? '@pry.admin.edit' : '@pry.admin.create') | i18n\"\n ></button>\n </div>\n </form>\n</div>\n", dependencies: [{ kind: "directive", type: i5.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i3.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i3.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: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i3.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i3.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i3.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "component", type: i4.PrySelectComponent, selector: "pry-select", inputs: ["labelTranslate", "baseTranslate", "translationFn", "translationFnArgs", "clearable", "multiple", "multipleClearRight", "closeOnSelect", "placeholder", "isForm", "required", "name", "readonly", "items", "itemsAsOption", "bindData", "bindValue", "bindLabel", "bindIcon", "iconSize", "templateLabel", "templateOption", "autocomplete"] }, { kind: "pipe", type: i5.AsyncPipe, name: "async" }, { kind: "pipe", type: i4.I18nPipe, name: "i18n" }] }); }
|
|
105
108
|
}
|
|
106
109
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.6", ngImport: i0, type: AdminFieldsFormComponent, decorators: [{
|
|
107
110
|
type: Component,
|
|
108
|
-
args: [{ selector: 'pry-admin-fields-form', template: "<div>\n <form class=\"o-form\" [formGroup]=\"fieldForm\" (ngSubmit)=\"addField()\">\n <div class=\"m-form-label-field -width-sm\">\n <label id=\"name-label\" for=\"field_name\" class=\"a-label\">\n {{ '@pry.admin.fields.name' | i18n }} *\n <span class=\"u-visually-hidden\">({{ '@pry.admin.required' | i18n }})</span>\n </label>\n <input\n id=\"field_name\"\n type=\"text\"\n class=\"a-form-field\"\n formControlName=\"name\"\n [attr.aria-labelledby]=\"isSubmitted && fieldForm.get('name')?.invalid ? 'name-label name-error' : 'name-label'\"\n [attr.aria-invalid]=\"isSubmitted && fieldForm.get('name')?.invalid\"\n required\n />\n <label\n *ngIf=\"isSubmitted && fieldForm.get('name')?.invalid\"\n id=\"name-error\"\n for=\"field_name\"\n class=\"a-label a-label--help -error\"\n >\n <span *ngIf=\"fieldForm.get('name')?.hasError('same-name')\">{{ '@pry.admin.exists' | i18n }}</span>\n <span *ngIf=\"fieldForm.get('name')?.hasError('required')\">{{ '@pry.admin.required' | i18n }}</span>\n <span *ngIf=\"fieldForm.get('name')?.hasError('minlength')\">{{\n '@pry.admin.minLength' | i18n : { len: 3 }\n }}</span>\n <span *ngIf=\"fieldForm.get('name')?.hasError('maxlength')\">{{\n '@pry.admin.maxLength' | i18n : { len: 100 }\n }}</span>\n <span *ngIf=\"fieldForm.get('name')?.hasError('whitespace') && !fieldForm.get('name')?.hasError('minlength')\">{{\n '@pry.admin.noWhitespace' | i18n\n }}</span>\n </label>\n </div>\n\n <div class=\"m-form-label-field -width-sm\">\n <label class=\"a-label\">\n {{ '@pry.admin.fields.type' | i18n }} *\n <span class=\"u-visually-hidden\">({{ '@pry.admin.required' | i18n }})</span>\n </label>\n <div class=\"title-container\">\n <pry-select\n class=\"a-pry-select -width-sm\"\n formControlName=\"type\"\n [
|
|
111
|
+
args: [{ selector: 'pry-admin-fields-form', template: "<div>\n <form class=\"o-form\" [formGroup]=\"fieldForm\" (ngSubmit)=\"addField()\">\n <div class=\"m-form-label-field -width-sm\">\n <label id=\"name-label\" for=\"field_name\" class=\"a-label\">\n {{ '@pry.admin.fields.name' | i18n }} *\n <span class=\"u-visually-hidden\">({{ '@pry.admin.required' | i18n }})</span>\n </label>\n <input\n id=\"field_name\"\n type=\"text\"\n class=\"a-form-field\"\n formControlName=\"name\"\n [attr.aria-labelledby]=\"isSubmitted && fieldForm.get('name')?.invalid ? 'name-label name-error' : 'name-label'\"\n [attr.aria-invalid]=\"isSubmitted && fieldForm.get('name')?.invalid\"\n required\n />\n <label\n *ngIf=\"isSubmitted && fieldForm.get('name')?.invalid\"\n id=\"name-error\"\n for=\"field_name\"\n class=\"a-label a-label--help -error\"\n >\n <span *ngIf=\"fieldForm.get('name')?.hasError('same-name')\">{{ '@pry.admin.exists' | i18n }}</span>\n <span *ngIf=\"fieldForm.get('name')?.hasError('required')\">{{ '@pry.admin.required' | i18n }}</span>\n <span *ngIf=\"fieldForm.get('name')?.hasError('minlength')\">{{\n '@pry.admin.minLength' | i18n : { len: 3 }\n }}</span>\n <span *ngIf=\"fieldForm.get('name')?.hasError('maxlength')\">{{\n '@pry.admin.maxLength' | i18n : { len: 100 }\n }}</span>\n <span *ngIf=\"fieldForm.get('name')?.hasError('whitespace') && !fieldForm.get('name')?.hasError('minlength')\">{{\n '@pry.admin.noWhitespace' | i18n\n }}</span>\n </label>\n </div>\n\n <div class=\"m-form-label-field -width-sm\">\n <label class=\"a-label\">\n {{ '@pry.admin.fields.type' | i18n }} *\n <span class=\"u-visually-hidden\">({{ '@pry.admin.required' | i18n }})</span>\n </label>\n <div class=\"title-container\">\n <pry-select\n class=\"a-pry-select -width-sm\"\n formControlName=\"type\"\n [items]=\"fieldTypeTranslations\"\n [itemsAsOption]=\"true\"\n bindValue=\"varType\"\n bindLabel=\"translation\"\n [isForm]=\"true\"\n ></pry-select>\n <ng-container>\n <div class=\"info-icon description-container description\">\n <span class=\"info-text\">i</span>\n </div>\n <div class=\"description-tooltip title-tooltip\">\n <p class=\"a-p -date\">{{ selectedFieldTypeDescription$ | async }}</p>\n </div>\n </ng-container>\n </div>\n </div>\n\n <div class=\"m-form-label-field -width-sm\" *ngIf=\"isGeographicType\">\n <label class=\"a-label\">\n {{ '@pry.admin.fields.crs' | i18n }} *\n <span class=\"u-visually-hidden\">({{ '@pry.admin.required' | i18n }})</span>\n </label>\n <div class=\"title-container\">\n <pry-select\n class=\"a-pry-select -width-sm\"\n formControlName=\"crs\"\n [labelTranslate]=\"false\"\n [items]=\"CRS_OPTIONS\"\n [itemsAsOption]=\"true\"\n bindValue=\"code\"\n bindLabel=\"label\"\n [isForm]=\"true\"\n id=\"crs\"\n ></pry-select>\n </div>\n <label\n *ngIf=\"isSubmitted && fieldForm.get('crs') && fieldForm.get('crs')?.invalid\"\n id=\"crs-error\"\n for=\"crs\"\n class=\"a-label a-label--help -error\"\n >\n <span *ngIf=\"fieldForm.get('name')?.hasError('required')\">{{ '@pry.admin.required' | i18n }}</span>\n </label>\n </div>\n\n <div class=\"m-btn-group -width-sm\">\n <button\n type=\"button\"\n class=\"a-btn a-btn--secondary\"\n (click)=\"goBack()\"\n [innerHTML]=\"'@pry.admin.cancel' | i18n\"\n ></button>\n <button\n class=\"a-btn a-btn--primary\"\n type=\"submit\"\n [innerHTML]=\"(currentField ? '@pry.admin.edit' : '@pry.admin.create') | i18n\"\n ></button>\n </div>\n </form>\n</div>\n" }]
|
|
109
112
|
}], ctorParameters: function () { return [{ type: i1.Store }, { type: i2.Router }, { type: i2.ActivatedRoute }, { type: i3.UntypedFormBuilder }, { type: i4.PryI18nService }]; }, propDecorators: { currentField: [{
|
|
110
113
|
type: Input
|
|
111
114
|
}] } });
|
|
112
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWRtaW4tZmllbGRzLWZvcm0uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvcHJvdm9seS9kYXNoYm9hcmQvYWRtaW4vY29tcG9uZW50cy9hZG1pbi1maWVsZHMvYWRtaW4tZmllbGRzLWZvcm0vYWRtaW4tZmllbGRzLWZvcm0uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvcHJvdm9seS9kYXNoYm9hcmQvYWRtaW4vY29tcG9uZW50cy9hZG1pbi1maWVsZHMvYWRtaW4tZmllbGRzLWZvcm0vYWRtaW4tZmllbGRzLWZvcm0uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQXFCLE1BQU0sZUFBZSxDQUFDO0FBQ3BFLE9BQU8sRUFBRSxXQUFXLEVBQXdDLFVBQVUsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRy9GLE9BQU8sRUFFTCxhQUFhLEVBQ2IsWUFBWSxFQUNaLGNBQWMsRUFDZCxtQkFBbUIsRUFFcEIsTUFBTSxvQkFBb0IsQ0FBQztBQUM1QixPQUFPLEVBQUUsYUFBYSxFQUFFLEdBQUcsRUFBYyxTQUFTLEVBQUUsWUFBWSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQy9FLE9BQU8sRUFBRSxFQUFFLElBQUksSUFBSSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ2xDLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBQzVFLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUM1RCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDeEQsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7Ozs7Ozs7QUFFdEQsTUFBTSxDQUFDLE1BQU0sV0FBVyxHQUFHO0lBQ3pCLEVBQUUsS0FB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RSxTQUFTLEVBQUUsQ0FBQyxDQUFDLENBQUM7SUFDekYsQ0FBQztJQUVELFFBQVE7UUFDTixJQUFJLENBQUMsU0FBUyxDQUFDLFVBQVUsQ0FBQztZQUN4QixJQUFJLEVBQUUsSUFBSSxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLElBQUksRUFBRTtTQUN2QyxDQUFDLENBQUM7UUFDSCxJQUFJLENBQUMsV0FBVyxHQUFHLElBQUksQ0FBQztRQUN4QixJQUFJLElBQUksQ0FBQyxTQUFTLENBQUMsS0FBSyxFQUFFO1lBQ3hCLElBQUksQ0FBQyxXQUFXLEdBQUcsS0FBSyxDQUFDO1lBQ3pCLElBQUksV0FBVyxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsV0FBVyxFQUFXLENBQUM7WUFDeEQsSUFBSSxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsYUFBYSxDQUFDLFNBQVMsQ0FBQyxFQUFFLEtBQUssRUFBRSxXQUFXLEVBQUUsS0FBSyxFQUFFLElBQUksQ0FBQyxPQUFPLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQztTQUM3RjtJQUNILENBQUM7SUFFTyxPQUFPO1FBQ2IsT0FBTyxJQUFJLENBQUMsWUFBWSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDO0lBQ25FLENBQUM7OEdBNUdVLHdCQUF3QjtrR0FBeEIsd0JBQXdCLHVHQzVCckMsby9IQTBHQTs7MkZEOUVhLHdCQUF3QjtrQkFKcEMsU0FBUzsrQkFDRSx1QkFBdUI7NE1BY3hCLFlBQVk7c0JBQXBCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIElucHV0LCBPbkRlc3Ryb3ksIE9uSW5pdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRm9ybUNvbnRyb2wsIFVudHlwZWRGb3JtQnVpbGRlciwgVW50eXBlZEZvcm1Hcm91cCwgVmFsaWRhdG9ycyB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IEFjdGl2YXRlZFJvdXRlLCBSb3V0ZXIgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHsgU3RvcmUgfSBmcm9tICdAbmdyeC9zdG9yZSc7XG5pbXBvcnQge1xuICBGaWVsZCxcbiAgRklFTERfT1BUSU9OUyxcbiAgRmllbGRBY3Rpb25zLFxuICBGaWVsZFNlbGVjdG9ycyxcbiAgR2VvbWV0cmljRmllbGRUeXBlcyxcbiAgUHJ5STE4blNlcnZpY2Vcbn0gZnJvbSAnQHByb3ZvbHkvZGFzaGJvYXJkJztcbmltcG9ydCB7IGNvbWJpbmVMYXRlc3QsIG1hcCwgT2JzZXJ2YWJsZSwgc3RhcnRXaXRoLCBTdWJzY3JpcHRpb24gfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IHY0IGFzIHV1aWQgfSBmcm9tICd1dWlkJztcbmltcG9ydCB7IG5vV2hpdGVzcGFjZVZhbGlkYXRvciB9IGZyb20gJy4uLy4uLy4uL2NvbXBvbmVudHMvYWRtaW4uY29tcG9uZW50JztcbmltcG9ydCB7IEFkbWluQWN0aW9ucyB9IGZyb20gJy4uLy4uLy4uL3N0b3JlL2FkbWluLmFjdGlvbnMnO1xuaW1wb3J0IHsgRmllbGRzQWN0aW9ucyB9IGZyb20gJy4uL3N0b3JlL2ZpZWxkcy5hY3Rpb25zJztcbmltcG9ydCB7IGRpc3RpbmN0VW50aWxDaGFuZ2VkIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuXG5leHBvcnQgY29uc3QgQ1JTX09QVElPTlMgPSBbXG4gIHsgbGFiZWw6ICdXR1M4NCAoRVBTRzo0MzI2KScsIGNvZGU6ICdFUFNHOjQzMjYnIH0sXG4gIHsgbGFiZWw6ICdMYW1iZXJ0OTMgKEVQU0c6IDIxNTQpJywgY29kZTogJ0VQU0c6MjE1NCcgfVxuXTtcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAncHJ5LWFkbWluLWZpZWxkcy1mb3JtJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2FkbWluLWZpZWxkcy1mb3JtLmNvbXBvbmVudC5odG1sJ1xufSlcbmV4cG9ydCBjbGFzcyBBZG1pbkZpZWxkc0Zvcm1Db21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XG4gIGZpZWxkTmFtZXMkPzogT2JzZXJ2YWJsZTxzdHJpbmdbXT47XG4gIG5hbWVBbHJlYWR5RXhpc3RzJD86IE9ic2VydmFibGU8Ym9vbGVhbj47XG4gIHN1YiA9IG5ldyBTdWJzY3JpcHRpb24oKTtcblxuICBmaWVsZEZvcm06IFVudHlwZWRGb3JtR3JvdXA7XG4gIGdvQmFja1BhdGg6IHN0cmluZztcbiAgZ29CYWNrUGF0aEVkaXQ6IHN0cmluZztcbiAgaXNTdWJtaXR0ZWQgPSBmYWxzZTtcbiAgZmllbGRUeXBlVHJhbnNsYXRpb25zOiB7IFtrZXk6IHN0cmluZ106IHN0cmluZyB9W10gPSBbXTtcbiAgc2VsZWN0ZWRGaWVsZFR5cGVEZXNjcmlwdGlvbiQ/OiBPYnNlcnZhYmxlPHN0cmluZz47XG4gIEBJbnB1dCgpIGN1cnJlbnRGaWVsZD86IEZpZWxkO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgc3RvcmU6IFN0b3JlPGFueT4sXG4gICAgcHJpdmF0ZSByb3V0ZXI6IFJvdXRlcixcbiAgICBwcml2YXRlIHJvdXRlOiBBY3RpdmF0ZWRSb3V0ZSxcbiAgICBwcml2YXRlIGZvcm1CdWlsZGVyOiBVbnR5cGVkRm9ybUJ1aWxkZXIsXG4gICAgcHJpdmF0ZSBpMThuU2VydmljZTogUHJ5STE4blNlcnZpY2VcbiAgKSB7XG4gICAgdGhpcy5maWVsZFR5cGVUcmFuc2xhdGlvbnMgPSBGSUVMRF9PUFRJT05TLm1hcCgodHJhbnNsYXRlKSA9PiAoe1xuICAgICAgdmFyVHlwZTogdHJhbnNsYXRlLnZhclR5cGUsXG4gICAgICB0cmFuc2xhdGlvbjogdGhpcy5pMThuU2VydmljZS5pbnN0YW50KHRyYW5zbGF0ZS50cmFuc2xhdGlvbiksXG4gICAgICBkZXNjcmlwdGlvbjogdGhpcy5pMThuU2VydmljZS5pbnN0YW50KHRyYW5zbGF0ZS5kZXNjcmlwdGlvbilcbiAgICB9KSk7XG4gICAgdGhpcy5maWVsZFR5cGVUcmFuc2xhdGlvbnMuc29ydCgoYSwgYikgPT4gYVsndHJhbnNsYXRpb24nXS5sb2NhbGVDb21wYXJlKGJbJ3RyYW5zbGF0aW9uJ10pKTtcbiAgICB0aGlzLnN0b3JlLmRpc3BhdGNoKEZpZWxkQWN0aW9ucy5sb2FkKCkpO1xuICAgIHRoaXMuZ29CYWNrUGF0aCA9IHRoaXMucm91dGVyLmNyZWF0ZVVybFRyZWUoWycuLiddLCB7IHJlbGF0aXZlVG86IHRoaXMucm91dGUgfSkudG9TdHJpbmcoKTtcbiAgICB0aGlzLmdvQmFja1BhdGhFZGl0ID0gdGhpcy5yb3V0ZXIuY3JlYXRlVXJsVHJlZShbJy4uLy4uJ10sIHsgcmVsYXRpdmVUbzogdGhpcy5yb3V0ZSB9KS50b1N0cmluZygpO1xuICAgIHRoaXMuZmllbGRGb3JtID0gdGhpcy5mb3JtQnVpbGRlci5ncm91cCh7XG4gICAgICBpZDogW3V1aWQoKV0sXG4gICAgICBuYW1lOiBbJycsIFtWYWxpZGF0b3JzLnJlcXVpcmVkLCBWYWxpZGF0b3JzLm1pbkxlbmd0aCgzKSwgVmFsaWRhdG9ycy5tYXhMZW5ndGgoMTAwKSwgbm9XaGl0ZXNwYWNlVmFsaWRhdG9yXV0sXG4gICAgICB0eXBlOiBbdGhpcy5maWVsZFR5cGVUcmFuc2xhdGlvbnNbMF1bJ3ZhclR5cGUnXV1cbiAgICB9KTtcbiAgfVxuXG4gIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHRoaXMuZmllbGROYW1lcyQgPSB0aGlzLnN0b3JlXG4gICAgICAuc2VsZWN0KEZpZWxkU2VsZWN0b3JzLmZpZWxkcylcbiAgICAgIC5waXBlKG1hcCgoZmllbGRzOiBGaWVsZFtdKSA9PiBmaWVsZHMubWFwKChmaWVsZDogRmllbGQpID0+IGZpZWxkLm5hbWUudG9Mb3dlckNhc2UoKSkpKTtcblxuICAgIHRoaXMubmFtZUFscmVhZHlFeGlzdHMkID0gY29tYmluZUxhdGVzdChbXG4gICAgICB0aGlzLmZpZWxkRm9ybS5nZXQoJ25hbWUnKT8udmFsdWVDaGFuZ2VzIGFzIE9ic2VydmFibGU8c3RyaW5nPixcbiAgICAgIHRoaXMuZmllbGROYW1lcyRcbiAgICBdKS5waXBlKG1hcCgoW3ZhbHVlLCBmaWVsZE5hbWVzXSkgPT4gZmllbGROYW1lcy5pbmNsdWRlcyh2YWx1ZS50b0xvd2VyQ2FzZSgpKSAmJiB2YWx1ZSAhPSB0aGlzLmN1cnJlbnRGaWVsZD8ubmFtZSkpO1xuICAgIHRoaXMuc3ViLmFkZChcbiAgICAgIHRoaXMubmFtZUFscmVhZHlFeGlzdHMkLnN1YnNjcmliZSgodmFsdWUpID0+IHtcbiAgICAgICAgaWYgKHZhbHVlKSB7XG4gICAgICAgICAgdGhpcy5maWVsZEZvcm0uY29udHJvbHNbJ25hbWUnXS5zZXRFcnJvcnMoeyAnc2FtZS1uYW1lJzogdHJ1ZSB9KTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gdmFsdWU7XG4gICAgICB9KVxuICAgICk7XG5cbiAgICBpZiAodGhpcy5jdXJyZW50RmllbGQpIHtcbiAgICAgIHRoaXMuZmllbGRGb3JtLnBhdGNoVmFsdWUoe1xuICAgICAgICBpZDogdGhpcy5jdXJyZW50RmllbGQuaWQsXG4gICAgICAgIG5hbWU6IHRoaXMuY3VycmVudEZpZWxkLm5hbWUsXG4gICAgICAgIHR5cGU6IHRoaXMuY3VycmVudEZpZWxkLnR5cGVcbiAgICAgIH0pO1xuICAgICAgdGhpcy5maWVsZEZvcm0uY29udHJvbHNbJ3R5cGUnXS5kaXNhYmxlKCk7XG4gICAgfVxuICAgIC8vIEB0cy1pZ25vcmVcbiAgICB0aGlzLnNlbGVjdGVkRmllbGRUeXBlRGVzY3JpcHRpb24kID0gdGhpcy5maWVsZEZvcm0uZ2V0KCd0eXBlJykudmFsdWVDaGFuZ2VzLnBpcGUoXG4gICAgICBzdGFydFdpdGgodGhpcy5maWVsZFR5cGVUcmFuc2xhdGlvbnNbMF1bJ3ZhclR5cGUnXSksXG4gICAgICBkaXN0aW5jdFVudGlsQ2hhbmdlZCgpLFxuICAgICAgbWFwKFxuICAgICAgICAoc2VsZWN0ZWRUeXBlOiBzdHJpbmcpID0+XG4gICAgICAgICAgdGhpcy5maWVsZFR5cGVUcmFuc2xhdGlvbnMuZmluZCgodHJhbnNsYXRpb24pID0+IHRyYW5zbGF0aW9uWyd2YXJUeXBlJ10gPT09IHNlbGVjdGVkVHlwZSk/LlsnZGVzY3JpcHRpb24nXSA/P1xuICAgICAgICAgICcnXG4gICAgICApXG4gICAgKTtcblxuICAgIHRoaXMuZmllbGRGb3JtLmdldCgndHlwZScpIS52YWx1ZUNoYW5nZXMuc3Vic2NyaWJlKCh0eXBlKSA9PiB7XG4gICAgICBpZiAodGhpcy5pc0dlb2dyYXBoaWNUeXBlKSB7XG4gICAgICAgIHRoaXMuZmllbGRGb3JtLmFkZENvbnRyb2woJ2NycycsIG5ldyBGb3JtQ29udHJvbChDUlNfT1BUSU9OU1swXS5jb2RlLCBbVmFsaWRhdG9ycy5yZXF1aXJlZF0pKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHRoaXMuZmllbGRGb3JtLnJlbW92ZUNvbnRyb2woJ2NycycpO1xuICAgICAgfVxuICAgIH0pO1xuICB9XG5cbiAgZ2V0IGlzR2VvZ3JhcGhpY1R5cGUoKSB7XG4gICAgcmV0dXJuIEdlb21ldHJpY0ZpZWxkVHlwZXMuaW5jbHVkZXModGhpcy5maWVsZEZvcm0uZ2V0KCd0eXBlJyk/LnZhbHVlKTtcbiAgfVxuXG4gIG5nT25EZXN0cm95KCkge1xuICAgIHRoaXMuc3ViLnVuc3Vic2NyaWJlKCk7XG4gIH1cblxuICBnb0JhY2soKSB7XG4gICAgdGhpcy5zdG9yZS5kaXNwYXRjaChBZG1pbkFjdGlvbnMucm91dGVUbyh7IHBhdGg6IHRoaXMuZ2V0UGF0aCgpLCBwYXJhbXM6IHVuZGVmaW5lZCB9KSk7XG4gIH1cblxuICBhZGRGaWVsZCgpIHtcbiAgICB0aGlzLmZpZWxkRm9ybS5wYXRjaFZhbHVlKHtcbiAgICAgIG5hbWU6IHRoaXMuZmllbGRGb3JtLnZhbHVlLm5hbWUudHJpbSgpXG4gICAgfSk7XG4gICAgdGhpcy5pc1N1Ym1pdHRlZCA9IHRydWU7XG4gICAgaWYgKHRoaXMuZmllbGRGb3JtLnZhbGlkKSB7XG4gICAgICB0aGlzLmlzU3VibWl0dGVkID0gZmFsc2U7XG4gICAgICBsZXQgZmllbGRUb1NhdmUgPSB0aGlzLmZpZWxkRm9ybS5nZXRSYXdWYWx1ZSgpIGFzIEZpZWxkO1xuICAgICAgdGhpcy5zdG9yZS5kaXNwYXRjaChGaWVsZHNBY3Rpb25zLnNhdmVGaWVsZCh7IGZpZWxkOiBmaWVsZFRvU2F2ZSwgcm91dGU6IHRoaXMuZ2V0UGF0aCgpIH0pKTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIGdldFBhdGgoKSB7XG4gICAgcmV0dXJuIHRoaXMuY3VycmVudEZpZWxkID8gdGhpcy5nb0JhY2tQYXRoRWRpdCA6IHRoaXMuZ29CYWNrUGF0aDtcbiAgfVxuXG4gIHByb3RlY3RlZCByZWFkb25seSBDUlNfT1BUSU9OUyA9IENSU19PUFRJT05TO1xufVxuIiwiPGRpdj5cbiAgPGZvcm0gY2xhc3M9XCJvLWZvcm1cIiBbZm9ybUdyb3VwXT1cImZpZWxkRm9ybVwiIChuZ1N1Ym1pdCk9XCJhZGRGaWVsZCgpXCI+XG4gICAgPGRpdiBjbGFzcz1cIm0tZm9ybS1sYWJlbC1maWVsZCAtd2lkdGgtc21cIj5cbiAgICAgIDxsYWJlbCBpZD1cIm5hbWUtbGFiZWxcIiBmb3I9XCJmaWVsZF9uYW1lXCIgY2xhc3M9XCJhLWxhYmVsXCI+XG4gICAgICAgIHt7ICdAcHJ5LmFkbWluLmZpZWxkcy5uYW1lJyB8IGkxOG4gfX0gKlxuICAgICAgICA8c3BhbiBjbGFzcz1cInUtdmlzdWFsbHktaGlkZGVuXCI+KHt7ICdAcHJ5LmFkbWluLnJlcXVpcmVkJyB8IGkxOG4gfX0pPC9zcGFuPlxuICAgICAgPC9sYWJlbD5cbiAgICAgIDxpbnB1dFxuICAgICAgICBpZD1cImZpZWxkX25hbWVcIlxuICAgICAgICB0eXBlPVwidGV4dFwiXG4gICAgICAgIGNsYXNzPVwiYS1mb3JtLWZpZWxkXCJcbiAgICAgICAgZm9ybUNvbnRyb2xOYW1lPVwibmFtZVwiXG4gICAgICAgIFthdHRyLmFyaWEtbGFiZWxsZWRieV09XCJpc1N1Ym1pdHRlZCAmJiBmaWVsZEZvcm0uZ2V0KCduYW1lJyk/LmludmFsaWQgPyAnbmFtZS1sYWJlbCBuYW1lLWVycm9yJyA6ICduYW1lLWxhYmVsJ1wiXG4gICAgICAgIFthdHRyLmFyaWEtaW52YWxpZF09XCJpc1N1Ym1pdHRlZCAmJiBmaWVsZEZvcm0uZ2V0KCduYW1lJyk/LmludmFsaWRcIlxuICAgICAgICByZXF1aXJlZFxuICAgICAgLz5cbiAgICAgIDxsYWJlbFxuICAgICAgICAqbmdJZj1cImlzU3VibWl0dGVkICYmIGZpZWxkRm9ybS5nZXQoJ25hbWUnKT8uaW52YWxpZFwiXG4gICAgICAgIGlkPVwibmFtZS1lcnJvclwiXG4gICAgICAgIGZvcj1cImZpZWxkX25hbWVcIlxuICAgICAgICBjbGFzcz1cImEtbGFiZWwgYS1sYWJlbC0taGVscCAtZXJyb3JcIlxuICAgICAgPlxuICAgICAgICA8c3BhbiAqbmdJZj1cImZpZWxkRm9ybS5nZXQoJ25hbWUnKT8uaGFzRXJyb3IoJ3NhbWUtbmFtZScpXCI+e3sgJ0BwcnkuYWRtaW4uZXhpc3RzJyB8IGkxOG4gfX08L3NwYW4+XG4gICAgICAgIDxzcGFuICpuZ0lmPVwiZmllbGRGb3JtLmdldCgnbmFtZScpPy5oYXNFcnJvcigncmVxdWlyZWQnKVwiPnt7ICdAcHJ5LmFkbWluLnJlcXVpcmVkJyB8IGkxOG4gfX08L3NwYW4+XG4gICAgICAgIDxzcGFuICpuZ0lmPVwiZmllbGRGb3JtLmdldCgnbmFtZScpPy5oYXNFcnJvcignbWlubGVuZ3RoJylcIj57e1xuICAgICAgICAgICdAcHJ5LmFkbWluLm1pbkxlbmd0aCcgfCBpMThuIDogeyBsZW46IDMgfVxuICAgICAgICB9fTwvc3Bhbj5cbiAgICAgICAgPHNwYW4gKm5nSWY9XCJmaWVsZEZvcm0uZ2V0KCduYW1lJyk/Lmhhc0Vycm9yKCdtYXhsZW5ndGgnKVwiPnt7XG4gICAgICAgICAgJ0BwcnkuYWRtaW4ubWF4TGVuZ3RoJyB8IGkxOG4gOiB7IGxlbjogMTAwIH1cbiAgICAgICAgfX08L3NwYW4+XG4gICAgICAgIDxzcGFuICpuZ0lmPVwiZmllbGRGb3JtLmdldCgnbmFtZScpPy5oYXNFcnJvcignd2hpdGVzcGFjZScpICYmICFmaWVsZEZvcm0uZ2V0KCduYW1lJyk/Lmhhc0Vycm9yKCdtaW5sZW5ndGgnKVwiPnt7XG4gICAgICAgICAgJ0BwcnkuYWRtaW4ubm9XaGl0ZXNwYWNlJyB8IGkxOG5cbiAgICAgICAgfX08L3NwYW4+XG4gICAgICA8L2xhYmVsPlxuICAgIDwvZGl2PlxuXG4gICAgPGRpdiBjbGFzcz1cIm0tZm9ybS1sYWJlbC1maWVsZCAtd2lkdGgtc21cIj5cbiAgICAgIDxsYWJlbCBjbGFzcz1cImEtbGFiZWxcIj5cbiAgICAgICAge3sgJ0BwcnkuYWRtaW4uZmllbGRzLnR5cGUnIHwgaTE4biB9fSAqXG4gICAgICAgIDxzcGFuIGNsYXNzPVwidS12aXN1YWxseS1oaWRkZW5cIj4oe3sgJ0BwcnkuYWRtaW4ucmVxdWlyZWQnIHwgaTE4biB9fSk8L3NwYW4+XG4gICAgICA8L2xhYmVsPlxuICAgICAgPGRpdiBjbGFzcz1cInRpdGxlLWNvbnRhaW5lclwiPlxuICAgICAgICA8cHJ5LXNlbGVjdFxuICAgICAgICAgIGNsYXNzPVwiYS1wcnktc2VsZWN0IC13aWR0aC1zbVwiXG4gICAgICAgICAgZm9ybUNvbnRyb2xOYW1lPVwidHlwZVwiXG4gICAgICAgICAgW2xhYmVsVHJhbnNsYXRlXT1cInRydWVcIlxuICAgICAgICAgIFtpdGVtc109XCJmaWVsZFR5cGVUcmFuc2xhdGlvbnNcIlxuICAgICAgICAgIFtpdGVtc0FzT3B0aW9uXT1cInRydWVcIlxuICAgICAgICAgIGJpbmRWYWx1ZT1cInZhclR5cGVcIlxuICAgICAgICAgIGJpbmRMYWJlbD1cInRyYW5zbGF0aW9uXCJcbiAgICAgICAgICBbaXNGb3JtXT1cInRydWVcIlxuICAgICAgICA+PC9wcnktc2VsZWN0PlxuICAgICAgICA8bmctY29udGFpbmVyPlxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJpbmZvLWljb24gZGVzY3JpcHRpb24tY29udGFpbmVyIGRlc2NyaXB0aW9uXCI+XG4gICAgICAgICAgICA8c3BhbiBjbGFzcz1cImluZm8tdGV4dFwiPmk8L3NwYW4+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgPGRpdiBjbGFzcz1cImRlc2NyaXB0aW9uLXRvb2x0aXAgdGl0bGUtdG9vbHRpcFwiPlxuICAgICAgICAgICAgPHAgY2xhc3M9XCJhLXAgLWRhdGVcIj57eyBzZWxlY3RlZEZpZWxkVHlwZURlc2NyaXB0aW9uJCB8IGFzeW5jIH19PC9wPlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuXG4gICAgPGRpdiBjbGFzcz1cIm0tZm9ybS1sYWJlbC1maWVsZCAtd2lkdGgtc21cIiAqbmdJZj1cImlzR2VvZ3JhcGhpY1R5cGVcIj5cbiAgICAgIDxsYWJlbCBjbGFzcz1cImEtbGFiZWxcIj5cbiAgICAgICAge3sgJ0BwcnkuYWRtaW4uZmllbGRzLmNycycgfCBpMThuIH19ICpcbiAgICAgICAgPHNwYW4gY2xhc3M9XCJ1LXZpc3VhbGx5LWhpZGRlblwiPih7eyAnQHByeS5hZG1pbi5yZXF1aXJlZCcgfCBpMThuIH19KTwvc3Bhbj5cbiAgICAgIDwvbGFiZWw+XG4gICAgICA8ZGl2IGNsYXNzPVwidGl0bGUtY29udGFpbmVyXCI+XG4gICAgICAgIDxwcnktc2VsZWN0XG4gICAgICAgICAgY2xhc3M9XCJhLXByeS1zZWxlY3QgLXdpZHRoLXNtXCJcbiAgICAgICAgICBmb3JtQ29udHJvbE5hbWU9XCJjcnNcIlxuICAgICAgICAgIFtsYWJlbFRyYW5zbGF0ZV09XCJmYWxzZVwiXG4gICAgICAgICAgW2l0ZW1zXT1cIkNSU19PUFRJT05TXCJcbiAgICAgICAgICBbaXRlbXNBc09wdGlvbl09XCJ0cnVlXCJcbiAgICAgICAgICBiaW5kVmFsdWU9XCJjb2RlXCJcbiAgICAgICAgICBiaW5kTGFiZWw9XCJsYWJlbFwiXG4gICAgICAgICAgW2lzRm9ybV09XCJ0cnVlXCJcbiAgICAgICAgICBpZD1cImNyc1wiXG4gICAgICAgID48L3ByeS1zZWxlY3Q+XG4gICAgICA8L2Rpdj5cbiAgICAgIDxsYWJlbFxuICAgICAgICAqbmdJZj1cImlzU3VibWl0dGVkICYmIGZpZWxkRm9ybS5nZXQoJ2NycycpICYmIGZpZWxkRm9ybS5nZXQoJ2NycycpPy5pbnZhbGlkXCJcbiAgICAgICAgaWQ9XCJjcnMtZXJyb3JcIlxuICAgICAgICBmb3I9XCJjcnNcIlxuICAgICAgICBjbGFzcz1cImEtbGFiZWwgYS1sYWJlbC0taGVscCAtZXJyb3JcIlxuICAgICAgPlxuICAgICAgICA8c3BhbiAqbmdJZj1cImZpZWxkRm9ybS5nZXQoJ25hbWUnKT8uaGFzRXJyb3IoJ3JlcXVpcmVkJylcIj57eyAnQHByeS5hZG1pbi5yZXF1aXJlZCcgfCBpMThuIH19PC9zcGFuPlxuICAgICAgPC9sYWJlbD5cbiAgICA8L2Rpdj5cblxuICAgIDxkaXYgY2xhc3M9XCJtLWJ0bi1ncm91cCAtd2lkdGgtc21cIj5cbiAgICAgIDxidXR0b25cbiAgICAgICAgdHlwZT1cImJ1dHRvblwiXG4gICAgICAgIGNsYXNzPVwiYS1idG4gYS1idG4tLXNlY29uZGFyeVwiXG4gICAgICAgIChjbGljayk9XCJnb0JhY2soKVwiXG4gICAgICAgIFtpbm5lckhUTUxdPVwiJ0BwcnkuYWRtaW4uY2FuY2VsJyB8IGkxOG5cIlxuICAgICAgPjwvYnV0dG9uPlxuICAgICAgPGJ1dHRvblxuICAgICAgICBjbGFzcz1cImEtYnRuIGEtYnRuLS1wcmltYXJ5XCJcbiAgICAgICAgdHlwZT1cInN1Ym1pdFwiXG4gICAgICAgIFtpbm5lckhUTUxdPVwiKGN1cnJlbnRGaWVsZCA/ICdAcHJ5LmFkbWluLmVkaXQnIDogJ0BwcnkuYWRtaW4uY3JlYXRlJykgfCBpMThuXCJcbiAgICAgID48L2J1dHRvbj5cbiAgICA8L2Rpdj5cbiAgPC9mb3JtPlxuPC9kaXY+XG4iXX0=
|
|
115
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWRtaW4tZmllbGRzLWZvcm0uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvcHJvdm9seS9kYXNoYm9hcmQvYWRtaW4vY29tcG9uZW50cy9hZG1pbi1maWVsZHMvYWRtaW4tZmllbGRzLWZvcm0vYWRtaW4tZmllbGRzLWZvcm0uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvcHJvdm9seS9kYXNoYm9hcmQvYWRtaW4vY29tcG9uZW50cy9hZG1pbi1maWVsZHMvYWRtaW4tZmllbGRzLWZvcm0vYWRtaW4tZmllbGRzLWZvcm0uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQXFCLE1BQU0sZUFBZSxDQUFDO0FBQ3BFLE9BQU8sRUFBRSxXQUFXLEVBQXdDLFVBQVUsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRy9GLE9BQU8sRUFFTCxhQUFhLEVBQ2IsWUFBWSxFQUNaLGNBQWMsRUFDZCxtQkFBbUIsRUFFcEIsTUFBTSxvQkFBb0IsQ0FBQztBQUM1QixPQUFPLEVBQUUsYUFBYSxFQUFFLEdBQUcsRUFBYyxTQUFTLEVBQUUsWUFBWSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQy9FLE9BQU8sRUFBRSxFQUFFLElBQUksSUFBSSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ2xDLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBQzVFLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUM1RCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDeEQsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7Ozs7Ozs7QUFFdEQsTUFBTSxDQUFDLE1BQU0sV0FBVyxHQUFHO0lBQ3pCLEVBQUUsS0FB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d0JBQXdCO2tCQUpwQyxTQUFTOytCQUNFLHVCQUF1Qjs0TUFjeEIsWUFBWTtzQkFBcEIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgSW5wdXQsIE9uRGVzdHJveSwgT25Jbml0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBGb3JtQ29udHJvbCwgVW50eXBlZEZvcm1CdWlsZGVyLCBVbnR5cGVkRm9ybUdyb3VwLCBWYWxpZGF0b3JzIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgQWN0aXZhdGVkUm91dGUsIFJvdXRlciB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5pbXBvcnQgeyBTdG9yZSB9IGZyb20gJ0BuZ3J4L3N0b3JlJztcbmltcG9ydCB7XG4gIEZpZWxkLFxuICBGSUVMRF9PUFRJT05TLFxuICBGaWVsZEFjdGlvbnMsXG4gIEZpZWxkU2VsZWN0b3JzLFxuICBHZW9tZXRyaWNGaWVsZFR5cGVzLFxuICBQcnlJMThuU2VydmljZVxufSBmcm9tICdAcHJvdm9seS9kYXNoYm9hcmQnO1xuaW1wb3J0IHsgY29tYmluZUxhdGVzdCwgbWFwLCBPYnNlcnZhYmxlLCBzdGFydFdpdGgsIFN1YnNjcmlwdGlvbiB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgdjQgYXMgdXVpZCB9IGZyb20gJ3V1aWQnO1xuaW1wb3J0IHsgbm9XaGl0ZXNwYWNlVmFsaWRhdG9yIH0gZnJvbSAnLi4vLi4vLi4vY29tcG9uZW50cy9hZG1pbi5jb21wb25lbnQnO1xuaW1wb3J0IHsgQWRtaW5BY3Rpb25zIH0gZnJvbSAnLi4vLi4vLi4vc3RvcmUvYWRtaW4uYWN0aW9ucyc7XG5pbXBvcnQgeyBGaWVsZHNBY3Rpb25zIH0gZnJvbSAnLi4vc3RvcmUvZmllbGRzLmFjdGlvbnMnO1xuaW1wb3J0IHsgZGlzdGluY3RVbnRpbENoYW5nZWQgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5cbmV4cG9ydCBjb25zdCBDUlNfT1BUSU9OUyA9IFtcbiAgeyBsYWJlbDogJ1dHUzg0IChFUFNHOjQzMjYpJywgY29kZTogJ0VQU0c6NDMyNicgfSxcbiAgeyBsYWJlbDogJ0xhbWJlcnQ5MyAoRVBTRzogMjE1NCknLCBjb2RlOiAnRVBTRzoyMTU0JyB9XG5dO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdwcnktYWRtaW4tZmllbGRzLWZvcm0nLFxuICB0ZW1wbGF0ZVVybDogJy4vYWRtaW4tZmllbGRzLWZvcm0uY29tcG9uZW50Lmh0bWwnXG59KVxuZXhwb3J0IGNsYXNzIEFkbWluRmllbGRzRm9ybUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95IHtcbiAgZmllbGROYW1lcyQ/OiBPYnNlcnZhYmxlPHN0cmluZ1tdPjtcbiAgbmFtZUFscmVhZHlFeGlzdHMkPzogT2JzZXJ2YWJsZTxib29sZWFuPjtcbiAgc3ViID0gbmV3IFN1YnNjcmlwdGlvbigpO1xuXG4gIGZpZWxkRm9ybTogVW50eXBlZEZvcm1Hcm91cDtcbiAgZ29CYWNrUGF0aDogc3RyaW5nO1xuICBnb0JhY2tQYXRoRWRpdDogc3RyaW5nO1xuICBpc1N1Ym1pdHRlZCA9IGZhbHNlO1xuICBmaWVsZFR5cGVUcmFuc2xhdGlvbnM6IHsgW2tleTogc3RyaW5nXTogc3RyaW5nIH1bXSA9IFtdO1xuICBzZWxlY3RlZEZpZWxkVHlwZURlc2NyaXB0aW9uJD86IE9ic2VydmFibGU8c3RyaW5nPjtcbiAgQElucHV0KCkgY3VycmVudEZpZWxkPzogRmllbGQ7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBzdG9yZTogU3RvcmU8YW55PixcbiAgICBwcml2YXRlIHJvdXRlcjogUm91dGVyLFxuICAgIHByaXZhdGUgcm91dGU6IEFjdGl2YXRlZFJvdXRlLFxuICAgIHByaXZhdGUgZm9ybUJ1aWxkZXI6IFVudHlwZWRGb3JtQnVpbGRlcixcbiAgICBwcml2YXRlIGkxOG5TZXJ2aWNlOiBQcnlJMThuU2VydmljZVxuICApIHtcbiAgICB0aGlzLmZpZWxkVHlwZVRyYW5zbGF0aW9ucyA9IEZJRUxEX09QVElPTlMubWFwKCh0cmFuc2xhdGUpID0+ICh7XG4gICAgICB2YXJUeXBlOiB0cmFuc2xhdGUudmFyVHlwZSxcbiAgICAgIHRyYW5zbGF0aW9uOiB0aGlzLmkxOG5TZXJ2aWNlLmluc3RhbnQodHJhbnNsYXRlLnRyYW5zbGF0aW9uKSxcbiAgICAgIGRlc2NyaXB0aW9uOiB0aGlzLmkxOG5TZXJ2aWNlLmluc3RhbnQodHJhbnNsYXRlLmRlc2NyaXB0aW9uKVxuICAgIH0pKTtcbiAgICB0aGlzLmZpZWxkVHlwZVRyYW5zbGF0aW9ucy5zb3J0KChhLCBiKSA9PiBhWyd0cmFuc2xhdGlvbiddLmxvY2FsZUNvbXBhcmUoYlsndHJhbnNsYXRpb24nXSkpO1xuICAgIHRoaXMuc3RvcmUuZGlzcGF0Y2goRmllbGRBY3Rpb25zLmxvYWQoKSk7XG4gICAgdGhpcy5nb0JhY2tQYXRoID0gdGhpcy5yb3V0ZXIuY3JlYXRlVXJsVHJlZShbJy4uJ10sIHsgcmVsYXRpdmVUbzogdGhpcy5yb3V0ZSB9KS50b1N0cmluZygpO1xuICAgIHRoaXMuZ29CYWNrUGF0aEVkaXQgPSB0aGlzLnJvdXRlci5jcmVhdGVVcmxUcmVlKFsnLi4vLi4nXSwgeyByZWxhdGl2ZVRvOiB0aGlzLnJvdXRlIH0pLnRvU3RyaW5nKCk7XG4gICAgdGhpcy5maWVsZEZvcm0gPSB0aGlzLmZvcm1CdWlsZGVyLmdyb3VwKHtcbiAgICAgIGlkOiBbdXVpZCgpXSxcbiAgICAgIG5hbWU6IFsnJywgW1ZhbGlkYXRvcnMucmVxdWlyZWQsIFZhbGlkYXRvcnMubWluTGVuZ3RoKDMpLCBWYWxpZGF0b3JzLm1heExlbmd0aCgxMDApLCBub1doaXRlc3BhY2VWYWxpZGF0b3JdXSxcbiAgICAgIHR5cGU6IFt0aGlzLmZpZWxkVHlwZVRyYW5zbGF0aW9uc1swXVsndmFyVHlwZSddXVxuICAgIH0pO1xuICB9XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgdGhpcy5maWVsZE5hbWVzJCA9IHRoaXMuc3RvcmVcbiAgICAgIC5zZWxlY3QoRmllbGRTZWxlY3RvcnMuZmllbGRzKVxuICAgICAgLnBpcGUobWFwKChmaWVsZHM6IEZpZWxkW10pID0+IGZpZWxkcy5tYXAoKGZpZWxkOiBGaWVsZCkgPT4gZmllbGQubmFtZS50b0xvd2VyQ2FzZSgpKSkpO1xuXG4gICAgdGhpcy5uYW1lQWxyZWFkeUV4aXN0cyQgPSBjb21iaW5lTGF0ZXN0KFtcbiAgICAgIHRoaXMuZmllbGRGb3JtLmdldCgnbmFtZScpPy52YWx1ZUNoYW5nZXMgYXMgT2JzZXJ2YWJsZTxzdHJpbmc+LFxuICAgICAgdGhpcy5maWVsZE5hbWVzJFxuICAgIF0pLnBpcGUobWFwKChbdmFsdWUsIGZpZWxkTmFtZXNdKSA9PiBmaWVsZE5hbWVzLmluY2x1ZGVzKHZhbHVlLnRvTG93ZXJDYXNlKCkpICYmIHZhbHVlICE9IHRoaXMuY3VycmVudEZpZWxkPy5uYW1lKSk7XG4gICAgdGhpcy5zdWIuYWRkKFxuICAgICAgdGhpcy5uYW1lQWxyZWFkeUV4aXN0cyQuc3Vic2NyaWJlKCh2YWx1ZSkgPT4ge1xuICAgICAgICBpZiAodmFsdWUpIHtcbiAgICAgICAgICB0aGlzLmZpZWxkRm9ybS5jb250cm9sc1snbmFtZSddLnNldEVycm9ycyh7ICdzYW1lLW5hbWUnOiB0cnVlIH0pO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiB2YWx1ZTtcbiAgICAgIH0pXG4gICAgKTtcblxuICAgIGlmICh0aGlzLmN1cnJlbnRGaWVsZCkge1xuICAgICAgdGhpcy5maWVsZEZvcm0ucGF0Y2hWYWx1ZSh7XG4gICAgICAgIGlkOiB0aGlzLmN1cnJlbnRGaWVsZC5pZCxcbiAgICAgICAgbmFtZTogdGhpcy5jdXJyZW50RmllbGQubmFtZSxcbiAgICAgICAgdHlwZTogdGhpcy5jdXJyZW50RmllbGQudHlwZVxuICAgICAgfSk7XG4gICAgICB0aGlzLmZpZWxkRm9ybS5jb250cm9sc1sndHlwZSddLmRpc2FibGUoKTtcbiAgICAgIGlmICh0aGlzLmlzR2VvZ3JhcGhpY1R5cGUpIHtcbiAgICAgICAgdGhpcy5maWVsZEZvcm0uYWRkQ29udHJvbCgnY3JzJywgbmV3IEZvcm1Db250cm9sKHRoaXMuY3VycmVudEZpZWxkLmNycywgW1ZhbGlkYXRvcnMucmVxdWlyZWRdKSk7XG4gICAgICAgIHRoaXMuZmllbGRGb3JtLmNvbnRyb2xzWydjcnMnXS5kaXNhYmxlKCk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgdGhpcy5zZWxlY3RlZEZpZWxkVHlwZURlc2NyaXB0aW9uJCA9IHRoaXMuZmllbGRGb3JtLmdldCgndHlwZScpPy52YWx1ZUNoYW5nZXMucGlwZShcbiAgICAgIHN0YXJ0V2l0aCh0aGlzLmN1cnJlbnRGaWVsZD8udHlwZSA/PyB0aGlzLmZpZWxkVHlwZVRyYW5zbGF0aW9uc1swXVsndmFyVHlwZSddKSxcbiAgICAgIGRpc3RpbmN0VW50aWxDaGFuZ2VkKCksXG4gICAgICBtYXAoXG4gICAgICAgIChzZWxlY3RlZFR5cGU6IHN0cmluZykgPT5cbiAgICAgICAgICB0aGlzLmZpZWxkVHlwZVRyYW5zbGF0aW9ucy5maW5kKCh0cmFuc2xhdGlvbikgPT4gdHJhbnNsYXRpb25bJ3ZhclR5cGUnXSA9PT0gc2VsZWN0ZWRUeXBlKT8uWydkZXNjcmlwdGlvbiddID8/XG4gICAgICAgICAgJydcbiAgICAgIClcbiAgICApO1xuXG4gICAgdGhpcy5maWVsZEZvcm0uZ2V0KCd0eXBlJykhLnZhbHVlQ2hhbmdlcy5zdWJzY3JpYmUoKHR5cGUpID0+IHtcbiAgICAgIGlmICh0aGlzLmlzR2VvZ3JhcGhpY1R5cGUpIHtcbiAgICAgICAgdGhpcy5maWVsZEZvcm0uYWRkQ29udHJvbCgnY3JzJywgbmV3IEZvcm1Db250cm9sKENSU19PUFRJT05TWzBdLmNvZGUsIFtWYWxpZGF0b3JzLnJlcXVpcmVkXSkpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgdGhpcy5maWVsZEZvcm0ucmVtb3ZlQ29udHJvbCgnY3JzJyk7XG4gICAgICB9XG4gICAgfSk7XG4gIH1cblxuICBnZXQgaXNHZW9ncmFwaGljVHlwZSgpIHtcbiAgICByZXR1cm4gR2VvbWV0cmljRmllbGRUeXBlcy5pbmNsdWRlcyh0aGlzLmZpZWxkRm9ybS5nZXQoJ3R5cGUnKT8udmFsdWUpO1xuICB9XG5cbiAgbmdPbkRlc3Ryb3koKSB7XG4gICAgdGhpcy5zdWIudW5zdWJzY3JpYmUoKTtcbiAgfVxuXG4gIGdvQmFjaygpIHtcbiAgICB0aGlzLnN0b3JlLmRpc3BhdGNoKEFkbWluQWN0aW9ucy5yb3V0ZVRvKHsgcGF0aDogdGhpcy5nZXRQYXRoKCksIHBhcmFtczogdW5kZWZpbmVkIH0pKTtcbiAgfVxuXG4gIGFkZEZpZWxkKCkge1xuICAgIHRoaXMuZmllbGRGb3JtLnBhdGNoVmFsdWUoe1xuICAgICAgbmFtZTogdGhpcy5maWVsZEZvcm0udmFsdWUubmFtZS50cmltKClcbiAgICB9KTtcbiAgICB0aGlzLmlzU3VibWl0dGVkID0gdHJ1ZTtcbiAgICBpZiAodGhpcy5maWVsZEZvcm0udmFsaWQpIHtcbiAgICAgIHRoaXMuaXNTdWJtaXR0ZWQgPSBmYWxzZTtcbiAgICAgIGxldCBmaWVsZFRvU2F2ZSA9IHRoaXMuZmllbGRGb3JtLmdldFJhd1ZhbHVlKCkgYXMgRmllbGQ7XG4gICAgICB0aGlzLnN0b3JlLmRpc3BhdGNoKEZpZWxkc0FjdGlvbnMuc2F2ZUZpZWxkKHsgZmllbGQ6IGZpZWxkVG9TYXZlLCByb3V0ZTogdGhpcy5nZXRQYXRoKCkgfSkpO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgZ2V0UGF0aCgpIHtcbiAgICByZXR1cm4gdGhpcy5jdXJyZW50RmllbGQgPyB0aGlzLmdvQmFja1BhdGhFZGl0IDogdGhpcy5nb0JhY2tQYXRoO1xuICB9XG5cbiAgcHJvdGVjdGVkIHJlYWRvbmx5IENSU19PUFRJT05TID0gQ1JTX09QVElPTlM7XG59XG4iLCI8ZGl2PlxuICA8Zm9ybSBjbGFzcz1cIm8tZm9ybVwiIFtmb3JtR3JvdXBdPVwiZmllbGRGb3JtXCIgKG5nU3VibWl0KT1cImFkZEZpZWxkKClcIj5cbiAgICA8ZGl2IGNsYXNzPVwibS1mb3JtLWxhYmVsLWZpZWxkIC13aWR0aC1zbVwiPlxuICAgICAgPGxhYmVsIGlkPVwibmFtZS1sYWJlbFwiIGZvcj1cImZpZWxkX25hbWVcIiBjbGFzcz1cImEtbGFiZWxcIj5cbiAgICAgICAge3sgJ0BwcnkuYWRtaW4uZmllbGRzLm5hbWUnIHwgaTE4biB9fSAqXG4gICAgICAgIDxzcGFuIGNsYXNzPVwidS12aXN1YWxseS1oaWRkZW5cIj4oe3sgJ0BwcnkuYWRtaW4ucmVxdWlyZWQnIHwgaTE4biB9fSk8L3NwYW4+XG4gICAgICA8L2xhYmVsPlxuICAgICAgPGlucHV0XG4gICAgICAgIGlkPVwiZmllbGRfbmFtZVwiXG4gICAgICAgIHR5cGU9XCJ0ZXh0XCJcbiAgICAgICAgY2xhc3M9XCJhLWZvcm0tZmllbGRcIlxuICAgICAgICBmb3JtQ29udHJvbE5hbWU9XCJuYW1lXCJcbiAgICAgICAgW2F0dHIuYXJpYS1sYWJlbGxlZGJ5XT1cImlzU3VibWl0dGVkICYmIGZpZWxkRm9ybS5nZXQoJ25hbWUnKT8uaW52YWxpZCA/ICduYW1lLWxhYmVsIG5hbWUtZXJyb3InIDogJ25hbWUtbGFiZWwnXCJcbiAgICAgICAgW2F0dHIuYXJpYS1pbnZhbGlkXT1cImlzU3VibWl0dGVkICYmIGZpZWxkRm9ybS5nZXQoJ25hbWUnKT8uaW52YWxpZFwiXG4gICAgICAgIHJlcXVpcmVkXG4gICAgICAvPlxuICAgICAgPGxhYmVsXG4gICAgICAgICpuZ0lmPVwiaXNTdWJtaXR0ZWQgJiYgZmllbGRGb3JtLmdldCgnbmFtZScpPy5pbnZhbGlkXCJcbiAgICAgICAgaWQ9XCJuYW1lLWVycm9yXCJcbiAgICAgICAgZm9yPVwiZmllbGRfbmFtZVwiXG4gICAgICAgIGNsYXNzPVwiYS1sYWJlbCBhLWxhYmVsLS1oZWxwIC1lcnJvclwiXG4gICAgICA+XG4gICAgICAgIDxzcGFuICpuZ0lmPVwiZmllbGRGb3JtLmdldCgnbmFtZScpPy5oYXNFcnJvcignc2FtZS1uYW1lJylcIj57eyAnQHByeS5hZG1pbi5leGlzdHMnIHwgaTE4biB9fTwvc3Bhbj5cbiAgICAgICAgPHNwYW4gKm5nSWY9XCJmaWVsZEZvcm0uZ2V0KCduYW1lJyk/Lmhhc0Vycm9yKCdyZXF1aXJlZCcpXCI+e3sgJ0BwcnkuYWRtaW4ucmVxdWlyZWQnIHwgaTE4biB9fTwvc3Bhbj5cbiAgICAgICAgPHNwYW4gKm5nSWY9XCJmaWVsZEZvcm0uZ2V0KCduYW1lJyk/Lmhhc0Vycm9yKCdtaW5sZW5ndGgnKVwiPnt7XG4gICAgICAgICAgJ0BwcnkuYWRtaW4ubWluTGVuZ3RoJyB8IGkxOG4gOiB7IGxlbjogMyB9XG4gICAgICAgIH19PC9zcGFuPlxuICAgICAgICA8c3BhbiAqbmdJZj1cImZpZWxkRm9ybS5nZXQoJ25hbWUnKT8uaGFzRXJyb3IoJ21heGxlbmd0aCcpXCI+e3tcbiAgICAgICAgICAnQHByeS5hZG1pbi5tYXhMZW5ndGgnIHwgaTE4biA6IHsgbGVuOiAxMDAgfVxuICAgICAgICB9fTwvc3Bhbj5cbiAgICAgICAgPHNwYW4gKm5nSWY9XCJmaWVsZEZvcm0uZ2V0KCduYW1lJyk/Lmhhc0Vycm9yKCd3aGl0ZXNwYWNlJykgJiYgIWZpZWxkRm9ybS5nZXQoJ25hbWUnKT8uaGFzRXJyb3IoJ21pbmxlbmd0aCcpXCI+e3tcbiAgICAgICAgICAnQHByeS5hZG1pbi5ub1doaXRlc3BhY2UnIHwgaTE4blxuICAgICAgICB9fTwvc3Bhbj5cbiAgICAgIDwvbGFiZWw+XG4gICAgPC9kaXY+XG5cbiAgICA8ZGl2IGNsYXNzPVwibS1mb3JtLWxhYmVsLWZpZWxkIC13aWR0aC1zbVwiPlxuICAgICAgPGxhYmVsIGNsYXNzPVwiYS1sYWJlbFwiPlxuICAgICAgICB7eyAnQHByeS5hZG1pbi5maWVsZHMudHlwZScgfCBpMThuIH19ICpcbiAgICAgICAgPHNwYW4gY2xhc3M9XCJ1LXZpc3VhbGx5LWhpZGRlblwiPih7eyAnQHByeS5hZG1pbi5yZXF1aXJlZCcgfCBpMThuIH19KTwvc3Bhbj5cbiAgICAgIDwvbGFiZWw+XG4gICAgICA8ZGl2IGNsYXNzPVwidGl0bGUtY29udGFpbmVyXCI+XG4gICAgICAgIDxwcnktc2VsZWN0XG4gICAgICAgICAgY2xhc3M9XCJhLXByeS1zZWxlY3QgLXdpZHRoLXNtXCJcbiAgICAgICAgICBmb3JtQ29udHJvbE5hbWU9XCJ0eXBlXCJcbiAgICAgICAgICBbaXRlbXNdPVwiZmllbGRUeXBlVHJhbnNsYXRpb25zXCJcbiAgICAgICAgICBbaXRlbXNBc09wdGlvbl09XCJ0cnVlXCJcbiAgICAgICAgICBiaW5kVmFsdWU9XCJ2YXJUeXBlXCJcbiAgICAgICAgICBiaW5kTGFiZWw9XCJ0cmFuc2xhdGlvblwiXG4gICAgICAgICAgW2lzRm9ybV09XCJ0cnVlXCJcbiAgICAgICAgPjwvcHJ5LXNlbGVjdD5cbiAgICAgICAgPG5nLWNvbnRhaW5lcj5cbiAgICAgICAgICA8ZGl2IGNsYXNzPVwiaW5mby1pY29uIGRlc2NyaXB0aW9uLWNvbnRhaW5lciBkZXNjcmlwdGlvblwiPlxuICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJpbmZvLXRleHRcIj5pPC9zcGFuPlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJkZXNjcmlwdGlvbi10b29sdGlwIHRpdGxlLXRvb2x0aXBcIj5cbiAgICAgICAgICAgIDxwIGNsYXNzPVwiYS1wIC1kYXRlXCI+e3sgc2VsZWN0ZWRGaWVsZFR5cGVEZXNjcmlwdGlvbiQgfCBhc3luYyB9fTwvcD5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cblxuICAgIDxkaXYgY2xhc3M9XCJtLWZvcm0tbGFiZWwtZmllbGQgLXdpZHRoLXNtXCIgKm5nSWY9XCJpc0dlb2dyYXBoaWNUeXBlXCI+XG4gICAgICA8bGFiZWwgY2xhc3M9XCJhLWxhYmVsXCI+XG4gICAgICAgIHt7ICdAcHJ5LmFkbWluLmZpZWxkcy5jcnMnIHwgaTE4biB9fSAqXG4gICAgICAgIDxzcGFuIGNsYXNzPVwidS12aXN1YWxseS1oaWRkZW5cIj4oe3sgJ0BwcnkuYWRtaW4ucmVxdWlyZWQnIHwgaTE4biB9fSk8L3NwYW4+XG4gICAgICA8L2xhYmVsPlxuICAgICAgPGRpdiBjbGFzcz1cInRpdGxlLWNvbnRhaW5lclwiPlxuICAgICAgICA8cHJ5LXNlbGVjdFxuICAgICAgICAgIGNsYXNzPVwiYS1wcnktc2VsZWN0IC13aWR0aC1zbVwiXG4gICAgICAgICAgZm9ybUNvbnRyb2xOYW1lPVwiY3JzXCJcbiAgICAgICAgICBbbGFiZWxUcmFuc2xhdGVdPVwiZmFsc2VcIlxuICAgICAgICAgIFtpdGVtc109XCJDUlNfT1BUSU9OU1wiXG4gICAgICAgICAgW2l0ZW1zQXNPcHRpb25dPVwidHJ1ZVwiXG4gICAgICAgICAgYmluZFZhbHVlPVwiY29kZVwiXG4gICAgICAgICAgYmluZExhYmVsPVwibGFiZWxcIlxuICAgICAgICAgIFtpc0Zvcm1dPVwidHJ1ZVwiXG4gICAgICAgICAgaWQ9XCJjcnNcIlxuICAgICAgICA+PC9wcnktc2VsZWN0PlxuICAgICAgPC9kaXY+XG4gICAgICA8bGFiZWxcbiAgICAgICAgKm5nSWY9XCJpc1N1Ym1pdHRlZCAmJiBmaWVsZEZvcm0uZ2V0KCdjcnMnKSAmJiBmaWVsZEZvcm0uZ2V0KCdjcnMnKT8uaW52YWxpZFwiXG4gICAgICAgIGlkPVwiY3JzLWVycm9yXCJcbiAgICAgICAgZm9yPVwiY3JzXCJcbiAgICAgICAgY2xhc3M9XCJhLWxhYmVsIGEtbGFiZWwtLWhlbHAgLWVycm9yXCJcbiAgICAgID5cbiAgICAgICAgPHNwYW4gKm5nSWY9XCJmaWVsZEZvcm0uZ2V0KCduYW1lJyk/Lmhhc0Vycm9yKCdyZXF1aXJlZCcpXCI+e3sgJ0BwcnkuYWRtaW4ucmVxdWlyZWQnIHwgaTE4biB9fTwvc3Bhbj5cbiAgICAgIDwvbGFiZWw+XG4gICAgPC9kaXY+XG5cbiAgICA8ZGl2IGNsYXNzPVwibS1idG4tZ3JvdXAgLXdpZHRoLXNtXCI+XG4gICAgICA8YnV0dG9uXG4gICAgICAgIHR5cGU9XCJidXR0b25cIlxuICAgICAgICBjbGFzcz1cImEtYnRuIGEtYnRuLS1zZWNvbmRhcnlcIlxuICAgICAgICAoY2xpY2spPVwiZ29CYWNrKClcIlxuICAgICAgICBbaW5uZXJIVE1MXT1cIidAcHJ5LmFkbWluLmNhbmNlbCcgfCBpMThuXCJcbiAgICAgID48L2J1dHRvbj5cbiAgICAgIDxidXR0b25cbiAgICAgICAgY2xhc3M9XCJhLWJ0biBhLWJ0bi0tcHJpbWFyeVwiXG4gICAgICAgIHR5cGU9XCJzdWJtaXRcIlxuICAgICAgICBbaW5uZXJIVE1MXT1cIihjdXJyZW50RmllbGQgPyAnQHByeS5hZG1pbi5lZGl0JyA6ICdAcHJ5LmFkbWluLmNyZWF0ZScpIHwgaTE4blwiXG4gICAgICA+PC9idXR0b24+XG4gICAgPC9kaXY+XG4gIDwvZm9ybT5cbjwvZGl2PlxuIl19
|
|
@@ -29,16 +29,18 @@ export class AdminSelectMetadataComponent {
|
|
|
29
29
|
relativeTo: this.route
|
|
30
30
|
});
|
|
31
31
|
this.store.dispatch(AdminActions.mainActions({
|
|
32
|
-
actions:
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
32
|
+
actions: metadata.readOnly === true
|
|
33
|
+
? []
|
|
34
|
+
: [
|
|
35
|
+
{
|
|
36
|
+
action: AdminActions.routeTo({ path: editPath.toString() }),
|
|
37
|
+
label: 'edit',
|
|
38
|
+
icon: 'edit',
|
|
39
|
+
moduleAccess: 'admin',
|
|
40
|
+
pageAccess: 'metadata',
|
|
41
|
+
actionAccess: 'write'
|
|
42
|
+
}
|
|
43
|
+
]
|
|
42
44
|
}));
|
|
43
45
|
}
|
|
44
46
|
}));
|
|
@@ -64,10 +66,10 @@ export class AdminSelectMetadataComponent {
|
|
|
64
66
|
}));
|
|
65
67
|
}
|
|
66
68
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.6", ngImport: i0, type: AdminSelectMetadataComponent, deps: [{ token: i1.Store }, { token: i2.Router }, { token: i2.ActivatedRoute }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
67
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.1.6", type: AdminSelectMetadataComponent, selector: "pry-select-metadata", ngImport: i0, template: "<div\n *ngIf=\"metadata$ | async as metadata\"\n [id]=\"'panel-meta-' + metadata.id\"\n [attr.aria-labelledby]=\"'button-meta-' + metadata.id\"\n class=\"o-panel\"\n>\n <div class=\"o-panel__header\">\n <button type=\"button\" class=\"a-btn a-btn--icon-only\" (click)=\"closePanel()\">\n <span class=\"u-visually-hidden\">{{ '@pry.action.closePanel' | i18n }}</span>\n <pry-icon iconSvg=\"close\"></pry-icon>\n </button>\n\n <h3 class=\"a-h3\">\n {{ '@pry.admin.metadata.details' | i18n }}\n </h3>\n </div>\n <pry-tab-group translationStringBase=\"@pry.admin.\">\n <pry-tab [templateRef]=\"metadataDetails\" name=\"details\"></pry-tab>\n </pry-tab-group>\n\n <ng-template #metadataDetails>\n <h4 class=\"a-h4\">{{ '@pry.admin.properties' | i18n }}</h4>\n <p class=\"a-p\">\n {{ '@pry.admin.metadata.label' | i18n }} :\n <strong>{{ metadata.name }}</strong>\n </p>\n <p class=\"a-p\">\n {{ '@pry.admin.metadata.description' | i18n }} :\n <strong>{{ metadata.description ? metadata.description : '' }}</strong>\n </p>\n <p class=\"a-p\">\n {{ '@pry.admin.metadata.type' | i18n }} :\n <strong>{{ currentTypeTranslation | i18n }}</strong>\n </p>\n\n <ng-container *ngIf=\"metadata.allowedValues\">\n <ng-container *ngFor=\"let item of metadata.allowedValues\">\n <p>{{ item }}</p>\n </ng-container>\n </ng-container>\n </ng-template>\n</div>\n", dependencies: [{ kind: "directive", type: i3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i4.TabGroupComponent, selector: "pry-tab-group", inputs: ["translationStringBase"] }, { kind: "component", type: i4.TabComponent, selector: "pry-tab", inputs: ["name", "templateRef", "index"] }, { kind: "component", type: i4.PryIconComponent, selector: "pry-icon", inputs: ["color", "iconSvg", "animation", "iconImage", "alt", "width", "height", "classes"] }, { kind: "pipe", type: i3.AsyncPipe, name: "async" }, { kind: "pipe", type: i4.I18nPipe, name: "i18n" }] }); }
|
|
69
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.1.6", type: AdminSelectMetadataComponent, selector: "pry-select-metadata", ngImport: i0, template: "<div\n *ngIf=\"metadata$ | async as metadata\"\n [id]=\"'panel-meta-' + metadata.id\"\n [attr.aria-labelledby]=\"'button-meta-' + metadata.id\"\n class=\"o-panel\"\n>\n <div class=\"o-panel__header\">\n <button type=\"button\" class=\"a-btn a-btn--icon-only\" (click)=\"closePanel()\">\n <span class=\"u-visually-hidden\">{{ '@pry.action.closePanel' | i18n }}</span>\n <pry-icon iconSvg=\"close\"></pry-icon>\n </button>\n\n <h3 class=\"a-h3\">\n {{ '@pry.admin.metadata.details' | i18n }}\n </h3>\n </div>\n <pry-tab-group translationStringBase=\"@pry.admin.\">\n <pry-tab [templateRef]=\"metadataDetails\" name=\"details\"></pry-tab>\n </pry-tab-group>\n\n <ng-template #metadataDetails>\n <h4 class=\"a-h4\">{{ '@pry.admin.properties' | i18n }}</h4>\n <p class=\"a-p\">\n {{ '@pry.admin.metadata.label' | i18n }} :\n <strong>{{ metadata.name }}</strong>\n </p>\n <p class=\"a-p\">\n {{ '@pry.admin.metadata.description' | i18n }} :\n <strong>{{ metadata.description ? metadata.description : '' }}</strong>\n </p>\n <p class=\"a-p\">\n {{ '@pry.admin.metadata.type' | i18n }} :\n <strong>{{ currentTypeTranslation | i18n }}</strong>\n </p>\n <p class=\"a-p\" *ngIf=\"metadata.system !== undefined\">\n {{ '@pry.admin.metadata.system' | i18n }} :\n <strong>{{ metadata.system ? '\u2714' : '\u2718' }}</strong>\n </p>\n\n <ng-container *ngIf=\"metadata.allowedValues\">\n <ng-container *ngFor=\"let item of metadata.allowedValues\">\n <p>{{ item }}</p>\n </ng-container>\n </ng-container>\n </ng-template>\n</div>\n", dependencies: [{ kind: "directive", type: i3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i4.TabGroupComponent, selector: "pry-tab-group", inputs: ["translationStringBase"] }, { kind: "component", type: i4.TabComponent, selector: "pry-tab", inputs: ["name", "templateRef", "index"] }, { kind: "component", type: i4.PryIconComponent, selector: "pry-icon", inputs: ["color", "iconSvg", "animation", "iconImage", "alt", "width", "height", "classes"] }, { kind: "pipe", type: i3.AsyncPipe, name: "async" }, { kind: "pipe", type: i4.I18nPipe, name: "i18n" }] }); }
|
|
68
70
|
}
|
|
69
71
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.6", ngImport: i0, type: AdminSelectMetadataComponent, decorators: [{
|
|
70
72
|
type: Component,
|
|
71
|
-
args: [{ selector: 'pry-select-metadata', template: "<div\n *ngIf=\"metadata$ | async as metadata\"\n [id]=\"'panel-meta-' + metadata.id\"\n [attr.aria-labelledby]=\"'button-meta-' + metadata.id\"\n class=\"o-panel\"\n>\n <div class=\"o-panel__header\">\n <button type=\"button\" class=\"a-btn a-btn--icon-only\" (click)=\"closePanel()\">\n <span class=\"u-visually-hidden\">{{ '@pry.action.closePanel' | i18n }}</span>\n <pry-icon iconSvg=\"close\"></pry-icon>\n </button>\n\n <h3 class=\"a-h3\">\n {{ '@pry.admin.metadata.details' | i18n }}\n </h3>\n </div>\n <pry-tab-group translationStringBase=\"@pry.admin.\">\n <pry-tab [templateRef]=\"metadataDetails\" name=\"details\"></pry-tab>\n </pry-tab-group>\n\n <ng-template #metadataDetails>\n <h4 class=\"a-h4\">{{ '@pry.admin.properties' | i18n }}</h4>\n <p class=\"a-p\">\n {{ '@pry.admin.metadata.label' | i18n }} :\n <strong>{{ metadata.name }}</strong>\n </p>\n <p class=\"a-p\">\n {{ '@pry.admin.metadata.description' | i18n }} :\n <strong>{{ metadata.description ? metadata.description : '' }}</strong>\n </p>\n <p class=\"a-p\">\n {{ '@pry.admin.metadata.type' | i18n }} :\n <strong>{{ currentTypeTranslation | i18n }}</strong>\n </p>\n\n <ng-container *ngIf=\"metadata.allowedValues\">\n <ng-container *ngFor=\"let item of metadata.allowedValues\">\n <p>{{ item }}</p>\n </ng-container>\n </ng-container>\n </ng-template>\n</div>\n" }]
|
|
73
|
+
args: [{ selector: 'pry-select-metadata', template: "<div\n *ngIf=\"metadata$ | async as metadata\"\n [id]=\"'panel-meta-' + metadata.id\"\n [attr.aria-labelledby]=\"'button-meta-' + metadata.id\"\n class=\"o-panel\"\n>\n <div class=\"o-panel__header\">\n <button type=\"button\" class=\"a-btn a-btn--icon-only\" (click)=\"closePanel()\">\n <span class=\"u-visually-hidden\">{{ '@pry.action.closePanel' | i18n }}</span>\n <pry-icon iconSvg=\"close\"></pry-icon>\n </button>\n\n <h3 class=\"a-h3\">\n {{ '@pry.admin.metadata.details' | i18n }}\n </h3>\n </div>\n <pry-tab-group translationStringBase=\"@pry.admin.\">\n <pry-tab [templateRef]=\"metadataDetails\" name=\"details\"></pry-tab>\n </pry-tab-group>\n\n <ng-template #metadataDetails>\n <h4 class=\"a-h4\">{{ '@pry.admin.properties' | i18n }}</h4>\n <p class=\"a-p\">\n {{ '@pry.admin.metadata.label' | i18n }} :\n <strong>{{ metadata.name }}</strong>\n </p>\n <p class=\"a-p\">\n {{ '@pry.admin.metadata.description' | i18n }} :\n <strong>{{ metadata.description ? metadata.description : '' }}</strong>\n </p>\n <p class=\"a-p\">\n {{ '@pry.admin.metadata.type' | i18n }} :\n <strong>{{ currentTypeTranslation | i18n }}</strong>\n </p>\n <p class=\"a-p\" *ngIf=\"metadata.system !== undefined\">\n {{ '@pry.admin.metadata.system' | i18n }} :\n <strong>{{ metadata.system ? '\u2714' : '\u2718' }}</strong>\n </p>\n\n <ng-container *ngIf=\"metadata.allowedValues\">\n <ng-container *ngFor=\"let item of metadata.allowedValues\">\n <p>{{ item }}</p>\n </ng-container>\n </ng-container>\n </ng-template>\n</div>\n" }]
|
|
72
74
|
}], ctorParameters: function () { return [{ type: i1.Store }, { type: i2.Router }, { type: i2.ActivatedRoute }]; } });
|
|
73
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
75
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWRtaW4tc2VsZWN0LW1ldGFkYXRhLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3Byb3ZvbHkvZGFzaGJvYXJkL2FkbWluL2NvbXBvbmVudHMvYWRtaW4tbWV0YWRhdGEvYWRtaW4tc2VsZWN0LW1ldGFkYXRhL2FkbWluLXNlbGVjdC1tZXRhZGF0YS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9wcm92b2x5L2Rhc2hib2FyZC9hZG1pbi9jb21wb25lbnRzL2FkbWluLW1ldGFkYXRhL2FkbWluLXNlbGVjdC1tZXRhZGF0YS9hZG1pbi1zZWxlY3QtbWV0YWRhdGEuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBcUIsTUFBTSxlQUFlLENBQUM7QUFHN0QsT0FBTyxFQUFhLFlBQVksRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQzdELE9BQU8sRUFBRSxlQUFlLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSwrQ0FBK0MsQ0FBQztBQUNuRyxPQUFPLEVBQWMsWUFBWSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ2hELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQzs7Ozs7O0FBTTVELE1BQU0sT0FBTyw0QkFBNEI7YUFDaEMsT0FBRSxHQUFHLDhCQUE4QixDQUFDO0lBSzNDLFlBQW9CLEtBQWlCLEVBQVUsTUFBYyxFQUFVLEtBQXFCO1FBQXhFLFVBQUssR0FBTCxLQUFLLENBQVk7UUFBVSxXQUFNLEdBQU4sTUFBTSxDQUFRO1FBQVUsVUFBSyxHQUFMLEtBQUssQ0FBZ0I7UUFINUYsUUFBRyxHQUFHLElBQUksWUFBWSxFQUFFLENBQUM7UUFDekIsMkJBQXNCLEdBQUcsRUFBRSxDQUFDO1FBRzFCLElBQUksQ0FBQyxTQUFTLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsaUJBQWlCLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztRQUN2RSxJQUFJLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FDVixJQUFJLENBQUMsU0FBUyxDQUFDLFNBQVMsQ0FBQyxDQUFDLElBQUksRUFBRSxFQUFFO1lBQ2hDLE1BQU0sSUFBSSxHQUFHLFlBQVksQ0FBQyxJQUFJLENBQUMsQ0FBQyxFQUFFLEVBQUUsRUFBRSxDQUFDLEVBQUUsQ0FBQyxPQUFPLEtBQUssSUFBSSxFQUFFLElBQUksQ0FBQyxDQUFDO1lBQ2xFLElBQUksQ0FBQyxzQkFBc0IsR0FBRyxJQUFJLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQyxDQUFDLFlBQVksQ0FBQyxDQUFDLENBQUMsQ0FBQyxXQUFXLENBQUM7UUFDdEYsQ0FBQyxDQUFDLENBQ0gsQ0FBQztJQUNKLENBQUM7SUFFRCxRQUFRO1FBQ04sSUFBSSxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQ1YsSUFBSSxDQUFDLFNBQVMsQ0FBQyxTQUFTLENBQUMsQ0FBQyxRQUFRLEVBQUUsRUFBRTtZQUNwQyxJQUFJLFFBQVEsRUFBRTtnQkFDWixNQUFNLFFBQVEsR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLGFBQWEsQ0FBQyxDQUFDLEdBQUcsRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFLFFBQVEsQ0FBQyxFQUFFLENBQUMsRUFBRTtvQkFDakYsVUFBVSxFQUFFLElBQUksQ0FBQyxLQUFLO2lCQUN2QixDQUFDLENBQUM7Z0JBQ0gsSUFBSSxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQ2pCLFlBQVksQ0FBQyxXQUFXLENBQUM7b0JBQ3ZCLE9BQU8sRUFDTCxRQUFRLENBQUMsUUFBUSxLQUFLLElBQUk7d0JBQ3hCLENBQUMsQ0FBQyxFQUFFO3dCQUNKLENBQUMsQ0FBQzs0QkFDRTtnQ0FDRSxNQUFNLEVBQUUsWUFBWSxDQUFDLE9BQU8sQ0FBQyxFQUFFLElBQUksRUFBRSxRQUFRLENBQUMsUUFBUSxFQUFFLEVBQUUsQ0FBQztnQ0FDM0QsS0FBSyxFQUFFLE1BQU07Z0NBQ2IsSUFBSSxFQUFFLE1BQU07Z0NBQ1osWUFBWSxFQUFFLE9BQU87Z0NBQ3JCLFVBQVUsRUFBRSxVQUFVO2dDQUN0QixZQUFZLEVBQUUsT0FBTzs2QkFDdEI7eUJBQ0Y7aUJBQ1IsQ0FBQyxDQUNILENBQUM7YUFDSDtRQUNILENBQUMsQ0FBQyxDQUNILENBQUM7SUFDSixDQUFDO0lBRUQsV0FBVztRQUNULElBQUksQ0FBQyxHQUFHLENBQUMsV0FBVyxFQUFFLENBQUM7SUFDekIsQ0FBQztJQUVELFVBQVU7UUFDUixNQUFNLElBQUksR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLGFBQWEsQ0FBQyxDQUFDLEdBQUcsRUFBRSxVQUFVLEVBQUUsS0FBSyxDQUFDLEVBQUUsRUFBRSxVQUFVLEVBQUUsSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDLENBQUM7UUFDN0YsSUFBSSxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsZUFBZSxDQUFDLGdCQUFnQixFQUFFLENBQUMsQ0FBQztRQUN4RCxJQUFJLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxZQUFZLENBQUMsV0FBVyxDQUFDLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsQ0FBQztRQUNwRSxJQUFJLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FDakIsWUFBWSxDQUFDLFdBQVcsQ0FBQztZQUN2QixPQUFPLEVBQUU7Z0JBQ1A7b0JBQ0UsTUFBTSxFQUFFLFlBQVksQ0FBQyxPQUFPLENBQUMsRUFBRSxJQUFJLEVBQUUsSUFBSSxDQUFDLFFBQVEsRUFBRSxFQUFFLENBQUM7b0JBQ3ZELEtBQUssRUFBRSxLQUFLO29CQUNaLElBQUksRUFBRSxZQUFZO29CQUNsQixZQUFZLEVBQUUsT0FBTztvQkFDckIsVUFBVSxFQUFFLFVBQVU7b0JBQ3RCLFlBQVksRUFBRSxPQUFPO2lCQUN0QjthQUNGO1NBQ0YsQ0FBQyxDQUNILENBQUM7SUFDSixDQUFDOzhHQW5FVSw0QkFBNEI7a0dBQTVCLDRCQUE0QiwyRENaekMsK21EQThDQTs7MkZEbENhLDRCQUE0QjtrQkFKeEMsU0FBUzsrQkFDRSxxQkFBcUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIE9uRGVzdHJveSwgT25Jbml0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBBY3RpdmF0ZWRSb3V0ZSwgUm91dGVyIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcbmltcG9ydCB7IFN0b3JlIH0gZnJvbSAnQG5ncngvc3RvcmUnO1xuaW1wb3J0IHsgSU1ldGFkYXRhLCBNRVRBX09QVElPTlMgfSBmcm9tICdAcHJvdm9seS9kYXNoYm9hcmQnO1xuaW1wb3J0IHsgTWV0YWRhdGFBY3Rpb25zLCBNZXRhZGF0YVNlbGVjdG9ycyB9IGZyb20gJ0Bwcm92b2x5L2Rhc2hib2FyZC9jb21wb25lbnRzL21ldGFkYXRhLWVkaXRvcic7XG5pbXBvcnQgeyBPYnNlcnZhYmxlLCBTdWJzY3JpcHRpb24gfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IEFkbWluQWN0aW9ucyB9IGZyb20gJy4uLy4uLy4uL3N0b3JlL2FkbWluLmFjdGlvbnMnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdwcnktc2VsZWN0LW1ldGFkYXRhJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2FkbWluLXNlbGVjdC1tZXRhZGF0YS5jb21wb25lbnQuaHRtbCdcbn0pXG5leHBvcnQgY2xhc3MgQWRtaW5TZWxlY3RNZXRhZGF0YUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95IHtcbiAgc3RhdGljIGlkID0gJ0FkbWluU2VsZWN0TWV0YWRhdGFDb21wb25lbnQnO1xuICBtZXRhZGF0YSQ6IE9ic2VydmFibGU8SU1ldGFkYXRhIHwgdW5kZWZpbmVkPjtcbiAgc3ViID0gbmV3IFN1YnNjcmlwdGlvbigpO1xuICBjdXJyZW50VHlwZVRyYW5zbGF0aW9uID0gJyc7XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBzdG9yZTogU3RvcmU8YW55PiwgcHJpdmF0ZSByb3V0ZXI6IFJvdXRlciwgcHJpdmF0ZSByb3V0ZTogQWN0aXZhdGVkUm91dGUpIHtcbiAgICB0aGlzLm1ldGFkYXRhJCA9IHRoaXMuc3RvcmUuc2VsZWN0KE1ldGFkYXRhU2VsZWN0b3JzLnNlbGVjdGVkTWV0YWRhdGEpO1xuICAgIHRoaXMuc3ViLmFkZChcbiAgICAgIHRoaXMubWV0YWRhdGEkLnN1YnNjcmliZSgobWV0YSkgPT4ge1xuICAgICAgICBjb25zdCB0eXBlID0gTUVUQV9PUFRJT05TLmZpbmQoKGVsKSA9PiBlbC52YXJUeXBlID09PSBtZXRhPy50eXBlKTtcbiAgICAgICAgdGhpcy5jdXJyZW50VHlwZVRyYW5zbGF0aW9uID0gdHlwZSA/IHR5cGUudHJhbnNsYXRpb24gOiBNRVRBX09QVElPTlNbMF0udHJhbnNsYXRpb247XG4gICAgICB9KVxuICAgICk7XG4gIH1cblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLnN1Yi5hZGQoXG4gICAgICB0aGlzLm1ldGFkYXRhJC5zdWJzY3JpYmUoKG1ldGFkYXRhKSA9PiB7XG4gICAgICAgIGlmIChtZXRhZGF0YSkge1xuICAgICAgICAgIGNvbnN0IGVkaXRQYXRoID0gdGhpcy5yb3V0ZXIuY3JlYXRlVXJsVHJlZShbJy4nLCAnbWV0YWRhdGEnLCAnZWRpdCcsIG1ldGFkYXRhLmlkXSwge1xuICAgICAgICAgICAgcmVsYXRpdmVUbzogdGhpcy5yb3V0ZVxuICAgICAgICAgIH0pO1xuICAgICAgICAgIHRoaXMuc3RvcmUuZGlzcGF0Y2goXG4gICAgICAgICAgICBBZG1pbkFjdGlvbnMubWFpbkFjdGlvbnMoe1xuICAgICAgICAgICAgICBhY3Rpb25zOlxuICAgICAgICAgICAgICAgIG1ldGFkYXRhLnJlYWRPbmx5ID09PSB0cnVlXG4gICAgICAgICAgICAgICAgICA/IFtdXG4gICAgICAgICAgICAgICAgICA6IFtcbiAgICAgICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgICAgICBhY3Rpb246IEFkbWluQWN0aW9ucy5yb3V0ZVRvKHsgcGF0aDogZWRpdFBhdGgudG9TdHJpbmcoKSB9KSxcbiAgICAgICAgICAgICAgICAgICAgICAgIGxhYmVsOiAnZWRpdCcsXG4gICAgICAgICAgICAgICAgICAgICAgICBpY29uOiAnZWRpdCcsXG4gICAgICAgICAgICAgICAgICAgICAgICBtb2R1bGVBY2Nlc3M6ICdhZG1pbicsXG4gICAgICAgICAgICAgICAgICAgICAgICBwYWdlQWNjZXNzOiAnbWV0YWRhdGEnLFxuICAgICAgICAgICAgICAgICAgICAgICAgYWN0aW9uQWNjZXNzOiAnd3JpdGUnXG4gICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICBdXG4gICAgICAgICAgICB9KVxuICAgICAgICAgICk7XG4gICAgICAgIH1cbiAgICAgIH0pXG4gICAgKTtcbiAgfVxuXG4gIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgIHRoaXMuc3ViLnVuc3Vic2NyaWJlKCk7XG4gIH1cblxuICBjbG9zZVBhbmVsKCkge1xuICAgIGNvbnN0IHBhdGggPSB0aGlzLnJvdXRlci5jcmVhdGVVcmxUcmVlKFsnLicsICdtZXRhZGF0YScsICduZXcnXSwgeyByZWxhdGl2ZVRvOiB0aGlzLnJvdXRlIH0pO1xuICAgIHRoaXMuc3RvcmUuZGlzcGF0Y2goTWV0YWRhdGFBY3Rpb25zLnVuc2VsZWN0TWV0YWRhdGEoKSk7XG4gICAgdGhpcy5zdG9yZS5kaXNwYXRjaChBZG1pbkFjdGlvbnMudG9nZ2xlUGFuZWwoeyBwYW5lbE9wZW46IGZhbHNlIH0pKTtcbiAgICB0aGlzLnN0b3JlLmRpc3BhdGNoKFxuICAgICAgQWRtaW5BY3Rpb25zLm1haW5BY3Rpb25zKHtcbiAgICAgICAgYWN0aW9uczogW1xuICAgICAgICAgIHtcbiAgICAgICAgICAgIGFjdGlvbjogQWRtaW5BY3Rpb25zLnJvdXRlVG8oeyBwYXRoOiBwYXRoLnRvU3RyaW5nKCkgfSksXG4gICAgICAgICAgICBsYWJlbDogJ2FkZCcsXG4gICAgICAgICAgICBpY29uOiAnYWRkX2NvbHVtbicsXG4gICAgICAgICAgICBtb2R1bGVBY2Nlc3M6ICdhZG1pbicsXG4gICAgICAgICAgICBwYWdlQWNjZXNzOiAnbWV0YWRhdGEnLFxuICAgICAgICAgICAgYWN0aW9uQWNjZXNzOiAnd3JpdGUnXG4gICAgICAgICAgfVxuICAgICAgICBdXG4gICAgICB9KVxuICAgICk7XG4gIH1cbn1cbiIsIjxkaXZcbiAgKm5nSWY9XCJtZXRhZGF0YSQgfCBhc3luYyBhcyBtZXRhZGF0YVwiXG4gIFtpZF09XCIncGFuZWwtbWV0YS0nICsgbWV0YWRhdGEuaWRcIlxuICBbYXR0ci5hcmlhLWxhYmVsbGVkYnldPVwiJ2J1dHRvbi1tZXRhLScgKyBtZXRhZGF0YS5pZFwiXG4gIGNsYXNzPVwiby1wYW5lbFwiXG4+XG4gIDxkaXYgY2xhc3M9XCJvLXBhbmVsX19oZWFkZXJcIj5cbiAgICA8YnV0dG9uIHR5cGU9XCJidXR0b25cIiBjbGFzcz1cImEtYnRuIGEtYnRuLS1pY29uLW9ubHlcIiAoY2xpY2spPVwiY2xvc2VQYW5lbCgpXCI+XG4gICAgICA8c3BhbiBjbGFzcz1cInUtdmlzdWFsbHktaGlkZGVuXCI+e3sgJ0BwcnkuYWN0aW9uLmNsb3NlUGFuZWwnIHwgaTE4biB9fTwvc3Bhbj5cbiAgICAgIDxwcnktaWNvbiBpY29uU3ZnPVwiY2xvc2VcIj48L3ByeS1pY29uPlxuICAgIDwvYnV0dG9uPlxuXG4gICAgPGgzIGNsYXNzPVwiYS1oM1wiPlxuICAgICAge3sgJ0BwcnkuYWRtaW4ubWV0YWRhdGEuZGV0YWlscycgfCBpMThuIH19XG4gICAgPC9oMz5cbiAgPC9kaXY+XG4gIDxwcnktdGFiLWdyb3VwIHRyYW5zbGF0aW9uU3RyaW5nQmFzZT1cIkBwcnkuYWRtaW4uXCI+XG4gICAgPHByeS10YWIgW3RlbXBsYXRlUmVmXT1cIm1ldGFkYXRhRGV0YWlsc1wiIG5hbWU9XCJkZXRhaWxzXCI+PC9wcnktdGFiPlxuICA8L3ByeS10YWItZ3JvdXA+XG5cbiAgPG5nLXRlbXBsYXRlICNtZXRhZGF0YURldGFpbHM+XG4gICAgPGg0IGNsYXNzPVwiYS1oNFwiPnt7ICdAcHJ5LmFkbWluLnByb3BlcnRpZXMnIHwgaTE4biB9fTwvaDQ+XG4gICAgPHAgY2xhc3M9XCJhLXBcIj5cbiAgICAgIHt7ICdAcHJ5LmFkbWluLm1ldGFkYXRhLmxhYmVsJyB8IGkxOG4gfX0gOlxuICAgICAgPHN0cm9uZz57eyBtZXRhZGF0YS5uYW1lIH19PC9zdHJvbmc+XG4gICAgPC9wPlxuICAgIDxwIGNsYXNzPVwiYS1wXCI+XG4gICAgICB7eyAnQHByeS5hZG1pbi5tZXRhZGF0YS5kZXNjcmlwdGlvbicgfCBpMThuIH19IDpcbiAgICAgIDxzdHJvbmc+e3sgbWV0YWRhdGEuZGVzY3JpcHRpb24gPyBtZXRhZGF0YS5kZXNjcmlwdGlvbiA6ICcnIH19PC9zdHJvbmc+XG4gICAgPC9wPlxuICAgIDxwIGNsYXNzPVwiYS1wXCI+XG4gICAgICB7eyAnQHByeS5hZG1pbi5tZXRhZGF0YS50eXBlJyB8IGkxOG4gfX0gOlxuICAgICAgPHN0cm9uZz57eyBjdXJyZW50VHlwZVRyYW5zbGF0aW9uIHwgaTE4biB9fTwvc3Ryb25nPlxuICAgIDwvcD5cbiAgICA8cCBjbGFzcz1cImEtcFwiICpuZ0lmPVwibWV0YWRhdGEuc3lzdGVtICE9PSB1bmRlZmluZWRcIj5cbiAgICAgIHt7ICdAcHJ5LmFkbWluLm1ldGFkYXRhLnN5c3RlbScgfCBpMThuIH19IDpcbiAgICAgIDxzdHJvbmc+e3sgbWV0YWRhdGEuc3lzdGVtID8gJ+KclCcgOiAn4pyYJyB9fTwvc3Ryb25nPlxuICAgIDwvcD5cblxuICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJtZXRhZGF0YS5hbGxvd2VkVmFsdWVzXCI+XG4gICAgICA8bmctY29udGFpbmVyICpuZ0Zvcj1cImxldCBpdGVtIG9mIG1ldGFkYXRhLmFsbG93ZWRWYWx1ZXNcIj5cbiAgICAgICAgPHA+e3sgaXRlbSB9fTwvcD5cbiAgICAgIDwvbmctY29udGFpbmVyPlxuICAgIDwvbmctY29udGFpbmVyPlxuICA8L25nLXRlbXBsYXRlPlxuPC9kaXY+XG4iXX0=
|
|
@@ -106,7 +106,8 @@ export const enTranslations = {
|
|
|
106
106
|
invalid: 'Field is required',
|
|
107
107
|
listLabel: 'Value name',
|
|
108
108
|
addValue: 'Add new value',
|
|
109
|
-
removeValue: 'Remove value'
|
|
109
|
+
removeValue: 'Remove value',
|
|
110
|
+
system: 'System metadata'
|
|
110
111
|
},
|
|
111
112
|
'metadata-rules': {
|
|
112
113
|
title: 'Metadata Rules',
|
|
@@ -363,4 +364,4 @@ export const enTranslations = {
|
|
|
363
364
|
}
|
|
364
365
|
}
|
|
365
366
|
};
|
|
366
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW4udHJhbnNsYXRpb25zLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvcHJvdm9seS9kYXNoYm9hcmQvYWRtaW4vaTE4bi9lbi50cmFuc2xhdGlvbnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxDQUFDLE1BQU0sY0FBYyxHQUFHO0lBQzVCLE1BQU0sRUFBRTtRQUNOLEtBQUssRUFBRTtZQUNMLEtBQUssRUFBRSxnQkFBZ0I7WUFDdkIsZUFBZSxFQUFFLDRCQUE0QjtZQUM3QyxjQUFjLEVBQUUsYUFBYTtZQUM3QixXQUFXLEVBQUUsT0FBTztZQUNwQixJQUFJLEVBQUUsTUFBTTtZQUNaLE1BQU0sRUFBRSxRQUFRO1lBQ2hCLE1BQU0sRUFBRSxRQUFRO1lBQ2hCLEdBQUcsRUFBRSxLQUFLO1lBQ1YsUUFBUSxFQUFFLFVBQVU7WUFDcEIsUUFBUSxFQUFFLG1CQUFtQjtZQUM3QixZQUFZLEVBQUUsZUFBZTtZQUM3QixNQUFNLEVBQUUsUUFBUTtZQUNoQixNQUFNLEVBQUUsZUFBZTtZQUN2QixNQUFNLEVBQUUsUUFBUTtZQUNoQixJQUFJLEVBQUUsTUFBTTtZQUNaLElBQUksRUFBRSxNQUFNO1lBQ1osVUFBVSxFQUFFLFlBQVk7WUFDeEIsT0FBTyxFQUFFLFNBQVM7WUFDbEIsUUFBUSxFQUFFLFVBQVU7WUFDcEIsUUFBUSxFQUFFLHdCQUF3QjtZQUNsQyxNQUFNLEVBQUUsMEJBQTBCO1lBQ2xDLFNBQVMsRUFBRSwyQ0FBMkM7WUFDdEQsU0FBUyxFQUFFLHVDQUF1QztZQUNsRCxZQUFZLEVBQUUsaURBQWlEO1lBQy9ELElBQUksRUFBRSxlQUFlO1lBQ3JCLFdBQVcsRUFBRSw0REFBNEQ7WUFDekUsZ0JBQWdCLEVBQUUsb0JBQW9CO1lBQ3RDLElBQUksRUFBRSxZQUFZO1lBQ2xCLDZCQUE2QixFQUMzQix5R0FBeUc7WUFDM0csUUFBUSxFQUFFO2dCQUNSLElBQUksRUFBRSxXQUFXO2dC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TUFBTSxFQUFFLFlBQVk7Z0JBQ3BCLFNBQVMsRUFBRSxXQUFXO2dCQUN0QixLQUFLLEVBQUUsV0FBVzthQUNuQjtZQUNELE9BQU8sRUFBRTtnQkFDUCxLQUFLLEVBQUUsa0JBQWtCO2dCQUN6QixXQUFXLEVBQUU7b0JBQ1gsT0FBTyxFQUNMLHVLQUF1SztvQkFDekssT0FBTyxFQUNMLHNQQUFzUDtpQkFDelA7Z0JBQ0QsT0FBTyxFQUFFO29CQUNQLE9BQU8sRUFBRSxTQUFTO29CQUNsQixPQUFPLEVBQUUsZUFBZTtpQkFDekI7YUFDRjtTQUNGO1FBQ0QsT0FBTyxFQUFFO1lBQ1AsT0FBTyxFQUFFLGlCQUFpQjtZQUMxQixTQUFTLEVBQUUsb0JBQW9CO1lBQy9CLE9BQU8sRUFBRSwwQkFBMEI7WUFDbkMsSUFBSSxFQUFFLHVCQUF1QjtZQUM3QixJQUFJLEVBQUUsWUFBWTtTQUNuQjtLQUNGO0NBQ0YsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBjb25zdCBlblRyYW5zbGF0aW9ucyA9IHtcbiAgJ0BwcnknOiB7XG4gICAgYWRtaW46IHtcbiAgICAgIHRpdGxlOiAnQWRtaW5pc3RyYXRpb24nLFxuICAgICAgdGl0bGVJbmRpY2F0aW9uOiAnQ2xvc2UgQWRtaW5pc3RyYXRpb24gbWVudSAnLFxuICAgICAgaW5mb01vZGFsVGl0bGU6ICdJbmZvcm1hdGlvbicsXG4gICAgICBjbG9zZU1vZGFsZTogJ0Nsb3NlJyxcbiAgICAgIGVkaXQ6ICdFZGl0JyxcbiAgICAgIHJlbmFtZTogJ1JlbmFtZScsXG4gICAgICBkZWxldGU6ICdEZWxldGUnLFxuICAgICAgYWRkOiAnTmV3JyxcbiAgICAgIHZhbGlkYXRlOiAnVmFsaWRhdGUnLFxuICAgICAgYWRkQ2xhc3M6ICdWYWxpZGF0ZSBjcmVhdGlvbicsXG4gICAgICBhZGRBdHRyaWJ1dGU6ICdBZGQgYXR0cmlidXRlJyxcbiAgICAgIGNyZWF0ZTogJ0NyZWF0ZScsXG4gICAgICB1cGxvYWQ6ICdBZGQgYSBwaWN0dXJlJyxcbiAgICAgIGNhbmNlbDogJ0NhbmNlbCcsXG4gICAgICBiYWNrOiAnQmFjaycsXG4gICAgICBuZXh0OiAnTmV4dCcsXG4gICAgICBwcm9wZXJ0aWVzOiAnUHJvcGVydGllcycsXG4gICAgICBkZXRhaWxzOiAnRGV0YWlscycsXG4gICAgICBhY3Rpdml0eTogJ0FjdGl2aXR5JyxcbiAgICAgIHJlcXVpcmVkOiAnVGhpcyBmaWVsZCBpcyByZXF1aXJlZCcsXG4gICAgICBleGlzdHM6ICdUaGlzIG5hbWUgYWxyZWFkeSBleGlzdHMnLFxuICAgICAgbWluTGVuZ3RoOiAnVGhlIG1pbmltdW0gbnVtYmVyIG9mIGNoYXJhY3RlcnM6IHt7bGVufX0nLFxuICAgICAgbWF4TGVuZ3RoOiAnTnVtYmVyIG9mIGNoYXJhY3RlcnMgYWxsb3dlZDoge3tsZW59fScsXG4gICAgICBub1doaXRlc3BhY2U6IFwiVGhlIHZhbHVlIGNhbid0IHN0YXJ0IG9yIGVuZCB3aXRoIGEgYmxhbmsgc3BhY2VcIixcbiAgICAgIHJ1bGU6ICdSdWxlIG7CsHt7aWR9fScsXG4gICAgICBkZWZhdWx0UnVsZTogJ0RlZmF1bHQgUnVsZSAoYXBwbGllcyBvbmx5IGlmIG5vIG90aGVyIHJ1bGVzIGFyZSB2ZXJpZmllZCknLFxuICAgICAgZGlzcGxheU1vZGVJbWFnZTogJ0ltYWdlIGRpc3BsYXkgbW9kZScsXG4gICAgICBzaXplOiAnSW1hZ2Ugc2l6ZScsXG4gICAgICBkZWxldGVBdHRyaWJ1dGVDb25maXJtTWVzc2FnZTpcbiAgICAgICAgJ1RoaXMgYXR0cmlidXRlIHdpbGwgbm8gbG9uZ2VyIGJlIHZpc2libGUgZm9yIHRoZSBhc3NvY2lhdGVkIGRhdGEuIEFyZSB5b3Ugc3VyZSB5b3Ugd2FudCB0byBkZWxldGUgdGhpcz8nLFxuICAgICAgcG9zaXRpb246IHtcbiAgICAgICAgRlVMTDogJ0Z1bGwgaWNvbicsXG4gICAgICAgIFRPUF9MRUZUOiAnVG9wIGxlZnQnLFxuICAgICAgICBUT1BfUklHSFQ6ICdUb3AgUmlnaHQnLFxuICAgICAgICBCT1RUT01fTEVGVDogJ0JvdHRvbSBsZWZ0JyxcbiAgICAgICAgQk9UVE9NX1JJR0hUOiAnQm90dG9tIHJpZ2h0J1xuICAgICAgfSxcbiAgICAgIGN1c3RvbWl6ZToge1xuICAgICAgICB0aXRsZTogJ0N1c3RvbWl6ZScsXG4gICAgICAgIHRlbXBsYXRlOiAnVG9vbHRpcCAoTWFwICYgUmVsYXRpb25zKScsXG4gICAgICAgIHVwZGF0ZTogJ1VwZGF0ZSB0b29sdGlwJyxcbiAgICAgICAgYWR2YW5jZWQ6ICdBZHZhbmNlZCBtb2RlJyxcbiAgICAgICAgbmFtZTogJ2J1c2luZXNzIG1vZGVsJyxcbiAgICAgICAgdGVjaG5pY2FsSWQ6ICdUZWNobmljYWwgSWQnLFxuICAgICAgICB0eXBlOiAnQ2hvb3NlIHdoaWNoIGtpbmQgb2YgdG9vbHRpcCB0byB1c2UnLFxuICAgICAgICBzaW1wbGlmaWVkOiAnQ2hvb3NlIHdoaWNoIGF0dHJpYnV0ZXMgdG8gZGlzcGxheScsXG4gICAgICAgIGV4ZW1wbGU6ICd7e2V4cHJ9fSB2YWx1ZScsXG4gICAgICAgIHRhYmxlOiAnVGFibGUgZGVmYXVsdCBhdHRyaWJ1dGVzJyxcbiAgICAgICAgdGlsZTogJ1RpbGUgZGVmYXVsdCBhdHRyaWJ1dGVzJyxcbiAgICAgICAgdGlsZUhpbnQ6ICdPbmx5IGJldHdlZW4gMSBhbmQge3ttYXh9fSBhdHRyaWJ1dGVzIGNhbiBiZSBkaXNwbGF5ZWQgaW4gYSB0aWxlJyxcbiAgICAgICAgdGFibGVBdHRyczogJ0F0dHJpYnV0ZXMgaW4gYSB0YWJsZSBieSBkZWZhdWx0JyxcbiAgICAgICAgdGlsZUF0dHJzOiAnQXR0cmlidXRlcyBkaXNwbGF5ZWQgaW4gYSB0aWxlJyxcbiAgICAgICAgbm9UYWJsZUF0dHJzOiAnT3RoZXIgYXR0cmlidXRlcycsXG4gICAgICAgIG5vVGlsZUF0dHJzOiAnQXR0cmlidXRlcyBub3QgZGlzcGxheWVkJyxcbiAgICAgICAgdXBkYXRlVGFibGU6ICdVcGRhdGUgZGVmYXVsdCB0YWJsZSBhdHRyaWJ1dGVzJyxcbiAgICAgICAgdXBkYXRlVGlsZTogJ1VwZGF0ZSB0aWxlIGF0dHJpYnV0ZXMnLFxuICAgICAgICB1cGRhdGVJY29uczogJ1VwZGF0ZSBzeW1ib2xzIHJ1bGVzJ1xuICAgICAgfSxcbiAgICAgIHZhclR5cGU6IHtcbiAgICAgICAgaW50OiAnSW50ZWdlcicsXG4gICAgICAgIGRvdWJsZTogJ0RvdWJsZScsXG4gICAgICAgIHN0cmluZzogJ1RleHQnLFxuICAgICAgICB1dWlkOiAnVXVpZCcsXG4gICAgICAgIGRhdGU6ICdEYXRlJyxcbiAgICAgICAgbGlzdDogJ1ZhbHVlIGxpc3QnXG4gICAgICB9LFxuICAgICAgbWVudXM6IHtcbiAgICAgICAgZW52aXJvbm1lbnQ6ICdFeGVjdXRpb24gY29udGV4dHMnLFxuICAgICAgICB1c2VyOiAnVXNlcnMnLFxuICAgICAgICAnbWV0YWRhdGEtdXNlcic6ICdVc2VyIHByb2ZpbGUnLFxuICAgICAgICAnYWJhYy1ydWxlcyc6ICdBQkFDIFJ1bGVzJyxcbiAgICAgICAgJ21ldGFkYXRhLXJ1bGVzJzogJ1J1bGVzIG1ldGFkYXRhJyxcbiAgICAgICAgZGF0YXNldDogJ0RhdGFzZXRzJyxcbiAgICAgICAgY2xhc3NlczogJ0NsYXNzZXMnLFxuICAgICAgICBwcmVkaWNhdGVzOiAnUHJlZGljYXRlcycsXG4gICAgICAgIG1ldGFkYXRhOiAnTWV0YWRhdGEnLFxuICAgICAgICBmaWVsZHM6ICdGaWVsZHMnLFxuICAgICAgICAncmVsYXRpb24tdHlwZXMnOiAnUmVsYXRpb24gdHlwZXMnLFxuICAgICAgICBsaW5rczogJ0xpbmtzIGJldHdlZW4gYXR0cmlidXRlcycsXG4gICAgICAgIG1vZGVsOiAnRGF0YSBtb2RlbCcsXG4gICAgICAgIGFjY2VzczogJ0RhdGEgYWNjZXNzJ1xuICAgICAgfSxcbiAgICAgIHByZWRpY2F0ZXM6IHtcbiAgICAgICAgbGlzdDogJ1ByZWRpY2F0ZXMnLFxuICAgICAgICBhZGQ6ICdDcmVhdGUgbmV3IHByZWRpY2F0ZScsXG4gICAgICAgIGVkaXQ6ICdFZGl0IHVuIHByZWRpY2F0ZScsXG4gICAgICAgIGluZm86IFwiUHJlZGljYXRlJ3MgaW5mb3JtYXRpb25cIixcbiAgICAgICAgbnVtOiAnSWQuJyxcbiAgICAgICAgbmFtZTogJ05hbWUnLFxuICAgICAgICB2YWx1ZTogJ1RyaWdnZXIgY29uZGl0aW9uYWwgZXhwcmVzc2lvbicsXG4gICAgICAgIHZhbGlkRWRpdDogJ1ZhbGlkYXRpb24gbW9kaWZpY2F0aW9uJyxcbiAgICAgICAgdmFsaWRFZGl0TWVzc2FnZTogJ1RoaXMgcHJlZGljYXRlcyBpcyB1c2VkIGluIHt7dXNlZH19IHJ1bGVzLiBSZWFsbHkgdXBkYXRlIHByZWRpY2F0ZSA/J1xuICAgICAgfSxcbiAgICAgIG1ldGFkYXRhOiB7XG4gICAgICAgIHRpdGxlOiAnTWV0YWRhdGEnLFxuICAgICAgICBhZGQ6ICdDcmVhdGUgbmV3IG1ldGFkYXRhJyxcbiAgICAgICAgZWRpdDogJ01vZGlmeSBtZXRhZGF0YScsXG4gICAgICAgIGRldGFpbHM6ICdNZXRhZGF0YSBkZXRhaWxzJyxcbiAgICAgICAgZGV0YWlsc1VzZXI6ICdVc2VyIHByb2ZpbGUgZGV0YWlsJyxcbiAgICAgICAgaWQ6ICdJRCcsXG4gICAgICAgIGxhYmVsOiAnTmFtZScsXG4gICAgICAgIHR5cGU6ICdUeXBlJyxcbiAgICAgICAgZGVzY3JpcHRpb246ICdEZXNjcmlwdGlvbicsXG4gICAgICAgIGludmFsaWQ6ICdGaWVsZCBpcyByZXF1aXJlZCcsXG4gICAgICAgIGxpc3RMYWJlbDogJ1ZhbHVlIG5hbWUnLFxuICAgICAgICBhZGRWYWx1ZTogJ0FkZCBuZXcgdmFsdWUnLFxuICAgICAgICByZW1vdmVWYWx1ZTogJ1JlbW92ZSB2YWx1ZSdcbiAgICAgIH0sXG4gICAgICAnbWV0YWRhdGEtcnVsZXMnOiB7XG4gICAgICAgIHRpdGxlOiAnTWV0YWRhdGEgUnVsZXMnLFxuICAgICAgICBsYWJlbDogJ05hbWUnLFxuICAgICAgICAnaXMtc2FtZS1uYW1lJzogJ1RoZSBuYW1lIG9mIHRoZSBydWxlIGlzIGFscmVhZHkgdGFrZW4gZm9yIGFub3RoZXIgcnVsZSwgcGxlYXNlIHVzZSBhbm90aGVyIG9uZScsXG4gICAgICAgICdpcy1zYW1lLXJ1bGVzJzogJ1RoZSBzYW1lIHJ1bGUgaGFzIGFscmVhZHkgYmVlbiBjb25maWd1cmVkIGFuZCBzYXZlZCwgeW91IGNhbiB1c2UgaXQnLFxuICAgICAgICAnbWV0YWRhdGEtaXRlbSc6IHtcbiAgICAgICAgICBuYW1lOiAnVGFyZ2V0IG1ldGFkYXRhJyxcbiAgICAgICAgICBkZXNjcmlwdGlvbjogJ1RhcmdldCBtZXRhZGF0YSBkZXNjcmlwdGlvbicsXG4gICAgICAgICAgdHlwZTogJ01ldGFkYXRhIHR5cGUgdGFyZ2V0J1xuICAgICAgICB9LFxuICAgICAgICAnbWV0YWRhdGEtdXNlcic6IHtcbiAgICAgICAgICBuYW1lOiAnU291cmNlIHVzZXIgcHJvZmlsZScsXG4gICAgICAgICAgZGVzY3JpcHRpb246ICdEZXNjcmlwdGlvbiBvZiBzb3VyY2UgdXNlciBwcm9maWxlJyxcbiAgICAgICAgICB0eXBlOiAnVHlwZSBvZiBzb3VyY2UgdXNlciBwcm9maWxlJ1xuICAgICAgICB9LFxuICAgICAgICBlZGl0OiB7XG4gICAgICAgICAgdGl0bGU6ICdNb2RpZnkgbWV0YWRhdGEgcnVsZSdcbiAgICAgICAgfSxcbiAgICAgICAgYWRkOiB7XG4gICAgICAgICAgdGl0bGU6ICdDcmVhdGUgbmV3IG1ldGFkYXRhIHJ1bGUnXG4gICAgICAgIH1cbiAgICAgIH0sXG4gICAgICBkYXRhc2V0OiB7XG4gICAgICAgIGRlbGV0ZTpcbiAgICAgICAgICAnQWxsIHZlcnNpb25zIGFuZCBhc3NvY2lhdGVkIGRhdGEgd2lsbCBiZSBkZWxldGVkLiBSZXN0aXR1dGlvbnMgYW5kIHByZXNlbnRhdGlvbnMgdXNpbmcgdGhpcyBkYXRhc2V0IHdpbGwgbm8gbG9uZ2VyIGRpc3BsYXkgdGhlIGNvcnJlc3BvbmRpbmcgZGF0YS4gRG8geW91IGNvbmZpcm0gdGhlIGRlbGV0aW9uPycsXG4gICAgICAgIHRpdGxlOiAnRGF0YXNldCcsXG4gICAgICAgIGlkOiAnSWQnLFxuICAgICAgICBuYW1lOiAnTmFtZScsXG4gICAgICAgIG9DbGFzczogJ0J1c2luZXNzIG1vZGVsJyxcbiAgICAgICAgdHlwZTogJ1R5cGUnLFxuICAgICAgICAnaXMtc2FtZS1uYW1lJzogJ1RoZSBuYW1lIG9mIHRoZSBkYXRhc2V0IGlzIGFscmVhZHkgdGFrZW4sIHBsZWFzZSB1c2UgYW5vdGhlciBvbmUnLFxuICAgICAgICBhZGQ6IHtcbiAgICAgICAgICB0aXRsZTogJ0NyZWF0ZSBhIG5ldyBkYXRhc2V0J1xuICAgICAgICB9LFxuICAgICAgICBlZGl0OiB7XG4gICAgICAgICAgdGl0bGU6ICdVcGRhdGUgZGF0YXNldCdcbiAgICAgICAgfSxcbiAgICAgICAgT1BFTjogJ09wZW4nLFxuICAgICAgICBDTE9TRUQ6ICdDbG9zZWQnLFxuICAgICAgICBNT0RJRklBQkxFOiAnTW9kaWZpYWJsZSdcbiAgICAgIH0sXG4gICAgICAnYWJhYy1ydWxlcyc6IHtcbiAgICAgICAgZGVsZXRlOiAnRGVsZXRlJyxcbiAgICAgICAgbWV0YWRhdGFVc2VyOiAnVXNlcnMgcHJvZmlsZScsXG4gICAgICAgIHRpdGxlOiB7XG4gICAgICAgICAgbGlzdDogJ0FiYWMgUnVsZXMnLFxuICAgICAgICAgIGFkZDogJ0NyZWF0ZSBuZXcgYWJhYyBydWxlJyxcbiAgICAgICAgICB2aWV3OiBcIkFiYWMgcnVsZSdzIGluZm9ybWF0aW9uXCIsXG4gICAgICAgICAgZWRpdDogJ0FiYWMgcnVsZSBlZGl0aW9uJ1xuICAgICAgICB9LFxuICAgICAgICBmb3JtOiB7XG4gICAgICAgICAgaWQ6ICdJRCcsXG4gICAgICAgICAgbmFtZTogJ05hbWUnLFxuICAgICAgICAgIGRlc2NyaXB0aW9uOiAnRGVzY3JpcHRpb24nLFxuICAgICAgICAgIHN0YXR1czogJ1N0YXR1cycsXG4gICAgICAgICAgc3RhdHVzQWN0aXZlOiAnQWN0aXZlJyxcbiAgICAgICAgICBzdGF0dXNJbmFjdGl2ZTogJ0luYWN0aXZlJyxcbiAgICAgICAgICBwcmVkaWNhdGU6ICdQcmVkaWNhdGUnLFxuICAgICAgICAgIHR5cGU6ICdUeXBlJyxcbiAgICAgICAgICB0eXBlTWV0YWRhdGE6ICdNZXRhZGF0YScsXG4gICAgICAgICAgdHlwZUF0dHJpYnV0ZTogJ0F0dHJpYnV0ZScsXG4gICAgICAgICAgdHlwZVNlbGVjdGVkOiBcIllvdSBjYW4ndCBjaGFuZ2UgdHlwZSB3aXRoIGN1cnJlbnQgY29uZGl0aW9uc1wiLFxuICAgICAgICAgIGFkZE1ldGFkYXRhOiAnQWRkIG1ldGFkYXRhIGNvbmRpdGlvbicsXG4gICAgICAgICAgYWRkQXR0cmlidXRlOiAnQWRkIGF0dHJpYnV0ZSBjb25kaXRpb24nLFxuICAgICAgICAgIGFkZEdyb3VwOiAnQWRkIGdyb3VwIGNvbmRpdGlvbicsXG4gICAgICAgICAgY2FuY2VsOiAnQ0FOQ0VMJyxcbiAgICAgICAgICB2YWxpZGF0ZTogJ1ZBTElEQVRFJ1xuICAgICAgICB9XG4gICAgICB9LFxuICAgICAgdXNlcjoge1xuICAgICAgICB0aXRsZTogJ1VzZXIgcHJvZmlsZScsXG4gICAgICAgIGFkZDogJ0NyZWF0ZSBuZXcgdXNlciBwcm9maWxlJyxcbiAgICAgICAgbGFiZWw6ICdOYW1lJyxcbiAgICAgICAgdHlwZTogJ1R5cGUnLFxuICAgICAgICBpbnZhbGlkOiAnRmllbGQgaXMgcmVxdWlyZWQnLFxuICAgICAgICBlZGl0OiAnRWRpdCB1c2VyIHByb2ZpbGUnXG4gICAgICB9LFxuICAgICAgZW52aXJvbm1lbnQ6IHtcbiAgICAgICAgbGlzdDogJ0V4ZWN1dGlvbiBjb250ZXh0cycsXG4gICAgICAgIGFkZDogJ0NyZWF0ZSBuZXcgZXhlY3V0aW9uIGNvbnRleHQnLFxuICAgICAgICBlZGl0OiAnRWRpdCBleGVjdXRpb24gY29udGV4dCcsXG4gICAgICAgIGluZm86IFwiRXhlY3V0aW9uIGNvbnRleHQncyBpbmZvcm1hdGlvblwiLFxuICAgICAgICBmb3JtYXRJbnQ6ICdWYWx1ZSBtdXN0IGJlIGFuIGludGVnZXInLFxuICAgICAgICBmb3JtYXREb3VibGU6IFwiVmFsdWUgbXVzdCBiZSBhbiBpbnRlZ2VyLCBzZXBhcmF0b3IgbXVzdCBiZSAnLidcIixcbiAgICAgICAgZm9ybWF0TmFtZTogJ1RoZSBvbmx5IHNwZWNpYWwgY2hhcmFjdGVycyBhbGxvd2VkIGFyZTogWyAtIF8gXSAnLFxuICAgICAgICBuYW1lOiAnTmFtZScsXG4gICAgICAgIHR5cGU6ICdUeXBlJyxcbiAgICAgICAgdmFsdWU6ICdWYXJpYWJsZSB2YWx1ZSdcbiAgICAgIH0sXG4gICAgICBjbGFzc2VzOiB7XG4gICAgICAgIGxpc3Q6ICdDbGFzc2VzJyxcbiAgICAgICAgbmFtZTogJ05hbWUnLFxuICAgICAgICB0aXRsZTogJ0NsYXNzZSB7e2J1c2luZXNzIG1vZGVsfX0nLFxuICAgICAgICBpbWFnZTogJ0ltYWdlJyxcbiAgICAgICAgZm9ybWF0TmFtZTogJ1RoZSBvbmx5IGNoYXJhY3RlcnMgYWxsb3dlZCBhcmU6IFsgbG93ZXJjYXNlLCAtIF8gXSAnLFxuICAgICAgICBtb2RlbDogJ01vZGVsJyxcbiAgICAgICAgZGVzY3JpcHRpb246ICdEZXNjcmlwdGlvbicsXG4gICAgICAgIGxpbmVzOiAnTGluZXMnLFxuICAgICAgICBhZGQ6ICdDcmVhdGUgbmV3IGJ1c2luZXNzIG1vZGVsJyxcbiAgICAgICAgZWRpdDogJ01vZGlmeSBidXNpbmVzcyBtb2RlbCcsXG4gICAgICAgIHJlbmFtZTogJ1JlbmFtZSBidXNpbmVzcyBtb2RlbCcsXG4gICAgICAgIGFkZEF0dHI6ICdBdHRyaWJ1dGUnLFxuICAgICAgICBpbmZvQXR0cjogJ3t7YnVzaW5lc3MgbW9kZWx9fSBidXNpbmVzcyBtb2RlbCA+IEF0dHJpYnV0ZXMnLFxuICAgICAgICBpbmZvOiAnYnVzaW5lc3MgbW9kZWwgaW5mb3JtYXRpb24nLFxuICAgICAgICBydWxlczogJ1N5bWJvbCBkZWZpbml0aW9uIHJ1bGVzJyxcbiAgICAgICAgY29uZGl0aW9uOiAnVXNlZCBpZiBjb25kaXRpb24gdmVyaWZpZWQnLFxuICAgICAgICBhdHRyTmFtZTogJ0F0dHJpYnV0ZSB0byBjaGVjaycsXG4gICAgICAgIHZhbHVlOiAnQ29tcGFyaXNvbiB2YWx1ZScsXG4gICAgICAgIG9wZXJhdGlvbjogJ0NvbXBhcmlzb24gb3BlcmF0aW9uJyxcbiAgICAgICAgb3BlcmF0aW9uczoge1xuICAgICAgICAgIEVRVUFMUzogJ2lzIGVxdWFsJyxcbiAgICAgICAgICBHUkVBVEVSOiAnaXMgZ3JlYXRlcicsXG4gICAgICAgICAgR1JFQVRFUl9PUl9FUVVBTDogJ2lzIGdyZWF0ZXIgb3IgZXF1YWwnLFxuICAgICAgICAgIExPV0VSOiAnaXMgbG93ZXInLFxuICAgICAgICAgIExPV0VSX09SX0VRVUFMOiAnaXMgbG93ZXIgb3IgZXF1YWwnLFxuICAgICAgICAgIENPTlRBSU5TOiAnY29udGFpbnMgYXMgdGV4dCdcbiAgICAgICAgfSxcbiAgICAgICAgY3JlYXRlQ2xhc3NNb2RhbE1lc3NhZ2U6XG4gICAgICAgICAgJ0NyZWF0aW5nIGEgYnVzaW5lc3MgbW9kZWwgd2l0aG91dCBhdHRyaWJ1dGVzIGlzIGltcG9zc2libGUuIEFkZCBhbiBhdHRyaWJ1dGUgYmVmb3JlIGNyZWF0aW5nIHRoZSBidXNpbmVzcyBtb2RlbCwgd2l0aCBcIkFkZCBhdHRyaWJ1dGVcIiBidXR0b24uJyxcbiAgICAgICAgY3JlYXRlQ2xhc3NDb25maXJtTWVzc2FnZTogJ0NvbmZpcm0gYnVzaW5lc3MgbW9kZWwgY3JlYXRpb24nLFxuICAgICAgICBkZWxldGVDbGFzc0NvbmZpcm1NZXNzYWdlOiAnQ29uZmlybSBkZWxldGluZyB0aGUgc2VsZWN0ZWQgYnVzaW5lc3MgbW9kZWwnLFxuICAgICAgICBsaW5rZWRPYmplY3RzOiAnTGlua2VkIG9iamVjdHMnLFxuICAgICAgICB1c2VkRWxzZXdoZXJlOiBcIlVzZWQgYnkgb3RoZXIgdXNlcnMnIG9iamVjdHNcIixcbiAgICAgICAgYXNzb2NpYXRpb25zOiAnQXNzb2NpYXRpb25zJyxcbiAgICAgICAgdHlwZTogJ1R5cGUnLFxuICAgICAgICBhdHRyaWJ1dGVzOiB7XG4gICAgICAgICAgYWRkOiAnYnVzaW5lc3MgbW9kZWwgQWRkIGF0dHJpYnV0ZScsXG4gICAgICAgICAgZWRpdDogJ0VkaXQgYXR0cmlidXRlJyxcbiAgICAgICAgICBuYW1lOiAnQXR0cmlidXRlIG5hbWUnLFxuICAgICAgICAgIGluZm86ICdBdHRyaWJ1dGUgaW5mb3JtYXRpb24nLFxuICAgICAgICAgIGRlc2NyaXB0aW9uOiAnRGVzY3JpcHRpb24nLFxuICAgICAgICAgIGZpZWxkOiAnRmllbGQnLFxuICAgICAgICAgIGNhdGVnb3J5OiAnQ2F0ZWdvcnknLFxuICAgICAgICAgIG11bHRpVmFsdWVkOiAnTXVsdGkgdmFsdWVkJ1xuICAgICAgICB9LFxuICAgICAgICBjYXRlZ29yeToge1xuICAgICAgICAgIHNlbGVjdDogJ1NlbGVjdCBjYXRlZ29yeScsXG4gICAgICAgICAgc2VhcmNoT3JDcmVhdGU6ICdTZWFyY2ggZm9yIGV4aXN0aW5nIGNhdGVnb3J5IE9SIGNyZWF0ZSBhIG5ldyBvbmUnLFxuICAgICAgICAgIG5hbWU6ICdDYXRlZ29yeScsXG4gICAgICAgICAgc2VsZWN0SXQ6ICdTZWxlY3QgY2F0ZWdvcnknLFxuICAgICAgICAgIGNyZWF0ZTogJ0NyZWF0ZSBjYXRlZ29yeScsXG4gICAgICAgICAgYWRkOiAnZG9lcyBub3QgZXhpc3QuIDxicj5Zb3UgY2FuIGNyZWF0ZSBpdCBoZXJlLiA8YnI+SXQgd2lsbCBiZSBhdXRvbWF0aWNhbGx5IHNlbGVjdGVkIGFuZCBhZGRlZCB0byBjYXRlZ29yaWVzIGxpc3QuJ1xuICAgICAgICB9XG4gICAgICB9LFxuICAgICAgZmllbGRzOiB7XG4gICAgICAgIGFkZDogJ0FkZCBuZXcgZmllbGQnLFxuICAgICAgICBpbmZvOiAnRmllbGQgaW5mb3JtYXRpb24nLFxuICAgICAgICBsaXN0OiAnRmllbGRzJyxcbiAgICAgICAgZWRpdDogJ0VkaXQgZmllbGQnLFxuICAgICAgICBuYW1lOiAnTmFtZScsXG4gICAgICAgIGRlc2NyaXB0aW9uOiAnZGVzY3JpcHRpb24nLFxuICAgICAgICB0eXBlOiAnVGVjaG5pY2FsIHR5cGUnLFxuICAgICAgICBhdHRyaWJ1dGVzOiAnQXR0cmlidXRlIHByZXNlbmNlJyxcbiAgICAgICAgYXR0cmlidXRlc1RhYjogJ0F0dHJpYnV0ZXMnLFxuICAgICAgICBhdHRyaWJ1dGVOYW1lOiAnQXR0cmlidXRlIG5hbWUnLFxuICAgICAgICBjbGFzc05hbWU6ICdDbGFzcycsXG4gICAgICAgIGNvbmZpcm1GaWVsZERlbGV0aW9uOiAnQ29uZmlybSBkZWxldGluZyB0aGUgc2VsZWN0ZWQgZmllbGQnLFxuICAgICAgICBmaWVsZFR5cGU6IHtcbiAgICAgICAgICBpbnQ6ICdJbnRlZ2VyJyxcbiAgICAgICAgICBsb25nOiAnTG9uZyBudW1iZXInLFxuICAgICAgICAgIGRlY2ltYWw6ICdEb3VibGUgbnVtYmVyJyxcbiAgICAgICAgICBzdHJpbmc6ICdUZXh0JyxcbiAgICAgICAgICBrZXl3b3JkOiAnS2V5d29yZCcsXG4gICAgICAgICAgaW5zdGFudDogJ2RhdGUnLFxuICAgICAgICAgIHJhdzogJ1JhdycsXG4gICAgICAgICAgcG9pbnQ6ICdQb2ludCcsXG4gICAgICAgICAgbXVsdGlwb2ludDogJ011bHRpLXBvaW50cycsXG4gICAgICAgICAgbGluZTogJ0xpbmUnLFxuICAgICAgICAgIG11bHRpbGluZTogJ011bHRpLWxpbmVzJyxcbiAgICAgICAgICBwb2x5Z29uOiAnUG9seWdvbicsXG4gICAgICAgICAgbXVsdGlwb2x5Z29uOiAnTXVsdGktcG9seWdvbnMnLFxuICAgICAgICAgIGluZm9ybWF0aW9uOiB7XG4gICAgICAgICAgICBpbnQ6ICdBbGxvd3MgeW91IHRvIHN0b3JlIGludGVnZXIgbnVtZXJpYyBkYXRhIGxlc3MgdGhhbiAyXjMyJyxcbiAgICAgICAgICAgIGxvbmc6ICdBbGxvd3MgeW91IHRvIHN0b3JlIGludGVnZXIgbnVtZXJpYyBkYXRhIHRoYXQgY2FuIGV4Y2VlZCAyXjMyJyxcbiAgICAgICAgICAgIGRlY2ltYWw6ICdBbGxvd3MgeW91IHRvIHN0b3JlIG51bWVyaWMgZGF0YSB3aXRoIGRlY2ltYWwgcGxhY2VzJyxcbiAgICAgICAgICAgIHN0cmluZzpcbiAgICAgICAgICAgICAgJ0FsbG93cyB5b3UgdG8gc3RvcmUgZGF0YSBpbiBhbHBoYW51bWVyaWMgZm9ybWF0LiBUaGlzIGRhdGEgaXMgbm90IGluZGV4ZWQ6IGl0IGlzIHBvc3NpYmxlIHRvIHNlYXJjaCBvbiBpdCBidXQgbm8gYWdncmVnYXRpb24nLFxuICAgICAgICAgICAga2V5d29yZDpcbiAgICAgICAgICAgICAgJ0FsbG93cyB5b3UgdG8gc3RvcmUgZGF0YSBpbiBhbHBoYW51bWVyaWMgZm9ybWF0LiBUaGlzIGRhdGEgaXMgaW5kZXhlZDogaXQgaXMgcG9zc2libGUgdG8gc2VhcmNoIG9uIGl0IGFzIHdlbGwgYXMgYWdncmVnYXRpb25zLicsXG4gICAgICAgICAgICBpbnN0YW50OiAnQWxsb3dzIHlvdSB0byBzdG9yZSBhIGRhdGUnLFxuICAgICAgICAgICAgcmF3OiAnYWxsb3dzIHlvdSB0byBzdG9yZSBpbWFnZSBvciBmaWxlIHR5cGUgZGF0YScsXG4gICAgICAgICAgICBwb2ludDogJ0FsbG93cyB5b3UgdG8gc3RvcmUgZ2VvZ3JhcGhpYyBjb29yZGluYXRlcyBvZiBhbiBvYmplY3QgcmVwcmVzZW50ZWQgYnkgYSBwb2ludCAoZ2VvLWpzb24gZm9ybWF0KScsXG4gICAgICAgICAgICBtdWx0aXBvaW50OlxuICAgICAgICAgICAgICAnQWxsb3dzIHlvdSB0byBzdG9yZSBnZW9ncmFwaGljIGNvb3JkaW5hdGVzIG9mIGFuIG9iamVjdCBjb21wb3NlZCBvZiBzZXZlcmFsIHVuY29ubmVjdGVkIHBvaW50cyAoZ2VvLWpzb24gZm9ybWF0KScsXG4gICAgICAgICAgICBsaW5lOiAnQWxsb3dzIHlvdSB0byBzdG9yZSBnZW9ncmFwaGljIGNvb3JkaW5hdGVzIG9mIGFuIG9iamVjdCByZXByZXNlbnRlZCBhcyBhIGxpbmUgKGdlby1qc29uIGZvcm1hdCknLFxuICAgICAgICAgICAgbXVsdGlsaW5lOlxuICAgICAgICAgICAgICAnQWxsb3dzIHlvdSB0byBzdG9yZSBnZW9ncmFwaGljIGNvb3JkaW5hdGVzIG9mIGFuIG9iamVjdCByZXByZXNlbnRlZCB3aXRoIHNldmVyYWwgdW5jb25uZWN0ZWQgbGluZXMgKGxvbmdpdHVkZSBhbmQgbGF0aXR1ZGUgZ2VvLWpzb24gZm9ybWF0KScsXG4gICAgICAgICAgICBwb2x5Z29uOlxuICAgICAgICAgICAgICAnQWxsb3dzIHlvdSB0byBzdG9yZSBnZW9ncmFwaGljIGNvb3JkaW5hdGVzIG9mIGFuIG9iamVjdCByZXByZXNlbnRlZCBieSBhIHBvbHlnb24gKGdlby1qc29uIGZvcm1hdCknLFxuICAgICAgICAgICAgbXVsdGlwb2x5Z29uOlxuICAgICAgICAgICAgICAnQWxsb3dzIHlvdSB0byBzdG9yZSBnZW9ncmFwaGljIGNvb3JkaW5hdGVzIG9mIGFuIG9iamVjdCByZXByZXNlbnRlZCBieSBzZXZlcmFsIHBvbHlnb25zIG5lc3RlZCBvciBub3QgKGdlby1qc29uIGZvcm1hdCknXG4gICAgICAgICAgfVxuICAgICAgICB9LFxuICAgICAgICByYXdNZXRob2RzOiB7XG4gICAgICAgICAgaHR0cDogJ0Zyb20gZXh0ZXJuYWwgdXJsJyxcbiAgICAgICAgICB1cGxvYWQ6ICdVcGxvYWQgZnJvbSBteSBjb21wdXRlcidcbiAgICAgICAgfVxuICAgICAgfSxcbiAgICAgIHVzZXJJbmZvOiB7XG4gICAgICAgIGxpc3Q6ICdVc2VycycsXG4gICAgICAgIGluZm86ICdVc2VyIGluZm9ybWF0aW9uJyxcbiAgICAgICAgcHJvZmlsZTogJ1Byb2ZpbGUnLFxuICAgICAgICBhZGRNZXRhZGF0YTogJ0FkZCcsXG4gICAgICAgIGVkaXRNZXRhZGF0YTogJ0VkaXQgbWV0YWRhdGEnLFxuICAgICAgICBuYW1lOiAnR2l2ZW4gbmFtZScsXG4gICAgICAgIGZhbWlseU5hbWU6ICdGYW1pbHkgbmFtZScsXG4gICAgICAgIGVtYWlsOiAnRW1haWwgYWRyZXNzJyxcbiAgICAgICAgbWV0YWRhdGE6ICdNZXRhZGF0YScsXG4gICAgICAgIHJvbGVzOiAnIFJvbGVzJ1xuICAgICAgfSxcbiAgICAgIHJlbGF0aW9uVHlwZXM6IHtcbiAgICAgICAgbGlzdDogJ1JlbGF0aW9ucyB0eXBlcycsXG4gICAgICAgIGluZm86ICdSZWxhdGlvbiB0eXBlIGluZm9ybWF0aW9uJyxcbiAgICAgICAgYWRkOiAnQWRkIHJlbGF0aW9uIHR5cGUnLFxuICAgICAgICBlZGl0OiAnRWRpdCByZWxhdGlvbiB0eXBlJyxcbiAgICAgICAgbmFtZTogJ05hbWUnLFxuICAgICAgICBuYlJlbGF0aW9uOiAnTnVtYmVyIG9mIHR5cGUgcmVsYXRpb24nLFxuICAgICAgICBuYkxpbms6ICdOdW1iZXIgb2YgbGlua3MgdGhhdCB1c2UgdGhpcyByZWxhdGlvbiB0eXBlJyxcbiAgICAgICAgZGF0ZU1vZGlmaWNhdGlvbjogJ01vZGlmaWNhdGlvbiBkYXRlJyxcbiAgICAgICAgZGVsZXRhYmxlOiAnQ2FuIGJlIGRlbGV0ZWQnLFxuICAgICAgICBkZWxldGVNb2RhbE1lc3NhZ2U6ICdUaGlzIHJlbGF0aW9uIHR5cGUgY2FuIGJlIGRlbGV0ZWQgYmVjYXVzZSB1c2VkLidcbiAgICAgIH0sXG4gICAgICBsaW5rczoge1xuICAgICAgICBsaXN0OiAnTGlua3MgYmV0d2VlbiBhdHRyaWJ1dGVzJyxcbiAgICAgICAgYWRkOiAnQ3JlYXRlIGEgbGluayBiZXR3ZWVuIGF0dHJpYnV0ZXMnLFxuICAgICAgICBjbGFzc1NvdXJjZTogJ1NvdXJjZSBidXNpbmVzcyBtb2RlbCcsXG4gICAgICAgIGF0dHJpYnV0ZVNvdXJjZTogJ1NvdXJjZSBhdHRyaWJ1dGUnLFxuICAgICAgICBjbGFzc0Rlc3RpbmF0aW9uOiAnRGVzdGluYXRpb24gYnVzaW5lc3MgbW9kZWwnLFxuICAgICAgICBhdHRyaWJ1dGVEZXN0aW5hdGlvbjogJ0Rlc3RpbmF0aW9uIGF0dHJpYnV0ZScsXG4gICAgICAgIHJlbGF0aW9uVHlwZTogJ1JlbGF0aW9uIHR5cGUnLFxuICAgICAgICBzZWxlY3RSZWxhdGlvblR5cGU6ICdTZWxlY3QgcmVsYXRpb24gdHlwZSdcbiAgICAgIH0sXG4gICAgICBhc3NvY2lhdGlvbjoge1xuICAgICAgICBBQkFDOiAnQUJBQyBSdWxlJyxcbiAgICAgICAgTElOSzogJ1JlbGF0aW9uJyxcbiAgICAgICAgTkFNRURfUVVFUlk6ICdOYW1lZCBxdWVyeScsXG4gICAgICAgIFdJREdFVDogJ1dpZGdldCcsXG4gICAgICAgIERBVEFTRVQ6ICdEYXRhc2V0JyxcbiAgICAgICAgT0NMQVNTOiAnRGF0YSBtb2RlbCcsXG4gICAgICAgIERBU0hCT0FSRDogJ0Rhc2hib2FyZCcsXG4gICAgICAgIEZJRUxEOiAnRGF0YSB0eXBlJ1xuICAgICAgfSxcbiAgICAgIHN0b3JhZ2U6IHtcbiAgICAgICAgbGFiZWw6ICdCYXNlIGRlIHN0b2NrYWdlJyxcbiAgICAgICAgZGVzY3JpcHRpb246IHtcbiAgICAgICAgICBQT1NUR0lTOlxuICAgICAgICAgICAgJ1JlY29tbWVuZGVkIGZvciBzdG9yYWdlIG9mIGNvbXBsZXggZ2VvZ3JhcGhpY2FsIGRhdGEgb3IgZm9yIGNvb3JkaW5hdGUgc3lzdGVtcyBkaWZmZXJlbnQgZnJvbSBXR1MgODQuIFJlY29tbWVuZGVkIGZvciBzdG9yaW5nIGNsYXNzZXMgd2l0aCBsb3cgZXN0aW1hdGVkIGRhdGEgdm9sdW1lLicsXG4gICAgICAgICAgRUxBU1RJQzpcbiAgICAgICAgICAgICdSZWNvbW1lbmRlZCBpbiBjYXNlIG9mIGhpZ2ggZGF0YSB2b2x1bWUgZXhwZWN0ZWQgZm9yIHRoZSBjbGFzcy4gSWYgeW91IHdhbnQgdG8gc3RvcmUgZ2VvZ3JhcGhpY2FsIGRhdGEgaW4gdGhpcyBjbGFzcywgc2ltcGxlIGZvcm1zIGhhdmUgdG8gYmUgdXNlZCBhbmQgdGhlIHJlZmVyZW5jZSBjb29yZGluYXRlIHN5c3RlbSBtdXN0IGJlIFdHUyA4NC4gVGhpcyBzdG9yYWdlIHN5c3RlbSBpcyBob3Jpem9udGFsbHkgc2NhbGFibGUuJ1xuICAgICAgICB9LFxuICAgICAgICBvcHRpb25zOiB7XG4gICAgICAgICAgUE9TVEdJUzogJ1Bvc3RHSVMnLFxuICAgICAgICAgIEVMQVNUSUM6ICdFbGFzdGljU2VhcmNoJ1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfSxcbiAgICB0b29sdGlwOiB7XG4gICAgICBkZWZhdWx0OiAnRGVmYXVsdCB0b29sdGlwJyxcbiAgICAgIGF0dHJpYnV0ZTogJ0F0dHJpYnV0ZXMgdG9vbHRpcCcsXG4gICAgICBjbHVzdGVyOiAnQ2x1c3RlciB0b29sdGlwIChncmFwaHMpJyxcbiAgICAgIGxpbms6ICdMaW5rIHRvb2x0aXAgKGdyYXBocyknLFxuICAgICAgbm9uZTogJ05vIHRvb2x0aXAnXG4gICAgfVxuICB9XG59O1xuIl19
|
|
367
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW4udHJhbnNsYXRpb25zLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvcHJvdm9seS9kYXNoYm9hcmQvYWRtaW4vaTE4bi9lbi50cmFuc2xhdGlvbnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxDQUFDLE1BQU0sY0FBYyxHQUFHO0lBQzVCLE1BQU0sRUFBRTtRQUNOLEtBQUssRUFBRTtZQUNMLEtBQUssRUFBRSxnQkFBZ0I7WUFDdkIsZUFBZSxFQUFFLDRCQUE0QjtZQUM3QyxjQUFjLEVBQUUsYUFBYTtZQUM3QixXQUFXLEVBQUUsT0FBTztZQUNwQixJQUFJLEVBQUUsTUFBTTtZQUNaLE1BQU0sRUFBRSxRQUFRO1lBQ2hCLE1BQU0sRUFBRSxRQUFRO1lBQ2hCLEdBQUcsRUFBRSxLQUFLO1lBQ1YsUUFBUSxFQUFFLFVBQVU7WUFDcEIsUUFBUSxFQUFFLG1CQUFtQjtZQUM3QixZQUFZLEVBQUUsZUFBZTtZQUM3QixNQUFNLEVBQUUsUUFBUTtZQUNoQixNQUFNLEVBQUUsZUFBZTtZQUN2QixNQUFNLEVBQUUsUUFBUTtZQUNoQixJQUFJLEVBQUUsTUFBTTtZQUNaLElBQUksRUFBRSxNQUFNO1lBQ1osVUFBVSxFQUFFLFlBQVk7WUFDeEIsT0FBTyxFQUFFLFNBQVM7WUFDbEIsUUFBUSxFQUFFLFVBQVU7WUFDcEIsUUFBUSxFQUFFLHdCQUF3QjtZQUNsQyxNQUFNLEVBQUUsMEJBQTBCO1lBQ2xDLFNBQVMsRUFBRSwyQ0FBMkM7WUFDdEQsU0FBUyxFQUFFLHVDQUF1QztZQUNsRCxZQUFZLEVBQUUsaURBQWlEO1lBQy9ELElBQUksRUFBRSxlQUFlO1lBQ3JCLFdBQVcsRUFBRSw0REFBNEQ7WUFDekUsZ0JBQWdCLEVBQUUsb0JBQW9CO1lBQ3RDLElBQUksRUFBRSxZQUFZO1lBQ2xCLDZCQUE2QixFQUMzQix5R0FBeUc7WUFDM0csUUFBUSxFQUFFO2dCQUNSLElBQUksRUFBRSxXQUFXO2dC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QixPQUFPLEVBQUUsU0FBUztnQkFDbEIsTUFBTSxFQUFFLFlBQVk7Z0JBQ3BCLFNBQVMsRUFBRSxXQUFXO2dCQUN0QixLQUFLLEVBQUUsV0FBVzthQUNuQjtZQUNELE9BQU8sRUFBRTtnQkFDUCxLQUFLLEVBQUUsa0JBQWtCO2dCQUN6QixXQUFXLEVBQUU7b0JBQ1gsT0FBTyxFQUNMLHVLQUF1SztvQkFDekssT0FBTyxFQUNMLHNQQUFzUDtpQkFDelA7Z0JBQ0QsT0FBTyxFQUFFO29CQUNQLE9BQU8sRUFBRSxTQUFTO29CQUNsQixPQUFPLEVBQUUsZUFBZTtpQkFDekI7YUFDRjtTQUNGO1FBQ0QsT0FBTyxFQUFFO1lBQ1AsT0FBTyxFQUFFLGlCQUFpQjtZQUMxQixTQUFTLEVBQUUsb0JBQW9CO1lBQy9CLE9BQU8sRUFBRSwwQkFBMEI7WUFDbkMsSUFBSSxFQUFFLHVCQUF1QjtZQUM3QixJQUFJLEVBQUUsWUFBWTtTQUNuQjtLQUNGO0NBQ0YsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBjb25zdCBlblRyYW5zbGF0aW9ucyA9IHtcbiAgJ0BwcnknOiB7XG4gICAgYWRtaW46IHtcbiAgICAgIHRpdGxlOiAnQWRtaW5pc3RyYXRpb24nLFxuICAgICAgdGl0bGVJbmRpY2F0aW9uOiAnQ2xvc2UgQWRtaW5pc3RyYXRpb24gbWVudSAnLFxuICAgICAgaW5mb01vZGFsVGl0bGU6ICdJbmZvcm1hdGlvbicsXG4gICAgICBjbG9zZU1vZGFsZTogJ0Nsb3NlJyxcbiAgICAgIGVkaXQ6ICdFZGl0JyxcbiAgICAgIHJlbmFtZTogJ1JlbmFtZScsXG4gICAgICBkZWxldGU6ICdEZWxldGUnLFxuICAgICAgYWRkOiAnTmV3JyxcbiAgICAgIHZhbGlkYXRlOiAnVmFsaWRhdGUnLFxuICAgICAgYWRkQ2xhc3M6ICdWYWxpZGF0ZSBjcmVhdGlvbicsXG4gICAgICBhZGRBdHRyaWJ1dGU6ICdBZGQgYXR0cmlidXRlJyxcbiAgICAgIGNyZWF0ZTogJ0NyZWF0ZScsXG4gICAgICB1cGxvYWQ6ICdBZGQgYSBwaWN0dXJlJyxcbiAgICAgIGNhbmNlbDogJ0NhbmNlbCcsXG4gICAgICBiYWNrOiAnQmFjaycsXG4gICAgICBuZXh0OiAnTmV4dCcsXG4gICAgICBwcm9wZXJ0aWVzOiAnUHJvcGVydGllcycsXG4gICAgICBkZXRhaWxzOiAnRGV0YWlscycsXG4gICAgICBhY3Rpdml0eTogJ0FjdGl2aXR5JyxcbiAgICAgIHJlcXVpcmVkOiAnVGhpcyBmaWVsZCBpcyByZXF1aXJlZCcsXG4gICAgICBleGlzdHM6ICdUaGlzIG5hbWUgYWxyZWFkeSBleGlzdHMnLFxuICAgICAgbWluTGVuZ3RoOiAnVGhlIG1pbmltdW0gbnVtYmVyIG9mIGNoYXJhY3RlcnM6IHt7bGVufX0nLFxuICAgICAgbWF4TGVuZ3RoOiAnTnVtYmVyIG9mIGNoYXJhY3RlcnMgYWxsb3dlZDoge3tsZW59fScsXG4gICAgICBub1doaXRlc3BhY2U6IFwiVGhlIHZhbHVlIGNhbid0IHN0YXJ0IG9yIGVuZCB3aXRoIGEgYmxhbmsgc3BhY2VcIixcbiAgICAgIHJ1bGU6ICdSdWxlIG7CsHt7aWR9fScsXG4gICAgICBkZWZhdWx0UnVsZTogJ0RlZmF1bHQgUnVsZSAoYXBwbGllcyBvbmx5IGlmIG5vIG90aGVyIHJ1bGVzIGFyZSB2ZXJpZmllZCknLFxuICAgICAgZGlzcGxheU1vZGVJbWFnZTogJ0ltYWdlIGRpc3BsYXkgbW9kZScsXG4gICAgICBzaXplOiAnSW1hZ2Ugc2l6ZScsXG4gICAgICBkZWxldGVBdHRyaWJ1dGVDb25maXJtTWVzc2FnZTpcbiAgICAgICAgJ1RoaXMgYXR0cmlidXRlIHdpbGwgbm8gbG9uZ2VyIGJlIHZpc2libGUgZm9yIHRoZSBhc3NvY2lhdGVkIGRhdGEuIEFyZSB5b3Ugc3VyZSB5b3Ugd2FudCB0byBkZWxldGUgdGhpcz8nLFxuICAgICAgcG9zaXRpb246IHtcbiAgICAgICAgRlVMTDogJ0Z1bGwgaWNvbicsXG4gICAgICAgIFRPUF9MRUZUOiAnVG9wIGxlZnQnLFxuICAgICAgICBUT1BfUklHSFQ6ICdUb3AgUmlnaHQnLFxuICAgICAgICBCT1RUT01fTEVGVDogJ0JvdHRvbSBsZWZ0JyxcbiAgICAgICAgQk9UVE9NX1JJR0hUOiAnQm90dG9tIHJpZ2h0J1xuICAgICAgfSxcbiAgICAgIGN1c3RvbWl6ZToge1xuICAgICAgICB0aXRsZTogJ0N1c3RvbWl6ZScsXG4gICAgICAgIHRlbXBsYXRlOiAnVG9vbHRpcCAoTWFwICYgUmVsYXRpb25zKScsXG4gICAgICAgIHVwZGF0ZTogJ1VwZGF0ZSB0b29sdGlwJyxcbiAgICAgICAgYWR2YW5jZWQ6ICdBZHZhbmNlZCBtb2RlJyxcbiAgICAgICAgbmFtZTogJ2J1c2luZXNzIG1vZGVsJyxcbiAgICAgICAgdGVjaG5pY2FsSWQ6ICdUZWNobmljYWwgSWQnLFxuICAgICAgICB0eXBlOiAnQ2hvb3NlIHdoaWNoIGtpbmQgb2YgdG9vbHRpcCB0byB1c2UnLFxuICAgICAgICBzaW1wbGlmaWVkOiAnQ2hvb3NlIHdoaWNoIGF0dHJpYnV0ZXMgdG8gZGlzcGxheScsXG4gICAgICAgIGV4ZW1wbGU6ICd7e2V4cHJ9fSB2YWx1ZScsXG4gICAgICAgIHRhYmxlOiAnVGFibGUgZGVmYXVsdCBhdHRyaWJ1dGVzJyxcbiAgICAgICAgdGlsZTogJ1RpbGUgZGVmYXVsdCBhdHRyaWJ1dGVzJyxcbiAgICAgICAgdGlsZUhpbnQ6ICdPbmx5IGJldHdlZW4gMSBhbmQge3ttYXh9fSBhdHRyaWJ1dGVzIGNhbiBiZSBkaXNwbGF5ZWQgaW4gYSB0aWxlJyxcbiAgICAgICAgdGFibGVBdHRyczogJ0F0dHJpYnV0ZXMgaW4gYSB0YWJsZSBieSBkZWZhdWx0JyxcbiAgICAgICAgdGlsZUF0dHJzOiAnQXR0cmlidXRlcyBkaXNwbGF5ZWQgaW4gYSB0aWxlJyxcbiAgICAgICAgbm9UYWJsZUF0dHJzOiAnT3RoZXIgYXR0cmlidXRlcycsXG4gICAgICAgIG5vVGlsZUF0dHJzOiAnQXR0cmlidXRlcyBub3QgZGlzcGxheWVkJyxcbiAgICAgICAgdXBkYXRlVGFibGU6ICdVcGRhdGUgZGVmYXVsdCB0YWJsZSBhdHRyaWJ1dGVzJyxcbiAgICAgICAgdXBkYXRlVGlsZTogJ1VwZGF0ZSB0aWxlIGF0dHJpYnV0ZXMnLFxuICAgICAgICB1cGRhdGVJY29uczogJ1VwZGF0ZSBzeW1ib2xzIHJ1bGVzJ1xuICAgICAgfSxcbiAgICAgIHZhclR5cGU6IHtcbiAgICAgICAgaW50OiAnSW50ZWdlcicsXG4gICAgICAgIGRvdWJsZTogJ0RvdWJsZScsXG4gICAgICAgIHN0cmluZzogJ1RleHQnLFxuICAgICAgICB1dWlkOiAnVXVpZCcsXG4gICAgICAgIGRhdGU6ICdEYXRlJyxcbiAgICAgICAgbGlzdDogJ1ZhbHVlIGxpc3QnXG4gICAgICB9LFxuICAgICAgbWVudXM6IHtcbiAgICAgICAgZW52aXJvbm1lbnQ6ICdFeGVjdXRpb24gY29udGV4dHMnLFxuICAgICAgICB1c2VyOiAnVXNlcnMnLFxuICAgICAgICAnbWV0YWRhdGEtdXNlcic6ICdVc2VyIHByb2ZpbGUnLFxuICAgICAgICAnYWJhYy1ydWxlcyc6ICdBQkFDIFJ1bGVzJyxcbiAgICAgICAgJ21ldGFkYXRhLXJ1bGVzJzogJ1J1bGVzIG1ldGFkYXRhJyxcbiAgICAgICAgZGF0YXNldDogJ0RhdGFzZXRzJyxcbiAgICAgICAgY2xhc3NlczogJ0NsYXNzZXMnLFxuICAgICAgICBwcmVkaWNhdGVzOiAnUHJlZGljYXRlcycsXG4gICAgICAgIG1ldGFkYXRhOiAnTWV0YWRhdGEnLFxuICAgICAgICBmaWVsZHM6ICdGaWVsZHMnLFxuICAgICAgICAncmVsYXRpb24tdHlwZXMnOiAnUmVsYXRpb24gdHlwZXMnLFxuICAgICAgICBsaW5rczogJ0xpbmtzIGJldHdlZW4gYXR0cmlidXRlcycsXG4gICAgICAgIG1vZGVsOiAnRGF0YSBtb2RlbCcsXG4gICAgICAgIGFjY2VzczogJ0RhdGEgYWNjZXNzJ1xuICAgICAgfSxcbiAgICAgIHByZWRpY2F0ZXM6IHtcbiAgICAgICAgbGlzdDogJ1ByZWRpY2F0ZXMnLFxuICAgICAgICBhZGQ6ICdDcmVhdGUgbmV3IHByZWRpY2F0ZScsXG4gICAgICAgIGVkaXQ6ICdFZGl0IHVuIHByZWRpY2F0ZScsXG4gICAgICAgIGluZm86IFwiUHJlZGljYXRlJ3MgaW5mb3JtYXRpb25cIixcbiAgICAgICAgbnVtOiAnSWQuJyxcbiAgICAgICAgbmFtZTogJ05hbWUnLFxuICAgICAgICB2YWx1ZTogJ1RyaWdnZXIgY29uZGl0aW9uYWwgZXhwcmVzc2lvbicsXG4gICAgICAgIHZhbGlkRWRpdDogJ1ZhbGlkYXRpb24gbW9kaWZpY2F0aW9uJyxcbiAgICAgICAgdmFsaWRFZGl0TWVzc2FnZTogJ1RoaXMgcHJlZGljYXRlcyBpcyB1c2VkIGluIHt7dXNlZH19IHJ1bGVzLiBSZWFsbHkgdXBkYXRlIHByZWRpY2F0ZSA/J1xuICAgICAgfSxcbiAgICAgIG1ldGFkYXRhOiB7XG4gICAgICAgIHRpdGxlOiAnTWV0YWRhdGEnLFxuICAgICAgICBhZGQ6ICdDcmVhdGUgbmV3IG1ldGFkYXRhJyxcbiAgICAgICAgZWRpdDogJ01vZGlmeSBtZXRhZGF0YScsXG4gICAgICAgIGRldGFpbHM6ICdNZXRhZGF0YSBkZXRhaWxzJyxcbiAgICAgICAgZGV0YWlsc1VzZXI6ICdVc2VyIHByb2ZpbGUgZGV0YWlsJyxcbiAgICAgICAgaWQ6ICdJRCcsXG4gICAgICAgIGxhYmVsOiAnTmFtZScsXG4gICAgICAgIHR5cGU6ICdUeXBlJyxcbiAgICAgICAgZGVzY3JpcHRpb246ICdEZXNjcmlwdGlvbicsXG4gICAgICAgIGludmFsaWQ6ICdGaWVsZCBpcyByZXF1aXJlZCcsXG4gICAgICAgIGxpc3RMYWJlbDogJ1ZhbHVlIG5hbWUnLFxuICAgICAgICBhZGRWYWx1ZTogJ0FkZCBuZXcgdmFsdWUnLFxuICAgICAgICByZW1vdmVWYWx1ZTogJ1JlbW92ZSB2YWx1ZScsXG4gICAgICAgIHN5c3RlbTogJ1N5c3RlbSBtZXRhZGF0YSdcbiAgICAgIH0sXG4gICAgICAnbWV0YWRhdGEtcnVsZXMnOiB7XG4gICAgICAgIHRpdGxlOiAnTWV0YWRhdGEgUnVsZXMnLFxuICAgICAgICBsYWJlbDogJ05hbWUnLFxuICAgICAgICAnaXMtc2FtZS1uYW1lJzogJ1RoZSBuYW1lIG9mIHRoZSBydWxlIGlzIGFscmVhZHkgdGFrZW4gZm9yIGFub3RoZXIgcnVsZSwgcGxlYXNlIHVzZSBhbm90aGVyIG9uZScsXG4gICAgICAgICdpcy1zYW1lLXJ1bGVzJzogJ1RoZSBzYW1lIHJ1bGUgaGFzIGFscmVhZHkgYmVlbiBjb25maWd1cmVkIGFuZCBzYXZlZCwgeW91IGNhbiB1c2UgaXQnLFxuICAgICAgICAnbWV0YWRhdGEtaXRlbSc6IHtcbiAgICAgICAgICBuYW1lOiAnVGFyZ2V0IG1ldGFkYXRhJyxcbiAgICAgICAgICBkZXNjcmlwdGlvbjogJ1RhcmdldCBtZXRhZGF0YSBkZXNjcmlwdGlvbicsXG4gICAgICAgICAgdHlwZTogJ01ldGFkYXRhIHR5cGUgdGFyZ2V0J1xuICAgICAgICB9LFxuICAgICAgICAnbWV0YWRhdGEtdXNlcic6IHtcbiAgICAgICAgICBuYW1lOiAnU291cmNlIHVzZXIgcHJvZmlsZScsXG4gICAgICAgICAgZGVzY3JpcHRpb246ICdEZXNjcmlwdGlvbiBvZiBzb3VyY2UgdXNlciBwcm9maWxlJyxcbiAgICAgICAgICB0eXBlOiAnVHlwZSBvZiBzb3VyY2UgdXNlciBwcm9maWxlJ1xuICAgICAgICB9LFxuICAgICAgICBlZGl0OiB7XG4gICAgICAgICAgdGl0bGU6ICdNb2RpZnkgbWV0YWRhdGEgcnVsZSdcbiAgICAgICAgfSxcbiAgICAgICAgYWRkOiB7XG4gICAgICAgICAgdGl0bGU6ICdDcmVhdGUgbmV3IG1ldGFkYXRhIHJ1bGUnXG4gICAgICAgIH1cbiAgICAgIH0sXG4gICAgICBkYXRhc2V0OiB7XG4gICAgICAgIGRlbGV0ZTpcbiAgICAgICAgICAnQWxsIHZlcnNpb25zIGFuZCBhc3NvY2lhdGVkIGRhdGEgd2lsbCBiZSBkZWxldGVkLiBSZXN0aXR1dGlvbnMgYW5kIHByZXNlbnRhdGlvbnMgdXNpbmcgdGhpcyBkYXRhc2V0IHdpbGwgbm8gbG9uZ2VyIGRpc3BsYXkgdGhlIGNvcnJlc3BvbmRpbmcgZGF0YS4gRG8geW91IGNvbmZpcm0gdGhlIGRlbGV0aW9uPycsXG4gICAgICAgIHRpdGxlOiAnRGF0YXNldCcsXG4gICAgICAgIGlkOiAnSWQnLFxuICAgICAgICBuYW1lOiAnTmFtZScsXG4gICAgICAgIG9DbGFzczogJ0J1c2luZXNzIG1vZGVsJyxcbiAgICAgICAgdHlwZTogJ1R5cGUnLFxuICAgICAgICAnaXMtc2FtZS1uYW1lJzogJ1RoZSBuYW1lIG9mIHRoZSBkYXRhc2V0IGlzIGFscmVhZHkgdGFrZW4sIHBsZWFzZSB1c2UgYW5vdGhlciBvbmUnLFxuICAgICAgICBhZGQ6IHtcbiAgICAgICAgICB0aXRsZTogJ0NyZWF0ZSBhIG5ldyBkYXRhc2V0J1xuICAgICAgICB9LFxuICAgICAgICBlZGl0OiB7XG4gICAgICAgICAgdGl0bGU6ICdVcGRhdGUgZGF0YXNldCdcbiAgICAgICAgfSxcbiAgICAgICAgT1BFTjogJ09wZW4nLFxuICAgICAgICBDTE9TRUQ6ICdDbG9zZWQnLFxuICAgICAgICBNT0RJRklBQkxFOiAnTW9kaWZpYWJsZSdcbiAgICAgIH0sXG4gICAgICAnYWJhYy1ydWxlcyc6IHtcbiAgICAgICAgZGVsZXRlOiAnRGVsZXRlJyxcbiAgICAgICAgbWV0YWRhdGFVc2VyOiAnVXNlcnMgcHJvZmlsZScsXG4gICAgICAgIHRpdGxlOiB7XG4gICAgICAgICAgbGlzdDogJ0FiYWMgUnVsZXMnLFxuICAgICAgICAgIGFkZDogJ0NyZWF0ZSBuZXcgYWJhYyBydWxlJyxcbiAgICAgICAgICB2aWV3OiBcIkFiYWMgcnVsZSdzIGluZm9ybWF0aW9uXCIsXG4gICAgICAgICAgZWRpdDogJ0FiYWMgcnVsZSBlZGl0aW9uJ1xuICAgICAgICB9LFxuICAgICAgICBmb3JtOiB7XG4gICAgICAgICAgaWQ6ICdJRCcsXG4gICAgICAgICAgbmFtZTogJ05hbWUnLFxuICAgICAgICAgIGRlc2NyaXB0aW9uOiAnRGVzY3JpcHRpb24nLFxuICAgICAgICAgIHN0YXR1czogJ1N0YXR1cycsXG4gICAgICAgICAgc3RhdHVzQWN0aXZlOiAnQWN0aXZlJyxcbiAgICAgICAgICBzdGF0dXNJbmFjdGl2ZTogJ0luYWN0aXZlJyxcbiAgICAgICAgICBwcmVkaWNhdGU6ICdQcmVkaWNhdGUnLFxuICAgICAgICAgIHR5cGU6ICdUeXBlJyxcbiAgICAgICAgICB0eXBlTWV0YWRhdGE6ICdNZXRhZGF0YScsXG4gICAgICAgICAgdHlwZUF0dHJpYnV0ZTogJ0F0dHJpYnV0ZScsXG4gICAgICAgICAgdHlwZVNlbGVjdGVkOiBcIllvdSBjYW4ndCBjaGFuZ2UgdHlwZSB3aXRoIGN1cnJlbnQgY29uZGl0aW9uc1wiLFxuICAgICAgICAgIGFkZE1ldGFkYXRhOiAnQWRkIG1ldGFkYXRhIGNvbmRpdGlvbicsXG4gICAgICAgICAgYWRkQXR0cmlidXRlOiAnQWRkIGF0dHJpYnV0ZSBjb25kaXRpb24nLFxuICAgICAgICAgIGFkZEdyb3VwOiAnQWRkIGdyb3VwIGNvbmRpdGlvbicsXG4gICAgICAgICAgY2FuY2VsOiAnQ0FOQ0VMJyxcbiAgICAgICAgICB2YWxpZGF0ZTogJ1ZBTElEQVRFJ1xuICAgICAgICB9XG4gICAgICB9LFxuICAgICAgdXNlcjoge1xuICAgICAgICB0aXRsZTogJ1VzZXIgcHJvZmlsZScsXG4gICAgICAgIGFkZDogJ0NyZWF0ZSBuZXcgdXNlciBwcm9maWxlJyxcbiAgICAgICAgbGFiZWw6ICdOYW1lJyxcbiAgICAgICAgdHlwZTogJ1R5cGUnLFxuICAgICAgICBpbnZhbGlkOiAnRmllbGQgaXMgcmVxdWlyZWQnLFxuICAgICAgICBlZGl0OiAnRWRpdCB1c2VyIHByb2ZpbGUnXG4gICAgICB9LFxuICAgICAgZW52aXJvbm1lbnQ6IHtcbiAgICAgICAgbGlzdDogJ0V4ZWN1dGlvbiBjb250ZXh0cycsXG4gICAgICAgIGFkZDogJ0NyZWF0ZSBuZXcgZXhlY3V0aW9uIGNvbnRleHQnLFxuICAgICAgICBlZGl0OiAnRWRpdCBleGVjdXRpb24gY29udGV4dCcsXG4gICAgICAgIGluZm86IFwiRXhlY3V0aW9uIGNvbnRleHQncyBpbmZvcm1hdGlvblwiLFxuICAgICAgICBmb3JtYXRJbnQ6ICdWYWx1ZSBtdXN0IGJlIGFuIGludGVnZXInLFxuICAgICAgICBmb3JtYXREb3VibGU6IFwiVmFsdWUgbXVzdCBiZSBhbiBpbnRlZ2VyLCBzZXBhcmF0b3IgbXVzdCBiZSAnLidcIixcbiAgICAgICAgZm9ybWF0TmFtZTogJ1RoZSBvbmx5IHNwZWNpYWwgY2hhcmFjdGVycyBhbGxvd2VkIGFyZTogWyAtIF8gXSAnLFxuICAgICAgICBuYW1lOiAnTmFtZScsXG4gICAgICAgIHR5cGU6ICdUeXBlJyxcbiAgICAgICAgdmFsdWU6ICdWYXJpYWJsZSB2YWx1ZSdcbiAgICAgIH0sXG4gICAgICBjbGFzc2VzOiB7XG4gICAgICAgIGxpc3Q6ICdDbGFzc2VzJyxcbiAgICAgICAgbmFtZTogJ05hbWUnLFxuICAgICAgICB0aXRsZTogJ0NsYXNzZSB7e2J1c2luZXNzIG1vZGVsfX0nLFxuICAgICAgICBpbWFnZTogJ0ltYWdlJyxcbiAgICAgICAgZm9ybWF0TmFtZTogJ1RoZSBvbmx5IGNoYXJhY3RlcnMgYWxsb3dlZCBhcmU6IFsgbG93ZXJjYXNlLCAtIF8gXSAnLFxuICAgICAgICBtb2RlbDogJ01vZGVsJyxcbiAgICAgICAgZGVzY3JpcHRpb246ICdEZXNjcmlwdGlvbicsXG4gICAgICAgIGxpbmVzOiAnTGluZXMnLFxuICAgICAgICBhZGQ6ICdDcmVhdGUgbmV3IGJ1c2luZXNzIG1vZGVsJyxcbiAgICAgICAgZWRpdDogJ01vZGlmeSBidXNpbmVzcyBtb2RlbCcsXG4gICAgICAgIHJlbmFtZTogJ1JlbmFtZSBidXNpbmVzcyBtb2RlbCcsXG4gICAgICAgIGFkZEF0dHI6ICdBdHRyaWJ1dGUnLFxuICAgICAgICBpbmZvQXR0cjogJ3t7YnVzaW5lc3MgbW9kZWx9fSBidXNpbmVzcyBtb2RlbCA+IEF0dHJpYnV0ZXMnLFxuICAgICAgICBpbmZvOiAnYnVzaW5lc3MgbW9kZWwgaW5mb3JtYXRpb24nLFxuICAgICAgICBydWxlczogJ1N5bWJvbCBkZWZpbml0aW9uIHJ1bGVzJyxcbiAgICAgICAgY29uZGl0aW9uOiAnVXNlZCBpZiBjb25kaXRpb24gdmVyaWZpZWQnLFxuICAgICAgICBhdHRyTmFtZTogJ0F0dHJpYnV0ZSB0byBjaGVjaycsXG4gICAgICAgIHZhbHVlOiAnQ29tcGFyaXNvbiB2YWx1ZScsXG4gICAgICAgIG9wZXJhdGlvbjogJ0NvbXBhcmlzb24gb3BlcmF0aW9uJyxcbiAgICAgICAgb3BlcmF0aW9uczoge1xuICAgICAgICAgIEVRVUFMUzogJ2lzIGVxdWFsJyxcbiAgICAgICAgICBHUkVBVEVSOiAnaXMgZ3JlYXRlcicsXG4gICAgICAgICAgR1JFQVRFUl9PUl9FUVVBTDogJ2lzIGdyZWF0ZXIgb3IgZXF1YWwnLFxuICAgICAgICAgIExPV0VSOiAnaXMgbG93ZXInLFxuICAgICAgICAgIExPV0VSX09SX0VRVUFMOiAnaXMgbG93ZXIgb3IgZXF1YWwnLFxuICAgICAgICAgIENPTlRBSU5TOiAnY29udGFpbnMgYXMgdGV4dCdcbiAgICAgICAgfSxcbiAgICAgICAgY3JlYXRlQ2xhc3NNb2RhbE1lc3NhZ2U6XG4gICAgICAgICAgJ0NyZWF0aW5nIGEgYnVzaW5lc3MgbW9kZWwgd2l0aG91dCBhdHRyaWJ1dGVzIGlzIGltcG9zc2libGUuIEFkZCBhbiBhdHRyaWJ1dGUgYmVmb3JlIGNyZWF0aW5nIHRoZSBidXNpbmVzcyBtb2RlbCwgd2l0aCBcIkFkZCBhdHRyaWJ1dGVcIiBidXR0b24uJyxcbiAgICAgICAgY3JlYXRlQ2xhc3NDb25maXJtTWVzc2FnZTogJ0NvbmZpcm0gYnVzaW5lc3MgbW9kZWwgY3JlYXRpb24nLFxuICAgICAgICBkZWxldGVDbGFzc0NvbmZpcm1NZXNzYWdlOiAnQ29uZmlybSBkZWxldGluZyB0aGUgc2VsZWN0ZWQgYnVzaW5lc3MgbW9kZWwnLFxuICAgICAgICBsaW5rZWRPYmplY3RzOiAnTGlua2VkIG9iamVjdHMnLFxuICAgICAgICB1c2VkRWxzZXdoZXJlOiBcIlVzZWQgYnkgb3RoZXIgdXNlcnMnIG9iamVjdHNcIixcbiAgICAgICAgYXNzb2NpYXRpb25zOiAnQXNzb2NpYXRpb25zJyxcbiAgICAgICAgdHlwZTogJ1R5cGUnLFxuICAgICAgICBhdHRyaWJ1dGVzOiB7XG4gICAgICAgICAgYWRkOiAnYnVzaW5lc3MgbW9kZWwgQWRkIGF0dHJpYnV0ZScsXG4gICAgICAgICAgZWRpdDogJ0VkaXQgYXR0cmlidXRlJyxcbiAgICAgICAgICBuYW1lOiAnQXR0cmlidXRlIG5hbWUnLFxuICAgICAgICAgIGluZm86ICdBdHRyaWJ1dGUgaW5mb3JtYXRpb24nLFxuICAgICAgICAgIGRlc2NyaXB0aW9uOiAnRGVzY3JpcHRpb24nLFxuICAgICAgICAgIGZpZWxkOiAnRmllbGQnLFxuICAgICAgICAgIGNhdGVnb3J5OiAnQ2F0ZWdvcnknLFxuICAgICAgICAgIG11bHRpVmFsdWVkOiAnTXVsdGkgdmFsdWVkJ1xuICAgICAgICB9LFxuICAgICAgICBjYXRlZ29yeToge1xuICAgICAgICAgIHNlbGVjdDogJ1NlbGVjdCBjYXRlZ29yeScsXG4gICAgICAgICAgc2VhcmNoT3JDcmVhdGU6ICdTZWFyY2ggZm9yIGV4aXN0aW5nIGNhdGVnb3J5IE9SIGNyZWF0ZSBhIG5ldyBvbmUnLFxuICAgICAgICAgIG5hbWU6ICdDYXRlZ29yeScsXG4gICAgICAgICAgc2VsZWN0SXQ6ICdTZWxlY3QgY2F0ZWdvcnknLFxuICAgICAgICAgIGNyZWF0ZTogJ0NyZWF0ZSBjYXRlZ29yeScsXG4gICAgICAgICAgYWRkOiAnZG9lcyBub3QgZXhpc3QuIDxicj5Zb3UgY2FuIGNyZWF0ZSBpdCBoZXJlLiA8YnI+SXQgd2lsbCBiZSBhdXRvbWF0aWNhbGx5IHNlbGVjdGVkIGFuZCBhZGRlZCB0byBjYXRlZ29yaWVzIGxpc3QuJ1xuICAgICAgICB9XG4gICAgICB9LFxuICAgICAgZmllbGRzOiB7XG4gICAgICAgIGFkZDogJ0FkZCBuZXcgZmllbGQnLFxuICAgICAgICBpbmZvOiAnRmllbGQgaW5mb3JtYXRpb24nLFxuICAgICAgICBsaXN0OiAnRmllbGRzJyxcbiAgICAgICAgZWRpdDogJ0VkaXQgZmllbGQnLFxuICAgICAgICBuYW1lOiAnTmFtZScsXG4gICAgICAgIGRlc2NyaXB0aW9uOiAnZGVzY3JpcHRpb24nLFxuICAgICAgICB0eXBlOiAnVGVjaG5pY2FsIHR5cGUnLFxuICAgICAgICBhdHRyaWJ1dGVzOiAnQXR0cmlidXRlIHByZXNlbmNlJyxcbiAgICAgICAgYXR0cmlidXRlc1RhYjogJ0F0dHJpYnV0ZXMnLFxuICAgICAgICBhdHRyaWJ1dGVOYW1lOiAnQXR0cmlidXRlIG5hbWUnLFxuICAgICAgICBjbGFzc05hbWU6ICdDbGFzcycsXG4gICAgICAgIGNvbmZpcm1GaWVsZERlbGV0aW9uOiAnQ29uZmlybSBkZWxldGluZyB0aGUgc2VsZWN0ZWQgZmllbGQnLFxuICAgICAgICBmaWVsZFR5cGU6IHtcbiAgICAgICAgICBpbnQ6ICdJbnRlZ2VyJyxcbiAgICAgICAgICBsb25nOiAnTG9uZyBudW1iZXInLFxuICAgICAgICAgIGRlY2ltYWw6ICdEb3VibGUgbnVtYmVyJyxcbiAgICAgICAgICBzdHJpbmc6ICdUZXh0JyxcbiAgICAgICAgICBrZXl3b3JkOiAnS2V5d29yZCcsXG4gICAgICAgICAgaW5zdGFudDogJ2RhdGUnLFxuICAgICAgICAgIHJhdzogJ1JhdycsXG4gICAgICAgICAgcG9pbnQ6ICdQb2ludCcsXG4gICAgICAgICAgbXVsdGlwb2ludDogJ011bHRpLXBvaW50cycsXG4gICAgICAgICAgbGluZTogJ0xpbmUnLFxuICAgICAgICAgIG11bHRpbGluZTogJ011bHRpLWxpbmVzJyxcbiAgICAgICAgICBwb2x5Z29uOiAnUG9seWdvbicsXG4gICAgICAgICAgbXVsdGlwb2x5Z29uOiAnTXVsdGktcG9seWdvbnMnLFxuICAgICAgICAgIGluZm9ybWF0aW9uOiB7XG4gICAgICAgICAgICBpbnQ6ICdBbGxvd3MgeW91IHRvIHN0b3JlIGludGVnZXIgbnVtZXJpYyBkYXRhIGxlc3MgdGhhbiAyXjMyJyxcbiAgICAgICAgICAgIGxvbmc6ICdBbGxvd3MgeW91IHRvIHN0b3JlIGludGVnZXIgbnVtZXJpYyBkYXRhIHRoYXQgY2FuIGV4Y2VlZCAyXjMyJyxcbiAgICAgICAgICAgIGRlY2ltYWw6ICdBbGxvd3MgeW91IHRvIHN0b3JlIG51bWVyaWMgZGF0YSB3aXRoIGRlY2ltYWwgcGxhY2VzJyxcbiAgICAgICAgICAgIHN0cmluZzpcbiAgICAgICAgICAgICAgJ0FsbG93cyB5b3UgdG8gc3RvcmUgZGF0YSBpbiBhbHBoYW51bWVyaWMgZm9ybWF0LiBUaGlzIGRhdGEgaXMgbm90IGluZGV4ZWQ6IGl0IGlzIHBvc3NpYmxlIHRvIHNlYXJjaCBvbiBpdCBidXQgbm8gYWdncmVnYXRpb24nLFxuICAgICAgICAgICAga2V5d29yZDpcbiAgICAgICAgICAgICAgJ0FsbG93cyB5b3UgdG8gc3RvcmUgZGF0YSBpbiBhbHBoYW51bWVyaWMgZm9ybWF0LiBUaGlzIGRhdGEgaXMgaW5kZXhlZDogaXQgaXMgcG9zc2libGUgdG8gc2VhcmNoIG9uIGl0IGFzIHdlbGwgYXMgYWdncmVnYXRpb25zLicsXG4gICAgICAgICAgICBpbnN0YW50OiAnQWxsb3dzIHlvdSB0byBzdG9yZSBhIGRhdGUnLFxuICAgICAgICAgICAgcmF3OiAnYWxsb3dzIHlvdSB0byBzdG9yZSBpbWFnZSBvciBmaWxlIHR5cGUgZGF0YScsXG4gICAgICAgICAgICBwb2ludDogJ0FsbG93cyB5b3UgdG8gc3RvcmUgZ2VvZ3JhcGhpYyBjb29yZGluYXRlcyBvZiBhbiBvYmplY3QgcmVwcmVzZW50ZWQgYnkgYSBwb2ludCAoZ2VvLWpzb24gZm9ybWF0KScsXG4gICAgICAgICAgICBtdWx0aXBvaW50OlxuICAgICAgICAgICAgICAnQWxsb3dzIHlvdSB0byBzdG9yZSBnZW9ncmFwaGljIGNvb3JkaW5hdGVzIG9mIGFuIG9iamVjdCBjb21wb3NlZCBvZiBzZXZlcmFsIHVuY29ubmVjdGVkIHBvaW50cyAoZ2VvLWpzb24gZm9ybWF0KScsXG4gICAgICAgICAgICBsaW5lOiAnQWxsb3dzIHlvdSB0byBzdG9yZSBnZW9ncmFwaGljIGNvb3JkaW5hdGVzIG9mIGFuIG9iamVjdCByZXByZXNlbnRlZCBhcyBhIGxpbmUgKGdlby1qc29uIGZvcm1hdCknLFxuICAgICAgICAgICAgbXVsdGlsaW5lOlxuICAgICAgICAgICAgICAnQWxsb3dzIHlvdSB0byBzdG9yZSBnZW9ncmFwaGljIGNvb3JkaW5hdGVzIG9mIGFuIG9iamVjdCByZXByZXNlbnRlZCB3aXRoIHNldmVyYWwgdW5jb25uZWN0ZWQgbGluZXMgKGxvbmdpdHVkZSBhbmQgbGF0aXR1ZGUgZ2VvLWpzb24gZm9ybWF0KScsXG4gICAgICAgICAgICBwb2x5Z29uOlxuICAgICAgICAgICAgICAnQWxsb3dzIHlvdSB0byBzdG9yZSBnZW9ncmFwaGljIGNvb3JkaW5hdGVzIG9mIGFuIG9iamVjdCByZXByZXNlbnRlZCBieSBhIHBvbHlnb24gKGdlby1qc29uIGZvcm1hdCknLFxuICAgICAgICAgICAgbXVsdGlwb2x5Z29uOlxuICAgICAgICAgICAgICAnQWxsb3dzIHlvdSB0byBzdG9yZSBnZW9ncmFwaGljIGNvb3JkaW5hdGVzIG9mIGFuIG9iamVjdCByZXByZXNlbnRlZCBieSBzZXZlcmFsIHBvbHlnb25zIG5lc3RlZCBvciBub3QgKGdlby1qc29uIGZvcm1hdCknXG4gICAgICAgICAgfVxuICAgICAgICB9LFxuICAgICAgICByYXdNZXRob2RzOiB7XG4gICAgICAgICAgaHR0cDogJ0Zyb20gZXh0ZXJuYWwgdXJsJyxcbiAgICAgICAgICB1cGxvYWQ6ICdVcGxvYWQgZnJvbSBteSBjb21wdXRlcidcbiAgICAgICAgfVxuICAgICAgfSxcbiAgICAgIHVzZXJJbmZvOiB7XG4gICAgICAgIGxpc3Q6ICdVc2VycycsXG4gICAgICAgIGluZm86ICdVc2VyIGluZm9ybWF0aW9uJyxcbiAgICAgICAgcHJvZmlsZTogJ1Byb2ZpbGUnLFxuICAgICAgICBhZGRNZXRhZGF0YTogJ0FkZCcsXG4gICAgICAgIGVkaXRNZXRhZGF0YTogJ0VkaXQgbWV0YWRhdGEnLFxuICAgICAgICBuYW1lOiAnR2l2ZW4gbmFtZScsXG4gICAgICAgIGZhbWlseU5hbWU6ICdGYW1pbHkgbmFtZScsXG4gICAgICAgIGVtYWlsOiAnRW1haWwgYWRyZXNzJyxcbiAgICAgICAgbWV0YWRhdGE6ICdNZXRhZGF0YScsXG4gICAgICAgIHJvbGVzOiAnIFJvbGVzJ1xuICAgICAgfSxcbiAgICAgIHJlbGF0aW9uVHlwZXM6IHtcbiAgICAgICAgbGlzdDogJ1JlbGF0aW9ucyB0eXBlcycsXG4gICAgICAgIGluZm86ICdSZWxhdGlvbiB0eXBlIGluZm9ybWF0aW9uJyxcbiAgICAgICAgYWRkOiAnQWRkIHJlbGF0aW9uIHR5cGUnLFxuICAgICAgICBlZGl0OiAnRWRpdCByZWxhdGlvbiB0eXBlJyxcbiAgICAgICAgbmFtZTogJ05hbWUnLFxuICAgICAgICBuYlJlbGF0aW9uOiAnTnVtYmVyIG9mIHR5cGUgcmVsYXRpb24nLFxuICAgICAgICBuYkxpbms6ICdOdW1iZXIgb2YgbGlua3MgdGhhdCB1c2UgdGhpcyByZWxhdGlvbiB0eXBlJyxcbiAgICAgICAgZGF0ZU1vZGlmaWNhdGlvbjogJ01vZGlmaWNhdGlvbiBkYXRlJyxcbiAgICAgICAgZGVsZXRhYmxlOiAnQ2FuIGJlIGRlbGV0ZWQnLFxuICAgICAgICBkZWxldGVNb2RhbE1lc3NhZ2U6ICdUaGlzIHJlbGF0aW9uIHR5cGUgY2FuIGJlIGRlbGV0ZWQgYmVjYXVzZSB1c2VkLidcbiAgICAgIH0sXG4gICAgICBsaW5rczoge1xuICAgICAgICBsaXN0OiAnTGlua3MgYmV0d2VlbiBhdHRyaWJ1dGVzJyxcbiAgICAgICAgYWRkOiAnQ3JlYXRlIGEgbGluayBiZXR3ZWVuIGF0dHJpYnV0ZXMnLFxuICAgICAgICBjbGFzc1NvdXJjZTogJ1NvdXJjZSBidXNpbmVzcyBtb2RlbCcsXG4gICAgICAgIGF0dHJpYnV0ZVNvdXJjZTogJ1NvdXJjZSBhdHRyaWJ1dGUnLFxuICAgICAgICBjbGFzc0Rlc3RpbmF0aW9uOiAnRGVzdGluYXRpb24gYnVzaW5lc3MgbW9kZWwnLFxuICAgICAgICBhdHRyaWJ1dGVEZXN0aW5hdGlvbjogJ0Rlc3RpbmF0aW9uIGF0dHJpYnV0ZScsXG4gICAgICAgIHJlbGF0aW9uVHlwZTogJ1JlbGF0aW9uIHR5cGUnLFxuICAgICAgICBzZWxlY3RSZWxhdGlvblR5cGU6ICdTZWxlY3QgcmVsYXRpb24gdHlwZSdcbiAgICAgIH0sXG4gICAgICBhc3NvY2lhdGlvbjoge1xuICAgICAgICBBQkFDOiAnQUJBQyBSdWxlJyxcbiAgICAgICAgTElOSzogJ1JlbGF0aW9uJyxcbiAgICAgICAgTkFNRURfUVVFUlk6ICdOYW1lZCBxdWVyeScsXG4gICAgICAgIFdJREdFVDogJ1dpZGdldCcsXG4gICAgICAgIERBVEFTRVQ6ICdEYXRhc2V0JyxcbiAgICAgICAgT0NMQVNTOiAnRGF0YSBtb2RlbCcsXG4gICAgICAgIERBU0hCT0FSRDogJ0Rhc2hib2FyZCcsXG4gICAgICAgIEZJRUxEOiAnRGF0YSB0eXBlJ1xuICAgICAgfSxcbiAgICAgIHN0b3JhZ2U6IHtcbiAgICAgICAgbGFiZWw6ICdCYXNlIGRlIHN0b2NrYWdlJyxcbiAgICAgICAgZGVzY3JpcHRpb246IHtcbiAgICAgICAgICBQT1NUR0lTOlxuICAgICAgICAgICAgJ1JlY29tbWVuZGVkIGZvciBzdG9yYWdlIG9mIGNvbXBsZXggZ2VvZ3JhcGhpY2FsIGRhdGEgb3IgZm9yIGNvb3JkaW5hdGUgc3lzdGVtcyBkaWZmZXJlbnQgZnJvbSBXR1MgODQuIFJlY29tbWVuZGVkIGZvciBzdG9yaW5nIGNsYXNzZXMgd2l0aCBsb3cgZXN0aW1hdGVkIGRhdGEgdm9sdW1lLicsXG4gICAgICAgICAgRUxBU1RJQzpcbiAgICAgICAgICAgICdSZWNvbW1lbmRlZCBpbiBjYXNlIG9mIGhpZ2ggZGF0YSB2b2x1bWUgZXhwZWN0ZWQgZm9yIHRoZSBjbGFzcy4gSWYgeW91IHdhbnQgdG8gc3RvcmUgZ2VvZ3JhcGhpY2FsIGRhdGEgaW4gdGhpcyBjbGFzcywgc2ltcGxlIGZvcm1zIGhhdmUgdG8gYmUgdXNlZCBhbmQgdGhlIHJlZmVyZW5jZSBjb29yZGluYXRlIHN5c3RlbSBtdXN0IGJlIFdHUyA4NC4gVGhpcyBzdG9yYWdlIHN5c3RlbSBpcyBob3Jpem9udGFsbHkgc2NhbGFibGUuJ1xuICAgICAgICB9LFxuICAgICAgICBvcHRpb25zOiB7XG4gICAgICAgICAgUE9TVEdJUzogJ1Bvc3RHSVMnLFxuICAgICAgICAgIEVMQVNUSUM6ICdFbGFzdGljU2VhcmNoJ1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfSxcbiAgICB0b29sdGlwOiB7XG4gICAgICBkZWZhdWx0OiAnRGVmYXVsdCB0b29sdGlwJyxcbiAgICAgIGF0dHJpYnV0ZTogJ0F0dHJpYnV0ZXMgdG9vbHRpcCcsXG4gICAgICBjbHVzdGVyOiAnQ2x1c3RlciB0b29sdGlwIChncmFwaHMpJyxcbiAgICAgIGxpbms6ICdMaW5rIHRvb2x0aXAgKGdyYXBocyknLFxuICAgICAgbm9uZTogJ05vIHRvb2x0aXAnXG4gICAgfVxuICB9XG59O1xuIl19
|