@wizishop/wizi-block 15.0.108-beta → 15.0.110-beta

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.
@@ -85,9 +85,9 @@ export class ProductZoomTripleColumnComponent extends StructuresComponent {
85
85
  }
86
86
  }
87
87
  ProductZoomTripleColumnComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: ProductZoomTripleColumnComponent, deps: [{ token: i1.ApiService }, { token: i2.ExternalConfigService }, { token: i3.CurrencyService }], target: i0.ɵɵFactoryTarget.Component });
88
- ProductZoomTripleColumnComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.9", type: ProductZoomTripleColumnComponent, selector: "wb-product-zoom-triple-column", usesInheritance: true, ngImport: i0, template: "<div *ngIf=\"!isLoading && selectedProduct\" class=\"wb-product-zoom-triple-column__product-config\">\n <wb-structure-config [blockUUID]=\"uuid\" [position]=\"TYPE_CONFIG_POSITION_LEFT_TOP\" [isFullwidth]=\"true\">\n <wb-structure-search-product\n [label]=\"'wb.structures.template.20' | translate\"\n (newSearch)=\"prodSearched($event)\"\n ></wb-structure-search-product>\n </wb-structure-config>\n</div>\n<div class=\"wb-product-zoom-triple-column\">\n <wb-loader *ngIf=\"isLoading\"></wb-loader>\n <div class=\"wb-product-zoom-triple-column__noproduct\" *ngIf=\"!isLoading && selectedProduct === null\">\n <wb-structure-search-product\n [label]=\"'wb.structures.template.20' | translate\"\n (newSearch)=\"prodSearched($event)\"\n [searchNumber]=\"1\"\n ></wb-structure-search-product>\n </div>\n <div *ngIf=\"!isLoading && selectedProduct\" class=\"wb-product-zoom-triple-column__selected\">\n <div class=\"columns is-gapless\">\n <div class=\"column\">\n <div class=\"container-img\">\n <img [src]=\"imageFrontUrl + selectedProduct.main_image.file\" />\n </div>\n </div>\n <div class=\"column\">\n <h3>{{ selectedProduct.name }}</h3>\n <div>\n <wz-editor\n [(ngModel)]=\"contents[BASE_BLOCK_CONTENT][FORM_NAME_CONTENT]\"\n (ngModelChange)=\"persist()\"\n [placeholder]=\"'wb.shared.components.quill.1' | translate\"\n containerSelector=\".wb-component__container\"\n >\n </wz-editor>\n </div>\n <p>{{ priceFormat }}</p>\n <p class=\"is-variant\" *ngIf=\"selectedProduct.variants.length\">{{ selectedProduct.variants[0].label }}</p>\n </div>\n <div class=\"column\" [style.background-color]=\"contents[BASE_BLOCK_CONTENT][FORM_NAME_COLOR]\">\n <a>{{ 'wb.structures.template.23' | translate }}</a>\n </div>\n </div>\n </div>\n</div>\n", dependencies: [{ kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i5.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i5.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i6.StructureConfigComponent, selector: "wb-structure-config", inputs: ["isActive", "blockUUID", "position", "isFullwidth", "small", "extraSmall"], outputs: ["isClose"] }, { kind: "component", type: i7.StructureSearchProductComponent, selector: "wb-structure-search-product", inputs: ["label", "searchNumber", "selectedProd"], outputs: ["newSearch"] }, { kind: "component", type: i8.LoaderComponent, selector: "wb-loader" }, { kind: "component", type: i9.WiziEditorComponent, selector: "wz-editor", inputs: ["placeholder", "position", "containerSelector"] }, { kind: "pipe", type: i10.TranslatePipe, name: "translate" }] });
88
+ ProductZoomTripleColumnComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.9", type: ProductZoomTripleColumnComponent, selector: "wb-product-zoom-triple-column", usesInheritance: true, ngImport: i0, template: "<div class=\"wb-product-zoom-triple-column\">\n <wb-structure-config *ngIf=\"!isLoading && selectedProduct\" [blockUUID]=\"uuid\" [position]=\"TYPE_CONFIG_POSITION_LEFT_TOP\" [isFullwidth]=\"true\">\n <wb-structure-search-product\n [label]=\"'wb.structures.template.20' | translate\"\n (newSearch)=\"prodSearched($event)\"\n ></wb-structure-search-product>\n </wb-structure-config>\n <wb-loader *ngIf=\"isLoading\"></wb-loader>\n <div class=\"wb-product-zoom-triple-column__noproduct\" *ngIf=\"!isLoading && selectedProduct === null\">\n <wb-structure-search-product\n [label]=\"'wb.structures.template.20' | translate\"\n (newSearch)=\"prodSearched($event)\"\n [searchNumber]=\"1\"\n ></wb-structure-search-product>\n </div>\n <div *ngIf=\"!isLoading && selectedProduct\" class=\"wb-product-zoom-triple-column__selected\">\n <div class=\"columns is-gapless\">\n <div class=\"column\">\n <div class=\"container-img\">\n <img [src]=\"imageFrontUrl + selectedProduct.main_image.file\" />\n </div>\n </div>\n <div class=\"column\">\n <h3>{{ selectedProduct.name }}</h3>\n <div>\n <wz-editor\n [(ngModel)]=\"contents[BASE_BLOCK_CONTENT][FORM_NAME_CONTENT]\"\n (ngModelChange)=\"persist()\"\n [placeholder]=\"'wb.shared.components.quill.1' | translate\"\n containerSelector=\".wb-component__container\"\n >\n </wz-editor>\n </div>\n <p>{{ priceFormat }}</p>\n <p class=\"is-variant\" *ngIf=\"selectedProduct.variants.length\">{{ selectedProduct.variants[0].label }}</p>\n </div>\n <div class=\"column\" [style.background-color]=\"contents[BASE_BLOCK_CONTENT][FORM_NAME_COLOR]\">\n <a>{{ 'wb.structures.template.23' | translate }}</a>\n </div>\n </div>\n </div>\n</div>\n", dependencies: [{ kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i5.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i5.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i6.StructureConfigComponent, selector: "wb-structure-config", inputs: ["isActive", "blockUUID", "position", "isFullwidth", "small", "extraSmall"], outputs: ["isClose"] }, { kind: "component", type: i7.StructureSearchProductComponent, selector: "wb-structure-search-product", inputs: ["label", "searchNumber", "selectedProd"], outputs: ["newSearch"] }, { kind: "component", type: i8.LoaderComponent, selector: "wb-loader" }, { kind: "component", type: i9.WiziEditorComponent, selector: "wz-editor", inputs: ["placeholder", "position", "containerSelector"] }, { kind: "pipe", type: i10.TranslatePipe, name: "translate" }] });
89
89
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: ProductZoomTripleColumnComponent, decorators: [{
90
90
  type: Component,
91
- args: [{ selector: ProductZoomTripleColumnService.selector(), template: "<div *ngIf=\"!isLoading && selectedProduct\" class=\"wb-product-zoom-triple-column__product-config\">\n <wb-structure-config [blockUUID]=\"uuid\" [position]=\"TYPE_CONFIG_POSITION_LEFT_TOP\" [isFullwidth]=\"true\">\n <wb-structure-search-product\n [label]=\"'wb.structures.template.20' | translate\"\n (newSearch)=\"prodSearched($event)\"\n ></wb-structure-search-product>\n </wb-structure-config>\n</div>\n<div class=\"wb-product-zoom-triple-column\">\n <wb-loader *ngIf=\"isLoading\"></wb-loader>\n <div class=\"wb-product-zoom-triple-column__noproduct\" *ngIf=\"!isLoading && selectedProduct === null\">\n <wb-structure-search-product\n [label]=\"'wb.structures.template.20' | translate\"\n (newSearch)=\"prodSearched($event)\"\n [searchNumber]=\"1\"\n ></wb-structure-search-product>\n </div>\n <div *ngIf=\"!isLoading && selectedProduct\" class=\"wb-product-zoom-triple-column__selected\">\n <div class=\"columns is-gapless\">\n <div class=\"column\">\n <div class=\"container-img\">\n <img [src]=\"imageFrontUrl + selectedProduct.main_image.file\" />\n </div>\n </div>\n <div class=\"column\">\n <h3>{{ selectedProduct.name }}</h3>\n <div>\n <wz-editor\n [(ngModel)]=\"contents[BASE_BLOCK_CONTENT][FORM_NAME_CONTENT]\"\n (ngModelChange)=\"persist()\"\n [placeholder]=\"'wb.shared.components.quill.1' | translate\"\n containerSelector=\".wb-component__container\"\n >\n </wz-editor>\n </div>\n <p>{{ priceFormat }}</p>\n <p class=\"is-variant\" *ngIf=\"selectedProduct.variants.length\">{{ selectedProduct.variants[0].label }}</p>\n </div>\n <div class=\"column\" [style.background-color]=\"contents[BASE_BLOCK_CONTENT][FORM_NAME_COLOR]\">\n <a>{{ 'wb.structures.template.23' | translate }}</a>\n </div>\n </div>\n </div>\n</div>\n" }]
91
+ args: [{ selector: ProductZoomTripleColumnService.selector(), template: "<div class=\"wb-product-zoom-triple-column\">\n <wb-structure-config *ngIf=\"!isLoading && selectedProduct\" [blockUUID]=\"uuid\" [position]=\"TYPE_CONFIG_POSITION_LEFT_TOP\" [isFullwidth]=\"true\">\n <wb-structure-search-product\n [label]=\"'wb.structures.template.20' | translate\"\n (newSearch)=\"prodSearched($event)\"\n ></wb-structure-search-product>\n </wb-structure-config>\n <wb-loader *ngIf=\"isLoading\"></wb-loader>\n <div class=\"wb-product-zoom-triple-column__noproduct\" *ngIf=\"!isLoading && selectedProduct === null\">\n <wb-structure-search-product\n [label]=\"'wb.structures.template.20' | translate\"\n (newSearch)=\"prodSearched($event)\"\n [searchNumber]=\"1\"\n ></wb-structure-search-product>\n </div>\n <div *ngIf=\"!isLoading && selectedProduct\" class=\"wb-product-zoom-triple-column__selected\">\n <div class=\"columns is-gapless\">\n <div class=\"column\">\n <div class=\"container-img\">\n <img [src]=\"imageFrontUrl + selectedProduct.main_image.file\" />\n </div>\n </div>\n <div class=\"column\">\n <h3>{{ selectedProduct.name }}</h3>\n <div>\n <wz-editor\n [(ngModel)]=\"contents[BASE_BLOCK_CONTENT][FORM_NAME_CONTENT]\"\n (ngModelChange)=\"persist()\"\n [placeholder]=\"'wb.shared.components.quill.1' | translate\"\n containerSelector=\".wb-component__container\"\n >\n </wz-editor>\n </div>\n <p>{{ priceFormat }}</p>\n <p class=\"is-variant\" *ngIf=\"selectedProduct.variants.length\">{{ selectedProduct.variants[0].label }}</p>\n </div>\n <div class=\"column\" [style.background-color]=\"contents[BASE_BLOCK_CONTENT][FORM_NAME_COLOR]\">\n <a>{{ 'wb.structures.template.23' | translate }}</a>\n </div>\n </div>\n </div>\n</div>\n" }]
92
92
  }], ctorParameters: function () { return [{ type: i1.ApiService }, { type: i2.ExternalConfigService }, { type: i3.CurrencyService }]; } });
