@vendure/admin-ui 2.2.6 → 2.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/catalog/components/product-variant-list/product-variant-list.component.d.ts +1 -1
- package/core/common/generated-types.d.ts +6 -1
- package/core/common/version.d.ts +1 -1
- package/core/extension/components/angular-route.component.d.ts +20 -0
- package/core/extension/components/route.component.d.ts +9 -2
- package/core/extension/register-route-component.d.ts +4 -0
- package/core/shared/components/order-state-label/order-state-label.component.d.ts +1 -1
- package/core/shared/dynamic-form-inputs/default-form-inputs.d.ts +1 -1
- package/core/shared/providers/routing/can-deactivate-detail-guard.d.ts +2 -4
- package/esm2022/catalog/components/create-product-variant-dialog/create-product-variant-dialog.component.mjs +2 -2
- package/esm2022/catalog/components/facet-detail/facet-detail.component.mjs +8 -8
- package/esm2022/catalog/components/generate-product-variants/generate-product-variants.component.mjs +2 -1
- package/esm2022/core/common/generated-types.mjs +1 -1
- package/esm2022/core/common/introspection-result.mjs +1 -1
- package/esm2022/core/common/version.mjs +2 -2
- package/esm2022/core/data/utils/is-entity-create-or-update-mutation.mjs +1 -1
- package/esm2022/core/data/utils/remove-readonly-custom-fields.mjs +1 -1
- package/esm2022/core/extension/components/angular-route.component.mjs +51 -6
- package/esm2022/core/extension/components/route.component.mjs +32 -11
- package/esm2022/core/extension/register-data-table-component.mjs +1 -1
- package/esm2022/core/extension/register-route-component.mjs +4 -2
- package/esm2022/core/shared/components/facet-value-selector/facet-value-selector.component.mjs +1 -1
- package/esm2022/core/shared/components/rich-text-editor/rich-text-editor.component.mjs +2 -2
- package/esm2022/core/shared/components/timeline-entry/timeline-entry.component.mjs +1 -1
- package/esm2022/core/shared/providers/routing/can-deactivate-detail-guard.mjs +6 -8
- package/esm2022/core/shared/shared.module.mjs +1 -1
- package/esm2022/customer/customer.routes.mjs +1 -1
- package/esm2022/react/components/react-route.component.mjs +2 -2
- package/esm2022/react/react-components/RichTextEditor.mjs +8 -4
- package/esm2022/react/react-hooks/use-query.mjs +22 -8
- package/fesm2022/vendure-admin-ui-catalog.mjs +9 -8
- package/fesm2022/vendure-admin-ui-catalog.mjs.map +1 -1
- package/fesm2022/vendure-admin-ui-core.mjs +84 -19
- package/fesm2022/vendure-admin-ui-core.mjs.map +1 -1
- package/fesm2022/vendure-admin-ui-customer.mjs.map +1 -1
- package/fesm2022/vendure-admin-ui-react.mjs +29 -11
- package/fesm2022/vendure-admin-ui-react.mjs.map +1 -1
- package/package.json +15 -15
- package/react/react-components/RichTextEditor.d.ts +2 -0
- package/react/react-hooks/use-query.d.ts +9 -5
- package/static/styles/component/prosemirror.scss +511 -0
- package/static/styles/styles.scss +2 -0
package/esm2022/catalog/components/generate-product-variants/generate-product-variants.component.mjs
CHANGED
|
@@ -34,6 +34,7 @@ export class GenerateProductVariantsComponent {
|
|
|
34
34
|
.pipe(tap(items => {
|
|
35
35
|
if (items.length) {
|
|
36
36
|
this.selectedStockLocationId = items[0].id;
|
|
37
|
+
this.onFormChange();
|
|
37
38
|
}
|
|
38
39
|
}));
|
|
39
40
|
this.generateVariants();
|
|
@@ -129,4 +130,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.4", ngImpor
|
|
|
129
130
|
type: ViewChildren,
|
|
130
131
|
args: ['optionGroupName', { read: ElementRef }]
|
|
131
132
|
}] } });
|
|
132
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2VuZXJhdGUtcHJvZHVjdC12YXJpYW50cy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvbGliL2NhdGFsb2cvc3JjL2NvbXBvbmVudHMvZ2VuZXJhdGUtcHJvZHVjdC12YXJpYW50cy9nZW5lcmF0ZS1wcm9kdWN0LXZhcmlhbnRzLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3NyYy9saWIvY2F0YWxvZy9zcmMvY29tcG9uZW50cy9nZW5lcmF0ZS1wcm9kdWN0LXZhcmlhbnRzL2dlbmVyYXRlLXByb2R1Y3QtdmFyaWFudHMuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxVQUFVLEVBQUUsWUFBWSxFQUFVLE1BQU0sRUFBYSxZQUFZLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFN0csT0FBTyxFQUdILDRCQUE0QixHQUcvQixNQUFNLHdCQUF3QixDQUFDO0FBQ2hDLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLGtDQUFrQyxDQUFDO0FBRTNFLE9BQU8sRUFBRSxHQUFHLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQzs7Ozs7Ozs7QUFJckMsTUFBTSxvQkFBb0IsR0FBRyxxQkFBcUIsQ0FBQztBQW1CbkQsTUFBTSxPQUFPLGdDQUFnQztJQWlCekMsWUFDWSxXQUF3QixFQUN4QixXQUF3QjtRQUR4QixnQkFBVyxHQUFYLFdBQVcsQ0FBYTtRQUN4QixnQkFBVyxHQUFYLFdBQVcsQ0FBYTtRQWxCMUIsbUJBQWMsR0FBRyxJQUFJLFlBQVksRUFBK0IsQ0FBQztRQUUzRSxpQkFBWSxHQUE4RSxFQUFFLENBQUM7UUFHN0Ysc0JBQWlCLEdBUWIsRUFBRSxDQUFDO1FBRVAsNEJBQXVCLEdBQWtCLElBQUksQ0FBQztJQUkzQyxDQUFDO0lBRUosUUFBUTtRQUNKLElBQUksQ0FBQyxXQUFXLENBQUMsUUFBUSxDQUFDLGdCQUFnQixFQUFFLENBQUMs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QyxpQkFBaUIsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBNEIsQ0FBQzthQUNuRSxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDNUIsSUFBSSxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUM7WUFDckIsTUFBTSxFQUFFLElBQUksQ0FBQyxZQUFZLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxFQUFFLElBQUksRUFBRSxFQUFFLENBQUMsSUFBSSxFQUFFLE1BQU0sRUFBRSxFQUFFLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUM7WUFDNUYsUUFBUSxFQUFFLGdCQUFnQjtZQUMxQixvRUFBb0U7WUFDcEUsZUFBZSxFQUFFLElBQUksQ0FBQyx1QkFBd0I7U0FDakQsQ0FBQyxDQUFDO0lBQ1AsQ0FBQztJQUVPLGVBQWUsQ0FDbkIsU0FBaUIsRUFDakIsSUFBTyxFQUNQLEtBQTZCO1FBRTdCLE9BQU8sU0FBUyxLQUFLLG9CQUFvQjtZQUNyQyxDQUFDLENBQUUsSUFBSSxDQUFDLGlCQUFpQixDQUFDLG9CQUFvQixDQUFDLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxFQUFFLEtBQWdDO1lBQzNGLENBQUMsQ0FBQyxLQUFLLENBQUM7SUFDaEIsQ0FBQzs4R0F2SVEsZ0NBQWdDO2tHQUFoQyxnQ0FBZ0Msc01BRUEsVUFBVSw2QkNwQ3ZELDh5SUFzR0E7OzJGRHBFYSxnQ0FBZ0M7a0JBTDVDLFNBQVM7K0JBQ0ksK0JBQStCOzBHQUsvQixjQUFjO3NCQUF2QixNQUFNO2dCQUNnRCxlQUFlO3NCQUFyRSxZQUFZO3VCQUFDLGlCQUFpQixFQUFFLEVBQUUsSUFBSSxFQUFFLFVBQVUsRUFBRSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgRWxlbWVudFJlZiwgRXZlbnRFbWl0dGVyLCBPbkluaXQsIE91dHB1dCwgUXVlcnlMaXN0LCBWaWV3Q2hpbGRyZW4gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEFic3RyYWN0Q29udHJvbCwgRm9ybUFycmF5LCBGb3JtQnVpbGRlciwgRm9ybUNvbnRyb2wsIEZvcm1Hcm91cCB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7XG4gICAgQ3VycmVuY3lDb2RlLFxuICAgIERhdGFTZXJ2aWNlLFxuICAgIEdldFN0b2NrTG9jYXRpb25MaXN0RG9jdW1lbnQsXG4gICAgR2V0U3RvY2tMb2NhdGlvbkxpc3RRdWVyeSxcbiAgICBJdGVtT2YsXG59IGZyb20gJ0B2ZW5kdXJlL2FkbWluLXVpL2NvcmUnO1xuaW1wb3J0IHsgZ2VuZXJhdGVBbGxDb21iaW5hdGlvbnMgfSBmcm9tICdAdmVuZHVyZS9jb21tb24vbGliL3NoYXJlZC11dGlscyc7XG5pbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyB0YXAgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5cbmltcG9ydCB7IE9wdGlvblZhbHVlSW5wdXRDb21wb25lbnQgfSBmcm9tICcuLi9vcHRpb24tdmFsdWUtaW5wdXQvb3B0aW9uLXZhbHVlLWlucHV0LmNvbXBvbmVudCc7XG5cbmNvbnN0IERFRkFVTFRfVkFSSUFOVF9DT0RFID0gJ19fREVGQVVMVF9WQVJJQU5UX18nO1xuZXhwb3J0IHR5cGUgQ3JlYXRlVmFyaWFudFZhbHVlcyA9IHtcbiAgICBvcHRpb25WYWx1ZXM6IHN0cmluZ1tdO1xuICAgIGVuYWJsZWQ6IGJvb2xlYW47XG4gICAgc2t1OiBzdHJpbmc7XG4gICAgcHJpY2U6IG51bWJlcjtcbiAgICBzdG9jazogbnVtYmVyO1xufTtcbmV4cG9ydCB0eXBlIENyZWF0ZVByb2R1Y3RWYXJpYW50c0NvbmZpZyA9IHtcbiAgICBncm91cHM6IEFycmF5PHsgbmFtZTogc3RyaW5nOyB2YWx1ZXM6IHN0cmluZ1tdIH0+O1xuICAgIHZhcmlhbnRzOiBDcmVhdGVWYXJpYW50VmFsdWVzW107XG4gICAgc3RvY2tMb2NhdGlvbklkOiBzdHJpbmc7XG59O1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ3Zkci1nZW5lcmF0ZS1wcm9kdWN0LXZhcmlhbnRzJyxcbiAgICB0ZW1wbGF0ZVVybDogJy4vZ2VuZXJhdGUtcHJvZHVjdC12YXJpYW50cy5jb21wb25lbnQuaHRtbCcsXG4gICAgc3R5bGVVcmxzOiBbJy4vZ2VuZXJhdGUtcHJvZHVjdC12YXJpYW50cy5jb21wb25lbnQuc2NzcyddLFxufSlcbmV4cG9ydCBjbGFzcyBHZW5lcmF0ZVByb2R1Y3RWYXJpYW50c0NvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gICAgQE91dHB1dCgpIHZhcmlhbnRzQ2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxDcmVhdGVQcm9kdWN0VmFyaWFudHNDb25maWc+KCk7XG4gICAgQFZpZXdDaGlsZHJlbignb3B0aW9uR3JvdXBOYW1lJywgeyByZWFkOiBFbGVtZW50UmVmIH0pIGdyb3VwTmFtZUlucHV0czogUXVlcnlMaXN0PEVsZW1lbnRSZWY+O1xuICAgIG9wdGlvbkdyb3VwczogQXJyYXk8eyBuYW1lOiBzdHJpbmc7IHZhbHVlczogQXJyYXk8eyBuYW1lOiBzdHJpbmc7IGxvY2tlZDogYm9vbGVhbiB9PiB9PiA9IFtdO1xuICAgIGN1cnJlbmN5Q29kZTogQ3VycmVuY3lDb2RlO1xuICAgIHZhcmlhbnRzOiBBcnJheTx7IGlkOiBzdHJpbmc7IHZhbHVlczogc3RyaW5nW10gfT47XG4gICAgdmFyaWFudEZvcm1WYWx1ZXM6IHtcbiAgICAgICAgW2lkOiBzdHJpbmddOiBGb3JtR3JvdXA8e1xuICAgICAgICAgICAgb3B0aW9uVmFsdWVzOiBGb3JtQ29udHJvbDxzdHJpbmdbXT47XG4gICAgICAgICAgICBlbmFibGVkOiBGb3JtQ29udHJvbDxib29sZWFuPjtcbiAgICAgICAgICAgIHByaWNlOiBGb3JtQ29udHJvbDxudW1iZXI+O1xuICAgICAgICAgICAgc2t1OiBGb3JtQ29udHJvbDxzdHJpbmc+O1xuICAgICAgICAgICAgc3RvY2s6IEZvcm1Db250cm9sPG51bWJlcj47XG4gICAgICAgIH0+O1xuICAgIH0gPSB7fTtcbiAgICBzdG9ja0xvY2F0aW9ucyQ6IE9ic2VydmFibGU8QXJyYXk8SXRlbU9mPEdldFN0b2NrTG9jYXRpb25MaXN0UXVlcnksICdzdG9ja0xvY2F0aW9ucyc+Pj47XG4gICAgc2VsZWN0ZWRTdG9ja0xvY2F0aW9uSWQ6IHN0cmluZyB8IG51bGwgPSBudWxsO1xuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBwcml2YXRlIGRhdGFTZXJ2aWNlOiBEYXRhU2VydmljZSxcbiAgICAgICAgcHJpdmF0ZSBmb3JtQnVpbGRlcjogRm9ybUJ1aWxkZXIsXG4gICAgKSB7fVxuXG4gICAgbmdPbkluaXQoKSB7XG4gICAgICAgIHRoaXMuZGF0YVNlcnZpY2Uuc2V0dGluZ3MuZ2V0QWN0aXZlQ2hhbm5lbCgpLnNpbmdsZSQuc3Vic2NyaWJlKGRhdGEgPT4ge1xuICAgICAgICAgICAgdGhpcy5jdXJyZW5jeUNvZGUgPSBkYXRhLmFjdGl2ZUNoYW5uZWwuZGVmYXVsdEN1cnJlbmN5Q29kZTtcbiAgICAgICAgfSk7XG4gICAgICAgIHRoaXMuc3RvY2tMb2NhdGlvbnMkID0gdGhpcy5kYXRhU2VydmljZVxuICAgICAgICAgICAgLnF1ZXJ5KEdldFN0b2NrTG9jYXRpb25MaXN0RG9jdW1lbnQsIHtcbiAgICAgICAgICAgICAgICBvcHRpb25zOiB7XG4gICAgICAgICAgICAgICAgICAgIHRha2U6IDk5OSxcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgfSlcbiAgICAgICAgICAgIC5yZWZldGNoT25DaGFubmVsQ2hhbmdlKClcbiAgICAgICAgICAgIC5tYXBTdHJlYW0oKHsgc3RvY2tMb2NhdGlvbnMgfSkgPT4gc3RvY2tMb2NhdGlvbnMuaXRlbXMpXG4gICAgICAgICAgICAucGlwZShcbiAgICAgICAgICAgICAgICB0YXAoaXRlbXMgPT4ge1xuICAgICAgICAgICAgICAgICAgICBpZiAoaXRlbXMubGVuZ3RoKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLnNlbGVjdGVkU3RvY2tMb2NhdGlvbklkID0gaXRlbXNbMF0uaWQ7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9KSxcbiAgICAgICAgICAgICk7XG5cbiAgICAgICAgdGhpcy5nZW5lcmF0ZVZhcmlhbnRzKCk7XG4gICAgfVxuXG4gICAgYWRkT3B0aW9uKCkge1xuICAgICAgICB0aGlzLm9wdGlvbkdyb3Vwcy5wdXNoKHsgbmFtZTogJycsIHZhbHVlczogW10gfSk7XG4gICAgICAgIGNvbnN0IGluZGV4ID0gdGhpcy5vcHRpb25Hcm91cHMubGVuZ3RoIC0gMTtcbiAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgICAgICBjb25zdCBpbnB1dCA9IHRoaXMuZ3JvdXBOYW1lSW5wdXRzLmdldChpbmRleCk/Lm5hdGl2ZUVsZW1lbnQ7XG4gICAgICAgICAgICBpbnB1dD8uZm9jdXMoKTtcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgcmVtb3ZlT3B0aW9uKG5hbWU6IHN0cmluZykge1xuICAgICAgICB0aGlzLm9wdGlvbkdyb3VwcyA9IHRoaXMub3B0aW9uR3JvdXBzLmZpbHRlcihnID0+IGcubmFtZSAhPT0gbmFtZSk7XG4gICAgICAgIHRoaXMuZ2VuZXJhdGVWYXJpYW50cygpO1xuICAgIH1cblxuICAgIGdlbmVyYXRlVmFyaWFudHMoKSB7XG4gICAgICAgIGNvbnN0IHRvdGFsVmFsdWVzQ291bnQgPSB0aGlzLm9wdGlvbkdyb3Vwcy5yZWR1Y2UoKHN1bSwgZ3JvdXApID0+IHN1bSArIGdyb3VwLnZhbHVlcy5sZW5ndGgsIDApO1xuICAgICAgICBjb25zdCBncm91cHMgPSB0b3RhbFZhbHVlc0NvdW50XG4gICAgICAgICAgICA/IHRoaXMub3B0aW9uR3JvdXBzLm1hcChnID0+IGcudmFsdWVzLm1hcCh2ID0+IHYubmFtZSkpXG4gICAgICAgICAgICA6IFtbREVGQVVMVF9WQVJJQU5UX0NPREVdXTtcbiAgICAgICAgdGhpcy52YXJpYW50cyA9IGdlbmVyYXRlQWxsQ29tYmluYXRpb25zKGdyb3VwcykubWFwKHZhbHVlcyA9PiAoeyBpZDogdmFsdWVzLmpvaW4oJ3wnKSwgdmFsdWVzIH0pKTtcblxuICAgICAgICB0aGlzLnZhcmlhbnRzLmZvckVhY2goKHZhcmlhbnQsIGluZGV4KSA9PiB7XG4gICAgICAgICAgICBpZiAoIXRoaXMudmFyaWFudEZvcm1WYWx1ZXNbdmFyaWFudC5pZF0pIHtcbiAgICAgICAgICAgICAgICBjb25zdCBmb3JtR3JvdXAgPSB0aGlzLmZvcm1CdWlsZGVyLm5vbk51bGxhYmxlLmdyb3VwKHtcbiAgICAgICAgICAgICAgICAgICAgb3B0aW9uVmFsdWVzOiBbdmFyaWFudC52YWx1ZXNdLFxuICAgICAgICAgICAgICAgICAgICBlbmFibGVkOiB0cnVlIGFzIGJvb2xlYW4sXG4gICAgICAgICAgICAgICAgICAgIHByaWNlOiB0aGlzLmNvcHlGcm9tRGVmYXVsdCh2YXJpYW50LmlkLCAncHJpY2UnLCAwKSxcbiAgICAgICAgICAgICAgICAgICAgc2t1OiB0aGlzLmNvcHlGcm9tRGVmYXVsdCh2YXJpYW50LmlkLCAnc2t1JywgJycpLFxuICAgICAgICAgICAgICAgICAgICBzdG9jazogdGhpcy5jb3B5RnJvbURlZmF1bHQodmFyaWFudC5pZCwgJ3N0b2NrJywgMCksXG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgZm9ybUdyb3VwLnZhbHVlQ2hhbmdlcy5zdWJzY3JpYmUoKCkgPT4gdGhpcy5vbkZvcm1DaGFuZ2UoKSk7XG4gICAgICAgICAgICAgICAgaWYgKGluZGV4ID09PSAwKSB7XG4gICAgICAgICAgICAgICAgICAgIGZvcm1Hcm91cC5nZXQoJ3ByaWNlJyk/LnZhbHVlQ2hhbmdlcy5zdWJzY3JpYmUodmFsdWUgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5jb3B5VmFsdWVzVG9QcmlzdGluZSgncHJpY2UnLCBmb3JtR3JvdXAuZ2V0KCdwcmljZScpKTtcbiAgICAgICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgICAgIGZvcm1Hcm91cC5nZXQoJ3NrdScpPy52YWx1ZUNoYW5nZXMuc3Vic2NyaWJlKHZhbHVlID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuY29weVZhbHVlc1RvUHJpc3RpbmUoJ3NrdScsIGZvcm1Hcm91cC5nZXQoJ3NrdScpKTtcbiAgICAgICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgICAgIGZvcm1Hcm91cC5nZXQoJ3N0b2NrJyk/LnZhbHVlQ2hhbmdlcy5zdWJzY3JpYmUodmFsdWUgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5jb3B5VmFsdWVzVG9QcmlzdGluZSgnc3RvY2snLCBmb3JtR3JvdXAuZ2V0KCdzdG9jaycpKTtcbiAgICAgICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIHRoaXMudmFyaWFudEZvcm1WYWx1ZXNbdmFyaWFudC5pZF0gPSBmb3JtR3JvdXA7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgICAgICB0aGlzLm9uRm9ybUNoYW5nZSgpO1xuICAgIH1cblxuICAgIHRyYWNrQnlGbihpbmRleDogbnVtYmVyLCB2YXJpYW50OiB7IG5hbWU6IHN0cmluZzsgdmFsdWVzOiBzdHJpbmdbXSB9KSB7XG4gICAgICAgIHJldHVybiB2YXJpYW50LnZhbHVlcy5qb2luKCd8Jyk7XG4gICAgfVxuXG4gICAgaGFuZGxlRW50ZXIoZXZlbnQ6IEtleWJvYXJkRXZlbnQsIG9wdGlvblZhbHVlSW5wdXRDb21wb25lbnQ6IE9wdGlvblZhbHVlSW5wdXRDb21wb25lbnQpIHtcbiAgICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICAgICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XG4gICAgICAgIG9wdGlvblZhbHVlSW5wdXRDb21wb25lbnQuZm9jdXMoKTtcbiAgICB9XG5cbiAgICBjb3B5VmFsdWVzVG9QcmlzdGluZShmaWVsZDogJ3ByaWNlJyB8ICdza3UnIHwgJ3N0b2NrJywgZm9ybUNvbnRyb2w6IEFic3RyYWN0Q29udHJvbCB8IG51bGwpIHtcbiAgICAgICAgaWYgKCFmb3JtQ29udHJvbCkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG4gICAgICAgIE9iamVjdC52YWx1ZXModGhpcy52YXJpYW50Rm9ybVZhbHVlcykuZm9yRWFjaChmb3JtR3JvdXAgPT4ge1xuICAgICAgICAgICAgY29uc3QgY29ycmVzcG9uZGluZ0Zvcm1Db250cm9sID0gZm9ybUdyb3VwLmdldChmaWVsZCkgYXMgRm9ybUNvbnRyb2w7XG4gICAgICAgICAgICBpZiAoY29ycmVzcG9uZGluZ0Zvcm1Db250cm9sICYmIGNvcnJlc3BvbmRpbmdGb3JtQ29udHJvbC5wcmlzdGluZSkge1xuICAgICAgICAgICAgICAgIGNvcnJlc3BvbmRpbmdGb3JtQ29udHJvbC5zZXRWYWx1ZShmb3JtQ29udHJvbC52YWx1ZSwgeyBlbWl0RXZlbnQ6IGZhbHNlIH0pO1xuICAgICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBvbkZvcm1DaGFuZ2UoKSB7XG4gICAgICAgIGNvbnN0IHZhcmlhbnRzVG9DcmVhdGUgPSB0aGlzLnZhcmlhbnRzXG4gICAgICAgICAgICAubWFwKHYgPT4gdGhpcy52YXJpYW50Rm9ybVZhbHVlc1t2LmlkXS52YWx1ZSBhcyBDcmVhdGVWYXJpYW50VmFsdWVzKVxuICAgICAgICAgICAgLmZpbHRlcih2ID0+IHYuZW5hYmxlZCk7XG4gICAgICAgIHRoaXMudmFyaWFudHNDaGFuZ2UuZW1pdCh7XG4gICAgICAgICAgICBncm91cHM6IHRoaXMub3B0aW9uR3JvdXBzLm1hcChvZyA9PiAoeyBuYW1lOiBvZy5uYW1lLCB2YWx1ZXM6IG9nLnZhbHVlcy5tYXAodiA9PiB2Lm5hbWUpIH0pKSxcbiAgICAgICAgICAgIHZhcmlhbnRzOiB2YXJpYW50c1RvQ3JlYXRlLFxuICAgICAgICAgICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby1ub24tbnVsbC1hc3NlcnRpb25cbiAgICAgICAgICAgIHN0b2NrTG9jYXRpb25JZDogdGhpcy5zZWxlY3RlZFN0b2NrTG9jYXRpb25JZCEsXG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIHByaXZhdGUgY29weUZyb21EZWZhdWx0PFQgZXh0ZW5kcyBrZXlvZiBDcmVhdGVWYXJpYW50VmFsdWVzPihcbiAgICAgICAgdmFyaWFudElkOiBzdHJpbmcsXG4gICAgICAgIHByb3A6IFQsXG4gICAgICAgIHZhbHVlOiBDcmVhdGVWYXJpYW50VmFsdWVzW1RdLFxuICAgICk6IENyZWF0ZVZhcmlhbnRWYWx1ZXNbVF0ge1xuICAgICAgICByZXR1cm4gdmFyaWFudElkICE9PSBERUZBVUxUX1ZBUklBTlRfQ09ERVxuICAgICAgICAgICAgPyAodGhpcy52YXJpYW50Rm9ybVZhbHVlc1tERUZBVUxUX1ZBUklBTlRfQ09ERV0uZ2V0KHByb3ApPy52YWx1ZSBhcyBDcmVhdGVWYXJpYW50VmFsdWVzW1RdKVxuICAgICAgICAgICAgOiB2YWx1ZTtcbiAgICB9XG59XG4iLCI8ZGl2ICpuZ0Zvcj1cImxldCBncm91cCBvZiBvcHRpb25Hcm91cHNcIiBjbGFzcz1cIm9wdGlvbi1ncm91cHNcIj5cclxuICAgIDxkaXYgY2xhc3M9XCJuYW1lXCI+XHJcbiAgICAgICAgPGxhYmVsPnt7ICdjYXRhbG9nLm9wdGlvbicgfCB0cmFuc2xhdGUgfX08L2xhYmVsPlxyXG4gICAgICAgIDxpbnB1dFxyXG4gICAgICAgICAgICAjb3B0aW9uR3JvdXBOYW1lXHJcbiAgICAgICAgICAgIHBsYWNlaG9sZGVyPVwiZS5nLiBTaXplXCJcclxuICAgICAgICAgICAgY2xySW5wdXRcclxuICAgICAgICAgICAgWyhuZ01vZGVsKV09XCJncm91cC5uYW1lXCJcclxuICAgICAgICAgICAgbmFtZT1cIm5hbWVcIlxyXG4gICAgICAgICAgICByZXF1aXJlZFxyXG4gICAgICAgICAgICAoa2V5ZG93bi5lbnRlcik9XCJoYW5kbGVFbnRlcigkZXZlbnQsIG9wdGlvblZhbHVlSW5wdXRDb21wb25lbnQpXCJcclxuICAgICAgICAvPlxyXG4gICAgPC9kaXY+XHJcbiAgICA8ZGl2IGNsYXNzPVwidmFsdWVzXCI+XHJcbiAgICAgICAgPGxhYmVsPnt7ICdjYXRhbG9nLm9wdGlvbi12YWx1ZXMnIHwgdHJhbnNsYXRlIH19PC9sYWJlbD5cclxuICAgICAgICA8dmRyLW9wdGlvbi12YWx1ZS1pbnB1dFxyXG4gICAgICAgICAgICAjb3B0aW9uVmFsdWVJbnB1dENvbXBvbmVudFxyXG4gICAgICAgICAgICBbKG5nTW9kZWwpXT1cImdyb3VwLnZhbHVlc1wiXHJcbiAgICAgICAgICAgIChuZ01vZGVsQ2hhbmdlKT1cImdlbmVyYXRlVmFyaWFudHMoKVwiXHJcbiAgICAgICAgICAgIChlZGl0KT1cImdlbmVyYXRlVmFyaWFudHMoKVwiXHJcbiAgICAgICAgICAgIFtncm91cE5hbWVdPVwiZ3JvdXAubmFtZVwiXHJcbiAgICAgICAgICAgIFtkaXNhYmxlZF09XCJncm91cC5uYW1lID09PSAnJ1wiXHJcbiAgICAgICAgPjwvdmRyLW9wdGlvbi12YWx1ZS1pbnB1dD5cclxuICAgIDwvZGl2PlxyXG4gICAgPGRpdiBjbGFzcz1cInJlbW92ZS1ncm91cFwiPlxyXG4gICAgICAgIDxidXR0b25cclxuICAgICAgICAgICAgY2xhc3M9XCJidXR0b24tc21hbGwgbXQtMlwiXHJcbiAgICAgICAgICAgIFt0aXRsZV09XCInY2F0YWxvZy5yZW1vdmUtb3B0aW9uJyB8IHRyYW5zbGF0ZVwiXHJcbiAgICAgICAgICAgIChjbGljayk9XCJyZW1vdmVPcHRpb24oZ3JvdXAubmFtZSlcIlxyXG4gICAgICAgID5cclxuICAgICAgICAgICAgPGNsci1pY29uIHNoYXBlPVwidHJhc2hcIj48L2Nsci1pY29uPlxyXG4gICAgICAgIDwvYnV0dG9uPlxyXG4gICAgPC9kaXY+XHJcbjwvZGl2PlxyXG48YnV0dG9uIGNsYXNzPVwiYnV0dG9uIG1iLTJcIiAoY2xpY2spPVwiYWRkT3B0aW9uKClcIj5cclxuICAgIDxjbHItaWNvbiBzaGFwZT1cInBsdXNcIj48L2Nsci1pY29uPlxyXG4gICAge3sgJ2NhdGFsb2cuYWRkLW9wdGlvbicgfCB0cmFuc2xhdGUgfX1cclxuPC9idXR0b24+XHJcblxyXG48bmctY29udGFpbmVyICpuZ0lmPVwic3RvY2tMb2NhdGlvbnMkIHwgYXN5bmMgYXMgc3RvY2tMb2NhdGlvbnNcIj5cclxuICAgIDxjbHItYWxlcnQgKm5nSWY9XCJzdG9ja0xvY2F0aW9ucy5sZW5ndGggPT09IDBcIiBjbHJBbGVydFR5cGU9XCJ3YXJuaW5nXCIgW2NsckFsZXJ0Q2xvc2FibGVdPVwiZmFsc2VcIiBjbGFzcz1cIlwiPlxyXG4gICAgICAgIDxjbHItYWxlcnQtaXRlbT5cclxuICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJhbGVydC10ZXh0XCI+XHJcbiAgICAgICAgICAgICAgICB7eyAnY2F0YWxvZy5uby1zdG9jay1sb2NhdGlvbnMtYXZhaWxhYmxlLW9uLWN1cnJlbnQtY2hhbm5lbCcgfCB0cmFuc2xhdGUgfX1cclxuICAgICAgICAgICAgPC9zcGFuPlxyXG4gICAgICAgIDwvY2xyLWFsZXJ0LWl0ZW0+XHJcbiAgICA8L2Nsci1hbGVydD5cclxuXHJcbiAgICA8ZGl2IGNsYXNzPVwiZm9ybS1ncmlkIG1iLTJcIj5cclxuICAgICAgICA8dmRyLWZvcm0tZmllbGQgKm5nSWY9XCJzdG9ja0xvY2F0aW9ucy5sZW5ndGhcIiBbbGFiZWxdPVwiJ2NhdGFsb2cuYWRkLXN0b2NrLXRvLWxvY2F0aW9uJyB8IHRyYW5zbGF0ZVwiPlxyXG4gICAgICAgICAgICA8c2VsZWN0IFsobmdNb2RlbCldPVwic2VsZWN0ZWRTdG9ja0xvY2F0aW9uSWRcIj5cclxuICAgICAgICAgICAgICAgIDxvcHRpb24gKm5nRm9yPVwibGV0IGxvY2F0aW9uIG9mIHN0b2NrTG9jYXRpb25zXCIgW3ZhbHVlXT1cImxvY2F0aW9uLmlkXCI+XHJcbiAgICAgICAgICAgICAgICAgICAge3sgbG9jYXRpb24ubmFtZSB9fVxyXG4gICAgICAgICAgICAgICAgPC9vcHRpb24+XHJcbiAgICAgICAgICAgIDwvc2VsZWN0PlxyXG4gICAgICAgIDwvdmRyLWZvcm0tZmllbGQ+XHJcbiAgICA8L2Rpdj5cclxuXHJcbiAgICA8ZGl2IGNsYXNzPVwidmFyaWFudHMtcHJldmlld1wiICpuZ0lmPVwiMCA8IHN0b2NrTG9jYXRpb25zLmxlbmd0aFwiPlxyXG4gICAgICAgIDx0YWJsZSBjbGFzcz1cInRhYmxlXCI+XHJcbiAgICAgICAgICAgIDx0aGVhZD5cclxuICAgICAgICAgICAgICAgIDx0cj5cclxuICAgICAgICAgICAgICAgICAgICA8dGggKm5nSWY9XCIxIDwgdmFyaWFudHMubGVuZ3RoXCI+e3sgJ2NvbW1vbi5jcmVhdGUnIHwgdHJhbnNsYXRlIH19PC90aD5cclxuICAgICAgICAgICAgICAgICAgICA8dGggKm5nSWY9XCIxIDwgdmFyaWFudHMubGVuZ3RoXCI+e3sgJ2NhdGFsb2cudmFyaWFudCcgfCB0cmFuc2xhdGUgfX08L3RoPlxyXG4gICAgICAgICAgICAgICAgICAgIDx0aD57eyAnY2F0YWxvZy5za3UnIHwgdHJhbnNsYXRlIH19PC90aD5cclxuICAgICAgICAgICAgICAgICAgICA8dGg+e3sgJ2NhdGFsb2cucHJpY2UnIHwgdHJhbnNsYXRlIH19PC90aD5cclxuICAgICAgICAgICAgICAgICAgICA8dGg+e3sgJ2NhdGFsb2cuc3RvY2stb24taGFuZCcgfCB0cmFuc2xhdGUgfX08L3RoPlxyXG4gICAgICAgICAgICAgICAgPC90cj5cclxuICAgICAgICAgICAgPC90aGVhZD5cclxuICAgICAgICAgICAgPHRyXHJcbiAgICAgICAgICAgICAgICAqbmdGb3I9XCJsZXQgdmFyaWFudCBvZiB2YXJpYW50czsgdHJhY2tCeTogdHJhY2tCeUZuXCJcclxuICAgICAgICAgICAgICAgIFtjbGFzcy5kaXNhYmxlZF09XCIhdmFyaWFudEZvcm1WYWx1ZXNbdmFyaWFudC5pZF0udmFsdWUuZW5hYmxlZCA9PT0gZmFsc2VcIlxyXG4gICAgICAgICAgICAgICAgW2Zvcm1Hcm91cF09XCJ2YXJpYW50Rm9ybVZhbHVlc1t2YXJpYW50LmlkXVwiXHJcbiAgICAgICAgICAgID5cclxuICAgICAgICAgICAgICAgIDx0ZCAqbmdJZj1cIjEgPCB2YXJpYW50cy5sZW5ndGhcIj5cclxuICAgICAgICAgICAgICAgICAgICA8aW5wdXQgdHlwZT1cImNoZWNrYm94XCIgZm9ybUNvbnRyb2xOYW1lPVwiZW5hYmxlZFwiIGNsckNoZWNrYm94IC8+XHJcbiAgICAgICAgICAgICAgICA8L3RkPlxyXG4gICAgICAgICAgICAgICAgPHRkICpuZ0lmPVwiMSA8IHZhcmlhbnRzLmxlbmd0aFwiPlxyXG4gICAgICAgICAgICAgICAgICAgIHt7IHZhcmlhbnQudmFsdWVzLmpvaW4oJyAnKSB9fVxyXG4gICAgICAgICAgICAgICAgPC90ZD5cclxuICAgICAgICAgICAgICAgIDx0ZD5cclxuICAgICAgICAgICAgICAgICAgICA8dmRyLWZvcm0tZmllbGQ+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxpbnB1dCB0eXBlPVwidGV4dFwiIGZvcm1Db250cm9sTmFtZT1cInNrdVwiIFtwbGFjZWhvbGRlcl09XCInY2F0YWxvZy5za3UnIHwgdHJhbnNsYXRlXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICA8L3Zkci1mb3JtLWZpZWxkPlxyXG4gICAgICAgICAgICAgICAgPC90ZD5cclxuICAgICAgICAgICAgICAgIDx0ZD5cclxuICAgICAgICAgICAgICAgICAgICA8dmRyLWZvcm0tZmllbGQ+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDx2ZHItY3VycmVuY3ktaW5wdXRcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvcm1Db250cm9sTmFtZT1cInByaWNlXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtjdXJyZW5jeUNvZGVdPVwiY3VycmVuY3lDb2RlXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgPjwvdmRyLWN1cnJlbmN5LWlucHV0PlxyXG4gICAgICAgICAgICAgICAgICAgIDwvdmRyLWZvcm0tZmllbGQ+XHJcbiAgICAgICAgICAgICAgICA8L3RkPlxyXG4gICAgICAgICAgICAgICAgPHRkPlxyXG4gICAgICAgICAgICAgICAgICAgIDx2ZHItZm9ybS1maWVsZD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGlucHV0IHR5cGU9XCJudW1iZXJcIiBmb3JtQ29udHJvbE5hbWU9XCJzdG9ja1wiIG1pbj1cIjBcIiBzdGVwPVwiMVwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgPC92ZHItZm9ybS1maWVsZD5cclxuICAgICAgICAgICAgICAgIDwvdGQ+XHJcbiAgICAgICAgICAgIDwvdHI+XHJcbiAgICAgICAgPC90YWJsZT5cclxuICAgIDwvZGl2PlxyXG48L25nLWNvbnRhaW5lcj5cclxuIl19
|
|
133
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2VuZXJhdGUtcHJvZHVjdC12YXJpYW50cy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvbGliL2NhdGFsb2cvc3JjL2NvbXBvbmVudHMvZ2VuZXJhdGUtcHJvZHVjdC12YXJpYW50cy9nZW5lcmF0ZS1wcm9kdWN0LXZhcmlhbnRzLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3NyYy9saWIvY2F0YWxvZy9zcmMvY29tcG9uZW50cy9nZW5lcmF0ZS1wcm9kdWN0LXZhcmlhbnRzL2dlbmVyYXRlLXByb2R1Y3QtdmFyaWFudHMuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxVQUFVLEVBQUUsWUFBWSxFQUFVLE1BQU0sRUFBYSxZQUFZLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFN0csT0FBTyxFQUdILDRCQUE0QixHQUcvQixNQUFNLHdCQUF3QixDQUFDO0FBQ2hDLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLGtDQUFrQyxDQUFDO0FBRTNFLE9BQU8sRUFBRSxHQUFHLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQzs7Ozs7Ozs7QUFJckMsTUFBTSxvQkFBb0IsR0FBRyxxQkFBcUIsQ0FBQztBQW1CbkQsTUFBTSxPQUFPLGdDQUFnQztJQWlCekMsWUFDWSxXQUF3QixFQUN4QixXQUF3QjtRQUR4QixnQkFBVyxHQUFYLFdBQVcsQ0FBYTtRQUN4QixnQkFBVyxHQUFYLFdBQVcsQ0FBYTtRQWxCMUIsbUJBQWMsR0FBRyxJQUFJLFlBQVksRUFBK0IsQ0FBQztRQUUzRSxpQkFBWSxHQUE4RSxFQUFFLENBQUM7UUFHN0Ysc0JBQWlCLEdBUWIsRUFBRSxDQUFDO1FBRVAsNEJBQXVCLEdBQWtCLElBQUksQ0FBQztJQUkzQyxDQUFDO0lBRUosUUFBUTtRQUNKLElBQUksQ0FBQyxXQUFXLENBQUMsUUFBUSxDQUFDLGdCQUFnQixFQUFFLENBQUMs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ZW50UmVmLCBFdmVudEVtaXR0ZXIsIE9uSW5pdCwgT3V0cHV0LCBRdWVyeUxpc3QsIFZpZXdDaGlsZHJlbiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBBYnN0cmFjdENvbnRyb2wsIEZvcm1CdWlsZGVyLCBGb3JtQ29udHJvbCwgRm9ybUdyb3VwIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xyXG5pbXBvcnQge1xyXG4gICAgQ3VycmVuY3lDb2RlLFxyXG4gICAgRGF0YVNlcnZpY2UsXHJcbiAgICBHZXRTdG9ja0xvY2F0aW9uTGlzdERvY3VtZW50LFxyXG4gICAgR2V0U3RvY2tMb2NhdGlvbkxpc3RRdWVyeSxcclxuICAgIEl0ZW1PZixcclxufSBmcm9tICdAdmVuZHVyZS9hZG1pbi11aS9jb3JlJztcclxuaW1wb3J0IHsgZ2VuZXJhdGVBbGxDb21iaW5hdGlvbnMgfSBmcm9tICdAdmVuZHVyZS9jb21tb24vbGliL3NoYXJlZC11dGlscyc7XHJcbmltcG9ydCB7IE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHsgdGFwIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xyXG5cclxuaW1wb3J0IHsgT3B0aW9uVmFsdWVJbnB1dENvbXBvbmVudCB9IGZyb20gJy4uL29wdGlvbi12YWx1ZS1pbnB1dC9vcHRpb24tdmFsdWUtaW5wdXQuY29tcG9uZW50JztcclxuXHJcbmNvbnN0IERFRkFVTFRfVkFSSUFOVF9DT0RFID0gJ19fREVGQVVMVF9WQVJJQU5UX18nO1xyXG5leHBvcnQgdHlwZSBDcmVhdGVWYXJpYW50VmFsdWVzID0ge1xyXG4gICAgb3B0aW9uVmFsdWVzOiBzdHJpbmdbXTtcclxuICAgIGVuYWJsZWQ6IGJvb2xlYW47XHJcbiAgICBza3U6IHN0cmluZztcclxuICAgIHByaWNlOiBudW1iZXI7XHJcbiAgICBzdG9jazogbnVtYmVyO1xyXG59O1xyXG5leHBvcnQgdHlwZSBDcmVhdGVQcm9kdWN0VmFyaWFudHNDb25maWcgPSB7XHJcbiAgICBncm91cHM6IEFycmF5PHsgbmFtZTogc3RyaW5nOyB2YWx1ZXM6IHN0cmluZ1tdIH0+O1xyXG4gICAgdmFyaWFudHM6IENyZWF0ZVZhcmlhbnRWYWx1ZXNbXTtcclxuICAgIHN0b2NrTG9jYXRpb25JZDogc3RyaW5nO1xyXG59O1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgICBzZWxlY3RvcjogJ3Zkci1nZW5lcmF0ZS1wcm9kdWN0LXZhcmlhbnRzJyxcclxuICAgIHRlbXBsYXRlVXJsOiAnLi9nZW5lcmF0ZS1wcm9kdWN0LXZhcmlhbnRzLmNvbXBvbmVudC5odG1sJyxcclxuICAgIHN0eWxlVXJsczogWycuL2dlbmVyYXRlLXByb2R1Y3QtdmFyaWFudHMuY29tcG9uZW50LnNjc3MnXSxcclxufSlcclxuZXhwb3J0IGNsYXNzIEdlbmVyYXRlUHJvZHVjdFZhcmlhbnRzQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcclxuICAgIEBPdXRwdXQoKSB2YXJpYW50c0NoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8Q3JlYXRlUHJvZHVjdFZhcmlhbnRzQ29uZmlnPigpO1xyXG4gICAgQFZpZXdDaGlsZHJlbignb3B0aW9uR3JvdXBOYW1lJywgeyByZWFkOiBFbGVtZW50UmVmIH0pIGdyb3VwTmFtZUlucHV0czogUXVlcnlMaXN0PEVsZW1lbnRSZWY+O1xyXG4gICAgb3B0aW9uR3JvdXBzOiBBcnJheTx7IG5hbWU6IHN0cmluZzsgdmFsdWVzOiBBcnJheTx7IG5hbWU6IHN0cmluZzsgbG9ja2VkOiBib29sZWFuIH0+IH0+ID0gW107XHJcbiAgICBjdXJyZW5jeUNvZGU6IEN1cnJlbmN5Q29kZTtcclxuICAgIHZhcmlhbnRzOiBBcnJheTx7IGlkOiBzdHJpbmc7IHZhbHVlczogc3RyaW5nW10gfT47XHJcbiAgICB2YXJpYW50Rm9ybVZhbHVlczoge1xyXG4gICAgICAgIFtpZDogc3RyaW5nXTogRm9ybUdyb3VwPHtcclxuICAgICAgICAgICAgb3B0aW9uVmFsdWVzOiBGb3JtQ29udHJvbDxzdHJpbmdbXT47XHJcbiAgICAgICAgICAgIGVuYWJsZWQ6IEZvcm1Db250cm9sPGJvb2xlYW4+O1xyXG4gICAgICAgICAgICBwcmljZTogRm9ybUNvbnRyb2w8bnVtYmVyPjtcclxuICAgICAgICAgICAgc2t1OiBGb3JtQ29udHJvbDxzdHJpbmc+O1xyXG4gICAgICAgICAgICBzdG9jazogRm9ybUNvbnRyb2w8bnVtYmVyPjtcclxuICAgICAgICB9PjtcclxuICAgIH0gPSB7fTtcclxuICAgIHN0b2NrTG9jYXRpb25zJDogT2JzZXJ2YWJsZTxBcnJheTxJdGVtT2Y8R2V0U3RvY2tMb2NhdGlvbkxpc3RRdWVyeSwgJ3N0b2NrTG9jYXRpb25zJz4+PjtcclxuICAgIHNlbGVjdGVkU3RvY2tMb2NhdGlvbklkOiBzdHJpbmcgfCBudWxsID0gbnVsbDtcclxuICAgIGNvbnN0cnVjdG9yKFxyXG4gICAgICAgIHByaXZhdGUgZGF0YVNlcnZpY2U6IERhdGFTZXJ2aWNlLFxyXG4gICAgICAgIHByaXZhdGUgZm9ybUJ1aWxkZXI6IEZvcm1CdWlsZGVyLFxyXG4gICAgKSB7fVxyXG5cclxuICAgIG5nT25Jbml0KCkge1xyXG4gICAgICAgIHRoaXMuZGF0YVNlcnZpY2Uuc2V0dGluZ3MuZ2V0QWN0aXZlQ2hhbm5lbCgpLnNpbmdsZSQuc3Vic2NyaWJlKGRhdGEgPT4ge1xyXG4gICAgICAgICAgICB0aGlzLmN1cnJlbmN5Q29kZSA9IGRhdGEuYWN0aXZlQ2hhbm5lbC5kZWZhdWx0Q3VycmVuY3lDb2RlO1xyXG4gICAgICAgIH0pO1xyXG4gICAgICAgIHRoaXMuc3RvY2tMb2NhdGlvbnMkID0gdGhpcy5kYXRhU2VydmljZVxyXG4gICAgICAgICAgICAucXVlcnkoR2V0U3RvY2tMb2NhdGlvbkxpc3REb2N1bWVudCwge1xyXG4gICAgICAgICAgICAgICAgb3B0aW9uczoge1xyXG4gICAgICAgICAgICAgICAgICAgIHRha2U6IDk5OSxcclxuICAgICAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgIH0pXHJcbiAgICAgICAgICAgIC5yZWZldGNoT25DaGFubmVsQ2hhbmdlKClcclxuICAgICAgICAgICAgLm1hcFN0cmVhbSgoeyBzdG9ja0xvY2F0aW9ucyB9KSA9PiBzdG9ja0xvY2F0aW9ucy5pdGVtcylcclxuICAgICAgICAgICAgLnBpcGUoXHJcbiAgICAgICAgICAgICAgICB0YXAoaXRlbXMgPT4ge1xyXG4gICAgICAgICAgICAgICAgICAgIGlmIChpdGVtcy5sZW5ndGgpIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5zZWxlY3RlZFN0b2NrTG9jYXRpb25JZCA9IGl0ZW1zWzBdLmlkO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLm9uRm9ybUNoYW5nZSgpO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH0pLFxyXG4gICAgICAgICAgICApO1xyXG5cclxuICAgICAgICB0aGlzLmdlbmVyYXRlVmFyaWFudHMoKTtcclxuICAgIH1cclxuXHJcbiAgICBhZGRPcHRpb24oKSB7XHJcbiAgICAgICAgdGhpcy5vcHRpb25Hcm91cHMucHVzaCh7IG5hbWU6ICcnLCB2YWx1ZXM6IFtdIH0pO1xyXG4gICAgICAgIGNvbnN0IGluZGV4ID0gdGhpcy5vcHRpb25Hcm91cHMubGVuZ3RoIC0gMTtcclxuICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHtcclxuICAgICAgICAgICAgY29uc3QgaW5wdXQgPSB0aGlzLmdyb3VwTmFtZUlucHV0cy5nZXQoaW5kZXgpPy5uYXRpdmVFbGVtZW50O1xyXG4gICAgICAgICAgICBpbnB1dD8uZm9jdXMoKTtcclxuICAgICAgICB9KTtcclxuICAgIH1cclxuXHJcbiAgICByZW1vdmVPcHRpb24obmFtZTogc3RyaW5nKSB7XHJcbiAgICAgICAgdGhpcy5vcHRpb25Hcm91cHMgPSB0aGlzLm9wdGlvbkdyb3Vwcy5maWx0ZXIoZyA9PiBnLm5hbWUgIT09IG5hbWUpO1xyXG4gICAgICAgIHRoaXMuZ2VuZXJhdGVWYXJpYW50cygpO1xyXG4gICAgfVxyXG5cclxuICAgIGdlbmVyYXRlVmFyaWFudHMoKSB7XHJcbiAgICAgICAgY29uc3QgdG90YWxWYWx1ZXNDb3VudCA9IHRoaXMub3B0aW9uR3JvdXBzLnJlZHVjZSgoc3VtLCBncm91cCkgPT4gc3VtICsgZ3JvdXAudmFsdWVzLmxlbmd0aCwgMCk7XHJcbiAgICAgICAgY29uc3QgZ3JvdXBzID0gdG90YWxWYWx1ZXNDb3VudFxyXG4gICAgICAgICAgICA/IHRoaXMub3B0aW9uR3JvdXBzLm1hcChnID0+IGcudmFsdWVzLm1hcCh2ID0+IHYubmFtZSkpXHJcbiAgICAgICAgICAgIDogW1tERUZBVUxUX1ZBUklBTlRfQ09ERV1dO1xyXG4gICAgICAgIHRoaXMudmFyaWFudHMgPSBnZW5lcmF0ZUFsbENvbWJpbmF0aW9ucyhncm91cHMpLm1hcCh2YWx1ZXMgPT4gKHsgaWQ6IHZhbHVlcy5qb2luKCd8JyksIHZhbHVlcyB9KSk7XHJcblxyXG4gICAgICAgIHRoaXMudmFyaWFudHMuZm9yRWFjaCgodmFyaWFudCwgaW5kZXgpID0+IHtcclxuICAgICAgICAgICAgaWYgKCF0aGlzLnZhcmlhbnRGb3JtVmFsdWVzW3ZhcmlhbnQuaWRdKSB7XHJcbiAgICAgICAgICAgICAgICBjb25zdCBmb3JtR3JvdXAgPSB0aGlzLmZvcm1CdWlsZGVyLm5vbk51bGxhYmxlLmdyb3VwKHtcclxuICAgICAgICAgICAgICAgICAgICBvcHRpb25WYWx1ZXM6IFt2YXJpYW50LnZhbHVlc10sXHJcbiAgICAgICAgICAgICAgICAgICAgZW5hYmxlZDogdHJ1ZSBhcyBib29sZWFuLFxyXG4gICAgICAgICAgICAgICAgICAgIHByaWNlOiB0aGlzLmNvcHlGcm9tRGVmYXVsdCh2YXJpYW50LmlkLCAncHJpY2UnLCAwKSxcclxuICAgICAgICAgICAgICAgICAgICBza3U6IHRoaXMuY29weUZyb21EZWZhdWx0KHZhcmlhbnQuaWQsICdza3UnLCAnJyksXHJcbiAgICAgICAgICAgICAgICAgICAgc3RvY2s6IHRoaXMuY29weUZyb21EZWZhdWx0KHZhcmlhbnQuaWQsICdzdG9jaycsIDApLFxyXG4gICAgICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgICAgICAgICBmb3JtR3JvdXAudmFsdWVDaGFuZ2VzLnN1YnNjcmliZSgoKSA9PiB0aGlzLm9uRm9ybUNoYW5nZSgpKTtcclxuICAgICAgICAgICAgICAgIGlmIChpbmRleCA9PT0gMCkge1xyXG4gICAgICAgICAgICAgICAgICAgIGZvcm1Hcm91cC5nZXQoJ3ByaWNlJyk/LnZhbHVlQ2hhbmdlcy5zdWJzY3JpYmUodmFsdWUgPT4ge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmNvcHlWYWx1ZXNUb1ByaXN0aW5lKCdwcmljZScsIGZvcm1Hcm91cC5nZXQoJ3ByaWNlJykpO1xyXG4gICAgICAgICAgICAgICAgICAgIH0pO1xyXG4gICAgICAgICAgICAgICAgICAgIGZvcm1Hcm91cC5nZXQoJ3NrdScpPy52YWx1ZUNoYW5nZXMuc3Vic2NyaWJlKHZhbHVlID0+IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5jb3B5VmFsdWVzVG9QcmlzdGluZSgnc2t1JywgZm9ybUdyb3VwLmdldCgnc2t1JykpO1xyXG4gICAgICAgICAgICAgICAgICAgIH0pO1xyXG4gICAgICAgICAgICAgICAgICAgIGZvcm1Hcm91cC5nZXQoJ3N0b2NrJyk/LnZhbHVlQ2hhbmdlcy5zdWJzY3JpYmUodmFsdWUgPT4ge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmNvcHlWYWx1ZXNUb1ByaXN0aW5lKCdzdG9jaycsIGZvcm1Hcm91cC5nZXQoJ3N0b2NrJykpO1xyXG4gICAgICAgICAgICAgICAgICAgIH0pO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgdGhpcy52YXJpYW50Rm9ybVZhbHVlc1t2YXJpYW50LmlkXSA9IGZvcm1Hcm91cDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH0pO1xyXG4gICAgICAgIHRoaXMub25Gb3JtQ2hhbmdlKCk7XHJcbiAgICB9XHJcblxyXG4gICAgdHJhY2tCeUZuKGluZGV4OiBudW1iZXIsIHZhcmlhbnQ6IHsgbmFtZTogc3RyaW5nOyB2YWx1ZXM6IHN0cmluZ1tdIH0pIHtcclxuICAgICAgICByZXR1cm4gdmFyaWFudC52YWx1ZXMuam9pbignfCcpO1xyXG4gICAgfVxyXG5cclxuICAgIGhhbmRsZUVudGVyKGV2ZW50OiBLZXlib2FyZEV2ZW50LCBvcHRpb25WYWx1ZUlucHV0Q29tcG9uZW50OiBPcHRpb25WYWx1ZUlucHV0Q29tcG9uZW50KSB7XHJcbiAgICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcclxuICAgICAgICBldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcclxuICAgICAgICBvcHRpb25WYWx1ZUlucHV0Q29tcG9uZW50LmZvY3VzKCk7XHJcbiAgICB9XHJcblxyXG4gICAgY29weVZhbHVlc1RvUHJpc3RpbmUoZmllbGQ6ICdwcmljZScgfCAnc2t1JyB8ICdzdG9jaycsIGZvcm1Db250cm9sOiBBYnN0cmFjdENvbnRyb2wgfCBudWxsKSB7XHJcbiAgICAgICAgaWYgKCFmb3JtQ29udHJvbCkge1xyXG4gICAgICAgICAgICByZXR1cm47XHJcbiAgICAgICAgfVxyXG4gICAgICAgIE9iamVjdC52YWx1ZXModGhpcy52YXJpYW50Rm9ybVZhbHVlcykuZm9yRWFjaChmb3JtR3JvdXAgPT4ge1xyXG4gICAgICAgICAgICBjb25zdCBjb3JyZXNwb25kaW5nRm9ybUNvbnRyb2wgPSBmb3JtR3JvdXAuZ2V0KGZpZWxkKSBhcyBGb3JtQ29udHJvbDtcclxuICAgICAgICAgICAgaWYgKGNvcnJlc3BvbmRpbmdGb3JtQ29udHJvbCAmJiBjb3JyZXNwb25kaW5nRm9ybUNvbnRyb2wucHJpc3RpbmUpIHtcclxuICAgICAgICAgICAgICAgIGNvcnJlc3BvbmRpbmdGb3JtQ29udHJvbC5zZXRWYWx1ZShmb3JtQ29udHJvbC52YWx1ZSwgeyBlbWl0RXZlbnQ6IGZhbHNlIH0pO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfSk7XHJcbiAgICB9XHJcblxyXG4gICAgb25Gb3JtQ2hhbmdlKCkge1xyXG4gICAgICAgIGNvbnN0IHZhcmlhbnRzVG9DcmVhdGUgPSB0aGlzLnZhcmlhbnRzXHJcbiAgICAgICAgICAgIC5tYXAodiA9PiB0aGlzLnZhcmlhbnRGb3JtVmFsdWVzW3YuaWRdLnZhbHVlIGFzIENyZWF0ZVZhcmlhbnRWYWx1ZXMpXHJcbiAgICAgICAgICAgIC5maWx0ZXIodiA9PiB2LmVuYWJsZWQpO1xyXG4gICAgICAgIHRoaXMudmFyaWFudHNDaGFuZ2UuZW1pdCh7XHJcbiAgICAgICAgICAgIGdyb3VwczogdGhpcy5vcHRpb25Hcm91cHMubWFwKG9nID0+ICh7IG5hbWU6IG9nLm5hbWUsIHZhbHVlczogb2cudmFsdWVzLm1hcCh2ID0+IHYubmFtZSkgfSkpLFxyXG4gICAgICAgICAgICB2YXJpYW50czogdmFyaWFudHNUb0NyZWF0ZSxcclxuICAgICAgICAgICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby1ub24tbnVsbC1hc3NlcnRpb25cclxuICAgICAgICAgICAgc3RvY2tMb2NhdGlvbklkOiB0aGlzLnNlbGVjdGVkU3RvY2tMb2NhdGlvbklkISxcclxuICAgICAgICB9KTtcclxuICAgIH1cclxuXHJcbiAgICBwcml2YXRlIGNvcHlGcm9tRGVmYXVsdDxUIGV4dGVuZHMga2V5b2YgQ3JlYXRlVmFyaWFudFZhbHVlcz4oXHJcbiAgICAgICAgdmFyaWFudElkOiBzdHJpbmcsXHJcbiAgICAgICAgcHJvcDogVCxcclxuICAgICAgICB2YWx1ZTogQ3JlYXRlVmFyaWFudFZhbHVlc1tUXSxcclxuICAgICk6IENyZWF0ZVZhcmlhbnRWYWx1ZXNbVF0ge1xyXG4gICAgICAgIHJldHVybiB2YXJpYW50SWQgIT09IERFRkFVTFRfVkFSSUFOVF9DT0RFXHJcbiAgICAgICAgICAgID8gKHRoaXMudmFyaWFudEZvcm1WYWx1ZXNbREVGQVVMVF9WQVJJQU5UX0NPREVdLmdldChwcm9wKT8udmFsdWUgYXMgQ3JlYXRlVmFyaWFudFZhbHVlc1tUXSlcclxuICAgICAgICAgICAgOiB2YWx1ZTtcclxuICAgIH1cclxufVxyXG4iLCI8ZGl2ICpuZ0Zvcj1cImxldCBncm91cCBvZiBvcHRpb25Hcm91cHNcIiBjbGFzcz1cIm9wdGlvbi1ncm91cHNcIj5cclxuICAgIDxkaXYgY2xhc3M9XCJuYW1lXCI+XHJcbiAgICAgICAgPGxhYmVsPnt7ICdjYXRhbG9nLm9wdGlvbicgfCB0cmFuc2xhdGUgfX08L2xhYmVsPlxyXG4gICAgICAgIDxpbnB1dFxyXG4gICAgICAgICAgICAjb3B0aW9uR3JvdXBOYW1lXHJcbiAgICAgICAgICAgIHBsYWNlaG9sZGVyPVwiZS5nLiBTaXplXCJcclxuICAgICAgICAgICAgY2xySW5wdXRcclxuICAgICAgICAgICAgWyhuZ01vZGVsKV09XCJncm91cC5uYW1lXCJcclxuICAgICAgICAgICAgbmFtZT1cIm5hbWVcIlxyXG4gICAgICAgICAgICByZXF1aXJlZFxyXG4gICAgICAgICAgICAoa2V5ZG93bi5lbnRlcik9XCJoYW5kbGVFbnRlcigkZXZlbnQsIG9wdGlvblZhbHVlSW5wdXRDb21wb25lbnQpXCJcclxuICAgICAgICAvPlxyXG4gICAgPC9kaXY+XHJcbiAgICA8ZGl2IGNsYXNzPVwidmFsdWVzXCI+XHJcbiAgICAgICAgPGxhYmVsPnt7ICdjYXRhbG9nLm9wdGlvbi12YWx1ZXMnIHwgdHJhbnNsYXRlIH19PC9sYWJlbD5cclxuICAgICAgICA8dmRyLW9wdGlvbi12YWx1ZS1pbnB1dFxyXG4gICAgICAgICAgICAjb3B0aW9uVmFsdWVJbnB1dENvbXBvbmVudFxyXG4gICAgICAgICAgICBbKG5nTW9kZWwpXT1cImdyb3VwLnZhbHVlc1wiXHJcbiAgICAgICAgICAgIChuZ01vZGVsQ2hhbmdlKT1cImdlbmVyYXRlVmFyaWFudHMoKVwiXHJcbiAgICAgICAgICAgIChlZGl0KT1cImdlbmVyYXRlVmFyaWFudHMoKVwiXHJcbiAgICAgICAgICAgIFtncm91cE5hbWVdPVwiZ3JvdXAubmFtZVwiXHJcbiAgICAgICAgICAgIFtkaXNhYmxlZF09XCJncm91cC5uYW1lID09PSAnJ1wiXHJcbiAgICAgICAgPjwvdmRyLW9wdGlvbi12YWx1ZS1pbnB1dD5cclxuICAgIDwvZGl2PlxyXG4gICAgPGRpdiBjbGFzcz1cInJlbW92ZS1ncm91cFwiPlxyXG4gICAgICAgIDxidXR0b25cclxuICAgICAgICAgICAgY2xhc3M9XCJidXR0b24tc21hbGwgbXQtMlwiXHJcbiAgICAgICAgICAgIFt0aXRsZV09XCInY2F0YWxvZy5yZW1vdmUtb3B0aW9uJyB8IHRyYW5zbGF0ZVwiXHJcbiAgICAgICAgICAgIChjbGljayk9XCJyZW1vdmVPcHRpb24oZ3JvdXAubmFtZSlcIlxyXG4gICAgICAgID5cclxuICAgICAgICAgICAgPGNsci1pY29uIHNoYXBlPVwidHJhc2hcIj48L2Nsci1pY29uPlxyXG4gICAgICAgIDwvYnV0dG9uPlxyXG4gICAgPC9kaXY+XHJcbjwvZGl2PlxyXG48YnV0dG9uIGNsYXNzPVwiYnV0dG9uIG1iLTJcIiAoY2xpY2spPVwiYWRkT3B0aW9uKClcIj5cclxuICAgIDxjbHItaWNvbiBzaGFwZT1cInBsdXNcIj48L2Nsci1pY29uPlxyXG4gICAge3sgJ2NhdGFsb2cuYWRkLW9wdGlvbicgfCB0cmFuc2xhdGUgfX1cclxuPC9idXR0b24+XHJcblxyXG48bmctY29udGFpbmVyICpuZ0lmPVwic3RvY2tMb2NhdGlvbnMkIHwgYXN5bmMgYXMgc3RvY2tMb2NhdGlvbnNcIj5cclxuICAgIDxjbHItYWxlcnQgKm5nSWY9XCJzdG9ja0xvY2F0aW9ucy5sZW5ndGggPT09IDBcIiBjbHJBbGVydFR5cGU9XCJ3YXJuaW5nXCIgW2NsckFsZXJ0Q2xvc2FibGVdPVwiZmFsc2VcIiBjbGFzcz1cIlwiPlxyXG4gICAgICAgIDxjbHItYWxlcnQtaXRlbT5cclxuICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJhbGVydC10ZXh0XCI+XHJcbiAgICAgICAgICAgICAgICB7eyAnY2F0YWxvZy5uby1zdG9jay1sb2NhdGlvbnMtYXZhaWxhYmxlLW9uLWN1cnJlbnQtY2hhbm5lbCcgfCB0cmFuc2xhdGUgfX1cclxuICAgICAgICAgICAgPC9zcGFuPlxyXG4gICAgICAgIDwvY2xyLWFsZXJ0LWl0ZW0+XHJcbiAgICA8L2Nsci1hbGVydD5cclxuXHJcbiAgICA8ZGl2IGNsYXNzPVwiZm9ybS1ncmlkIG1iLTJcIj5cclxuICAgICAgICA8dmRyLWZvcm0tZmllbGQgKm5nSWY9XCJzdG9ja0xvY2F0aW9ucy5sZW5ndGhcIiBbbGFiZWxdPVwiJ2NhdGFsb2cuYWRkLXN0b2NrLXRvLWxvY2F0aW9uJyB8IHRyYW5zbGF0ZVwiPlxyXG4gICAgICAgICAgICA8c2VsZWN0IFsobmdNb2RlbCldPVwic2VsZWN0ZWRTdG9ja0xvY2F0aW9uSWRcIj5cclxuICAgICAgICAgICAgICAgIDxvcHRpb24gKm5nRm9yPVwibGV0IGxvY2F0aW9uIG9mIHN0b2NrTG9jYXRpb25zXCIgW3ZhbHVlXT1cImxvY2F0aW9uLmlkXCI+XHJcbiAgICAgICAgICAgICAgICAgICAge3sgbG9jYXRpb24ubmFtZSB9fVxyXG4gICAgICAgICAgICAgICAgPC9vcHRpb24+XHJcbiAgICAgICAgICAgIDwvc2VsZWN0PlxyXG4gICAgICAgIDwvdmRyLWZvcm0tZmllbGQ+XHJcbiAgICA8L2Rpdj5cclxuXHJcbiAgICA8ZGl2IGNsYXNzPVwidmFyaWFudHMtcHJldmlld1wiICpuZ0lmPVwiMCA8IHN0b2NrTG9jYXRpb25zLmxlbmd0aFwiPlxyXG4gICAgICAgIDx0YWJsZSBjbGFzcz1cInRhYmxlXCI+XHJcbiAgICAgICAgICAgIDx0aGVhZD5cclxuICAgICAgICAgICAgICAgIDx0cj5cclxuICAgICAgICAgICAgICAgICAgICA8dGggKm5nSWY9XCIxIDwgdmFyaWFudHMubGVuZ3RoXCI+e3sgJ2NvbW1vbi5jcmVhdGUnIHwgdHJhbnNsYXRlIH19PC90aD5cclxuICAgICAgICAgICAgICAgICAgICA8dGggKm5nSWY9XCIxIDwgdmFyaWFudHMubGVuZ3RoXCI+e3sgJ2NhdGFsb2cudmFyaWFudCcgfCB0cmFuc2xhdGUgfX08L3RoPlxyXG4gICAgICAgICAgICAgICAgICAgIDx0aD57eyAnY2F0YWxvZy5za3UnIHwgdHJhbnNsYXRlIH19PC90aD5cclxuICAgICAgICAgICAgICAgICAgICA8dGg+e3sgJ2NhdGFsb2cucHJpY2UnIHwgdHJhbnNsYXRlIH19PC90aD5cclxuICAgICAgICAgICAgICAgICAgICA8dGg+e3sgJ2NhdGFsb2cuc3RvY2stb24taGFuZCcgfCB0cmFuc2xhdGUgfX08L3RoPlxyXG4gICAgICAgICAgICAgICAgPC90cj5cclxuICAgICAgICAgICAgPC90aGVhZD5cclxuICAgICAgICAgICAgPHRyXHJcbiAgICAgICAgICAgICAgICAqbmdGb3I9XCJsZXQgdmFyaWFudCBvZiB2YXJpYW50czsgdHJhY2tCeTogdHJhY2tCeUZuXCJcclxuICAgICAgICAgICAgICAgIFtjbGFzcy5kaXNhYmxlZF09XCIhdmFyaWFudEZvcm1WYWx1ZXNbdmFyaWFudC5pZF0udmFsdWUuZW5hYmxlZCA9PT0gZmFsc2VcIlxyXG4gICAgICAgICAgICAgICAgW2Zvcm1Hcm91cF09XCJ2YXJpYW50Rm9ybVZhbHVlc1t2YXJpYW50LmlkXVwiXHJcbiAgICAgICAgICAgID5cclxuICAgICAgICAgICAgICAgIDx0ZCAqbmdJZj1cIjEgPCB2YXJpYW50cy5sZW5ndGhcIj5cclxuICAgICAgICAgICAgICAgICAgICA8aW5wdXQgdHlwZT1cImNoZWNrYm94XCIgZm9ybUNvbnRyb2xOYW1lPVwiZW5hYmxlZFwiIGNsckNoZWNrYm94IC8+XHJcbiAgICAgICAgICAgICAgICA8L3RkPlxyXG4gICAgICAgICAgICAgICAgPHRkICpuZ0lmPVwiMSA8IHZhcmlhbnRzLmxlbmd0aFwiPlxyXG4gICAgICAgICAgICAgICAgICAgIHt7IHZhcmlhbnQudmFsdWVzLmpvaW4oJyAnKSB9fVxyXG4gICAgICAgICAgICAgICAgPC90ZD5cclxuICAgICAgICAgICAgICAgIDx0ZD5cclxuICAgICAgICAgICAgICAgICAgICA8dmRyLWZvcm0tZmllbGQ+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxpbnB1dCB0eXBlPVwidGV4dFwiIGZvcm1Db250cm9sTmFtZT1cInNrdVwiIFtwbGFjZWhvbGRlcl09XCInY2F0YWxvZy5za3UnIHwgdHJhbnNsYXRlXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICA8L3Zkci1mb3JtLWZpZWxkPlxyXG4gICAgICAgICAgICAgICAgPC90ZD5cclxuICAgICAgICAgICAgICAgIDx0ZD5cclxuICAgICAgICAgICAgICAgICAgICA8dmRyLWZvcm0tZmllbGQ+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDx2ZHItY3VycmVuY3ktaW5wdXRcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvcm1Db250cm9sTmFtZT1cInByaWNlXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtjdXJyZW5jeUNvZGVdPVwiY3VycmVuY3lDb2RlXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgPjwvdmRyLWN1cnJlbmN5LWlucHV0PlxyXG4gICAgICAgICAgICAgICAgICAgIDwvdmRyLWZvcm0tZmllbGQ+XHJcbiAgICAgICAgICAgICAgICA8L3RkPlxyXG4gICAgICAgICAgICAgICAgPHRkPlxyXG4gICAgICAgICAgICAgICAgICAgIDx2ZHItZm9ybS1maWVsZD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGlucHV0IHR5cGU9XCJudW1iZXJcIiBmb3JtQ29udHJvbE5hbWU9XCJzdG9ja1wiIG1pbj1cIjBcIiBzdGVwPVwiMVwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgPC92ZHItZm9ybS1maWVsZD5cclxuICAgICAgICAgICAgICAgIDwvdGQ+XHJcbiAgICAgICAgICAgIDwvdHI+XHJcbiAgICAgICAgPC90YWJsZT5cclxuICAgIDwvZGl2PlxyXG48L25nLWNvbnRhaW5lcj5cclxuIl19
|