simpo-component-library 3.6.843 → 3.6.845
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +24 -24
- package/esm2022/lib/components/delete-hover-element/delete-hover-element.component.mjs +3 -3
- package/esm2022/lib/components/document/document.component.mjs +3 -3
- package/esm2022/lib/components/hover-elements/hover-elements.component.mjs +6 -17
- package/esm2022/lib/components/image-loading/image-loading.component.mjs +3 -3
- package/esm2022/lib/components/payment-details/payment-details.component.mjs +3 -3
- package/esm2022/lib/constants/business.constant.mjs +1 -1
- package/esm2022/lib/directive/alignment.directive.mjs +1 -1
- package/esm2022/lib/directive/background-directive.mjs +101 -136
- package/esm2022/lib/directive/blur-content.directive.mjs +1 -1
- package/esm2022/lib/directive/borderlessImage.directive.mjs +1 -1
- package/esm2022/lib/directive/button-editor.directive.mjs +1 -1
- package/esm2022/lib/directive/color.directive.mjs +1 -1
- package/esm2022/lib/directive/column-directive.directive.mjs +1 -1
- package/esm2022/lib/directive/container-alignment.directive.mjs +1 -1
- package/esm2022/lib/directive/container-fir.directive.mjs +1 -1
- package/esm2022/lib/directive/content-title-spacing.directive.mjs +1 -1
- package/esm2022/lib/directive/contenteditable.directive.mjs +83 -0
- package/esm2022/lib/directive/corner-directive.mjs +1 -1
- package/esm2022/lib/directive/height.directive.mjs +1 -1
- package/esm2022/lib/directive/hover-animation.directive.mjs +1 -1
- package/esm2022/lib/directive/hoverborder.directive.mjs +1 -1
- package/esm2022/lib/directive/icon-directive.directive.mjs +1 -1
- package/esm2022/lib/directive/image-container.directive.mjs +1 -1
- package/esm2022/lib/directive/letters-only.directive.mjs +1 -1
- package/esm2022/lib/directive/numbers-only.directive.mjs +1 -1
- package/esm2022/lib/directive/position-layout-directive.directive.mjs +1 -1
- package/esm2022/lib/directive/set-dynamic-background.directive.mjs +1 -1
- package/esm2022/lib/directive/spacing-horizontal.directive.mjs +1 -1
- package/esm2022/lib/directive/spacing.directive.mjs +1 -1
- package/esm2022/lib/directive/text-background-directive.directive.mjs +1 -1
- package/esm2022/lib/directive/text-size.directive.mjs +1 -1
- package/esm2022/lib/directive/translate-onhover.directive.mjs +1 -1
- package/esm2022/lib/directive/wrap-containers.directive.mjs +1 -1
- package/esm2022/lib/ecommerce/sections/address/address.component.mjs +1 -1
- package/esm2022/lib/ecommerce/sections/authenticate-user/authenticate-user.component.mjs +3 -3
- package/esm2022/lib/ecommerce/sections/authentication-required/authentication-required.component.mjs +6 -3
- package/esm2022/lib/ecommerce/sections/book-appointment/book-appointment.component.mjs +6 -6
- package/esm2022/lib/ecommerce/sections/cart/cart.component.mjs +4 -1
- package/esm2022/lib/ecommerce/sections/checkout/checkout.component.mjs +3 -3
- package/esm2022/lib/ecommerce/sections/checkout/checkout.modal.mjs +1 -1
- package/esm2022/lib/ecommerce/sections/customer-review/customer-review.component.mjs +3 -3
- package/esm2022/lib/ecommerce/sections/customer-review/customer-review.model.mjs +1 -1
- package/esm2022/lib/ecommerce/sections/enrollment-form/enrollment-form.component.mjs +3 -3
- package/esm2022/lib/ecommerce/sections/enrollment-form/enrollment-form.model.mjs +1 -1
- package/esm2022/lib/ecommerce/sections/item-varient/item-varient.component.mjs +3 -3
- package/esm2022/lib/ecommerce/sections/new-collection/new-collection.component.mjs +3 -3
- package/esm2022/lib/ecommerce/sections/new-collection/new-collection.modal.mjs +1 -1
- package/esm2022/lib/ecommerce/sections/pagnination/pagnination.component.mjs +3 -3
- package/esm2022/lib/ecommerce/sections/passbook-transactions/passbook-transactions.component.mjs +3 -3
- package/esm2022/lib/ecommerce/sections/product-category-list/product-category-list.component.mjs +3 -3
- package/esm2022/lib/ecommerce/sections/product-category-list/product-category-list.model.mjs +1 -1
- package/esm2022/lib/ecommerce/sections/product-desc/product-desc.component.mjs +4 -3
- package/esm2022/lib/ecommerce/sections/product-list/product-list.modal.mjs +1 -1
- package/esm2022/lib/ecommerce/sections/returns-calculator/returns-calculator.component.mjs +3 -3
- package/esm2022/lib/ecommerce/sections/returns-calculator/returns-calculator.model.mjs +1 -1
- package/esm2022/lib/ecommerce/sections/scheme-details/scheme-details.component.mjs +3 -3
- package/esm2022/lib/ecommerce/sections/scheme-selection/scheme-selection.component.mjs +3 -3
- package/esm2022/lib/ecommerce/sections/schemes/schemes.component.mjs +3 -3
- package/esm2022/lib/ecommerce/sections/schemes/schemes.component.model.mjs +1 -1
- package/esm2022/lib/ecommerce/sections/store-list/store-list.component.mjs +3 -3
- package/esm2022/lib/ecommerce/sections/store-list/store-list.modal.mjs +1 -1
- package/esm2022/lib/ecommerce/sections/store-page/store-page.component.mjs +3 -3
- package/esm2022/lib/ecommerce/sections/store-page/store-page.model.mjs +1 -1
- package/esm2022/lib/ecommerce/sections/user-basic-info/user-basic-info.component.mjs +3 -3
- package/esm2022/lib/ecommerce/sections/user-profile/user-profile.modal.mjs +1 -1
- package/esm2022/lib/ecommerce/sections/verify-payment/verify-payment.component.mjs +3 -3
- package/esm2022/lib/ecommerce/sections/verify-payment/verify-payment.model.mjs +1 -1
- package/esm2022/lib/ecommerce/styles/BaseCollection.modal.mjs +1 -1
- package/esm2022/lib/ecommerce/styles/Collection.modal.mjs +1 -1
- package/esm2022/lib/ecommerce/styles/PincodeLocation.model.mjs +1 -1
- package/esm2022/lib/ecommerce/styles/PincodeLocationInter.model.mjs +1 -1
- package/esm2022/lib/ecommerce/styles/cart.modal.mjs +1 -1
- package/esm2022/lib/ecommerce/styles/category.modal.mjs +1 -1
- package/esm2022/lib/ecommerce/styles/order.modal.mjs +1 -1
- package/esm2022/lib/ecommerce/styles/review.modal.mjs +1 -1
- package/esm2022/lib/ecommerce/styles/user.modal.mjs +1 -1
- package/esm2022/lib/elements/address-list/address-list.component.mjs +3 -3
- package/esm2022/lib/elements/button/button.component.mjs +3 -3
- package/esm2022/lib/elements/button/button.model.mjs +1 -1
- package/esm2022/lib/elements/card-skeleton-loader/card-skeleton-loader.component.mjs +3 -3
- package/esm2022/lib/elements/editor-service.service.mjs +1 -1
- package/esm2022/lib/elements/heading-element/heading-element.component.mjs +3 -3
- package/esm2022/lib/elements/index.mjs +1 -1
- package/esm2022/lib/elements/list-home-appointment/list-home-appointment.component.mjs +3 -3
- package/esm2022/lib/elements/media-selector/media-selector.component.mjs +3 -3
- package/esm2022/lib/elements/portfolio/portfolio.component.mjs +3 -3
- package/esm2022/lib/elements/property/property.component.mjs +3 -3
- package/esm2022/lib/elements/svg-divider/svg-divider.component.mjs +3 -3
- package/esm2022/lib/elements/text/text.component.mjs +3 -3
- package/esm2022/lib/elements/text-editor/text-editor.component.mjs +504 -246
- package/esm2022/lib/pipes/amount.pipe.mjs +1 -1
- package/esm2022/lib/sections/add-new-section/add-new-section.component.mjs +3 -3
- package/esm2022/lib/sections/appointment-form/appointment-form.component.mjs +3 -3
- package/esm2022/lib/sections/appointment-form/appointment-form.model.mjs +1 -1
- package/esm2022/lib/sections/banner-carousel/banner-carousel.model.mjs +1 -1
- package/esm2022/lib/sections/banner-grid-section/banner-grid-section.component.mjs +3 -3
- package/esm2022/lib/sections/blog-list/blog-list.component.mjs +1 -1
- package/esm2022/lib/sections/blog-list/blog-list.model.mjs +1 -1
- package/esm2022/lib/sections/choose-us-section/choose-us-section.component.mjs +1 -1
- package/esm2022/lib/sections/choose-us-section/choose-us-section.model.mjs +1 -1
- package/esm2022/lib/sections/faq-section/faq-section.component.mjs +3 -3
- package/esm2022/lib/sections/faq-section/faq-section.modal.mjs +1 -1
- package/esm2022/lib/sections/features-section/features-section.model.mjs +1 -1
- package/esm2022/lib/sections/header-text/header-text.model.mjs +1 -1
- package/esm2022/lib/sections/image-carousel-section/image-carousel.model.mjs +1 -1
- package/esm2022/lib/sections/image-grid-section/image-grid-section.component.mjs +1 -1
- package/esm2022/lib/sections/image-section/image-section.component.mjs +1 -1
- package/esm2022/lib/sections/image-section/image-section.model.mjs +1 -1
- package/esm2022/lib/sections/location-section/location-section.component.mjs +3 -3
- package/esm2022/lib/sections/location-section/location-section.modal.mjs +1 -1
- package/esm2022/lib/sections/logo-showcase/logo-showcase.modal.mjs +1 -1
- package/esm2022/lib/sections/moving-text/moving-text.component.mjs +3 -3
- package/esm2022/lib/sections/moving-text/moving-text.modal.mjs +1 -1
- package/esm2022/lib/sections/new-services/new-services.component.mjs +3 -3
- package/esm2022/lib/sections/new-services/new-services.model.mjs +1 -1
- package/esm2022/lib/sections/new-testimonials/new-testimonials.model.mjs +1 -1
- package/esm2022/lib/sections/news-letter-component/news-letter-component.component.mjs +3 -3
- package/esm2022/lib/sections/news-letter-component/news-letter.modal.mjs +1 -1
- package/esm2022/lib/sections/pricing-section/pricing-section.modal.mjs +1 -1
- package/esm2022/lib/sections/process-modern/process-modern.component.mjs +3 -3
- package/esm2022/lib/sections/process-modern/process-modern.model.mjs +1 -1
- package/esm2022/lib/sections/process-section/process-section.component.mjs +3 -3
- package/esm2022/lib/sections/process-section/process-section.modal.mjs +1 -1
- package/esm2022/lib/sections/property-component/property-component.component.mjs +3 -3
- package/esm2022/lib/sections/property-component/property-component.modal.mjs +1 -1
- package/esm2022/lib/sections/property-list/property-list.component.mjs +3 -3
- package/esm2022/lib/sections/property-list/property-list.modal.mjs +1 -1
- package/esm2022/lib/sections/recent-blog-post-section/recent-blog-post-section.component.mjs +3 -3
- package/esm2022/lib/sections/recent-blog-post-section/recent-blog-post-section.model.mjs +1 -1
- package/esm2022/lib/sections/registration-form/registration-form.component.mjs +3 -3
- package/esm2022/lib/sections/registration-form/registrationForm.model.mjs +1 -1
- package/esm2022/lib/sections/scheme-detail/scheme-detail.component.mjs +3 -3
- package/esm2022/lib/sections/scheme-detail/scheme-detail.modal.mjs +1 -1
- package/esm2022/lib/sections/skeleton-loader-section/skeleton-loader-section.component.mjs +3 -3
- package/esm2022/lib/sections/team-member-section/team-member-section.component.mjs +3 -3
- package/esm2022/lib/sections/team-member-section/team-member-section.model.mjs +1 -1
- package/esm2022/lib/sections/testimonial-fullwidth/testimonial-fullwidth.model.mjs +1 -1
- package/esm2022/lib/sections/testimonial-section/testimonial-section.model.mjs +1 -1
- package/esm2022/lib/sections/testimonial-video/testimonial-video.component.mjs +3 -3
- package/esm2022/lib/sections/testimonial-video/testimonial-video.model.mjs +1 -1
- package/esm2022/lib/sections/text-section/text-section.model.mjs +1 -1
- package/esm2022/lib/sections/usp-video-section/usp-video-section.component.mjs +3 -3
- package/esm2022/lib/sections/usp-video-section/usp-video-section.model.mjs +1 -1
- package/esm2022/lib/sections/video-section/video-section.component.mjs +1 -1
- package/esm2022/lib/sections/video-section/video-section.model.mjs +1 -1
- package/esm2022/lib/sections/view-blog/view-blog.component.mjs +1 -1
- package/esm2022/lib/services/endUser.service.mjs +1 -1
- package/esm2022/lib/services/image-upload-service.service.mjs +1 -1
- package/esm2022/lib/services/rest.service.mjs +3 -3
- package/esm2022/public-api.mjs +1 -3
- package/fesm2022/simpo-component-library.mjs +838 -697
- package/fesm2022/simpo-component-library.mjs.map +1 -1
- package/lib/components/hover-elements/hover-elements.component.d.ts +0 -3
- package/lib/components/input-fields/input-fields.component.d.ts +1 -1
- package/lib/directive/background-directive.d.ts +11 -4
- package/lib/directive/contenteditable.directive.d.ts +22 -0
- package/lib/ecommerce/sections/authentication-required/authentication-required.component.d.ts +2 -1
- package/lib/ecommerce/sections/featured-category/featured-category.component.d.ts +1 -1
- package/lib/ecommerce/sections/featured-category/featured-collection.component.d.ts +1 -1
- package/lib/ecommerce/sections/new-collection/new-collection.component.d.ts +1 -1
- package/lib/ecommerce/sections/product-desc/product-desc.component.d.ts +1 -1
- package/lib/ecommerce/sections/schemes/schemes.component.d.ts +1 -1
- package/lib/elements/text-editor/text-editor.component.d.ts +49 -33
- package/lib/sections/banner-carousel/banner-carousel.component.d.ts +2 -2
- package/lib/sections/carousel-banner/carousel-banner.component.d.ts +1 -1
- package/lib/sections/image-grid-hotspot/image-grid-hotspot.component.d.ts +1 -1
- package/lib/sections/image-grid-section/image-grid-section.component.d.ts +1 -1
- package/lib/sections/image-section/image-section.component.d.ts +2 -2
- package/lib/sections/logo-showcase/logo-showcase.component.d.ts +1 -1
- package/lib/sections/new-testimonials/new-testimonials.component.d.ts +1 -1
- package/lib/sections/pricing-section/pricing-section.component.d.ts +1 -1
- package/package.json +1 -1
- package/public-api.d.ts +0 -2
- package/simpo-component-library-3.6.845.tgz +0 -0
- package/src/lib/styles/global-styles.css +1 -1
- package/esm2022/lib/sections/testimonial-masonry/testimonial-masonry.component.mjs +0 -110
- package/esm2022/lib/sections/testimonial-masonry/testimonial-masonry.model.mjs +0 -2
- package/esm2022/lib/styles/gradient-extension.mjs +0 -38
- package/esm2022/lib/styles/text-size.extension.mjs +0 -44
- package/lib/sections/testimonial-masonry/testimonial-masonry.component.d.ts +0 -30
- package/lib/sections/testimonial-masonry/testimonial-masonry.model.d.ts +0 -24
- package/lib/styles/gradient-extension.d.ts +0 -2
- package/lib/styles/text-size.extension.d.ts +0 -10
- package/simpo-component-library-3.6.843.tgz +0 -0
|
@@ -11,4 +11,4 @@ export var KEYBOARD_KEYS;
|
|
|
11
11
|
KEYBOARD_KEYS[KEYBOARD_KEYS["CHARACTER_A"] = 65] = "CHARACTER_A";
|
|
12
12
|
KEYBOARD_KEYS[KEYBOARD_KEYS["CHARACTER_Z"] = 97] = "CHARACTER_Z";
|
|
13
13
|
})(KEYBOARD_KEYS || (KEYBOARD_KEYS = {}));
|
|
14
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
14
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnVzaW5lc3MuY29uc3RhbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zaW1wby11aS9zcmMvbGliL2NvbnN0YW50cy9idXNpbmVzcy5jb25zdGFudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxNQUFNLENBQU4sSUFBWSxrQkFFWDtBQUZELFdBQVksa0JBQWtCO0lBQzFCLDBDQUFvQixDQUFBO0FBQ3hCLENBQUMsRUFGVyxrQkFBa0IsS0FBbEIsa0JBQWtCLFFBRTdCO0FBQ0QsTUFBTSxDQUFOLElBQVksYUFPWDtBQVBELFdBQVksYUFBYTtJQUNyQiwrQ0FBTyxDQUFBO0lBQ1AsMkRBQWEsQ0FBQTtJQUNiLG9EQUFVLENBQUE7SUFDViw0REFBYyxDQUFBO0lBQ2QsZ0VBQWdCLENBQUE7SUFDaEIsZ0VBQWdCLENBQUE7QUFDcEIsQ0FBQyxFQVBXLGFBQWEsS0FBYixhQUFhLFFBT3hCIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGVudW0gQlVTSU5FU1NfQ09OU1RBTlRTIHtcbiAgICBDVVJSRU5DWSA9IFwiJiM4Mzc3O1wiXG59XG5leHBvcnQgZW51bSBLRVlCT0FSRF9LRVlTIHtcbiAgICBUQUIgPSA5LFxuICAgIEJBQ0tTUEFDRSA9IDgsXG4gICAgU1BBQ0UgPSAzMixcbiAgICBDQVBTX0xPQ0sgPSAyMCxcbiAgICBDSEFSQUNURVJfQSA9IDY1LFxuICAgIENIQVJBQ1RFUl9aID0gOTdcbn0iXX0=
|
|
@@ -20,4 +20,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
|
|
|
20
20
|
type: Input,
|
|
21
21
|
args: ['simpoAlignment']
|
|
22
22
|
}] } });
|
|
23
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
23
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWxpZ25tZW50LmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3NpbXBvLXVpL3NyYy9saWIvZGlyZWN0aXZlL2FsaWdubWVudC5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBYyxLQUFLLEVBQXFCLE1BQU0sZUFBZSxDQUFDOztBQVVoRixNQUFNLE9BQU8sa0JBQWtCO0lBRzdCLFlBQW9CLEVBQWM7UUFBZCxPQUFFLEdBQUYsRUFBRSxDQUFZO0lBQUcsQ0FBQztJQUV0QyxXQUFXO1FBQ1QsSUFBSSxDQUFDLEVBQUUsQ0FBQyxhQUFhLENBQUMsS0FBSyxDQUFDLFdBQVcsQ0FBQyxZQUFZLEVBQUUsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDO0lBQ3hFLENBQUM7K0dBUFUsa0JBQWtCO21HQUFsQixrQkFBa0I7OzRGQUFsQixrQkFBa0I7a0JBSjlCLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLGtCQUFrQjtvQkFDNUIsVUFBVSxFQUFFLElBQUk7aUJBQ2pCOytFQUUwQixTQUFTO3NCQUFqQyxLQUFLO3VCQUFDLGdCQUFnQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERpcmVjdGl2ZSwgRWxlbWVudFJlZiwgSW5wdXQsIE9uQ2hhbmdlcywgT25Jbml0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBBbGlnbkNvbnRlbnQsIGFwcGx5U3BhY2luZyB9IGZyb20gJy4uL3N0eWxlcy9pbmRleCc7XG5pbXBvcnQgeyBTcGFjaW5nTW9kZWwgfSBmcm9tICcuLi9zdHlsZXMvc3R5bGUubW9kZWwnO1xuaW1wb3J0IHsgRXZlbnRzU2VydmljZSB9IGZyb20gJy4uL3NlcnZpY2VzL2V2ZW50cy5zZXJ2aWNlJztcbmltcG9ydCB7IEFMSUdOIH0gZnJvbSAnLi4vc3R5bGVzL3R5cGVzJztcblxuQERpcmVjdGl2ZSh7XG4gIHNlbGVjdG9yOiAnW3NpbXBvQWxpZ25tZW50XScsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG59KVxuZXhwb3J0IGNsYXNzIEFsaWdubWVudERpcmVjdGl2ZSBpbXBsZW1lbnRzIE9uQ2hhbmdlcyB7XG4gIEBJbnB1dCgnc2ltcG9BbGlnbm1lbnQnKSBhbGlnbm1lbnQ/OiBBTElHTjtcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGVsOiBFbGVtZW50UmVmKSB7fVxuXG4gIG5nT25DaGFuZ2VzKCk6IHZvaWQge1xuICAgIHRoaXMuZWwubmF0aXZlRWxlbWVudC5zdHlsZS5zZXRQcm9wZXJ0eSgndGV4dC1hbGlnbicsIHRoaXMuYWxpZ25tZW50KTtcbiAgfVxuXG59XG4iXX0=
|
|
@@ -7,97 +7,46 @@ export class BackgroundDirective {
|
|
|
7
7
|
this.el = el;
|
|
8
8
|
this.eventService = eventService;
|
|
9
9
|
this.scrollValue = 0;
|
|
10
|
-
|
|
10
|
+
// Ensure the host element is positioned so the absolute video fills it correctly
|
|
11
|
+
this.el.nativeElement.style.setProperty('position', 'relative');
|
|
11
12
|
if (this.eventEmmitter) {
|
|
12
13
|
this.eventEmmitter.unsubscribe();
|
|
13
14
|
}
|
|
14
15
|
this.eventEmmitter = this.eventService.backgroundImageChangeCheck.subscribe((res) => {
|
|
15
|
-
this.videoElementId = `simpo-bg-video-${this.el?.nativeElement?.id}`;
|
|
16
16
|
if (this.el.nativeElement.id === res.id || res.globalThemeChange) {
|
|
17
17
|
if (res.data?.showImage && this?.scrollValue == 0) {
|
|
18
|
-
if (
|
|
19
|
-
this.
|
|
20
|
-
const videoElement = document.createElement('video');
|
|
21
|
-
videoElement.id = this.videoElementId;
|
|
22
|
-
videoElement.src = this.simpoBackground.image;
|
|
23
|
-
videoElement.autoplay = true;
|
|
24
|
-
videoElement.loop = true;
|
|
25
|
-
videoElement.muted = true;
|
|
26
|
-
videoElement.playsInline = true;
|
|
27
|
-
// Style the video element
|
|
28
|
-
videoElement.style.position = 'absolute';
|
|
29
|
-
videoElement.style.right = '0';
|
|
30
|
-
videoElement.style.bottom = '0';
|
|
31
|
-
videoElement.style.minWidth = '100%';
|
|
32
|
-
videoElement.style.minHeight = '100%';
|
|
33
|
-
videoElement.style.width = '100%';
|
|
34
|
-
videoElement.style.height = '100%';
|
|
35
|
-
videoElement.style.zIndex = '-1';
|
|
36
|
-
videoElement.style.objectFit = 'cover';
|
|
37
|
-
this.el.nativeElement.appendChild(videoElement);
|
|
18
|
+
if (res.data?.image?.includes('.mp4')) {
|
|
19
|
+
this.applyVideo(res.data.image);
|
|
38
20
|
return;
|
|
39
21
|
}
|
|
40
|
-
|
|
41
|
-
|
|
22
|
+
// It's an image — remove any existing video
|
|
23
|
+
this.removeVideo();
|
|
42
24
|
this.el.nativeElement.style.setProperty('background-image', `url(${res.data.image})`);
|
|
43
25
|
this.el.nativeElement.style.setProperty('background-position', `${res.data.position?.x}% ${res.data.position?.y}%`);
|
|
44
26
|
this.el.nativeElement.style.setProperty('background-repeat', `no-repeat`);
|
|
45
27
|
this.el.nativeElement.style.setProperty('background-size', `cover`);
|
|
46
|
-
// this.el.nativeElement.style.setProperty('color', this.getTextColor(res.data?.color))
|
|
28
|
+
// this.el.nativeElement.style.setProperty('color', this.getTextColor(res.data?.color));
|
|
47
29
|
}
|
|
48
30
|
else {
|
|
49
|
-
|
|
50
|
-
this.el.nativeElement.removeChild(this.el.nativeElement.querySelector(`#${this.videoElementId}`));
|
|
31
|
+
this.removeVideo();
|
|
51
32
|
if (this.simpoBackground?.backgroundType === 'Gradient') {
|
|
52
33
|
const direction = GradientDirection[this.simpoBackground.backgroundGradientDirection || GradientDirection.DOWN];
|
|
53
|
-
const gradientColor = direction != GradientDirection.DOWN
|
|
54
|
-
`linear-gradient(${this.simpoBackground.color},${this.simpoBackground.secondaryColor})
|
|
34
|
+
const gradientColor = direction != GradientDirection.DOWN
|
|
35
|
+
? `linear-gradient(${direction},${this.simpoBackground.color},${this.simpoBackground.secondaryColor})`
|
|
36
|
+
: `linear-gradient(${this.simpoBackground.color},${this.simpoBackground.secondaryColor})`;
|
|
55
37
|
this.el.nativeElement.style.setProperty('background', gradientColor);
|
|
56
|
-
// this.el.nativeElement.style.setProperty('color', this.getTextColor(
|
|
38
|
+
// this.el.nativeElement.style.setProperty('color', this.getTextColor(this.simpoBackground.color));
|
|
57
39
|
return;
|
|
58
40
|
}
|
|
59
41
|
this.el.nativeElement.style.setProperty('background-color', res.data?.color);
|
|
60
|
-
this.el.nativeElement.style.setProperty('background-image',
|
|
42
|
+
this.el.nativeElement.style.setProperty('background-image', ``);
|
|
61
43
|
this.el.nativeElement.style.setProperty('background-size', 'cover');
|
|
62
44
|
this.el.nativeElement.style.setProperty('background-repeat', 'no-repeat');
|
|
63
45
|
this.el.nativeElement.style.setProperty('background-position', 'center');
|
|
64
|
-
// this.el.nativeElement.style.setProperty('color', this.getTextColor(res.data?.color))
|
|
46
|
+
// this.el.nativeElement.style.setProperty('color', this.getTextColor(res.data?.color));
|
|
47
|
+
// Apply animation backgrounds (only for non-image/non-video backgrounds)
|
|
48
|
+
this.applyAnimationBackground(this.simpoBackground?.backgroundAnimation);
|
|
65
49
|
}
|
|
66
|
-
if (this.simpoBackground?.backgroundAnimation === 'DANCING_DOTS') {
|
|
67
|
-
if (this.el.nativeElement.querySelector('video'))
|
|
68
|
-
this.el.nativeElement.removeChild(this.el.nativeElement.querySelector('video'));
|
|
69
|
-
this.el.nativeElement.style.setProperty('background-image', `url('https://d2yx15pncgmu63.cloudfront.net/prod-images/116026c1747122296408Artboard1.gif')`);
|
|
70
|
-
}
|
|
71
|
-
if (this.simpoBackground?.backgroundAnimation === 'SCATTERING_DOTS') {
|
|
72
|
-
if (this.el.nativeElement.querySelector('video'))
|
|
73
|
-
this.el.nativeElement.removeChild(this.el.nativeElement.querySelector('video'));
|
|
74
|
-
this.el.nativeElement.style.setProperty('background-image', `url('https://d2yx15pncgmu63.cloudfront.net/prod-images/287348c1747051540088WhatsAppVideo2025-05-12at5.19.11PM-ezgif.com-video-to-gif-converter (1).gif')`);
|
|
75
|
-
}
|
|
76
|
-
if (this.simpoBackground?.backgroundAnimation === 'WAVES') {
|
|
77
|
-
if (this.el.nativeElement.querySelector('video'))
|
|
78
|
-
this.el.nativeElement.removeChild(this.el.nativeElement.querySelector('video'));
|
|
79
|
-
this.el.nativeElement.style.setProperty('background-image', `url('https://d2yx15pncgmu63.cloudfront.net/prod-images/630753c17474032172396913997_Motion%20Graphics_Motion%20Graphic_3840x2160%20(1)%20(2).gif')`);
|
|
80
|
-
}
|
|
81
|
-
if (this.simpoBackground?.backgroundAnimation === 'ABSTRACT') {
|
|
82
|
-
if (this.el.nativeElement.querySelector('video'))
|
|
83
|
-
this.el.nativeElement.removeChild(this.el.nativeElement.querySelector('video'));
|
|
84
|
-
this.el.nativeElement.style.setProperty('background-image', `url('https://d2yx15pncgmu63.cloudfront.net/prod-images/577507c1747465636956Rotation%20gif.gif')`);
|
|
85
|
-
}
|
|
86
|
-
if (this.simpoBackground?.backgroundAnimation === 'DREW') {
|
|
87
|
-
if (this.el.nativeElement.querySelector('video'))
|
|
88
|
-
this.el.nativeElement.removeChild(this.el.nativeElement.querySelector('video'));
|
|
89
|
-
this.el.nativeElement.style.setProperty('background-image', `url('https://d2yx15pncgmu63.cloudfront.net/prod-images/721244c1747467698004animate.gif')`);
|
|
90
|
-
}
|
|
91
|
-
if (this.simpoBackground?.backgroundAnimation === 'DOTS') {
|
|
92
|
-
if (this.el.nativeElement.querySelector('video'))
|
|
93
|
-
this.el.nativeElement.removeChild(this.el.nativeElement.querySelector('video'));
|
|
94
|
-
this.el.nativeElement.style.setProperty('background-image', `url('https://d2yx15pncgmu63.cloudfront.net/prod-images/659134c1747467801242Dots%20(1).gif')`);
|
|
95
|
-
}
|
|
96
|
-
// if (this.simpoBackground?.backgroundAnimation) {
|
|
97
|
-
// this.el.nativeElement.style.setProperty('background-size', 'cover');
|
|
98
|
-
// this.el.nativeElement.style.setProperty('background-repeat', 'no-repeat');
|
|
99
|
-
// // this.el.nativeElement.style.setProperty('background-position', 'center');
|
|
100
|
-
// }
|
|
101
50
|
}
|
|
102
51
|
});
|
|
103
52
|
}
|
|
@@ -107,101 +56,117 @@ export class BackgroundDirective {
|
|
|
107
56
|
}
|
|
108
57
|
}
|
|
109
58
|
ngOnChanges(change) {
|
|
110
|
-
this.el.nativeElement.style.setProperty('
|
|
59
|
+
this.el.nativeElement.style.setProperty('position', 'relative');
|
|
60
|
+
// this.el.nativeElement.style.setProperty(
|
|
61
|
+
// 'color',
|
|
62
|
+
// this.getTextColor(this.simpoBackground?.color ? this.simpoBackground?.color : '#ffffff')
|
|
63
|
+
// );
|
|
111
64
|
if (this.simpoBackground?.showImage) {
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
//
|
|
118
|
-
|
|
119
|
-
// videoElement.muted = true;
|
|
120
|
-
// videoElement.playsInline = true;
|
|
121
|
-
// // Style the video element
|
|
122
|
-
// videoElement.style.position = 'absolute';
|
|
123
|
-
// videoElement.style.right = '0';
|
|
124
|
-
// videoElement.style.bottom = '0';
|
|
125
|
-
// videoElement.style.minWidth = '100%';
|
|
126
|
-
// videoElement.style.minHeight = '100%';
|
|
127
|
-
// videoElement.style.width = '100%';
|
|
128
|
-
// videoElement.style.height = '100%';
|
|
129
|
-
// videoElement.style.zIndex = '-1';
|
|
130
|
-
// videoElement.style.objectFit = 'cover';
|
|
131
|
-
// this.el.nativeElement.appendChild(videoElement);
|
|
132
|
-
// return;
|
|
133
|
-
// }
|
|
134
|
-
if (this.videoElementId && this.el.nativeElement.querySelector(`#${this.videoElementId}`))
|
|
135
|
-
this.el.nativeElement.removeChild(this.el.nativeElement.querySelector(`#${this.videoElementId}`));
|
|
65
|
+
if (this.simpoBackground?.image?.includes('.mp4')) {
|
|
66
|
+
// Handle video background
|
|
67
|
+
this.applyVideo(this.simpoBackground.image);
|
|
68
|
+
return;
|
|
69
|
+
}
|
|
70
|
+
// It's an image — remove any existing video
|
|
71
|
+
this.removeVideo();
|
|
136
72
|
this.el.nativeElement.style.setProperty('background-image', `url(${this.simpoBackground.image})`);
|
|
137
73
|
this.el.nativeElement.style.setProperty('background-position', `${this.simpoBackground.position?.x}% ${this.simpoBackground.position?.y}%`);
|
|
138
74
|
this.el.nativeElement.style.setProperty('background-repeat', `no-repeat`);
|
|
139
75
|
this.el.nativeElement.style.setProperty('background-size', `cover`);
|
|
140
|
-
// this.el.nativeElement.style.setProperty(
|
|
76
|
+
// this.el.nativeElement.style.setProperty(
|
|
77
|
+
// 'color',
|
|
78
|
+
// this.getTextColor(this.simpoBackground?.color ? this.simpoBackground?.color : '#ffffff')
|
|
79
|
+
// );
|
|
141
80
|
}
|
|
142
81
|
else {
|
|
143
|
-
|
|
144
|
-
this.el.nativeElement.removeChild(this.el.nativeElement.querySelector(`#${this.videoElementId}`));
|
|
82
|
+
this.removeVideo();
|
|
145
83
|
if (this.simpoBackground?.backgroundType === 'Gradient') {
|
|
146
84
|
const direction = GradientDirection[this.simpoBackground.backgroundGradientDirection || GradientDirection.DOWN];
|
|
147
|
-
const gradientColor = direction != GradientDirection.DOWN
|
|
148
|
-
`linear-gradient(${this.simpoBackground.color},${this.simpoBackground.secondaryColor})
|
|
85
|
+
const gradientColor = direction != GradientDirection.DOWN
|
|
86
|
+
? `linear-gradient(${direction},${this.simpoBackground.color},${this.simpoBackground.secondaryColor})`
|
|
87
|
+
: `linear-gradient(${this.simpoBackground.color},${this.simpoBackground.secondaryColor})`;
|
|
149
88
|
this.el.nativeElement.style.setProperty('background', gradientColor);
|
|
150
|
-
// this.el.nativeElement.style.setProperty('color', this.getTextColor(
|
|
89
|
+
// this.el.nativeElement.style.setProperty('color', this.getTextColor(this.simpoBackground.color));
|
|
151
90
|
return;
|
|
152
91
|
}
|
|
153
|
-
if (this.videoElementId && this.el.nativeElement.querySelector(`#${this.videoElementId}`))
|
|
154
|
-
this.el.nativeElement.removeChild(this.el.nativeElement.querySelector(`#${this.videoElementId}`));
|
|
155
92
|
this.el.nativeElement.style.setProperty('background-color', this.simpoBackground?.color);
|
|
156
93
|
this.el.nativeElement.style.setProperty('background-image', ``);
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
this.el.nativeElement.style.setProperty('background-image', `url('https://d2yx15pncgmu63.cloudfront.net/prod-images/116026c1747122296408Artboard1.gif')`);
|
|
161
|
-
}
|
|
162
|
-
if (this.simpoBackground?.backgroundAnimation === 'SCATTERING_DOTS') {
|
|
163
|
-
if (this.el.nativeElement.querySelector('video'))
|
|
164
|
-
this.el.nativeElement.removeChild(this.el.nativeElement.querySelector('video'));
|
|
165
|
-
this.el.nativeElement.style.setProperty('background-image', `url('https://d2yx15pncgmu63.cloudfront.net/prod-images/287348c1747051540088WhatsAppVideo2025-05-12at5.19.11PM-ezgif.com-video-to-gif-converter (1).gif')`);
|
|
166
|
-
}
|
|
167
|
-
if (this.simpoBackground?.backgroundAnimation === 'WAVES') {
|
|
168
|
-
if (this.el.nativeElement.querySelector('video'))
|
|
169
|
-
this.el.nativeElement.removeChild(this.el.nativeElement.querySelector('video'));
|
|
170
|
-
this.el.nativeElement.style.setProperty('background-image', `url('https://d2yx15pncgmu63.cloudfront.net/prod-images/630753c17474032172396913997_Motion%20Graphics_Motion%20Graphic_3840x2160%20(1)%20(2).gif')`);
|
|
171
|
-
}
|
|
172
|
-
if (this.simpoBackground?.backgroundAnimation === 'ABSTRACT') {
|
|
173
|
-
if (this.el.nativeElement.querySelector('video'))
|
|
174
|
-
this.el.nativeElement.removeChild(this.el.nativeElement.querySelector('video'));
|
|
175
|
-
this.el.nativeElement.style.setProperty('background-image', `url('https://d2yx15pncgmu63.cloudfront.net/prod-images/577507c1747465636956Rotation%20gif.gif')`);
|
|
176
|
-
}
|
|
177
|
-
if (this.simpoBackground?.backgroundAnimation === 'DREW') {
|
|
178
|
-
if (this.el.nativeElement.querySelector('video'))
|
|
179
|
-
this.el.nativeElement.removeChild(this.el.nativeElement.querySelector('video'));
|
|
180
|
-
this.el.nativeElement.style.setProperty('background-image', `url('https://d2yx15pncgmu63.cloudfront.net/prod-images/721244c1747467698004animate.gif')`);
|
|
181
|
-
}
|
|
182
|
-
if (this.simpoBackground?.backgroundAnimation === 'DOTS') {
|
|
183
|
-
if (this.el.nativeElement.querySelector('video'))
|
|
184
|
-
this.el.nativeElement.removeChild(this.el.nativeElement.querySelector('video'));
|
|
185
|
-
this.el.nativeElement.style.setProperty('background-image', `url('https://d2yx15pncgmu63.cloudfront.net/prod-images/659134c1747467801242Dots%20(1).gif')`);
|
|
186
|
-
}
|
|
187
|
-
if (this.simpoBackground?.backgroundAnimation) {
|
|
94
|
+
// Apply animation backgrounds (only for non-image/non-video backgrounds)
|
|
95
|
+
this.applyAnimationBackground(this.simpoBackground?.backgroundAnimation);
|
|
96
|
+
if (this.simpoBackground?.backgroundAnimation && this.simpoBackground?.backgroundAnimation !== 'NONE') {
|
|
188
97
|
this.el.nativeElement.style.setProperty('background-size', 'cover');
|
|
189
98
|
this.el.nativeElement.style.setProperty('background-repeat', 'no-repeat');
|
|
190
99
|
this.el.nativeElement.style.setProperty('background-position', 'center');
|
|
191
100
|
}
|
|
192
|
-
|
|
101
|
+
}
|
|
102
|
+
}
|
|
103
|
+
// ─── Helpers ────────────────────────────────────────────────────────────────
|
|
104
|
+
/** Returns the unique video element id for this host element */
|
|
105
|
+
get videoElementId() {
|
|
106
|
+
return `simpo-bg-video-${this.el?.nativeElement?.id}`;
|
|
107
|
+
}
|
|
108
|
+
/** Removes any existing background video element from the host */
|
|
109
|
+
removeVideo() {
|
|
110
|
+
const existing = this.el.nativeElement.querySelector(`#${this.videoElementId}`);
|
|
111
|
+
if (existing) {
|
|
112
|
+
existing.pause?.();
|
|
113
|
+
this.el.nativeElement.removeChild(existing);
|
|
114
|
+
}
|
|
115
|
+
}
|
|
116
|
+
/** Creates and appends a full-cover autoplay video as the background */
|
|
117
|
+
applyVideo(src) {
|
|
118
|
+
// Remove stale video first (prevents duplicates)
|
|
119
|
+
this.removeVideo();
|
|
120
|
+
// Clear any background-image that may still be set
|
|
121
|
+
this.el.nativeElement.style.setProperty('background-image', '');
|
|
122
|
+
this.el.nativeElement.style.setProperty('background-color', 'transparent');
|
|
123
|
+
const videoElement = document.createElement('video');
|
|
124
|
+
videoElement.id = this.videoElementId;
|
|
125
|
+
videoElement.src = src;
|
|
126
|
+
videoElement.autoplay = true;
|
|
127
|
+
videoElement.loop = true;
|
|
128
|
+
videoElement.muted = true;
|
|
129
|
+
videoElement.playsInline = true;
|
|
130
|
+
// Style so video fills the host container
|
|
131
|
+
videoElement.style.position = 'absolute';
|
|
132
|
+
videoElement.style.top = '0';
|
|
133
|
+
videoElement.style.left = '0';
|
|
134
|
+
videoElement.style.right = '0';
|
|
135
|
+
videoElement.style.bottom = '0';
|
|
136
|
+
videoElement.style.width = '100%';
|
|
137
|
+
videoElement.style.height = '100%';
|
|
138
|
+
videoElement.style.zIndex = '-1';
|
|
139
|
+
videoElement.style.objectFit = 'cover';
|
|
140
|
+
videoElement.style.pointerEvents = 'none';
|
|
141
|
+
this.el.nativeElement.appendChild(videoElement);
|
|
142
|
+
// Some browsers require an explicit play() call after autoplay attribute
|
|
143
|
+
videoElement.play().catch(() => { });
|
|
144
|
+
}
|
|
145
|
+
/** Sets a GIF animation as the background image */
|
|
146
|
+
applyAnimationBackground(animation) {
|
|
147
|
+
const animationMap = {
|
|
148
|
+
DANCING_DOTS: `url('https://d2yx15pncgmu63.cloudfront.net/prod-images/116026c1747122296408Artboard1.gif')`,
|
|
149
|
+
SCATTERING_DOTS: `url('https://d2yx15pncgmu63.cloudfront.net/prod-images/287348c1747051540088WhatsAppVideo2025-05-12at5.19.11PM-ezgif.com-video-to-gif-converter (1).gif')`,
|
|
150
|
+
WAVES: `url('https://d2yx15pncgmu63.cloudfront.net/prod-images/630753c17474032172396913997_Motion%20Graphics_Motion%20Graphic_3840x2160%20(1)%20(2).gif')`,
|
|
151
|
+
ABSTRACT: `url('https://d2yx15pncgmu63.cloudfront.net/prod-images/577507c1747465636956Rotation%20gif.gif')`,
|
|
152
|
+
DREW: `url('https://d2yx15pncgmu63.cloudfront.net/prod-images/721244c1747467698004animate.gif')`,
|
|
153
|
+
DOTS: `url('https://d2yx15pncgmu63.cloudfront.net/prod-images/659134c1747467801242Dots%20(1).gif')`,
|
|
154
|
+
};
|
|
155
|
+
if (animation && animationMap[animation]) {
|
|
156
|
+
this.el.nativeElement.style.setProperty('background-image', animationMap[animation]);
|
|
193
157
|
}
|
|
194
158
|
}
|
|
195
159
|
getTextColor(bgColor) {
|
|
196
|
-
if (bgColor) {
|
|
197
|
-
const threshold = 130;
|
|
160
|
+
if (bgColor && /^#[0-9A-Fa-f]{6}$/.test(bgColor)) {
|
|
161
|
+
const threshold = 130;
|
|
198
162
|
const r = parseInt(bgColor.slice(1, 3), 16);
|
|
199
163
|
const g = parseInt(bgColor.slice(3, 5), 16);
|
|
200
164
|
const b = parseInt(bgColor.slice(5, 7), 16);
|
|
201
165
|
const brightness = (r * 299 + g * 587 + b * 114) / 1000;
|
|
202
166
|
return brightness > threshold ? '#000000' : '#ffffff';
|
|
203
167
|
}
|
|
204
|
-
|
|
168
|
+
// For gradients, rgba(), or anything non-hex — default to white
|
|
169
|
+
return '#ffffff';
|
|
205
170
|
}
|
|
206
171
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: BackgroundDirective, deps: [{ token: i0.ElementRef }, { token: i1.EventsService }], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
207
172
|
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.13", type: BackgroundDirective, isStandalone: true, selector: "[simpoBackground]", inputs: { simpoBackground: "simpoBackground", scrollValue: "scrollValue" }, usesOnChanges: true, ngImport: i0 }); }
|
|
@@ -219,4 +184,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
|
|
|
219
184
|
type: Input,
|
|
220
185
|
args: ['scrollValue']
|
|
221
186
|
}] } });
|
|
222
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFja2dyb3VuZC1kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zaW1wby11aS9zcmMvbGliL2RpcmVjdGl2ZS9iYWNrZ3JvdW5kLWRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFjLEtBQUssRUFBNEIsTUFBTSxlQUFlLENBQUM7QUFJdkYsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0saUJBQWlCLENBQUM7OztBQU1wRCxNQUFNLE9BQU8sbUJBQW1CO0lBTTlCLFlBQ1UsRUFBYyxFQUNkLFlBQTJCO1FBRDNCLE9BQUUsR0FBRixFQUFFLENBQVk7UUFDZCxpQkFBWSxHQUFaLFlBQVksQ0FBZTtRQU5mLGdCQUFXLEdBQVksQ0FBQyxDQUFDO1FBRy9DLG1CQUFjLEdBQUcsRUFBRSxDQUFBO1FBSWpCLElBQUksSUFBSSxDQUFDLGFBQWEsRUFBRSxDQUFDO1lBQ3ZCLElBQUksQ0FBQyxhQUFhLENBQUMsV0FBVyxFQUFFLENBQUE7UUFDbEMsQ0FBQztRQUNELElBQUksQ0FBQyxhQUFhLEdBQUcsSUFBSSxDQUFDLFlBQVksQ0FBQywwQkFBMEIsQ0FBQyxTQUFTLENBQ3pFLENBQUMsR0FBUSxFQUFFLEVBQUU7WUFDWCxJQUFJLENBQUMsY0FBYyxHQUFHLGtCQUFrQixJQUFJLENBQUMsRUFBRSxFQUFFLGFBQWEsRUFBRSxFQUFFLEVBQUUsQ0FBQztZQUNyRSxJQUFJLElBQUksQ0FBQyxFQUFFLENBQUMsYUFBYSxDQUFDLEVBQUUsS0FBSyxHQUFHLENBQUMsRUFBRSxJQUFJLEdBQUcsQ0FBQyxpQkFBaUIsRUFBRSxDQUFDO2dCQUNqRSxJQUFJLEdBQUcsQ0FBQyxJQUFJLEVBQUUsU0FBUyxJQUFJLElBQUksRUFBRSxXQUFXLElBQUksQ0FBQyxFQUFFLENBQUM7b0JBQ2xELElBQUksSUFBSSxDQUFDLGVBQWUsRUFBRSxLQUFLLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUM7d0JBQ2pELElBQUksQ0FBQyxFQUFFLENBQUMsYUFBYSxDQUFDLEtBQUssQ0FBQyxXQUFXLENBQUMsa0JBQWtCLEVBQUUsRUFBRSxDQUFDLENBQUM7d0JBQ2hFLE1BQU0sWUFBWSxHQUFHLFFBQVEsQ0FBQyxhQUFhLENBQUMsT0FBTyxDQUFDLENBQUM7d0JBQ3JELFlBQVksQ0FBQyxFQUFFLEdBQUcsSUFBSSxDQUFDLGNBQWMsQ0FBQzt3QkFDdEMsWUFBWSxDQUFDLEdBQUcsR0FBRyxJQUFJLENBQUMsZUFBZSxDQUFDLEtBQUssQ0FBQzt3QkFDOUMsWUFBWSxDQUFDLFFBQVEsR0FBRyxJQUFJLENBQUM7d0JBQzdCLFlBQVksQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDO3dCQUN6QixZQUFZLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQzt3QkFDMUIsWUFBWSxDQUFDLFdBQVcsR0FBRyxJQUFJLENBQUM7d0JBQ2hDLDBCQUEwQjt3QkFDMUIsWUFBWSxDQUFDLEtBQUssQ0FBQyxRQUFRLEdBQUcsVUFBVSxDQUFDO3dCQUN6QyxZQUFZLENBQUMsS0FBSyxDQUFDLEtBQUssR0FBRyxHQUFHLENBQUM7d0JBQy9CLFlBQVksQ0FBQyxLQUFLLENBQUMsTUFBTSxHQUFHLEdBQUcsQ0FBQzt3QkFDaEMsWUFBWSxDQUFDLEtBQUssQ0FBQyxRQUFRLEdBQUcsTUFBTSxDQUFDO3dCQUNyQyxZQUFZLENBQUMsS0FBSyxDQUFDLFNBQVMsR0FBRyxNQUFNLENBQUM7d0JBQ3RDLFlBQVksQ0FBQyxLQUFLLENBQUMsS0FBSyxHQUFHLE1BQU0sQ0FBQzt3QkFDbEMsWUFBWSxDQUFDLEtBQUssQ0FBQyxNQUFNLEdBQUcsTUFBTSxDQUFDO3dCQUNuQyxZQUFZLENBQUMsS0FBSyxDQUFDLE1BQU0sR0FBRyxJQUFJLENBQUM7d0JBQ2pDLFlBQVksQ0FBQyxLQUFLLENBQUMsU0FBUyxHQUFHLE9BQU8sQ0FBQzt3QkFDdkMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxhQUFhLENBQUMsV0FBVyxDQUFDLFlBQVksQ0FBQyxDQUFDO3dCQUNoRCxPQUFPO29CQUNULENBQUM7b0JBQ0QsSUFBSSxJQUFJLENBQUMsY0FBYyxJQUFJLElBQUksQ0FBQyxFQUFFLENBQUMsYUFBYSxDQUFDLGFBQWEsQ0FBQyxJQUFJLElBQUksQ0FBQyxjQUFjLEVBQUUsQ0FBQzt3QkFDdkYsSUFBSSxDQUFDLEVBQUUsQ0FBQyxhQUFhLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsYUFBYSxDQUFDLGFBQWEsQ0FBQyxJQUFJLElBQUksQ0FBQyxjQUFjLEVBQUUsQ0FBQyxDQUFDLENBQUM7b0JBQ3BHLElBQUksQ0FBQyxFQUFFLENBQUMsYUFBYSxDQUFDLEtBQUssQ0FBQyxXQUFXLENBQ3JDLGtCQUFrQixFQUNsQixPQUFPLEdBQUcsQ0FBQyxJQUFJLENBQUMsS0FBSyxHQUFHLENBQ3pCLENBQUM7b0JBQ0YsSUFBSSxDQUFDLEVBQUUsQ0FBQyxhQUFhLENBQUMsS0FBSyxDQUFDLFdBQVcsQ0FDckMscUJBQXFCLEVBQ3JCLEdBQUcsR0FBRyxDQUFDLElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQyxLQUFLLEdBQUcsQ0FBQyxJQUFJLENBQUMsUUFBUSxFQUFFLENBQUMsR0FBRyxDQUNwRCxDQUFDO29CQUNGLElBQUksQ0FBQyxFQUFFLENBQUMsYUFBYSxDQUFDLEtBQUssQ0FBQyxXQUFXLENBQUMsbUJBQW1CLEVBQUUsV0FBVyxDQUFDLENBQUM7b0JBQzFFLElBQUksQ0FBQyxFQUFFLENBQUMsYUFBYSxDQUFDLEtBQUssQ0FBQyxXQUFXLENBQUMsaUJBQWlCLEVBQUUsT0FBTyxDQUFDLENBQUM7b0JBQ3BFLHVGQUF1RjtnQkFDekYsQ0FBQztxQkFBTSxDQUFDO29CQUNOLElBQUksSUFBSSxDQUFDLGNBQWMsSUFBSSxJQUFJLENBQUMsRUFBRSxDQUFDLGFBQWEsQ0FBQyxhQUFhLENBQUMsSUFBSSxJQUFJLENBQUMsY0FBYyxFQUFFLENBQUM7d0JBQ3ZGLElBQUksQ0FBQyxFQUFFLENBQUMsYUFBYSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLGFBQWEsQ0FBQyxhQUFhLENBQUMsSUFBSSxJQUFJLENBQUMsY0FBYyxFQUFFLENBQUMsQ0FBQyxDQUFDO29CQUNwRyxJQUFJLElBQUksQ0FBQyxlQUFlLEVBQUUsY0FBYyxLQUFNLFVBQThCLEVBQUUsQ0FBQzt3QkFDN0UsTUFBTSxTQUFTLEdBQUcsaUJBQWlCLENBQUMsSUFBSSxDQUFDLGVBQWUsQ0FBQywyQkFBd0UsSUFBSSxpQkFBaUIsQ0FBQyxJQUFJLENBQUMsQ0FBQzt3QkFDN0osTUFBTSxhQUFhLEdBQUcsU0FBUyxJQUFJLGlCQUFpQixDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsbUJBQW1CLFNBQVMsSUFBSSxJQUFJLENBQUMsZUFBZSxDQUFDLEtBQUssSUFBSSxJQUFJLENBQUMsZUFBZSxDQUFDLGNBQWMsR0FBRyxDQUFDLENBQUM7NEJBQ2hLLG1CQUFtQixJQUFJLENBQUMsZUFBZSxDQUFDLEtBQUssSUFBSSxJQUFJLENBQUMsZUFBZSxDQUFDLGNBQWMsR0FBRyxDQUFDO3dCQUMxRixJQUFJLENBQUMsRUFBRSxDQUFDLGFBQWEsQ0FBQyxLQUFLLENBQUMsV0FBVyxDQUNyQyxZQUFZLEVBQ1osYUFBYSxDQUNkLENBQUM7d0JBQ0YscUZBQXFGO3dCQUVyRixPQUFPO29CQUNULENBQUM7b0JBRUQsSUFBSSxDQUFDLEVBQUUsQ0FBQyxhQUFhLENBQUMsS0FBSyxDQUFDLFdBQVcsQ0FDckMsa0JBQWtCLEVBQ2xCLEdBQUcsQ0FBQyxJQUFJLEVBQUUsS0FBSyxDQUNoQixDQUFDO29CQUNGLElBQUksQ0FBQyxFQUFFLENBQUMsYUFBYSxDQUFDLEtBQUssQ0FBQyxXQUFXLENBQ3JDLGtCQUFrQixFQUNsQixTQUFTLENBQ1YsQ0FBQztvQkFDRixJQUFJLENBQUMsRUFBRSxDQUFDLGFBQWEsQ0FBQyxLQUFLLENBQUMsV0FBVyxDQUFDLGlCQUFpQixFQUFFLE9BQU8sQ0FBQyxDQUFDO29CQUNwRSxJQUFJLENBQUMsRUFBRSxDQUFDLGFBQWEsQ0FBQyxLQUFLLENBQUMsV0FBVyxDQUFDLG1CQUFtQixFQUFFLFdBQVcsQ0FBQyxDQUFDO29CQUMxRSxJQUFJLENBQUMsRUFBRSxDQUFDLGFBQWEsQ0FBQyxLQUFLLENBQUMsV0FBVyxDQUFDLHFCQUFxQixFQUFFLFFBQVEsQ0FBQyxDQUFDO29CQUN6RSx1RkFBdUY7Z0JBQ3pGLENBQUM7Z0JBQ0QsSUFBSSxJQUFJLENBQUMsZUFBZSxFQUFFLG1CQUFtQixLQUFLLGNBQWMsRUFBRSxDQUFDO29CQUNqRSxJQUFJLElBQUksQ0FBQyxFQUFFLENBQUMsYUFBYSxDQUFDLGFBQWEsQ0FBQyxPQUFPLENBQUM7d0JBQzlDLElBQUksQ0FBQyxFQUFFLENBQUMsYUFBYSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLGFBQWEsQ0FBQyxhQUFhLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQztvQkFDbEYsSUFBSSxDQUFDLEVBQUUsQ0FBQyxhQUFhLENBQUMsS0FBSyxDQUFDLFdBQVcsQ0FDckMsa0JBQWtCLEVBQ2xCLDRGQUE0RixDQUM3RixDQUFDO2dCQUNKLENBQUM7Z0JBQ0QsSUFBSSxJQUFJLENBQUMsZUFBZSxFQUFFLG1CQUFtQixLQUFLLGlCQUFpQixFQUFFLENBQUM7b0JBQ3BFLElBQUksSUFBSSxDQUFDLEVBQUUsQ0FBQyxhQUFhLENBQUMsYUFBYSxDQUFDLE9BQU8sQ0FBQzt3QkFDOUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxhQUFhLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsYUFBYSxDQUFDLGFBQWEsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDO29CQUNsRixJQUFJLENBQUMsRUFBRSxDQUFDLGFBQWEsQ0FBQyxLQUFLLENBQUMsV0FBVyxDQUNyQyxrQkFBa0IsRUFDbEIsMEpBQTBKLENBQzNKLENBQUM7Z0JBQ0osQ0FBQztnQkFDRCxJQUFJLElBQUksQ0FBQyxlQUFlLEVBQUUsbUJBQW1CLEtBQUssT0FBTyxFQUFFLENBQUM7b0JBQzFELElBQUksSUFBSSxDQUFDLEVBQUUsQ0FBQyxhQUFhLENBQUMsYUFBYSxDQUFDLE9BQU8sQ0FBQzt3QkFDOUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxhQUFhLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsYUFBYSxDQUFDLGFBQWEsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDO29CQUNsRixJQUFJLENBQUMsRUFBRSxDQUFDLGFBQWEsQ0FBQyxLQUFLLENBQUMsV0FBVyxDQUNyQyxrQkFBa0IsRUFDbEIsbUpBQW1KLENBQ3BKLENBQUM7Z0JBQ0osQ0FBQztnQkFDRCxJQUFJLElBQUksQ0FBQyxlQUFlLEVBQUUsbUJBQW1CLEtBQUssVUFBVSxFQUFFLENBQUM7b0JBQzdELElBQUksSUFBSSxDQUFDLEVBQUUsQ0FBQyxhQUFhLENBQUMsYUFBYSxDQUFDLE9BQU8sQ0FBQzt3QkFDOUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxhQUFhLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsYUFBYSxDQUFDLGFBQWEsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDO29CQUNsRixJQUFJLENBQUMsRUFBRSxDQUFDLGFBQWEsQ0FBQyxLQUFLLENBQUMsV0FBVyxDQUNyQyxrQkFBa0IsRUFDbEIsaUdBQWlHLENBQ2xHLENBQUM7Z0JBQ0osQ0FBQztnQkFDRCxJQUFJLElBQUksQ0FBQyxlQUFlLEVBQUUsbUJBQW1CLEtBQUssTUFBTSxFQUFFLENBQUM7b0JBQ3pELElBQUksSUFBSSxDQUFDLEVBQUUsQ0FBQyxhQUFhLENBQUMsYUFBYSxDQUFDLE9BQU8sQ0FBQzt3QkFDOUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxhQUFhLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsYUFBYSxDQUFDLGFBQWEsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDO29CQUNsRixJQUFJLENBQUMsRUFBRSxDQUFDLGFBQWEsQ0FBQyxLQUFLLENBQUMsV0FBVyxDQUNyQyxrQkFBa0IsRUFDbEIsMEZBQTBGLENBQzNGLENBQUM7Z0JBQ0osQ0FBQztnQkFDRCxJQUFJLElBQUksQ0FBQyxlQUFlLEVBQUUsbUJBQW1CLEtBQUssTUFBTSxFQUFFLENBQUM7b0JBQ3pELElBQUksSUFBSSxDQUFDLEVBQUUsQ0FBQyxhQUFhLENBQUMsYUFBYSxDQUFDLE9BQU8sQ0FBQzt3QkFDOUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxhQUFhLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsYUFBYSxDQUFDLGFBQWEsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDO29CQUNsRixJQUFJLENBQUMsRUFBRSxDQUFDLGFBQWEsQ0FBQyxLQUFLLENBQUMsV0FBVyxDQUNyQyxrQkFBa0IsRUFDbEIsNkZBQTZGLENBQzlGLENBQUM7Z0JBQ0osQ0FBQztnQkFDRCxtREFBbUQ7Z0JBQ25ELHlFQUF5RTtnQkFDekUsK0VBQStFO2dCQUMvRSxpRkFBaUY7Z0JBQ2pGLElBQUk7WUFDTixDQUFDO1FBQ0gsQ0FBQyxDQUNGLENBQUE7SUFDSCxDQUFDO0lBQ0QsV0FBVztRQUNULElBQUksSUFBSSxDQUFDLGFBQWEsRUFBRSxDQUFDO1lBQ3ZCLElBQUksQ0FBQyxhQUFhLENBQUMsV0FBVyxFQUFFLENBQUE7UUFDbEMsQ0FBQztJQUNILENBQUM7SUFFRCxXQUFXLENBQUMsTUFBcUI7UUFDL0IsSUFBSSxDQUFDLEVBQUUsQ0FBQyxhQUFhLENBQUMsS0FBSyxDQUFDLFdBQVcsQ0FBQyxPQUFPLEVBQUUsSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsZUFBZSxFQUFFLEtBQUssQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLGVBQWUsRUFBRSxLQUFLLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUE7UUFDMUksSUFBSSxJQUFJLENBQUMsZUFBZSxFQUFFLFNBQVMsRUFBRSxDQUFDO1lBQ3BDLHNEQUFzRDtZQUN0RCxxRUFBcUU7WUFDckUsMERBQTBEO1lBQzFELDJDQUEyQztZQUMzQyxtREFBbUQ7WUFDbkQsa0NBQWtDO1lBQ2xDLDhCQUE4QjtZQUM5QiwrQkFBK0I7WUFDL0IscUNBQXFDO1lBQ3JDLCtCQUErQjtZQUMvQiw4Q0FBOEM7WUFDOUMsb0NBQW9DO1lBQ3BDLHFDQUFxQztZQUNyQywwQ0FBMEM7WUFDMUMsMkNBQTJDO1lBQzNDLHVDQUF1QztZQUN2Qyx3Q0FBd0M7WUFDeEMsc0NBQXNDO1lBQ3RDLDRDQUE0QztZQUM1QyxxREFBcUQ7WUFDckQsWUFBWTtZQUNaLElBQUk7WUFDSixJQUFJLElBQUksQ0FBQyxjQUFjLElBQUksSUFBSSxDQUFDLEVBQUUsQ0FBQyxhQUFhLENBQUMsYUFBYSxDQUFDLElBQUksSUFBSSxDQUFDLGNBQWMsRUFBRSxDQUFDO2dCQUN2RixJQUFJLENBQUMsRUFBRSxDQUFDLGFBQWEsQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxhQUFhLENBQUMsYUFBYSxDQUFDLElBQUksSUFBSSxDQUFDLGNBQWMsRUFBRSxDQUFDLENBQUMsQ0FBQztZQUNwRyxJQUFJLENBQUMsRUFBRSxDQUFDLGFBQWEsQ0FBQyxLQUFLLENBQUMsV0FBVyxDQUNyQyxrQkFBa0IsRUFDbEIsT0FBTyxJQUFJLENBQUMsZUFBZSxDQUFDLEtBQUssR0FBRyxDQUNyQyxDQUFDO1lBQ0YsSUFBSSxDQUFDLEVBQUUsQ0FBQyxhQUFhLENBQUMsS0FBSyxDQUFDLFdBQVcsQ0FDckMscUJBQXFCLEVBQ3JCLEdBQUcsSUFBSSxDQUFDLGVBQWUsQ0FBQyxRQUFRLEVBQUUsQ0FBQyxLQUFLLElBQUksQ0FBQyxlQUFlLENBQUMsUUFBUSxFQUFFLENBQUMsR0FBRyxDQUM1RSxDQUFDO1lBQ0YsSUFBSSxDQUFDLEVBQUUsQ0FBQyxhQUFhLENBQUMsS0FBSyxDQUFDLFdBQVcsQ0FBQyxtQkFBbUIsRUFBRSxXQUFXLENBQUMsQ0FBQztZQUMxRSxJQUFJLENBQUMsRUFBRSxDQUFDLGFBQWEsQ0FBQyxLQUFLLENBQUMsV0FBVyxDQUFDLGlCQUFpQixFQUFFLE9BQU8sQ0FBQyxDQUFDO1lBQ3BFLDZJQUE2STtRQUMvSSxDQUFDO2FBQU0sQ0FBQztZQUNOLElBQUksSUFBSSxDQUFDLGNBQWMsSUFBSSxJQUFJLENBQUMsRUFBRSxDQUFDLGFBQWEsQ0FBQyxhQUFhLENBQUMsSUFBSSxJQUFJLENBQUMsY0FBYyxFQUFFLENBQUM7Z0JBQ3ZGLElBQUksQ0FBQyxFQUFFLENBQUMsYUFBYSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLGFBQWEsQ0FBQyxhQUFhLENBQUMsSUFBSSxJQUFJLENBQUMsY0FBYyxFQUFFLENBQUMsQ0FBQyxDQUFDO1lBQ3BHLElBQUksSUFBSSxDQUFDLGVBQWUsRUFBRSxjQUFjLEtBQU0sVUFBOEIsRUFBRSxDQUFDO2dCQUM3RSxNQUFNLFNBQVMsR0FBRyxpQkFBaUIsQ0FBQyxJQUFJLENBQUMsZUFBZSxDQUFDLDJCQUF3RSxJQUFJLGlCQUFpQixDQUFDLElBQUksQ0FBQyxDQUFDO2dCQUM3SixNQUFNLGFBQWEsR0FBRyxTQUFTLElBQUksaUJBQWlCLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxtQkFBbUIsU0FBUyxJQUFJLElBQUksQ0FBQyxlQUFlLENBQUMsS0FBSyxJQUFJLElBQUksQ0FBQyxlQUFlLENBQUMsY0FBYyxHQUFHLENBQUMsQ0FBQztvQkFDaEssbUJBQW1CLElBQUksQ0FBQyxlQUFlLENBQUMsS0FBSyxJQUFJLElBQUksQ0FBQyxlQUFlLENBQUMsY0FBYyxHQUFHLENBQUM7Z0JBQzFGLElBQUksQ0FBQyxFQUFFLENBQUMsYUFBYSxDQUFDLEtBQUssQ0FBQyxXQUFXLENBQ3JDLFlBQVksRUFDWixhQUFhLENBQ2QsQ0FBQztnQkFDRixxRkFBcUY7Z0JBQ3JGLE9BQU87WUFDVCxDQUFDO1lBQ0QsSUFBSSxJQUFJLENBQUMsY0FBYyxJQUFJLElBQUksQ0FBQyxFQUFFLENBQUMsYUFBYSxDQUFDLGFBQWEsQ0FBQyxJQUFJLElBQUksQ0FBQyxjQUFjLEVBQUUsQ0FBQztnQkFDdkYsSUFBSSxDQUFDLEVBQUUsQ0FBQyxhQUFhLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsYUFBYSxDQUFDLGFBQWEsQ0FBQyxJQUFJLElBQUksQ0FBQyxjQUFjLEVBQUUsQ0FBQyxDQUFDLENBQUM7WUFDcEcsSUFBSSxDQUFDLEVBQUUsQ0FBQyxhQUFhLENBQUMsS0FBSyxDQUFDLFdBQVcsQ0FDckMsa0JBQWtCLEVBQ2xCLElBQUksQ0FBQyxlQUFlLEVBQUUsS0FBSyxDQUM1QixDQUFDO1lBQ0YsSUFBSSxDQUFDLEVBQUUsQ0FBQyxhQUFhLENBQUMsS0FBSyxDQUFDLFdBQVcsQ0FDckMsa0JBQWtCLEVBQ2xCLEVBQUUsQ0FDSCxDQUFDO1lBQ0YsSUFBSSxJQUFJLENBQUMsZUFBZSxFQUFFLG1CQUFtQixLQUFLLGNBQWMsRUFBRSxDQUFDO2dCQUNqRSxJQUFJLElBQUksQ0FBQyxFQUFFLENBQUMsYUFBYSxDQUFDLGFBQWEsQ0FBQyxPQUFPLENBQUM7b0JBQzlDLElBQUksQ0FBQyxFQUFFLENBQUMsYUFBYSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLGFBQWEsQ0FBQyxhQUFhLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQztnQkFDbEYsSUFBSSxDQUFDLEVBQUUsQ0FBQyxhQUFhLENBQUMsS0FBSyxDQUFDLFdBQVcsQ0FDckMsa0JBQWtCLEVBQ2xCLDRGQUE0RixDQUM3RixDQUFDO1lBQ0osQ0FBQztZQUNELElBQUksSUFBSSxDQUFDLGVBQWUsRUFBRSxtQkFBbUIsS0FBSyxpQkFBaUIsRUFBRSxDQUFDO2dCQUNwRSxJQUFJLElBQUksQ0FBQyxFQUFFLENBQUMsYUFBYSxDQUFDLGFBQWEsQ0FBQyxPQUFPLENBQUM7b0JBQzlDLElBQUksQ0FBQyxFQUFFLENBQUMsYUFBYSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLGFBQWEsQ0FBQyxhQUFhLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQztnQkFDbEYsSUFBSSxDQUFDLEVBQUUsQ0FBQyxhQUFhLENBQUMsS0FBSyxDQUFDLFdBQVcsQ0FDckMsa0JBQWtCLEVBQ2xCLDBKQUEwSixDQUMzSixDQUFDO1lBQ0osQ0FBQztZQUNELElBQUksSUFBSSxDQUFDLGVBQWUsRUFBRSxtQkFBbUIsS0FBSyxPQUFPLEVBQUUsQ0FBQztnQkFDMUQsSUFBSSxJQUFJLENBQUMsRUFBRSxDQUFDLGFBQWEsQ0FBQyxhQUFhLENBQUMsT0FBTyxDQUFDO29CQUM5QyxJQUFJLENBQUMsRUFBRSxDQUFDLGFBQWEsQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxhQUFhLENBQUMsYUFBYSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUM7Z0JBQ2xGLElBQUksQ0FBQyxFQUFFLENBQUMsYUFBYSxDQUFDLEtBQUssQ0FBQyxXQUFXLENBQ3JDLGtCQUFrQixFQUNsQixtSkFBbUosQ0FDcEosQ0FBQztZQUNKLENBQUM7WUFDRCxJQUFJLElBQUksQ0FBQyxlQUFlLEVBQUUsbUJBQW1CLEtBQUssVUFBVSxFQUFFLENBQUM7Z0JBQzdELElBQUksSUFBSSxDQUFDLEVBQUUsQ0FBQyxhQUFhLENBQUMsYUFBYSxDQUFDLE9BQU8sQ0FBQztvQkFDOUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxhQUFhLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsYUFBYSxDQUFDLGFBQWEsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDO2dCQUNsRixJQUFJLENBQUMsRUFBRSxDQUFDLGFBQWEsQ0FBQyxLQUFLLENBQUMsV0FBVyxDQUNyQyxrQkFBa0IsRUFDbEIsaUdBQWlHLENBQ2xHLENBQUM7WUFDSixDQUFDO1lBQ0QsSUFBSSxJQUFJLENBQUMsZUFBZSxFQUFFLG1CQUFtQixLQUFLLE1BQU0sRUFBRSxDQUFDO2dCQUN6RCxJQUFJLElBQUksQ0FBQyxFQUFFLENBQUMsYUFBYSxDQUFDLGFBQWEsQ0FBQyxPQUFPLENBQUM7b0JBQzlDLElBQUksQ0FBQyxFQUFFLENBQUMsYUFBYSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLGFBQWEsQ0FBQyxhQUFhLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQztnQkFDbEYsSUFBSSxDQUFDLEVBQUUsQ0FBQyxhQUFhLENBQUMsS0FBSyxDQUFDLFdBQVcsQ0FDckMsa0JBQWtCLEVBQ2xCLDBGQUEwRixDQUMzRixDQUFDO1lBQ0osQ0FBQztZQUNELElBQUksSUFBSSxDQUFDLGVBQWUsRUFBRSxtQkFBbUIsS0FBSyxNQUFNLEVBQUUsQ0FBQztnQkFDekQsSUFBSSxJQUFJLENBQUMsRUFBRSxDQUFDLGFBQWEsQ0FBQyxhQUFhLENBQUMsT0FBTyxDQUFDO29CQUM5QyxJQUFJLENBQUMsRUFBRSxDQUFDLGFBQWEsQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxhQUFhLENBQUMsYUFBYSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUM7Z0JBQ2xGLElBQUksQ0FBQyxFQUFFLENBQUMsYUFBYSxDQUFDLEtBQUssQ0FBQyxXQUFXLENBQ3JDLGtCQUFrQixFQUNsQiw2RkFBNkYsQ0FDOUYsQ0FBQztZQUNKLENBQUM7WUFDRCxJQUFJLElBQUksQ0FBQyxlQUFlLEVBQUUsbUJBQW1CLEVBQUUsQ0FBQztnQkFDOUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxhQUFhLENBQUMsS0FBSyxDQUFDLFdBQVcsQ0FBQyxpQkFBaUIsRUFBRSxPQUFPLENBQUMsQ0FBQztnQkFDcEUsSUFBSSxDQUFDLEVBQUUsQ0FBQyxhQUFhLENBQUMsS0FBSyxDQUFDLFdBQVcsQ0FBQyxtQkFBbUIsRUFBRSxXQUFXLENBQUMsQ0FBQztnQkFDMUUsSUFBSSxDQUFDLEVBQUUsQ0FBQyxhQUFhLENBQUMsS0FBSyxDQUFDLFdBQVcsQ0FBQyxxQkFBcUIsRUFBRSxRQUFRLENBQUMsQ0FBQztZQUMzRSxDQUFDO1lBQ0QsT0FBTztRQUNULENBQUM7SUFDSCxDQUFDO0lBRUQsWUFBWSxDQUFDLE9BQWU7UUFDMUIsSUFBSSxPQUFPLEVBQUUsQ0FBQztZQUNaLE1BQU0sU0FBUyxHQUFHLEdBQUcsQ0FBQyxDQUFDLGtDQUFrQztZQUN6RCxNQUFNLENBQUMsR0FBRyxRQUFRLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUM7WUFDNUMsTUFBTSxDQUFDLEdBQUcsUUFBUSxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDO1lBQzVDLE1BQU0sQ0FBQyxHQUFHLFFBQVEsQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQztZQUM1QyxNQUFNLFVBQVUsR0FBRyxDQUFDLENBQUMsR0FBRyxHQUFHLEdBQUcsQ0FBQyxHQUFHLEdBQUcsR0FBRyxDQUFDLEdBQUcsR0FBRyxDQUFDLEdBQUcsSUFBSSxDQUFDO1lBRXhELE9BQU8sVUFBVSxHQUFHLFNBQVMsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUM7UUFDeEQsQ0FBQztRQUNELE9BQU8sVUFBVSxDQUFBO0lBQ25CLENBQUM7K0dBbFJVLG1CQUFtQjttR0FBbkIsbUJBQW1COzs0RkFBbkIsbUJBQW1CO2tCQUovQixTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxtQkFBbUI7b0JBQzdCLFVBQVUsRUFBRSxJQUFJO2lCQUNqQjsyR0FFMkIsZUFBZTtzQkFBeEMsS0FBSzt1QkFBQyxpQkFBaUI7Z0JBQ0YsV0FBVztzQkFBaEMsS0FBSzt1QkFBQyxhQUFhIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGlyZWN0aXZlLCBFbGVtZW50UmVmLCBJbnB1dCwgT25DaGFuZ2VzLCBTaW1wbGVDaGFuZ2VzIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IEV2ZW50c1NlcnZpY2UgfSBmcm9tICcuLi9zZXJ2aWNlcy9ldmVudHMuc2VydmljZSc7XHJcbmltcG9ydCB7IEJhY2tncm91bmRNb2RlbCB9IGZyb20gJy4uL3N0eWxlcy9zdHlsZS5tb2RlbCc7XHJcbmltcG9ydCB7IEJBQ0tHUk9VTkRfVFlQRSB9IGZyb20gJy4uL3N0eWxlcy90eXBlcyc7XHJcbmltcG9ydCB7IEdyYWRpZW50RGlyZWN0aW9uIH0gZnJvbSAnLi4vc3R5bGVzL2luZGV4JztcclxuXHJcbkBEaXJlY3RpdmUoe1xyXG4gIHNlbGVjdG9yOiAnW3NpbXBvQmFja2dyb3VuZF0nLFxyXG4gIHN0YW5kYWxvbmU6IHRydWUsXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBCYWNrZ3JvdW5kRGlyZWN0aXZlIGltcGxlbWVudHMgT25DaGFuZ2VzIHtcclxuICBASW5wdXQoJ3NpbXBvQmFja2dyb3VuZCcpIHNpbXBvQmFja2dyb3VuZD86IEJhY2tncm91bmRNb2RlbDtcclxuICBASW5wdXQoJ3Njcm9sbFZhbHVlJykgc2Nyb2xsVmFsdWU/OiBudW1iZXIgPSAwO1xyXG5cclxuICBldmVudEVtbWl0dGVyOiBhbnk7XHJcbiAgdmlkZW9FbGVtZW50SWQgPSBgYFxyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHJpdmF0ZSBlbDogRWxlbWVudFJlZixcclxuICAgIHByaXZhdGUgZXZlbnRTZXJ2aWNlOiBFdmVudHNTZXJ2aWNlKSB7XHJcbiAgICBpZiAodGhpcy5ldmVudEVtbWl0dGVyKSB7XHJcbiAgICAgIHRoaXMuZXZlbnRFbW1pdHRlci51bnN1YnNjcmliZSgpXHJcbiAgICB9XHJcbiAgICB0aGlzLmV2ZW50RW1taXR0ZXIgPSB0aGlzLmV2ZW50U2VydmljZS5iYWNrZ3JvdW5kSW1hZ2VDaGFuZ2VDaGVjay5zdWJzY3JpYmUoXHJcbiAgICAgIChyZXM6IGFueSkgPT4ge1xyXG4gICAgICAgIHRoaXMudmlkZW9FbGVtZW50SWQgPSBgc2ltcG8tYmctdmlkZW8tJHt0aGlzLmVsPy5uYXRpdmVFbGVtZW50Py5pZH1gO1xyXG4gICAgICAgIGlmICh0aGlzLmVsLm5hdGl2ZUVsZW1lbnQuaWQgPT09IHJlcy5pZCB8fCByZXMuZ2xvYmFsVGhlbWVDaGFuZ2UpIHtcclxuICAgICAgICAgIGlmIChyZXMuZGF0YT8uc2hvd0ltYWdlICYmIHRoaXM/LnNjcm9sbFZhbHVlID09IDApIHtcclxuICAgICAgICAgICAgaWYgKHRoaXMuc2ltcG9CYWNrZ3JvdW5kPy5pbWFnZS5pbmNsdWRlcygnLm1wNCcpKSB7XHJcbiAgICAgICAgICAgICAgdGhpcy5lbC5uYXRpdmVFbGVtZW50LnN0eWxlLnNldFByb3BlcnR5KCdiYWNrZ3JvdW5kLWltYWdlJywgJycpO1xyXG4gICAgICAgICAgICAgIGNvbnN0IHZpZGVvRWxlbWVudCA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ3ZpZGVvJyk7XHJcbiAgICAgICAgICAgICAgdmlkZW9FbGVtZW50LmlkID0gdGhpcy52aWRlb0VsZW1lbnRJZDtcclxuICAgICAgICAgICAgICB2aWRlb0VsZW1lbnQuc3JjID0gdGhpcy5zaW1wb0JhY2tncm91bmQuaW1hZ2U7XHJcbiAgICAgICAgICAgICAgdmlkZW9FbGVtZW50LmF1dG9wbGF5ID0gdHJ1ZTtcclxuICAgICAgICAgICAgICB2aWRlb0VsZW1lbnQubG9vcCA9IHRydWU7XHJcbiAgICAgICAgICAgICAgdmlkZW9FbGVtZW50Lm11dGVkID0gdHJ1ZTtcclxuICAgICAgICAgICAgICB2aWRlb0VsZW1lbnQucGxheXNJbmxpbmUgPSB0cnVlO1xyXG4gICAgICAgICAgICAgIC8vIFN0eWxlIHRoZSB2aWRlbyBlbGVtZW50XHJcbiAgICAgICAgICAgICAgdmlkZW9FbGVtZW50LnN0eWxlLnBvc2l0aW9uID0gJ2Fic29sdXRlJztcclxuICAgICAgICAgICAgICB2aWRlb0VsZW1lbnQuc3R5bGUucmlnaHQgPSAnMCc7XHJcbiAgICAgICAgICAgICAgdmlkZW9FbGVtZW50LnN0eWxlLmJvdHRvbSA9ICcwJztcclxuICAgICAgICAgICAgICB2aWRlb0VsZW1lbnQuc3R5bGUubWluV2lkdGggPSAnMTAwJSc7XHJcbiAgICAgICAgICAgICAgdmlkZW9FbGVtZW50LnN0eWxlLm1pbkhlaWdodCA9ICcxMDAlJztcclxuICAgICAgICAgICAgICB2aWRlb0VsZW1lbnQuc3R5bGUud2lkdGggPSAnMTAwJSc7XHJcbiAgICAgICAgICAgICAgdmlkZW9FbGVtZW50LnN0eWxlLmhlaWdodCA9ICcxMDAlJztcclxuICAgICAgICAgICAgICB2aWRlb0VsZW1lbnQuc3R5bGUuekluZGV4ID0gJy0xJztcclxuICAgICAgICAgICAgICB2aWRlb0VsZW1lbnQuc3R5bGUub2JqZWN0Rml0ID0gJ2NvdmVyJztcclxuICAgICAgICAgICAgICB0aGlzLmVsLm5hdGl2ZUVsZW1lbnQuYXBwZW5kQ2hpbGQodmlkZW9FbGVtZW50KTtcclxuICAgICAgICAgICAgICByZXR1cm47XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgaWYgKHRoaXMudmlkZW9FbGVtZW50SWQgJiYgdGhpcy5lbC5uYXRpdmVFbGVtZW50LnF1ZXJ5U2VsZWN0b3IoYCMke3RoaXMudmlkZW9FbGVtZW50SWR9YCkpXHJcbiAgICAgICAgICAgICAgdGhpcy5lbC5uYXRpdmVFbGVtZW50LnJlbW92ZUNoaWxkKHRoaXMuZWwubmF0aXZlRWxlbWVudC5xdWVyeVNlbGVjdG9yKGAjJHt0aGlzLnZpZGVvRWxlbWVudElkfWApKTtcclxuICAgICAgICAgICAgdGhpcy5lbC5uYXRpdmVFbGVtZW50LnN0eWxlLnNldFByb3BlcnR5KFxyXG4gICAgICAgICAgICAgICdiYWNrZ3JvdW5kLWltYWdlJyxcclxuICAgICAgICAgICAgICBgdXJsKCR7cmVzLmRhdGEuaW1hZ2V9KWBcclxuICAgICAgICAgICAgKTtcclxuICAgICAgICAgICAgdGhpcy5lbC5uYXRpdmVFbGVtZW50LnN0eWxlLnNldFByb3BlcnR5KFxyXG4gICAgICAgICAgICAgICdiYWNrZ3JvdW5kLXBvc2l0aW9uJyxcclxuICAgICAgICAgICAgICBgJHtyZXMuZGF0YS5wb3NpdGlvbj8ueH0lICR7cmVzLmRhdGEucG9zaXRpb24/Lnl9JWBcclxuICAgICAgICAgICAgKTtcclxuICAgICAgICAgICAgdGhpcy5lbC5uYXRpdmVFbGVtZW50LnN0eWxlLnNldFByb3BlcnR5KCdiYWNrZ3JvdW5kLXJlcGVhdCcsIGBuby1yZXBlYXRgKTtcclxuICAgICAgICAgICAgdGhpcy5lbC5uYXRpdmVFbGVtZW50LnN0eWxlLnNldFByb3BlcnR5KCdiYWNrZ3JvdW5kLXNpemUnLCBgY292ZXJgKTtcclxuICAgICAgICAgICAgLy8gdGhpcy5lbC5uYXRpdmVFbGVtZW50LnN0eWxlLnNldFByb3BlcnR5KCdjb2xvcicsIHRoaXMuZ2V0VGV4dENvbG9yKHJlcy5kYXRhPy5jb2xvcikpXHJcbiAgICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICBpZiAodGhpcy52aWRlb0VsZW1lbnRJZCAmJiB0aGlzLmVsLm5hdGl2ZUVsZW1lbnQucXVlcnlTZWxlY3RvcihgIyR7dGhpcy52aWRlb0VsZW1lbnRJZH1gKSlcclxuICAgICAgICAgICAgICB0aGlzLmVsLm5hdGl2ZUVsZW1lbnQucmVtb3ZlQ2hpbGQodGhpcy5lbC5uYXRpdmVFbGVtZW50LnF1ZXJ5U2VsZWN0b3IoYCMke3RoaXMudmlkZW9FbGVtZW50SWR9YCkpO1xyXG4gICAgICAgICAgICBpZiAodGhpcy5zaW1wb0JhY2tncm91bmQ/LmJhY2tncm91bmRUeXBlID09PSAoJ0dyYWRpZW50JyBhcyBCQUNLR1JPVU5EX1RZUEUpKSB7XHJcbiAgICAgICAgICAgICAgY29uc3QgZGlyZWN0aW9uID0gR3JhZGllbnREaXJlY3Rpb25bdGhpcy5zaW1wb0JhY2tncm91bmQuYmFja2dyb3VuZEdyYWRpZW50RGlyZWN0aW9uIGFzIHVua25vd24gYXMga2V5b2YgdHlwZW9mIEdyYWRpZW50RGlyZWN0aW9uIHx8IEdyYWRpZW50RGlyZWN0aW9uLkRPV05dO1xyXG4gICAgICAgICAgICAgIGNvbnN0IGdyYWRpZW50Q29sb3IgPSBkaXJlY3Rpb24gIT0gR3JhZGllbnREaXJlY3Rpb24uRE9XTiA/IGBsaW5lYXItZ3JhZGllbnQoJHtkaXJlY3Rpb259LCR7dGhpcy5zaW1wb0JhY2tncm91bmQuY29sb3J9LCR7dGhpcy5zaW1wb0JhY2tncm91bmQuc2Vjb25kYXJ5Q29sb3J9KWAgOlxyXG4gICAgICAgICAgICAgICAgYGxpbmVhci1ncmFkaWVudCgke3RoaXMuc2ltcG9CYWNrZ3JvdW5kLmNvbG9yfSwke3RoaXMuc2ltcG9CYWNrZ3JvdW5kLnNlY29uZGFyeUNvbG9yfSlgO1xyXG4gICAgICAgICAgICAgIHRoaXMuZWwubmF0aXZlRWxlbWVudC5zdHlsZS5zZXRQcm9wZXJ0eShcclxuICAgICAgICAgICAgICAgICdiYWNrZ3JvdW5kJyxcclxuICAgICAgICAgICAgICAgIGdyYWRpZW50Q29sb3JcclxuICAgICAgICAgICAgICApO1xyXG4gICAgICAgICAgICAgIC8vIHRoaXMuZWwubmF0aXZlRWxlbWVudC5zdHlsZS5zZXRQcm9wZXJ0eSgnY29sb3InLCB0aGlzLmdldFRleHRDb2xvcihncmFkaWVudENvbG9yKSlcclxuXHJcbiAgICAgICAgICAgICAgcmV0dXJuO1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICB0aGlzLmVsLm5hdGl2ZUVsZW1lbnQuc3R5bGUuc2V0UHJvcGVydHkoXHJcbiAgICAgICAgICAgICAgJ2JhY2tncm91bmQtY29sb3InLFxyXG4gICAgICAgICAgICAgIHJlcy5kYXRhPy5jb2xvclxyXG4gICAgICAgICAgICApO1xyXG4gICAgICAgICAgICB0aGlzLmVsLm5hdGl2ZUVsZW1lbnQuc3R5bGUuc2V0UHJvcGVydHkoXHJcbiAgICAgICAgICAgICAgJ2JhY2tncm91bmQtaW1hZ2UnLFxyXG4gICAgICAgICAgICAgIGB1cmwoJycpYFxyXG4gICAgICAgICAgICApO1xyXG4gICAgICAgICAgICB0aGlzLmVsLm5hdGl2ZUVsZW1lbnQuc3R5bGUuc2V0UHJvcGVydHkoJ2JhY2tncm91bmQtc2l6ZScsICdjb3ZlcicpO1xyXG4gICAgICAgICAgICB0aGlzLmVsLm5hdGl2ZUVsZW1lbnQuc3R5bGUuc2V0UHJvcGVydHkoJ2JhY2tncm91bmQtcmVwZWF0JywgJ25vLXJlcGVhdCcpO1xyXG4gICAgICAgICAgICB0aGlzLmVsLm5hdGl2ZUVsZW1lbnQuc3R5bGUuc2V0UHJvcGVydHkoJ2JhY2tncm91bmQtcG9zaXRpb24nLCAnY2VudGVyJyk7XHJcbiAgICAgICAgICAgIC8vIHRoaXMuZWwubmF0aXZlRWxlbWVudC5zdHlsZS5zZXRQcm9wZXJ0eSgnY29sb3InLCB0aGlzLmdldFRleHRDb2xvcihyZXMuZGF0YT8uY29sb3IpKVxyXG4gICAgICAgICAgfVxyXG4gICAgICAgICAgaWYgKHRoaXMuc2ltcG9CYWNrZ3JvdW5kPy5iYWNrZ3JvdW5kQW5pbWF0aW9uID09PSAnREFOQ0lOR19ET1RTJykge1xyXG4gICAgICAgICAgICBpZiAodGhpcy5lbC5uYXRpdmVFbGVtZW50LnF1ZXJ5U2VsZWN0b3IoJ3ZpZGVvJykpXHJcbiAgICAgICAgICAgICAgdGhpcy5lbC5uYXRpdmVFbGVtZW50LnJlbW92ZUNoaWxkKHRoaXMuZWwubmF0aXZlRWxlbWVudC5xdWVyeVNlbGVjdG9yKCd2aWRlbycpKTtcclxuICAgICAgICAgICAgdGhpcy5lbC5uYXRpdmVFbGVtZW50LnN0eWxlLnNldFByb3BlcnR5KFxyXG4gICAgICAgICAgICAgICdiYWNrZ3JvdW5kLWltYWdlJyxcclxuICAgICAgICAgICAgICBgdXJsKCdodHRwczovL2QyeXgxNXBuY2dtdTYzLmNsb3VkZnJvbnQubmV0L3Byb2QtaW1hZ2VzLzExNjAyNmMxNzQ3MTIyMjk2NDA4QXJ0Ym9hcmQxLmdpZicpYFxyXG4gICAgICAgICAgICApO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgICAgaWYgKHRoaXMuc2ltcG9CYWNrZ3JvdW5kPy5iYWNrZ3JvdW5kQW5pbWF0aW9uID09PSAnU0NBVFRFUklOR19ET1RTJykge1xyXG4gICAgICAgICAgICBpZiAodGhpcy5lbC5uYXRpdmVFbGVtZW50LnF1ZXJ5U2VsZWN0b3IoJ3ZpZGVvJykpXHJcbiAgICAgICAgICAgICAgdGhpcy5lbC5uYXRpdmVFbGVtZW50LnJlbW92ZUNoaWxkKHRoaXMuZWwubmF0aXZlRWxlbWVudC5xdWVyeVNlbGVjdG9yKCd2aWRlbycpKTtcclxuICAgICAgICAgICAgdGhpcy5lbC5uYXRpdmVFbGVtZW50LnN0eWxlLnNldFByb3BlcnR5KFxyXG4gICAgICAgICAgICAgICdiYWNrZ3JvdW5kLWltYWdlJyxcclxuICAgICAgICAgICAgICBgdXJsKCdodHRwczovL2QyeXgxNXBuY2dtdTYzLmNsb3VkZnJvbnQubmV0L3Byb2QtaW1hZ2VzLzI4NzM0OGMxNzQ3MDUxNTQwMDg4V2hhdHNBcHBWaWRlbzIwMjUtMDUtMTJhdDUuMTkuMTFQTS1lemdpZi5jb20tdmlkZW8tdG8tZ2lmLWNvbnZlcnRlciAoMSkuZ2lmJylgXHJcbiAgICAgICAgICAgICk7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgICBpZiAodGhpcy5zaW1wb0JhY2tncm91bmQ/LmJhY2tncm91bmRBbmltYXRpb24gPT09ICdXQVZFUycpIHtcclxuICAgICAgICAgICAgaWYgKHRoaXMuZWwubmF0aXZlRWxlbWVudC5xdWVyeVNlbGVjdG9yKCd2aWRlbycpKVxyXG4gICAgICAgICAgICAgIHRoaXMuZWwubmF0aXZlRWxlbWVudC5yZW1vdmVDaGlsZCh0aGlzLmVsLm5hdGl2ZUVsZW1lbnQucXVlcnlTZWxlY3RvcigndmlkZW8nKSk7XHJcbiAgICAgICAgICAgIHRoaXMuZWwubmF0aXZlRWxlbWVudC5zdHlsZS5zZXRQcm9wZXJ0eShcclxuICAgICAgICAgICAgICAnYmFja2dyb3VuZC1pbWFnZScsXHJcbiAgICAgICAgICAgICAgYHVybCgnaHR0cHM6Ly9kMnl4MTVwbmNnbXU2My5jbG91ZGZyb250Lm5ldC9wcm9kLWltYWdlcy82MzA3NTNjMTc0NzQwMzIxNzIzOTY5MTM5OTdfTW90aW9uJTIwR3JhcGhpY3NfTW90aW9uJTIwR3JhcGhpY18zODQweDIxNjAlMjAoMSklMjAoMikuZ2lmJylgXHJcbiAgICAgICAgICAgICk7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgICBpZiAodGhpcy5zaW1wb0JhY2tncm91bmQ/LmJhY2tncm91bmRBbmltYXRpb24gPT09ICdBQlNUUkFDVCcpIHtcclxuICAgICAgICAgICAgaWYgKHRoaXMuZWwubmF0aXZlRWxlbWVudC5xdWVyeVNlbGVjdG9yKCd2aWRlbycpKVxyXG4gICAgICAgICAgICAgIHRoaXMuZWwubmF0aXZlRWxlbWVudC5yZW1vdmVDaGlsZCh0aGlzLmVsLm5hdGl2ZUVsZW1lbnQucXVlcnlTZWxlY3RvcigndmlkZW8nKSk7XHJcbiAgICAgICAgICAgIHRoaXMuZWwubmF0aXZlRWxlbWVudC5zdHlsZS5zZXRQcm9wZXJ0eShcclxuICAgICAgICAgICAgICAnYmFja2dyb3VuZC1pbWFnZScsXHJcbiAgICAgICAgICAgICAgYHVybCgnaHR0cHM6Ly9kMnl4MTVwbmNnbXU2My5jbG91ZGZyb250Lm5ldC9wcm9kLWltYWdlcy81Nzc1MDdjMTc0NzQ2NTYzNjk1NlJvdGF0aW9uJTIwZ2lmLmdpZicpYFxyXG4gICAgICAgICAgICApO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgICAgaWYgKHRoaXMuc2ltcG9CYWNrZ3JvdW5kPy5iYWNrZ3JvdW5kQW5pbWF0aW9uID09PSAnRFJFVycpIHtcclxuICAgICAgICAgICAgaWYgKHRoaXMuZWwubmF0aXZlRWxlbWVudC5xdWVyeVNlbGVjdG9yKCd2aWRlbycpKVxyXG4gICAgICAgICAgICAgIHRoaXMuZWwubmF0aXZlRWxlbWVudC5yZW1vdmVDaGlsZCh0aGlzLmVsLm5hdGl2ZUVsZW1lbnQucXVlcnlTZWxlY3RvcigndmlkZW8nKSk7XHJcbiAgICAgICAgICAgIHRoaXMuZWwubmF0aXZlRWxlbWVudC5zdHlsZS5zZXRQcm9wZXJ0eShcclxuICAgICAgICAgICAgICAnYmFja2dyb3VuZC1pbWFnZScsXHJcbiAgICAgICAgICAgICAgYHVybCgnaHR0cHM6Ly9kMnl4MTVwbmNnbXU2My5jbG91ZGZyb250Lm5ldC9wcm9kLWltYWdlcy83MjEyNDRjMTc0NzQ2NzY5ODAwNGFuaW1hdGUuZ2lmJylgXHJcbiAgICAgICAgICAgICk7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgICBpZiAodGhpcy5zaW1wb0JhY2tncm91bmQ/LmJhY2tncm91bmRBbmltYXRpb24gPT09ICdET1RTJykge1xyXG4gICAgICAgICAgICBpZiAodGhpcy5lbC5uYXRpdmVFbGVtZW50LnF1ZXJ5U2VsZWN0b3IoJ3ZpZGVvJykpXHJcbiAgICAgICAgICAgICAgdGhpcy5lbC5uYXRpdmVFbGVtZW50LnJlbW92ZUNoaWxkKHRoaXMuZWwubmF0aXZlRWxlbWVudC5xdWVyeVNlbGVjdG9yKCd2aWRlbycpKTtcclxuICAgICAgICAgICAgdGhpcy5lbC5uYXRpdmVFbGVtZW50LnN0eWxlLnNldFByb3BlcnR5KFxyXG4gICAgICAgICAgICAgICdiYWNrZ3JvdW5kLWltYWdlJyxcclxuICAgICAgICAgICAgICBgdXJsKCdodHRwczovL2QyeXgxNXBuY2dtdTYzLmNsb3VkZnJvbnQubmV0L3Byb2QtaW1hZ2VzLzY1OTEzNGMxNzQ3NDY3ODAxMjQyRG90cyUyMCgxKS5naWYnKWBcclxuICAgICAgICAgICAgKTtcclxuICAgICAgICAgIH1cclxuICAgICAgICAgIC8vIGlmICh0aGlzLnNpbXBvQmFja2dyb3VuZD8uYmFja2dyb3VuZEFuaW1hdGlvbikge1xyXG4gICAgICAgICAgLy8gICB0aGlzLmVsLm5hdGl2ZUVsZW1lbnQuc3R5bGUuc2V0UHJvcGVydHkoJ2JhY2tncm91bmQtc2l6ZScsICdjb3ZlcicpO1xyXG4gICAgICAgICAgLy8gICB0aGlzLmVsLm5hdGl2ZUVsZW1lbnQuc3R5bGUuc2V0UHJvcGVydHkoJ2JhY2tncm91bmQtcmVwZWF0JywgJ25vLXJlcGVhdCcpO1xyXG4gICAgICAgICAgLy8gICAvLyB0aGlzLmVsLm5hdGl2ZUVsZW1lbnQuc3R5bGUuc2V0UHJvcGVydHkoJ2JhY2tncm91bmQtcG9zaXRpb24nLCAnY2VudGVyJyk7XHJcbiAgICAgICAgICAvLyB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICApXHJcbiAgfVxyXG4gIG5nT25EZXN0cm95KCkge1xyXG4gICAgaWYgKHRoaXMuZXZlbnRFbW1pdHRlcikge1xyXG4gICAgICB0aGlzLmV2ZW50RW1taXR0ZXIudW5zdWJzY3JpYmUoKVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgbmdPbkNoYW5nZXMoY2hhbmdlOiBTaW1wbGVDaGFuZ2VzKTogdm9pZCB7XHJcbiAgICB0aGlzLmVsLm5hdGl2ZUVsZW1lbnQuc3R5bGUuc2V0UHJvcGVydHkoJ2NvbG9yJywgdGhpcy5nZXRUZXh0Q29sb3IodGhpcy5zaW1wb0JhY2tncm91bmQ/LmNvbG9yID8gdGhpcy5zaW1wb0JhY2tncm91bmQ/LmNvbG9yIDogJyNmZmZmZmYnKSlcclxuICAgIGlmICh0aGlzLnNpbXBvQmFja2dyb3VuZD8uc2hvd0ltYWdlKSB7XHJcbiAgICAgIC8vIGlmICh0aGlzLnNpbXBvQmFja2dyb3VuZD8uaW1hZ2UuaW5jbHVkZXMoJy5tcDQnKSkge1xyXG4gICAgICAvLyAgIHRoaXMuZWwubmF0aXZlRWxlbWVudC5zdHlsZS5zZXRQcm9wZXJ0eSgnYmFja2dyb3VuZC1pbWFnZScsICcnKTtcclxuICAgICAgLy8gICBjb25zdCB2aWRlb0VsZW1lbnQgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCd2aWRlbycpO1xyXG4gICAgICAvLyAgIHZpZGVvRWxlbWVudC5pZCA9IHRoaXMudmlkZW9FbGVtZW50SWQ7XHJcbiAgICAgIC8vICAgdmlkZW9FbGVtZW50LnNyYyA9IHRoaXMuc2ltcG9CYWNrZ3JvdW5kLmltYWdlO1xyXG4gICAgICAvLyAgIHZpZGVvRWxlbWVudC5hdXRvcGxheSA9IHRydWU7XHJcbiAgICAgIC8vICAgdmlkZW9FbGVtZW50Lmxvb3AgPSB0cnVlO1xyXG4gICAgICAvLyAgIHZpZGVvRWxlbWVudC5tdXRlZCA9IHRydWU7XHJcbiAgICAgIC8vICAgdmlkZW9FbGVtZW50LnBsYXlzSW5saW5lID0gdHJ1ZTtcclxuICAgICAgLy8gICAvLyBTdHlsZSB0aGUgdmlkZW8gZWxlbWVudFxyXG4gICAgICAvLyAgIHZpZGVvRWxlbWVudC5zdHlsZS5wb3NpdGlvbiA9ICdhYnNvbHV0ZSc7XHJcbiAgICAgIC8vICAgdmlkZW9FbGVtZW50LnN0eWxlLnJpZ2h0ID0gJzAnO1xyXG4gICAgICAvLyAgIHZpZGVvRWxlbWVudC5zdHlsZS5ib3R0b20gPSAnMCc7XHJcbiAgICAgIC8vICAgdmlkZW9FbGVtZW50LnN0eWxlLm1pbldpZHRoID0gJzEwMCUnO1xyXG4gICAgICAvLyAgIHZpZGVvRWxlbWVudC5zdHlsZS5taW5IZWlnaHQgPSAnMTAwJSc7XHJcbiAgICAgIC8vICAgdmlkZW9FbGVtZW50LnN0eWxlLndpZHRoID0gJzEwMCUnO1xyXG4gICAgICAvLyAgIHZpZGVvRWxlbWVudC5zdHlsZS5oZWlnaHQgPSAnMTAwJSc7XHJcbiAgICAgIC8vICAgdmlkZW9FbGVtZW50LnN0eWxlLnpJbmRleCA9ICctMSc7XHJcbiAgICAgIC8vICAgdmlkZW9FbGVtZW50LnN0eWxlLm9iamVjdEZpdCA9ICdjb3Zlcic7XHJcbiAgICAgIC8vICAgdGhpcy5lbC5uYXRpdmVFbGVtZW50LmFwcGVuZENoaWxkKHZpZGVvRWxlbWVudCk7XHJcbiAgICAgIC8vICAgcmV0dXJuO1xyXG4gICAgICAvLyB9XHJcbiAgICAgIGlmICh0aGlzLnZpZGVvRWxlbWVudElkICYmIHRoaXMuZWwubmF0aXZlRWxlbWVudC5xdWVyeVNlbGVjdG9yKGAjJHt0aGlzLnZpZGVvRWxlbWVudElkfWApKVxyXG4gICAgICAgIHRoaXMuZWwubmF0aXZlRWxlbWVudC5yZW1vdmVDaGlsZCh0aGlzLmVsLm5hdGl2ZUVsZW1lbnQucXVlcnlTZWxlY3RvcihgIyR7dGhpcy52aWRlb0VsZW1lbnRJZH1gKSk7XHJcbiAgICAgIHRoaXMuZWwubmF0aXZlRWxlbWVudC5zdHlsZS5zZXRQcm9wZXJ0eShcclxuICAgICAgICAnYmFja2dyb3VuZC1pbWFnZScsXHJcbiAgICAgICAgYHVybCgke3RoaXMuc2ltcG9CYWNrZ3JvdW5kLmltYWdlfSlgXHJcbiAgICAgICk7XHJcbiAgICAgIHRoaXMuZWwubmF0aXZlRWxlbWVudC5zdHlsZS5zZXRQcm9wZXJ0eShcclxuICAgICAgICAnYmFja2dyb3VuZC1wb3NpdGlvbicsXHJcbiAgICAgICAgYCR7dGhpcy5zaW1wb0JhY2tncm91bmQucG9zaXRpb24/Lnh9JSAke3RoaXMuc2ltcG9CYWNrZ3JvdW5kLnBvc2l0aW9uPy55fSVgXHJcbiAgICAgICk7XHJcbiAgICAgIHRoaXMuZWwubmF0aXZlRWxlbWVudC5zdHlsZS5zZXRQcm9wZXJ0eSgnYmFja2dyb3VuZC1yZXBlYXQnLCBgbm8tcmVwZWF0YCk7XHJcbiAgICAgIHRoaXMuZWwubmF0aXZlRWxlbWVudC5zdHlsZS5zZXRQcm9wZXJ0eSgnYmFja2dyb3VuZC1zaXplJywgYGNvdmVyYCk7XHJcbiAgICAgIC8vIHRoaXMuZWwubmF0aXZlRWxlbWVudC5zdHlsZS5zZXRQcm9wZXJ0eSgnY29sb3InLCB0aGlzLmdldFRleHRDb2xvcih0aGlzLnNpbXBvQmFja2dyb3VuZD8uY29sb3IgPyB0aGlzLnNpbXBvQmFja2dyb3VuZD8uY29sb3IgOiAnI2ZmZmZmZicpKVxyXG4gICAgfSBlbHNlIHtcclxuICAgICAgaWYgKHRoaXMudmlkZW9FbGVtZW50SWQgJiYgdGhpcy5lbC5uYXRpdmVFbGVtZW50LnF1ZXJ5U2VsZWN0b3IoYCMke3RoaXMudmlkZW9FbGVtZW50SWR9YCkpXHJcbiAgICAgICAgdGhpcy5lbC5uYXRpdmVFbGVtZW50LnJlbW92ZUNoaWxkKHRoaXMuZWwubmF0aXZlRWxlbWVudC5xdWVyeVNlbGVjdG9yKGAjJHt0aGlzLnZpZGVvRWxlbWVudElkfWApKTtcclxuICAgICAgaWYgKHRoaXMuc2ltcG9CYWNrZ3JvdW5kPy5iYWNrZ3JvdW5kVHlwZSA9PT0gKCdHcmFkaWVudCcgYXMgQkFDS0dST1VORF9UWVBFKSkge1xyXG4gICAgICAgIGNvbnN0IGRpcmVjdGlvbiA9IEdyYWRpZW50RGlyZWN0aW9uW3RoaXMuc2ltcG9CYWNrZ3JvdW5kLmJhY2tncm91bmRHcmFkaWVudERpcmVjdGlvbiBhcyB1bmtub3duIGFzIGtleW9mIHR5cGVvZiBHcmFkaWVudERpcmVjdGlvbiB8fCBHcmFkaWVudERpcmVjdGlvbi5ET1dOXTtcclxuICAgICAgICBjb25zdCBncmFkaWVudENvbG9yID0gZGlyZWN0aW9uICE9IEdyYWRpZW50RGlyZWN0aW9uLkRPV04gPyBgbGluZWFyLWdyYWRpZW50KCR7ZGlyZWN0aW9ufSwke3RoaXMuc2ltcG9CYWNrZ3JvdW5kLmNvbG9yfSwke3RoaXMuc2ltcG9CYWNrZ3JvdW5kLnNlY29uZGFyeUNvbG9yfSlgIDpcclxuICAgICAgICAgIGBsaW5lYXItZ3JhZGllbnQoJHt0aGlzLnNpbXBvQmFja2dyb3VuZC5jb2xvcn0sJHt0aGlzLnNpbXBvQmFja2dyb3VuZC5zZWNvbmRhcnlDb2xvcn0pYDtcclxuICAgICAgICB0aGlzLmVsLm5hdGl2ZUVsZW1lbnQuc3R5bGUuc2V0UHJvcGVydHkoXHJcbiAgICAgICAgICAnYmFja2dyb3VuZCcsXHJcbiAgICAgICAgICBncmFkaWVudENvbG9yXHJcbiAgICAgICAgKTtcclxuICAgICAgICAvLyB0aGlzLmVsLm5hdGl2ZUVsZW1lbnQuc3R5bGUuc2V0UHJvcGVydHkoJ2NvbG9yJywgdGhpcy5nZXRUZXh0Q29sb3IoZ3JhZGllbnRDb2xvcikpXHJcbiAgICAgICAgcmV0dXJuO1xyXG4gICAgICB9XHJcbiAgICAgIGlmICh0aGlzLnZpZGVvRWxlbWVudElkICYmIHRoaXMuZWwubmF0aXZlRWxlbWVudC5xdWVyeVNlbGVjdG9yKGAjJHt0aGlzLnZpZGVvRWxlbWVudElkfWApKVxyXG4gICAgICAgIHRoaXMuZWwubmF0aXZlRWxlbWVudC5yZW1vdmVDaGlsZCh0aGlzLmVsLm5hdGl2ZUVsZW1lbnQucXVlcnlTZWxlY3RvcihgIyR7dGhpcy52aWRlb0VsZW1lbnRJZH1gKSk7XHJcbiAgICAgIHRoaXMuZWwubmF0aXZlRWxlbWVudC5zdHlsZS5zZXRQcm9wZXJ0eShcclxuICAgICAgICAnYmFja2dyb3VuZC1jb2xvcicsXHJcbiAgICAgICAgdGhpcy5zaW1wb0JhY2tncm91bmQ/LmNvbG9yXHJcbiAgICAgICk7XHJcbiAgICAgIHRoaXMuZWwubmF0aXZlRWxlbWVudC5zdHlsZS5zZXRQcm9wZXJ0eShcclxuICAgICAgICAnYmFja2dyb3VuZC1pbWFnZScsXHJcbiAgICAgICAgYGBcclxuICAgICAgKTtcclxuICAgICAgaWYgKHRoaXMuc2ltcG9CYWNrZ3JvdW5kPy5iYWNrZ3JvdW5kQW5pbWF0aW9uID09PSAnREFOQ0lOR19ET1RTJykge1xyXG4gICAgICAgIGlmICh0aGlzLmVsLm5hdGl2ZUVsZW1lbnQucXVlcnlTZWxlY3RvcigndmlkZW8nKSlcclxuICAgICAgICAgIHRoaXMuZWwubmF0aXZlRWxlbWVudC5yZW1vdmVDaGlsZCh0aGlzLmVsLm5hdGl2ZUVsZW1lbnQucXVlcnlTZWxlY3RvcigndmlkZW8nKSk7XHJcbiAgICAgICAgdGhpcy5lbC5uYXRpdmVFbGVtZW50LnN0eWxlLnNldFByb3BlcnR5KFxyXG4gICAgICAgICAgJ2JhY2tncm91bmQtaW1hZ2UnLFxyXG4gICAgICAgICAgYHVybCgnaHR0cHM6Ly9kMnl4MTVwbmNnbXU2My5jbG91ZGZyb250Lm5ldC9wcm9kLWltYWdlcy8xMTYwMjZjMTc0NzEyMjI5NjQwOEFydGJvYXJkMS5naWYnKWBcclxuICAgICAgICApO1xyXG4gICAgICB9XHJcbiAgICAgIGlmICh0aGlzLnNpbXBvQmFja2dyb3VuZD8uYmFja2dyb3VuZEFuaW1hdGlvbiA9PT0gJ1NDQVRURVJJTkdfRE9UUycpIHtcclxuICAgICAgICBpZiAodGhpcy5lbC5uYXRpdmVFbGVtZW50LnF1ZXJ5U2VsZWN0b3IoJ3ZpZGVvJykpXHJcbiAgICAgICAgICB0aGlzLmVsLm5hdGl2ZUVsZW1lbnQucmVtb3ZlQ2hpbGQodGhpcy5lbC5uYXRpdmVFbGVtZW50LnF1ZXJ5U2VsZWN0b3IoJ3ZpZGVvJykpO1xyXG4gICAgICAgIHRoaXMuZWwubmF0aXZlRWxlbWVudC5zdHlsZS5zZXRQcm9wZXJ0eShcclxuICAgICAgICAgICdiYWNrZ3JvdW5kLWltYWdlJyxcclxuICAgICAgICAgIGB1cmwoJ2h0dHBzOi8vZDJ5eDE1cG5jZ211NjMuY2xvdWRmcm9udC5uZXQvcHJvZC1pbWFnZXMvMjg3MzQ4YzE3NDcwNTE1NDAwODhXaGF0c0FwcFZpZGVvMjAyNS0wNS0xMmF0NS4xOS4xMVBNLWV6Z2lmLmNvbS12aWRlby10by1naWYtY29udmVydGVyICgxKS5naWYnKWBcclxuICAgICAgICApO1xyXG4gICAgICB9XHJcbiAgICAgIGlmICh0aGlzLnNpbXBvQmFja2dyb3VuZD8uYmFja2dyb3VuZEFuaW1hdGlvbiA9PT0gJ1dBVkVTJykge1xyXG4gICAgICAgIGlmICh0aGlzLmVsLm5hdGl2ZUVsZW1lbnQucXVlcnlTZWxlY3RvcigndmlkZW8nKSlcclxuICAgICAgICAgIHRoaXMuZWwubmF0aXZlRWxlbWVudC5yZW1vdmVDaGlsZCh0aGlzLmVsLm5hdGl2ZUVsZW1lbnQucXVlcnlTZWxlY3RvcigndmlkZW8nKSk7XHJcbiAgICAgICAgdGhpcy5lbC5uYXRpdmVFbGVtZW50LnN0eWxlLnNldFByb3BlcnR5KFxyXG4gICAgICAgICAgJ2JhY2tncm91bmQtaW1hZ2UnLFxyXG4gICAgICAgICAgYHVybCgnaHR0cHM6Ly9kMnl4MTVwbmNnbXU2My5jbG91ZGZyb250Lm5ldC9wcm9kLWltYWdlcy82MzA3NTNjMTc0NzQwMzIxNzIzOTY5MTM5OTdfTW90aW9uJTIwR3JhcGhpY3NfTW90aW9uJTIwR3JhcGhpY18zODQweDIxNjAlMjAoMSklMjAoMikuZ2lmJylgXHJcbiAgICAgICAgKTtcclxuICAgICAgfVxyXG4gICAgICBpZiAodGhpcy5zaW1wb0JhY2tncm91bmQ/LmJhY2tncm91bmRBbmltYXRpb24gPT09ICdBQlNUUkFDVCcpIHtcclxuICAgICAgICBpZiAodGhpcy5lbC5uYXRpdmVFbGVtZW50LnF1ZXJ5U2VsZWN0b3IoJ3ZpZGVvJykpXHJcbiAgICAgICAgICB0aGlzLmVsLm5hdGl2ZUVsZW1lbnQucmVtb3ZlQ2hpbGQodGhpcy5lbC5uYXRpdmVFbGVtZW50LnF1ZXJ5U2VsZWN0b3IoJ3ZpZGVvJykpO1xyXG4gICAgICAgIHRoaXMuZWwubmF0aXZlRWxlbWVudC5zdHlsZS5zZXRQcm9wZXJ0eShcclxuICAgICAgICAgICdiYWNrZ3JvdW5kLWltYWdlJyxcclxuICAgICAgICAgIGB1cmwoJ2h0dHBzOi8vZDJ5eDE1cG5jZ211NjMuY2xvdWRmcm9udC5uZXQvcHJvZC1pbWFnZXMvNTc3NTA3YzE3NDc0NjU2MzY5NTZSb3RhdGlvbiUyMGdpZi5naWYnKWBcclxuICAgICAgICApO1xyXG4gICAgICB9XHJcbiAgICAgIGlmICh0aGlzLnNpbXBvQmFja2dyb3VuZD8uYmFja2dyb3VuZEFuaW1hdGlvbiA9PT0gJ0RSRVcnKSB7XHJcbiAgICAgICAgaWYgKHRoaXMuZWwubmF0aXZlRWxlbWVudC5xdWVyeVNlbGVjdG9yKCd2aWRlbycpKVxyXG4gICAgICAgICAgdGhpcy5lbC5uYXRpdmVFbGVtZW50LnJlbW92ZUNoaWxkKHRoaXMuZWwubmF0aXZlRWxlbWVudC5xdWVyeVNlbGVjdG9yKCd2aWRlbycpKTtcclxuICAgICAgICB0aGlzLmVsLm5hdGl2ZUVsZW1lbnQuc3R5bGUuc2V0UHJvcGVydHkoXHJcbiAgICAgICAgICAnYmFja2dyb3VuZC1pbWFnZScsXHJcbiAgICAgICAgICBgdXJsKCdodHRwczovL2QyeXgxNXBuY2dtdTYzLmNsb3VkZnJvbnQubmV0L3Byb2QtaW1hZ2VzLzcyMTI0NGMxNzQ3NDY3Njk4MDA0YW5pbWF0ZS5naWYnKWBcclxuICAgICAgICApO1xyXG4gICAgICB9XHJcbiAgICAgIGlmICh0aGlzLnNpbXBvQmFja2dyb3VuZD8uYmFja2dyb3VuZEFuaW1hdGlvbiA9PT0gJ0RPVFMnKSB7XHJcbiAgICAgICAgaWYgKHRoaXMuZWwubmF0aXZlRWxlbWVudC5xdWVyeVNlbGVjdG9yKCd2aWRlbycpKVxyXG4gICAgICAgICAgdGhpcy5lbC5uYXRpdmVFbGVtZW50LnJlbW92ZUNoaWxkKHRoaXMuZWwubmF0aXZlRWxlbWVudC5xdWVyeVNlbGVjdG9yKCd2aWRlbycpKTtcclxuICAgICAgICB0aGlzLmVsLm5hdGl2ZUVsZW1lbnQuc3R5bGUuc2V0UHJvcGVydHkoXHJcbiAgICAgICAgICAnYmFja2dyb3VuZC1pbWFnZScsXHJcbiAgICAgICAgICBgdXJsKCdodHRwczovL2QyeXgxNXBuY2dtdTYzLmNsb3VkZnJvbnQubmV0L3Byb2QtaW1hZ2VzLzY1OTEzNGMxNzQ3NDY3ODAxMjQyRG90cyUyMCgxKS5naWYnKWBcclxuICAgICAgICApO1xyXG4gICAgICB9XHJcbiAgICAgIGlmICh0aGlzLnNpbXBvQmFja2dyb3VuZD8uYmFja2dyb3VuZEFuaW1hdGlvbikge1xyXG4gICAgICAgIHRoaXMuZWwubmF0aXZlRWxlbWVudC5zdHlsZS5zZXRQcm9wZXJ0eSgnYmFja2dyb3VuZC1zaXplJywgJ2NvdmVyJyk7XHJcbiAgICAgICAgdGhpcy5lbC5uYXRpdmVFbGVtZW50LnN0eWxlLnNldFByb3BlcnR5KCdiYWNrZ3JvdW5kLXJlcGVhdCcsICduby1yZXBlYXQnKTtcclxuICAgICAgICB0aGlzLmVsLm5hdGl2ZUVsZW1lbnQuc3R5bGUuc2V0UHJvcGVydHkoJ2JhY2tncm91bmQtcG9zaXRpb24nLCAnY2VudGVyJyk7XHJcbiAgICAgIH1cclxuICAgICAgcmV0dXJuO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgZ2V0VGV4dENvbG9yKGJnQ29sb3I6IHN0cmluZykge1xyXG4gICAgaWYgKGJnQ29sb3IpIHtcclxuICAgICAgY29uc3QgdGhyZXNob2xkID0gMTMwOyAvLyBBZGp1c3QgdGhpcyB0aHJlc2hvbGQgYXMgbmVlZGVkXHJcbiAgICAgIGNvbnN0IHIgPSBwYXJzZUludChiZ0NvbG9yLnNsaWNlKDEsIDMpLCAxNik7XHJcbiAgICAgIGNvbnN0IGcgPSBwYXJzZUludChiZ0NvbG9yLnNsaWNlKDMsIDUpLCAxNik7XHJcbiAgICAgIGNvbnN0IGIgPSBwYXJzZUludChiZ0NvbG9yLnNsaWNlKDUsIDcpLCAxNik7XHJcbiAgICAgIGNvbnN0IGJyaWdodG5lc3MgPSAociAqIDI5OSArIGcgKiA1ODcgKyBiICogMTE0KSAvIDEwMDA7XHJcblxyXG4gICAgICByZXR1cm4gYnJpZ2h0bmVzcyA+IHRocmVzaG9sZCA/ICcjMDAwMDAwJyA6ICcjZmZmZmZmJztcclxuICAgIH1cclxuICAgIHJldHVybiBcIiNmZmZmZmY7XCJcclxuICB9XHJcbn1cclxuIl19
|
|
187
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFja2dyb3VuZC1kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zaW1wby11aS9zcmMvbGliL2RpcmVjdGl2ZS9iYWNrZ3JvdW5kLWRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFjLEtBQUssRUFBK0MsTUFBTSxlQUFlLENBQUM7QUFJMUcsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0saUJBQWlCLENBQUM7OztBQU1wRCxNQUFNLE9BQU8sbUJBQW1CO0lBTTlCLFlBQ1UsRUFBYyxFQUNkLFlBQTJCO1FBRDNCLE9BQUUsR0FBRixFQUFFLENBQVk7UUFDZCxpQkFBWSxHQUFaLFlBQVksQ0FBZTtRQU5mLGdCQUFXLEdBQVksQ0FBQyxDQUFDO1FBTzdDLGlGQUFpRjtRQUNqRixJQUFJLENBQUMsRUFBRSxDQUFDLGFBQWEsQ0FBQyxLQUFLLENBQUMsV0FBVyxDQUFDLFVBQVUsRUFBRSxVQUFVLENBQUMsQ0FBQztRQUVoRSxJQUFJLElBQUksQ0FBQyxhQUFhLEVBQUUsQ0FBQztZQUN2QixJQUFJLENBQUMsYUFBYSxDQUFDLFdBQVcsRUFBRSxDQUFDO1FBQ25DLENBQUM7UUFFRCxJQUFJLENBQUMsYUFBYSxHQUFHLElBQUksQ0FBQyxZQUFZLENBQUMsMEJBQTBCLENBQUMsU0FBUyxDQUN6RSxDQUFDLEdBQVEsRUFBRSxFQUFFO1lBQ1gsSUFBSSxJQUFJLENBQUMsRUFBRSxDQUFDLGFBQWEsQ0FBQyxFQUFFLEtBQUssR0FBRyxDQUFDLEVBQUUsSUFBSSxHQUFHLENBQUMsaUJBQWlCLEVBQUUsQ0FBQztnQkFDakUsSUFBSSxHQUFHLENBQUMsSUFBSSxFQUFFLFNBQVMsSUFBSSxJQUFJLEVBQUUsV0FBVyxJQUFJLENBQUMsRUFBRSxDQUFDO29CQUNsRCxJQUFJLEdBQUcsQ0FBQyxJQUFJLEVBQUUsS0FBSyxFQUFFLFFBQVEsQ0FBQyxNQUFN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QyxHQUFHLEdBQUcsR0FBRyxDQUFDLEdBQUcsR0FBRyxDQUFDLEdBQUcsSUFBSSxDQUFDO1lBQ3hELE9BQU8sVUFBVSxHQUFHLFNBQVMsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUM7UUFDeEQsQ0FBQztRQUNELGdFQUFnRTtRQUNoRSxPQUFPLFNBQVMsQ0FBQztJQUNuQixDQUFDOytHQTNNVSxtQkFBbUI7bUdBQW5CLG1CQUFtQjs7NEZBQW5CLG1CQUFtQjtrQkFKL0IsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsbUJBQW1CO29CQUM3QixVQUFVLEVBQUUsSUFBSTtpQkFDakI7MkdBRTJCLGVBQWU7c0JBQXhDLEtBQUs7dUJBQUMsaUJBQWlCO2dCQUNGLFdBQVc7c0JBQWhDLEtBQUs7dUJBQUMsYUFBYSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERpcmVjdGl2ZSwgRWxlbWVudFJlZiwgSW5wdXQsIE9uQ2hhbmdlcywgT25EZXN0cm95LCBPbkluaXQsIFNpbXBsZUNoYW5nZXMgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgRXZlbnRzU2VydmljZSB9IGZyb20gJy4uL3NlcnZpY2VzL2V2ZW50cy5zZXJ2aWNlJztcclxuaW1wb3J0IHsgQmFja2dyb3VuZE1vZGVsIH0gZnJvbSAnLi4vc3R5bGVzL3N0eWxlLm1vZGVsJztcclxuaW1wb3J0IHsgQkFDS0dST1VORF9UWVBFIH0gZnJvbSAnLi4vc3R5bGVzL3R5cGVzJztcclxuaW1wb3J0IHsgR3JhZGllbnREaXJlY3Rpb24gfSBmcm9tICcuLi9zdHlsZXMvaW5kZXgnO1xyXG5cclxuQERpcmVjdGl2ZSh7XHJcbiAgc2VsZWN0b3I6ICdbc2ltcG9CYWNrZ3JvdW5kXScsXHJcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcclxufSlcclxuZXhwb3J0IGNsYXNzIEJhY2tncm91bmREaXJlY3RpdmUgaW1wbGVtZW50cyBPbkNoYW5nZXMsIE9uRGVzdHJveSB7XHJcbiAgQElucHV0KCdzaW1wb0JhY2tncm91bmQnKSBzaW1wb0JhY2tncm91bmQ/OiBCYWNrZ3JvdW5kTW9kZWw7XHJcbiAgQElucHV0KCdzY3JvbGxWYWx1ZScpIHNjcm9sbFZhbHVlPzogbnVtYmVyID0gMDtcclxuXHJcbiAgZXZlbnRFbW1pdHRlcjogYW55O1xyXG5cclxuICBjb25zdHJ1Y3RvcihcclxuICAgIHByaXZhdGUgZWw6IEVsZW1lbnRSZWYsXHJcbiAgICBwcml2YXRlIGV2ZW50U2VydmljZTogRXZlbnRzU2VydmljZSkge1xyXG4gICAgLy8gRW5zdXJlIHRoZSBob3N0IGVsZW1lbnQgaXMgcG9zaXRpb25lZCBzbyB0aGUgYWJzb2x1dGUgdmlkZW8gZmlsbHMgaXQgY29ycmVjdGx5XHJcbiAgICB0aGlzLmVsLm5hdGl2ZUVsZW1lbnQuc3R5bGUuc2V0UHJvcGVydHkoJ3Bvc2l0aW9uJywgJ3JlbGF0aXZlJyk7XHJcblxyXG4gICAgaWYgKHRoaXMuZXZlbnRFbW1pdHRlcikge1xyXG4gICAgICB0aGlzLmV2ZW50RW1taXR0ZXIudW5zdWJzY3JpYmUoKTtcclxuICAgIH1cclxuXHJcbiAgICB0aGlzLmV2ZW50RW1taXR0ZXIgPSB0aGlzLmV2ZW50U2VydmljZS5iYWNrZ3JvdW5kSW1hZ2VDaGFuZ2VDaGVjay5zdWJzY3JpYmUoXHJcbiAgICAgIChyZXM6IGFueSkgPT4ge1xyXG4gICAgICAgIGlmICh0aGlzLmVsLm5hdGl2ZUVsZW1lbnQuaWQgPT09IHJlcy5pZCB8fCByZXMuZ2xvYmFsVGhlbWVDaGFuZ2UpIHtcclxuICAgICAgICAgIGlmIChyZXMuZGF0YT8uc2hvd0ltYWdlICYmIHRoaXM/LnNjcm9sbFZhbHVlID09IDApIHtcclxuICAgICAgICAgICAgaWYgKHJlcy5kYXRhPy5pbWFnZT8uaW5jbHVkZXMoJy5tcDQnKSkge1xyXG4gICAgICAgICAgICAgIHRoaXMuYXBwbHlWaWRlbyhyZXMuZGF0YS5pbWFnZSk7XHJcbiAgICAgICAgICAgICAgcmV0dXJuO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIC8vIEl0J3MgYW4gaW1hZ2Ug4oCUIHJlbW92ZSBhbnkgZXhpc3RpbmcgdmlkZW9cclxuICAgICAgICAgICAgdGhpcy5yZW1vdmVWaWRlbygpO1xyXG4gICAgICAgICAgICB0aGlzLmVsLm5hdGl2ZUVsZW1lbnQuc3R5bGUuc2V0UHJvcGVydHkoXHJcbiAgICAgICAgICAgICAgJ2JhY2tncm91bmQtaW1hZ2UnLFxyXG4gICAgICAgICAgICAgIGB1cmwoJHtyZXMuZGF0YS5pbWFnZX0pYFxyXG4gICAgICAgICAgICApO1xyXG4gICAgICAgICAgICB0aGlzLmVsLm5hdGl2ZUVsZW1lbnQuc3R5bGUuc2V0UHJvcGVydHkoXHJcbiAgICAgICAgICAgICAgJ2JhY2tncm91bmQtcG9zaXRpb24nLFxyXG4gICAgICAgICAgICAgIGAke3Jlcy5kYXRhLnBvc2l0aW9uPy54fSUgJHtyZXMuZGF0YS5wb3NpdGlvbj8ueX0lYFxyXG4gICAgICAgICAgICApO1xyXG4gICAgICAgICAgICB0aGlzLmVsLm5hdGl2ZUVsZW1lbnQuc3R5bGUuc2V0UHJvcGVydHkoJ2JhY2tncm91bmQtcmVwZWF0JywgYG5vLXJlcGVhdGApO1xyXG4gICAgICAgICAgICB0aGlzLmVsLm5hdGl2ZUVsZW1lbnQuc3R5bGUuc2V0UHJvcGVydHkoJ2JhY2tncm91bmQtc2l6ZScsIGBjb3ZlcmApO1xyXG4gICAgICAgICAgICAvLyB0aGlzLmVsLm5hdGl2ZUVsZW1lbnQuc3R5bGUuc2V0UHJvcGVydHkoJ2NvbG9yJywgdGhpcy5nZXRUZXh0Q29sb3IocmVzLmRhdGE/LmNvbG9yKSk7XHJcbiAgICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICB0aGlzLnJlbW92ZVZpZGVvKCk7XHJcbiAgICAgICAgICAgIGlmICh0aGlzLnNpbXBvQmFja2dyb3VuZD8uYmFja2dyb3VuZFR5cGUgPT09ICgnR3JhZGllbnQnIGFzIEJBQ0tHUk9VTkRfVFlQRSkpIHtcclxuICAgICAgICAgICAgICBjb25zdCBkaXJlY3Rpb24gPSBHcmFkaWVudERpcmVjdGlvblt0aGlzLnNpbXBvQmFja2dyb3VuZC5iYWNrZ3JvdW5kR3JhZGllbnREaXJlY3Rpb24gYXMgdW5rbm93biBhcyBrZXlvZiB0eXBlb2YgR3JhZGllbnREaXJlY3Rpb24gfHwgR3JhZGllbnREaXJlY3Rpb24uRE9XTl07XHJcbiAgICAgICAgICAgICAgY29uc3QgZ3JhZGllbnRDb2xvciA9IGRpcmVjdGlvbiAhPSBHcmFkaWVudERpcmVjdGlvbi5ET1dOXHJcbiAgICAgICAgICAgICAgICA/IGBsaW5lYXItZ3JhZGllbnQoJHtkaXJlY3Rpb259LCR7dGhpcy5zaW1wb0JhY2tncm91bmQuY29sb3J9LCR7dGhpcy5zaW1wb0JhY2tncm91bmQuc2Vjb25kYXJ5Q29sb3J9KWBcclxuICAgICAgICAgICAgICAgIDogYGxpbmVhci1ncmFkaWVudCgke3RoaXMuc2ltcG9CYWNrZ3JvdW5kLmNvbG9yfSwke3RoaXMuc2ltcG9CYWNrZ3JvdW5kLnNlY29uZGFyeUNvbG9yfSlgO1xyXG4gICAgICAgICAgICAgIHRoaXMuZWwubmF0aXZlRWxlbWVudC5zdHlsZS5zZXRQcm9wZXJ0eSgnYmFja2dyb3VuZCcsIGdyYWRpZW50Q29sb3IpO1xyXG4gICAgICAgICAgICAgIC8vIHRoaXMuZWwubmF0aXZlRWxlbWVudC5zdHlsZS5zZXRQcm9wZXJ0eSgnY29sb3InLCB0aGlzLmdldFRleHRDb2xvcih0aGlzLnNpbXBvQmFja2dyb3VuZC5jb2xvcikpO1xyXG4gICAgICAgICAgICAgIHJldHVybjtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgdGhpcy5lbC5uYXRpdmVFbGVtZW50LnN0eWxlLnNldFByb3BlcnR5KCdiYWNrZ3JvdW5kLWNvbG9yJywgcmVzLmRhdGE/LmNvbG9yKTtcclxuICAgICAgICAgICAgdGhpcy5lbC5uYXRpdmVFbGVtZW50LnN0eWxlLnNldFByb3BlcnR5KCdiYWNrZ3JvdW5kLWltYWdlJywgYGApO1xyXG4gICAgICAgICAgICB0aGlzLmVsLm5hdGl2ZUVsZW1lbnQuc3R5bGUuc2V0UHJvcGVydHkoJ2JhY2tncm91bmQtc2l6ZScsICdjb3ZlcicpO1xyXG4gICAgICAgICAgICB0aGlzLmVsLm5hdGl2ZUVsZW1lbnQuc3R5bGUuc2V0UHJvcGVydHkoJ2JhY2tncm91bmQtcmVwZWF0JywgJ25vLXJlcGVhdCcpO1xyXG4gICAgICAgICAgICB0aGlzLmVsLm5hdGl2ZUVsZW1lbnQuc3R5bGUuc2V0UHJvcGVydHkoJ2JhY2tncm91bmQtcG9zaXRpb24nLCAnY2VudGVyJyk7XHJcbiAgICAgICAgICAgIC8vIHRoaXMuZWwubmF0aXZlRWxlbWVudC5zdHlsZS5zZXRQcm9wZXJ0eSgnY29sb3InLCB0aGlzLmdldFRleHRDb2xvcihyZXMuZGF0YT8uY29sb3IpKTtcclxuXHJcbiAgICAgICAgICAgIC8vIEFwcGx5IGFuaW1hdGlvbiBiYWNrZ3JvdW5kcyAob25seSBmb3Igbm9uLWltYWdlL25vbi12aWRlbyBiYWNrZ3JvdW5kcylcclxuICAgICAgICAgICAgdGhpcy5hcHBseUFuaW1hdGlvbkJhY2tncm91bmQodGhpcy5zaW1wb0JhY2tncm91bmQ/LmJhY2tncm91bmRBbmltYXRpb24pO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgKTtcclxuICB9XHJcblxyXG4gIG5nT25EZXN0cm95KCkge1xyXG4gICAgaWYgKHRoaXMuZXZlbnRFbW1pdHRlcikge1xyXG4gICAgICB0aGlzLmV2ZW50RW1taXR0ZXIudW5zdWJzY3JpYmUoKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIG5nT25DaGFuZ2VzKGNoYW5nZTogU2ltcGxlQ2hhbmdlcyk6IHZvaWQge1xyXG4gICAgdGhpcy5lbC5uYXRpdmVFbGVtZW50LnN0eWxlLnNldFByb3BlcnR5KCdwb3NpdGlvbicsICdyZWxhdGl2ZScpO1xyXG4gICAgLy8gdGhpcy5lbC5uYXRpdmVFbGVtZW50LnN0eWxlLnNldFByb3BlcnR5KFxyXG4gICAgLy8gICAnY29sb3InLFxyXG4gICAgLy8gICB0aGlzLmdldFRleHRDb2xvcih0aGlzLnNpbXBvQmFja2dyb3VuZD8uY29sb3IgPyB0aGlzLnNpbXBvQmFja2dyb3VuZD8uY29sb3IgOiAnI2ZmZmZmZicpXHJcbiAgICAvLyApO1xyXG5cclxuICAgIGlmICh0aGlzLnNpbXBvQmFja2dyb3VuZD8uc2hvd0ltYWdlKSB7XHJcbiAgICAgIGlmICh0aGlzLnNpbXBvQmFja2dyb3VuZD8uaW1hZ2U/LmluY2x1ZGVzKCcubXA0JykpIHtcclxuICAgICAgICAvLyBIYW5kbGUgdmlkZW8gYmFja2dyb3VuZFxyXG4gICAgICAgIHRoaXMuYXBwbHlWaWRlbyh0aGlzLnNpbXBvQmFja2dyb3VuZC5pbWFnZSk7XHJcbiAgICAgICAgcmV0dXJuO1xyXG4gICAgICB9XHJcbiAgICAgIC8vIEl0J3MgYW4gaW1hZ2Ug4oCUIHJlbW92ZSBhbnkgZXhpc3RpbmcgdmlkZW9cclxuICAgICAgdGhpcy5yZW1vdmVWaWRlbygpO1xyXG4gICAgICB0aGlzLmVsLm5hdGl2ZUVsZW1lbnQuc3R5bGUuc2V0UHJvcGVydHkoXHJcbiAgICAgICAgJ2JhY2tncm91bmQtaW1hZ2UnLFxyXG4gICAgICAgIGB1cmwoJHt0aGlzLnNpbXBvQmFja2dyb3VuZC5pbWFnZX0pYFxyXG4gICAgICApO1xyXG4gICAgICB0aGlzLmVsLm5hdGl2ZUVsZW1lbnQuc3R5bGUuc2V0UHJvcGVydHkoXHJcbiAgICAgICAgJ2JhY2tncm91bmQtcG9zaXRpb24nLFxyXG4gICAgICAgIGAke3RoaXMuc2ltcG9CYWNrZ3JvdW5kLnBvc2l0aW9uPy54fSUgJHt0aGlzLnNpbXBvQmFja2dyb3VuZC5wb3NpdGlvbj8ueX0lYFxyXG4gICAgICApO1xyXG4gICAgICB0aGlzLmVsLm5hdGl2ZUVsZW1lbnQuc3R5bGUuc2V0UHJvcGVydHkoJ2JhY2tncm91bmQtcmVwZWF0JywgYG5vLXJlcGVhdGApO1xyXG4gICAgICB0aGlzLmVsLm5hdGl2ZUVsZW1lbnQuc3R5bGUuc2V0UHJvcGVydHkoJ2JhY2tncm91bmQtc2l6ZScsIGBjb3ZlcmApO1xyXG4gICAgICAvLyB0aGlzLmVsLm5hdGl2ZUVsZW1lbnQuc3R5bGUuc2V0UHJvcGVydHkoXHJcbiAgICAgIC8vICAgJ2NvbG9yJyxcclxuICAgICAgLy8gICB0aGlzLmdldFRleHRDb2xvcih0aGlzLnNpbXBvQmFja2dyb3VuZD8uY29sb3IgPyB0aGlzLnNpbXBvQmFja2dyb3VuZD8uY29sb3IgOiAnI2ZmZmZmZicpXHJcbiAgICAgIC8vICk7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICB0aGlzLnJlbW92ZVZpZGVvKCk7XHJcbiAgICAgIGlmICh0aGlzLnNpbXBvQmFja2dyb3VuZD8uYmFja2dyb3VuZFR5cGUgPT09ICgnR3JhZGllbnQnIGFzIEJBQ0tHUk9VTkRfVFlQRSkpIHtcclxuICAgICAgICBjb25zdCBkaXJlY3Rpb24gPSBHcmFkaWVudERpcmVjdGlvblt0aGlzLnNpbXBvQmFja2dyb3VuZC5iYWNrZ3JvdW5kR3JhZGllbnREaXJlY3Rpb24gYXMgdW5rbm93biBhcyBrZXlvZiB0eXBlb2YgR3JhZGllbnREaXJlY3Rpb24gfHwgR3JhZGllbnREaXJlY3Rpb24uRE9XTl07XHJcbiAgICAgICAgY29uc3QgZ3JhZGllbnRDb2xvciA9IGRpcmVjdGlvbiAhPSBHcmFkaWVudERpcmVjdGlvbi5ET1dOXHJcbiAgICAgICAgICA/IGBsaW5lYXItZ3JhZGllbnQoJHtkaXJlY3Rpb259LCR7dGhpcy5zaW1wb0JhY2tncm91bmQuY29sb3J9LCR7dGhpcy5zaW1wb0JhY2tncm91bmQuc2Vjb25kYXJ5Q29sb3J9KWBcclxuICAgICAgICAgIDogYGxpbmVhci1ncmFkaWVudCgke3RoaXMuc2ltcG9CYWNrZ3JvdW5kLmNvbG9yfSwke3RoaXMuc2ltcG9CYWNrZ3JvdW5kLnNlY29uZGFyeUNvbG9yfSlgO1xyXG4gICAgICAgIHRoaXMuZWwubmF0aXZlRWxlbWVudC5zdHlsZS5zZXRQcm9wZXJ0eSgnYmFja2dyb3VuZCcsIGdyYWRpZW50Q29sb3IpO1xyXG4gICAgICAgIC8vIHRoaXMuZWwubmF0aXZlRWxlbWVudC5zdHlsZS5zZXRQcm9wZXJ0eSgnY29sb3InLCB0aGlzLmdldFRleHRDb2xvcih0aGlzLnNpbXBvQmFja2dyb3VuZC5jb2xvcikpO1xyXG4gICAgICAgIHJldHVybjtcclxuICAgICAgfVxyXG5cclxuICAgICAgdGhpcy5lbC5uYXRpdmVFbGVtZW50LnN0eWxlLnNldFByb3BlcnR5KCdiYWNrZ3JvdW5kLWNvbG9yJywgdGhpcy5zaW1wb0JhY2tncm91bmQ/LmNvbG9yKTtcclxuICAgICAgdGhpcy5lbC5uYXRpdmVFbGVtZW50LnN0eWxlLnNldFByb3BlcnR5KCdiYWNrZ3JvdW5kLWltYWdlJywgYGApO1xyXG5cclxuICAgICAgLy8gQXBwbHkgYW5pbWF0aW9uIGJhY2tncm91bmRzIChvbmx5IGZvciBub24taW1hZ2Uvbm9uLXZpZGVvIGJhY2tncm91bmRzKVxyXG4gICAgICB0aGlzLmFwcGx5QW5pbWF0aW9uQmFja2dyb3VuZCh0aGlzLnNpbXBvQmFja2dyb3VuZD8uYmFja2dyb3VuZEFuaW1hdGlvbik7XHJcblxyXG4gICAgICBpZiAodGhpcy5zaW1wb0JhY2tncm91bmQ/LmJhY2tncm91bmRBbmltYXRpb24gJiYgdGhpcy5zaW1wb0JhY2tncm91bmQ/LmJhY2tncm91bmRBbmltYXRpb24gIT09ICdOT05FJykge1xyXG4gICAgICAgIHRoaXMuZWwubmF0aXZlRWxlbWVudC5zdHlsZS5zZXRQcm9wZXJ0eSgnYmFja2dyb3VuZC1zaXplJywgJ2NvdmVyJyk7XHJcbiAgICAgICAgdGhpcy5lbC5uYXRpdmVFbGVtZW50LnN0eWxlLnNldFByb3BlcnR5KCdiYWNrZ3JvdW5kLXJlcGVhdCcsICduby1yZXBlYXQnKTtcclxuICAgICAgICB0aGlzLmVsLm5hdGl2ZUVsZW1lbnQuc3R5bGUuc2V0UHJvcGVydHkoJ2JhY2tncm91bmQtcG9zaXRpb24nLCAnY2VudGVyJyk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8vIOKUgOKUgOKUgCBIZWxwZXJzIOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgFxyXG5cclxuICAvKiogUmV0dXJucyB0aGUgdW5pcXVlIHZpZGVvIGVsZW1lbnQgaWQgZm9yIHRoaXMgaG9zdCBlbGVtZW50ICovXHJcbiAgcHJpdmF0ZSBnZXQgdmlkZW9FbGVtZW50SWQoKTogc3RyaW5nIHtcclxuICAgIHJldHVybiBgc2ltcG8tYmctdmlkZW8tJHt0aGlzLmVsPy5uYXRpdmVFbGVtZW50Py5pZH1gO1xyXG4gIH1cclxuXHJcbiAgLyoqIFJlbW92ZXMgYW55IGV4aXN0aW5nIGJhY2tncm91bmQgdmlkZW8gZWxlbWVudCBmcm9tIHRoZSBob3N0ICovXHJcbiAgcHJpdmF0ZSByZW1vdmVWaWRlbygpOiB2b2lkIHtcclxuICAgIGNvbnN0IGV4aXN0aW5nID0gdGhpcy5lbC5uYXRpdmVFbGVtZW50LnF1ZXJ5U2VsZWN0b3IoYCMke3RoaXMudmlkZW9FbGVtZW50SWR9YCk7XHJcbiAgICBpZiAoZXhpc3RpbmcpIHtcclxuICAgICAgZXhpc3RpbmcucGF1c2U/LigpO1xyXG4gICAgICB0aGlzLmVsLm5hdGl2ZUVsZW1lbnQucmVtb3ZlQ2hpbGQoZXhpc3RpbmcpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLyoqIENyZWF0ZXMgYW5kIGFwcGVuZHMgYSBmdWxsLWNvdmVyIGF1dG9wbGF5IHZpZGVvIGFzIHRoZSBiYWNrZ3JvdW5kICovXHJcbiAgcHJpdmF0ZSBhcHBseVZpZGVvKHNyYzogc3RyaW5nKTogdm9pZCB7XHJcbiAgICAvLyBSZW1vdmUgc3RhbGUgdmlkZW8gZmlyc3QgKHByZXZlbnRzIGR1cGxpY2F0ZXMpXHJcbiAgICB0aGlzLnJlbW92ZVZpZGVvKCk7XHJcblxyXG4gICAgLy8gQ2xlYXIgYW55IGJhY2tncm91bmQtaW1hZ2UgdGhhdCBtYXkgc3RpbGwgYmUgc2V0XHJcbiAgICB0aGlzLmVsLm5hdGl2ZUVsZW1lbnQuc3R5bGUuc2V0UHJvcGVydHkoJ2JhY2tncm91bmQtaW1hZ2UnLCAnJyk7XHJcbiAgICB0aGlzLmVsLm5hdGl2ZUVsZW1lbnQuc3R5bGUuc2V0UHJvcGVydHkoJ2JhY2tncm91bmQtY29sb3InLCAndHJhbnNwYXJlbnQnKTtcclxuXHJcbiAgICBjb25zdCB2aWRlb0VsZW1lbnQgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCd2aWRlbycpO1xyXG4gICAgdmlkZW9FbGVtZW50LmlkID0gdGhpcy52aWRlb0VsZW1lbnRJZDtcclxuICAgIHZpZGVvRWxlbWVudC5zcmMgPSBzcmM7XHJcbiAgICB2aWRlb0VsZW1lbnQuYXV0b3BsYXkgPSB0cnVlO1xyXG4gICAgdmlkZW9FbGVtZW50Lmxvb3AgPSB0cnVlO1xyXG4gICAgdmlkZW9FbGVtZW50Lm11dGVkID0gdHJ1ZTtcclxuICAgIHZpZGVvRWxlbWVudC5wbGF5c0lubGluZSA9IHRydWU7XHJcblxyXG4gICAgLy8gU3R5bGUgc28gdmlkZW8gZmlsbHMgdGhlIGhvc3QgY29udGFpbmVyXHJcbiAgICB2aWRlb0VsZW1lbnQuc3R5bGUucG9zaXRpb24gPSAnYWJzb2x1dGUnO1xyXG4gICAgdmlkZW9FbGVtZW50LnN0eWxlLnRvcCA9ICcwJztcclxuICAgIHZpZGVvRWxlbWVudC5zdHlsZS5sZWZ0ID0gJzAnO1xyXG4gICAgdmlkZW9FbGVtZW50LnN0eWxlLnJpZ2h0ID0gJzAnO1xyXG4gICAgdmlkZW9FbGVtZW50LnN0eWxlLmJvdHRvbSA9ICcwJztcclxuICAgIHZpZGVvRWxlbWVudC5zdHlsZS53aWR0aCA9ICcxMDAlJztcclxuICAgIHZpZGVvRWxlbWVudC5zdHlsZS5oZWlnaHQgPSAnMTAwJSc7XHJcbiAgICB2aWRlb0VsZW1lbnQuc3R5bGUuekluZGV4ID0gJy0xJztcclxuICAgIHZpZGVvRWxlbWVudC5zdHlsZS5vYmplY3RGaXQgPSAnY292ZXInO1xyXG4gICAgdmlkZW9FbGVtZW50LnN0eWxlLnBvaW50ZXJFdmVudHMgPSAnbm9uZSc7XHJcblxyXG4gICAgdGhpcy5lbC5uYXRpdmVFbGVtZW50LmFwcGVuZENoaWxkKHZpZGVvRWxlbWVudCk7XHJcblxyXG4gICAgLy8gU29tZSBicm93c2VycyByZXF1aXJlIGFuIGV4cGxpY2l0IHBsYXkoKSBjYWxsIGFmdGVyIGF1dG9wbGF5IGF0dHJpYnV0ZVxyXG4gICAgdmlkZW9FbGVtZW50LnBsYXkoKS5jYXRjaCgoKSA9PiB7IC8qIGF1dG9wbGF5IGJsb2NrZWQg4oCTIHNpbGVudCBmYWlsICovIH0pO1xyXG4gIH1cclxuXHJcbiAgLyoqIFNldHMgYSBHSUYgYW5pbWF0aW9uIGFzIHRoZSBiYWNrZ3JvdW5kIGltYWdlICovXHJcbiAgcHJpdmF0ZSBhcHBseUFuaW1hdGlvbkJhY2tncm91bmQoYW5pbWF0aW9uOiBzdHJpbmcgfCB1bmRlZmluZWQpOiB2b2lkIHtcclxuICAgIGNvbnN0IGFuaW1hdGlvbk1hcDogUmVjb3JkPHN0cmluZywgc3RyaW5nPiA9IHtcclxuICAgICAgREFOQ0lOR19ET1RTOiBgdXJsKCdodHRwczovL2QyeXgxNXBuY2dtdTYzLmNsb3VkZnJvbnQubmV0L3Byb2QtaW1hZ2VzLzExNjAyNmMxNzQ3MTIyMjk2NDA4QXJ0Ym9hcmQxLmdpZicpYCxcclxuICAgICAgU0NBVFRFUklOR19ET1RTOiBgdXJsKCdodHRwczovL2QyeXgxNXBuY2dtdTYzLmNsb3VkZnJvbnQubmV0L3Byb2QtaW1hZ2VzLzI4NzM0OGMxNzQ3MDUxNTQwMDg4V2hhdHNBcHBWaWRlbzIwMjUtMDUtMTJhdDUuMTkuMTFQTS1lemdpZi5jb20tdmlkZW8tdG8tZ2lmLWNvbnZlcnRlciAoMSkuZ2lmJylgLFxyXG4gICAgICBXQVZFUzogYHVybCgnaHR0cHM6Ly9kMnl4MTVwbmNnbXU2My5jbG91ZGZyb250Lm5ldC9wcm9kLWltYWdlcy82MzA3NTNjMTc0NzQwMzIxNzIzOTY5MTM5OTdfTW90aW9uJTIwR3JhcGhpY3NfTW90aW9uJTIwR3JhcGhpY18zODQweDIxNjAlMjAoMSklMjAoMikuZ2lmJylgLFxyXG4gICAgICBBQlNUUkFDVDogYHVybCgnaHR0cHM6Ly9kMnl4MTVwbmNnbXU2My5jbG91ZGZyb250Lm5ldC9wcm9kLWltYWdlcy81Nzc1MDdjMTc0NzQ2NTYzNjk1NlJvdGF0aW9uJTIwZ2lmLmdpZicpYCxcclxuICAgICAgRFJFVzogYHVybCgnaHR0cHM6Ly9kMnl4MTVwbmNnbXU2My5jbG91ZGZyb250Lm5ldC9wcm9kLWltYWdlcy83MjEyNDRjMTc0NzQ2NzY5ODAwNGFuaW1hdGUuZ2lmJylgLFxyXG4gICAgICBET1RTOiBgdXJsKCdodHRwczovL2QyeXgxNXBuY2dtdTYzLmNsb3VkZnJvbnQubmV0L3Byb2QtaW1hZ2VzLzY1OTEzNGMxNzQ3NDY3ODAxMjQyRG90cyUyMCgxKS5naWYnKWAsXHJcbiAgICB9O1xyXG5cclxuICAgIGlmIChhbmltYXRpb24gJiYgYW5pbWF0aW9uTWFwW2FuaW1hdGlvbl0pIHtcclxuICAgICAgdGhpcy5lbC5uYXRpdmVFbGVtZW50LnN0eWxlLnNldFByb3BlcnR5KCdiYWNrZ3JvdW5kLWltYWdlJywgYW5pbWF0aW9uTWFwW2FuaW1hdGlvbl0pO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgZ2V0VGV4dENvbG9yKGJnQ29sb3I6IHN0cmluZykge1xyXG4gICAgaWYgKGJnQ29sb3IgJiYgL14jWzAtOUEtRmEtZl17Nn0kLy50ZXN0KGJnQ29sb3IpKSB7XHJcbiAgICAgIGNvbnN0IHRocmVzaG9sZCA9IDEzMDtcclxuICAgICAgY29uc3QgciA9IHBhcnNlSW50KGJnQ29sb3Iuc2xpY2UoMSwgMyksIDE2KTtcclxuICAgICAgY29uc3QgZyA9IHBhcnNlSW50KGJnQ29sb3Iuc2xpY2UoMywgNSksIDE2KTtcclxuICAgICAgY29uc3QgYiA9IHBhcnNlSW50KGJnQ29sb3Iuc2xpY2UoNSwgNyksIDE2KTtcclxuICAgICAgY29uc3QgYnJpZ2h0bmVzcyA9IChyICogMjk5ICsgZyAqIDU4NyArIGIgKiAxMTQpIC8gMTAwMDtcclxuICAgICAgcmV0dXJuIGJyaWdodG5lc3MgPiB0aHJlc2hvbGQgPyAnIzAwMDAwMCcgOiAnI2ZmZmZmZic7XHJcbiAgICB9XHJcbiAgICAvLyBGb3IgZ3JhZGllbnRzLCByZ2JhKCksIG9yIGFueXRoaW5nIG5vbi1oZXgg4oCUIGRlZmF1bHQgdG8gd2hpdGVcclxuICAgIHJldHVybiAnI2ZmZmZmZic7XHJcbiAgfVxyXG59XHJcbiJdfQ==
|
|
@@ -42,4 +42,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
|
|
|
42
42
|
type: Input,
|
|
43
43
|
args: ["simpoBlurContent"]
|
|
44
44
|
}] } });
|
|
45
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
45
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmx1ci1jb250ZW50LmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3NpbXBvLXVpL3NyYy9saWIvZGlyZWN0aXZlL2JsdXItY29udGVudC5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBYyxLQUFLLEVBQStDLE1BQU0sZUFBZSxDQUFDO0FBQzFHLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQzs7QUFNL0MsTUFBTSxPQUFPLHlCQUF5QjtJQUdsQyxZQUNZLEVBQWM7UUFBZCxPQUFFLEdBQUYsRUFBRSxDQUFZO0lBQ3ZCLENBQUM7SUFFSixXQUFXLENBQUMsT0FBc0I7UUFDOUIsSUFBSSxJQUFJLENBQUMsZ0JBQWdCO1lBQ3JCLElBQUksQ0FBQyxFQUFFLENBQUMsYUFBYSxDQUFDLEtBQUssQ0FBQyxXQUFXLENBQUMsUUFBUSxFQUFFLE9BQU8sR0FBRSxJQUFJLENBQUMsZUFBZSxHQUFFLEdBQUcsQ0FBQyxDQUFDO0lBQzlGLENBQUM7SUFDRCxXQUFXO0lBRVgsQ0FBQztJQUNELFFBQVE7SUFFUixDQUFDO0lBRUQsSUFBSSxlQUFlO1FBQ2YsUUFBTyxJQUFJLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQztZQUMzQixLQUFLLE9BQU87Z0JBQ1IsT0FBTyxZQUFZLENBQUMsS0FBSyxDQUFDO1lBQzlCLEtBQUssVUFBVTtnQkFDWCxPQUFPLFlBQVksQ0FBQyxRQUFRLENBQUM7WUFDakMsS0FBSyxNQUFNO2dCQUNQLE9BQU8sWUFBWSxDQUFDLElBQUksQ0FBQztZQUM3QixLQUFLLFFBQVE7Z0JBQ1QsT0FBTyxZQUFZLENBQUMsTUFBTSxDQUFDO1lBQy9CLEtBQUssYUFBYTtnQkFDZCxPQUFPLFlBQVksQ0FBQyxXQUFXLENBQUM7WUFDcEM7Z0JBQ0ksT0FBTyxZQUFZLENBQUMsS0FBSyxDQUFDO1FBQ2xDLENBQUM7SUFDTCxDQUFDOytHQWpDUSx5QkFBeUI7bUdBQXpCLHlCQUF5Qjs7NEZBQXpCLHlCQUF5QjtrQkFKckMsU0FBUzttQkFBQztvQkFDUCxRQUFRLEVBQUUsb0JBQW9CO29CQUM5QixVQUFVLEVBQUUsSUFBSTtpQkFDbkI7K0VBRzhCLGdCQUFnQjtzQkFBMUMsS0FBSzt1QkFBQyxrQkFBa0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEaXJlY3RpdmUsIEVsZW1lbnRSZWYsIElucHV0LCBPbkNoYW5nZXMsIE9uRGVzdHJveSwgT25Jbml0LCBTaW1wbGVDaGFuZ2VzIH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcbmltcG9ydCB7IE92ZXJsYXlWYWx1ZSB9IGZyb20gXCIuLi9zdHlsZXMvaW5kZXhcIjtcblxuQERpcmVjdGl2ZSh7XG4gICAgc2VsZWN0b3I6ICdbc2ltcG9CbHVyQ29udGVudF0nLFxuICAgIHN0YW5kYWxvbmU6IHRydWUsXG59KVxuZXhwb3J0IGNsYXNzIFNpbXBvQmx1ckNvbnRlbnREaXJlY3RpdmUgaW1wbGVtZW50cyBPbkNoYW5nZXMsIE9uSW5pdCwgT25EZXN0cm95IHtcblxuICAgIEBJbnB1dChcInNpbXBvQmx1ckNvbnRlbnRcIikgc2ltcG9CbHVyQ29udGVudD86IGtleW9mIHR5cGVvZiBPdmVybGF5VmFsdWU7XG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIHByaXZhdGUgZWw6IEVsZW1lbnRSZWZcbiAgICApIHt9XG5cbiAgICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKTogdm9pZCB7XG4gICAgICAgIGlmICh0aGlzLnNpbXBvQmx1ckNvbnRlbnQpXG4gICAgICAgICAgICB0aGlzLmVsLm5hdGl2ZUVsZW1lbnQuc3R5bGUuc2V0UHJvcGVydHkoJ2ZpbHRlcicsICdibHVyKCcrIHRoaXMuZ2V0T3ZlcmxheVZhbHVlICsnKScpO1xuICAgIH1cbiAgICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcblxuICAgIH1cbiAgICBuZ09uSW5pdCgpOiB2b2lkIHtcblxuICAgIH1cblxuICAgIGdldCBnZXRPdmVybGF5VmFsdWUoKSB7XG4gICAgICAgIHN3aXRjaCh0aGlzLnNpbXBvQmx1ckNvbnRlbnQpIHtcbiAgICAgICAgICAgIGNhc2UgXCJMSUdIVFwiOlxuICAgICAgICAgICAgICAgIHJldHVybiBPdmVybGF5VmFsdWUuTElHSFQ7XG4gICAgICAgICAgICBjYXNlIFwiTU9ERVJBVEVcIjpcbiAgICAgICAgICAgICAgICByZXR1cm4gT3ZlcmxheVZhbHVlLk1PREVSQVRFO1xuICAgICAgICAgICAgY2FzZSBcIk5PTkVcIjpcbiAgICAgICAgICAgICAgICByZXR1cm4gT3ZlcmxheVZhbHVlLk5PTkU7XG4gICAgICAgICAgICBjYXNlIFwiU1RST05HXCI6XG4gICAgICAgICAgICAgICAgcmV0dXJuIE92ZXJsYXlWYWx1ZS5TVFJPTkc7XG4gICAgICAgICAgICBjYXNlIFwiVkVSWV9TVFJPTkdcIjpcbiAgICAgICAgICAgICAgICByZXR1cm4gT3ZlcmxheVZhbHVlLlZFUllfU1RST05HO1xuICAgICAgICAgICAgZGVmYXVsdDpcbiAgICAgICAgICAgICAgICByZXR1cm4gT3ZlcmxheVZhbHVlLkxJR0hUO1xuICAgICAgICB9XG4gICAgfVxufVxuIl19
|
|
@@ -30,4 +30,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
|
|
|
30
30
|
type: Input,
|
|
31
31
|
args: ['simpoBorderless']
|
|
32
32
|
}] } });
|
|
33
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
33
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYm9yZGVybGVzc0ltYWdlLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3NpbXBvLXVpL3NyYy9saWIvZGlyZWN0aXZlL2JvcmRlcmxlc3NJbWFnZS5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBYyxLQUFLLEVBQTRCLE1BQU0sZUFBZSxDQUFDOztBQVN2RixNQUFNLE9BQU8sd0JBQXdCO0lBR25DLFlBQW9CLEVBQWM7UUFBZCxPQUFFLEdBQUYsRUFBRSxDQUFZO0lBQUksQ0FBQztJQUV2QyxXQUFXO1FBQ1QsSUFBSSxJQUFJLENBQUMsZUFBZSxFQUFFLEtBQUssSUFBSSxNQUFNLEVBQUUsQ0FBQztZQUMxQyxJQUFJLENBQUMsRUFBRSxDQUFDLGFBQWEsQ0FBQyxLQUFLLENBQUMsV0FBVyxDQUFDLE9BQU8sRUFBRSxHQUFHLENBQUMsQ0FBQztRQUN4RCxDQUFDO2FBQU0sSUFBSSxJQUFJLENBQUMsZUFBZSxFQUFFLEtBQUssSUFBSSxPQUFPLEVBQUUsQ0FBQztZQUNsRCxJQUFJLENBQUMsRUFBRSxDQUFDLGFBQWEsQ0FBQyxLQUFLLENBQUMsV0FBVyxDQUFDLE9BQU8sRUFBRSxHQUFHLENBQUMsQ0FBQztRQUN4RCxDQUFDO2FBQU0sQ0FBQztZQUNOLElBQUksQ0FBQyxFQUFFLENBQUMsYUFBYSxDQUFDLEtBQUssQ0FBQyxjQUFjLENBQUMsT0FBTyxDQUFDLENBQUM7UUFFdEQsQ0FBQztJQUNILENBQUM7SUFFRCxXQUFXO0lBQ1gsQ0FBQzsrR0FqQlUsd0JBQXdCO21HQUF4Qix3QkFBd0I7OzRGQUF4Qix3QkFBd0I7a0JBSnBDLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLG1CQUFtQjtvQkFDN0IsVUFBVSxFQUFFLElBQUk7aUJBQ2pCOytFQUUyQixlQUFlO3NCQUF4QyxLQUFLO3VCQUFDLGlCQUFpQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERpcmVjdGl2ZSwgRWxlbWVudFJlZiwgSW5wdXQsIE9uQ2hhbmdlcywgU2ltcGxlQ2hhbmdlcyB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRXZlbnRzU2VydmljZSB9IGZyb20gJy4uL3NlcnZpY2VzL2V2ZW50cy5zZXJ2aWNlJztcbmltcG9ydCB7IFN1YnNjcmlwdGlvbiB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgUG9zaXRpb25MYXlvdXRNb2RhbCB9IGZyb20gJy4uL3N0eWxlcy9zdHlsZS5tb2RlbCc7XG5cbkBEaXJlY3RpdmUoe1xuICBzZWxlY3RvcjogJ1tzaW1wb0JvcmRlcmxlc3NdJyxcbiAgc3RhbmRhbG9uZTogdHJ1ZVxufSlcbmV4cG9ydCBjbGFzcyBTaW1wb0JvcmRlcmxlc3NEaXJlY3RpdmUgaW1wbGVtZW50cyBPbkNoYW5nZXMge1xuICBASW5wdXQoJ3NpbXBvQm9yZGVybGVzcycpIHNpbXBvQm9yZGVybGVzcz86IFBvc2l0aW9uTGF5b3V0TW9kYWw7XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBlbDogRWxlbWVudFJlZikgeyB9XG5cbiAgbmdPbkNoYW5nZXMoKSB7XG4gICAgaWYgKHRoaXMuc2ltcG9Cb3JkZXJsZXNzPy52YWx1ZSA9PSBcImxlZnRcIikge1xuICAgICAgdGhpcy5lbC5uYXRpdmVFbGVtZW50LnN0eWxlLnNldFByb3BlcnR5KCdvcmRlcicsIFwiMFwiKTtcbiAgICB9IGVsc2UgaWYgKHRoaXMuc2ltcG9Cb3JkZXJsZXNzPy52YWx1ZSA9PSBcInJpZ2h0XCIpIHtcbiAgICAgIHRoaXMuZWwubmF0aXZlRWxlbWVudC5zdHlsZS5zZXRQcm9wZXJ0eSgnb3JkZXInLCBcIjFcIik7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuZWwubmF0aXZlRWxlbWVudC5zdHlsZS5yZW1vdmVQcm9wZXJ0eSgnb3JkZXInKTtcblxuICAgIH1cbiAgfVxuXG4gIG5nT25EZXN0cm95KCkge1xuICB9XG5cbn1cbiJdfQ==
|
|
@@ -94,4 +94,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
|
|
|
94
94
|
}], buttonId: [{
|
|
95
95
|
type: Input
|
|
96
96
|
}] } });
|
|
97
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
97
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnV0dG9uLWVkaXRvci5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zaW1wby11aS9zcmMvbGliL2RpcmVjdGl2ZS9idXR0b24tZWRpdG9yLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUE0QixLQUFLLEVBQWEsTUFBTSxlQUFlLENBQUM7QUFHdEYsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sK0NBQStDLENBQUM7QUFDcEYsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLEVBQUUsU0FBUyxFQUFnQixNQUFNLE1BQU0sQ0FBQzs7O0FBTXJFLE1BQU0sT0FBTyxxQkFBcUI7SUFhaEMsWUFBb0IsRUFBYyxFQUFVLFNBQW9CO1FBQTVDLE9BQUUsR0FBRixFQUFFLENBQVk7UUFBVSxjQUFTLEdBQVQsU0FBUyxDQUFXO1FBWnZELG9CQUFlLEdBQVksS0FBSyxDQUFDO1FBSWpDLGNBQVMsR0FBWSxFQUFFLENBQUM7UUFDeEIsYUFBUSxHQUFXLEVBQUUsQ0FBQztRQUtkLHFCQUFnQixHQUFHLG1CQUFtQixDQUFDO0lBRVksQ0FBQztJQUVyRSxRQUFRO1FBQ04sSUFBSSxJQUFJLENBQUMsZUFBZSxFQUFFLENBQUM7WUFDekIsSUFBSSxDQUFDLEVBQUUsQ0FBQyxhQUFhLENBQUMsS0FBSyxDQUFDLE1BQU0sR0FBRyxJQUFJLENBQUMsV0FBVyxFQUFFLElBQUksSUFBSSxTQUFTLENBQUMsQ0FBQyxDQUFDLGFBQWEsSUFBSSxDQUFDLFdBQVcsRUFBRSxVQUFVLEVBQUUsQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDO1lBQ2pJLElBQUksQ0FBQyxtQkFBbUIsRUFBRSxDQUFDO1FBQzdCLENBQUM7YUFBTSxDQUFDO1lBQ04sSUFBSSxDQUFDLEVBQUUsQ0FBQyxhQUFhLENBQUMsS0FBSyxDQUFDLE1BQU0sR0FBRyxJQUFJLENBQUMsV0FBVyxFQUFF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TSxHQUFHLEVBQUUsQ0FBQztJQUMxQyxDQUFDO0lBRUQsV0FBVztRQUNULElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQztJQUNqQixDQUFDOytHQW5GVSxxQkFBcUI7bUdBQXJCLHFCQUFxQjs7NEZBQXJCLHFCQUFxQjtrQkFKakMsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUseUJBQXlCO29CQUNuQyxVQUFVLEVBQUUsSUFBSTtpQkFDakI7dUdBRVUsZUFBZTtzQkFBdkIsS0FBSztnQkFDRyxVQUFVO3NCQUFsQixLQUFLO2dCQUNHLFdBQVc7c0JBQW5CLEtBQUs7Z0JBQ0csY0FBYztzQkFBdEIsS0FBSztnQkFDRyxTQUFTO3NCQUFqQixLQUFLO2dCQUNHLFFBQVE7c0JBQWhCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEaXJlY3RpdmUsIEVsZW1lbnRSZWYsIEhvc3RMaXN0ZW5lciwgSW5wdXQsIFJlbmRlcmVyMiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQmFja2dyb3VuZE1vZGVsLCBCdXR0b24sIEJ1dHRvblN0eWxlTW9kZWwgfSBmcm9tICcuLi9zdHlsZXMvc3R5bGUubW9kZWwnO1xuaW1wb3J0IHsgTWF0RGlhbG9nIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvZGlhbG9nJztcbmltcG9ydCB7IExpbmtFZGl0b3JDb21wb25lbnQgfSBmcm9tICcuLi9lbGVtZW50cy9saW5rLWVkaXRvci9saW5rLWVkaXRvci5jb21wb25lbnQnO1xuaW1wb3J0IHsgZGVib3VuY2VUaW1lLCBmaWx0ZXIsIGZyb21FdmVudCwgU3Vic2NyaXB0aW9uIH0gZnJvbSAncnhqcyc7XG5cbkBEaXJlY3RpdmUoe1xuICBzZWxlY3RvcjogJ2J1dHRvblthcHBCdXR0b25FZGl0b3JdJyxcbiAgc3RhbmRhbG9uZTogdHJ1ZVxufSlcbmV4cG9ydCBjbGFzcyBCdXR0b25FZGl0b3JEaXJlY3RpdmUge1xuICBASW5wdXQoKSBhcHBCdXR0b25FZGl0b3I6IGJvb2xlYW4gPSBmYWxzZTtcbiAgQElucHV0KCkgYnV0dG9uRGF0YT86IEJ1dHRvbjtcbiAgQElucHV0KCkgYnV0dG9uU3R5bGU/OiBCdXR0b25TdHlsZU1vZGVsO1xuICBASW5wdXQoKSBiYWNrZ3JvdW5kSW5mbz86IEJhY2tncm91bmRNb2RlbDtcbiAgQElucHV0KCkgc2VjdGlvbklkPzogc3RyaW5nID0gJyc7XG4gIEBJbnB1dCgpIGJ1dHRvbklkOiBzdHJpbmcgPSAnJztcblxuICBwcml2YXRlIG1vdXNlRW50ZXJTdWI/OiBTdWJzY3JpcHRpb247XG4gIHByaXZhdGUgbW91c2VMZWF2ZVN1Yj86IFN1YnNjcmlwdGlvbjtcbiAgcHJpdmF0ZSBjbGlja1N1Yj86IFN1YnNjcmlwdGlvbjtcbiAgcHJpdmF0ZSByZWFkb25seSBISUdITElHSFRfQk9SREVSID0gJzNweCBzb2xpZCAjMjgzRTkwJztcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGVsOiBFbGVtZW50UmVmLCBwcml2YXRlIG1hdERpYWxvZzogTWF0RGlhbG9nKSB7IH1cblxuICBuZ09uSW5pdCgpIHtcbiAgICBpZiAodGhpcy5hcHBCdXR0b25FZGl0b3IpIHtcbiAgICAgIHRoaXMuZWwubmF0aXZlRWxlbWVudC5zdHlsZS5ib3JkZXIgPSB0aGlzLmJ1dHRvblN0eWxlPy50eXBlID09ICdPdXRsaW5lJyA/IGAycHggc29saWQgJHt0aGlzLmJ1dHRvblN0eWxlPy5iYWNrZ3JvdW5kfWAgOiAndW5zZXQnO1xuICAgICAgdGhpcy5zZXR1cEV2ZW50TGlzdGVuZXJzKCk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuZWwubmF0aXZlRWxlbWVudC5zdHlsZS5ib3JkZXIgPSB0aGlzLmJ1dHRvblN0eWxlPy50eXBlID09ICdPdXRsaW5lJyA/IGAycHggc29saWQgJHt0aGlzLmJ1dHRvblN0eWxlPy5iYWNrZ3JvdW5kfWAgOiAndW5zZXQnO1xuICAgIH1cbiAgfVxuXG4gIG5nT25DaGFuZ2VzKCkge1xuICAgIHRoaXMuY2xlYW51cCgpO1xuICAgIGlmICh0aGlzLmFwcEJ1dHRvbkVkaXRvcikge1xuICAgICAgdGhpcy5zZXR1cEV2ZW50TGlzdGVuZXJzKCk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBzZXR1cEV2ZW50TGlzdGVuZXJzKCkge1xuICAgIHRoaXMubW91c2VFbnRlclN1YiA9IGZyb21FdmVudCh0aGlzLmVsLm5hdGl2ZUVsZW1lbnQsICdtb3VzZWVudGVyJylcbiAgICAgIC5waXBlKGRlYm91bmNlVGltZSgxMDApKVxuICAgICAgLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgIHRoaXMuZWwubmF0aXZlRWxlbWVudC5zdHlsZS5ib3JkZXIgPSB0aGlzLkhJR0hMSUdIVF9CT1JERVI7XG4gICAgICB9KTtcblxuICAgIHRoaXMubW91c2VMZWF2ZVN1YiA9IGZyb21FdmVudCh0aGlzLmVsLm5hdGl2ZUVsZW1lbnQsICdtb3VzZWxlYXZlJylcbiAgICAgIC5waXBlKGRlYm91bmNlVGltZSgxMDApKVxuICAgICAgLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgIHRoaXMuZWwubmF0aXZlRWxlbWVudC5zdHlsZS5ib3JkZXIgPSB0aGlzLmJ1dHRvblN0eWxlPy50eXBlID09ICdPdXRsaW5lJyA/IGAycHggc29saWQgJHt0aGlzLmJ1dHRvblN0eWxlPy5iYWNrZ3JvdW5kfWAgOiAndW5zZXQnO1xuICAgICAgfSk7XG4gICAgdGhpcy5jbGlja1N1YiA9IGZyb21FdmVudCh0aGlzLmVsLm5hdGl2ZUVsZW1lbnQsICdjbGljaycpXG4gICAgICAucGlwZShcbiAgICAgICAgZmlsdGVyKCgpID0+ICF0aGlzLm1hdERpYWxvZy5vcGVuRGlhbG9ncy5sZW5ndGgpXG4gICAgICApXG4gICAgICAuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgdGhpcy5tYXREaWFsb2cub3BlbihMaW5rRWRpdG9yQ29tcG9uZW50LCB7XG4gICAgICAgICAgcGFuZWxDbGFzczogJ2xpbmstZWRpdG9yJyxcbiAgICAgICAgICBkYXRhOiB7XG4gICAgICAgICAgICBsaW5rRGF0YTogdGhpcy5idXR0b25EYXRhID8/IHt9LFxuICAgICAgICAgICAgdHlwZTogXCJCVVRUT05cIixcbiAgICAgICAgICAgIGJ1dHRvblN0eWxlOiB0aGlzLmJ1dHRvblN0eWxlID8/IHt9LFxuICAgICAgICAgICAgYmFja2dyb3VuZEluZm86IHRoaXMuYmFja2dyb3VuZEluZm8gPz8ge30sXG4gICAgICAgICAgICBidXR0b25JZDogKHRoaXMuc2VjdGlvbklkICsgdGhpcy5idXR0b25JZCkgLFxuICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgICB9KTtcbiAgfVxuXG4gIHByaXZhdGUgY2xlYW51cCgpIHtcbiAgICBpZiAodGhpcy5tb3VzZUVudGVyU3ViKSB7XG4gICAgICB0aGlzLm1vdXNlRW50ZXJTdWIudW5zdWJzY3JpYmUoKTtcbiAgICAgIHRoaXMubW91c2VFbnRlclN1YiA9IHVuZGVmaW5lZDtcbiAgICB9XG5cbiAgICBpZiAodGhpcy5tb3VzZUxlYXZlU3ViKSB7XG4gICAgICB0aGlzLm1vdXNlTGVhdmVTdWIudW5zdWJzY3JpYmUoKTtcbiAgICAgIHRoaXMubW91c2VMZWF2ZVN1YiA9IHVuZGVmaW5lZDtcbiAgICB9XG5cbiAgICBpZiAodGhpcy5jbGlja1N1Yikge1xuICAgICAgdGhpcy5jbGlja1N1Yi51bnN1YnNjcmliZSgpO1xuICAgICAgdGhpcy5jbGlja1N1YiA9IHVuZGVmaW5lZDtcbiAgICB9XG5cbiAgICAvLyBSZXNldCBzdHlsZXMgd2hlbiBjbGVhbmluZyB1cFxuICAgIHRoaXMuZWwubmF0aXZlRWxlbWVudC5zdHlsZS5ib3JkZXIgPSAnJztcbiAgfVxuXG4gIG5nT25EZXN0cm95KCkge1xuICAgIHRoaXMuY2xlYW51cCgpO1xuICB9XG5cbn1cbiJdfQ==
|
|
@@ -58,4 +58,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
|
|
|
58
58
|
type: Input,
|
|
59
59
|
args: ['simpoColor']
|
|
60
60
|
}] } });
|
|
61
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
61
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29sb3IuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc2ltcG8tdWkvc3JjL2xpYi9kaXJlY3RpdmUvY29sb3IuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQWMsS0FBSyxFQUE0QixNQUFNLGVBQWUsQ0FBQzs7O0FBUXZGLE1BQU0sT0FBTyxjQUFjO0lBR3pCLFlBQW9CLEVBQWMsRUFDeEIsWUFBMkI7UUFEakIsT0FBRSxHQUFGLEVBQUUsQ0FBWTtRQUN4QixpQkFBWSxHQUFaLFlBQVksQ0FBZTtJQUNuQyxDQUFDO0lBRUgsV0FBVztRQUNULElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQztRQUNsQixJQUFJLENBQUMsa0JBQWtCLEVBQUUsQ0FBQztJQUM1QixDQUFDO0lBSUQsV0FBVztRQUNULElBQUksQ0FBQyxpQkFBaUIsRUFBRSxXQUFXLEVBQUUsQ0FBQTtJQUN2QyxDQUFDO0lBRUQsVUFBVTtRQUNSLElBQUcsSUFBSSxDQUFDLE9BQU8sRUFBQyxDQUFDO1lBQ2YsSUFBSSxDQUFDLEVBQUUsQ0FBQyxhQUFhLENBQUMsS0FBSyxDQUFDLFdBQVcsQ0FBQyxPQUFPLEVBQUUsSUFBSSxDQUFDLFlBQVksRUFBRSxDQUFDLENBQUM7UUFDeEUsQ0FBQztJQUNILENBQUM7SUFFRCxrQkFBa0I7UUFDaEIsSUFBSSxDQUFDLGlCQUFpQixHQUFHLElBQUksQ0FBQyxZQUFZLENBQUMsMEJBQTBCLENBQUMsU0FBUyxDQUFDLENBQUMsR0FBUSxFQUFFLEVBQUU7WUFDM0YsSUFBRyxHQUFHLENBQUMsRUFBRSxLQUFLLElBQUksQ0FBQyxFQUFFLENBQUMsYUFBYSxDQUFDLEVBQUUsRUFBQyxDQUFDO2dCQUN0QyxJQUFJLENBQUMsT0FBTyxHQUFHLEdBQUcsRUFBRSxJQUFJLEVBQUUsS0FBSyxDQUFBO2dCQUMvQixJQUFJLENBQUMsVUFBVSxFQUFFLENBQUE7WUFDbkIsQ0FBQztRQUNILENBQUMsQ0FBQyxDQUFBO0lBQ0osQ0FBQztJQUVELFlBQVk7UUFDVixJQUFJLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQztZQUVqQiwyQkFBMkI7WUFDM0IsSUFBSSxJQUFJLENBQUMsT0FBTyxDQUFDLE1BQU0sR0FBRyxDQUFDLEVBQUUsQ0FBQztnQkFDNUIsSUFBSSxVQUFVLEdBQVcsR0FBRyxDQUFDO2dCQUM3QixLQUFLLElBQUksQ0FBQyxHQUFDLENBQUMsRUFBRSxDQUFDLEdBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxNQUFNLEVBQUUsQ0FBQyxFQUFFLEVBQUUsQ0FBQztvQkFDekMsVUFBVSxJQUFJLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLEdBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsQ0FBQztnQkFDaEQsQ0FBQztnQkFDRCxJQUFJLENBQUMsT0FBTyxHQUFHLFVBQVUsQ0FBQztZQUM1QixDQUFDO1lBQ0QsTUFBTSxTQUFTLEdBQUcsR0FBRyxDQUFDLENBQUMsa0NBQWtDO1lBQ3pELE1BQU0sQ0FBQyxHQUFHLFFBQVEsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUM7WUFDakQsTUFBTSxDQUFDLEdBQUcsUUFBUSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQztZQUNqRCxNQUFNLENBQUMsR0FBRyxRQUFRLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDO1lBQ2pELE1BQU0sVUFBVSxHQUFHLENBQUMsQ0FBQyxHQUFHLEdBQUcsR0FBRyxDQUFDLEdBQUcsR0FBRyxHQUFHLENBQUMsR0FBRyxHQUFHLENBQUMsR0FBRyxJQUFJLENBQUM7WUFFeEQsT0FBTyxVQUFVLEdBQUcsU0FBUyxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQztRQUN4RCxDQUFDO1FBQ0QsT0FBTyxVQUFVLENBQUE7SUFDbkIsQ0FBQzsrR0FyRFUsY0FBYzttR0FBZCxjQUFjOzs0RkFBZCxjQUFjO2tCQUoxQixTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxjQUFjO29CQUN4QixVQUFVLEVBQUUsSUFBSTtpQkFDakI7MkdBRXNCLE9BQU87c0JBQTNCLEtBQUs7dUJBQUMsWUFBWSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERpcmVjdGl2ZSwgRWxlbWVudFJlZiwgSW5wdXQsIE9uQ2hhbmdlcywgU2ltcGxlQ2hhbmdlcyB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRXZlbnRzU2VydmljZSB9IGZyb20gJy4uL3NlcnZpY2VzL2V2ZW50cy5zZXJ2aWNlJztcbmltcG9ydCB7IFN1YnNjcmlwdGlvbiB9IGZyb20gJ3J4anMnO1xuXG5ARGlyZWN0aXZlKHtcbiAgc2VsZWN0b3I6ICdbc2ltcG9Db2xvcl0nLFxuICBzdGFuZGFsb25lOiB0cnVlXG59KVxuZXhwb3J0IGNsYXNzIENvbG9yRGlyZWN0aXZlIGltcGxlbWVudHMgT25DaGFuZ2Vze1xuICBASW5wdXQoJ3NpbXBvQ29sb3InKSBiZ0NvbG9yPzogc3RyaW5nO1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgZWw6IEVsZW1lbnRSZWYsXG4gICAgcHJpdmF0ZSBldmVudFNlcnZpY2U6IEV2ZW50c1NlcnZpY2UpIHtcbiAgICB9XG5cbiAgbmdPbkNoYW5nZXMoKXtcbiAgICB0aGlzLmFwcGx5Q29sb3IoKTtcbiAgICB0aGlzLmJnQ29sb3JDaGFuZ2VDaGVjaygpO1xuICB9XG5cbiAgY29sb3JTdWJzY3JpcHRpb24/OiBTdWJzY3JpcHRpb247XG5cbiAgbmdPbkRlc3Ryb3koKXtcbiAgICB0aGlzLmNvbG9yU3Vic2NyaXB0aW9uPy51bnN1YnNjcmliZSgpXG4gIH1cblxuICBhcHBseUNvbG9yKCl7XG4gICAgaWYodGhpcy5iZ0NvbG9yKXtcbiAgICAgIHRoaXMuZWwubmF0aXZlRWxlbWVudC5zdHlsZS5zZXRQcm9wZXJ0eSgnY29sb3InLCB0aGlzLmdldFRleHRDb2xvcigpKTtcbiAgICB9XG4gIH1cblxuICBiZ0NvbG9yQ2hhbmdlQ2hlY2soKXtcbiAgICB0aGlzLmNvbG9yU3Vic2NyaXB0aW9uID0gdGhpcy5ldmVudFNlcnZpY2UuYmFja2dyb3VuZEltYWdlQ2hhbmdlQ2hlY2suc3Vic2NyaWJlKChyZXM6IGFueSkgPT4ge1xuICAgICAgaWYocmVzLmlkID09PSB0aGlzLmVsLm5hdGl2ZUVsZW1lbnQuaWQpe1xuICAgICAgICB0aGlzLmJnQ29sb3IgPSByZXM/LmRhdGE/LmNvbG9yXG4gICAgICAgIHRoaXMuYXBwbHlDb2xvcigpXG4gICAgICB9XG4gICAgfSlcbiAgfVxuXG4gIGdldFRleHRDb2xvcigpIHtcbiAgICBpZiAodGhpcy5iZ0NvbG9yKSB7XG5cbiAgICAgIC8vIGZvciAzIGNoYXJhY3RlciBoZXggY29kZVxuICAgICAgaWYgKHRoaXMuYmdDb2xvci5sZW5ndGggPCA2KSB7XG4gICAgICAgIGxldCBuZXdCZ0NvbG9yOiBzdHJpbmcgPSBcIiNcIjtcbiAgICAgICAgZm9yIChsZXQgaT0xOyBpPHRoaXMuYmdDb2xvci5sZW5ndGg7IGkrKykge1xuICAgICAgICAgIG5ld0JnQ29sb3IgKz0gdGhpcy5iZ0NvbG9yW2ldK3RoaXMuYmdDb2xvcltpXTtcbiAgICAgICAgfVxuICAgICAgICB0aGlzLmJnQ29sb3IgPSBuZXdCZ0NvbG9yO1xuICAgICAgfVxuICAgICAgY29uc3QgdGhyZXNob2xkID0gMTMwOyAvLyBBZGp1c3QgdGhpcyB0aHJlc2hvbGQgYXMgbmVlZGVkXG4gICAgICBjb25zdCByID0gcGFyc2VJbnQodGhpcy5iZ0NvbG9yLnNsaWNlKDEsIDMpLCAxNik7XG4gICAgICBjb25zdCBnID0gcGFyc2VJbnQodGhpcy5iZ0NvbG9yLnNsaWNlKDMsIDUpLCAxNik7XG4gICAgICBjb25zdCBiID0gcGFyc2VJbnQodGhpcy5iZ0NvbG9yLnNsaWNlKDUsIDcpLCAxNik7XG4gICAgICBjb25zdCBicmlnaHRuZXNzID0gKHIgKiAyOTkgKyBnICogNTg3ICsgYiAqIDExNCkgLyAxMDAwO1xuXG4gICAgICByZXR1cm4gYnJpZ2h0bmVzcyA+IHRocmVzaG9sZCA/ICcjMDAwMDAwJyA6ICcjZmZmZmZmJztcbiAgICB9XG4gICAgcmV0dXJuIFwiI2ZmZmZmZjtcIlxuICB9XG59XG4iXX0=
|