93
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvZHVjdC16b29tLXRyaXBsZS1jb2x1bW4uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvd2l6aS1ibG9jay9zcmMvbGliL3N0cnVjdHVyZXMvcHJvZHVjdC96b29tLXRyaXBsZS1jb2x1bW4vcHJvZHVjdC16b29tLXRyaXBsZS1jb2x1bW4uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvd2l6aS1ibG9jay9zcmMvbGliL3N0cnVjdHVyZXMvcHJvZHVjdC96b29tLXRyaXBsZS1jb2x1bW4vcHJvZHVjdC16b29tLXRyaXBsZS1jb2x1bW4uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBcUIsTUFBTSxlQUFlLENBQUM7QUFDN0QsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFDckUsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDakUsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBQ2pFLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLGlEQUFpRCxDQUFDO0FBRXhGLE9BQU8sRUFBRSw4QkFBOEIsRUFBRSxNQUFNLHFFQUFxRSxDQUFDO0FBRXJILE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSwwQ0FBMEMsQ0FBQzs7Ozs7Ozs7Ozs7O0FBTzNFLE1BQU0sT0FBTyxnQ0FBaUMsU0FBUSxtQkFBK0M7SUFZakcsWUFDWSxVQUFzQixFQUN0QixxQkFBNEMsRUFDNUMsZUFBZ0M7UUFFeEMsS0FBSyxFQUFFLENBQUM7UUFKQSxlQUFVLEdBQVYsVUFBVSxDQUFZO1FBQ3RCLDBCQUFxQixHQUFyQixxQkFBcUIsQ0FBdUI7UUFDNUMsb0JBQWUsR0FBZixlQUFlLENBQWlCO1FBUDVDLGNBQVMsR0FBRyxJQUFJ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QUFDLENBQUMsTUFBTSxDQUNwRyxJQUFJLENBQUMsZUFBZSxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQ25DLENBQUM7b0JBQ0YsSUFBSSxDQUFDLFlBQVksQ0FBQyxvQkFBb0IsQ0FBQyxHQUFHLEVBQUUsQ0FBQztvQkFDN0MsSUFBSSxPQUFPLEVBQUU7d0JBQ1QsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDO3FCQUNsQjtpQkFDSjtZQUNMLENBQUMsQ0FBQyxDQUFDO1lBRUgsSUFBSSxDQUFDLFNBQVMsR0FBRyxLQUFLLENBQUM7UUFDM0IsQ0FBQyxFQUNELEdBQUcsRUFBRTtZQUNELElBQUksQ0FBQyxlQUFlLEdBQUcsSUFBSSxDQUFDO1lBQzVCLElBQUksQ0FBQyxTQUFTLEdBQUcsS0FBSyxDQUFDO1FBQzNCLENBQUMsQ0FDSixDQUFDO0lBQ04sQ0FBQzs7NkhBcEZRLGdDQUFnQztpSEFBaEMsZ0NBQWdDLDRGQ2Y3QyxrcUVBNENBOzJGRDdCYSxnQ0FBZ0M7a0JBSjVDLFNBQVM7K0JBQ0ksOEJBQThCLENBQUMsUUFBUSxFQUFFIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBPbkRlc3Ryb3ksIE9uSW5pdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRk9STV9OQU1FX0lEX1BST0RVQ1QgfSBmcm9tICcuLi8uLi8uLi9kdG9zL2Zvcm1zL2Zvcm1zLmR0byc7XG5pbXBvcnQgeyBTdHJ1Y3R1cmVzQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vc3RydWN0dXJlcy5jb21wb25lbnQnO1xuaW1wb3J0IHsgQXBpU2VydmljZSB9IGZyb20gJy4uLy4uLy4uL3NlcnZpY2VzL3V0aWxzL2FwaS5zZXJ2aWNlJztcbmltcG9ydCB7IEV4dGVybmFsQ29uZmlnU2VydmljZSB9IGZyb20gJy4uLy4uLy4uL3NlcnZpY2VzL3V0aWxzL2V4dGVybmFsLWNvbmZpZy5zZXJ2aWNlJztcbmltcG9ydCB7IENhdGFsb2dEdG8gfSBmcm9tICcuLi8uLi8uLi9kdG9zL2FwaXMvY2F0YWxvZ3MvY2F0YWxvZy5kdG8nO1xuaW1wb3J0IHsgUHJvZHVjdFpvb21UcmlwbGVDb2x1bW5TZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vc2VydmljZXMvYmxvY2tzL3Byb2R1Y3QvcHJvZHVjdC16b29tLXRyaXBsZS1jb2x1bW4uc2VydmljZSc7XG5pbXBvcnQgeyBQcm9kdWN0Wm9vbVRyaXBsZUNvbHVtbkR0byB9IGZyb20gJy4uLy4uLy4uL2R0b3MvYmxvY2tzL3Byb2R1Y3QvcHJvZHVjdC16b29tLXRyaXBsZS1jb2x1bW4uZHRvJztcbmltcG9ydCB7IEN1cnJlbmN5U2VydmljZSB9IGZyb20gJy4uLy4uLy4uL3NlcnZpY2VzL3V0aWxzL2N1cnJlbmN5LnNlcnZpY2UnO1xuaW1wb3J0IHsgRXh0ZXJuYWxDb25maWdEdG8gfSBmcm9tICcuLi8uLi8uLi9kdG9zL2NvbmZpZ3MvZXh0ZXJuYWwvZXh0ZXJuYWwtY29uZmlnLmR0byc7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiBQcm9kdWN0Wm9vbVRyaXBsZUNvbHVtblNlcnZpY2Uuc2VsZWN0b3IoKSxcbiAgICB0ZW1wbGF0ZVVybDogJy4vcHJvZHVjdC16b29tLXRyaXBsZS1jb2x1bW4uY29tcG9uZW50Lmh0bWwnLFxufSlcbmV4cG9ydCBjbGFzcyBQcm9kdWN0Wm9vbVRyaXBsZUNvbHVtbkNvbXBvbmVudCBleHRlbmRzIFN0cnVjdHVyZXNDb21wb25lbnQ8UHJvZHVjdFpvb21UcmlwbGVDb2x1bW5EdG8+IGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xuICAgIGltYWdlRnJvbnRVcmw6IHN0cmluZztcblxuICAgIGRldmlzZTogc3RyaW5nO1xuICAgIGlzbzogc3RyaW5nO1xuICAgIGNvdW50cnk6IHN0cmluZztcbiAgICBwcmljZUZvcm1hdDogc3RyaW5nO1xuXG4gICAgaXNMb2FkaW5nID0gdHJ1ZTtcblxuICAgIHNlbGVjdGVkUHJvZHVjdDogQ2F0YWxvZ0R0byA9IG51bGw7XG5cbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgcHJpdmF0ZSBhcGlTZXJ2aWNlOiBBcGlTZXJ2aWNlLFxuICAgICAgICBwcml2YXRlIGV4dGVybmFsQ29uZmlnU2VydmljZTogRXh0ZXJuYWxDb25maWdTZXJ2aWNlLFxuICAgICAgICBwcml2YXRlIGN1cnJlbmN5U2VydmljZTogQ3VycmVuY3lTZXJ2aWNlXG4gICAgKSB7XG4gICAgICAgIHN1cGVyKCk7XG4gICAgICAgIHRoaXMuc2V0Q29tcG9uZW50U2VydmljZShQcm9kdWN0Wm9vbVRyaXBsZUNvbHVtblNlcnZpY2UpO1xuICAgIH1cblxuICAgIGFzeW5jIG5nT25Jbml0KCkge1xuICAgICAgICBzdXBlci5uZ09uSW5pdCgpO1xuXG4gICAgICAgIHRoaXMuaXNMb2FkaW5nID0gdHJ1ZTtcbiAgICAgICAgdGhpcy5pbWFnZUZyb250VXJsID0gdGhpcy5leHRlcm5hbENvbmZpZ1NlcnZpY2UuZ2V0VXJsSW1hZ2VGcm9udCgpO1xuICAgICAgICBpZiAoIXRoaXMuY3VycmVuY3lTZXJ2aWNlLnJlYWR5KSB7XG4gICAgICAgICAgICBjb25zdCBpc0N1cnJlbmN5UmVhZHkgPSBhd2FpdCB0aGlzLmN1cnJlbmN5U2VydmljZS5pbml0aWFsaXplQ3VycmVuY3koKTtcbiAgICAgICAgICAgIGlmIChpc0N1cnJlbmN5UmVhZHkpIHtcbiAgICAgICAgICAgICAgICB0aGlzLmRldmlzZSA9IHRoaXMuY3VycmVuY3lTZXJ2aWNlLnN5bWJvbDtcbiAgICAgICAgICAgICAgICB0aGlzLmNvdW50cnkgPSB0aGlzLmN1cnJlbmN5U2VydmljZS5jb3VudHJ5O1xuICAgICAgICAgICAgICAgIHRoaXMuaXNvID0gdGhpcy5jdXJyZW5jeVNlcnZpY2UuaXNvO1xuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICB0aGlzLmRldmlzZSA9IHRoaXMuZXh0ZXJuYWxDb25maWdTZXJ2aWNlLmRldmlzZSgpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhpcy5kZXZpc2UgPSB0aGlzLmN1cnJlbmN5U2VydmljZS5zeW1ib2w7XG4gICAgICAgICAgICB0aGlzLmNvdW50cnkgPSB0aGlzLmN1cnJlbmN5U2VydmljZS5jb3VudHJ5O1xuICAgICAgICAgICAgdGhpcy5pc28gPSB0aGlzLmN1cnJlbmN5U2VydmljZS5pc287XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5hcGlTZXJ2aWNlLmdldFNob3BUZW1wbGF0ZUxhbmcoKS5zdWJzY3JpYmUoKGRhdGEpID0+IHtcbiAgICAgICAgICAgIHRoaXMuY291bnRyeSA9IGRhdGEubG9jYWxlLnJlcGxhY2UoJ18nLCAnLScpO1xuICAgICAgICB9KTtcbiAgICAgICAgaWYgKHRoaXMuY29udGVudEJsb2NrW0ZPUk1fTkFNRV9JRF9QUk9EVUNUXSkge1xuICAgICAgICAgICAgdGhpcy5zZWFyY2hCeUlkKHRoaXMuY29udGVudEJsb2NrW0ZPUk1fTkFNRV9JRF9QUk9EVUNUXSwgZmFsc2UpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhpcy5pc0xvYWRpbmcgPSBmYWxzZTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHNlbGVjdFRoaXNGb3JtKCkge1xuICAgICAgICB0aGlzLnBlcnNpc3QoKTtcbiAgICB9XG5cbiAgICBwcm9kU2VhcmNoZWQoZSkge1xuICAgICAgICBpZiAoZS5sZW5ndGgpIHtcbiAgICAgICAgICAgIHRoaXMuc2VhcmNoQnlJZChlWzBdKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHNlYXJjaEJ5SWQoaWQsIHBlcnNpc3QgPSB0cnVlKSB7XG4gICAgICAgIHRoaXMuaXNMb2FkaW5nID0gdHJ1ZTtcbiAgICAgICAgdGhpcy5hcGlTZXJ2aWNlLmdldENhdGFsb2dTcGVjaWZpYyhbaWRdKS5zdWJzY3JpYmUoXG4gICAgICAgICAgICAoY2F0YWxvZ0xpc3QpID0+IHtcbiAgICAgICAgICAgICAgICBjYXRhbG9nTGlzdC5wcm9kdWN0cy5mb3JFYWNoKChwcm9kdWN0KSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIGlmIChwcm9kdWN0LmlkLnRvU3RyaW5nKCkgPT09IGlkLnRvU3RyaW5nKCkpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuc2VsZWN0ZWRQcm9kdWN0ID0gcHJvZHVjdDtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMucHJpY2VGb3JtYXQgPSBuZXcgSW50bC5OdW1iZXJGb3JtYXQodGhpcy5jb3VudHJ5LCB7IHN0eWxlOiAnY3VycmVuY3knLCBjdXJyZW5jeTogdGhpcy5pc28gfSkuZm9ybWF0KFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuc2VsZWN0ZWRQcm9kdWN0LnByaWNlLnByaWNlXG4gICAgICAgICAgICAgICAgICAgICAgICApO1xuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5jb250ZW50QmxvY2tbRk9STV9OQU1FX0lEX1BST0RVQ1RdID0gaWQ7XG4gICAgICAgICAgICAgICAgICAgICAgICBpZiAocGVyc2lzdCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMucGVyc2lzdCgpO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfSk7XG5cbiAgICAgICAgICAgICAgICB0aGlzLmlzTG9hZGluZyA9IGZhbHNlO1xuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICgpID0+IHtcbiAgICAgICAgICAgICAgICB0aGlzLnNlbGVjdGVkUHJvZHVjdCA9IG51bGw7XG4gICAgICAgICAgICAgICAgdGhpcy5pc0xvYWRpbmcgPSBmYWxzZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgKTtcbiAgICB9XG59XG4iLCI8ZGl2ICpuZ0lmPVwiIWlzTG9hZGluZyAmJiBzZWxlY3RlZFByb2R1Y3RcIiBjbGFzcz1cIndiLXByb2R1Y3Qtem9vbS10cmlwbGUtY29sdW1uX19wcm9kdWN0LWNvbmZpZ1wiPlxuICAgIDx3Yi1zdHJ1Y3R1cmUtY29uZmlnIFtibG9ja1VVSURdPVwidXVpZFwiIFtwb3NpdGlvbl09XCJUWVBFX0NPTkZJR19QT1NJVElPTl9MRUZUX1RPUFwiIFtpc0Z1bGx3aWR0aF09XCJ0cnVlXCI+XG4gICAgICAgIDx3Yi1zdHJ1Y3R1cmUtc2VhcmNoLXByb2R1Y3RcbiAgICAgICAgICAgIFtsYWJlbF09XCInd2Iuc3RydWN0dXJlcy50ZW1wbGF0ZS4yMCcgfCB0cmFuc2xhdGVcIlxuICAgICAgICAgICAgKG5ld1NlYXJjaCk9XCJwcm9kU2VhcmNoZWQoJGV2ZW50KVwiXG4gICAgICAgID48L3diLXN0cnVjdHVyZS1zZWFyY2gtcHJvZHVjdD5cbiAgICA8L3diLXN0cnVjdHVyZS1jb25maWc+XG48L2Rpdj5cbjxkaXYgY2xhc3M9XCJ3Yi1wcm9kdWN0LXpvb20tdHJpcGxlLWNvbHVtblwiPlxuICAgIDx3Yi1sb2FkZXIgKm5nSWY9XCJpc0xvYWRpbmdcIj48L3diLWxvYWRlcj5cbiAgICA8ZGl2IGNsYXNzPVwid2ItcHJvZHVjdC16b29tLXRyaXBsZS1jb2x1bW5fX25vcHJvZHVjdFwiICpuZ0lmPVwiIWlzTG9hZGluZyAmJiBzZWxlY3RlZFByb2R1Y3QgPT09IG51bGxcIj5cbiAgICAgICAgPHdiLXN0cnVjdHVyZS1zZWFyY2gtcHJvZHVjdFxuICAgICAgICAgICAgW2xhYmVsXT1cIid3Yi5zdHJ1Y3R1cmVzLnRlbXBsYXRlLjIwJyB8IHRyYW5zbGF0ZVwiXG4gICAgICAgICAgICAobmV3U2VhcmNoKT1cInByb2RTZWFyY2hlZCgkZXZlbnQpXCJcbiAgICAgICAgICAgIFtzZWFyY2hOdW1iZXJdPVwiMVwiXG4gICAgICAgID48L3diLXN0cnVjdHVyZS1zZWFyY2gtcHJvZHVjdD5cbiAgICA8L2Rpdj5cbiAgICA8ZGl2ICpuZ0lmPVwiIWlzTG9hZGluZyAmJiBzZWxlY3RlZFByb2R1Y3RcIiBjbGFzcz1cIndiLXByb2R1Y3Qtem9vbS10cmlwbGUtY29sdW1uX19zZWxlY3RlZFwiPlxuICAgICAgICA8ZGl2IGNsYXNzPVwiY29sdW1ucyBpcy1nYXBsZXNzXCI+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY29sdW1uXCI+XG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvbnRhaW5lci1pbWdcIj5cbiAgICAgICAgICAgICAgICAgICAgPGltZyBbc3JjXT1cImltYWdlRnJvbnRVcmwgKyBzZWxlY3RlZFByb2R1Y3QubWFpbl9pbWFnZS5maWxlXCIgLz5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvbHVtblwiPlxuICAgICAgICAgICAgICAgIDxoMz57eyBzZWxlY3RlZFByb2R1Y3QubmFtZSB9fTwvaDM+XG4gICAgICAgICAgICAgICAgPGRpdj5cbiAgICAgICAgICAgICAgICAgICAgPHd6LWVkaXRvclxuICAgICAgICAgICAgICAgICAgICAgICAgWyhuZ01vZGVsKV09XCJjb250ZW50c1tCQVNFX0JMT0NLX0NPTlRFTlRdW0ZPUk1fTkFNRV9DT05URU5UXVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAobmdNb2RlbENoYW5nZSk9XCJwZXJzaXN0KClcIlxuICAgICAgICAgICAgICAgICAgICAgICAgW3BsYWNlaG9sZGVyXT1cIid3Yi5zaGFyZWQuY29tcG9uZW50cy5xdWlsbC4xJyB8IHRyYW5zbGF0ZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICBjb250YWluZXJTZWxlY3Rvcj1cIi53Yi1jb21wb25lbnRfX2NvbnRhaW5lclwiXG4gICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgPC93ei1lZGl0b3I+XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgPHA+e3sgcHJpY2VGb3JtYXQgfX08L3A+XG4gICAgICAgICAgICAgICAgPHAgY2xhc3M9XCJpcy12YXJpYW50XCIgKm5nSWY9XCJzZWxlY3RlZFByb2R1Y3QudmFyaWFudHMubGVuZ3RoXCI+e3sgc2VsZWN0ZWRQcm9kdWN0LnZhcmlhbnRzWzBdLmxhYmVsIH19PC9wPlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY29sdW1uXCIgW3N0eWxlLmJhY2tncm91bmQtY29sb3JdPVwiY29udGVudHNbQkFTRV9CTE9DS19DT05URU5UXVtGT1JNX05BTUVfQ09MT1JdXCI+XG4gICAgICAgICAgICAgICAgPGE+e3sgJ3diLnN0cnVjdHVyZXMudGVtcGxhdGUuMjMnIHwgdHJhbnNsYXRlIH19PC9hPlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuPC9kaXY+XG4iXX0=
93
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvZHVjdC16b29tLXRyaXBsZS1jb2x1bW4uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvd2l6aS1ibG9jay9zcmMvbGliL3N0cnVjdHVyZXMvcHJvZHVjdC96b29tLXRyaXBsZS1jb2x1bW4vcHJvZHVjdC16b29tLXRyaXBsZS1jb2x1bW4uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvd2l6aS1ibG9jay9zcmMvbGliL3N0cnVjdHVyZXMvcHJvZHVjdC96b29tLXRyaXBsZS1jb2x1bW4vcHJvZHVjdC16b29tLXRyaXBsZS1jb2x1bW4uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBcUIsTUFBTSxlQUFlLENBQUM7QUFDN0QsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFDckUsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDakUsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBQ2pFLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLGlEQUFpRCxDQUFDO0FBRXhGLE9BQU8sRUFBRSw4QkFBOEIsRUFBRSxNQUFNLHFFQUFxRSxDQUFDO0FBRXJILE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSwwQ0FBMEMsQ0FBQzs7Ozs7Ozs7Ozs7O0FBTzNFLE1BQU0sT0FBTyxnQ0FBaUMsU0FBUSxtQkFBK0M7SUFZakcsWUFDWSxVQUFzQixFQUN0QixxQkFBNEMsRUFDNUMsZUFBZ0M7UUFFeEMsS0FBSyxFQUFFLENBQUM7UUFKQSxlQUFVLEdBQVYsVUFBVSxDQUFZO1FBQ3RCLDBCQUFxQixHQUFyQixxQkFBcUIsQ0FBdUI7UUFDNUMsb0JBQWUsR0FBZixlQUFlLENBQWlCO1FBUDVDLGNBQVMsR0FBRyxJQUFJ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QUFDLENBQUMsTUFBTSxDQUNwRyxJQUFJLENBQUMsZUFBZSxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQ25DLENBQUM7b0JBQ0YsSUFBSSxDQUFDLFlBQVksQ0FBQyxvQkFBb0IsQ0FBQyxHQUFHLEVBQUUsQ0FBQztvQkFDN0MsSUFBSSxPQUFPLEVBQUU7d0JBQ1QsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDO3FCQUNsQjtpQkFDSjtZQUNMLENBQUMsQ0FBQyxDQUFDO1lBRUgsSUFBSSxDQUFDLFNBQVMsR0FBRyxLQUFLLENBQUM7UUFDM0IsQ0FBQyxFQUNELEdBQUcsRUFBRTtZQUNELElBQUksQ0FBQyxlQUFlLEdBQUcsSUFBSSxDQUFDO1lBQzVCLElBQUksQ0FBQyxTQUFTLEdBQUcsS0FBSyxDQUFDO1FBQzNCLENBQUMsQ0FDSixDQUFDO0lBQ04sQ0FBQzs7NkhBcEZRLGdDQUFnQztpSEFBaEMsZ0NBQWdDLDRGQ2Y3QywybEVBMENBOzJGRDNCYSxnQ0FBZ0M7a0JBSjVDLFNBQVM7K0JBQ0ksOEJBQThCLENBQUMsUUFBUSxFQUFFIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBPbkRlc3Ryb3ksIE9uSW5pdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRk9STV9OQU1FX0lEX1BST0RVQ1QgfSBmcm9tICcuLi8uLi8uLi9kdG9zL2Zvcm1zL2Zvcm1zLmR0byc7XG5pbXBvcnQgeyBTdHJ1Y3R1cmVzQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vc3RydWN0dXJlcy5jb21wb25lbnQnO1xuaW1wb3J0IHsgQXBpU2VydmljZSB9IGZyb20gJy4uLy4uLy4uL3NlcnZpY2VzL3V0aWxzL2FwaS5zZXJ2aWNlJztcbmltcG9ydCB7IEV4dGVybmFsQ29uZmlnU2VydmljZSB9IGZyb20gJy4uLy4uLy4uL3NlcnZpY2VzL3V0aWxzL2V4dGVybmFsLWNvbmZpZy5zZXJ2aWNlJztcbmltcG9ydCB7IENhdGFsb2dEdG8gfSBmcm9tICcuLi8uLi8uLi9kdG9zL2FwaXMvY2F0YWxvZ3MvY2F0YWxvZy5kdG8nO1xuaW1wb3J0IHsgUHJvZHVjdFpvb21UcmlwbGVDb2x1bW5TZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vc2VydmljZXMvYmxvY2tzL3Byb2R1Y3QvcHJvZHVjdC16b29tLXRyaXBsZS1jb2x1bW4uc2VydmljZSc7XG5pbXBvcnQgeyBQcm9kdWN0Wm9vbVRyaXBsZUNvbHVtbkR0byB9IGZyb20gJy4uLy4uLy4uL2R0b3MvYmxvY2tzL3Byb2R1Y3QvcHJvZHVjdC16b29tLXRyaXBsZS1jb2x1bW4uZHRvJztcbmltcG9ydCB7IEN1cnJlbmN5U2VydmljZSB9IGZyb20gJy4uLy4uLy4uL3NlcnZpY2VzL3V0aWxzL2N1cnJlbmN5LnNlcnZpY2UnO1xuaW1wb3J0IHsgRXh0ZXJuYWxDb25maWdEdG8gfSBmcm9tICcuLi8uLi8uLi9kdG9zL2NvbmZpZ3MvZXh0ZXJuYWwvZXh0ZXJuYWwtY29uZmlnLmR0byc7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiBQcm9kdWN0Wm9vbVRyaXBsZUNvbHVtblNlcnZpY2Uuc2VsZWN0b3IoKSxcbiAgICB0ZW1wbGF0ZVVybDogJy4vcHJvZHVjdC16b29tLXRyaXBsZS1jb2x1bW4uY29tcG9uZW50Lmh0bWwnLFxufSlcbmV4cG9ydCBjbGFzcyBQcm9kdWN0Wm9vbVRyaXBsZUNvbHVtbkNvbXBvbmVudCBleHRlbmRzIFN0cnVjdHVyZXNDb21wb25lbnQ8UHJvZHVjdFpvb21UcmlwbGVDb2x1bW5EdG8+IGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xuICAgIGltYWdlRnJvbnRVcmw6IHN0cmluZztcblxuICAgIGRldmlzZTogc3RyaW5nO1xuICAgIGlzbzogc3RyaW5nO1xuICAgIGNvdW50cnk6IHN0cmluZztcbiAgICBwcmljZUZvcm1hdDogc3RyaW5nO1xuXG4gICAgaXNMb2FkaW5nID0gdHJ1ZTtcblxuICAgIHNlbGVjdGVkUHJvZHVjdDogQ2F0YWxvZ0R0byA9IG51bGw7XG5cbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgcHJpdmF0ZSBhcGlTZXJ2aWNlOiBBcGlTZXJ2aWNlLFxuICAgICAgICBwcml2YXRlIGV4dGVybmFsQ29uZmlnU2VydmljZTogRXh0ZXJuYWxDb25maWdTZXJ2aWNlLFxuICAgICAgICBwcml2YXRlIGN1cnJlbmN5U2VydmljZTogQ3VycmVuY3lTZXJ2aWNlXG4gICAgKSB7XG4gICAgICAgIHN1cGVyKCk7XG4gICAgICAgIHRoaXMuc2V0Q29tcG9uZW50U2VydmljZShQcm9kdWN0Wm9vbVRyaXBsZUNvbHVtblNlcnZpY2UpO1xuICAgIH1cblxuICAgIGFzeW5jIG5nT25Jbml0KCkge1xuICAgICAgICBzdXBlci5uZ09uSW5pdCgpO1xuXG4gICAgICAgIHRoaXMuaXNMb2FkaW5nID0gdHJ1ZTtcbiAgICAgICAgdGhpcy5pbWFnZUZyb250VXJsID0gdGhpcy5leHRlcm5hbENvbmZpZ1NlcnZpY2UuZ2V0VXJsSW1hZ2VGcm9udCgpO1xuICAgICAgICBpZiAoIXRoaXMuY3VycmVuY3lTZXJ2aWNlLnJlYWR5KSB7XG4gICAgICAgICAgICBjb25zdCBpc0N1cnJlbmN5UmVhZHkgPSBhd2FpdCB0aGlzLmN1cnJlbmN5U2VydmljZS5pbml0aWFsaXplQ3VycmVuY3koKTtcbiAgICAgICAgICAgIGlmIChpc0N1cnJlbmN5UmVhZHkpIHtcbiAgICAgICAgICAgICAgICB0aGlzLmRldmlzZSA9IHRoaXMuY3VycmVuY3lTZXJ2aWNlLnN5bWJvbDtcbiAgICAgICAgICAgICAgICB0aGlzLmNvdW50cnkgPSB0aGlzLmN1cnJlbmN5U2VydmljZS5jb3VudHJ5O1xuICAgICAgICAgICAgICAgIHRoaXMuaXNvID0gdGhpcy5jdXJyZW5jeVNlcnZpY2UuaXNvO1xuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICB0aGlzLmRldmlzZSA9IHRoaXMuZXh0ZXJuYWxDb25maWdTZXJ2aWNlLmRldmlzZSgpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhpcy5kZXZpc2UgPSB0aGlzLmN1cnJlbmN5U2VydmljZS5zeW1ib2w7XG4gICAgICAgICAgICB0aGlzLmNvdW50cnkgPSB0aGlzLmN1cnJlbmN5U2VydmljZS5jb3VudHJ5O1xuICAgICAgICAgICAgdGhpcy5pc28gPSB0aGlzLmN1cnJlbmN5U2VydmljZS5pc287XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5hcGlTZXJ2aWNlLmdldFNob3BUZW1wbGF0ZUxhbmcoKS5zdWJzY3JpYmUoKGRhdGEpID0+IHtcbiAgICAgICAgICAgIHRoaXMuY291bnRyeSA9IGRhdGEubG9jYWxlLnJlcGxhY2UoJ18nLCAnLScpO1xuICAgICAgICB9KTtcbiAgICAgICAgaWYgKHRoaXMuY29udGVudEJsb2NrW0ZPUk1fTkFNRV9JRF9QUk9EVUNUXSkge1xuICAgICAgICAgICAgdGhpcy5zZWFyY2hCeUlkKHRoaXMuY29udGVudEJsb2NrW0ZPUk1fTkFNRV9JRF9QUk9EVUNUXSwgZmFsc2UpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhpcy5pc0xvYWRpbmcgPSBmYWxzZTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHNlbGVjdFRoaXNGb3JtKCkge1xuICAgICAgICB0aGlzLnBlcnNpc3QoKTtcbiAgICB9XG5cbiAgICBwcm9kU2VhcmNoZWQoZSkge1xuICAgICAgICBpZiAoZS5sZW5ndGgpIHtcbiAgICAgICAgICAgIHRoaXMuc2VhcmNoQnlJZChlWzBdKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHNlYXJjaEJ5SWQoaWQsIHBlcnNpc3QgPSB0cnVlKSB7XG4gICAgICAgIHRoaXMuaXNMb2FkaW5nID0gdHJ1ZTtcbiAgICAgICAgdGhpcy5hcGlTZXJ2aWNlLmdldENhdGFsb2dTcGVjaWZpYyhbaWRdKS5zdWJzY3JpYmUoXG4gICAgICAgICAgICAoY2F0YWxvZ0xpc3QpID0+IHtcbiAgICAgICAgICAgICAgICBjYXRhbG9nTGlzdC5wcm9kdWN0cy5mb3JFYWNoKChwcm9kdWN0KSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIGlmIChwcm9kdWN0LmlkLnRvU3RyaW5nKCkgPT09IGlkLnRvU3RyaW5nKCkpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuc2VsZWN0ZWRQcm9kdWN0ID0gcHJvZHVjdDtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMucHJpY2VGb3JtYXQgPSBuZXcgSW50bC5OdW1iZXJGb3JtYXQodGhpcy5jb3VudHJ5LCB7IHN0eWxlOiAnY3VycmVuY3knLCBjdXJyZW5jeTogdGhpcy5pc28gfSkuZm9ybWF0KFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuc2VsZWN0ZWRQcm9kdWN0LnByaWNlLnByaWNlXG4gICAgICAgICAgICAgICAgICAgICAgICApO1xuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5jb250ZW50QmxvY2tbRk9STV9OQU1FX0lEX1BST0RVQ1RdID0gaWQ7XG4gICAgICAgICAgICAgICAgICAgICAgICBpZiAocGVyc2lzdCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMucGVyc2lzdCgpO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfSk7XG5cbiAgICAgICAgICAgICAgICB0aGlzLmlzTG9hZGluZyA9IGZhbHNlO1xuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICgpID0+IHtcbiAgICAgICAgICAgICAgICB0aGlzLnNlbGVjdGVkUHJvZHVjdCA9IG51bGw7XG4gICAgICAgICAgICAgICAgdGhpcy5pc0xvYWRpbmcgPSBmYWxzZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgKTtcbiAgICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwid2ItcHJvZHVjdC16b29tLXRyaXBsZS1jb2x1bW5cIj5cbiAgICA8d2Itc3RydWN0dXJlLWNvbmZpZyAqbmdJZj1cIiFpc0xvYWRpbmcgJiYgc2VsZWN0ZWRQcm9kdWN0XCIgW2Jsb2NrVVVJRF09XCJ1dWlkXCIgW3Bvc2l0aW9uXT1cIlRZUEVfQ09ORklHX1BPU0lUSU9OX0xFRlRfVE9QXCIgW2lzRnVsbHdpZHRoXT1cInRydWVcIj5cbiAgICAgICAgPHdiLXN0cnVjdHVyZS1zZWFyY2gtcHJvZHVjdFxuICAgICAgICAgICAgW2xhYmVsXT1cIid3Yi5zdHJ1Y3R1cmVzLnRlbXBsYXRlLjIwJyB8IHRyYW5zbGF0ZVwiXG4gICAgICAgICAgICAobmV3U2VhcmNoKT1cInByb2RTZWFyY2hlZCgkZXZlbnQpXCJcbiAgICAgICAgPjwvd2Itc3RydWN0dXJlLXNlYXJjaC1wcm9kdWN0PlxuICAgIDwvd2Itc3RydWN0dXJlLWNvbmZpZz5cbiAgICA8d2ItbG9hZGVyICpuZ0lmPVwiaXNMb2FkaW5nXCI+PC93Yi1sb2FkZXI+XG4gICAgPGRpdiBjbGFzcz1cIndiLXByb2R1Y3Qtem9vbS10cmlwbGUtY29sdW1uX19ub3Byb2R1Y3RcIiAqbmdJZj1cIiFpc0xvYWRpbmcgJiYgc2VsZWN0ZWRQcm9kdWN0ID09PSBudWxsXCI+XG4gICAgICAgIDx3Yi1zdHJ1Y3R1cmUtc2VhcmNoLXByb2R1Y3RcbiAgICAgICAgICAgIFtsYWJlbF09XCInd2Iuc3RydWN0dXJlcy50ZW1wbGF0ZS4yMCcgfCB0cmFuc2xhdGVcIlxuICAgICAgICAgICAgKG5ld1NlYXJjaCk9XCJwcm9kU2VhcmNoZWQoJGV2ZW50KVwiXG4gICAgICAgICAgICBbc2VhcmNoTnVtYmVyXT1cIjFcIlxuICAgICAgICA+PC93Yi1zdHJ1Y3R1cmUtc2VhcmNoLXByb2R1Y3Q+XG4gICAgPC9kaXY+XG4gICAgPGRpdiAqbmdJZj1cIiFpc0xvYWRpbmcgJiYgc2VsZWN0ZWRQcm9kdWN0XCIgY2xhc3M9XCJ3Yi1wcm9kdWN0LXpvb20tdHJpcGxlLWNvbHVtbl9fc2VsZWN0ZWRcIj5cbiAgICAgICAgPGRpdiBjbGFzcz1cImNvbHVtbnMgaXMtZ2FwbGVzc1wiPlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvbHVtblwiPlxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb250YWluZXItaW1nXCI+XG4gICAgICAgICAgICAgICAgICAgIDxpbWcgW3NyY109XCJpbWFnZUZyb250VXJsICsgc2VsZWN0ZWRQcm9kdWN0Lm1haW5faW1hZ2UuZmlsZVwiIC8+XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb2x1bW5cIj5cbiAgICAgICAgICAgICAgICA8aDM+e3sgc2VsZWN0ZWRQcm9kdWN0Lm5hbWUgfX08L2gzPlxuICAgICAgICAgICAgICAgIDxkaXY+XG4gICAgICAgICAgICAgICAgICAgIDx3ei1lZGl0b3JcbiAgICAgICAgICAgICAgICAgICAgICAgIFsobmdNb2RlbCldPVwiY29udGVudHNbQkFTRV9CTE9DS19DT05URU5UXVtGT1JNX05BTUVfQ09OVEVOVF1cIlxuICAgICAgICAgICAgICAgICAgICAgICAgKG5nTW9kZWxDaGFuZ2UpPVwicGVyc2lzdCgpXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtwbGFjZWhvbGRlcl09XCInd2Iuc2hhcmVkLmNvbXBvbmVudHMucXVpbGwuMScgfCB0cmFuc2xhdGVcIlxuICAgICAgICAgICAgICAgICAgICAgICAgY29udGFpbmVyU2VsZWN0b3I9XCIud2ItY29tcG9uZW50X19jb250YWluZXJcIlxuICAgICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgIDwvd3otZWRpdG9yPlxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgIDxwPnt7IHByaWNlRm9ybWF0IH19PC9wPlxuICAgICAgICAgICAgICAgIDxwIGNsYXNzPVwiaXMtdmFyaWFudFwiICpuZ0lmPVwic2VsZWN0ZWRQcm9kdWN0LnZhcmlhbnRzLmxlbmd0aFwiPnt7IHNlbGVjdGVkUHJvZHVjdC52YXJpYW50c1swXS5sYWJlbCB9fTwvcD5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvbHVtblwiIFtzdHlsZS5iYWNrZ3JvdW5kLWNvbG9yXT1cImNvbnRlbnRzW0JBU0VfQkxPQ0tfQ09OVEVOVF1bRk9STV9OQU1FX0NPTE9SXVwiPlxuICAgICAgICAgICAgICAgIDxhPnt7ICd3Yi5zdHJ1Y3R1cmVzLnRlbXBsYXRlLjIzJyB8IHRyYW5zbGF0ZSB9fTwvYT5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbjwvZGl2PlxuIl19
@@ -65,8 +65,9 @@ export class TextBackgroundsFourRowsIconTextComponent extends StructuresComponen
65
65
  this.getMedia();
66
66
  }
67
67
  updateThisImage(imageWidthHeight, $event) {
68
- if (imageWidthHeight[FORM_NAME_IMAGE_URL] ===
69
- this.contentBlock[FORM_NAME_ROWS][this.row][this.column][FORM_NAME_IMAGE][FORM_NAME_IMAGE_URL]) {
68
+ if (this.contentBlock[FORM_NAME_ROWS][this.row][this.column][FORM_NAME_IMAGE] &&
69
+ imageWidthHeight[FORM_NAME_IMAGE_URL] ===
70
+ this.contentBlock[FORM_NAME_ROWS][this.row][this.column][FORM_NAME_IMAGE][FORM_NAME_IMAGE_URL]) {
70
71
  this.contentBlock[FORM_NAME_ROWS][this.row][this.column][FORM_NAME_IMAGE][FORM_NAME_IMAGE_WIDTH] =
71
72
  imageWidthHeight[FORM_NAME_IMAGE_WIDTH];
72
73
  this.contentBlock[FORM_NAME_ROWS][this.row][this.column][FORM_NAME_IMAGE][FORM_NAME_IMAGE_HEIGHT] =
@@ -96,9 +97,9 @@ export class TextBackgroundsFourRowsIconTextComponent extends StructuresComponen
96
97
  }
97
98
  }
98
99
  TextBackgroundsFourRowsIconTextComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: TextBackgroundsFourRowsIconTextComponent, deps: [{ token: i1.TranslateBlockService }], target: i0.ɵɵFactoryTarget.Component });
99
- TextBackgroundsFourRowsIconTextComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.9", type: TextBackgroundsFourRowsIconTextComponent, selector: "wb-text-backgrounds-four-rows-icon-text", usesInheritance: true, ngImport: i0, template: "<div class=\"wb-text-backgrounds-rows-icon-text wb-text-backgrounds-rows-icon-text--four\">\n <div class=\"columns is-multiline\" *ngFor=\"let row of contents[BASE_BLOCK_CONTENT].rows; let i = index\">\n <div class=\"wb-text-backgrounds-rows-icon-text__delete-line\">\n <div\n wbShowDeleteButton\n *ngIf=\"contents[BASE_BLOCK_CONTENT].line_number > 1\"\n class=\"wb-text-backgrounds-rows-icon-text__delete-line__button\"\n >\n <i class=\"fas fa-trash-alt\"></i>\n <p>{{ 'wb.structures.template.64' | translate }}</p>\n <button (click)=\"deleteRow(i)\">{{ 'wb.structures.template.65' | translate }}</button>\n </div>\n </div>\n <ng-container *ngFor=\"let item of row; let j = index\">\n <wb-structure-config\n [blockUUID]=\"uuid\"\n [position]=\"j < 2 ? TYPE_CONFIG_POSITION_LEFT_TOP : TYPE_CONFIG_POSITION_RIGHT_TOP\"\n [isFullwidth]=\"true\"\n *ngIf=\"item[FORM_NAME_IMAGE]\"\n >\n <wb-structure-config-input\n [label]=\"'wb.structures.template.9' | translate\"\n [(ngModel)]=\"item[FORM_NAME_IMAGE][FORM_NAME_TITLE]\"\n (ngModelChange)=\"persist()\"\n ></wb-structure-config-input>\n <wb-structure-config-input\n [label]=\"'wb.structures.template.10' | translate\"\n [(ngModel)]=\"item[FORM_NAME_IMAGE][FORM_NAME_URL]\"\n [placeholder]=\"'wb.structures.template.11' | translate\"\n (ngModelChange)=\"persist()\"\n ></wb-structure-config-input>\n <wb-structure-config-checkbox\n [label]=\"'wb.structures.template.12' | translate\"\n [(ngModel)]=\"item[FORM_NAME_IMAGE][FORM_NAME_URL_TARGET]\"\n (ngModelChange)=\"persist()\"\n [off]=\"'_self'\"\n [on]=\"'_blank'\"\n ></wb-structure-config-checkbox>\n </wb-structure-config>\n </ng-container>\n <div class=\"column is-3-fullhd is-3-desktop\" *ngFor=\"let item of row; let j = index\">\n <div class=\"wb-text-backgrounds-rows-icon-text__item\">\n <div\n class=\"wb-text-backgrounds-rows-icon-text__item__content\"\n [ngClass]=\"{\n 'wb-text-backgrounds-rows-icon-text__item__content--small':\n contents[BASE_BLOCK_CONTENT][FORM_NAME_IMAGE_MASK] === FORM_TYPE_IMAGE_MASK_SMALL,\n 'wb-text-backgrounds-rows-icon-text__item__content--medium':\n contents[BASE_BLOCK_CONTENT][FORM_NAME_IMAGE_MASK] === FORM_TYPE_IMAGE_MASK_MEDIUM,\n 'wb-text-backgrounds-rows-icon-text__item__content--large':\n contents[BASE_BLOCK_CONTENT][FORM_NAME_IMAGE_MASK] === FORM_TYPE_IMAGE_MASK_LARGE\n }\"\n >\n <div\n class=\"wb-text-backgrounds-rows-icon-text__item__content__noimages\"\n [dimensions]=\"sizes[contents[BASE_BLOCK_CONTENT][FORM_NAME_IMAGE_MASK]]\"\n wbPicturesTemplateDirective\n *ngIf=\"!item[FORM_NAME_IMAGE]\"\n (click)=\"addNewImage(i, j)\"\n >\n <p>\n {{ 'wb.structures.template.8' | translate }}\n </p>\n </div>\n <div *ngIf=\"item[FORM_NAME_IMAGE]\" class=\"wb-text-backgrounds-rows-icon-text__item__content__image\">\n <div\n wbGetSizeImageDirective\n [urlToParse]=\"item[FORM_NAME_IMAGE][FORM_NAME_IMAGE_URL]\"\n (onUpdate)=\"updateThisImage(item[FORM_NAME_IMAGE], $event)\"\n [style.background-image]=\"'url(' + item[FORM_NAME_IMAGE][FORM_NAME_IMAGE_URL] + ')'\"\n *ngIf=\"item[FORM_NAME_IMAGE]\"\n class=\"wb-text-backgrounds-rows-icon-text__item__content__image__background\"\n ></div>\n </div>\n\n <div\n class=\"wb-text-backgrounds-rows-icon-text__item__content__wrapper\"\n *ngIf=\"item[FORM_NAME_IMAGE]\"\n (click)=\"onClickUpdateImage(i, j)\"\n >\n <div (click)=\"stopPropagation($event)\">\n <wb-structure-config-font\n [(value)]=\"item[FORM_NAME_ICON]\"\n [color]=\"contents[BASE_BLOCK_CONTENT][FORM_NAME_ICON_COLOR]\"\n (valueChange)=\"item[FORM_NAME_ICON] = $event; persist()\"\n ></wb-structure-config-font>\n <div class=\"wb-text-backgrounds-rows-icon-text__item__content__title\">\n <wz-editor\n [(ngModel)]=\"item[FORM_NAME_TITLE]\"\n (ngModelChange)=\"persist()\"\n [placeholder]=\"'wb.shared.components.quill.1' | translate\"\n containerSelector=\".wb-component__container\"\n >\n </wz-editor>\n </div>\n </div>\n </div>\n </div>\n </div>\n </div>\n </div>\n <div class=\"columns\" *ngIf=\"contents[BASE_BLOCK_CONTENT].line_number < 9\">\n <div class=\"column\">\n <div class=\"wb-text-backgrounds-rows-icon-text__add\">\n <a (click)=\"addRow(contents[BASE_BLOCK_CONTENT].line_number)\">\n <i class=\"fal fa-plus-circle\"></i>\n <p>\n {{ 'wb.structures.template.63' | translate }}\n </p>\n </a>\n </div>\n </div>\n </div>\n</div>\n", dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i4.StructureConfigComponent, selector: "wb-structure-config", inputs: ["isActive", "blockUUID", "position", "isFullwidth", "small", "extraSmall"], outputs: ["isClose"] }, { kind: "component", type: i5.StructureConfigInputComponent, selector: "wb-structure-config-input", inputs: ["label", "type", "placeholder", "resizeMiddleScreen"] }, { kind: "component", type: i6.StructureConfigCheckboxComponent, selector: "wb-structure-config-checkbox", inputs: ["label", "on", "off"] }, { kind: "component", type: i7.StructureConfigFontComponent, selector: "wb-structure-config-font", inputs: ["white", "color", "isSmall", "isInline", "withImage", "alignLeft", "recommendedSize", "value"], outputs: ["valueChange"] }, { kind: "component", type: i8.WiziEditorComponent, selector: "wz-editor", inputs: ["placeholder", "position", "containerSelector"] }, { kind: "directive", type: i9.GetSizeImageDirective, selector: "[wbGetSizeImageDirective]", inputs: ["urlToParse", "dimensions"], outputs: ["onUpdate"] }, { kind: "directive", type: i10.PicturesTemplateDirective, selector: "[wbPicturesTemplateDirective]", inputs: ["dimensions", "classImageSize"] }, { kind: "directive", type: i11.ShowDeleteButtonDirective, selector: "[wbShowDeleteButton]" }, { kind: "pipe", type: i12.TranslatePipe, name: "translate" }] });
100
+ TextBackgroundsFourRowsIconTextComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.9", type: TextBackgroundsFourRowsIconTextComponent, selector: "wb-text-backgrounds-four-rows-icon-text", usesInheritance: true, ngImport: i0, template: "<div class=\"wb-text-backgrounds-rows-icon-text wb-text-backgrounds-rows-icon-text--four\">\n <div class=\"columns is-multiline\" *ngFor=\"let row of contents[BASE_BLOCK_CONTENT].rows; let i = index\">\n <div class=\"wb-text-backgrounds-rows-icon-text__delete-line\">\n <div\n wbShowDeleteButton\n *ngIf=\"contents[BASE_BLOCK_CONTENT].line_number > 1\"\n class=\"wb-text-backgrounds-rows-icon-text__delete-line__button\"\n >\n <i class=\"fas fa-trash-alt\"></i>\n <p>{{ 'wb.structures.template.64' | translate }}</p>\n <button (click)=\"deleteRow(i)\">{{ 'wb.structures.template.65' | translate }}</button>\n </div>\n </div>\n <ng-container *ngFor=\"let item of row; let j = index\">\n <wb-structure-config\n [blockUUID]=\"uuid\"\n [position]=\"j < 2 ? TYPE_CONFIG_POSITION_LEFT_TOP : TYPE_CONFIG_POSITION_RIGHT_TOP\"\n [isFullwidth]=\"true\"\n [class]=\"item[FORM_NAME_IMAGE] ? '' : 'hidden'\"\n >\n <ng-container *ngIf=\"item[FORM_NAME_IMAGE]\">\n <wb-structure-config-input\n [label]=\"'wb.structures.template.9' | translate\"\n [(ngModel)]=\"item[FORM_NAME_IMAGE][FORM_NAME_TITLE]\"\n (ngModelChange)=\"persist()\"\n ></wb-structure-config-input>\n <wb-structure-config-input\n [label]=\"'wb.structures.template.10' | translate\"\n [(ngModel)]=\"item[FORM_NAME_IMAGE][FORM_NAME_URL]\"\n [placeholder]=\"'wb.structures.template.11' | translate\"\n (ngModelChange)=\"persist()\"\n ></wb-structure-config-input>\n <wb-structure-config-checkbox\n [label]=\"'wb.structures.template.12' | translate\"\n [(ngModel)]=\"item[FORM_NAME_IMAGE][FORM_NAME_URL_TARGET]\"\n (ngModelChange)=\"persist()\"\n [off]=\"'_self'\"\n [on]=\"'_blank'\"\n ></wb-structure-config-checkbox>\n </ng-container>\n </wb-structure-config>\n </ng-container>\n <div class=\"column is-3-fullhd is-3-desktop\" *ngFor=\"let item of row; let j = index\">\n <div class=\"wb-text-backgrounds-rows-icon-text__item\">\n <div\n class=\"wb-text-backgrounds-rows-icon-text__item__content\"\n [ngClass]=\"{\n 'wb-text-backgrounds-rows-icon-text__item__content--small':\n contents[BASE_BLOCK_CONTENT][FORM_NAME_IMAGE_MASK] === FORM_TYPE_IMAGE_MASK_SMALL,\n 'wb-text-backgrounds-rows-icon-text__item__content--medium':\n contents[BASE_BLOCK_CONTENT][FORM_NAME_IMAGE_MASK] === FORM_TYPE_IMAGE_MASK_MEDIUM,\n 'wb-text-backgrounds-rows-icon-text__item__content--large':\n contents[BASE_BLOCK_CONTENT][FORM_NAME_IMAGE_MASK] === FORM_TYPE_IMAGE_MASK_LARGE\n }\"\n >\n <div\n class=\"wb-text-backgrounds-rows-icon-text__item__content__noimages\"\n [dimensions]=\"sizes[contents[BASE_BLOCK_CONTENT][FORM_NAME_IMAGE_MASK]]\"\n wbPicturesTemplateDirective\n *ngIf=\"!item[FORM_NAME_IMAGE]\"\n (click)=\"addNewImage(i, j)\"\n >\n <p>\n {{ 'wb.structures.template.8' | translate }}\n </p>\n </div>\n <div *ngIf=\"item[FORM_NAME_IMAGE]\" class=\"wb-text-backgrounds-rows-icon-text__item__content__image\">\n <div\n wbGetSizeImageDirective\n [urlToParse]=\"item[FORM_NAME_IMAGE][FORM_NAME_IMAGE_URL]\"\n (onUpdate)=\"updateThisImage(item[FORM_NAME_IMAGE], $event)\"\n [style.background-image]=\"'url(' + item[FORM_NAME_IMAGE][FORM_NAME_IMAGE_URL] + ')'\"\n *ngIf=\"item[FORM_NAME_IMAGE]\"\n class=\"wb-text-backgrounds-rows-icon-text__item__content__image__background\"\n ></div>\n </div>\n\n <div\n class=\"wb-text-backgrounds-rows-icon-text__item__content__wrapper\"\n *ngIf=\"item[FORM_NAME_IMAGE]\"\n (click)=\"onClickUpdateImage(i, j)\"\n >\n <div (click)=\"stopPropagation($event)\">\n <wb-structure-config-font\n [(value)]=\"item[FORM_NAME_ICON]\"\n [color]=\"contents[BASE_BLOCK_CONTENT][FORM_NAME_ICON_COLOR]\"\n (valueChange)=\"item[FORM_NAME_ICON] = $event; persist()\"\n ></wb-structure-config-font>\n <div class=\"wb-text-backgrounds-rows-icon-text__item__content__title\">\n <wz-editor\n [(ngModel)]=\"item[FORM_NAME_TITLE]\"\n (ngModelChange)=\"persist()\"\n [placeholder]=\"'wb.shared.components.quill.1' | translate\"\n containerSelector=\".wb-component__container\"\n >\n </wz-editor>\n </div>\n </div>\n </div>\n </div>\n </div>\n </div>\n </div>\n <div class=\"columns\" *ngIf=\"contents[BASE_BLOCK_CONTENT].line_number < 9\">\n <div class=\"column\">\n <div class=\"wb-text-backgrounds-rows-icon-text__add\">\n <a (click)=\"addRow(contents[BASE_BLOCK_CONTENT].line_number)\">\n <i class=\"fal fa-plus-circle\"></i>\n <p>\n {{ 'wb.structures.template.63' | translate }}\n </p>\n </a>\n </div>\n </div>\n </div>\n</div>\n", dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i4.StructureConfigComponent, selector: "wb-structure-config", inputs: ["isActive", "blockUUID", "position", "isFullwidth", "small", "extraSmall"], outputs: ["isClose"] }, { kind: "component", type: i5.StructureConfigInputComponent, selector: "wb-structure-config-input", inputs: ["label", "type", "placeholder", "resizeMiddleScreen"] }, { kind: "component", type: i6.StructureConfigCheckboxComponent, selector: "wb-structure-config-checkbox", inputs: ["label", "on", "off"] }, { kind: "component", type: i7.StructureConfigFontComponent, selector: "wb-structure-config-font", inputs: ["white", "color", "isSmall", "isInline", "withImage", "alignLeft", "recommendedSize", "value"], outputs: ["valueChange"] }, { kind: "component", type: i8.WiziEditorComponent, selector: "wz-editor", inputs: ["placeholder", "position", "containerSelector"] }, { kind: "directive", type: i9.GetSizeImageDirective, selector: "[wbGetSizeImageDirective]", inputs: ["urlToParse", "dimensions"], outputs: ["onUpdate"] }, { kind: "directive", type: i10.PicturesTemplateDirective, selector: "[wbPicturesTemplateDirective]", inputs: ["dimensions", "classImageSize"] }, { kind: "directive", type: i11.ShowDeleteButtonDirective, selector: "[wbShowDeleteButton]" }, { kind: "pipe", type: i12.TranslatePipe, name: "translate" }] });
100
101
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: TextBackgroundsFourRowsIconTextComponent, decorators: [{
101
102
  type: Component,
102
- args: [{ selector: TextBackgroundsFourRowsIconTextService.selector(), template: "<div class=\"wb-text-backgrounds-rows-icon-text wb-text-backgrounds-rows-icon-text--four\">\n <div class=\"columns is-multiline\" *ngFor=\"let row of contents[BASE_BLOCK_CONTENT].rows; let i = index\">\n <div class=\"wb-text-backgrounds-rows-icon-text__delete-line\">\n <div\n wbShowDeleteButton\n *ngIf=\"contents[BASE_BLOCK_CONTENT].line_number > 1\"\n class=\"wb-text-backgrounds-rows-icon-text__delete-line__button\"\n >\n <i class=\"fas fa-trash-alt\"></i>\n <p>{{ 'wb.structures.template.64' | translate }}</p>\n <button (click)=\"deleteRow(i)\">{{ 'wb.structures.template.65' | translate }}</button>\n </div>\n </div>\n <ng-container *ngFor=\"let item of row; let j = index\">\n <wb-structure-config\n [blockUUID]=\"uuid\"\n [position]=\"j < 2 ? TYPE_CONFIG_POSITION_LEFT_TOP : TYPE_CONFIG_POSITION_RIGHT_TOP\"\n [isFullwidth]=\"true\"\n *ngIf=\"item[FORM_NAME_IMAGE]\"\n >\n <wb-structure-config-input\n [label]=\"'wb.structures.template.9' | translate\"\n [(ngModel)]=\"item[FORM_NAME_IMAGE][FORM_NAME_TITLE]\"\n (ngModelChange)=\"persist()\"\n ></wb-structure-config-input>\n <wb-structure-config-input\n [label]=\"'wb.structures.template.10' | translate\"\n [(ngModel)]=\"item[FORM_NAME_IMAGE][FORM_NAME_URL]\"\n [placeholder]=\"'wb.structures.template.11' | translate\"\n (ngModelChange)=\"persist()\"\n ></wb-structure-config-input>\n <wb-structure-config-checkbox\n [label]=\"'wb.structures.template.12' | translate\"\n [(ngModel)]=\"item[FORM_NAME_IMAGE][FORM_NAME_URL_TARGET]\"\n (ngModelChange)=\"persist()\"\n [off]=\"'_self'\"\n [on]=\"'_blank'\"\n ></wb-structure-config-checkbox>\n </wb-structure-config>\n </ng-container>\n <div class=\"column is-3-fullhd is-3-desktop\" *ngFor=\"let item of row; let j = index\">\n <div class=\"wb-text-backgrounds-rows-icon-text__item\">\n <div\n class=\"wb-text-backgrounds-rows-icon-text__item__content\"\n [ngClass]=\"{\n 'wb-text-backgrounds-rows-icon-text__item__content--small':\n contents[BASE_BLOCK_CONTENT][FORM_NAME_IMAGE_MASK] === FORM_TYPE_IMAGE_MASK_SMALL,\n 'wb-text-backgrounds-rows-icon-text__item__content--medium':\n contents[BASE_BLOCK_CONTENT][FORM_NAME_IMAGE_MASK] === FORM_TYPE_IMAGE_MASK_MEDIUM,\n 'wb-text-backgrounds-rows-icon-text__item__content--large':\n contents[BASE_BLOCK_CONTENT][FORM_NAME_IMAGE_MASK] === FORM_TYPE_IMAGE_MASK_LARGE\n }\"\n >\n <div\n class=\"wb-text-backgrounds-rows-icon-text__item__content__noimages\"\n [dimensions]=\"sizes[contents[BASE_BLOCK_CONTENT][FORM_NAME_IMAGE_MASK]]\"\n wbPicturesTemplateDirective\n *ngIf=\"!item[FORM_NAME_IMAGE]\"\n (click)=\"addNewImage(i, j)\"\n >\n <p>\n {{ 'wb.structures.template.8' | translate }}\n </p>\n </div>\n <div *ngIf=\"item[FORM_NAME_IMAGE]\" class=\"wb-text-backgrounds-rows-icon-text__item__content__image\">\n <div\n wbGetSizeImageDirective\n [urlToParse]=\"item[FORM_NAME_IMAGE][FORM_NAME_IMAGE_URL]\"\n (onUpdate)=\"updateThisImage(item[FORM_NAME_IMAGE], $event)\"\n [style.background-image]=\"'url(' + item[FORM_NAME_IMAGE][FORM_NAME_IMAGE_URL] + ')'\"\n *ngIf=\"item[FORM_NAME_IMAGE]\"\n class=\"wb-text-backgrounds-rows-icon-text__item__content__image__background\"\n ></div>\n </div>\n\n <div\n class=\"wb-text-backgrounds-rows-icon-text__item__content__wrapper\"\n *ngIf=\"item[FORM_NAME_IMAGE]\"\n (click)=\"onClickUpdateImage(i, j)\"\n >\n <div (click)=\"stopPropagation($event)\">\n <wb-structure-config-font\n [(value)]=\"item[FORM_NAME_ICON]\"\n [color]=\"contents[BASE_BLOCK_CONTENT][FORM_NAME_ICON_COLOR]\"\n (valueChange)=\"item[FORM_NAME_ICON] = $event; persist()\"\n ></wb-structure-config-font>\n <div class=\"wb-text-backgrounds-rows-icon-text__item__content__title\">\n <wz-editor\n [(ngModel)]=\"item[FORM_NAME_TITLE]\"\n (ngModelChange)=\"persist()\"\n [placeholder]=\"'wb.shared.components.quill.1' | translate\"\n containerSelector=\".wb-component__container\"\n >\n </wz-editor>\n </div>\n </div>\n </div>\n </div>\n </div>\n </div>\n </div>\n <div class=\"columns\" *ngIf=\"contents[BASE_BLOCK_CONTENT].line_number < 9\">\n <div class=\"column\">\n <div class=\"wb-text-backgrounds-rows-icon-text__add\">\n <a (click)=\"addRow(contents[BASE_BLOCK_CONTENT].line_number)\">\n <i class=\"fal fa-plus-circle\"></i>\n <p>\n {{ 'wb.structures.template.63' | translate }}\n </p>\n </a>\n </div>\n </div>\n </div>\n</div>\n" }]
103
+ args: [{ selector: TextBackgroundsFourRowsIconTextService.selector(), template: "<div class=\"wb-text-backgrounds-rows-icon-text wb-text-backgrounds-rows-icon-text--four\">\n <div class=\"columns is-multiline\" *ngFor=\"let row of contents[BASE_BLOCK_CONTENT].rows; let i = index\">\n <div class=\"wb-text-backgrounds-rows-icon-text__delete-line\">\n <div\n wbShowDeleteButton\n *ngIf=\"contents[BASE_BLOCK_CONTENT].line_number > 1\"\n class=\"wb-text-backgrounds-rows-icon-text__delete-line__button\"\n >\n <i class=\"fas fa-trash-alt\"></i>\n <p>{{ 'wb.structures.template.64' | translate }}</p>\n <button (click)=\"deleteRow(i)\">{{ 'wb.structures.template.65' | translate }}</button>\n </div>\n </div>\n <ng-container *ngFor=\"let item of row; let j = index\">\n <wb-structure-config\n [blockUUID]=\"uuid\"\n [position]=\"j < 2 ? TYPE_CONFIG_POSITION_LEFT_TOP : TYPE_CONFIG_POSITION_RIGHT_TOP\"\n [isFullwidth]=\"true\"\n [class]=\"item[FORM_NAME_IMAGE] ? '' : 'hidden'\"\n >\n <ng-container *ngIf=\"item[FORM_NAME_IMAGE]\">\n <wb-structure-config-input\n [label]=\"'wb.structures.template.9' | translate\"\n [(ngModel)]=\"item[FORM_NAME_IMAGE][FORM_NAME_TITLE]\"\n (ngModelChange)=\"persist()\"\n ></wb-structure-config-input>\n <wb-structure-config-input\n [label]=\"'wb.structures.template.10' | translate\"\n [(ngModel)]=\"item[FORM_NAME_IMAGE][FORM_NAME_URL]\"\n [placeholder]=\"'wb.structures.template.11' | translate\"\n (ngModelChange)=\"persist()\"\n ></wb-structure-config-input>\n <wb-structure-config-checkbox\n [label]=\"'wb.structures.template.12' | translate\"\n [(ngModel)]=\"item[FORM_NAME_IMAGE][FORM_NAME_URL_TARGET]\"\n (ngModelChange)=\"persist()\"\n [off]=\"'_self'\"\n [on]=\"'_blank'\"\n ></wb-structure-config-checkbox>\n </ng-container>\n </wb-structure-config>\n </ng-container>\n <div class=\"column is-3-fullhd is-3-desktop\" *ngFor=\"let item of row; let j = index\">\n <div class=\"wb-text-backgrounds-rows-icon-text__item\">\n <div\n class=\"wb-text-backgrounds-rows-icon-text__item__content\"\n [ngClass]=\"{\n 'wb-text-backgrounds-rows-icon-text__item__content--small':\n contents[BASE_BLOCK_CONTENT][FORM_NAME_IMAGE_MASK] === FORM_TYPE_IMAGE_MASK_SMALL,\n 'wb-text-backgrounds-rows-icon-text__item__content--medium':\n contents[BASE_BLOCK_CONTENT][FORM_NAME_IMAGE_MASK] === FORM_TYPE_IMAGE_MASK_MEDIUM,\n 'wb-text-backgrounds-rows-icon-text__item__content--large':\n contents[BASE_BLOCK_CONTENT][FORM_NAME_IMAGE_MASK] === FORM_TYPE_IMAGE_MASK_LARGE\n }\"\n >\n <div\n class=\"wb-text-backgrounds-rows-icon-text__item__content__noimages\"\n [dimensions]=\"sizes[contents[BASE_BLOCK_CONTENT][FORM_NAME_IMAGE_MASK]]\"\n wbPicturesTemplateDirective\n *ngIf=\"!item[FORM_NAME_IMAGE]\"\n (click)=\"addNewImage(i, j)\"\n >\n <p>\n {{ 'wb.structures.template.8' | translate }}\n </p>\n </div>\n <div *ngIf=\"item[FORM_NAME_IMAGE]\" class=\"wb-text-backgrounds-rows-icon-text__item__content__image\">\n <div\n wbGetSizeImageDirective\n [urlToParse]=\"item[FORM_NAME_IMAGE][FORM_NAME_IMAGE_URL]\"\n (onUpdate)=\"updateThisImage(item[FORM_NAME_IMAGE], $event)\"\n [style.background-image]=\"'url(' + item[FORM_NAME_IMAGE][FORM_NAME_IMAGE_URL] + ')'\"\n *ngIf=\"item[FORM_NAME_IMAGE]\"\n class=\"wb-text-backgrounds-rows-icon-text__item__content__image__background\"\n ></div>\n </div>\n\n <div\n class=\"wb-text-backgrounds-rows-icon-text__item__content__wrapper\"\n *ngIf=\"item[FORM_NAME_IMAGE]\"\n (click)=\"onClickUpdateImage(i, j)\"\n >\n <div (click)=\"stopPropagation($event)\">\n <wb-structure-config-font\n [(value)]=\"item[FORM_NAME_ICON]\"\n [color]=\"contents[BASE_BLOCK_CONTENT][FORM_NAME_ICON_COLOR]\"\n (valueChange)=\"item[FORM_NAME_ICON] = $event; persist()\"\n ></wb-structure-config-font>\n <div class=\"wb-text-backgrounds-rows-icon-text__item__content__title\">\n <wz-editor\n [(ngModel)]=\"item[FORM_NAME_TITLE]\"\n (ngModelChange)=\"persist()\"\n [placeholder]=\"'wb.shared.components.quill.1' | translate\"\n containerSelector=\".wb-component__container\"\n >\n </wz-editor>\n </div>\n </div>\n </div>\n </div>\n </div>\n </div>\n </div>\n <div class=\"columns\" *ngIf=\"contents[BASE_BLOCK_CONTENT].line_number < 9\">\n <div class=\"column\">\n <div class=\"wb-text-backgrounds-rows-icon-text__add\">\n <a (click)=\"addRow(contents[BASE_BLOCK_CONTENT].line_number)\">\n <i class=\"fal fa-plus-circle\"></i>\n <p>\n {{ 'wb.structures.template.63' | translate }}\n </p>\n </a>\n </div>\n </div>\n </div>\n</div>\n" }]
103
104
  }], ctorParameters: function () { return [{ type: i1.TranslateBlockService }]; } });
104
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGV4dC1iYWNrZ3JvdW5kcy1mb3VyLXJvd3MtaWNvbi10ZXh0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3dpemktYmxvY2svc3JjL2xpYi9zdHJ1Y3R1cmVzL3RleHQtYmFja2dyb3VuZHMvZm91ci1yb3dzLWljb24tdGV4dC90ZXh0LWJhY2tncm91bmRzLWZvdXItcm93cy1pY29uLXRleHQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvd2l6aS1ibG9jay9zcmMvbGliL3N0cnVjdHVyZXMvdGV4dC1iYWNrZ3JvdW5kcy9mb3VyLXJvd3MtaWNvbi10ZXh0L3RleHQtYmFja2dyb3VuZHMtZm91ci1yb3dzLWljb24tdGV4dC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFVLE1BQU0sZUFBZSxDQUFDO0FBRWxELE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQ2pFLE9BQU8sRUFBRSxzQ0FBc0MsRUFBRSxNQUFNLHdGQUF3RixDQUFDO0FBQ2hKLE9BQU8sRUFDSCxjQUFjLEVBQ2QsY0FBYyxFQUNkLHFCQUFxQixFQUNyQixxQkFBcUIsRUFDckIsbUJBQW1CLEVBQ25CLGVBQWUsRUFDZixxQkFBcUIsRUFDckIsc0JBQXNCLEdBQ3pCLE1BQU0sK0JBQStCLENBQUM7QUFDdkMsT0FBTyxFQUFFLDhCQUE4QixFQUFFLE1BQU0sMkVBQTJFLENBQUM7QUFDM0gsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLG9EQUFvRCxDQUFDO0FBRW5GLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLGlEQUFpRCxDQUFDOzs7Ozs7Ozs7Ozs7OztBQU14RixNQUFNLE9BQU8sd0NBQXlDLFNBQVEsbUJBQW1DO0lBSzdGLFlBQW9CLHFCQUE0QztRQUM1RCxLQUFLLEVB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QUFHLEdBQUcsSUFBSSxHQUFHLDhCQUE4QixDQUFDLENBQUMsQ0FBQyxDQUFnQixDQUFDO1FBQ3RILE9BQU8sQ0FBQyxHQUFHLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDckIsT0FBTyxDQUFDLEtBQUssRUFBRSxDQUFDO0lBQ3BCLENBQUM7O3FJQXpGUSx3Q0FBd0M7eUhBQXhDLHdDQUF3QyxzR0N2QnJELHF3TUFrSEE7MkZEM0ZhLHdDQUF3QztrQkFKcEQsU0FBUzsrQkFDSSxzQ0FBc0MsQ0FBQyxRQUFRLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIE9uSW5pdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRmFxTGlzdEljb25EdG8gfSBmcm9tICcuLi8uLi8uLi9kdG9zL2Jsb2Nrcy9mYXEvZmFxLWxpc3QtaWNvbi5kdG8nO1xuaW1wb3J0IHsgU3RydWN0dXJlc0NvbXBvbmVudCB9IGZyb20gJy4uLy4uL3N0cnVjdHVyZXMuY29tcG9uZW50JztcbmltcG9ydCB7IFRleHRCYWNrZ3JvdW5kc0ZvdXJSb3dzSWNvblRleHRTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vc2VydmljZXMvYmxvY2tzL3RleHQtYmFja2dyb3VuZHMvdGV4dC1iYWNrZ3JvdW5kcy1mb3VyLXJvd3MtaWNvbi10ZXh0LnNlcnZpY2UnO1xuaW1wb3J0IHtcbiAgICBGT1JNX05BTUVfSU5JVCxcbiAgICBGT1JNX05BTUVfUk9XUyxcbiAgICBGT1JNX05BTUVfSVRFTV9OVU1CRVIsXG4gICAgRk9STV9OQU1FX0xJTkVfTlVNQkVSLFxuICAgIEZPUk1fTkFNRV9JTUFHRV9VUkwsXG4gICAgRk9STV9OQU1FX0lNQUdFLFxuICAgIEZPUk1fTkFNRV9JTUFHRV9XSURUSCxcbiAgICBGT1JNX05BTUVfSU1BR0VfSEVJR0hULFxufSBmcm9tICcuLi8uLi8uLi9kdG9zL2Zvcm1zL2Zvcm1zLmR0byc7XG5pbXBvcnQgeyBUZXh0QmFja2dyb3VuZHNSb3dzSWNvblRleHREdG8gfSBmcm9tICcuLi8uLi8uLi9kdG9zL2Jsb2Nrcy90ZXh0LWJhY2tncm91bmRzL3RleHQtYmFja2dyb3VuZHMtcm93cy1pY29uLXRleHQuZHRvJztcbmltcG9ydCB7IEltYWdlTWVkaWFEdG8gfSBmcm9tICcuLi8uLi8uLi9kdG9zL2NvbmZpZ3MvbWVkaWFzL2ltYWdlL2ltYWdlLW1lZGlhLmR0byc7XG5pbXBvcnQgeyBNZWRpYVdpZHRoSGVpZ2h0RHRvIH0gZnJvbSAnLi4vLi4vLi4vZHRvcy9jb25maWdzL21lZGlhcy9tZWRpYS13aWR0aC1oZWlnaHQuZHRvJztcbmltcG9ydCB7IFRyYW5zbGF0ZUJsb2NrU2VydmljZSB9IGZyb20gJy4uLy4uLy4uL3NlcnZpY2VzL3V0aWxzL3RyYW5zbGF0ZS1ibG9jay5zZXJ2aWNlJztcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6IFRleHRCYWNrZ3JvdW5kc0ZvdXJSb3dzSWNvblRleHRTZXJ2aWNlLnNlbGVjdG9yKCksXG4gICAgdGVtcGxhdGVVcmw6ICcuL3RleHQtYmFja2dyb3VuZHMtZm91ci1yb3dzLWljb24tdGV4dC5jb21wb25lbnQuaHRtbCcsXG59KVxuZXhwb3J0IGNsYXNzIFRleHRCYWNrZ3JvdW5kc0ZvdXJSb3dzSWNvblRleHRDb21wb25lbnQgZXh0ZW5kcyBTdHJ1Y3R1cmVzQ29tcG9uZW50PEZhcUxpc3RJY29uRHRvPiBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gICAgcm93ID0gMDtcbiAgICBjb2x1bW4gPSAwO1xuICAgIHNpemVzID0geyBzbWFsbDogJzQ1OHgxNzUnLCBtZWRpdW06ICc0NTh4MjUwJywgbGFyZ2U6ICc0NTh4MzI1JyB9O1xuXG4gICAgY29uc3RydWN0b3IocHJpdmF0ZSB0cmFuc2xhdGVCbG9ja1NlcnZpY2U6IFRyYW5zbGF0ZUJsb2NrU2VydmljZSkge1xuICAgICAgICBzdXBlcigpO1xuICAgICAgICB0aGlzLnNldENvbXBvbmVudFNlcnZpY2UoVGV4dEJhY2tncm91bmRzRm91clJvd3NJY29uVGV4dFNlcnZpY2UpO1xuICAgIH1cblxuICAgIG5nT25Jbml0KCkge1xuICAgICAgICBzdXBlci5uZ09uSW5pdCgpO1xuICAgICAgICB0aGlzLnJvdyA9IDA7XG4gICAgICAgIHRoaXMuY29sdW1uID0gMDtcbiAgICAgICAgdGhpcy5zdWJzY3JpYmVUb0ltYWdlKCk7XG4gICAgICAgIGlmICghdGhpcy5jb250ZW50QmxvY2tbRk9STV9OQU1FX0lOSVRdKSB7XG4gICAgICAgICAgICB0aGlzLmFkZFJvdygwKTtcbiAgICAgICAgICAgIHRoaXMuY29udGVudEJsb2NrW0ZPUk1fTkFNRV9JTklUXSA9IHRydWU7XG4gICAgICAgICAgICB0aGlzLnBlcnNpc3QoKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIGFkZFJvdyhpbmRleCkge1xuICAgICAgICB0aGlzLmNvbnRlbnRCbG9ja1tGT1JNX05BTUVfUk9XU10ucHVzaChuZXcgQXJyYXk8VGV4dEJhY2tncm91bmRzUm93c0ljb25UZXh0RHRvPigpKTtcbiAgICAgICAgZm9yICh2YXIgaSA9IDA7IGkgPCB0aGlzLmNvbnRlbnRCbG9ja1tGT1JNX05BTUVfSVRFTV9OVU1CRVJdOyArK2kpIHtcbiAgICAgICAgICAgIGNvbnN0IG5ld0VsZW1lbnQgPSBuZXcgVGV4dEJhY2tncm91bmRzUm93c0ljb25UZXh0RHRvKCk7XG4gICAgICAgICAgICB0aGlzLnRyYW5zbGF0ZUJsb2NrU2VydmljZS50cmFuc2xhdGVQcm9wZXJ0aWVzKG5ld0VsZW1lbnQpO1xuICAgICAgICAgICAgdGhpcy5jb250ZW50QmxvY2tbRk9STV9OQU1FX1JPV1NdW2luZGV4XS5wdXNoKG5ld0VsZW1lbnQpO1xuICAgICAgICB9XG4gICAgICAgIHRoaXMuY29udGVudEJsb2NrW0ZPUk1fTkFNRV9MSU5FX05VTUJFUl0gKz0gMTtcbiAgICAgICAgdGhpcy5wZXJzaXN0KCk7XG4gICAgICAgIGNvbnNvbGUubG9nKHRoaXMuY29udGVudEJsb2NrW0ZPUk1fTkFNRV9ST1dTXSk7XG4gICAgfVxuXG4gICAgZGVsZXRlUm93KGkpIHtcbiAgICAgICAgdGhpcy5jb250ZW50QmxvY2tbRk9STV9OQU1FX1JPV1NdLnNwbGljZShpLCAxKTtcbiAgICAgICAgdGhpcy5jb250ZW50QmxvY2tbRk9STV9OQU1FX0xJTkVfTlVNQkVSXSAtPSAxO1xuICAgICAgICB0aGlzLnBlcnNpc3QoKTtcbiAgICB9XG5cbiAgICBzdWJzY3JpYmVUb0ltYWdlKCkge1xuICAgICAgICB0aGlzLmltYWdlLnN1YnNjcmliZSgobWVkaWEpID0+IHtcbiAgICAgICAgICAgIHRoaXMuYWRkQmFja2dyb3VuZEltYWdlTWVkaWEobWVkaWEpO1xuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBvbkNsaWNrVXBkYXRlSW1hZ2Uocm93LCBjb2x1bW4pIHtcbiAgICAgICAgdGhpcy5yb3cgPSByb3c7XG4gICAgICAgIHRoaXMuY29sdW1uID0gY29sdW1uO1xuICAgICAgICB0aGlzLmdldE1lZGlhKCk7XG4gICAgfVxuXG4gICAgdXBkYXRlVGhpc0ltYWdlKGltYWdlV2lkdGhIZWlnaHQ6IE1lZGlhV2lkdGhIZWlnaHREdG8sICRldmVudCkge1xuICAgICAgICBpZiAoXG4gICAgICAgICAgICBpbWFnZVdpZHRoSGVpZ2h0W0ZPUk1fTkFNRV9JTUFHRV9VUkxdID09PVxuICAgICAgICAgICAgdGhpcy5jb250ZW50QmxvY2tbRk9STV9OQU1FX1JPV1NdW3RoaXMucm93XVt0aGlzLmNvbHVtbl1bRk9STV9OQU1FX0lNQUdFXVtGT1JNX05BTUVfSU1BR0VfVVJMXVxuICAgICAgICApIHtcbiAgICAgICAgICAgIHRoaXMuY29udGVudEJsb2NrW0ZPUk1fTkFNRV9ST1dTXVt0aGlzLnJvd11bdGhpcy5jb2x1bW5dW0ZPUk1fTkFNRV9JTUFHRV1bRk9STV9OQU1FX0lNQUdFX1dJRFRIXSA9XG4gICAgICAgICAgICAgICAgaW1hZ2VXaWR0aEhlaWdodFtGT1JNX05BTUVfSU1BR0VfV0lEVEhdO1xuICAgICAgICAgICAgdGhpcy5jb250ZW50QmxvY2tbRk9STV9OQU1FX1JPV1NdW3RoaXMucm93XVt0aGlzLmNvbHVtbl1bRk9STV9OQU1FX0lNQUdFXVtGT1JNX05BTUVfSU1BR0VfSEVJR0hUXSA9XG4gICAgICAgICAgICAgICAgaW1hZ2VXaWR0aEhlaWdodFtGT1JNX05BTUVfSU1BR0VfSEVJR0hUXTtcbiAgICAgICAgICAgIHRoaXMucGVyc2lzdCgpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgYWRkTmV3SW1hZ2Uocm93LCBjb2x1bW4pIHtcbiAgICAgICAgdGhpcy5yb3cgPSByb3c7XG4gICAgICAgIHRoaXMuY29sdW1uID0gY29sdW1uO1xuICAgICAgICB0aGlzLmdldE1lZGlhKCk7XG4gICAgfVxuXG4gICAgYWRkQmFja2dyb3VuZEltYWdlTWVkaWEobWVkaWEpIHtcbiAgICAgICAgY29uc3QgaW1hZ2VNZWRpYUR0byA9IG5ldyBJbWFnZU1lZGlhRHRvKCk7XG4gICAgICAgIGltYWdlTWVkaWFEdG8uaW1hZ2VfdXJsID0gbWVkaWEuaW1hZ2VfdXJsO1xuICAgICAgICBpbWFnZU1lZGlhRHRvLmlkID0gbWVkaWEuaWQ7XG5cbiAgICAgICAgdGhpcy5jb250ZW50QmxvY2tbRk9STV9OQU1FX1JPV1NdW3RoaXMucm93XVt0aGlzLmNvbHVtbl0uaW1hZ2UgPSBpbWFnZU1lZGlhRHRvO1xuXG4gICAgICAgIHRoaXMucGVyc2lzdCgpO1xuICAgIH1cblxuICAgIHN0b3BQcm9wYWdhdGlvbigkZXZlbnQpIHtcbiAgICAgICAgJGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xuICAgIH1cblxuICAgIHRyaWdnZXJDb25maWcodXVpZCkge1xuICAgICAgICBjb25zdCBlbGVtZW50OiBIVE1MRWxlbWVudCA9IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoJyMnICsgdXVpZCArICcgLndiLXN0cnVjdHVyZS1jb25maWdfX3Rvb2xzJylbMF0gYXMgSFRNTEVsZW1lbnQ7XG4gICAgICAgIGNvbnNvbGUubG9nKGVsZW1lbnQpO1xuICAgICAgICBlbGVtZW50LmNsaWNrKCk7XG4gICAgfVxufVxuIiwiPGRpdiBjbGFzcz1cIndiLXRleHQtYmFja2dyb3VuZHMtcm93cy1pY29uLXRleHQgd2ItdGV4dC1iYWNrZ3JvdW5kcy1yb3dzLWljb24tdGV4dC0tZm91clwiPlxuICAgIDxkaXYgY2xhc3M9XCJjb2x1bW5zIGlzLW11bHRpbGluZVwiICpuZ0Zvcj1cImxldCByb3cgb2YgY29udGVudHNbQkFTRV9CTE9DS19DT05URU5UXS5yb3dzOyBsZXQgaSA9IGluZGV4XCI+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJ3Yi10ZXh0LWJhY2tncm91bmRzLXJvd3MtaWNvbi10ZXh0X19kZWxldGUtbGluZVwiPlxuICAgICAgICAgICAgPGRpdlxuICAgICAgICAgICAgICAgIHdiU2hvd0RlbGV0ZUJ1dHRvblxuICAgICAgICAgICAgICAgICpuZ0lmPVwiY29udGVudHNbQkFTRV9CTE9DS19DT05URU5UXS5saW5lX251bWJlciA+IDFcIlxuICAgICAgICAgICAgICAgIGNsYXNzPVwid2ItdGV4dC1iYWNrZ3JvdW5kcy1yb3dzLWljb24tdGV4dF9fZGVsZXRlLWxpbmVfX2J1dHRvblwiXG4gICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgPGkgY2xhc3M9XCJmYXMgZmEtdHJhc2gtYWx0XCI+PC9pPlxuICAgICAgICAgICAgICAgIDxwPnt7ICd3Yi5zdHJ1Y3R1cmVzLnRlbXBsYXRlLjY0JyB8IHRyYW5zbGF0ZSB9fTwvcD5cbiAgICAgICAgICAgICAgICA8YnV0dG9uIChjbGljayk9XCJkZWxldGVSb3coaSlcIj57eyAnd2Iuc3RydWN0dXJlcy50ZW1wbGF0ZS42NScgfCB0cmFuc2xhdGUgfX08L2J1dHRvbj5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdGb3I9XCJsZXQgaXRlbSBvZiByb3c7IGxldCBqID0gaW5kZXhcIj5cbiAgICAgICAgICAgIDx3Yi1zdHJ1Y3R1cmUtY29uZmlnXG4gICAgICAgICAgICAgICAgW2Jsb2NrVVVJRF09XCJ1dWlkXCJcbiAgICAgICAgICAgICAgICBbcG9zaXRpb25dPVwiaiA8IDIgPyBUWVBFX0NPTkZJR19QT1NJVElPTl9MRUZUX1RPUCA6IFRZUEVfQ09ORklHX1BPU0lUSU9OX1JJR0hUX1RPUFwiXG4gICAgICAgICAgICAgICAgW2lzRnVsbHdpZHRoXT1cInRydWVcIlxuICAgICAgICAgICAgICAgICpuZ0lmPVwiaXRlbVtGT1JNX05BTUVfSU1BR0VdXCJcbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICA8d2Itc3RydWN0dXJlLWNvbmZpZy1pbnB1dFxuICAgICAgICAgICAgICAgICAgICBbbGFiZWxdPVwiJ3diLnN0cnVjdHVyZXMudGVtcGxhdGUuOScgfCB0cmFuc2xhdGVcIlxuICAgICAgICAgICAgICAgICAgICBbKG5nTW9kZWwpXT1cIml0ZW1bRk9STV9OQU1FX0lNQUdFXVtGT1JNX05BTUVfVElUTEVdXCJcbiAgICAgICAgICAgICAgICAgICAgKG5nTW9kZWxDaGFuZ2UpPVwicGVyc2lzdCgpXCJcbiAgICAgICAgICAgICAgICA+PC93Yi1zdHJ1Y3R1cmUtY29uZmlnLWlucHV0PlxuICAgICAgICAgICAgICAgIDx3Yi1zdHJ1Y3R1cmUtY29uZmlnLWlucHV0XG4gICAgICAgICAgICAgICAgICAgIFtsYWJlbF09XCInd2Iuc3RydWN0dXJlcy50ZW1wbGF0ZS4xMCcgfCB0cmFuc2xhdGVcIlxuICAgICAgICAgICAgICAgICAgICBbKG5nTW9kZWwpXT1cIml0ZW1bRk9STV9OQU1FX0lNQUdFXVtGT1JNX05BTUVfVVJMXVwiXG4gICAgICAgICAgICAgICAgICAgIFtwbGFjZWhvbGRlcl09XCInd2Iuc3RydWN0dXJlcy50ZW1wbGF0ZS4xMScgfCB0cmFuc2xhdGVcIlxuICAgICAgICAgICAgICAgICAgICAobmdNb2RlbENoYW5nZSk9XCJwZXJzaXN0KClcIlxuICAgICAgICAgICAgICAgID48L3diLXN0cnVjdHVyZS1jb25maWctaW5wdXQ+XG4gICAgICAgICAgICAgICAgPHdiLXN0cnVjdHVyZS1jb25maWctY2hlY2tib3hcbiAgICAgICAgICAgICAgICAgICAgW2xhYmVsXT1cIid3Yi5zdHJ1Y3R1cmVzLnRlbXBsYXRlLjEyJyB8IHRyYW5zbGF0ZVwiXG4gICAgICAgICAgICAgICAgICAgIFsobmdNb2RlbCldPVwiaXRlbVtGT1JNX05BTUVfSU1BR0VdW0ZPUk1fTkFNRV9VUkxfVEFSR0VUXVwiXG4gICAgICAgICAgICAgICAgICAgIChuZ01vZGVsQ2hhbmdlKT1cInBlcnNpc3QoKVwiXG4gICAgICAgICAgICAgICAgICAgIFtvZmZdPVwiJ19zZWxmJ1wiXG4gICAgICAgICAgICAgICAgICAgIFtvbl09XCInX2JsYW5rJ1wiXG4gICAgICAgICAgICAgICAgPjwvd2Itc3RydWN0dXJlLWNvbmZpZy1jaGVja2JveD5cbiAgICAgICAgICAgIDwvd2Itc3RydWN0dXJlLWNvbmZpZz5cbiAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJjb2x1bW4gaXMtMy1mdWxsaGQgaXMtMy1kZXNrdG9wXCIgKm5nRm9yPVwibGV0IGl0ZW0gb2Ygcm93OyBsZXQgaiA9IGluZGV4XCI+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwid2ItdGV4dC1iYWNrZ3JvdW5kcy1yb3dzLWljb24tdGV4dF9faXRlbVwiPlxuICAgICAgICAgICAgICAgIDxkaXZcbiAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJ3Yi10ZXh0LWJhY2tncm91bmRzLXJvd3MtaWNvbi10ZXh0X19pdGVtX19jb250ZW50XCJcbiAgICAgICAgICAgICAgICAgICAgW25nQ2xhc3NdPVwie1xuICAgICAgICAgICAgICAgICAgICAgICAgJ3diLXRleHQtYmFja2dyb3VuZHMtcm93cy1pY29uLXRleHRfX2l0ZW1fX2NvbnRlbnQtLXNtYWxsJzpcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb250ZW50c1tCQVNFX0JMT0NLX0NPTlRFTlRdW0ZPUk1fTkFNRV9JTUFHRV9NQVNLXSA9PT0gRk9STV9UWVBFX0lNQUdFX01BU0tfU01BTEwsXG4gICAgICAgICAgICAgICAgICAgICAgICAnd2ItdGV4dC1iYWNrZ3JvdW5kcy1yb3dzLWljb24tdGV4dF9faXRlbV9fY29udGVudC0tbWVkaXVtJzpcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb250ZW50c1tCQVNFX0JMT0NLX0NPTlRFTlRdW0ZPUk1fTkFNRV9JTUFHRV9NQVNLXSA9PT0gRk9STV9UWVBFX0lNQUdFX01BU0tfTUVESVVNLFxuICAgICAgICAgICAgICAgICAgICAgICAgJ3diLXRleHQtYmFja2dyb3VuZHMtcm93cy1pY29uLXRleHRfX2l0ZW1fX2NvbnRlbnQtLWxhcmdlJzpcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb250ZW50c1tCQVNFX0JMT0NLX0NPTlRFTlRdW0ZPUk1fTkFNRV9JTUFHRV9NQVNLXSA9PT0gRk9STV9UWVBFX0lNQUdFX01BU0tfTEFSR0VcbiAgICAgICAgICAgICAgICAgICAgfVwiXG4gICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICA8ZGl2XG4gICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cIndiLXRleHQtYmFja2dyb3VuZHMtcm93cy1pY29uLXRleHRfX2l0ZW1fX2NvbnRlbnRfX25vaW1hZ2VzXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtkaW1lbnNpb25zXT1cInNpemVzW2NvbnRlbnRzW0JBU0VfQkxPQ0tfQ09OVEVOVF1bRk9STV9OQU1FX0lNQUdFX01BU0tdXVwiXG4gICAgICAgICAgICAgICAgICAgICAgICB3YlBpY3R1cmVzVGVtcGxhdGVEaXJlY3RpdmVcbiAgICAgICAgICAgICAgICAgICAgICAgICpuZ0lmPVwiIWl0ZW1bRk9STV9OQU1FX0lNQUdFXVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAoY2xpY2spPVwiYWRkTmV3SW1hZ2UoaSwgailcIlxuICAgICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgICAgICA8cD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7eyAnd2Iuc3RydWN0dXJlcy50ZW1wbGF0ZS44JyB8IHRyYW5zbGF0ZSB9fVxuICAgICAgICAgICAgICAgICAgICAgICAgPC9wPlxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgPGRpdiAqbmdJZj1cIml0ZW1bRk9STV9OQU1FX0lNQUdFXVwiIGNsYXNzPVwid2ItdGV4dC1iYWNrZ3JvdW5kcy1yb3dzLWljb24tdGV4dF9faXRlbV9fY29udGVudF9faW1hZ2VcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXZcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB3YkdldFNpemVJbWFnZURpcmVjdGl2ZVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFt1cmxUb1BhcnNlXT1cIml0ZW1bRk9STV9OQU1FX0lNQUdFXVtGT1JNX05BTUVfSU1BR0VfVVJMXVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgKG9uVXBkYXRlKT1cInVwZGF0ZVRoaXNJbWFnZShpdGVtW0ZPUk1fTkFNRV9JTUFHRV0sICRldmVudClcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtzdHlsZS5iYWNrZ3JvdW5kLWltYWdlXT1cIid1cmwoJyArIGl0ZW1bRk9STV9OQU1FX0lNQUdFXVtGT1JNX05BTUVfSU1BR0VfVVJMXSArICcpJ1wiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgKm5nSWY9XCJpdGVtW0ZPUk1fTkFNRV9JTUFHRV1cIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwid2ItdGV4dC1iYWNrZ3JvdW5kcy1yb3dzLWljb24tdGV4dF9faXRlbV9fY29udGVudF9faW1hZ2VfX2JhY2tncm91bmRcIlxuICAgICAgICAgICAgICAgICAgICAgICAgPjwvZGl2PlxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cblxuICAgICAgICAgICAgICAgICAgICA8ZGl2XG4gICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cIndiLXRleHQtYmFja2dyb3VuZHMtcm93cy1pY29uLXRleHRfX2l0ZW1fX2NvbnRlbnRfX3dyYXBwZXJcIlxuICAgICAgICAgICAgICAgICAgICAgICAgKm5nSWY9XCJpdGVtW0ZPUk1fTkFNRV9JTUFHRV1cIlxuICAgICAgICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cIm9uQ2xpY2tVcGRhdGVJbWFnZShpLCBqKVwiXG4gICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgKGNsaWNrKT1cInN0b3BQcm9wYWdhdGlvbigkZXZlbnQpXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHdiLXN0cnVjdHVyZS1jb25maWctZm9udFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbKHZhbHVlKV09XCJpdGVtW0ZPUk1fTkFNRV9JQ09OXVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtjb2xvcl09XCJjb250ZW50c1tCQVNFX0JMT0NLX0NPTlRFTlRdW0ZPUk1fTkFNRV9JQ09OX0NPTE9SXVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICh2YWx1ZUNoYW5nZSk9XCJpdGVtW0ZPUk1fTkFNRV9JQ09OXSA9ICRldmVudDsgcGVyc2lzdCgpXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA+PC93Yi1zdHJ1Y3R1cmUtY29uZmlnLWZvbnQ+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIndiLXRleHQtYmFja2dyb3VuZHMtcm93cy1pY29uLXRleHRfX2l0ZW1fX2NvbnRlbnRfX3RpdGxlXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx3ei1lZGl0b3JcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFsobmdNb2RlbCldPVwiaXRlbVtGT1JNX05BTUVfVElUTEVdXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChuZ01vZGVsQ2hhbmdlKT1cInBlcnNpc3QoKVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbcGxhY2Vob2xkZXJdPVwiJ3diLnNoYXJlZC5jb21wb25lbnRzLnF1aWxsLjEnIHwgdHJhbnNsYXRlXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRhaW5lclNlbGVjdG9yPVwiLndiLWNvbXBvbmVudF9fY29udGFpbmVyXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3d6LWVkaXRvcj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbiAgICA8ZGl2IGNsYXNzPVwiY29sdW1uc1wiICpuZ0lmPVwiY29udGVudHNbQkFTRV9CTE9DS19DT05URU5UXS5saW5lX251bWJlciA8IDlcIj5cbiAgICAgICAgPGRpdiBjbGFzcz1cImNvbHVtblwiPlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cIndiLXRleHQtYmFja2dyb3VuZHMtcm93cy1pY29uLXRleHRfX2FkZFwiPlxuICAgICAgICAgICAgICAgIDxhIChjbGljayk9XCJhZGRSb3coY29udGVudHNbQkFTRV9CTE9DS19DT05URU5UXS5saW5lX251bWJlcilcIj5cbiAgICAgICAgICAgICAgICAgICAgPGkgY2xhc3M9XCJmYWwgZmEtcGx1cy1jaXJjbGVcIj48L2k+XG4gICAgICAgICAgICAgICAgICAgIDxwPlxuICAgICAgICAgICAgICAgICAgICAgICAge3sgJ3diLnN0cnVjdHVyZXMudGVtcGxhdGUuNjMnIHwgdHJhbnNsYXRlIH19XG4gICAgICAgICAgICAgICAgICAgIDwvcD5cbiAgICAgICAgICAgICAgICA8L2E+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG48L2Rpdj5cbiJdfQ==
105
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGV4dC1iYWNrZ3JvdW5kcy1mb3VyLXJvd3MtaWNvbi10ZXh0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3dpemktYmxvY2svc3JjL2xpYi9zdHJ1Y3R1cmVzL3RleHQtYmFja2dyb3VuZHMvZm91ci1yb3dzLWljb24tdGV4dC90ZXh0LWJhY2tncm91bmRzLWZvdXItcm93cy1pY29uLXRleHQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvd2l6aS1ibG9jay9zcmMvbGliL3N0cnVjdHVyZXMvdGV4dC1iYWNrZ3JvdW5kcy9mb3VyLXJvd3MtaWNvbi10ZXh0L3RleHQtYmFja2dyb3VuZHMtZm91ci1yb3dzLWljb24tdGV4dC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFVLE1BQU0sZUFBZSxDQUFDO0FBRWxELE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQ2pFLE9BQU8sRUFBRSxzQ0FBc0MsRUFBRSxNQUFNLHdGQUF3RixDQUFDO0FBQ2hKLE9BQU8sRUFDSCxjQUFjLEVBQ2QsY0FBYyxFQUNkLHFCQUFxQixFQUNyQixxQkFBcUIsRUFDckIsbUJBQW1CLEVBQ25CLGVBQWUsRUFDZixxQkFBcUIsRUFDckIsc0JBQXNCLEdBQ3pCLE1BQU0sK0JBQStCLENBQUM7QUFDdkMsT0FBTyxFQUFFLDhCQUE4QixFQUFFLE1BQU0sMkVBQTJFLENBQUM7QUFDM0gsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLG9EQUFvRCxDQUFDO0FBRW5GLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLGlEQUFpRCxDQUFDOzs7Ozs7Ozs7Ozs7OztBQU14RixNQUFNLE9BQU8sd0NBQXlDLFNBQVEsbUJBQW1DO0lBSzdGLFlBQW9CLHFCQUE0QztRQUM1RCxLQUFLLEVB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QixNQUFNLENBQUMsZUFBZSxFQUFFLENBQUM7SUFDN0IsQ0FBQztJQUVELGFBQWEsQ0FBQyxJQUFJO1FBQ2QsTUFBTSxPQUFPLEdBQWdCLFFBQVEsQ0FBQyxnQkFBZ0IsQ0FBQyxHQUFHLEdBQUcsSUFBSSxHQUFHLDhCQUE4QixDQUFDLENBQUMsQ0FBQyxDQUFnQixDQUFDO1FBQ3RILE9BQU8sQ0FBQyxHQUFHLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDckIsT0FBTyxDQUFDLEtBQUssRUFBRSxDQUFDO0lBQ3BCLENBQUM7O3FJQTFGUSx3Q0FBd0M7eUhBQXhDLHdDQUF3QyxzR0N2QnJELGc4TUFvSEE7MkZEN0ZhLHdDQUF3QztrQkFKcEQsU0FBUzsrQkFDSSxzQ0FBc0MsQ0FBQyxRQUFRLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIE9uSW5pdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRmFxTGlzdEljb25EdG8gfSBmcm9tICcuLi8uLi8uLi9kdG9zL2Jsb2Nrcy9mYXEvZmFxLWxpc3QtaWNvbi5kdG8nO1xuaW1wb3J0IHsgU3RydWN0dXJlc0NvbXBvbmVudCB9IGZyb20gJy4uLy4uL3N0cnVjdHVyZXMuY29tcG9uZW50JztcbmltcG9ydCB7IFRleHRCYWNrZ3JvdW5kc0ZvdXJSb3dzSWNvblRleHRTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vc2VydmljZXMvYmxvY2tzL3RleHQtYmFja2dyb3VuZHMvdGV4dC1iYWNrZ3JvdW5kcy1mb3VyLXJvd3MtaWNvbi10ZXh0LnNlcnZpY2UnO1xuaW1wb3J0IHtcbiAgICBGT1JNX05BTUVfSU5JVCxcbiAgICBGT1JNX05BTUVfUk9XUyxcbiAgICBGT1JNX05BTUVfSVRFTV9OVU1CRVIsXG4gICAgRk9STV9OQU1FX0xJTkVfTlVNQkVSLFxuICAgIEZPUk1fTkFNRV9JTUFHRV9VUkwsXG4gICAgRk9STV9OQU1FX0lNQUdFLFxuICAgIEZPUk1fTkFNRV9JTUFHRV9XSURUSCxcbiAgICBGT1JNX05BTUVfSU1BR0VfSEVJR0hULFxufSBmcm9tICcuLi8uLi8uLi9kdG9zL2Zvcm1zL2Zvcm1zLmR0byc7XG5pbXBvcnQgeyBUZXh0QmFja2dyb3VuZHNSb3dzSWNvblRleHREdG8gfSBmcm9tICcuLi8uLi8uLi9kdG9zL2Jsb2Nrcy90ZXh0LWJhY2tncm91bmRzL3RleHQtYmFja2dyb3VuZHMtcm93cy1pY29uLXRleHQuZHRvJztcbmltcG9ydCB7IEltYWdlTWVkaWFEdG8gfSBmcm9tICcuLi8uLi8uLi9kdG9zL2NvbmZpZ3MvbWVkaWFzL2ltYWdlL2ltYWdlLW1lZGlhLmR0byc7XG5pbXBvcnQgeyBNZWRpYVdpZHRoSGVpZ2h0RHRvIH0gZnJvbSAnLi4vLi4vLi4vZHRvcy9jb25maWdzL21lZGlhcy9tZWRpYS13aWR0aC1oZWlnaHQuZHRvJztcbmltcG9ydCB7IFRyYW5zbGF0ZUJsb2NrU2VydmljZSB9IGZyb20gJy4uLy4uLy4uL3NlcnZpY2VzL3V0aWxzL3RyYW5zbGF0ZS1ibG9jay5zZXJ2aWNlJztcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6IFRleHRCYWNrZ3JvdW5kc0ZvdXJSb3dzSWNvblRleHRTZXJ2aWNlLnNlbGVjdG9yKCksXG4gICAgdGVtcGxhdGVVcmw6ICcuL3RleHQtYmFja2dyb3VuZHMtZm91ci1yb3dzLWljb24tdGV4dC5jb21wb25lbnQuaHRtbCcsXG59KVxuZXhwb3J0IGNsYXNzIFRleHRCYWNrZ3JvdW5kc0ZvdXJSb3dzSWNvblRleHRDb21wb25lbnQgZXh0ZW5kcyBTdHJ1Y3R1cmVzQ29tcG9uZW50PEZhcUxpc3RJY29uRHRvPiBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gICAgcm93ID0gMDtcbiAgICBjb2x1bW4gPSAwO1xuICAgIHNpemVzID0geyBzbWFsbDogJzQ1OHgxNzUnLCBtZWRpdW06ICc0NTh4MjUwJywgbGFyZ2U6ICc0NTh4MzI1JyB9O1xuXG4gICAgY29uc3RydWN0b3IocHJpdmF0ZSB0cmFuc2xhdGVCbG9ja1NlcnZpY2U6IFRyYW5zbGF0ZUJsb2NrU2VydmljZSkge1xuICAgICAgICBzdXBlcigpO1xuICAgICAgICB0aGlzLnNldENvbXBvbmVudFNlcnZpY2UoVGV4dEJhY2tncm91bmRzRm91clJvd3NJY29uVGV4dFNlcnZpY2UpO1xuICAgIH1cblxuICAgIG5nT25Jbml0KCkge1xuICAgICAgICBzdXBlci5uZ09uSW5pdCgpO1xuICAgICAgICB0aGlzLnJvdyA9IDA7XG4gICAgICAgIHRoaXMuY29sdW1uID0gMDtcbiAgICAgICAgdGhpcy5zdWJzY3JpYmVUb0ltYWdlKCk7XG4gICAgICAgIGlmICghdGhpcy5jb250ZW50QmxvY2tbRk9STV9OQU1FX0lOSVRdKSB7XG4gICAgICAgICAgICB0aGlzLmFkZFJvdygwKTtcbiAgICAgICAgICAgIHRoaXMuY29udGVudEJsb2NrW0ZPUk1fTkFNRV9JTklUXSA9IHRydWU7XG4gICAgICAgICAgICB0aGlzLnBlcnNpc3QoKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIGFkZFJvdyhpbmRleCkge1xuICAgICAgICB0aGlzLmNvbnRlbnRCbG9ja1tGT1JNX05BTUVfUk9XU10ucHVzaChuZXcgQXJyYXk8VGV4dEJhY2tncm91bmRzUm93c0ljb25UZXh0RHRvPigpKTtcbiAgICAgICAgZm9yICh2YXIgaSA9IDA7IGkgPCB0aGlzLmNvbnRlbnRCbG9ja1tGT1JNX05BTUVfSVRFTV9OVU1CRVJdOyArK2kpIHtcbiAgICAgICAgICAgIGNvbnN0IG5ld0VsZW1lbnQgPSBuZXcgVGV4dEJhY2tncm91bmRzUm93c0ljb25UZXh0RHRvKCk7XG4gICAgICAgICAgICB0aGlzLnRyYW5zbGF0ZUJsb2NrU2VydmljZS50cmFuc2xhdGVQcm9wZXJ0aWVzKG5ld0VsZW1lbnQpO1xuICAgICAgICAgICAgdGhpcy5jb250ZW50QmxvY2tbRk9STV9OQU1FX1JPV1NdW2luZGV4XS5wdXNoKG5ld0VsZW1lbnQpO1xuICAgICAgICB9XG4gICAgICAgIHRoaXMuY29udGVudEJsb2NrW0ZPUk1fTkFNRV9MSU5FX05VTUJFUl0gKz0gMTtcbiAgICAgICAgdGhpcy5wZXJzaXN0KCk7XG4gICAgICAgIGNvbnNvbGUubG9nKHRoaXMuY29udGVudEJsb2NrW0ZPUk1fTkFNRV9ST1dTXSk7XG4gICAgfVxuXG4gICAgZGVsZXRlUm93KGkpIHtcbiAgICAgICAgdGhpcy5jb250ZW50QmxvY2tbRk9STV9OQU1FX1JPV1NdLnNwbGljZShpLCAxKTtcbiAgICAgICAgdGhpcy5jb250ZW50QmxvY2tbRk9STV9OQU1FX0xJTkVfTlVNQkVSXSAtPSAxO1xuICAgICAgICB0aGlzLnBlcnNpc3QoKTtcbiAgICB9XG5cbiAgICBzdWJzY3JpYmVUb0ltYWdlKCkge1xuICAgICAgICB0aGlzLmltYWdlLnN1YnNjcmliZSgobWVkaWEpID0+IHtcbiAgICAgICAgICAgIHRoaXMuYWRkQmFja2dyb3VuZEltYWdlTWVkaWEobWVkaWEpO1xuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBvbkNsaWNrVXBkYXRlSW1hZ2Uocm93LCBjb2x1bW4pIHtcbiAgICAgICAgdGhpcy5yb3cgPSByb3c7XG4gICAgICAgIHRoaXMuY29sdW1uID0gY29sdW1uO1xuICAgICAgICB0aGlzLmdldE1lZGlhKCk7XG4gICAgfVxuXG4gICAgdXBkYXRlVGhpc0ltYWdlKGltYWdlV2lkdGhIZWlnaHQ6IE1lZGlhV2lkdGhIZWlnaHREdG8sICRldmVudCkge1xuICAgICAgICBpZiAoXG4gICAgICAgICAgICB0aGlzLmNvbnRlbnRCbG9ja1tGT1JNX05BTUVfUk9XU11bdGhpcy5yb3ddW3RoaXMuY29sdW1uXVtGT1JNX05BTUVfSU1BR0VdICYmXG4gICAgICAgICAgICBpbWFnZVdpZHRoSGVpZ2h0W0ZPUk1fTkFNRV9JTUFHRV9VUkxdID09PVxuICAgICAgICAgICAgdGhpcy5jb250ZW50QmxvY2tbRk9STV9OQU1FX1JPV1NdW3RoaXMucm93XVt0aGlzLmNvbHVtbl1bRk9STV9OQU1FX0lNQUdFXVtGT1JNX05BTUVfSU1BR0VfVVJMXVxuICAgICAgICApIHtcbiAgICAgICAgICAgIHRoaXMuY29udGVudEJsb2NrW0ZPUk1fTkFNRV9ST1dTXVt0aGlzLnJvd11bdGhpcy5jb2x1bW5dW0ZPUk1fTkFNRV9JTUFHRV1bRk9STV9OQU1FX0lNQUdFX1dJRFRIXSA9XG4gICAgICAgICAgICAgICAgaW1hZ2VXaWR0aEhlaWdodFtGT1JNX05BTUVfSU1BR0VfV0lEVEhdO1xuICAgICAgICAgICAgdGhpcy5jb250ZW50QmxvY2tbRk9STV9OQU1FX1JPV1NdW3RoaXMucm93XVt0aGlzLmNvbHVtbl1bRk9STV9OQU1FX0lNQUdFXVtGT1JNX05BTUVfSU1BR0VfSEVJR0hUXSA9XG4gICAgICAgICAgICAgICAgaW1hZ2VXaWR0aEhlaWdodFtGT1JNX05BTUVfSU1BR0VfSEVJR0hUXTtcbiAgICAgICAgICAgIHRoaXMucGVyc2lzdCgpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgYWRkTmV3SW1hZ2Uocm93LCBjb2x1bW4pIHtcbiAgICAgICAgdGhpcy5yb3cgPSByb3c7XG4gICAgICAgIHRoaXMuY29sdW1uID0gY29sdW1uO1xuICAgICAgICB0aGlzLmdldE1lZGlhKCk7XG4gICAgfVxuXG4gICAgYWRkQmFja2dyb3VuZEltYWdlTWVkaWEobWVkaWEpIHtcbiAgICAgICAgY29uc3QgaW1hZ2VNZWRpYUR0byA9IG5ldyBJbWFnZU1lZGlhRHRvKCk7XG4gICAgICAgIGltYWdlTWVkaWFEdG8uaW1hZ2VfdXJsID0gbWVkaWEuaW1hZ2VfdXJsO1xuICAgICAgICBpbWFnZU1lZGlhRHRvLmlkID0gbWVkaWEuaWQ7XG5cbiAgICAgICAgdGhpcy5jb250ZW50QmxvY2tbRk9STV9OQU1FX1JPV1NdW3RoaXMucm93XVt0aGlzLmNvbHVtbl0uaW1hZ2UgPSBpbWFnZU1lZGlhRHRvO1xuXG4gICAgICAgIHRoaXMucGVyc2lzdCgpO1xuICAgIH1cblxuICAgIHN0b3BQcm9wYWdhdGlvbigkZXZlbnQpIHtcbiAgICAgICAgJGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xuICAgIH1cblxuICAgIHRyaWdnZXJDb25maWcodXVpZCkge1xuICAgICAgICBjb25zdCBlbGVtZW50OiBIVE1MRWxlbWVudCA9IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoJyMnICsgdXVpZCArICcgLndiLXN0cnVjdHVyZS1jb25maWdfX3Rvb2xzJylbMF0gYXMgSFRNTEVsZW1lbnQ7XG4gICAgICAgIGNvbnNvbGUubG9nKGVsZW1lbnQpO1xuICAgICAgICBlbGVtZW50LmNsaWNrKCk7XG4gICAgfVxufVxuIiwiPGRpdiBjbGFzcz1cIndiLXRleHQtYmFja2dyb3VuZHMtcm93cy1pY29uLXRleHQgd2ItdGV4dC1iYWNrZ3JvdW5kcy1yb3dzLWljb24tdGV4dC0tZm91clwiPlxuICAgIDxkaXYgY2xhc3M9XCJjb2x1bW5zIGlzLW11bHRpbGluZVwiICpuZ0Zvcj1cImxldCByb3cgb2YgY29udGVudHNbQkFTRV9CTE9DS19DT05URU5UXS5yb3dzOyBsZXQgaSA9IGluZGV4XCI+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJ3Yi10ZXh0LWJhY2tncm91bmRzLXJvd3MtaWNvbi10ZXh0X19kZWxldGUtbGluZVwiPlxuICAgICAgICAgICAgPGRpdlxuICAgICAgICAgICAgICAgIHdiU2hvd0RlbGV0ZUJ1dHRvblxuICAgICAgICAgICAgICAgICpuZ0lmPVwiY29udGVudHNbQkFTRV9CTE9DS19DT05URU5UXS5saW5lX251bWJlciA+IDFcIlxuICAgICAgICAgICAgICAgIGNsYXNzPVwid2ItdGV4dC1iYWNrZ3JvdW5kcy1yb3dzLWljb24tdGV4dF9fZGVsZXRlLWxpbmVfX2J1dHRvblwiXG4gICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgPGkgY2xhc3M9XCJmYXMgZmEtdHJhc2gtYWx0XCI+PC9pPlxuICAgICAgICAgICAgICAgIDxwPnt7ICd3Yi5zdHJ1Y3R1cmVzLnRlbXBsYXRlLjY0JyB8IHRyYW5zbGF0ZSB9fTwvcD5cbiAgICAgICAgICAgICAgICA8YnV0dG9uIChjbGljayk9XCJkZWxldGVSb3coaSlcIj57eyAnd2Iuc3RydWN0dXJlcy50ZW1wbGF0ZS42NScgfCB0cmFuc2xhdGUgfX08L2J1dHRvbj5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdGb3I9XCJsZXQgaXRlbSBvZiByb3c7IGxldCBqID0gaW5kZXhcIj5cbiAgICAgICAgICAgIDx3Yi1zdHJ1Y3R1cmUtY29uZmlnXG4gICAgICAgICAgICAgICAgW2Jsb2NrVVVJRF09XCJ1dWlkXCJcbiAgICAgICAgICAgICAgICBbcG9zaXRpb25dPVwiaiA8IDIgPyBUWVBFX0NPTkZJR19QT1NJVElPTl9MRUZUX1RPUCA6IFRZUEVfQ09ORklHX1BPU0lUSU9OX1JJR0hUX1RPUFwiXG4gICAgICAgICAgICAgICAgW2lzRnVsbHdpZHRoXT1cInRydWVcIlxuICAgICAgICAgICAgICAgIFtjbGFzc109XCJpdGVtW0ZPUk1fTkFNRV9JTUFHRV0gPyAnJyA6ICdoaWRkZW4nXCJcbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiaXRlbVtGT1JNX05BTUVfSU1BR0VdXCI+XG4gICAgICAgICAgICAgICAgICAgIDx3Yi1zdHJ1Y3R1cmUtY29uZmlnLWlucHV0XG4gICAgICAgICAgICAgICAgICAgICAgICBbbGFiZWxdPVwiJ3diLnN0cnVjdHVyZXMudGVtcGxhdGUuOScgfCB0cmFuc2xhdGVcIlxuICAgICAgICAgICAgICAgICAgICAgICAgWyhuZ01vZGVsKV09XCJpdGVtW0ZPUk1fTkFNRV9JTUFHRV1bRk9STV9OQU1FX1RJVExFXVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAobmdNb2RlbENoYW5nZSk9XCJwZXJzaXN0KClcIlxuICAgICAgICAgICAgICAgICAgICA+PC93Yi1zdHJ1Y3R1cmUtY29uZmlnLWlucHV0PlxuICAgICAgICAgICAgICAgICAgICA8d2Itc3RydWN0dXJlLWNvbmZpZy1pbnB1dFxuICAgICAgICAgICAgICAgICAgICAgICAgW2xhYmVsXT1cIid3Yi5zdHJ1Y3R1cmVzLnRlbXBsYXRlLjEwJyB8IHRyYW5zbGF0ZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICBbKG5nTW9kZWwpXT1cIml0ZW1bRk9STV9OQU1FX0lNQUdFXVtGT1JNX05BTUVfVVJMXVwiXG4gICAgICAgICAgICAgICAgICAgICAgICBbcGxhY2Vob2xkZXJdPVwiJ3diLnN0cnVjdHVyZXMudGVtcGxhdGUuMTEnIHwgdHJhbnNsYXRlXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIChuZ01vZGVsQ2hhbmdlKT1cInBlcnNpc3QoKVwiXG4gICAgICAgICAgICAgICAgICAgID48L3diLXN0cnVjdHVyZS1jb25maWctaW5wdXQ+XG4gICAgICAgICAgICAgICAgICAgIDx3Yi1zdHJ1Y3R1cmUtY29uZmlnLWNoZWNrYm94XG4gICAgICAgICAgICAgICAgICAgICAgICBbbGFiZWxdPVwiJ3diLnN0cnVjdHVyZXMudGVtcGxhdGUuMTInIHwgdHJhbnNsYXRlXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIFsobmdNb2RlbCldPVwiaXRlbVtGT1JNX05BTUVfSU1BR0VdW0ZPUk1fTkFNRV9VUkxfVEFSR0VUXVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAobmdNb2RlbENoYW5nZSk9XCJwZXJzaXN0KClcIlxuICAgICAgICAgICAgICAgICAgICAgICAgW29mZl09XCInX3NlbGYnXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtvbl09XCInX2JsYW5rJ1wiXG4gICAgICAgICAgICAgICAgICAgID48L3diLXN0cnVjdHVyZS1jb25maWctY2hlY2tib3g+XG4gICAgICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICAgICAgICA8L3diLXN0cnVjdHVyZS1jb25maWc+XG4gICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgICA8ZGl2IGNsYXNzPVwiY29sdW1uIGlzLTMtZnVsbGhkIGlzLTMtZGVza3RvcFwiICpuZ0Zvcj1cImxldCBpdGVtIG9mIHJvdzsgbGV0IGogPSBpbmRleFwiPlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cIndiLXRleHQtYmFja2dyb3VuZHMtcm93cy1pY29uLXRleHRfX2l0ZW1cIj5cbiAgICAgICAgICAgICAgICA8ZGl2XG4gICAgICAgICAgICAgICAgICAgIGNsYXNzPVwid2ItdGV4dC1iYWNrZ3JvdW5kcy1yb3dzLWljb24tdGV4dF9faXRlbV9fY29udGVudFwiXG4gICAgICAgICAgICAgICAgICAgIFtuZ0NsYXNzXT1cIntcbiAgICAgICAgICAgICAgICAgICAgICAgICd3Yi10ZXh0LWJhY2tncm91bmRzLXJvd3MtaWNvbi10ZXh0X19pdGVtX19jb250ZW50LS1zbWFsbCc6XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29udGVudHNbQkFTRV9CTE9DS19DT05URU5UXVtGT1JNX05BTUVfSU1BR0VfTUFTS10gPT09IEZPUk1fVFlQRV9JTUFHRV9NQVNLX1NNQUxMLFxuICAgICAgICAgICAgICAgICAgICAgICAgJ3diLXRleHQtYmFja2dyb3VuZHMtcm93cy1pY29uLXRleHRfX2l0ZW1fX2NvbnRlbnQtLW1lZGl1bSc6XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29udGVudHNbQkFTRV9CTE9DS19DT05URU5UXVtGT1JNX05BTUVfSU1BR0VfTUFTS10gPT09IEZPUk1fVFlQRV9JTUFHRV9NQVNLX01FRElVTSxcbiAgICAgICAgICAgICAgICAgICAgICAgICd3Yi10ZXh0LWJhY2tncm91bmRzLXJvd3MtaWNvbi10ZXh0X19pdGVtX19jb250ZW50LS1sYXJnZSc6XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29udGVudHNbQkFTRV9CTE9DS19DT05URU5UXVtGT1JNX05BTUVfSU1BR0VfTUFTS10gPT09IEZPUk1fVFlQRV9JTUFHRV9NQVNLX0xBUkdFXG4gICAgICAgICAgICAgICAgICAgIH1cIlxuICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgPGRpdlxuICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJ3Yi10ZXh0LWJhY2tncm91bmRzLXJvd3MtaWNvbi10ZXh0X19pdGVtX19jb250ZW50X19ub2ltYWdlc1wiXG4gICAgICAgICAgICAgICAgICAgICAgICBbZGltZW5zaW9uc109XCJzaXplc1tjb250ZW50c1tCQVNFX0JMT0NLX0NPTlRFTlRdW0ZPUk1fTkFNRV9JTUFHRV9NQVNLXV1cIlxuICAgICAgICAgICAgICAgICAgICAgICAgd2JQaWN0dXJlc1RlbXBsYXRlRGlyZWN0aXZlXG4gICAgICAgICAgICAgICAgICAgICAgICAqbmdJZj1cIiFpdGVtW0ZPUk1fTkFNRV9JTUFHRV1cIlxuICAgICAgICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cImFkZE5ld0ltYWdlKGksIGopXCJcbiAgICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICAgICAgPHA+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAge3sgJ3diLnN0cnVjdHVyZXMudGVtcGxhdGUuOCcgfCB0cmFuc2xhdGUgfX1cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvcD5cbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgIDxkaXYgKm5nSWY9XCJpdGVtW0ZPUk1fTkFNRV9JTUFHRV1cIiBjbGFzcz1cIndiLXRleHQtYmFja2dyb3VuZHMtcm93cy1pY29uLXRleHRfX2l0ZW1fX2NvbnRlbnRfX2ltYWdlXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgd2JHZXRTaXplSW1hZ2VEaXJlY3RpdmVcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBbdXJsVG9QYXJzZV09XCJpdGVtW0ZPUk1fTkFNRV9JTUFHRV1bRk9STV9OQU1FX0lNQUdFX1VSTF1cIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIChvblVwZGF0ZSk9XCJ1cGRhdGVUaGlzSW1hZ2UoaXRlbVtGT1JNX05BTUVfSU1BR0VdLCAkZXZlbnQpXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBbc3R5bGUuYmFja2dyb3VuZC1pbWFnZV09XCIndXJsKCcgKyBpdGVtW0ZPUk1fTkFNRV9JTUFHRV1bRk9STV9OQU1FX0lNQUdFX1VSTF0gKyAnKSdcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICpuZ0lmPVwiaXRlbVtGT1JNX05BTUVfSU1BR0VdXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cIndiLXRleHQtYmFja2dyb3VuZHMtcm93cy1pY29uLXRleHRfX2l0ZW1fX2NvbnRlbnRfX2ltYWdlX19iYWNrZ3JvdW5kXCJcbiAgICAgICAgICAgICAgICAgICAgICAgID48L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG5cbiAgICAgICAgICAgICAgICAgICAgPGRpdlxuICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJ3Yi10ZXh0LWJhY2tncm91bmRzLXJvd3MtaWNvbi10ZXh0X19pdGVtX19jb250ZW50X193cmFwcGVyXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICpuZ0lmPVwiaXRlbVtGT1JNX05BTUVfSU1BR0VdXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIChjbGljayk9XCJvbkNsaWNrVXBkYXRlSW1hZ2UoaSwgailcIlxuICAgICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IChjbGljayk9XCJzdG9wUHJvcGFnYXRpb24oJGV2ZW50KVwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx3Yi1zdHJ1Y3R1cmUtY29uZmlnLWZvbnRcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgWyh2YWx1ZSldPVwiaXRlbVtGT1JNX05BTUVfSUNPTl1cIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbY29sb3JdPVwiY29udGVudHNbQkFTRV9CTE9DS19DT05URU5UXVtGT1JNX05BTUVfSUNPTl9DT0xPUl1cIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAodmFsdWVDaGFuZ2UpPVwiaXRlbVtGT1JNX05BTUVfSUNPTl0gPSAkZXZlbnQ7IHBlcnNpc3QoKVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPjwvd2Itc3RydWN0dXJlLWNvbmZpZy1mb250PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ3Yi10ZXh0LWJhY2tncm91bmRzLXJvd3MtaWNvbi10ZXh0X19pdGVtX19jb250ZW50X190aXRsZVwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8d3otZWRpdG9yXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbKG5nTW9kZWwpXT1cIml0ZW1bRk9STV9OQU1FX1RJVExFXVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAobmdNb2RlbENoYW5nZSk9XCJwZXJzaXN0KClcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW3BsYWNlaG9sZGVyXT1cIid3Yi5zaGFyZWQuY29tcG9uZW50cy5xdWlsbC4xJyB8IHRyYW5zbGF0ZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb250YWluZXJTZWxlY3Rvcj1cIi53Yi1jb21wb25lbnRfX2NvbnRhaW5lclwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC93ei1lZGl0b3I+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG4gICAgPGRpdiBjbGFzcz1cImNvbHVtbnNcIiAqbmdJZj1cImNvbnRlbnRzW0JBU0VfQkxPQ0tfQ09OVEVOVF0ubGluZV9udW1iZXIgPCA5XCI+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJjb2x1bW5cIj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ3Yi10ZXh0LWJhY2tncm91bmRzLXJvd3MtaWNvbi10ZXh0X19hZGRcIj5cbiAgICAgICAgICAgICAgICA8YSAoY2xpY2spPVwiYWRkUm93KGNvbnRlbnRzW0JBU0VfQkxPQ0tfQ09OVEVOVF0ubGluZV9udW1iZXIpXCI+XG4gICAgICAgICAgICAgICAgICAgIDxpIGNsYXNzPVwiZmFsIGZhLXBsdXMtY2lyY2xlXCI+PC9pPlxuICAgICAgICAgICAgICAgICAgICA8cD5cbiAgICAgICAgICAgICAgICAgICAgICAgIHt7ICd3Yi5zdHJ1Y3R1cmVzLnRlbXBsYXRlLjYzJyB8IHRyYW5zbGF0ZSB9fVxuICAgICAgICAgICAgICAgICAgICA8L3A+XG4gICAgICAgICAgICAgICAgPC9hPlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuPC9kaXY+XG4iXX0=
@@ -91,9 +91,9 @@ export class TextBackgroundsThreeRowsIconTextComponent extends StructuresCompone
91
91
  }
92
92
  }
93
93
  TextBackgroundsThreeRowsIconTextComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: TextBackgroundsThreeRowsIconTextComponent, deps: [{ token: i1.TranslateBlockService }], target: i0.ɵɵFactoryTarget.Component });
94
- TextBackgroundsThreeRowsIconTextComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.9", type: TextBackgroundsThreeRowsIconTextComponent, selector: "wb-text-backgrounds-three-rows-icon-text", usesInheritance: true, ngImport: i0, template: "<div class=\"wb-text-backgrounds-rows-icon-text wb-text-backgrounds-rows-icon-text--three\">\n <div class=\"columns is-multiline\" *ngFor=\"let row of contents[BASE_BLOCK_CONTENT].rows; let i = index\">\n <div class=\"wb-text-backgrounds-rows-icon-text__delete-line\">\n <div\n wbShowDeleteButton\n *ngIf=\"contents[BASE_BLOCK_CONTENT].line_number > 1\"\n class=\"wb-text-backgrounds-rows-icon-text__delete-line__button\"\n >\n <i class=\"fas fa-trash-alt\"></i>\n <p>{{ 'wb.structures.template.64' | translate }}</p>\n <button (click)=\"deleteRow(i)\">{{ 'wb.structures.template.65' | translate }}</button>\n </div>\n </div>\n <ng-container *ngFor=\"let item of row; let j = index\">\n <wb-structure-config\n [blockUUID]=\"uuid\"\n [position]=\"j === 0 ? TYPE_CONFIG_POSITION_LEFT_TOP : TYPE_CONFIG_POSITION_RIGHT_TOP\"\n [isFullwidth]=\"true\"\n *ngIf=\"item[FORM_NAME_IMAGE]\"\n >\n <wb-structure-config-input\n [label]=\"'wb.structures.template.9' | translate\"\n [(ngModel)]=\"item[FORM_NAME_IMAGE][FORM_NAME_TITLE]\"\n (ngModelChange)=\"persist()\"\n ></wb-structure-config-input>\n <wb-structure-config-input\n [label]=\"'wb.structures.template.10' | translate\"\n [(ngModel)]=\"item[FORM_NAME_IMAGE][FORM_NAME_URL]\"\n [placeholder]=\"'wb.structures.template.11' | translate\"\n (ngModelChange)=\"persist()\"\n ></wb-structure-config-input>\n <wb-structure-config-checkbox\n [label]=\"'wb.structures.template.12' | translate\"\n [(ngModel)]=\"item[FORM_NAME_IMAGE][FORM_NAME_URL_TARGET]\"\n (ngModelChange)=\"persist()\"\n [off]=\"'_self'\"\n [on]=\"'_blank'\"\n ></wb-structure-config-checkbox>\n </wb-structure-config>\n </ng-container>\n <div class=\"column\" *ngFor=\"let item of row; let j = index\">\n <div class=\"wb-text-backgrounds-rows-icon-text__item\">\n <div\n class=\"wb-text-backgrounds-rows-icon-text__item__content\"\n [ngClass]=\"{\n 'wb-text-backgrounds-rows-icon-text__item__content--small':\n contents[BASE_BLOCK_CONTENT][FORM_NAME_IMAGE_MASK] === FORM_TYPE_IMAGE_MASK_SMALL,\n 'wb-text-backgrounds-rows-icon-text__item__content--medium':\n contents[BASE_BLOCK_CONTENT][FORM_NAME_IMAGE_MASK] === FORM_TYPE_IMAGE_MASK_MEDIUM,\n 'wb-text-backgrounds-rows-icon-text__item__content--large':\n contents[BASE_BLOCK_CONTENT][FORM_NAME_IMAGE_MASK] === FORM_TYPE_IMAGE_MASK_LARGE\n }\"\n >\n <div\n class=\"wb-text-backgrounds-rows-icon-text__item__content__noimages\"\n wbPicturesTemplateDirective\n [dimensions]=\"sizes[contents[BASE_BLOCK_CONTENT][FORM_NAME_IMAGE_MASK]]\"\n *ngIf=\"!item[FORM_NAME_IMAGE]\"\n (click)=\"addNewImage(i, j)\"\n >\n <p>\n <i class=\"fal fa-image\"></i>\n {{ 'wb.structures.template.8' | translate }}\n </p>\n </div>\n <div *ngIf=\"item[FORM_NAME_IMAGE]\" class=\"wb-text-backgrounds-rows-icon-text__item__content__image\">\n <div\n wbGetSizeImageDirective\n [urlToParse]=\"item[FORM_NAME_IMAGE][FORM_NAME_IMAGE_URL]\"\n (onUpdate)=\"updateThisImage(item[FORM_NAME_IMAGE], $event)\"\n [style.background-image]=\"'url(' + item[FORM_NAME_IMAGE][FORM_NAME_IMAGE_URL] + ')'\"\n *ngIf=\"item[FORM_NAME_IMAGE]\"\n class=\"wb-text-backgrounds-rows-icon-text__item__content__image__background\"\n ></div>\n </div>\n\n <div\n class=\"wb-text-backgrounds-rows-icon-text__item__content__wrapper\"\n *ngIf=\"item[FORM_NAME_IMAGE]\"\n (click)=\"onClickUpdateImage(i, j)\"\n >\n <div (click)=\"stopPropagation($event)\">\n <wb-structure-config-font\n [(value)]=\"item[FORM_NAME_ICON]\"\n [color]=\"contents[BASE_BLOCK_CONTENT][FORM_NAME_ICON_COLOR]\"\n (valueChange)=\"item[FORM_NAME_ICON] = $event; persist()\"\n ></wb-structure-config-font>\n <div class=\"wb-text-backgrounds-rows-icon-text__item__content__title\">\n <wz-editor\n [(ngModel)]=\"item[FORM_NAME_TITLE]\"\n (ngModelChange)=\"persist()\"\n [placeholder]=\"'wb.shared.components.quill.1' | translate\"\n containerSelector=\".wb-component__container\"\n >\n </wz-editor>\n </div>\n </div>\n </div>\n </div>\n </div>\n </div>\n </div>\n <div class=\"columns\" *ngIf=\"contents[BASE_BLOCK_CONTENT].line_number < 9\">\n <div class=\"column\">\n <div class=\"wb-text-backgrounds-rows-icon-text__add\">\n <a (click)=\"addRow(contents[BASE_BLOCK_CONTENT].line_number)\">\n <i class=\"fal fa-plus-circle\"></i>\n <p>\n {{ 'wb.structures.template.63' | translate }}\n </p>\n </a>\n </div>\n </div>\n </div>\n</div>\n", dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i4.StructureConfigComponent, selector: "wb-structure-config", inputs: ["isActive", "blockUUID", "position", "isFullwidth", "small", "extraSmall"], outputs: ["isClose"] }, { kind: "component", type: i5.StructureConfigInputComponent, selector: "wb-structure-config-input", inputs: ["label", "type", "placeholder", "resizeMiddleScreen"] }, { kind: "component", type: i6.StructureConfigCheckboxComponent, selector: "wb-structure-config-checkbox", inputs: ["label", "on", "off"] }, { kind: "component", type: i7.StructureConfigFontComponent, selector: "wb-structure-config-font", inputs: ["white", "color", "isSmall", "isInline", "withImage", "alignLeft", "recommendedSize", "value"], outputs: ["valueChange"] }, { kind: "component", type: i8.WiziEditorComponent, selector: "wz-editor", inputs: ["placeholder", "position", "containerSelector"] }, { kind: "directive", type: i9.GetSizeImageDirective, selector: "[wbGetSizeImageDirective]", inputs: ["urlToParse", "dimensions"], outputs: ["onUpdate"] }, { kind: "directive", type: i10.PicturesTemplateDirective, selector: "[wbPicturesTemplateDirective]", inputs: ["dimensions", "classImageSize"] }, { kind: "directive", type: i11.ShowDeleteButtonDirective, selector: "[wbShowDeleteButton]" }, { kind: "pipe", type: i12.TranslatePipe, name: "translate" }] });
94
+ TextBackgroundsThreeRowsIconTextComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.9", type: TextBackgroundsThreeRowsIconTextComponent, selector: "wb-text-backgrounds-three-rows-icon-text", usesInheritance: true, ngImport: i0, template: "<div class=\"wb-text-backgrounds-rows-icon-text wb-text-backgrounds-rows-icon-text--three\">\n <div class=\"columns is-multiline\" *ngFor=\"let row of contents[BASE_BLOCK_CONTENT].rows; let i = index\">\n <div class=\"wb-text-backgrounds-rows-icon-text__delete-line\">\n <div\n wbShowDeleteButton\n *ngIf=\"contents[BASE_BLOCK_CONTENT].line_number > 1\"\n class=\"wb-text-backgrounds-rows-icon-text__delete-line__button\"\n >\n <i class=\"fas fa-trash-alt\"></i>\n <p>{{ 'wb.structures.template.64' | translate }}</p>\n <button (click)=\"deleteRow(i)\">{{ 'wb.structures.template.65' | translate }}</button>\n </div>\n </div>\n <ng-container *ngFor=\"let item of row; let j = index\">\n <wb-structure-config\n [blockUUID]=\"uuid\"\n [position]=\"j === 0 ? TYPE_CONFIG_POSITION_LEFT_TOP : TYPE_CONFIG_POSITION_RIGHT_TOP\"\n [isFullwidth]=\"true\"\n [class]=\"item[FORM_NAME_IMAGE] ? '' : 'hidden'\"\n >\n <ng-container *ngIf=\"item[FORM_NAME_IMAGE]\">\n <wb-structure-config-input\n [label]=\"'wb.structures.template.9' | translate\"\n [(ngModel)]=\"item[FORM_NAME_IMAGE][FORM_NAME_TITLE]\"\n (ngModelChange)=\"persist()\"\n ></wb-structure-config-input>\n <wb-structure-config-input\n [label]=\"'wb.structures.template.10' | translate\"\n [(ngModel)]=\"item[FORM_NAME_IMAGE][FORM_NAME_URL]\"\n [placeholder]=\"'wb.structures.template.11' | translate\"\n (ngModelChange)=\"persist()\"\n ></wb-structure-config-input>\n <wb-structure-config-checkbox\n [label]=\"'wb.structures.template.12' | translate\"\n [(ngModel)]=\"item[FORM_NAME_IMAGE][FORM_NAME_URL_TARGET]\"\n (ngModelChange)=\"persist()\"\n [off]=\"'_self'\"\n [on]=\"'_blank'\"\n ></wb-structure-config-checkbox>\n </ng-container>\n </wb-structure-config>\n </ng-container>\n <div class=\"column\" *ngFor=\"let item of row; let j = index\">\n <div class=\"wb-text-backgrounds-rows-icon-text__item\">\n <div\n class=\"wb-text-backgrounds-rows-icon-text__item__content\"\n [ngClass]=\"{\n 'wb-text-backgrounds-rows-icon-text__item__content--small':\n contents[BASE_BLOCK_CONTENT][FORM_NAME_IMAGE_MASK] === FORM_TYPE_IMAGE_MASK_SMALL,\n 'wb-text-backgrounds-rows-icon-text__item__content--medium':\n contents[BASE_BLOCK_CONTENT][FORM_NAME_IMAGE_MASK] === FORM_TYPE_IMAGE_MASK_MEDIUM,\n 'wb-text-backgrounds-rows-icon-text__item__content--large':\n contents[BASE_BLOCK_CONTENT][FORM_NAME_IMAGE_MASK] === FORM_TYPE_IMAGE_MASK_LARGE\n }\"\n >\n <div\n class=\"wb-text-backgrounds-rows-icon-text__item__content__noimages\"\n wbPicturesTemplateDirective\n [dimensions]=\"sizes[contents[BASE_BLOCK_CONTENT][FORM_NAME_IMAGE_MASK]]\"\n *ngIf=\"!item[FORM_NAME_IMAGE]\"\n (click)=\"addNewImage(i, j)\"\n >\n <p>\n <i class=\"fal fa-image\"></i>\n {{ 'wb.structures.template.8' | translate }}\n </p>\n </div>\n <div *ngIf=\"item[FORM_NAME_IMAGE]\" class=\"wb-text-backgrounds-rows-icon-text__item__content__image\">\n <div\n wbGetSizeImageDirective\n [urlToParse]=\"item[FORM_NAME_IMAGE][FORM_NAME_IMAGE_URL]\"\n (onUpdate)=\"updateThisImage(item[FORM_NAME_IMAGE], $event)\"\n [style.background-image]=\"'url(' + item[FORM_NAME_IMAGE][FORM_NAME_IMAGE_URL] + ')'\"\n *ngIf=\"item[FORM_NAME_IMAGE]\"\n class=\"wb-text-backgrounds-rows-icon-text__item__content__image__background\"\n ></div>\n </div>\n\n <div\n class=\"wb-text-backgrounds-rows-icon-text__item__content__wrapper\"\n *ngIf=\"item[FORM_NAME_IMAGE]\"\n (click)=\"onClickUpdateImage(i, j)\"\n >\n <div (click)=\"stopPropagation($event)\">\n <wb-structure-config-font\n [(value)]=\"item[FORM_NAME_ICON]\"\n [color]=\"contents[BASE_BLOCK_CONTENT][FORM_NAME_ICON_COLOR]\"\n (valueChange)=\"item[FORM_NAME_ICON] = $event; persist()\"\n ></wb-structure-config-font>\n <div class=\"wb-text-backgrounds-rows-icon-text__item__content__title\">\n <wz-editor\n [(ngModel)]=\"item[FORM_NAME_TITLE]\"\n (ngModelChange)=\"persist()\"\n [placeholder]=\"'wb.shared.components.quill.1' | translate\"\n containerSelector=\".wb-component__container\"\n >\n </wz-editor>\n </div>\n </div>\n </div>\n </div>\n </div>\n </div>\n </div>\n <div class=\"columns\" *ngIf=\"contents[BASE_BLOCK_CONTENT].line_number < 9\">\n <div class=\"column\">\n <div class=\"wb-text-backgrounds-rows-icon-text__add\">\n <a (click)=\"addRow(contents[BASE_BLOCK_CONTENT].line_number)\">\n <i class=\"fal fa-plus-circle\"></i>\n <p>\n {{ 'wb.structures.template.63' | translate }}\n </p>\n </a>\n </div>\n </div>\n </div>\n</div>\n", dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i4.StructureConfigComponent, selector: "wb-structure-config", inputs: ["isActive", "blockUUID", "position", "isFullwidth", "small", "extraSmall"], outputs: ["isClose"] }, { kind: "component", type: i5.StructureConfigInputComponent, selector: "wb-structure-config-input", inputs: ["label", "type", "placeholder", "resizeMiddleScreen"] }, { kind: "component", type: i6.StructureConfigCheckboxComponent, selector: "wb-structure-config-checkbox", inputs: ["label", "on", "off"] }, { kind: "component", type: i7.StructureConfigFontComponent, selector: "wb-structure-config-font", inputs: ["white", "color", "isSmall", "isInline", "withImage", "alignLeft", "recommendedSize", "value"], outputs: ["valueChange"] }, { kind: "component", type: i8.WiziEditorComponent, selector: "wz-editor", inputs: ["placeholder", "position", "containerSelector"] }, { kind: "directive", type: i9.GetSizeImageDirective, selector: "[wbGetSizeImageDirective]", inputs: ["urlToParse", "dimensions"], outputs: ["onUpdate"] }, { kind: "directive", type: i10.PicturesTemplateDirective, selector: "[wbPicturesTemplateDirective]", inputs: ["dimensions", "classImageSize"] }, { kind: "directive", type: i11.ShowDeleteButtonDirective, selector: "[wbShowDeleteButton]" }, { kind: "pipe", type: i12.TranslatePipe, name: "translate" }] });
95
95
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: TextBackgroundsThreeRowsIconTextComponent, decorators: [{
96
96
  type: Component,
97
- args: [{ selector: TextBackgroundsThreeRowsIconTextService.selector(), template: "<div class=\"wb-text-backgrounds-rows-icon-text wb-text-backgrounds-rows-icon-text--three\">\n <div class=\"columns is-multiline\" *ngFor=\"let row of contents[BASE_BLOCK_CONTENT].rows; let i = index\">\n <div class=\"wb-text-backgrounds-rows-icon-text__delete-line\">\n <div\n wbShowDeleteButton\n *ngIf=\"contents[BASE_BLOCK_CONTENT].line_number > 1\"\n class=\"wb-text-backgrounds-rows-icon-text__delete-line__button\"\n >\n <i class=\"fas fa-trash-alt\"></i>\n <p>{{ 'wb.structures.template.64' | translate }}</p>\n <button (click)=\"deleteRow(i)\">{{ 'wb.structures.template.65' | translate }}</button>\n </div>\n </div>\n <ng-container *ngFor=\"let item of row; let j = index\">\n <wb-structure-config\n [blockUUID]=\"uuid\"\n [position]=\"j === 0 ? TYPE_CONFIG_POSITION_LEFT_TOP : TYPE_CONFIG_POSITION_RIGHT_TOP\"\n [isFullwidth]=\"true\"\n *ngIf=\"item[FORM_NAME_IMAGE]\"\n >\n <wb-structure-config-input\n [label]=\"'wb.structures.template.9' | translate\"\n [(ngModel)]=\"item[FORM_NAME_IMAGE][FORM_NAME_TITLE]\"\n (ngModelChange)=\"persist()\"\n ></wb-structure-config-input>\n <wb-structure-config-input\n [label]=\"'wb.structures.template.10' | translate\"\n [(ngModel)]=\"item[FORM_NAME_IMAGE][FORM_NAME_URL]\"\n [placeholder]=\"'wb.structures.template.11' | translate\"\n (ngModelChange)=\"persist()\"\n ></wb-structure-config-input>\n <wb-structure-config-checkbox\n [label]=\"'wb.structures.template.12' | translate\"\n [(ngModel)]=\"item[FORM_NAME_IMAGE][FORM_NAME_URL_TARGET]\"\n (ngModelChange)=\"persist()\"\n [off]=\"'_self'\"\n [on]=\"'_blank'\"\n ></wb-structure-config-checkbox>\n </wb-structure-config>\n </ng-container>\n <div class=\"column\" *ngFor=\"let item of row; let j = index\">\n <div class=\"wb-text-backgrounds-rows-icon-text__item\">\n <div\n class=\"wb-text-backgrounds-rows-icon-text__item__content\"\n [ngClass]=\"{\n 'wb-text-backgrounds-rows-icon-text__item__content--small':\n contents[BASE_BLOCK_CONTENT][FORM_NAME_IMAGE_MASK] === FORM_TYPE_IMAGE_MASK_SMALL,\n 'wb-text-backgrounds-rows-icon-text__item__content--medium':\n contents[BASE_BLOCK_CONTENT][FORM_NAME_IMAGE_MASK] === FORM_TYPE_IMAGE_MASK_MEDIUM,\n 'wb-text-backgrounds-rows-icon-text__item__content--large':\n contents[BASE_BLOCK_CONTENT][FORM_NAME_IMAGE_MASK] === FORM_TYPE_IMAGE_MASK_LARGE\n }\"\n >\n <div\n class=\"wb-text-backgrounds-rows-icon-text__item__content__noimages\"\n wbPicturesTemplateDirective\n [dimensions]=\"sizes[contents[BASE_BLOCK_CONTENT][FORM_NAME_IMAGE_MASK]]\"\n *ngIf=\"!item[FORM_NAME_IMAGE]\"\n (click)=\"addNewImage(i, j)\"\n >\n <p>\n <i class=\"fal fa-image\"></i>\n {{ 'wb.structures.template.8' | translate }}\n </p>\n </div>\n <div *ngIf=\"item[FORM_NAME_IMAGE]\" class=\"wb-text-backgrounds-rows-icon-text__item__content__image\">\n <div\n wbGetSizeImageDirective\n [urlToParse]=\"item[FORM_NAME_IMAGE][FORM_NAME_IMAGE_URL]\"\n (onUpdate)=\"updateThisImage(item[FORM_NAME_IMAGE], $event)\"\n [style.background-image]=\"'url(' + item[FORM_NAME_IMAGE][FORM_NAME_IMAGE_URL] + ')'\"\n *ngIf=\"item[FORM_NAME_IMAGE]\"\n class=\"wb-text-backgrounds-rows-icon-text__item__content__image__background\"\n ></div>\n </div>\n\n <div\n class=\"wb-text-backgrounds-rows-icon-text__item__content__wrapper\"\n *ngIf=\"item[FORM_NAME_IMAGE]\"\n (click)=\"onClickUpdateImage(i, j)\"\n >\n <div (click)=\"stopPropagation($event)\">\n <wb-structure-config-font\n [(value)]=\"item[FORM_NAME_ICON]\"\n [color]=\"contents[BASE_BLOCK_CONTENT][FORM_NAME_ICON_COLOR]\"\n (valueChange)=\"item[FORM_NAME_ICON] = $event; persist()\"\n ></wb-structure-config-font>\n <div class=\"wb-text-backgrounds-rows-icon-text__item__content__title\">\n <wz-editor\n [(ngModel)]=\"item[FORM_NAME_TITLE]\"\n (ngModelChange)=\"persist()\"\n [placeholder]=\"'wb.shared.components.quill.1' | translate\"\n containerSelector=\".wb-component__container\"\n >\n </wz-editor>\n </div>\n </div>\n </div>\n </div>\n </div>\n </div>\n </div>\n <div class=\"columns\" *ngIf=\"contents[BASE_BLOCK_CONTENT].line_number < 9\">\n <div class=\"column\">\n <div class=\"wb-text-backgrounds-rows-icon-text__add\">\n <a (click)=\"addRow(contents[BASE_BLOCK_CONTENT].line_number)\">\n <i class=\"fal fa-plus-circle\"></i>\n <p>\n {{ 'wb.structures.template.63' | translate }}\n </p>\n </a>\n </div>\n </div>\n </div>\n</div>\n" }]
97
+ args: [{ selector: TextBackgroundsThreeRowsIconTextService.selector(), template: "<div class=\"wb-text-backgrounds-rows-icon-text wb-text-backgrounds-rows-icon-text--three\">\n <div class=\"columns is-multiline\" *ngFor=\"let row of contents[BASE_BLOCK_CONTENT].rows; let i = index\">\n <div class=\"wb-text-backgrounds-rows-icon-text__delete-line\">\n <div\n wbShowDeleteButton\n *ngIf=\"contents[BASE_BLOCK_CONTENT].line_number > 1\"\n class=\"wb-text-backgrounds-rows-icon-text__delete-line__button\"\n >\n <i class=\"fas fa-trash-alt\"></i>\n <p>{{ 'wb.structures.template.64' | translate }}</p>\n <button (click)=\"deleteRow(i)\">{{ 'wb.structures.template.65' | translate }}</button>\n </div>\n </div>\n <ng-container *ngFor=\"let item of row; let j = index\">\n <wb-structure-config\n [blockUUID]=\"uuid\"\n [position]=\"j === 0 ? TYPE_CONFIG_POSITION_LEFT_TOP : TYPE_CONFIG_POSITION_RIGHT_TOP\"\n [isFullwidth]=\"true\"\n [class]=\"item[FORM_NAME_IMAGE] ? '' : 'hidden'\"\n >\n <ng-container *ngIf=\"item[FORM_NAME_IMAGE]\">\n <wb-structure-config-input\n [label]=\"'wb.structures.template.9' | translate\"\n [(ngModel)]=\"item[FORM_NAME_IMAGE][FORM_NAME_TITLE]\"\n (ngModelChange)=\"persist()\"\n ></wb-structure-config-input>\n <wb-structure-config-input\n [label]=\"'wb.structures.template.10' | translate\"\n [(ngModel)]=\"item[FORM_NAME_IMAGE][FORM_NAME_URL]\"\n [placeholder]=\"'wb.structures.template.11' | translate\"\n (ngModelChange)=\"persist()\"\n ></wb-structure-config-input>\n <wb-structure-config-checkbox\n [label]=\"'wb.structures.template.12' | translate\"\n [(ngModel)]=\"item[FORM_NAME_IMAGE][FORM_NAME_URL_TARGET]\"\n (ngModelChange)=\"persist()\"\n [off]=\"'_self'\"\n [on]=\"'_blank'\"\n ></wb-structure-config-checkbox>\n </ng-container>\n </wb-structure-config>\n </ng-container>\n <div class=\"column\" *ngFor=\"let item of row; let j = index\">\n <div class=\"wb-text-backgrounds-rows-icon-text__item\">\n <div\n class=\"wb-text-backgrounds-rows-icon-text__item__content\"\n [ngClass]=\"{\n 'wb-text-backgrounds-rows-icon-text__item__content--small':\n contents[BASE_BLOCK_CONTENT][FORM_NAME_IMAGE_MASK] === FORM_TYPE_IMAGE_MASK_SMALL,\n 'wb-text-backgrounds-rows-icon-text__item__content--medium':\n contents[BASE_BLOCK_CONTENT][FORM_NAME_IMAGE_MASK] === FORM_TYPE_IMAGE_MASK_MEDIUM,\n 'wb-text-backgrounds-rows-icon-text__item__content--large':\n contents[BASE_BLOCK_CONTENT][FORM_NAME_IMAGE_MASK] === FORM_TYPE_IMAGE_MASK_LARGE\n }\"\n >\n <div\n class=\"wb-text-backgrounds-rows-icon-text__item__content__noimages\"\n wbPicturesTemplateDirective\n [dimensions]=\"sizes[contents[BASE_BLOCK_CONTENT][FORM_NAME_IMAGE_MASK]]\"\n *ngIf=\"!item[FORM_NAME_IMAGE]\"\n (click)=\"addNewImage(i, j)\"\n >\n <p>\n <i class=\"fal fa-image\"></i>\n {{ 'wb.structures.template.8' | translate }}\n </p>\n </div>\n <div *ngIf=\"item[FORM_NAME_IMAGE]\" class=\"wb-text-backgrounds-rows-icon-text__item__content__image\">\n <div\n wbGetSizeImageDirective\n [urlToParse]=\"item[FORM_NAME_IMAGE][FORM_NAME_IMAGE_URL]\"\n (onUpdate)=\"updateThisImage(item[FORM_NAME_IMAGE], $event)\"\n [style.background-image]=\"'url(' + item[FORM_NAME_IMAGE][FORM_NAME_IMAGE_URL] + ')'\"\n *ngIf=\"item[FORM_NAME_IMAGE]\"\n class=\"wb-text-backgrounds-rows-icon-text__item__content__image__background\"\n ></div>\n </div>\n\n <div\n class=\"wb-text-backgrounds-rows-icon-text__item__content__wrapper\"\n *ngIf=\"item[FORM_NAME_IMAGE]\"\n (click)=\"onClickUpdateImage(i, j)\"\n >\n <div (click)=\"stopPropagation($event)\">\n <wb-structure-config-font\n [(value)]=\"item[FORM_NAME_ICON]\"\n [color]=\"contents[BASE_BLOCK_CONTENT][FORM_NAME_ICON_COLOR]\"\n (valueChange)=\"item[FORM_NAME_ICON] = $event; persist()\"\n ></wb-structure-config-font>\n <div class=\"wb-text-backgrounds-rows-icon-text__item__content__title\">\n <wz-editor\n [(ngModel)]=\"item[FORM_NAME_TITLE]\"\n (ngModelChange)=\"persist()\"\n [placeholder]=\"'wb.shared.components.quill.1' | translate\"\n containerSelector=\".wb-component__container\"\n >\n </wz-editor>\n </div>\n </div>\n </div>\n </div>\n </div>\n </div>\n </div>\n <div class=\"columns\" *ngIf=\"contents[BASE_BLOCK_CONTENT].line_number < 9\">\n <div class=\"column\">\n <div class=\"wb-text-backgrounds-rows-icon-text__add\">\n <a (click)=\"addRow(contents[BASE_BLOCK_CONTENT].line_number)\">\n <i class=\"fal fa-plus-circle\"></i>\n <p>\n {{ 'wb.structures.template.63' | translate }}\n </p>\n </a>\n </div>\n </div>\n </div>\n</div>\n" }]
98
98
  }], ctorParameters: function () { return [{ type: i1.TranslateBlockService }]; } });
99
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGV4dC1iYWNrZ3JvdW5kcy10aHJlZS1yb3dzLWljb24tdGV4dC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy93aXppLWJsb2NrL3NyYy9saWIvc3RydWN0dXJlcy90ZXh0LWJhY2tncm91bmRzL3RocmVlLXJvd3MtaWNvbi10ZXh0L3RleHQtYmFja2dyb3VuZHMtdGhyZWUtcm93cy1pY29uLXRleHQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvd2l6aS1ibG9jay9zcmMvbGliL3N0cnVjdHVyZXMvdGV4dC1iYWNrZ3JvdW5kcy90aHJlZS1yb3dzLWljb24tdGV4dC90ZXh0LWJhY2tncm91bmRzLXRocmVlLXJvd3MtaWNvbi10ZXh0LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQVUsTUFBTSxlQUFlLENBQUM7QUFFbEQsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDakUsT0FBTyxFQUFFLHVDQUF1QyxFQUFFLE1BQU0seUZBQXlGLENBQUM7QUFDbEosT0FBTyxFQUNILGNBQWMsRUFDZCxjQUFjLEVBQ2QscUJBQXFCLEVBQ3JCLHFCQUFxQixFQUNyQixtQkFBbUIsRUFDbkIsZUFBZSxFQUNmLHFCQUFxQixFQUNyQixzQkFBc0IsR0FDekIsTUFBTSwrQkFBK0IsQ0FBQztBQUN2QyxPQUFPLEVBQUUsOEJBQThCLEVBQUUsTUFBTSwyRUFBMkUsQ0FBQztBQUMzSCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sb0RBQW9ELENBQUM7QUFFbkYsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0saURBQWlELENBQUM7Ozs7Ozs7Ozs7Ozs7O0FBTXhGLE1BQU0sT0FBTyx5Q0FBMEMsU0FBUSxtQkFBbUM7SUFLOUYsWUFBb0IscUJBQTRDO1FBQzVELEtB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a0JBSnJELFNBQVM7K0JBQ0ksdUNBQXVDLENBQUMsUUFBUSxFQUFFIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEZhcUxpc3RJY29uRHRvIH0gZnJvbSAnLi4vLi4vLi4vZHRvcy9ibG9ja3MvZmFxL2ZhcS1saXN0LWljb24uZHRvJztcbmltcG9ydCB7IFN0cnVjdHVyZXNDb21wb25lbnQgfSBmcm9tICcuLi8uLi9zdHJ1Y3R1cmVzLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBUZXh0QmFja2dyb3VuZHNUaHJlZVJvd3NJY29uVGV4dFNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi9zZXJ2aWNlcy9ibG9ja3MvdGV4dC1iYWNrZ3JvdW5kcy90ZXh0LWJhY2tncm91bmRzLXRocmVlLXJvd3MtaWNvbi10ZXh0LnNlcnZpY2UnO1xuaW1wb3J0IHtcbiAgICBGT1JNX05BTUVfSU5JVCxcbiAgICBGT1JNX05BTUVfUk9XUyxcbiAgICBGT1JNX05BTUVfSVRFTV9OVU1CRVIsXG4gICAgRk9STV9OQU1FX0xJTkVfTlVNQkVSLFxuICAgIEZPUk1fTkFNRV9JTUFHRV9VUkwsXG4gICAgRk9STV9OQU1FX0lNQUdFLFxuICAgIEZPUk1fTkFNRV9JTUFHRV9XSURUSCxcbiAgICBGT1JNX05BTUVfSU1BR0VfSEVJR0hULFxufSBmcm9tICcuLi8uLi8uLi9kdG9zL2Zvcm1zL2Zvcm1zLmR0byc7XG5pbXBvcnQgeyBUZXh0QmFja2dyb3VuZHNSb3dzSWNvblRleHREdG8gfSBmcm9tICcuLi8uLi8uLi9kdG9zL2Jsb2Nrcy90ZXh0LWJhY2tncm91bmRzL3RleHQtYmFja2dyb3VuZHMtcm93cy1pY29uLXRleHQuZHRvJztcbmltcG9ydCB7IEltYWdlTWVkaWFEdG8gfSBmcm9tICcuLi8uLi8uLi9kdG9zL2NvbmZpZ3MvbWVkaWFzL2ltYWdlL2ltYWdlLW1lZGlhLmR0byc7XG5pbXBvcnQgeyBNZWRpYVdpZHRoSGVpZ2h0RHRvIH0gZnJvbSAnLi4vLi4vLi4vZHRvcy9jb25maWdzL21lZGlhcy9tZWRpYS13aWR0aC1oZWlnaHQuZHRvJztcbmltcG9ydCB7IFRyYW5zbGF0ZUJsb2NrU2VydmljZSB9IGZyb20gJy4uLy4uLy4uL3NlcnZpY2VzL3V0aWxzL3RyYW5zbGF0ZS1ibG9jay5zZXJ2aWNlJztcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6IFRleHRCYWNrZ3JvdW5kc1RocmVlUm93c0ljb25UZXh0U2VydmljZS5zZWxlY3RvcigpLFxuICAgIHRlbXBsYXRlVXJsOiAnLi90ZXh0LWJhY2tncm91bmRzLXRocmVlLXJvd3MtaWNvbi10ZXh0LmNvbXBvbmVudC5odG1sJyxcbn0pXG5leHBvcnQgY2xhc3MgVGV4dEJhY2tncm91bmRzVGhyZWVSb3dzSWNvblRleHRDb21wb25lbnQgZXh0ZW5kcyBTdHJ1Y3R1cmVzQ29tcG9uZW50PEZhcUxpc3RJY29uRHRvPiBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gICAgcm93ID0gMDtcbiAgICBjb2x1bW4gPSAwO1xuICAgIHNpemVzID0geyBzbWFsbDogJzYyMHgxNzUnLCBtZWRpdW06ICc2MjB4MjUwJywgbGFyZ2U6ICc2MjB4MzI1JyB9O1xuXG4gICAgY29uc3RydWN0b3IocHJpdmF0ZSB0cmFuc2xhdGVCbG9ja1NlcnZpY2U6IFRyYW5zbGF0ZUJsb2NrU2VydmljZSkge1xuICAgICAgICBzdXBlcigpO1xuICAgICAgICB0aGlzLnNldENvbXBvbmVudFNlcnZpY2UoVGV4dEJhY2tncm91bmRzVGhyZWVSb3dzSWNvblRleHRTZXJ2aWNlKTtcbiAgICB9XG5cbiAgICBuZ09uSW5pdCgpIHtcbiAgICAgICAgc3VwZXIubmdPbkluaXQoKTtcbiAgICAgICAgdGhpcy5yb3cgPSAwO1xuICAgICAgICB0aGlzLmNvbHVtbiA9IDA7XG4gICAgICAgIHRoaXMuc3Vic2NyaWJlVG9JbWFnZSgpO1xuICAgICAgICBpZiAoIXRoaXMuY29udGVudEJsb2NrW0ZPUk1fTkFNRV9JTklUXSkge1xuICAgICAgICAgICAgdGhpcy5hZGRSb3coMCk7XG4gICAgICAgICAgICB0aGlzLmNvbnRlbnRCbG9ja1tGT1JNX05BTUVfSU5JVF0gPSB0cnVlO1xuICAgICAgICAgICAgdGhpcy5wZXJzaXN0KCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBhZGRSb3coaW5kZXgpIHtcbiAgICAgICAgdGhpcy5jb250ZW50QmxvY2tbRk9STV9OQU1FX1JPV1NdLnB1c2gobmV3IEFycmF5PFRleHRCYWNrZ3JvdW5kc1Jvd3NJY29uVGV4dER0bz4oKSk7XG4gICAgICAgIGZvciAodmFyIGkgPSAwOyBpIDwgdGhpcy5jb250ZW50QmxvY2tbRk9STV9OQU1FX0lURU1fTlVNQkVSXTsgKytpKSB7XG4gICAgICAgICAgICBjb25zdCBuZXdFbGVtZW50ID0gbmV3IFRleHRCYWNrZ3JvdW5kc1Jvd3NJY29uVGV4dER0bygpO1xuICAgICAgICAgICAgdGhpcy50cmFuc2xhdGVCbG9ja1NlcnZpY2UudHJhbnNsYXRlUHJvcGVydGllcyhuZXdFbGVtZW50KTtcbiAgICAgICAgICAgIHRoaXMuY29udGVudEJsb2NrW0ZPUk1fTkFNRV9ST1dTXVtpbmRleF0ucHVzaChuZXdFbGVtZW50KTtcbiAgICAgICAgfVxuICAgICAgICB0aGlzLmNvbnRlbnRCbG9ja1tGT1JNX05BTUVfTElORV9OVU1CRVJdICs9IDE7XG4gICAgICAgIHRoaXMucGVyc2lzdCgpO1xuICAgICAgICBjb25zb2xlLmxvZyh0aGlzLmNvbnRlbnRCbG9ja1tGT1JNX05BTUVfUk9XU10pO1xuICAgIH1cblxuICAgIGRlbGV0ZVJvdyhpKSB7XG4gICAgICAgIHRoaXMuY29udGVudEJsb2NrW0ZPUk1fTkFNRV9ST1dTXS5zcGxpY2UoaSwgMSk7XG4gICAgICAgIHRoaXMuY29udGVudEJsb2NrW0ZPUk1fTkFNRV9MSU5FX05VTUJFUl0gLT0gMTtcbiAgICAgICAgdGhpcy5wZXJzaXN0KCk7XG4gICAgfVxuXG4gICAgc3Vic2NyaWJlVG9JbWFnZSgpIHtcbiAgICAgICAgdGhpcy5pbWFnZS5zdWJzY3JpYmUoKG1lZGlhKSA9PiB7XG4gICAgICAgICAgICB0aGlzLmFkZEJhY2tncm91bmRJbWFnZU1lZGlhKG1lZGlhKTtcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgb25DbGlja1VwZGF0ZUltYWdlKHJvdywgY29sdW1uKSB7XG4gICAgICAgIHRoaXMucm93ID0gcm93O1xuICAgICAgICB0aGlzLmNvbHVtbiA9IGNvbHVtbjtcbiAgICAgICAgdGhpcy5nZXRNZWRpYSgpO1xuICAgIH1cblxuICAgIHVwZGF0ZVRoaXNJbWFnZShpbWFnZVdpZHRoSGVpZ2h0OiBNZWRpYVdpZHRoSGVpZ2h0RHRvLCAkZXZlbnQpIHtcbiAgICAgICAgaWYgKFxuICAgICAgICAgICAgaW1hZ2VXaWR0aEhlaWdodFtGT1JNX05BTUVfSU1BR0VfVVJMXSA9PT1cbiAgICAgICAgICAgIHRoaXMuY29udGVudEJsb2NrW0ZPUk1fTkFNRV9ST1dTXVt0aGlzLnJvd11bdGhpcy5jb2x1bW5dW0ZPUk1fTkFNRV9JTUFHRV1bRk9STV9OQU1FX0lNQUdFX1VSTF1cbiAgICAgICAgKSB7XG4gICAgICAgICAgICB0aGlzLmNvbnRlbnRCbG9ja1tGT1JNX05BTUVfUk9XU11bdGhpcy5yb3ddW3RoaXMuY29sdW1uXVtGT1JNX05BTUVfSU1BR0VdW0ZPUk1fTkFNRV9JTUFHRV9XSURUSF0gPVxuICAgICAgICAgICAgICAgIGltYWdlV2lkdGhIZWlnaHRbRk9STV9OQU1FX0lNQUdFX1dJRFRIXTtcbiAgICAgICAgICAgIHRoaXMuY29udGVudEJsb2NrW0ZPUk1fTkFNRV9ST1dTXVt0aGlzLnJvd11bdGhpcy5jb2x1bW5dW0ZPUk1fTkFNRV9JTUFHRV1bRk9STV9OQU1FX0lNQUdFX0hFSUdIVF0gPVxuICAgICAgICAgICAgICAgIGltYWdlV2lkdGhIZWlnaHRbRk9STV9OQU1FX0lNQUdFX0hFSUdIVF07XG4gICAgICAgICAgICB0aGlzLnBlcnNpc3QoKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIGFkZE5ld0ltYWdlKHJvdywgY29sdW1uKSB7XG4gICAgICAgIHRoaXMucm93ID0gcm93O1xuICAgICAgICB0aGlzLmNvbHVtbiA9IGNvbHVtbjtcbiAgICAgICAgdGhpcy5nZXRNZWRpYSgpO1xuICAgIH1cblxuICAgIGFkZEJhY2tncm91bmRJbWFnZU1lZGlhKG1lZGlhKSB7XG4gICAgICAgIGNvbnN0IGltYWdlTWVkaWFEdG8gPSBuZXcgSW1hZ2VNZWRpYUR0bygpO1xuICAgICAgICBpbWFnZU1lZGlhRHRvLmltYWdlX3VybCA9IG1lZGlhLmltYWdlX3VybDtcbiAgICAgICAgaW1hZ2VNZWRpYUR0by5pZCA9IG1lZGlhLmlkO1xuXG4gICAgICAgIHRoaXMuY29udGVudEJsb2NrW0ZPUk1fTkFNRV9ST1dTXVt0aGlzLnJvd11bdGhpcy5jb2x1bW5dLmltYWdlID0gaW1hZ2VNZWRpYUR0bztcblxuICAgICAgICB0aGlzLnBlcnNpc3QoKTtcbiAgICB9XG5cbiAgICBzdG9wUHJvcGFnYXRpb24oJGV2ZW50KSB7XG4gICAgICAgICRldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcbiAgICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwid2ItdGV4dC1iYWNrZ3JvdW5kcy1yb3dzLWljb24tdGV4dCB3Yi10ZXh0LWJhY2tncm91bmRzLXJvd3MtaWNvbi10ZXh0LS10aHJlZVwiPlxuICAgIDxkaXYgY2xhc3M9XCJjb2x1bW5zIGlzLW11bHRpbGluZVwiICpuZ0Zvcj1cImxldCByb3cgb2YgY29udGVudHNbQkFTRV9CTE9DS19DT05URU5UXS5yb3dzOyBsZXQgaSA9IGluZGV4XCI+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJ3Yi10ZXh0LWJhY2tncm91bmRzLXJvd3MtaWNvbi10ZXh0X19kZWxldGUtbGluZVwiPlxuICAgICAgICAgICAgPGRpdlxuICAgICAgICAgICAgICAgIHdiU2hvd0RlbGV0ZUJ1dHRvblxuICAgICAgICAgICAgICAgICpuZ0lmPVwiY29udGVudHNbQkFTRV9CTE9DS19DT05URU5UXS5saW5lX251bWJlciA+IDFcIlxuICAgICAgICAgICAgICAgIGNsYXNzPVwid2ItdGV4dC1iYWNrZ3JvdW5kcy1yb3dzLWljb24tdGV4dF9fZGVsZXRlLWxpbmVfX2J1dHRvblwiXG4gICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgPGkgY2xhc3M9XCJmYXMgZmEtdHJhc2gtYWx0XCI+PC9pPlxuICAgICAgICAgICAgICAgIDxwPnt7ICd3Yi5zdHJ1Y3R1cmVzLnRlbXBsYXRlLjY0JyB8IHRyYW5zbGF0ZSB9fTwvcD5cbiAgICAgICAgICAgICAgICA8YnV0dG9uIChjbGljayk9XCJkZWxldGVSb3coaSlcIj57eyAnd2Iuc3RydWN0dXJlcy50ZW1wbGF0ZS42NScgfCB0cmFuc2xhdGUgfX08L2J1dHRvbj5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdGb3I9XCJsZXQgaXRlbSBvZiByb3c7IGxldCBqID0gaW5kZXhcIj5cbiAgICAgICAgICAgIDx3Yi1zdHJ1Y3R1cmUtY29uZmlnXG4gICAgICAgICAgICAgICAgW2Jsb2NrVVVJRF09XCJ1dWlkXCJcbiAgICAgICAgICAgICAgICBbcG9zaXRpb25dPVwiaiA9PT0gMCA/IFRZUEVfQ09ORklHX1BPU0lUSU9OX0xFRlRfVE9QIDogVFlQRV9DT05GSUdfUE9TSVRJT05fUklHSFRfVE9QXCJcbiAgICAgICAgICAgICAgICBbaXNGdWxsd2lkdGhdPVwidHJ1ZVwiXG4gICAgICAgICAgICAgICAgKm5nSWY9XCJpdGVtW0ZPUk1fTkFNRV9JTUFHRV1cIlxuICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgIDx3Yi1zdHJ1Y3R1cmUtY29uZmlnLWlucHV0XG4gICAgICAgICAgICAgICAgICAgIFtsYWJlbF09XCInd2Iuc3RydWN0dXJlcy50ZW1wbGF0ZS45JyB8IHRyYW5zbGF0ZVwiXG4gICAgICAgICAgICAgICAgICAgIFsobmdNb2RlbCldPVwiaXRlbVtGT1JNX05BTUVfSU1BR0VdW0ZPUk1fTkFNRV9USVRMRV1cIlxuICAgICAgICAgICAgICAgICAgICAobmdNb2RlbENoYW5nZSk9XCJwZXJzaXN0KClcIlxuICAgICAgICAgICAgICAgID48L3diLXN0cnVjdHVyZS1jb25maWctaW5wdXQ+XG4gICAgICAgICAgICAgICAgPHdiLXN0cnVjdHVyZS1jb25maWctaW5wdXRcbiAgICAgICAgICAgICAgICAgICAgW2xhYmVsXT1cIid3Yi5zdHJ1Y3R1cmVzLnRlbXBsYXRlLjEwJyB8IHRyYW5zbGF0ZVwiXG4gICAgICAgICAgICAgICAgICAgIFsobmdNb2RlbCldPVwiaXRlbVtGT1JNX05BTUVfSU1BR0VdW0ZPUk1fTkFNRV9VUkxdXCJcbiAgICAgICAgICAgICAgICAgICAgW3BsYWNlaG9sZGVyXT1cIid3Yi5zdHJ1Y3R1cmVzLnRlbXBsYXRlLjExJyB8IHRyYW5zbGF0ZVwiXG4gICAgICAgICAgICAgICAgICAgIChuZ01vZGVsQ2hhbmdlKT1cInBlcnNpc3QoKVwiXG4gICAgICAgICAgICAgICAgPjwvd2Itc3RydWN0dXJlLWNvbmZpZy1pbnB1dD5cbiAgICAgICAgICAgICAgICA8d2Itc3RydWN0dXJlLWNvbmZpZy1jaGVja2JveFxuICAgICAgICAgICAgICAgICAgICBbbGFiZWxdPVwiJ3diLnN0cnVjdHVyZXMudGVtcGxhdGUuMTInIHwgdHJhbnNsYXRlXCJcbiAgICAgICAgICAgICAgICAgICAgWyhuZ01vZGVsKV09XCJpdGVtW0ZPUk1fTkFNRV9JTUFHRV1bRk9STV9OQU1FX1VSTF9UQVJHRVRdXCJcbiAgICAgICAgICAgICAgICAgICAgKG5nTW9kZWxDaGFuZ2UpPVwicGVyc2lzdCgpXCJcbiAgICAgICAgICAgICAgICAgICAgW29mZl09XCInX3NlbGYnXCJcbiAgICAgICAgICAgICAgICAgICAgW29uXT1cIidfYmxhbmsnXCJcbiAgICAgICAgICAgICAgICA+PC93Yi1zdHJ1Y3R1cmUtY29uZmlnLWNoZWNrYm94PlxuICAgICAgICAgICAgPC93Yi1zdHJ1Y3R1cmUtY29uZmlnPlxuICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgICAgPGRpdiBjbGFzcz1cImNvbHVtblwiICpuZ0Zvcj1cImxldCBpdGVtIG9mIHJvdzsgbGV0IGogPSBpbmRleFwiPlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cIndiLXRleHQtYmFja2dyb3VuZHMtcm93cy1pY29uLXRleHRfX2l0ZW1cIj5cbiAgICAgICAgICAgICAgICA8ZGl2XG4gICAgICAgICAgICAgICAgICAgIGNsYXNzPVwid2ItdGV4dC1iYWNrZ3JvdW5kcy1yb3dzLWljb24tdGV4dF9faXRlbV9fY29udGVudFwiXG4gICAgICAgICAgICAgICAgICAgIFtuZ0NsYXNzXT1cIntcbiAgICAgICAgICAgICAgICAgICAgICAgICd3Yi10ZXh0LWJhY2tncm91bmRzLXJvd3MtaWNvbi10ZXh0X19pdGVtX19jb250ZW50LS1zbWFsbCc6XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29udGVudHNbQkFTRV9CTE9DS19DT05URU5UXVtGT1JNX05BTUVfSU1BR0VfTUFTS10gPT09IEZPUk1fVFlQRV9JTUFHRV9NQVNLX1NNQUxMLFxuICAgICAgICAgICAgICAgICAgICAgICAgJ3diLXRleHQtYmFja2dyb3VuZHMtcm93cy1pY29uLXRleHRfX2l0ZW1fX2NvbnRlbnQtLW1lZGl1bSc6XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29udGVudHNbQkFTRV9CTE9DS19DT05URU5UXVtGT1JNX05BTUVfSU1BR0VfTUFTS10gPT09IEZPUk1fVFlQRV9JTUFHRV9NQVNLX01FRElVTSxcbiAgICAgICAgICAgICAgICAgICAgICAgICd3Yi10ZXh0LWJhY2tncm91bmRzLXJvd3MtaWNvbi10ZXh0X19pdGVtX19jb250ZW50LS1sYXJnZSc6XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29udGVudHNbQkFTRV9CTE9DS19DT05URU5UXVtGT1JNX05BTUVfSU1BR0VfTUFTS10gPT09IEZPUk1fVFlQRV9JTUFHRV9NQVNLX0xBUkdFXG4gICAgICAgICAgICAgICAgICAgIH1cIlxuICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgPGRpdlxuICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJ3Yi10ZXh0LWJhY2tncm91bmRzLXJvd3MtaWNvbi10ZXh0X19pdGVtX19jb250ZW50X19ub2ltYWdlc1wiXG4gICAgICAgICAgICAgICAgICAgICAgICB3YlBpY3R1cmVzVGVtcGxhdGVEaXJlY3RpdmVcbiAgICAgICAgICAgICAgICAgICAgICAgIFtkaW1lbnNpb25zXT1cInNpemVzW2NvbnRlbnRzW0JBU0VfQkxPQ0tfQ09OVEVOVF1bRk9STV9OQU1FX0lNQUdFX01BU0tdXVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAqbmdJZj1cIiFpdGVtW0ZPUk1fTkFNRV9JTUFHRV1cIlxuICAgICAgICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cImFkZE5ld0ltYWdlKGksIGopXCJcbiAgICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICAgICAgPHA+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGkgY2xhc3M9XCJmYWwgZmEtaW1hZ2VcIj48L2k+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAge3sgJ3diLnN0cnVjdHVyZXMudGVtcGxhdGUuOCcgfCB0cmFuc2xhdGUgfX1cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvcD5cbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgIDxkaXYgKm5nSWY9XCJpdGVtW0ZPUk1fTkFNRV9JTUFHRV1cIiBjbGFzcz1cIndiLXRleHQtYmFja2dyb3VuZHMtcm93cy1pY29uLXRleHRfX2l0ZW1fX2NvbnRlbnRfX2ltYWdlXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgd2JHZXRTaXplSW1hZ2VEaXJlY3RpdmVcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBbdXJsVG9QYXJzZV09XCJpdGVtW0ZPUk1fTkFNRV9JTUFHRV1bRk9STV9OQU1FX0lNQUdFX1VSTF1cIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIChvblVwZGF0ZSk9XCJ1cGRhdGVUaGlzSW1hZ2UoaXRlbVtGT1JNX05BTUVfSU1BR0VdLCAkZXZlbnQpXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBbc3R5bGUuYmFja2dyb3VuZC1pbWFnZV09XCIndXJsKCcgKyBpdGVtW0ZPUk1fTkFNRV9JTUFHRV1bRk9STV9OQU1FX0lNQUdFX1VSTF0gKyAnKSdcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICpuZ0lmPVwiaXRlbVtGT1JNX05BTUVfSU1BR0VdXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cIndiLXRleHQtYmFja2dyb3VuZHMtcm93cy1pY29uLXRleHRfX2l0ZW1fX2NvbnRlbnRfX2ltYWdlX19iYWNrZ3JvdW5kXCJcbiAgICAgICAgICAgICAgICAgICAgICAgID48L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG5cbiAgICAgICAgICAgICAgICAgICAgPGRpdlxuICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJ3Yi10ZXh0LWJhY2tncm91bmRzLXJvd3MtaWNvbi10ZXh0X19pdGVtX19jb250ZW50X193cmFwcGVyXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICpuZ0lmPVwiaXRlbVtGT1JNX05BTUVfSU1BR0VdXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIChjbGljayk9XCJvbkNsaWNrVXBkYXRlSW1hZ2UoaSwgailcIlxuICAgICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IChjbGljayk9XCJzdG9wUHJvcGFnYXRpb24oJGV2ZW50KVwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx3Yi1zdHJ1Y3R1cmUtY29uZmlnLWZvbnRcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgWyh2YWx1ZSldPVwiaXRlbVtGT1JNX05BTUVfSUNPTl1cIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbY29sb3JdPVwiY29udGVudHNbQkFTRV9CTE9DS19DT05URU5UXVtGT1JNX05BTUVfSUNPTl9DT0xPUl1cIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAodmFsdWVDaGFuZ2UpPVwiaXRlbVtGT1JNX05BTUVfSUNPTl0gPSAkZXZlbnQ7IHBlcnNpc3QoKVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPjwvd2Itc3RydWN0dXJlLWNvbmZpZy1mb250PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ3Yi10ZXh0LWJhY2tncm91bmRzLXJvd3MtaWNvbi10ZXh0X19pdGVtX19jb250ZW50X190aXRsZVwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8d3otZWRpdG9yXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbKG5nTW9kZWwpXT1cIml0ZW1bRk9STV9OQU1FX1RJVExFXVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAobmdNb2RlbENoYW5nZSk9XCJwZXJzaXN0KClcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW3BsYWNlaG9sZGVyXT1cIid3Yi5zaGFyZWQuY29tcG9uZW50cy5xdWlsbC4xJyB8IHRyYW5zbGF0ZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb250YWluZXJTZWxlY3Rvcj1cIi53Yi1jb21wb25lbnRfX2NvbnRhaW5lclwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC93ei1lZGl0b3I+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG4gICAgPGRpdiBjbGFzcz1cImNvbHVtbnNcIiAqbmdJZj1cImNvbnRlbnRzW0JBU0VfQkxPQ0tfQ09OVEVOVF0ubGluZV9udW1iZXIgPCA5XCI+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJjb2x1bW5cIj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ3Yi10ZXh0LWJhY2tncm91bmRzLXJvd3MtaWNvbi10ZXh0X19hZGRcIj5cbiAgICAgICAgICAgICAgICA8YSAoY2xpY2spPVwiYWRkUm93KGNvbnRlbnRzW0JBU0VfQkxPQ0tfQ09OVEVOVF0ubGluZV9udW1iZXIpXCI+XG4gICAgICAgICAgICAgICAgICAgIDxpIGNsYXNzPVwiZmFsIGZhLXBsdXMtY2lyY2xlXCI+PC9pPlxuICAgICAgICAgICAgICAgICAgICA8cD5cbiAgICAgICAgICAgICAgICAgICAgICAgIHt7ICd3Yi5zdHJ1Y3R1cmVzLnRlbXBsYXRlLjYzJyB8IHRyYW5zbGF0ZSB9fVxuICAgICAgICAgICAgICAgICAgICA8L3A+XG4gICAgICAgICAgICAgICAgPC9hPlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuPC9kaXY+XG4iXX0=
99
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGV4dC1iYWNrZ3JvdW5kcy10aHJlZS1yb3dzLWljb24tdGV4dC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy93aXppLWJsb2NrL3NyYy9saWIvc3RydWN0dXJlcy90ZXh0LWJhY2tncm91bmRzL3RocmVlLXJvd3MtaWNvbi10ZXh0L3RleHQtYmFja2dyb3VuZHMtdGhyZWUtcm93cy1pY29uLXRleHQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvd2l6aS1ibG9jay9zcmMvbGliL3N0cnVjdHVyZXMvdGV4dC1iYWNrZ3JvdW5kcy90aHJlZS1yb3dzLWljb24tdGV4dC90ZXh0LWJhY2tncm91bmRzLXRocmVlLXJvd3MtaWNvbi10ZXh0LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQVUsTUFBTSxlQUFlLENBQUM7QUFFbEQsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDakUsT0FBTyxFQUFFLHVDQUF1QyxFQUFFLE1BQU0seUZBQXlGLENBQUM7QUFDbEosT0FBTyxFQUNILGNBQWMsRUFDZCxjQUFjLEVBQ2QscUJBQXFCLEVBQ3JCLHFCQUFxQixFQUNyQixtQkFBbUIsRUFDbkIsZUFBZSxFQUNmLHFCQUFxQixFQUNyQixzQkFBc0IsR0FDekIsTUFBTSwrQkFBK0IsQ0FBQztBQUN2QyxPQUFPLEVBQUUsOEJBQThCLEVBQUUsTUFBTSwyRUFBMkUsQ0FBQztBQUMzSCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sb0RBQW9ELENBQUM7QUFFbkYsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0saURBQWlELENBQUM7Ozs7Ozs7Ozs7Ozs7O0FBTXhGLE1BQU0sT0FBTyx5Q0FBMEMsU0FBUSxtQkFBbUM7SUFLOUYsWUFBb0IscUJBQTRDO1FBQzVELEtBQUssRUFBRSxDQUFDO1FBRFEsMEJBQXFCLEdBQXJCLHFCQUFxQixDQUF1QjtRQUpoRSxRQUFHLEdBQUcsQ0FBQyxDQUFDO1FBQ1IsV0FBTSxHQUFHLENBQUMsQ0FBQztRQUNYLFVBQUssR0FBRyxFQUFFLEtBQUssRUFBRSxTQUFTLEVBQUUsTUFBTSxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsU0FBUyxFQUFFLENBQUM7UUFJOUQsSUFBSSxDQUFDLG1CQUFtQixDQUFDLHVDQUF1QyxDQUFDLENBQUM7SUFDdEUsQ0FBQztJQUVELFFBQVE7UUFDSixLQUFLLENBQUMsUUFBUSxFQUFFLENBQUM7UUFDakIsSUFBSSxDQUFDLEdBQUcsR0FBRyxDQUFDLENBQUM7UUFDYixJQUFJLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQztRQUNoQixJQUFJLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQztRQUN4QixJQUFJLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxjQUFjLENBQUMsRUFBRTtZQUNwQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDO1lBQ2YsSUFBSSxDQUFDLFlBQVksQ0FBQyxjQUFjLENBQUMsR0FBRyxJQUFJLENBQUM7WUFDekMsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDO1NBQ2xCO0lBQ0wsQ0FBQztJQUVELE1BQU0sQ0FBQyxLQUFLO1FBQ1IsSUFBSSxDQUFDLFlBQVksQ0FBQyxjQUFjLENBQUMsQ0FBQyxJQUFJLENBQUMsSUFBSSxLQUFLLEVBQWtDLENBQUMsQ0FBQztRQUNwRixLQUFLLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEdBQUcsSUFBSSxDQUFDLFlBQVksQ0FBQyxxQkFBcUIsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxFQUFFO1lBQy9ELE1BQU0sVUFBVSxHQUFHLElBQUksOEJBQThCLEVBQUUsQ0FBQztZQUN4RCxJQUFJLENBQUMscUJBQXFCLENBQUMsbUJBQW1CLENBQUMsVUFBVSxDQUFDLENBQUM7WUFDM0QsSUFBSSxDQUFDLFlBQVksQ0FBQyxjQUFjLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUM7U0FDN0Q7UUFDRCxJQUFJLENBQUMsWUFBWSxDQUFDLHFCQUFxQixDQUFDLElBQUksQ0FBQyxDQUFDO1FBQzlDLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQztRQUNmLE9BQU8sQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxjQUFjLENBQUMsQ0FBQyxDQUFDO0lBQ25ELENBQUM7SUFFRCxTQUFTLENBQUMsQ0FBQztRQUNQLElBQUksQ0FBQyxZQUFZLENBQUMsY0FBYyxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQztRQUMvQyxJQUFJLENBQUMsWUFBWSxDQUFDLHFCQUFxQixDQUFDLElBQUksQ0FBQyxDQUFDO1FBQzlDLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQztJQUNuQixDQUFDO0lBRUQsZ0JBQWdCO1FBQ1osSUFBSSxDQUFDLEtBQUssQ0FBQyxTQUFTLENBQUMsQ0FBQyxLQUFLLEVBQUUsRUFBRTtZQUMzQixJQUFJLENBQUMsdUJBQXVCLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDeEMsQ0FBQyxDQUFDLENBQUM7SUFDUCxDQUFDO0lBRUQsa0JBQWtCLENBQUMsR0FBRyxFQUFFLE1BQU07UUFDMUIsSUFBSSxDQUFDLEdBQUcsR0FBRyxHQUFHLENBQUM7UUFDZixJQUFJLENBQUMsTUFBTSxHQUFHLE1BQU0sQ0FBQztRQUNyQixJQUFJLENBQUMsUUFBUSxFQUFFLENBQUM7SUFDcEIsQ0FBQztJQUVELGVBQWUsQ0FBQyxnQkFBcUMsRUFBRSxNQUFNO1FBQ3pELElBQ0ksZ0JBQWdCLENBQUMsbUJBQW1CLENBQUM7WUFDckMsSUFBSSxDQUFDLFlBQVksQ0FBQyxjQUFjLENBQUMsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDLGVBQWUsQ0FBQyxDQUFDLG1CQUFtQixDQUFDLEVBQ2hHO1lBQ0UsSUFBSSxDQUFDLFlBQVksQ0FBQyxjQUFjLENBQUMsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDLGVBQWUsQ0FBQyxDQUFDLHFCQUFxQixDQUFDO2dCQUM1RixnQkFBZ0IsQ0FBQyxxQkFBcUIsQ0FBQyxDQUFDO1lBQzVDLElBQUksQ0FBQyxZQUFZLENBQUMsY0FBYyxDQUFDLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQyxlQUFlLENBQUMsQ0FBQyxzQkFBc0IsQ0FBQztnQkFDN0YsZ0JBQWdCLENBQUMsc0JBQXNCLENBQUMsQ0FBQztZQUM3QyxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUM7U0FDbEI7SUFDTCxDQUFDO0lBRUQsV0FBVyxDQUFDLEdBQUcsRUFBRSxNQUFNO1FBQ25CLElBQUksQ0FBQyxHQUFHLEdBQUcsR0FBRyxDQUFDO1FBQ2YsSUFBSSxDQUFDLE1BQU0sR0FBRyxNQUFNLENBQUM7UUFDckIsSUFBSSxDQUFDLFFBQVEsRUFBRSxDQUFDO0lBQ3BCLENBQUM7SUFFRCx1QkFBdUIsQ0FBQyxLQUFLO1FBQ3pCLE1BQU0sYUFBYSxHQUFHLElBQUksYUFBYSxFQUFFLENBQUM7UUFDMUMsYUFBYSxDQUFDLFNBQVMsR0FBRyxLQUFLLENBQUMsU0FBUyxDQUFDO1FBQzFDLGFBQWEsQ0FBQyxFQUFFLEdBQUcsS0FBSyxDQUFDLEVBQUUsQ0FBQztRQUU1QixJQUFJLENBQUMsWUFBWSxDQUFDLGNBQWMsQ0FBQyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUMsS0FBSyxHQUFHLGFBQWEsQ0FBQztRQUUvRSxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUM7SUFDbkIsQ0FBQztJQUVELGVBQWUsQ0FBQyxNQUFNO1FBQ2xCLE1BQU0sQ0FBQyxlQUFlLEVBQUUsQ0FBQztJQUM3QixDQUFDOztzSUFuRlEseUNBQXlDOzBIQUF6Qyx5Q0FBeUMsdUdDdkJ0RCxzK01BcUhBOzJGRDlGYSx5Q0FBeUM7a0JBSnJELFNBQVM7K0JBQ0ksdUNBQXVDLENBQUMsUUFBUSxFQUFFIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEZhcUxpc3RJY29uRHRvIH0gZnJvbSAnLi4vLi4vLi4vZHRvcy9ibG9ja3MvZmFxL2ZhcS1saXN0LWljb24uZHRvJztcbmltcG9ydCB7IFN0cnVjdHVyZXNDb21wb25lbnQgfSBmcm9tICcuLi8uLi9zdHJ1Y3R1cmVzLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBUZXh0QmFja2dyb3VuZHNUaHJlZVJvd3NJY29uVGV4dFNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi9zZXJ2aWNlcy9ibG9ja3MvdGV4dC1iYWNrZ3JvdW5kcy90ZXh0LWJhY2tncm91bmRzLXRocmVlLXJvd3MtaWNvbi10ZXh0LnNlcnZpY2UnO1xuaW1wb3J0IHtcbiAgICBGT1JNX05BTUVfSU5JVCxcbiAgICBGT1JNX05BTUVfUk9XUyxcbiAgICBGT1JNX05BTUVfSVRFTV9OVU1CRVIsXG4gICAgRk9STV9OQU1FX0xJTkVfTlVNQkVSLFxuICAgIEZPUk1fTkFNRV9JTUFHRV9VUkwsXG4gICAgRk9STV9OQU1FX0lNQUdFLFxuICAgIEZPUk1fTkFNRV9JTUFHRV9XSURUSCxcbiAgICBGT1JNX05BTUVfSU1BR0VfSEVJR0hULFxufSBmcm9tICcuLi8uLi8uLi9kdG9zL2Zvcm1zL2Zvcm1zLmR0byc7XG5pbXBvcnQgeyBUZXh0QmFja2dyb3VuZHNSb3dzSWNvblRleHREdG8gfSBmcm9tICcuLi8uLi8uLi9kdG9zL2Jsb2Nrcy90ZXh0LWJhY2tncm91bmRzL3RleHQtYmFja2dyb3VuZHMtcm93cy1pY29uLXRleHQuZHRvJztcbmltcG9ydCB7IEltYWdlTWVkaWFEdG8gfSBmcm9tICcuLi8uLi8uLi9kdG9zL2NvbmZpZ3MvbWVkaWFzL2ltYWdlL2ltYWdlLW1lZGlhLmR0byc7XG5pbXBvcnQgeyBNZWRpYVdpZHRoSGVpZ2h0RHRvIH0gZnJvbSAnLi4vLi4vLi4vZHRvcy9jb25maWdzL21lZGlhcy9tZWRpYS13aWR0aC1oZWlnaHQuZHRvJztcbmltcG9ydCB7IFRyYW5zbGF0ZUJsb2NrU2VydmljZSB9IGZyb20gJy4uLy4uLy4uL3NlcnZpY2VzL3V0aWxzL3RyYW5zbGF0ZS1ibG9jay5zZXJ2aWNlJztcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6IFRleHRCYWNrZ3JvdW5kc1RocmVlUm93c0ljb25UZXh0U2VydmljZS5zZWxlY3RvcigpLFxuICAgIHRlbXBsYXRlVXJsOiAnLi90ZXh0LWJhY2tncm91bmRzLXRocmVlLXJvd3MtaWNvbi10ZXh0LmNvbXBvbmVudC5odG1sJyxcbn0pXG5leHBvcnQgY2xhc3MgVGV4dEJhY2tncm91bmRzVGhyZWVSb3dzSWNvblRleHRDb21wb25lbnQgZXh0ZW5kcyBTdHJ1Y3R1cmVzQ29tcG9uZW50PEZhcUxpc3RJY29uRHRvPiBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gICAgcm93ID0gMDtcbiAgICBjb2x1bW4gPSAwO1xuICAgIHNpemVzID0geyBzbWFsbDogJzYyMHgxNzUnLCBtZWRpdW06ICc2MjB4MjUwJywgbGFyZ2U6ICc2MjB4MzI1JyB9O1xuXG4gICAgY29uc3RydWN0b3IocHJpdmF0ZSB0cmFuc2xhdGVCbG9ja1NlcnZpY2U6IFRyYW5zbGF0ZUJsb2NrU2VydmljZSkge1xuICAgICAgICBzdXBlcigpO1xuICAgICAgICB0aGlzLnNldENvbXBvbmVudFNlcnZpY2UoVGV4dEJhY2tncm91bmRzVGhyZWVSb3dzSWNvblRleHRTZXJ2aWNlKTtcbiAgICB9XG5cbiAgICBuZ09uSW5pdCgpIHtcbiAgICAgICAgc3VwZXIubmdPbkluaXQoKTtcbiAgICAgICAgdGhpcy5yb3cgPSAwO1xuICAgICAgICB0aGlzLmNvbHVtbiA9IDA7XG4gICAgICAgIHRoaXMuc3Vic2NyaWJlVG9JbWFnZSgpO1xuICAgICAgICBpZiAoIXRoaXMuY29udGVudEJsb2NrW0ZPUk1fTkFNRV9JTklUXSkge1xuICAgICAgICAgICAgdGhpcy5hZGRSb3coMCk7XG4gICAgICAgICAgICB0aGlzLmNvbnRlbnRCbG9ja1tGT1JNX05BTUVfSU5JVF0gPSB0cnVlO1xuICAgICAgICAgICAgdGhpcy5wZXJzaXN0KCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBhZGRSb3coaW5kZXgpIHtcbiAgICAgICAgdGhpcy5jb250ZW50QmxvY2tbRk9STV9OQU1FX1JPV1NdLnB1c2gobmV3IEFycmF5PFRleHRCYWNrZ3JvdW5kc1Jvd3NJY29uVGV4dER0bz4oKSk7XG4gICAgICAgIGZvciAodmFyIGkgPSAwOyBpIDwgdGhpcy5jb250ZW50QmxvY2tbRk9STV9OQU1FX0lURU1fTlVNQkVSXTsgKytpKSB7XG4gICAgICAgICAgICBjb25zdCBuZXdFbGVtZW50ID0gbmV3IFRleHRCYWNrZ3JvdW5kc1Jvd3NJY29uVGV4dER0bygpO1xuICAgICAgICAgICAgdGhpcy50cmFuc2xhdGVCbG9ja1NlcnZpY2UudHJhbnNsYXRlUHJvcGVydGllcyhuZXdFbGVtZW50KTtcbiAgICAgICAgICAgIHRoaXMuY29udGVudEJsb2NrW0ZPUk1fTkFNRV9ST1dTXVtpbmRleF0ucHVzaChuZXdFbGVtZW50KTtcbiAgICAgICAgfVxuICAgICAgICB0aGlzLmNvbnRlbnRCbG9ja1tGT1JNX05BTUVfTElORV9OVU1CRVJdICs9IDE7XG4gICAgICAgIHRoaXMucGVyc2lzdCgpO1xuICAgICAgICBjb25zb2xlLmxvZyh0aGlzLmNvbnRlbnRCbG9ja1tGT1JNX05BTUVfUk9XU10pO1xuICAgIH1cblxuICAgIGRlbGV0ZVJvdyhpKSB7XG4gICAgICAgIHRoaXMuY29udGVudEJsb2NrW0ZPUk1fTkFNRV9ST1dTXS5zcGxpY2UoaSwgMSk7XG4gICAgICAgIHRoaXMuY29udGVudEJsb2NrW0ZPUk1fTkFNRV9MSU5FX05VTUJFUl0gLT0gMTtcbiAgICAgICAgdGhpcy5wZXJzaXN0KCk7XG4gICAgfVxuXG4gICAgc3Vic2NyaWJlVG9JbWFnZSgpIHtcbiAgICAgICAgdGhpcy5pbWFnZS5zdWJzY3JpYmUoKG1lZGlhKSA9PiB7XG4gICAgICAgICAgICB0aGlzLmFkZEJhY2tncm91bmRJbWFnZU1lZGlhKG1lZGlhKTtcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgb25DbGlja1VwZGF0ZUltYWdlKHJvdywgY29sdW1uKSB7XG4gICAgICAgIHRoaXMucm93ID0gcm93O1xuICAgICAgICB0aGlzLmNvbHVtbiA9IGNvbHVtbjtcbiAgICAgICAgdGhpcy5nZXRNZWRpYSgpO1xuICAgIH1cblxuICAgIHVwZGF0ZVRoaXNJbWFnZShpbWFnZVdpZHRoSGVpZ2h0OiBNZWRpYVdpZHRoSGVpZ2h0RHRvLCAkZXZlbnQpIHtcbiAgICAgICAgaWYgKFxuICAgICAgICAgICAgaW1hZ2VXaWR0aEhlaWdodFtGT1JNX05BTUVfSU1BR0VfVVJMXSA9PT1cbiAgICAgICAgICAgIHRoaXMuY29udGVudEJsb2NrW0ZPUk1fTkFNRV9ST1dTXVt0aGlzLnJvd11bdGhpcy5jb2x1bW5dW0ZPUk1fTkFNRV9JTUFHRV1bRk9STV9OQU1FX0lNQUdFX1VSTF1cbiAgICAgICAgKSB7XG4gICAgICAgICAgICB0aGlzLmNvbnRlbnRCbG9ja1tGT1JNX05BTUVfUk9XU11bdGhpcy5yb3ddW3RoaXMuY29sdW1uXVtGT1JNX05BTUVfSU1BR0VdW0ZPUk1fTkFNRV9JTUFHRV9XSURUSF0gPVxuICAgICAgICAgICAgICAgIGltYWdlV2lkdGhIZWlnaHRbRk9STV9OQU1FX0lNQUdFX1dJRFRIXTtcbiAgICAgICAgICAgIHRoaXMuY29udGVudEJsb2NrW0ZPUk1fTkFNRV9ST1dTXVt0aGlzLnJvd11bdGhpcy5jb2x1bW5dW0ZPUk1fTkFNRV9JTUFHRV1bRk9STV9OQU1FX0lNQUdFX0hFSUdIVF0gPVxuICAgICAgICAgICAgICAgIGltYWdlV2lkdGhIZWlnaHRbRk9STV9OQU1FX0lNQUdFX0hFSUdIVF07XG4gICAgICAgICAgICB0aGlzLnBlcnNpc3QoKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIGFkZE5ld0ltYWdlKHJvdywgY29sdW1uKSB7XG4gICAgICAgIHRoaXMucm93ID0gcm93O1xuICAgICAgICB0aGlzLmNvbHVtbiA9IGNvbHVtbjtcbiAgICAgICAgdGhpcy5nZXRNZWRpYSgpO1xuICAgIH1cblxuICAgIGFkZEJhY2tncm91bmRJbWFnZU1lZGlhKG1lZGlhKSB7XG4gICAgICAgIGNvbnN0IGltYWdlTWVkaWFEdG8gPSBuZXcgSW1hZ2VNZWRpYUR0bygpO1xuICAgICAgICBpbWFnZU1lZGlhRHRvLmltYWdlX3VybCA9IG1lZGlhLmltYWdlX3VybDtcbiAgICAgICAgaW1hZ2VNZWRpYUR0by5pZCA9IG1lZGlhLmlkO1xuXG4gICAgICAgIHRoaXMuY29udGVudEJsb2NrW0ZPUk1fTkFNRV9ST1dTXVt0aGlzLnJvd11bdGhpcy5jb2x1bW5dLmltYWdlID0gaW1hZ2VNZWRpYUR0bztcblxuICAgICAgICB0aGlzLnBlcnNpc3QoKTtcbiAgICB9XG5cbiAgICBzdG9wUHJvcGFnYXRpb24oJGV2ZW50KSB7XG4gICAgICAgICRldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcbiAgICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwid2ItdGV4dC1iYWNrZ3JvdW5kcy1yb3dzLWljb24tdGV4dCB3Yi10ZXh0LWJhY2tncm91bmRzLXJvd3MtaWNvbi10ZXh0LS10aHJlZVwiPlxuICAgIDxkaXYgY2xhc3M9XCJjb2x1bW5zIGlzLW11bHRpbGluZVwiICpuZ0Zvcj1cImxldCByb3cgb2YgY29udGVudHNbQkFTRV9CTE9DS19DT05URU5UXS5yb3dzOyBsZXQgaSA9IGluZGV4XCI+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJ3Yi10ZXh0LWJhY2tncm91bmRzLXJvd3MtaWNvbi10ZXh0X19kZWxldGUtbGluZVwiPlxuICAgICAgICAgICAgPGRpdlxuICAgICAgICAgICAgICAgIHdiU2hvd0RlbGV0ZUJ1dHRvblxuICAgICAgICAgICAgICAgICpuZ0lmPVwiY29udGVudHNbQkFTRV9CTE9DS19DT05URU5UXS5saW5lX251bWJlciA+IDFcIlxuICAgICAgICAgICAgICAgIGNsYXNzPVwid2ItdGV4dC1iYWNrZ3JvdW5kcy1yb3dzLWljb24tdGV4dF9fZGVsZXRlLWxpbmVfX2J1dHRvblwiXG4gICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgPGkgY2xhc3M9XCJmYXMgZmEtdHJhc2gtYWx0XCI+PC9pPlxuICAgICAgICAgICAgICAgIDxwPnt7ICd3Yi5zdHJ1Y3R1cmVzLnRlbXBsYXRlLjY0JyB8IHRyYW5zbGF0ZSB9fTwvcD5cbiAgICAgICAgICAgICAgICA8YnV0dG9uIChjbGljayk9XCJkZWxldGVSb3coaSlcIj57eyAnd2Iuc3RydWN0dXJlcy50ZW1wbGF0ZS42NScgfCB0cmFuc2xhdGUgfX08L2J1dHRvbj5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdGb3I9XCJsZXQgaXRlbSBvZiByb3c7IGxldCBqID0gaW5kZXhcIj5cbiAgICAgICAgICAgIDx3Yi1zdHJ1Y3R1cmUtY29uZmlnXG4gICAgICAgICAgICAgICAgW2Jsb2NrVVVJRF09XCJ1dWlkXCJcbiAgICAgICAgICAgICAgICBbcG9zaXRpb25dPVwiaiA9PT0gMCA/IFRZUEVfQ09ORklHX1BPU0lUSU9OX0xFRlRfVE9QIDogVFlQRV9DT05GSUdfUE9TSVRJT05fUklHSFRfVE9QXCJcbiAgICAgICAgICAgICAgICBbaXNGdWxsd2lkdGhdPVwidHJ1ZVwiXG4gICAgICAgICAgICAgICAgW2NsYXNzXT1cIml0ZW1bRk9STV9OQU1FX0lNQUdFXSA/ICcnIDogJ2hpZGRlbidcIlxuICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJpdGVtW0ZPUk1fTkFNRV9JTUFHRV1cIj5cbiAgICAgICAgICAgICAgICAgICAgPHdiLXN0cnVjdHVyZS1jb25maWctaW5wdXRcbiAgICAgICAgICAgICAgICAgICAgICAgIFtsYWJlbF09XCInd2Iuc3RydWN0dXJlcy50ZW1wbGF0ZS45JyB8IHRyYW5zbGF0ZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICBbKG5nTW9kZWwpXT1cIml0ZW1bRk9STV9OQU1FX0lNQUdFXVtGT1JNX05BTUVfVElUTEVdXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIChuZ01vZGVsQ2hhbmdlKT1cInBlcnNpc3QoKVwiXG4gICAgICAgICAgICAgICAgICAgID48L3diLXN0cnVjdHVyZS1jb25maWctaW5wdXQ+XG4gICAgICAgICAgICAgICAgICAgIDx3Yi1zdHJ1Y3R1cmUtY29uZmlnLWlucHV0XG4gICAgICAgICAgICAgICAgICAgICAgICBbbGFiZWxdPVwiJ3diLnN0cnVjdHVyZXMudGVtcGxhdGUuMTAnIHwgdHJhbnNsYXRlXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIFsobmdNb2RlbCldPVwiaXRlbVtGT1JNX05BTUVfSU1BR0VdW0ZPUk1fTkFNRV9VUkxdXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtwbGFjZWhvbGRlcl09XCInd2Iuc3RydWN0dXJlcy50ZW1wbGF0ZS4xMScgfCB0cmFuc2xhdGVcIlxuICAgICAgICAgICAgICAgICAgICAgICAgKG5nTW9kZWxDaGFuZ2UpPVwicGVyc2lzdCgpXCJcbiAgICAgICAgICAgICAgICAgICAgPjwvd2Itc3RydWN0dXJlLWNvbmZpZy1pbnB1dD5cbiAgICAgICAgICAgICAgICAgICAgPHdiLXN0cnVjdHVyZS1jb25maWctY2hlY2tib3hcbiAgICAgICAgICAgICAgICAgICAgICAgIFtsYWJlbF09XCInd2Iuc3RydWN0dXJlcy50ZW1wbGF0ZS4xMicgfCB0cmFuc2xhdGVcIlxuICAgICAgICAgICAgICAgICAgICAgICAgWyhuZ01vZGVsKV09XCJpdGVtW0ZPUk1fTkFNRV9JTUFHRV1bRk9STV9OQU1FX1VSTF9UQVJHRVRdXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIChuZ01vZGVsQ2hhbmdlKT1cInBlcnNpc3QoKVwiXG4gICAgICAgICAgICAgICAgICAgICAgICBbb2ZmXT1cIidfc2VsZidcIlxuICAgICAgICAgICAgICAgICAgICAgICAgW29uXT1cIidfYmxhbmsnXCJcbiAgICAgICAgICAgICAgICAgICAgPjwvd2Itc3RydWN0dXJlLWNvbmZpZy1jaGVja2JveD5cbiAgICAgICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgICAgICAgIDwvd2Itc3RydWN0dXJlLWNvbmZpZz5cbiAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJjb2x1bW5cIiAqbmdGb3I9XCJsZXQgaXRlbSBvZiByb3c7IGxldCBqID0gaW5kZXhcIj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ3Yi10ZXh0LWJhY2tncm91bmRzLXJvd3MtaWNvbi10ZXh0X19pdGVtXCI+XG4gICAgICAgICAgICAgICAgPGRpdlxuICAgICAgICAgICAgICAgICAgICBjbGFzcz1cIndiLXRleHQtYmFja2dyb3VuZHMtcm93cy1pY29uLXRleHRfX2l0ZW1fX2NvbnRlbnRcIlxuICAgICAgICAgICAgICAgICAgICBbbmdDbGFzc109XCJ7XG4gICAgICAgICAgICAgICAgICAgICAgICAnd2ItdGV4dC1iYWNrZ3JvdW5kcy1yb3dzLWljb24tdGV4dF9faXRlbV9fY29udGVudC0tc21hbGwnOlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRlbnRzW0JBU0VfQkxPQ0tfQ09OVEVOVF1bRk9STV9OQU1FX0lNQUdFX01BU0tdID09PSBGT1JNX1RZUEVfSU1BR0VfTUFTS19TTUFMTCxcbiAgICAgICAgICAgICAgICAgICAgICAgICd3Yi10ZXh0LWJhY2tncm91bmRzLXJvd3MtaWNvbi10ZXh0X19pdGVtX19jb250ZW50LS1tZWRpdW0nOlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRlbnRzW0JBU0VfQkxPQ0tfQ09OVEVOVF1bRk9STV9OQU1FX0lNQUdFX01BU0tdID09PSBGT1JNX1RZUEVfSU1BR0VfTUFTS19NRURJVU0sXG4gICAgICAgICAgICAgICAgICAgICAgICAnd2ItdGV4dC1iYWNrZ3JvdW5kcy1yb3dzLWljb24tdGV4dF9faXRlbV9fY29udGVudC0tbGFyZ2UnOlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRlbnRzW0JBU0VfQkxPQ0tfQ09OVEVOVF1bRk9STV9OQU1FX0lNQUdFX01BU0tdID09PSBGT1JNX1RZUEVfSU1BR0VfTUFTS19MQVJHRVxuICAgICAgICAgICAgICAgICAgICB9XCJcbiAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgIDxkaXZcbiAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwid2ItdGV4dC1iYWNrZ3JvdW5kcy1yb3dzLWljb24tdGV4dF9faXRlbV9fY29udGVudF9fbm9pbWFnZXNcIlxuICAgICAgICAgICAgICAgICAgICAgICAgd2JQaWN0dXJlc1RlbXBsYXRlRGlyZWN0aXZlXG4gICAgICAgICAgICAgICAgICAgICAgICBbZGltZW5zaW9uc109XCJzaXplc1tjb250ZW50c1tCQVNFX0JMT0NLX0NPTlRFTlRdW0ZPUk1fTkFNRV9JTUFHRV9NQVNLXV1cIlxuICAgICAgICAgICAgICAgICAgICAgICAgKm5nSWY9XCIhaXRlbVtGT1JNX05BTUVfSU1BR0VdXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIChjbGljayk9XCJhZGROZXdJbWFnZShpLCBqKVwiXG4gICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxwPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpIGNsYXNzPVwiZmFsIGZhLWltYWdlXCI+PC9pPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHt7ICd3Yi5zdHJ1Y3R1cmVzLnRlbXBsYXRlLjgnIHwgdHJhbnNsYXRlIH19XG4gICAgICAgICAgICAgICAgICAgICAgICA8L3A+XG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICA8ZGl2ICpuZ0lmPVwiaXRlbVtGT1JNX05BTUVfSU1BR0VdXCIgY2xhc3M9XCJ3Yi10ZXh0LWJhY2tncm91bmRzLXJvd3MtaWNvbi10ZXh0X19pdGVtX19jb250ZW50X19pbWFnZVwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdiR2V0U2l6ZUltYWdlRGlyZWN0aXZlXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgW3VybFRvUGFyc2VdPVwiaXRlbVtGT1JNX05BTUVfSU1BR0VdW0ZPUk1fTkFNRV9JTUFHRV9VUkxdXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAob25VcGRhdGUpPVwidXBkYXRlVGhpc0ltYWdlKGl0ZW1bRk9STV9OQU1FX0lNQUdFXSwgJGV2ZW50KVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgW3N0eWxlLmJhY2tncm91bmQtaW1hZ2VdPVwiJ3VybCgnICsgaXRlbVtGT1JNX05BTUVfSU1BR0VdW0ZPUk1fTkFNRV9JTUFHRV9VUkxdICsgJyknXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAqbmdJZj1cIml0ZW1bRk9STV9OQU1FX0lNQUdFXVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJ3Yi10ZXh0LWJhY2tncm91bmRzLXJvd3MtaWNvbi10ZXh0X19pdGVtX19jb250ZW50X19pbWFnZV9fYmFja2dyb3VuZFwiXG4gICAgICAgICAgICAgICAgICAgICAgICA+PC9kaXY+XG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuXG4gICAgICAgICAgICAgICAgICAgIDxkaXZcbiAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwid2ItdGV4dC1iYWNrZ3JvdW5kcy1yb3dzLWljb24tdGV4dF9faXRlbV9fY29udGVudF9fd3JhcHBlclwiXG4gICAgICAgICAgICAgICAgICAgICAgICAqbmdJZj1cIml0ZW1bRk9STV9OQU1FX0lNQUdFXVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAoY2xpY2spPVwib25DbGlja1VwZGF0ZUltYWdlKGksIGopXCJcbiAgICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiAoY2xpY2spPVwic3RvcFByb3BhZ2F0aW9uKCRldmVudClcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8d2Itc3RydWN0dXJlLWNvbmZpZy1mb250XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFsodmFsdWUpXT1cIml0ZW1bRk9STV9OQU1FX0lDT05dXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2NvbG9yXT1cImNvbnRlbnRzW0JBU0VfQkxPQ0tfQ09OVEVOVF1bRk9STV9OQU1FX0lDT05fQ09MT1JdXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKHZhbHVlQ2hhbmdlKT1cIml0ZW1bRk9STV9OQU1FX0lDT05dID0gJGV2ZW50OyBwZXJzaXN0KClcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgID48L3diLXN0cnVjdHVyZS1jb25maWctZm9udD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwid2ItdGV4dC1iYWNrZ3JvdW5kcy1yb3dzLWljb24tdGV4dF9faXRlbV9fY29udGVudF9fdGl0bGVcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHd6LWVkaXRvclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgWyhuZ01vZGVsKV09XCJpdGVtW0ZPUk1fTkFNRV9USVRMRV1cIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKG5nTW9kZWxDaGFuZ2UpPVwicGVyc2lzdCgpXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtwbGFjZWhvbGRlcl09XCInd2Iuc2hhcmVkLmNvbXBvbmVudHMucXVpbGwuMScgfCB0cmFuc2xhdGVcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29udGFpbmVyU2VsZWN0b3I9XCIud2ItY29tcG9uZW50X19jb250YWluZXJcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvd3otZWRpdG9yPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuICAgIDxkaXYgY2xhc3M9XCJjb2x1bW5zXCIgKm5nSWY9XCJjb250ZW50c1tCQVNFX0JMT0NLX0NPTlRFTlRdLmxpbmVfbnVtYmVyIDwgOVwiPlxuICAgICAgICA8ZGl2IGNsYXNzPVwiY29sdW1uXCI+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwid2ItdGV4dC1iYWNrZ3JvdW5kcy1yb3dzLWljb24tdGV4dF9fYWRkXCI+XG4gICAgICAgICAgICAgICAgPGEgKGNsaWNrKT1cImFkZFJvdyhjb250ZW50c1tCQVNFX0JMT0NLX0NPTlRFTlRdLmxpbmVfbnVtYmVyKVwiPlxuICAgICAgICAgICAgICAgICAgICA8aSBjbGFzcz1cImZhbCBmYS1wbHVzLWNpcmNsZVwiPjwvaT5cbiAgICAgICAgICAgICAgICAgICAgPHA+XG4gICAgICAgICAgICAgICAgICAgICAgICB7eyAnd2Iuc3RydWN0dXJlcy50ZW1wbGF0ZS42MycgfCB0cmFuc2xhdGUgfX1cbiAgICAgICAgICAgICAgICAgICAgPC9wPlxuICAgICAgICAgICAgICAgIDwvYT5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbjwvZGl2PlxuIl19