simpo-component-library 3.6.890 → 3.6.893

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.
Files changed (161) hide show
  1. package/README.md +24 -24
  2. package/esm2022/lib/components/delete-hover-element/delete-hover-element.component.mjs +3 -3
  3. package/esm2022/lib/components/document/document.component.mjs +3 -3
  4. package/esm2022/lib/components/hover-elements/hover-elements.component.mjs +6 -4
  5. package/esm2022/lib/components/image-loading/image-loading.component.mjs +3 -3
  6. package/esm2022/lib/components/payment-details/payment-details.component.mjs +3 -3
  7. package/esm2022/lib/constants/business.constant.mjs +1 -1
  8. package/esm2022/lib/directive/alignment.directive.mjs +1 -1
  9. package/esm2022/lib/directive/animation-directive.mjs +7 -2
  10. package/esm2022/lib/directive/background-directive.mjs +4 -2
  11. package/esm2022/lib/directive/blur-content.directive.mjs +1 -1
  12. package/esm2022/lib/directive/borderlessImage.directive.mjs +1 -1
  13. package/esm2022/lib/directive/color.directive.mjs +1 -1
  14. package/esm2022/lib/directive/column-directive.directive.mjs +1 -1
  15. package/esm2022/lib/directive/container-alignment.directive.mjs +1 -1
  16. package/esm2022/lib/directive/container-fir.directive.mjs +1 -1
  17. package/esm2022/lib/directive/content-title-spacing.directive.mjs +1 -1
  18. package/esm2022/lib/directive/contenteditable.directive.mjs +1 -1
  19. package/esm2022/lib/directive/corner-directive.mjs +1 -1
  20. package/esm2022/lib/directive/height.directive.mjs +1 -1
  21. package/esm2022/lib/directive/hover-animation.directive.mjs +1 -1
  22. package/esm2022/lib/directive/hoverborder.directive.mjs +1 -1
  23. package/esm2022/lib/directive/icon-directive.directive.mjs +1 -1
  24. package/esm2022/lib/directive/image-container.directive.mjs +1 -1
  25. package/esm2022/lib/directive/letters-only.directive.mjs +1 -1
  26. package/esm2022/lib/directive/numbers-only.directive.mjs +1 -1
  27. package/esm2022/lib/directive/position-layout-directive.directive.mjs +1 -1
  28. package/esm2022/lib/directive/set-dynamic-background.directive.mjs +1 -1
  29. package/esm2022/lib/directive/spacing-horizontal.directive.mjs +1 -1
  30. package/esm2022/lib/directive/spacing.directive.mjs +1 -1
  31. package/esm2022/lib/directive/sticky-directive.mjs +1 -1
  32. package/esm2022/lib/directive/text-background-directive.directive.mjs +1 -1
  33. package/esm2022/lib/directive/text-size.directive.mjs +1 -1
  34. package/esm2022/lib/directive/translate-onhover.directive.mjs +1 -1
  35. package/esm2022/lib/directive/wrap-containers.directive.mjs +1 -1
  36. package/esm2022/lib/ecommerce/sections/address/address.component.mjs +1 -1
  37. package/esm2022/lib/ecommerce/sections/authenticate-user/authenticate-user.component.mjs +3 -3
  38. package/esm2022/lib/ecommerce/sections/authentication-required/authentication-required.component.mjs +2 -2
  39. package/esm2022/lib/ecommerce/sections/checkout/checkout.component.mjs +3 -3
  40. package/esm2022/lib/ecommerce/sections/checkout/checkout.modal.mjs +1 -1
  41. package/esm2022/lib/ecommerce/sections/customer-review/customer-review.component.mjs +3 -3
  42. package/esm2022/lib/ecommerce/sections/customer-review/customer-review.model.mjs +1 -1
  43. package/esm2022/lib/ecommerce/sections/enrollment-form/enrollment-form.component.mjs +3 -3
  44. package/esm2022/lib/ecommerce/sections/enrollment-form/enrollment-form.model.mjs +1 -1
  45. package/esm2022/lib/ecommerce/sections/item-varient/item-varient.component.mjs +3 -3
  46. package/esm2022/lib/ecommerce/sections/new-collection/new-collection.component.mjs +1 -1
  47. package/esm2022/lib/ecommerce/sections/new-collection/new-collection.modal.mjs +1 -1
  48. package/esm2022/lib/ecommerce/sections/order-details/order-details.component.mjs +2 -2
  49. package/esm2022/lib/ecommerce/sections/pagnination/pagnination.component.mjs +3 -3
  50. package/esm2022/lib/ecommerce/sections/passbook-transactions/passbook-transactions.component.mjs +3 -3
  51. package/esm2022/lib/ecommerce/sections/product-category-list/product-category-list.component.mjs +3 -3
  52. package/esm2022/lib/ecommerce/sections/product-category-list/product-category-list.model.mjs +1 -1
  53. package/esm2022/lib/ecommerce/sections/product-list/product-list.modal.mjs +1 -1
  54. package/esm2022/lib/ecommerce/sections/returns-calculator/returns-calculator.component.mjs +1 -1
  55. package/esm2022/lib/ecommerce/sections/returns-calculator/returns-calculator.model.mjs +1 -1
  56. package/esm2022/lib/ecommerce/sections/scheme-details/scheme-details.component.mjs +5 -5
  57. package/esm2022/lib/ecommerce/sections/scheme-selection/scheme-selection.component.mjs +3 -3
  58. package/esm2022/lib/ecommerce/sections/schemes/schemes.component.mjs +2 -2
  59. package/esm2022/lib/ecommerce/sections/schemes/schemes.component.model.mjs +1 -1
  60. package/esm2022/lib/ecommerce/sections/store-list/store-list.component.mjs +3 -3
  61. package/esm2022/lib/ecommerce/sections/store-list/store-list.modal.mjs +1 -1
  62. package/esm2022/lib/ecommerce/sections/store-page/store-page.component.mjs +3 -3
  63. package/esm2022/lib/ecommerce/sections/store-page/store-page.model.mjs +1 -1
  64. package/esm2022/lib/ecommerce/sections/user-basic-info/user-basic-info.component.mjs +3 -3
  65. package/esm2022/lib/ecommerce/sections/user-profile/user-profile.modal.mjs +1 -1
  66. package/esm2022/lib/ecommerce/sections/verify-payment/verify-payment.component.mjs +3 -3
  67. package/esm2022/lib/ecommerce/sections/verify-payment/verify-payment.model.mjs +1 -1
  68. package/esm2022/lib/ecommerce/styles/BaseCollection.modal.mjs +1 -1
  69. package/esm2022/lib/ecommerce/styles/Collection.modal.mjs +1 -1
  70. package/esm2022/lib/ecommerce/styles/PincodeLocation.model.mjs +1 -1
  71. package/esm2022/lib/ecommerce/styles/PincodeLocationInter.model.mjs +1 -1
  72. package/esm2022/lib/ecommerce/styles/cart.modal.mjs +1 -1
  73. package/esm2022/lib/ecommerce/styles/category.modal.mjs +1 -1
  74. package/esm2022/lib/ecommerce/styles/order.modal.mjs +1 -1
  75. package/esm2022/lib/ecommerce/styles/review.modal.mjs +1 -1
  76. package/esm2022/lib/ecommerce/styles/user.modal.mjs +1 -1
  77. package/esm2022/lib/elements/address-list/address-list.component.mjs +3 -3
  78. package/esm2022/lib/elements/below-image-card/below-image-card.component.mjs +3 -3
  79. package/esm2022/lib/elements/button/button.component.mjs +3 -3
  80. package/esm2022/lib/elements/button/button.model.mjs +1 -1
  81. package/esm2022/lib/elements/card-skeleton-loader/card-skeleton-loader.component.mjs +3 -3
  82. package/esm2022/lib/elements/heading-element/heading-element.component.mjs +3 -3
  83. package/esm2022/lib/elements/index.mjs +1 -1
  84. package/esm2022/lib/elements/list-home-appointment/list-home-appointment.component.mjs +3 -3
  85. package/esm2022/lib/elements/media-selector/media-selector.component.mjs +1 -1
  86. package/esm2022/lib/elements/portfolio/portfolio.component.mjs +3 -3
  87. package/esm2022/lib/elements/property/property.component.mjs +3 -3
  88. package/esm2022/lib/elements/svg-divider/svg-divider.component.mjs +3 -3
  89. package/esm2022/lib/elements/text/text.component.mjs +3 -3
  90. package/esm2022/lib/elements/text-editor/text-editor.component.mjs +3 -3
  91. package/esm2022/lib/pipes/amount.pipe.mjs +1 -1
  92. package/esm2022/lib/sections/add-new-section/add-new-section.component.mjs +3 -3
  93. package/esm2022/lib/sections/appointment-form/appointment-booking/appointment-booking/appointment-booking.component.mjs +12 -3
  94. package/esm2022/lib/sections/appointment-form/appointment-form.component.mjs +3 -3
  95. package/esm2022/lib/sections/appointment-form/appointment-form.model.mjs +1 -1
  96. package/esm2022/lib/sections/banner-carousel/banner-carousel.component.mjs +39 -38
  97. package/esm2022/lib/sections/banner-carousel/banner-carousel.model.mjs +1 -1
  98. package/esm2022/lib/sections/banner-grid-section/banner-grid-section.component.mjs +1 -1
  99. package/esm2022/lib/sections/blog-list/blog-list.component.mjs +3 -3
  100. package/esm2022/lib/sections/blog-list/blog-list.model.mjs +1 -1
  101. package/esm2022/lib/sections/choose-us-section/choose-us-section.component.mjs +1 -1
  102. package/esm2022/lib/sections/choose-us-section/choose-us-section.model.mjs +1 -1
  103. package/esm2022/lib/sections/faq-section/faq-section.modal.mjs +1 -1
  104. package/esm2022/lib/sections/features-section/features-section.model.mjs +1 -1
  105. package/esm2022/lib/sections/header-section/header-section.component.mjs +6 -2
  106. package/esm2022/lib/sections/header-text/header-text.model.mjs +1 -1
  107. package/esm2022/lib/sections/image-carousel-section/image-carousel.model.mjs +1 -1
  108. package/esm2022/lib/sections/image-grid-section/image-grid-section.component.mjs +1 -1
  109. package/esm2022/lib/sections/image-section/image-section.component.mjs +1 -1
  110. package/esm2022/lib/sections/image-section/image-section.model.mjs +1 -1
  111. package/esm2022/lib/sections/location-section/location-section.component.mjs +1 -1
  112. package/esm2022/lib/sections/location-section/location-section.modal.mjs +1 -1
  113. package/esm2022/lib/sections/logo-showcase/logo-showcase.modal.mjs +1 -1
  114. package/esm2022/lib/sections/moving-text/moving-text.component.mjs +3 -3
  115. package/esm2022/lib/sections/moving-text/moving-text.modal.mjs +1 -1
  116. package/esm2022/lib/sections/new-services/new-services.component.mjs +1 -1
  117. package/esm2022/lib/sections/new-services/new-services.model.mjs +1 -1
  118. package/esm2022/lib/sections/new-testimonials/new-testimonials.model.mjs +1 -1
  119. package/esm2022/lib/sections/news-letter-component/news-letter-component.component.mjs +1 -1
  120. package/esm2022/lib/sections/news-letter-component/news-letter.modal.mjs +1 -1
  121. package/esm2022/lib/sections/pricing-section/pricing-section.modal.mjs +1 -1
  122. package/esm2022/lib/sections/process-modern/process-modern.component.mjs +1 -1
  123. package/esm2022/lib/sections/process-modern/process-modern.model.mjs +1 -1
  124. package/esm2022/lib/sections/process-section/process-section.modal.mjs +1 -1
  125. package/esm2022/lib/sections/property-component/property-component.component.mjs +3 -3
  126. package/esm2022/lib/sections/property-component/property-component.modal.mjs +1 -1
  127. package/esm2022/lib/sections/property-list/property-list.component.mjs +3 -3
  128. package/esm2022/lib/sections/property-list/property-list.modal.mjs +1 -1
  129. package/esm2022/lib/sections/recent-blog-post-section/recent-blog-post-section.component.mjs +1 -1
  130. package/esm2022/lib/sections/recent-blog-post-section/recent-blog-post-section.model.mjs +1 -1
  131. package/esm2022/lib/sections/registration-form/registration-form.component.mjs +3 -3
  132. package/esm2022/lib/sections/registration-form/registrationForm.model.mjs +1 -1
  133. package/esm2022/lib/sections/scheme-detail/scheme-detail.component.mjs +1 -1
  134. package/esm2022/lib/sections/scheme-detail/scheme-detail.modal.mjs +1 -1
  135. package/esm2022/lib/sections/skeleton-loader-section/skeleton-loader-section.component.mjs +3 -3
  136. package/esm2022/lib/sections/team-member-section/team-member-section.component.mjs +3 -3
  137. package/esm2022/lib/sections/team-member-section/team-member-section.model.mjs +1 -1
  138. package/esm2022/lib/sections/testimonial-fullwidth/testimonial-fullwidth.model.mjs +1 -1
  139. package/esm2022/lib/sections/testimonial-section/testimonial-section.model.mjs +1 -1
  140. package/esm2022/lib/sections/testimonial-video/testimonial-video.component.mjs +1 -1
  141. package/esm2022/lib/sections/testimonial-video/testimonial-video.model.mjs +1 -1
  142. package/esm2022/lib/sections/text-section/text-section.model.mjs +1 -1
  143. package/esm2022/lib/sections/usp-video-section/usp-video-section.component.mjs +3 -3
  144. package/esm2022/lib/sections/usp-video-section/usp-video-section.model.mjs +1 -1
  145. package/esm2022/lib/sections/video-carousel-section/video-carousel-section.component.mjs +3 -3
  146. package/esm2022/lib/sections/video-section/video-section.component.mjs +1 -1
  147. package/esm2022/lib/sections/video-section/video-section.model.mjs +1 -1
  148. package/esm2022/lib/sections/view-blog/view-blog.component.mjs +1 -1
  149. package/esm2022/lib/services/endUser.service.mjs +1 -1
  150. package/esm2022/lib/services/image-upload-service.service.mjs +1 -1
  151. package/fesm2022/simpo-component-library.mjs +149 -127
  152. package/fesm2022/simpo-component-library.mjs.map +1 -1
  153. package/lib/directive/animation-directive.d.ts +1 -0
  154. package/lib/directive/sticky-directive.d.ts +2 -2
  155. package/lib/sections/appointment-form/appointment-booking/appointment-booking/appointment-booking.component.d.ts +2 -0
  156. package/lib/sections/banner-carousel/banner-carousel.component.d.ts +4 -5
  157. package/lib/sections/header-section/header-section.component.d.ts +1 -1
  158. package/lib/sections/team-member-section/team-member-section.model.d.ts +2 -1
  159. package/package.json +1 -1
  160. package/simpo-component-library-3.6.893.tgz +0 -0
  161. package/simpo-component-library-3.6.890.tgz +0 -0
@@ -30,7 +30,6 @@ export class BannerCarouselComponent extends BaseSection {
30
30
  super();
31
31
  this._eventService = _eventService;
32
32
  this._mainContainer = null;
33
- this.currentIndex = 0;
34
33
  this.isEditorOpen = false;
35
34
  }
36
35
  ngOnInit() {
@@ -64,45 +63,47 @@ export class BannerCarouselComponent extends BaseSection {
64
63
  this.carouselInstance.dispose();
65
64
  }
66
65
  }
66
+ ngOnChanges(changes) {
67
+ if (changes['edit'] &&
68
+ !changes['edit'].firstChange) {
69
+ if (this.edit) {
70
+ this.controlAutoSlide(false);
71
+ }
72
+ else {
73
+ this.controlAutoSlide(true);
74
+ }
75
+ }
76
+ }
67
77
  initializeCarousel() {
68
- if (!this.carouselElement || typeof bootstrap === 'undefined')
78
+ if (!this.carouselElement) {
69
79
  return;
80
+ }
81
+ if (typeof bootstrap === 'undefined') {
82
+ return;
83
+ }
70
84
  const carouselNative = this.carouselElement.nativeElement;
71
- this.carouselInstance = bootstrap.Carousel.getOrCreateInstance(carouselNative, {
72
- interval: 3000,
73
- ride: 'carousel',
74
- pause: false,
75
- wrap: true,
76
- touch: true
77
- });
85
+ this.carouselInstance =
86
+ bootstrap.Carousel.getOrCreateInstance(carouselNative, {
87
+ interval: 3000,
88
+ wrap: true,
89
+ touch: true
90
+ });
91
+ if (this.edit) {
92
+ this.carouselInstance.pause();
93
+ }
94
+ else {
95
+ this.carouselInstance.cycle();
96
+ }
78
97
  }
79
98
  controlAutoSlide(shouldStart) {
80
- setTimeout(() => {
81
- if (!this.carouselElement || typeof bootstrap === 'undefined')
82
- return;
83
- const carouselNative = this.carouselElement.nativeElement;
84
- if (!this.carouselInstance) {
85
- this.carouselInstance = bootstrap.Carousel.getOrCreateInstance(carouselNative, {
86
- interval: 3000,
87
- ride: 'carousel',
88
- pause: false,
89
- wrap: true,
90
- touch: true
91
- });
92
- }
93
- if (shouldStart) {
94
- this.carouselInstance.pause();
95
- this.carouselInstance.cycle();
96
- }
97
- else {
98
- this.carouselInstance.pause();
99
- }
100
- }, 150);
101
- }
102
- selectSlide(index) {
103
- this.currentIndex = index;
104
- if (this.carouselInstance) {
105
- this.carouselInstance.to(index);
99
+ if (!this.carouselInstance) {
100
+ return;
101
+ }
102
+ if (shouldStart && !this.edit) {
103
+ this.carouselInstance.cycle();
104
+ }
105
+ else {
106
+ this.carouselInstance.pause();
106
107
  }
107
108
  }
108
109
  get stylesLayout() {
@@ -156,7 +157,7 @@ export class BannerCarouselComponent extends BaseSection {
156
157
  return isMobile ? '560px' : '420px';
157
158
  }
158
159
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: BannerCarouselComponent, deps: [{ token: i1.EventsService }], target: i0.ɵɵFactoryTarget.Component }); }
159
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: BannerCarouselComponent, isStandalone: true, selector: "simpo-banner-carousel", inputs: { data: "data", index: "index", edit: "edit", delete: "delete", customClass: "customClass", nextComponentColor: "nextComponentColor" }, viewQueries: [{ propertyName: "carouselElement", first: true, predicate: ["carouselElement"], descendants: true }, { propertyName: "_mainContainer", first: true, predicate: ["mainContainer"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<div [id]=\"data?.id\" [simpoBackground]=\"styles?.background\" simpoHover (hovering)=\"showEditTabs($event)\"\r\n class=\"total-container\" [attr.style]=\"customClass\">\r\n <div class=\"banner-carousel-shell flex relative fix-safari-flickering\" [ngStyle]=\"{\r\n 'min-height': getSectionMinHeight(),\r\n 'padding-top': '0px',\r\n 'padding-bottom': '0px'\r\n }\" [spacingAround]=\"stylesLayout\" [id]=\"data?.id\" [simpoBorder]=\"styles?.border\">\r\n <div class=\"flex break-word w-full items-center overflow-hidden banner-carousel-content\" [id]=\"data?.id\">\r\n\r\n <div #carouselElement id=\"carouselExampleInterval\" class=\"carousel slide banner-carousel\" data-bs-ride=\"carousel\"\r\n data-bs-pause=\"false\">\r\n\r\n <ol class=\"carousel-indicators\" *ngIf=\"(content?.listItem?.data?.length || 0) > 1\">\r\n <li *ngFor=\"let img of content?.listItem?.data; let i = index\" [class.active]=\"i === 0\"\r\n data-bs-target=\"#carouselExampleInterval\" [attr.data-bs-slide-to]=\"i\">\r\n </li>\r\n </ol>\r\n\r\n <div class=\"carousel-inner banner-carousel-inner\">\r\n <div *ngFor=\"let item of content?.listItem?.data; let i = index\" class=\"carousel-item banner-carousel-item\"\r\n [ngClass]=\"{'active': i === currentIndex}\">\r\n <img loading=\"lazy\" [src]=\"item.image.url\" [simpoBlurContent]=\"getBlurValue\" [id]=\"data?.id\"\r\n [simpoObjectPosition]=\"item?.image?.position\" class=\"imgclass banner-carousel-image\"\r\n [alt]=\"item?.image?.altText || 'Carousel image'\" [appImageEditor]=\"edit || false\"\r\n [class]=\"data?.id+item.image.id\" [imageData]=\"item?.image\" [sectionId]=\"data?.id\" [itemIndex]=\"i\"\r\n *ngIf=\"item?.image?.url\" />\r\n </div>\r\n\r\n <div class=\"col-xxl-8 mx-auto relative opacity-100 position-relative text-wrapper\" text-content-layer\r\n style=\"z-index: 1;\" [id]=\"data?.id\" #mainContainer [simpoOverlay]=\"styles?.background\"\r\n [spacingHorizontal]=\"stylesLayout\" [simpoLayout]=\"styles?.layout\">\r\n\r\n <div class=\"row g-5 justify-content-start content-side text-container\" [id]=\"data?.id\"\r\n [simpoAnimation]=\"styles?.animation\"\r\n [ngClass]=\"{'align-items-stretch':styles?.layout?.align==='left' || styles?.layout?.align==='center' || styles?.layout?.align==='right'}\">\r\n <div class=\"col-lg-6 w-full max-w-2xl items-start d-flex flex-column \"\r\n [simpoContainerAlignment]=\"stylesLayout\" [id]=\"data?.id\">\r\n <div *ngFor=\"let item of content?.inputText; let i = index\">\r\n <div [ngClass]=\"item.label.includes('Heading') ? 'heading-large lh-2 mb-4' : 'body-large'\">\r\n <simpo-text-editor [(value)]=\"item.value\" [editable]=\"edit || false\" [sectionId]=\"data?.id\" [inputTextIndex]=\"i\" [isRTE]=\"item.isRTE\"></simpo-text-editor>\r\n </div>\r\n </div>\r\n\r\n <div *ngIf=\"data?.action && data?.action?.display\" class=\"customclass w-full mb-3\" [ngClass]=\"[\r\n styles?.layout?.align === 'left' ? 'justify-content-md-start' : '',\r\n styles?.layout?.align === 'center' ? 'justify-content-md-center' : '',\r\n styles?.layout?.align === 'right' ? 'justify-content-md-end' : ''\r\n ]\">\r\n <div *ngFor=\"let button of data?.action?.buttons\" class=\"btn-container \">\r\n <app-button-element [buttonContent]=\"button.content\" [buttonStyle]=\"button.styles\"\r\n [buttonId]=\"button.id\" [sectionId]=\"data?.id\" [edit]=\"edit\"\r\n [color]=\"data?.styles?.background?.accentColor\"\r\n [backgroundInfo]=\"data?.styles?.background\"></app-button-element>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <a class=\"carousel-control-prev\" data-bs-target=\"#carouselExampleInterval\" role=\"button\" data-bs-slide=\"prev\"\r\n *ngIf=\"(content?.listItem?.data?.length || 0) > 1\">\r\n <span class=\"carousel-control-prev-icon previous-icon\" aria-hidden=\"true\"></span>\r\n <span class=\"sr-only\">Previous</span>\r\n </a>\r\n\r\n <a class=\"carousel-control-next\" data-bs-target=\"#carouselExampleInterval\" role=\"button\" data-bs-slide=\"next\"\r\n *ngIf=\"(content?.listItem?.data?.length || 0) > 1\">\r\n <span class=\"carousel-control-next-icon previous-icon\" aria-hidden=\"true\"></span>\r\n <span class=\"sr-only\">Next</span>\r\n </a>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <ng-container *ngIf=\"styles?.devider?.display\">\r\n <simpo-svg-divider [dividerType]=\"styles?.devider?.deviderType\"\r\n [color]=\"nextComponentColor?.color\"></simpo-svg-divider>\r\n </ng-container>\r\n\r\n <div [ngClass]=\"{'hover_effect': edit}\" *ngIf=\"showEditors\" (click)=\"editSection()\">\r\n <simpo-hover-elements [data]=\"data\" [index]=\"index\" [editOptions]=\"edit\"></simpo-hover-elements>\r\n </div>\r\n\r\n <div *ngIf=\"showDelete\" [ngClass]=\"{'hover_effect': delete}\">\r\n <simpo-delete-hover-element [data]=\"data\" [index]=\"index\"></simpo-delete-hover-element>\r\n </div>\r\n</div>", styles: [".total-container{height:auto;position:relative;width:100%}.banner-carousel-shell{width:100%;position:relative;overflow:hidden}.banner-carousel-content{width:100%}.banner-carousel{width:100%;position:relative}.carousel-inner,.banner-carousel-inner{position:relative;width:100%;height:100%}.carousel-item,.banner-carousel-item{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none;transition:transform .9s cubic-bezier(.16,1,.3,1)!important;overflow:hidden}.carousel-item.active,.banner-carousel-item.active{position:absolute;inset:0;pointer-events:auto;z-index:1}.banner-carousel-image,.carousel-item img{position:absolute;top:0;left:0;width:100%;height:100%!important;min-height:100%;min-width:100%;object-fit:cover;z-index:0;transition:object-position .25s ease}.overlay{position:absolute;inset:0;width:100%;height:100%;opacity:0;z-index:1}.text-content-layer{position:relative!important;z-index:2!important;display:flex;align-items:center;justify-content:center;min-height:inherit;width:100%;pointer-events:auto}.carousel-indicators li{width:10px;height:10px;background-color:#332e2e80;border-radius:50%;display:inline-block;margin:0 5px;border:none;transition:background-color .3s ease}.carousel-control-next,.carousel-control-prev{width:5%!important}.carousel-indicators .active{width:10px;height:10px;background-color:#fff;border-radius:50%}.carousel-indicators{bottom:0!important;z-index:3}.carousel-indicators .circle{width:10px;height:10px;border-radius:50%;background-color:gray}.heading-large{margin-left:1%;margin-right:1%}.mb-1{margin-bottom:1.5rem!important}.hover_effect{position:unset;width:100%;top:0;left:0;height:100%}@media screen and (min-width: 760px){.cards{padding-bottom:24px}}@media screen and (max-width: 475px){.banner-carousel-shell,.banner-carousel,.carousel-inner,.banner-carousel-inner{min-height:560px!important;height:auto!important}.carousel-item,.banner-carousel-item,.carousel-item.active,.banner-carousel-item.active{min-height:560px!important;height:100%!important}.banner-carousel-image,.carousel-item img{width:100%!important;height:100%!important;min-height:560px!important;object-fit:cover!important}.carousel-indicators{margin-bottom:unset!important}.text-content-layer{position:relative!important;inset:unset;min-height:560px!important;padding-top:24px;padding-bottom:24px}.text-wrapper{width:100%!important;padding-left:18px;padding-right:18px}.text-container{width:100%!important;margin:0!important}}li{list-style:none}.heading-large{margin-left:0%!important}@media (min-width: 860px){.md\\:flex-row{flex-direction:row}}@media (min-width: 860px){.md\\:w-max{width:max-content}}@media (min-width: 860px){.md\\:inline-flex{display:inline-flex}}.btn-container{display:flex;justify-content:center;width:auto}.btn{padding:1rem 1.5rem}.customclass{display:inline-flex;flex-direction:row;gap:1rem;width:100%;margin-top:2rem}@media (max-width: 800px){.customclass{flex-direction:column;align-items:center}.btn-container{width:100%}.btn{width:100%;padding:1rem}}.pb-20{padding-bottom:50px}.pt-20{padding-top:50px}.text-wrapper{width:88vw!important}.text-container{width:86vw!important;padding-top:2rem}\n"], dependencies: [{ kind: "directive", type: ObjectPositionDirective, selector: "[simpoObjectPosition]", inputs: ["simpoObjectPosition"] }, { kind: "ngmodule", type: SimpoElementsModule }, { kind: "component", type: i2.SimpoButtonComponent, selector: "app-button-element", inputs: ["buttonContent", "buttonStyle", "buttonId", "color", "sectionId", "edit", "backgroundInfo", "disabled", "loading", "isFullWidth"] }, { kind: "component", type: i3.SvgDividerComponent, selector: "simpo-svg-divider", inputs: ["dividerType", "color"] }, { kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i4.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i4.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i4.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "ngmodule", type: SimpoComponentModule }, { kind: "component", type: i5.HoverElementsComponent, selector: "simpo-hover-elements", inputs: ["data", "index", "editOptions", "isMerged", "isEcommerce"], outputs: ["edit"] }, { kind: "component", type: i6.DeleteHoverElementComponent, selector: "simpo-delete-hover-element", inputs: ["index", "data"], outputs: ["edit"] }, { kind: "ngmodule", type: MatGridListModule }, { kind: "directive", type: AnimationDirective, selector: "[simpoAnimation]", inputs: ["simpoAnimation"] }, { kind: "directive", type: BackgroundDirective, selector: "[simpoBackground]", inputs: ["simpoBackground", "scrollValue"] }, { kind: "directive", type: ContentFitDirective, selector: "[simpoLayout]", inputs: ["simpoLayout"] }, { kind: "directive", type: BorderDirective, selector: "[simpoBorder]", inputs: ["simpoBorder"] }, { kind: "directive", type: HoverDirective, selector: "[simpoHover]", outputs: ["hovering"] }, { kind: "directive", type: OverlayDirective, selector: "[simpoOverlay]", inputs: ["simpoOverlay"] }, { kind: "directive", type: SimpoContainerAligment, selector: "[simpoContainerAlignment]", inputs: ["simpoContainerAlignment"] }, { kind: "directive", type: SimpoBlurContentDirective, selector: "[simpoBlurContent]", inputs: ["simpoBlurContent"] }, { kind: "component", type: TextEditorComponent, selector: "simpo-text-editor", inputs: ["value", "editable", "isRTE", "sectionId", "label", "type", "inputTextIndex", "itemIndex"], outputs: ["valueChange"] }, { kind: "directive", type: ImageEditorDirective, selector: "[appImageEditor]", inputs: ["appImageEditor", "imageData", "sectionId", "showIcon", "iconData", "itemIndex"] }, { kind: "directive", type: SpacingHorizontalDirective, selector: "[spacingHorizontal]", inputs: ["spacingHorizontal", "isHeader"] }, { kind: "directive", type: SpacingAroundDirective, selector: "[spacingAround]", inputs: ["spacingAround", "backgroundInfo"] }] }); }
160
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: BannerCarouselComponent, isStandalone: true, selector: "simpo-banner-carousel", inputs: { data: "data", index: "index", edit: "edit", delete: "delete", customClass: "customClass", nextComponentColor: "nextComponentColor" }, viewQueries: [{ propertyName: "carouselElement", first: true, predicate: ["carouselElement"], descendants: true }, { propertyName: "_mainContainer", first: true, predicate: ["mainContainer"], descendants: true }], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<div [id]=\"data?.id\" [simpoBackground]=\"styles?.background\" simpoHover (hovering)=\"showEditTabs($event)\"\r\n class=\"total-container\" [attr.style]=\"customClass\">\r\n <div class=\"banner-carousel-shell flex relative fix-safari-flickering\" [ngStyle]=\"{\r\n 'min-height': getSectionMinHeight(),\r\n 'padding-top': '0px',\r\n 'padding-bottom': '0px'\r\n }\" [spacingAround]=\"stylesLayout\" [id]=\"data?.id\" [simpoBorder]=\"styles?.border\">\r\n <div class=\"flex break-word w-full items-center overflow-hidden banner-carousel-content\" [id]=\"data?.id\">\r\n\r\n <div #carouselElement id=\"carouselExampleInterval\" class=\"carousel slide banner-carousel\"\r\n [attr.data-bs-ride]=\"!edit ? 'carousel' : null\" data-bs-pause=\"false\">\r\n\r\n <ol class=\"carousel-indicators\" *ngIf=\"(content?.listItem?.data?.length || 0) > 1\">\r\n <li *ngFor=\"let img of content?.listItem?.data; let i = index\"\r\n [attr.data-bs-target]=\"'#carouselExampleInterval'\" [attr.data-bs-slide-to]=\"i\" [class.active]=\"i === 0\"\r\n [attr.aria-current]=\"i === 0 ? 'true' : null\">\r\n </li>\r\n </ol>\r\n\r\n <div class=\"carousel-inner banner-carousel-inner\">\r\n <div *ngFor=\"let item of content?.listItem?.data; let i = index\" class=\"carousel-item banner-carousel-item\"\r\n [class.active]=\"i === 0\">\r\n <img loading=\"lazy\" [src]=\"item.image.url\" [simpoBlurContent]=\"getBlurValue\" [id]=\"data?.id\"\r\n [simpoObjectPosition]=\"item?.image?.position\" class=\"imgclass banner-carousel-image\"\r\n [alt]=\"item?.image?.altText || 'Carousel image'\" [appImageEditor]=\"edit || false\"\r\n [class]=\"data?.id+item.image.id\" [imageData]=\"item?.image\" [sectionId]=\"data?.id\" [itemIndex]=\"i\"\r\n *ngIf=\"item?.image?.url\" />\r\n </div>\r\n\r\n <div class=\"col-xxl-8 mx-auto relative opacity-100 position-relative text-wrapper\" text-content-layer\r\n style=\"z-index: 1;\" [id]=\"data?.id\" #mainContainer [simpoOverlay]=\"styles?.background\"\r\n [spacingHorizontal]=\"stylesLayout\" [simpoLayout]=\"styles?.layout\">\r\n\r\n <div class=\"row g-5 justify-content-start content-side text-container\" [id]=\"data?.id\"\r\n [simpoAnimation]=\"styles?.animation\"\r\n [ngClass]=\"{'align-items-stretch':styles?.layout?.align==='left' || styles?.layout?.align==='center' || styles?.layout?.align==='right'}\">\r\n <div class=\"col-lg-6 w-full max-w-2xl items-start d-flex flex-column \"\r\n [simpoContainerAlignment]=\"stylesLayout\" [id]=\"data?.id\">\r\n <div *ngFor=\"let item of content?.inputText; let i = index\">\r\n <div [ngClass]=\"item.label.includes('Heading') ? 'heading-large lh-2 mb-4' : 'body-large'\">\r\n <simpo-text-editor [(value)]=\"item.value\" [editable]=\"edit || false\" [sectionId]=\"data?.id\"\r\n [inputTextIndex]=\"i\" [isRTE]=\"item.isRTE\"></simpo-text-editor>\r\n </div>\r\n </div>\r\n\r\n <div *ngIf=\"data?.action && data?.action?.display\" class=\"customclass w-full mb-3\" [ngClass]=\"[\r\n styles?.layout?.align === 'left' ? 'justify-content-md-start' : '',\r\n styles?.layout?.align === 'center' ? 'justify-content-md-center' : '',\r\n styles?.layout?.align === 'right' ? 'justify-content-md-end' : ''\r\n ]\">\r\n <div *ngFor=\"let button of data?.action?.buttons\" class=\"btn-container \">\r\n <app-button-element [buttonContent]=\"button.content\" [buttonStyle]=\"button.styles\"\r\n [buttonId]=\"button.id\" [sectionId]=\"data?.id\" [edit]=\"edit\"\r\n [color]=\"data?.styles?.background?.accentColor\"\r\n [backgroundInfo]=\"data?.styles?.background\"></app-button-element>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <a class=\"carousel-control-prev\" data-bs-target=\"#carouselExampleInterval\" role=\"button\" data-bs-slide=\"prev\"\r\n *ngIf=\"(content?.listItem?.data?.length || 0) > 1\">\r\n <span class=\"carousel-control-prev-icon previous-icon\" aria-hidden=\"true\"></span>\r\n <span class=\"sr-only\">Previous</span>\r\n </a>\r\n\r\n <a class=\"carousel-control-next\" data-bs-target=\"#carouselExampleInterval\" role=\"button\" data-bs-slide=\"next\"\r\n *ngIf=\"(content?.listItem?.data?.length || 0) > 1\">\r\n <span class=\"carousel-control-next-icon previous-icon\" aria-hidden=\"true\"></span>\r\n <span class=\"sr-only\">Next</span>\r\n </a>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <ng-container *ngIf=\"styles?.devider?.display\">\r\n <simpo-svg-divider [dividerType]=\"styles?.devider?.deviderType\"\r\n [color]=\"nextComponentColor?.color\"></simpo-svg-divider>\r\n </ng-container>\r\n\r\n <div [ngClass]=\"{'hover_effect': edit}\" *ngIf=\"showEditors\" (click)=\"editSection()\">\r\n <simpo-hover-elements [data]=\"data\" [index]=\"index\" [editOptions]=\"edit\"></simpo-hover-elements>\r\n </div>\r\n\r\n <div *ngIf=\"showDelete\" [ngClass]=\"{'hover_effect': delete}\">\r\n <simpo-delete-hover-element [data]=\"data\" [index]=\"index\"></simpo-delete-hover-element>\r\n </div>\r\n</div>", styles: [".total-container{height:auto;position:relative;width:100%}.banner-carousel-shell{width:100%;position:relative;overflow:hidden}.banner-carousel-content{width:100%}.banner-carousel{width:100%;position:relative}.carousel-inner,.banner-carousel-inner{position:relative;width:100%;height:100%}.carousel-item,.banner-carousel-item{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none;transition:transform .9s cubic-bezier(.16,1,.3,1)!important;overflow:hidden}.carousel-item.active,.banner-carousel-item.active{position:absolute;inset:0;pointer-events:auto;z-index:1}.banner-carousel-image,.carousel-item img{position:absolute;top:0;left:0;width:100%;height:100%!important;min-height:100%;min-width:100%;object-fit:cover;z-index:0;transition:object-position .25s ease}.overlay{position:absolute;inset:0;width:100%;height:100%;opacity:0;z-index:1}.text-content-layer{position:relative!important;z-index:2!important;display:flex;align-items:center;justify-content:center;min-height:inherit;width:100%;pointer-events:auto}.carousel-indicators li{width:10px;height:10px;background-color:#332e2e80;border-radius:50%;display:inline-block;margin:0 5px;border:none;transition:background-color .3s ease}.carousel-control-next,.carousel-control-prev{width:5%!important}.carousel-indicators .active{width:10px;height:10px;background-color:#fff;border-radius:50%}.carousel-indicators{bottom:0!important;z-index:3}.carousel-indicators .circle{width:10px;height:10px;border-radius:50%;background-color:gray}.heading-large{margin-left:1%;margin-right:1%}.mb-1{margin-bottom:1.5rem!important}.hover_effect{position:unset;width:100%;top:0;left:0;height:100%}@media screen and (min-width: 760px){.cards{padding-bottom:24px}}@media screen and (max-width: 475px){.banner-carousel-shell,.banner-carousel,.carousel-inner,.banner-carousel-inner{min-height:560px!important;height:auto!important}.carousel-item,.banner-carousel-item,.carousel-item.active,.banner-carousel-item.active{min-height:560px!important;height:100%!important}.banner-carousel-image,.carousel-item img{width:100%!important;height:100%!important;min-height:560px!important;object-fit:cover!important}.carousel-indicators{margin-bottom:unset!important}.text-content-layer{position:relative!important;inset:unset;min-height:560px!important;padding-top:24px;padding-bottom:24px}.text-wrapper{width:100%!important;padding-left:18px;padding-right:18px}.text-container{width:100%!important;margin:0!important}}li{list-style:none}.heading-large{margin-left:0%!important}@media (min-width: 860px){.md\\:flex-row{flex-direction:row}}@media (min-width: 860px){.md\\:w-max{width:max-content}}@media (min-width: 860px){.md\\:inline-flex{display:inline-flex}}.btn-container{display:flex;justify-content:center;width:auto}.btn{padding:1rem 1.5rem}.customclass{display:inline-flex;flex-direction:row;gap:1rem;width:100%;margin-top:2rem}@media (max-width: 800px){.customclass{flex-direction:column;align-items:center}.btn-container{width:100%}.btn{width:100%;padding:1rem}}.pb-20{padding-bottom:50px}.pt-20{padding-top:50px}.text-wrapper{width:88vw!important}.text-container{width:86vw!important;padding-top:2rem}\n"], dependencies: [{ kind: "directive", type: ObjectPositionDirective, selector: "[simpoObjectPosition]", inputs: ["simpoObjectPosition"] }, { kind: "ngmodule", type: SimpoElementsModule }, { kind: "component", type: i2.SimpoButtonComponent, selector: "app-button-element", inputs: ["buttonContent", "buttonStyle", "buttonId", "color", "sectionId", "edit", "backgroundInfo", "disabled", "loading", "isFullWidth"] }, { kind: "component", type: i3.SvgDividerComponent, selector: "simpo-svg-divider", inputs: ["dividerType", "color"] }, { kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i4.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i4.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i4.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "ngmodule", type: SimpoComponentModule }, { kind: "component", type: i5.HoverElementsComponent, selector: "simpo-hover-elements", inputs: ["data", "index", "editOptions", "isMerged", "isEcommerce"], outputs: ["edit"] }, { kind: "component", type: i6.DeleteHoverElementComponent, selector: "simpo-delete-hover-element", inputs: ["index", "data"], outputs: ["edit"] }, { kind: "ngmodule", type: MatGridListModule }, { kind: "directive", type: AnimationDirective, selector: "[simpoAnimation]", inputs: ["simpoAnimation"] }, { kind: "directive", type: BackgroundDirective, selector: "[simpoBackground]", inputs: ["simpoBackground", "scrollValue"] }, { kind: "directive", type: ContentFitDirective, selector: "[simpoLayout]", inputs: ["simpoLayout"] }, { kind: "directive", type: BorderDirective, selector: "[simpoBorder]", inputs: ["simpoBorder"] }, { kind: "directive", type: HoverDirective, selector: "[simpoHover]", outputs: ["hovering"] }, { kind: "directive", type: OverlayDirective, selector: "[simpoOverlay]", inputs: ["simpoOverlay"] }, { kind: "directive", type: SimpoContainerAligment, selector: "[simpoContainerAlignment]", inputs: ["simpoContainerAlignment"] }, { kind: "directive", type: SimpoBlurContentDirective, selector: "[simpoBlurContent]", inputs: ["simpoBlurContent"] }, { kind: "component", type: TextEditorComponent, selector: "simpo-text-editor", inputs: ["value", "editable", "isRTE", "sectionId", "label", "type", "inputTextIndex", "itemIndex"], outputs: ["valueChange"] }, { kind: "directive", type: ImageEditorDirective, selector: "[appImageEditor]", inputs: ["appImageEditor", "imageData", "sectionId", "showIcon", "iconData", "itemIndex"] }, { kind: "directive", type: SpacingHorizontalDirective, selector: "[spacingHorizontal]", inputs: ["spacingHorizontal", "isHeader"] }, { kind: "directive", type: SpacingAroundDirective, selector: "[spacingAround]", inputs: ["spacingAround", "backgroundInfo"] }] }); }
160
161
  }
161
162
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: BannerCarouselComponent, decorators: [{
162
163
  type: Component,
@@ -179,7 +180,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
179
180
  ImageEditorDirective,
180
181
  SpacingHorizontalDirective,
181
182
  SpacingAroundDirective
182
- ], template: "<div [id]=\"data?.id\" [simpoBackground]=\"styles?.background\" simpoHover (hovering)=\"showEditTabs($event)\"\r\n class=\"total-container\" [attr.style]=\"customClass\">\r\n <div class=\"banner-carousel-shell flex relative fix-safari-flickering\" [ngStyle]=\"{\r\n 'min-height': getSectionMinHeight(),\r\n 'padding-top': '0px',\r\n 'padding-bottom': '0px'\r\n }\" [spacingAround]=\"stylesLayout\" [id]=\"data?.id\" [simpoBorder]=\"styles?.border\">\r\n <div class=\"flex break-word w-full items-center overflow-hidden banner-carousel-content\" [id]=\"data?.id\">\r\n\r\n <div #carouselElement id=\"carouselExampleInterval\" class=\"carousel slide banner-carousel\" data-bs-ride=\"carousel\"\r\n data-bs-pause=\"false\">\r\n\r\n <ol class=\"carousel-indicators\" *ngIf=\"(content?.listItem?.data?.length || 0) > 1\">\r\n <li *ngFor=\"let img of content?.listItem?.data; let i = index\" [class.active]=\"i === 0\"\r\n data-bs-target=\"#carouselExampleInterval\" [attr.data-bs-slide-to]=\"i\">\r\n </li>\r\n </ol>\r\n\r\n <div class=\"carousel-inner banner-carousel-inner\">\r\n <div *ngFor=\"let item of content?.listItem?.data; let i = index\" class=\"carousel-item banner-carousel-item\"\r\n [ngClass]=\"{'active': i === currentIndex}\">\r\n <img loading=\"lazy\" [src]=\"item.image.url\" [simpoBlurContent]=\"getBlurValue\" [id]=\"data?.id\"\r\n [simpoObjectPosition]=\"item?.image?.position\" class=\"imgclass banner-carousel-image\"\r\n [alt]=\"item?.image?.altText || 'Carousel image'\" [appImageEditor]=\"edit || false\"\r\n [class]=\"data?.id+item.image.id\" [imageData]=\"item?.image\" [sectionId]=\"data?.id\" [itemIndex]=\"i\"\r\n *ngIf=\"item?.image?.url\" />\r\n </div>\r\n\r\n <div class=\"col-xxl-8 mx-auto relative opacity-100 position-relative text-wrapper\" text-content-layer\r\n style=\"z-index: 1;\" [id]=\"data?.id\" #mainContainer [simpoOverlay]=\"styles?.background\"\r\n [spacingHorizontal]=\"stylesLayout\" [simpoLayout]=\"styles?.layout\">\r\n\r\n <div class=\"row g-5 justify-content-start content-side text-container\" [id]=\"data?.id\"\r\n [simpoAnimation]=\"styles?.animation\"\r\n [ngClass]=\"{'align-items-stretch':styles?.layout?.align==='left' || styles?.layout?.align==='center' || styles?.layout?.align==='right'}\">\r\n <div class=\"col-lg-6 w-full max-w-2xl items-start d-flex flex-column \"\r\n [simpoContainerAlignment]=\"stylesLayout\" [id]=\"data?.id\">\r\n <div *ngFor=\"let item of content?.inputText; let i = index\">\r\n <div [ngClass]=\"item.label.includes('Heading') ? 'heading-large lh-2 mb-4' : 'body-large'\">\r\n <simpo-text-editor [(value)]=\"item.value\" [editable]=\"edit || false\" [sectionId]=\"data?.id\" [inputTextIndex]=\"i\" [isRTE]=\"item.isRTE\"></simpo-text-editor>\r\n </div>\r\n </div>\r\n\r\n <div *ngIf=\"data?.action && data?.action?.display\" class=\"customclass w-full mb-3\" [ngClass]=\"[\r\n styles?.layout?.align === 'left' ? 'justify-content-md-start' : '',\r\n styles?.layout?.align === 'center' ? 'justify-content-md-center' : '',\r\n styles?.layout?.align === 'right' ? 'justify-content-md-end' : ''\r\n ]\">\r\n <div *ngFor=\"let button of data?.action?.buttons\" class=\"btn-container \">\r\n <app-button-element [buttonContent]=\"button.content\" [buttonStyle]=\"button.styles\"\r\n [buttonId]=\"button.id\" [sectionId]=\"data?.id\" [edit]=\"edit\"\r\n [color]=\"data?.styles?.background?.accentColor\"\r\n [backgroundInfo]=\"data?.styles?.background\"></app-button-element>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <a class=\"carousel-control-prev\" data-bs-target=\"#carouselExampleInterval\" role=\"button\" data-bs-slide=\"prev\"\r\n *ngIf=\"(content?.listItem?.data?.length || 0) > 1\">\r\n <span class=\"carousel-control-prev-icon previous-icon\" aria-hidden=\"true\"></span>\r\n <span class=\"sr-only\">Previous</span>\r\n </a>\r\n\r\n <a class=\"carousel-control-next\" data-bs-target=\"#carouselExampleInterval\" role=\"button\" data-bs-slide=\"next\"\r\n *ngIf=\"(content?.listItem?.data?.length || 0) > 1\">\r\n <span class=\"carousel-control-next-icon previous-icon\" aria-hidden=\"true\"></span>\r\n <span class=\"sr-only\">Next</span>\r\n </a>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <ng-container *ngIf=\"styles?.devider?.display\">\r\n <simpo-svg-divider [dividerType]=\"styles?.devider?.deviderType\"\r\n [color]=\"nextComponentColor?.color\"></simpo-svg-divider>\r\n </ng-container>\r\n\r\n <div [ngClass]=\"{'hover_effect': edit}\" *ngIf=\"showEditors\" (click)=\"editSection()\">\r\n <simpo-hover-elements [data]=\"data\" [index]=\"index\" [editOptions]=\"edit\"></simpo-hover-elements>\r\n </div>\r\n\r\n <div *ngIf=\"showDelete\" [ngClass]=\"{'hover_effect': delete}\">\r\n <simpo-delete-hover-element [data]=\"data\" [index]=\"index\"></simpo-delete-hover-element>\r\n </div>\r\n</div>", styles: [".total-container{height:auto;position:relative;width:100%}.banner-carousel-shell{width:100%;position:relative;overflow:hidden}.banner-carousel-content{width:100%}.banner-carousel{width:100%;position:relative}.carousel-inner,.banner-carousel-inner{position:relative;width:100%;height:100%}.carousel-item,.banner-carousel-item{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none;transition:transform .9s cubic-bezier(.16,1,.3,1)!important;overflow:hidden}.carousel-item.active,.banner-carousel-item.active{position:absolute;inset:0;pointer-events:auto;z-index:1}.banner-carousel-image,.carousel-item img{position:absolute;top:0;left:0;width:100%;height:100%!important;min-height:100%;min-width:100%;object-fit:cover;z-index:0;transition:object-position .25s ease}.overlay{position:absolute;inset:0;width:100%;height:100%;opacity:0;z-index:1}.text-content-layer{position:relative!important;z-index:2!important;display:flex;align-items:center;justify-content:center;min-height:inherit;width:100%;pointer-events:auto}.carousel-indicators li{width:10px;height:10px;background-color:#332e2e80;border-radius:50%;display:inline-block;margin:0 5px;border:none;transition:background-color .3s ease}.carousel-control-next,.carousel-control-prev{width:5%!important}.carousel-indicators .active{width:10px;height:10px;background-color:#fff;border-radius:50%}.carousel-indicators{bottom:0!important;z-index:3}.carousel-indicators .circle{width:10px;height:10px;border-radius:50%;background-color:gray}.heading-large{margin-left:1%;margin-right:1%}.mb-1{margin-bottom:1.5rem!important}.hover_effect{position:unset;width:100%;top:0;left:0;height:100%}@media screen and (min-width: 760px){.cards{padding-bottom:24px}}@media screen and (max-width: 475px){.banner-carousel-shell,.banner-carousel,.carousel-inner,.banner-carousel-inner{min-height:560px!important;height:auto!important}.carousel-item,.banner-carousel-item,.carousel-item.active,.banner-carousel-item.active{min-height:560px!important;height:100%!important}.banner-carousel-image,.carousel-item img{width:100%!important;height:100%!important;min-height:560px!important;object-fit:cover!important}.carousel-indicators{margin-bottom:unset!important}.text-content-layer{position:relative!important;inset:unset;min-height:560px!important;padding-top:24px;padding-bottom:24px}.text-wrapper{width:100%!important;padding-left:18px;padding-right:18px}.text-container{width:100%!important;margin:0!important}}li{list-style:none}.heading-large{margin-left:0%!important}@media (min-width: 860px){.md\\:flex-row{flex-direction:row}}@media (min-width: 860px){.md\\:w-max{width:max-content}}@media (min-width: 860px){.md\\:inline-flex{display:inline-flex}}.btn-container{display:flex;justify-content:center;width:auto}.btn{padding:1rem 1.5rem}.customclass{display:inline-flex;flex-direction:row;gap:1rem;width:100%;margin-top:2rem}@media (max-width: 800px){.customclass{flex-direction:column;align-items:center}.btn-container{width:100%}.btn{width:100%;padding:1rem}}.pb-20{padding-bottom:50px}.pt-20{padding-top:50px}.text-wrapper{width:88vw!important}.text-container{width:86vw!important;padding-top:2rem}\n"] }]
183
+ ], template: "<div [id]=\"data?.id\" [simpoBackground]=\"styles?.background\" simpoHover (hovering)=\"showEditTabs($event)\"\r\n class=\"total-container\" [attr.style]=\"customClass\">\r\n <div class=\"banner-carousel-shell flex relative fix-safari-flickering\" [ngStyle]=\"{\r\n 'min-height': getSectionMinHeight(),\r\n 'padding-top': '0px',\r\n 'padding-bottom': '0px'\r\n }\" [spacingAround]=\"stylesLayout\" [id]=\"data?.id\" [simpoBorder]=\"styles?.border\">\r\n <div class=\"flex break-word w-full items-center overflow-hidden banner-carousel-content\" [id]=\"data?.id\">\r\n\r\n <div #carouselElement id=\"carouselExampleInterval\" class=\"carousel slide banner-carousel\"\r\n [attr.data-bs-ride]=\"!edit ? 'carousel' : null\" data-bs-pause=\"false\">\r\n\r\n <ol class=\"carousel-indicators\" *ngIf=\"(content?.listItem?.data?.length || 0) > 1\">\r\n <li *ngFor=\"let img of content?.listItem?.data; let i = index\"\r\n [attr.data-bs-target]=\"'#carouselExampleInterval'\" [attr.data-bs-slide-to]=\"i\" [class.active]=\"i === 0\"\r\n [attr.aria-current]=\"i === 0 ? 'true' : null\">\r\n </li>\r\n </ol>\r\n\r\n <div class=\"carousel-inner banner-carousel-inner\">\r\n <div *ngFor=\"let item of content?.listItem?.data; let i = index\" class=\"carousel-item banner-carousel-item\"\r\n [class.active]=\"i === 0\">\r\n <img loading=\"lazy\" [src]=\"item.image.url\" [simpoBlurContent]=\"getBlurValue\" [id]=\"data?.id\"\r\n [simpoObjectPosition]=\"item?.image?.position\" class=\"imgclass banner-carousel-image\"\r\n [alt]=\"item?.image?.altText || 'Carousel image'\" [appImageEditor]=\"edit || false\"\r\n [class]=\"data?.id+item.image.id\" [imageData]=\"item?.image\" [sectionId]=\"data?.id\" [itemIndex]=\"i\"\r\n *ngIf=\"item?.image?.url\" />\r\n </div>\r\n\r\n <div class=\"col-xxl-8 mx-auto relative opacity-100 position-relative text-wrapper\" text-content-layer\r\n style=\"z-index: 1;\" [id]=\"data?.id\" #mainContainer [simpoOverlay]=\"styles?.background\"\r\n [spacingHorizontal]=\"stylesLayout\" [simpoLayout]=\"styles?.layout\">\r\n\r\n <div class=\"row g-5 justify-content-start content-side text-container\" [id]=\"data?.id\"\r\n [simpoAnimation]=\"styles?.animation\"\r\n [ngClass]=\"{'align-items-stretch':styles?.layout?.align==='left' || styles?.layout?.align==='center' || styles?.layout?.align==='right'}\">\r\n <div class=\"col-lg-6 w-full max-w-2xl items-start d-flex flex-column \"\r\n [simpoContainerAlignment]=\"stylesLayout\" [id]=\"data?.id\">\r\n <div *ngFor=\"let item of content?.inputText; let i = index\">\r\n <div [ngClass]=\"item.label.includes('Heading') ? 'heading-large lh-2 mb-4' : 'body-large'\">\r\n <simpo-text-editor [(value)]=\"item.value\" [editable]=\"edit || false\" [sectionId]=\"data?.id\"\r\n [inputTextIndex]=\"i\" [isRTE]=\"item.isRTE\"></simpo-text-editor>\r\n </div>\r\n </div>\r\n\r\n <div *ngIf=\"data?.action && data?.action?.display\" class=\"customclass w-full mb-3\" [ngClass]=\"[\r\n styles?.layout?.align === 'left' ? 'justify-content-md-start' : '',\r\n styles?.layout?.align === 'center' ? 'justify-content-md-center' : '',\r\n styles?.layout?.align === 'right' ? 'justify-content-md-end' : ''\r\n ]\">\r\n <div *ngFor=\"let button of data?.action?.buttons\" class=\"btn-container \">\r\n <app-button-element [buttonContent]=\"button.content\" [buttonStyle]=\"button.styles\"\r\n [buttonId]=\"button.id\" [sectionId]=\"data?.id\" [edit]=\"edit\"\r\n [color]=\"data?.styles?.background?.accentColor\"\r\n [backgroundInfo]=\"data?.styles?.background\"></app-button-element>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <a class=\"carousel-control-prev\" data-bs-target=\"#carouselExampleInterval\" role=\"button\" data-bs-slide=\"prev\"\r\n *ngIf=\"(content?.listItem?.data?.length || 0) > 1\">\r\n <span class=\"carousel-control-prev-icon previous-icon\" aria-hidden=\"true\"></span>\r\n <span class=\"sr-only\">Previous</span>\r\n </a>\r\n\r\n <a class=\"carousel-control-next\" data-bs-target=\"#carouselExampleInterval\" role=\"button\" data-bs-slide=\"next\"\r\n *ngIf=\"(content?.listItem?.data?.length || 0) > 1\">\r\n <span class=\"carousel-control-next-icon previous-icon\" aria-hidden=\"true\"></span>\r\n <span class=\"sr-only\">Next</span>\r\n </a>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <ng-container *ngIf=\"styles?.devider?.display\">\r\n <simpo-svg-divider [dividerType]=\"styles?.devider?.deviderType\"\r\n [color]=\"nextComponentColor?.color\"></simpo-svg-divider>\r\n </ng-container>\r\n\r\n <div [ngClass]=\"{'hover_effect': edit}\" *ngIf=\"showEditors\" (click)=\"editSection()\">\r\n <simpo-hover-elements [data]=\"data\" [index]=\"index\" [editOptions]=\"edit\"></simpo-hover-elements>\r\n </div>\r\n\r\n <div *ngIf=\"showDelete\" [ngClass]=\"{'hover_effect': delete}\">\r\n <simpo-delete-hover-element [data]=\"data\" [index]=\"index\"></simpo-delete-hover-element>\r\n </div>\r\n</div>", styles: [".total-container{height:auto;position:relative;width:100%}.banner-carousel-shell{width:100%;position:relative;overflow:hidden}.banner-carousel-content{width:100%}.banner-carousel{width:100%;position:relative}.carousel-inner,.banner-carousel-inner{position:relative;width:100%;height:100%}.carousel-item,.banner-carousel-item{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none;transition:transform .9s cubic-bezier(.16,1,.3,1)!important;overflow:hidden}.carousel-item.active,.banner-carousel-item.active{position:absolute;inset:0;pointer-events:auto;z-index:1}.banner-carousel-image,.carousel-item img{position:absolute;top:0;left:0;width:100%;height:100%!important;min-height:100%;min-width:100%;object-fit:cover;z-index:0;transition:object-position .25s ease}.overlay{position:absolute;inset:0;width:100%;height:100%;opacity:0;z-index:1}.text-content-layer{position:relative!important;z-index:2!important;display:flex;align-items:center;justify-content:center;min-height:inherit;width:100%;pointer-events:auto}.carousel-indicators li{width:10px;height:10px;background-color:#332e2e80;border-radius:50%;display:inline-block;margin:0 5px;border:none;transition:background-color .3s ease}.carousel-control-next,.carousel-control-prev{width:5%!important}.carousel-indicators .active{width:10px;height:10px;background-color:#fff;border-radius:50%}.carousel-indicators{bottom:0!important;z-index:3}.carousel-indicators .circle{width:10px;height:10px;border-radius:50%;background-color:gray}.heading-large{margin-left:1%;margin-right:1%}.mb-1{margin-bottom:1.5rem!important}.hover_effect{position:unset;width:100%;top:0;left:0;height:100%}@media screen and (min-width: 760px){.cards{padding-bottom:24px}}@media screen and (max-width: 475px){.banner-carousel-shell,.banner-carousel,.carousel-inner,.banner-carousel-inner{min-height:560px!important;height:auto!important}.carousel-item,.banner-carousel-item,.carousel-item.active,.banner-carousel-item.active{min-height:560px!important;height:100%!important}.banner-carousel-image,.carousel-item img{width:100%!important;height:100%!important;min-height:560px!important;object-fit:cover!important}.carousel-indicators{margin-bottom:unset!important}.text-content-layer{position:relative!important;inset:unset;min-height:560px!important;padding-top:24px;padding-bottom:24px}.text-wrapper{width:100%!important;padding-left:18px;padding-right:18px}.text-container{width:100%!important;margin:0!important}}li{list-style:none}.heading-large{margin-left:0%!important}@media (min-width: 860px){.md\\:flex-row{flex-direction:row}}@media (min-width: 860px){.md\\:w-max{width:max-content}}@media (min-width: 860px){.md\\:inline-flex{display:inline-flex}}.btn-container{display:flex;justify-content:center;width:auto}.btn{padding:1rem 1.5rem}.customclass{display:inline-flex;flex-direction:row;gap:1rem;width:100%;margin-top:2rem}@media (max-width: 800px){.customclass{flex-direction:column;align-items:center}.btn-container{width:100%}.btn{width:100%;padding:1rem}}.pb-20{padding-bottom:50px}.pt-20{padding-top:50px}.text-wrapper{width:88vw!important}.text-container{width:86vw!important;padding-top:2rem}\n"] }]
183
184
  }], ctorParameters: () => [{ type: i1.EventsService }], propDecorators: { data: [{
184
185
  type: Input
185
186
  }], index: [{
@@ -199,4 +200,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
199
200
  type: ViewChild,
200
201
  args: ['mainContainer']
201
202
  }] } });
202
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFubmVyLWNhcm91c2VsLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3NpbXBvLXVpL3NyYy9saWIvc2VjdGlvbnMvYmFubmVyLWNhcm91c2VsL2Jhbm5lci1jYXJvdXNlbC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zaW1wby11aS9zcmMvbGliL3NlY3Rpb25zL2Jhbm5lci1jYXJvdXNlbC9iYW5uZXItY2Fyb3VzZWwuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLFNBQVMsRUFDVCxLQUFLLEVBR0wsU0FBUyxFQUdWLE1BQU0sZUFBZSxDQUFDO0FBRXZCLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3JELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUN4RCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUNoRSxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxvREFBb0QsQ0FBQztBQUMxRixPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQztBQUN6RSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxzQ0FBc0MsQ0FBQztBQUMzRSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSx1Q0FBdUMsQ0FBQztBQUM1RSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sa0NBQWtDLENBQUM7QUFDbkUsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHlDQUF5QyxDQUFDO0FBQ3pFLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLG1DQUFtQyxDQUFDO0FBQ3JFLE9BQU8sV0FBVyxNQUFNLGdCQUFnQixDQUFDO0FBR3pDLE9BQU8sRUFB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bUJBQW1CO3dCQUNuQixvQkFBb0I7d0JBQ3BCLDBCQUEwQjt3QkFDMUIsc0JBQXNCO3FCQUN2QjtrRkFLUSxJQUFJO3NCQUFaLEtBQUs7Z0JBQ0csS0FBSztzQkFBYixLQUFLO2dCQUNHLElBQUk7c0JBQVosS0FBSztnQkFDRyxNQUFNO3NCQUFkLEtBQUs7Z0JBQ0csV0FBVztzQkFBbkIsS0FBSztnQkFDRyxrQkFBa0I7c0JBQTFCLEtBQUs7Z0JBRXdCLGVBQWU7c0JBQTVDLFNBQVM7dUJBQUMsaUJBQWlCO2dCQUNBLGNBQWM7c0JBQXpDLFNBQVM7dUJBQUMsZUFBZSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XHJcbiAgQ29tcG9uZW50LFxyXG4gIElucHV0LFxyXG4gIE9uSW5pdCxcclxuICBFbGVtZW50UmVmLFxyXG4gIFZpZXdDaGlsZCxcclxuICBPbkRlc3Ryb3ksXHJcbiAgQWZ0ZXJWaWV3SW5pdFxyXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBBY3Rpb25Nb2RlbCwgQmFja2dyb3VuZE1vZGVsLCBMYXlPdXRNb2RlbCB9IGZyb20gJy4uLy4uL3N0eWxlcy9zdHlsZS5tb2RlbCc7XHJcbmltcG9ydCB7IFNpbXBvRWxlbWVudHNNb2R1bGUgfSBmcm9tICcuLi8uLi9lbGVtZW50cyc7XHJcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XHJcbmltcG9ydCB7IFNpbXBvQ29tcG9uZW50TW9kdWxlIH0gZnJvbSAnLi4vLi4vY29tcG9uZW50cyc7XHJcbmltcG9ydCB7IE1hdEdyaWRMaXN0TW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvZ3JpZC1saXN0JztcclxuaW1wb3J0IHsgU2ltcG9CdXR0b25Db21wb25lbnQgfSBmcm9tICcuLi8uLi9lbGVtZW50cy9zaW1wby1idXR0b24vc2ltcG8tYnV0dG9uLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEFuaW1hdGlvbkRpcmVjdGl2ZSB9IGZyb20gJy4uLy4uL2RpcmVjdGl2ZS9hbmltYXRpb24tZGlyZWN0aXZlJztcclxuaW1wb3J0IHsgQmFja2dyb3VuZERpcmVjdGl2ZSB9IGZyb20gJy4uLy4uL2RpcmVjdGl2ZS9iYWNrZ3JvdW5kLWRpcmVjdGl2ZSc7XHJcbmltcG9ydCB7IENvbnRlbnRGaXREaXJlY3RpdmUgfSBmcm9tICcuLi8uLi9kaXJlY3RpdmUvY29udGVudC1maXQtZGlyZWN0aXZlJztcclxuaW1wb3J0IHsgQm9yZGVyRGlyZWN0aXZlIH0gZnJvbSAnLi4vLi4vZGlyZWN0aXZlL2JvcmRlci1kaXJlY3RpdmUnO1xyXG5pbXBvcnQgeyBIb3ZlckRpcmVjdGl2ZSB9IGZyb20gJy4uLy4uL2RpcmVjdGl2ZS9ob3Zlci1lbGVtZW50LWRpcmVjdGl2ZSc7XHJcbmltcG9ydCB7IE92ZXJsYXlEaXJlY3RpdmUgfSBmcm9tICcuLi8uLi9kaXJlY3RpdmUvb3ZlcmxheS1kaXJlY3RpdmUnO1xyXG5pbXBvcnQgQmFzZVNlY3Rpb24gZnJvbSAnLi4vQmFzZVNlY3Rpb24nO1xyXG5pbXBvcnQgeyBFdmVudHNTZXJ2aWNlIH0gZnJvbSAnLi8uLi8uLi9zZXJ2aWNlcy9ldmVudHMuc2VydmljZSc7XHJcbmltcG9ydCB7IEJhbm5lckNhcm91c2VsQ29udGVudE1vZGVsLCBCYW5uZXJDYXJvdXNlbE1vZGVsLCBCYW5uZXJDYXJvdXNlbFN0eWxlc01vZGVsIH0gZnJvbSAnLi9iYW5uZXItY2Fyb3VzZWwubW9kZWwnO1xyXG5pbXBvcnQgeyBTaW1wb0NvbnRhaW5lckFsaWdtZW50IH0gZnJvbSAnLi4vLi4vZGlyZWN0aXZlL2NvbnRhaW5lci1hbGlnbm1lbnQuZGlyZWN0aXZlJztcclxuaW1wb3J0IHsgU2ltcG9CbHVyQ29udGVudERpcmVjdGl2ZSB9IGZyb20gJy4uLy4uL2RpcmVjdGl2ZS9ibHVyLWNvbnRlbnQuZGlyZWN0aXZlJztcclxuaW1wb3J0IHsgT3ZlcmxheVZhbHVlIH0gZnJvbSAnLi4vLi4vc3R5bGVzL2luZGV4JztcclxuaW1wb3J0IHsgVGV4dEVkaXRvckNvbXBvbmVudCB9IGZyb20gJy4uLy4uL2VsZW1lbnRzL3RleHQtZWRpdG9yL3RleHQtZWRpdG9yLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEltYWdlRWRpdG9yRGlyZWN0aXZlIH0gZnJvbSAnLi4vLi4vZGlyZWN0aXZlL2ltYWdlLWVkaXRvci5kaXJlY3RpdmUnO1xyXG5pbXBvcnQgeyBTcGFjaW5nSG9yaXpvbnRhbERpcmVjdGl2ZSB9IGZyb20gJy4uLy4uL2RpcmVjdGl2ZS9zcGFjaW5nLWhvcml6b250YWwuZGlyZWN0aXZlJztcclxuaW1wb3J0IHsgU3BhY2luZ0Fyb3VuZERpcmVjdGl2ZSB9IGZyb20gJy4uLy4uL2RpcmVjdGl2ZS9zcGFjaW5nLWFyb3VuZC5kaXJlY3RpdmUnO1xyXG5pbXBvcnQgeyBPYmplY3RQb3NpdGlvbkRpcmVjdGl2ZSB9IGZyb20gJy4vLi4vLi4vZGlyZWN0aXZlL2ltYWdlLXBvc2l0aW9uLmRpcmVjdGl2ZSc7XHJcbmltcG9ydCB7IFN1YnNjcmlwdGlvbiB9IGZyb20gJ3J4anMnO1xyXG5cclxuZGVjbGFyZSB2YXIgYm9vdHN0cmFwOiBhbnk7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ3NpbXBvLWJhbm5lci1jYXJvdXNlbCcsXHJcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcclxuICBpbXBvcnRzOiBbXHJcbiAgICBPYmplY3RQb3NpdGlvbkRpcmVjdGl2ZSxcclxuICAgIFNpbXBvRWxlbWVudHNNb2R1bGUsXHJcbiAgICBDb21tb25Nb2R1bGUsXHJcbiAgICBTaW1wb0NvbXBvbmVudE1vZHVsZSxcclxuICAgIE1hdEdyaWRMaXN0TW9kdWxlLFxyXG4gICAgU2ltcG9CdXR0b25Db21wb25lbnQsXHJcbiAgICBBbmltYXRpb25EaXJlY3RpdmUsXHJcbiAgICBCYWNrZ3JvdW5kRGlyZWN0aXZlLFxyXG4gICAgQ29udGVudEZpdERpcmVjdGl2ZSxcclxuICAgIEJvcmRlckRpcmVjdGl2ZSxcclxuICAgIEhvdmVyRGlyZWN0aXZlLFxyXG4gICAgT3ZlcmxheURpcmVjdGl2ZSxcclxuICAgIFNpbXBvQ29udGFpbmVyQWxpZ21lbnQsXHJcbiAgICBTaW1wb0JsdXJDb250ZW50RGlyZWN0aXZlLFxyXG4gICAgVGV4dEVkaXRvckNvbXBvbmVudCxcclxuICAgIEltYWdlRWRpdG9yRGlyZWN0aXZlLFxyXG4gICAgU3BhY2luZ0hvcml6b250YWxEaXJlY3RpdmUsXHJcbiAgICBTcGFjaW5nQXJvdW5kRGlyZWN0aXZlXHJcbiAgXSxcclxuICB0ZW1wbGF0ZVVybDogJy4vYmFubmVyLWNhcm91c2VsLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybDogJy4vYmFubmVyLWNhcm91c2VsLmNvbXBvbmVudC5jc3MnXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBCYW5uZXJDYXJvdXNlbENvbXBvbmVudCBleHRlbmRzIEJhc2VTZWN0aW9uIGltcGxlbWVudHMgT25Jbml0LCBBZnRlclZpZXdJbml0LCBPbkRlc3Ryb3kge1xyXG4gIEBJbnB1dCgpIGRhdGE/OiBCYW5uZXJDYXJvdXNlbE1vZGVsO1xyXG4gIEBJbnB1dCgpIGluZGV4PzogbnVtYmVyO1xyXG4gIEBJbnB1dCgpIGVkaXQ/OiBib29sZWFuO1xyXG4gIEBJbnB1dCgpIGRlbGV0ZT86IGJvb2xlYW47XHJcbiAgQElucHV0KCkgY3VzdG9tQ2xhc3M/OiBzdHJpbmc7XHJcbiAgQElucHV0KCkgbmV4dENvbXBvbmVudENvbG9yPzogQmFja2dyb3VuZE1vZGVsO1xyXG5cclxuICBAVmlld0NoaWxkKCdjYXJvdXNlbEVsZW1lbnQnKSBjYXJvdXNlbEVsZW1lbnQhOiBFbGVtZW50UmVmO1xyXG4gIEBWaWV3Q2hpbGQoJ21haW5Db250YWluZXInKSBfbWFpbkNvbnRhaW5lcjogRWxlbWVudFJlZiB8IG51bGwgPSBudWxsO1xyXG5cclxuICBpZCE6IHN0cmluZztcclxuICBhY3Rpb24hOiBBY3Rpb25Nb2RlbDtcclxuICBjb250ZW50PzogQmFubmVyQ2Fyb3VzZWxDb250ZW50TW9kZWw7XHJcbiAgc3R5bGVzPzogQmFubmVyQ2Fyb3VzZWxTdHlsZXNNb2RlbDtcclxuICBjdXJyZW50SW5kZXg6IG51bWJlciA9IDA7XHJcblxyXG4gIHByaXZhdGUgZWRpdG9yU3Vic2NyaXB0aW9uPzogU3Vic2NyaXB0aW9uO1xyXG4gIHByaXZhdGUgY2Fyb3VzZWxJbnN0YW5jZTogYW55O1xyXG4gIHByaXZhdGUgaXNFZGl0b3JPcGVuID0gZmFsc2U7XHJcblxyXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgX2V2ZW50U2VydmljZTogRXZlbnRzU2VydmljZSkge1xyXG4gICAgc3VwZXIoKTtcclxuICB9XHJcblxyXG4gIG5nT25Jbml0KCkge1xyXG4gICAgdGhpcy5kZWxldGVTZWxlY3RlZCA9IHRoaXMuZGVsZXRlO1xyXG4gICAgdGhpcy5jb250ZW50ID0gdGhpcy5kYXRhPy5jb250ZW50O1xyXG4gICAgdGhpcy5zdHlsZXMgPSB0aGlzLmRhdGE/LnN0eWxlcztcclxuXHJcbiAgICB0aGlzLmVkaXRvclN1YnNjcmlwdGlvbiA9IHRoaXMuX2V2ZW50U2VydmljZS50b2dnbGVFZGl0b3JFdmVudC5zdWJzY3JpYmUoKGlzRWRpdG9yT3BlbjogYm9vbGVhbikgPT4ge1xyXG4gICAgICB0aGlzLmlzRWRpdG9yT3BlbiA9IGlzRWRpdG9yT3BlbjtcclxuICAgICAgaWYgKGlzRWRpdG9yT3Blbikge1xyXG4gICAgICAgIHRoaXMuY29udHJvbEF1dG9TbGlkZShmYWxzZSk7XHJcbiAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgdGhpcy5jb250cm9sQXV0b1NsaWRlKHRydWUpO1xyXG4gICAgICB9XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcclxuICAgIHNldFRpbWVvdXQoKCkgPT4ge1xyXG4gICAgICB0aGlzLmluaXRpYWxpemVDYXJvdXNlbCgpO1xyXG4gICAgICBpZiAoIXRoaXMuaXNFZGl0b3JPcGVuKSB7XHJcbiAgICAgICAgdGhpcy5jb250cm9sQXV0b1NsaWRlKHRydWUpO1xyXG4gICAgICB9XHJcbiAgICB9LCAyMDApO1xyXG4gIH1cclxuXHJcbiAgbmdPbkRlc3Ryb3koKSB7XHJcbiAgICBpZiAodGhpcy5lZGl0b3JTdWJzY3JpcHRpb24pIHtcclxuICAgICAgdGhpcy5lZGl0b3JTdWJzY3JpcHRpb24udW5zdWJzY3JpYmUoKTtcclxuICAgIH1cclxuXHJcbiAgICBpZiAodGhpcy5jYXJvdXNlbEluc3RhbmNlKSB7XHJcbiAgICAgIHRoaXMuY2Fyb3VzZWxJbnN0YW5jZS5wYXVzZSgpO1xyXG4gICAgICB0aGlzLmNhcm91c2VsSW5zdGFuY2UuZGlzcG9zZSgpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBpbml0aWFsaXplQ2Fyb3VzZWwoKSB7XHJcbiAgICBpZiAoIXRoaXMuY2Fyb3VzZWxFbGVtZW50IHx8IHR5cGVvZiBib290c3RyYXAgPT09ICd1bmRlZmluZWQnKSByZXR1cm47XHJcblxyXG4gICAgY29uc3QgY2Fyb3VzZWxOYXRpdmUgPSB0aGlzLmNhcm91c2VsRWxlbWVudC5uYXRpdmVFbGVtZW50O1xyXG5cclxuICAgIHRoaXMuY2Fyb3VzZWxJbnN0YW5jZSA9IGJvb3RzdHJhcC5DYXJvdXNlbC5nZXRPckNyZWF0ZUluc3RhbmNlKGNhcm91c2VsTmF0aXZlLCB7XHJcbiAgICAgIGludGVydmFsOiAzMDAwLFxyXG4gICAgICByaWRlOiAnY2Fyb3VzZWwnLFxyXG4gICAgICBwYXVzZTogZmFsc2UsXHJcbiAgICAgIHdyYXA6IHRydWUsXHJcbiAgICAgIHRvdWNoOiB0cnVlXHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIGNvbnRyb2xBdXRvU2xpZGUoc2hvdWxkU3RhcnQ6IGJvb2xlYW4pIHtcclxuICAgIHNldFRpbWVvdXQoKCkgPT4ge1xyXG4gICAgICBpZiAoIXRoaXMuY2Fyb3VzZWxFbGVtZW50IHx8IHR5cGVvZiBib290c3RyYXAgPT09ICd1bmRlZmluZWQnKSByZXR1cm47XHJcblxyXG4gICAgICBjb25zdCBjYXJvdXNlbE5hdGl2ZSA9IHRoaXMuY2Fyb3VzZWxFbGVtZW50Lm5hdGl2ZUVsZW1lbnQ7XHJcblxyXG4gICAgICBpZiAoIXRoaXMuY2Fyb3VzZWxJbnN0YW5jZSkge1xyXG4gICAgICAgIHRoaXMuY2Fyb3VzZWxJbnN0YW5jZSA9IGJvb3RzdHJhcC5DYXJvdXNlbC5nZXRPckNyZWF0ZUluc3RhbmNlKGNhcm91c2VsTmF0aXZlLCB7XHJcbiAgICAgICAgICBpbnRlcnZhbDogMzAwMCxcclxuICAgICAgICAgIHJpZGU6ICdjYXJvdXNlbCcsXHJcbiAgICAgICAgICBwYXVzZTogZmFsc2UsXHJcbiAgICAgICAgICB3cmFwOiB0cnVlLFxyXG4gICAgICAgICAgdG91Y2g6IHRydWVcclxuICAgICAgICB9KTtcclxuICAgICAgfVxyXG5cclxuICAgICAgaWYgKHNob3VsZFN0YXJ0KSB7XHJcbiAgICAgICAgdGhpcy5jYXJvdXNlbEluc3RhbmNlLnBhdXNlKCk7XHJcbiAgICAgICAgdGhpcy5jYXJvdXNlbEluc3RhbmNlLmN5Y2xlKCk7XHJcbiAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgdGhpcy5jYXJvdXNlbEluc3RhbmNlLnBhdXNlKCk7XHJcbiAgICAgIH1cclxuICAgIH0sIDE1MCk7XHJcbiAgfVxyXG5cclxuICBzZWxlY3RTbGlkZShpbmRleDogbnVtYmVyKSB7XHJcbiAgICB0aGlzLmN1cnJlbnRJbmRleCA9IGluZGV4O1xyXG4gICAgaWYgKHRoaXMuY2Fyb3VzZWxJbnN0YW5jZSkge1xyXG4gICAgICB0aGlzLmNhcm91c2VsSW5zdGFuY2UudG8oaW5kZXgpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgZ2V0IHN0eWxlc0xheW91dCgpIHtcclxuICAgIHJldHVybiB7IC4uLnRoaXMuc3R5bGVzPy5sYXlvdXQgfSBhcyBMYXlPdXRNb2RlbDtcclxuICB9XHJcblxyXG4gIGdldCBnZXRCbHVyVmFsdWUoKSB7XHJcbiAgICByZXR1cm4gdGhpcy5zdHlsZXM/LmJhY2tncm91bmQ/LmJsdXI7XHJcbiAgfVxyXG5cclxuICBnZXQgZ2V0QmFja2dyb3VuZENvbG9yKCkge1xyXG4gICAgcmV0dXJuIHsgLi4udGhpcy5zdHlsZXM/LmJhY2tncm91bmQgfSBhcyBCYWNrZ3JvdW5kTW9kZWw7XHJcbiAgfVxyXG5cclxuICBnZXQgZ2V0QmFja2dyb3VuZE9wYWNpdHkoKSB7XHJcbiAgICBpZiAodGhpcy5zdHlsZXM/LmJhY2tncm91bmQ/Lm92ZXJsYXkpIHtcclxuICAgICAgcmV0dXJuIHRoaXMub3BhY2l0eVZhbHVlKHRoaXMuc3R5bGVzLmJhY2tncm91bmQ/Lm92ZXJsYXkpO1xyXG4gICAgfVxyXG4gICAgcmV0dXJuICcwJztcclxuICB9XHJcblxyXG4gIG9wYWNpdHlWYWx1ZSh2YWx1ZTogT3ZlcmxheVZhbHVlKSB7XHJcbiAgICBzd2l0Y2ggKHZhbHVlKSB7XHJcbiAgICAgIGNhc2UgJ1ZFUllfU1RST05HJyBhcyBPdmVybGF5VmFsdWU6XHJcbiAgICAgICAgcmV0dXJuICcwLjUnO1xyXG4gICAgICBjYXNlICdTVFJPTkcnIGFzIE92ZXJsYXlWYWx1ZTpcclxuICAgICAgICByZXR1cm4gJzAuNic7XHJcbiAgICAgIGNhc2UgJ01PREVSQVRFJyBhcyBPdmVybGF5VmFsdWU6XHJcbiAgICAgICAgcmV0dXJuICcwLjcnO1xyXG4gICAgICBjYXNlICdMSUdIVCcgYXMgT3ZlcmxheVZhbHVlOlxyXG4gICAgICAgIHJldHVybiAnMC44JztcclxuICAgICAgZGVmYXVsdDpcclxuICAgICAgICByZXR1cm4gJzEnO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgZWRpdFNlY3Rpb24oKSB7XHJcbiAgICBpZiAod2luZG93LmlubmVyV2lkdGggPD0gNDc1KSByZXR1cm47XHJcblxyXG4gICAgdGhpcy5jb250cm9sQXV0b1NsaWRlKGZhbHNlKTtcclxuICAgIHRoaXMuX2V2ZW50U2VydmljZS50b2dnbGVFZGl0b3JFdmVudC5lbWl0KHRydWUpO1xyXG5cclxuICAgIHNldFRpbWVvdXQoKCkgPT4ge1xyXG4gICAgICB0aGlzLl9ldmVudFNlcnZpY2UuZWRpdFNlY3Rpb24uZW1pdCh7IGRhdGE6IHRoaXMuZGF0YSB9KTtcclxuICAgIH0sIDEwMCk7XHJcbiAgfVxyXG5cclxuICBnZXRTY3JlZW5TaXplKCkge1xyXG4gICAgcmV0dXJuIHdpbmRvdy5pbm5lcldpZHRoO1xyXG4gIH1cclxuXHJcbiAgZ2V0U2VjdGlvbk1pbkhlaWdodCgpOiBzdHJpbmcge1xyXG4gICAgY29uc3QgZml0ID0gdGhpcy5zdHlsZXM/LmxheW91dD8uZml0O1xyXG4gICAgY29uc3QgaXNNb2JpbGUgPSB0aGlzLmdldFNjcmVlblNpemUoKSA8PSA0NzU7XHJcblxyXG4gICAgaWYgKGZpdCA9PT0gJ3NjcmVlbicpIHJldHVybiBpc01vYmlsZSA/ICcxMDB2aCcgOiAnY2FsYyg3NXZoICsgMTM0cHgpJztcclxuICAgIGlmIChmaXQgPT09ICdjb250ZW50JykgcmV0dXJuIGlzTW9iaWxlID8gJzU2MHB4JyA6ICc0MjBweCc7XHJcbiAgICByZXR1cm4gaXNNb2JpbGUgPyAnNTYwcHgnIDogJzQyMHB4JztcclxuICB9XHJcbn0iLCI8ZGl2IFtpZF09XCJkYXRhPy5pZFwiIFtzaW1wb0JhY2tncm91bmRdPVwic3R5bGVzPy5iYWNrZ3JvdW5kXCIgc2ltcG9Ib3ZlciAoaG92ZXJpbmcpPVwic2hvd0VkaXRUYWJzKCRldmVudClcIlxyXG4gIGNsYXNzPVwidG90YWwtY29udGFpbmVyXCIgW2F0dHIuc3R5bGVdPVwiY3VzdG9tQ2xhc3NcIj5cclxuICA8ZGl2IGNsYXNzPVwiYmFubmVyLWNhcm91c2VsLXNoZWxsIGZsZXggcmVsYXRpdmUgZml4LXNhZmFyaS1mbGlja2VyaW5nXCIgW25nU3R5bGVdPVwie1xyXG4gICAgICAnbWluLWhlaWdodCc6IGdldFNlY3Rpb25NaW5IZWlnaHQoKSxcclxuICAgICAgICdwYWRkaW5nLXRvcCc6ICcwcHgnLFxyXG4gICAgICAgJ3BhZGRpbmctYm90dG9tJzogJzBweCdcclxuICAgICB9XCIgW3NwYWNpbmdBcm91bmRdPVwic3R5bGVzTGF5b3V0XCIgW2lkXT1cImRhdGE/LmlkXCIgW3NpbXBvQm9yZGVyXT1cInN0eWxlcz8uYm9yZGVyXCI+XHJcbiAgICA8ZGl2IGNsYXNzPVwiZmxleCBicmVhay13b3JkIHctZnVsbCBpdGVtcy1jZW50ZXIgb3ZlcmZsb3ctaGlkZGVuIGJhbm5lci1jYXJvdXNlbC1jb250ZW50XCIgW2lkXT1cImRhdGE/LmlkXCI+XHJcblxyXG4gICAgICA8ZGl2ICNjYXJvdXNlbEVsZW1lbnQgaWQ9XCJjYXJvdXNlbEV4YW1wbGVJbnRlcnZhbFwiIGNsYXNzPVwiY2Fyb3VzZWwgc2xpZGUgYmFubmVyLWNhcm91c2VsXCIgZGF0YS1icy1yaWRlPVwiY2Fyb3VzZWxcIlxyXG4gICAgICAgIGRhdGEtYnMtcGF1c2U9XCJmYWxzZVwiPlxyXG5cclxuICAgICAgICA8b2wgY2xhc3M9XCJjYXJvdXNlbC1pbmRpY2F0b3JzXCIgKm5nSWY9XCIoY29udGVudD8ubGlzdEl0ZW0/LmRhdGE/Lmxlbmd0aCB8fCAwKSA+IDFcIj5cclxuICAgICAgICAgIDxsaSAqbmdGb3I9XCJsZXQgaW1nIG9mIGNvbnRlbnQ/Lmxpc3RJdGVtPy5kYXRhOyBsZXQgaSA9IGluZGV4XCIgW2NsYXNzLmFjdGl2ZV09XCJpID09PSAwXCJcclxuICAgICAgICAgICAgZGF0YS1icy10YXJnZXQ9XCIjY2Fyb3VzZWxFeGFtcGxlSW50ZXJ2YWxcIiBbYXR0ci5kYXRhLWJzLXNsaWRlLXRvXT1cImlcIj5cclxuICAgICAgICAgIDwvbGk+XHJcbiAgICAgICAgPC9vbD5cclxuXHJcbiAgICAgICAgPGRpdiBjbGFzcz1cImNhcm91c2VsLWlubmVyIGJhbm5lci1jYXJvdXNlbC1pbm5lclwiPlxyXG4gICAgICAgICAgPGRpdiAqbmdGb3I9XCJsZXQgaXRlbSBvZiBjb250ZW50Py5saXN0SXRlbT8uZGF0YTsgbGV0IGkgPSBpbmRleFwiIGNsYXNzPVwiY2Fyb3VzZWwtaXRlbSBiYW5uZXItY2Fyb3VzZWwtaXRlbVwiXHJcbiAgICAgICAgICAgIFtuZ0NsYXNzXT1cInsnYWN0aXZlJzogaSA9PT0gY3VycmVudEluZGV4fVwiPlxyXG4gICAgICAgICAgICA8aW1nIGxvYWRpbmc9XCJsYXp5XCIgW3NyY109XCJpdGVtLmltYWdlLnVybFwiIFtzaW1wb0JsdXJDb250ZW50XT1cImdldEJsdXJWYWx1ZVwiIFtpZF09XCJkYXRhPy5pZFwiXHJcbiAgICAgICAgICAgICAgW3NpbXBvT2JqZWN0UG9zaXRpb25dPVwiaXRlbT8uaW1hZ2U/LnBvc2l0aW9uXCIgY2xhc3M9XCJpbWdjbGFzcyBiYW5uZXItY2Fyb3VzZWwtaW1hZ2VcIlxyXG4gICAgICAgICAgICAgIFthbHRdPVwiaXRlbT8uaW1hZ2U/LmFsdFRleHQgfHwgJ0Nhcm91c2VsIGltYWdlJ1wiIFthcHBJbWFnZUVkaXRvcl09XCJlZGl0IHx8IGZhbHNlXCJcclxuICAgICAgICAgICAgICBbY2xhc3NdPVwiZGF0YT8uaWQraXRlbS5pbWFnZS5pZFwiIFtpbWFnZURhdGFdPVwiaXRlbT8uaW1hZ2VcIiBbc2VjdGlvbklkXT1cImRhdGE/LmlkXCIgW2l0ZW1JbmRleF09XCJpXCJcclxuICAgICAgICAgICAgICAqbmdJZj1cIml0ZW0/LmltYWdlPy51cmxcIiAvPlxyXG4gICAgICAgICAgPC9kaXY+XHJcblxyXG4gICAgICAgICAgPGRpdiBjbGFzcz1cImNvbC14eGwtOCBteC1hdXRvIHJlbGF0aXZlIG9wYWNpdHktMTAwIHBvc2l0aW9uLXJlbGF0aXZlIHRleHQtd3JhcHBlclwiIHRleHQtY29udGVudC1sYXllclxyXG4gICAgICAgICAgICBzdHlsZT1cInotaW5kZXg6IDE7XCIgW2lkXT1cImRhdGE/LmlkXCIgI21haW5Db250YWluZXIgW3NpbXBvT3ZlcmxheV09XCJzdHlsZXM/LmJhY2tncm91bmRcIlxyXG4gICAgICAgICAgICBbc3BhY2luZ0hvcml6b250YWxdPVwic3R5bGVzTGF5b3V0XCIgW3NpbXBvTGF5b3V0XT1cInN0eWxlcz8ubGF5b3V0XCI+XHJcblxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwicm93IGctNSBqdXN0aWZ5LWNvbnRlbnQtc3RhcnQgY29udGVudC1zaWRlIHRleHQtY29udGFpbmVyXCIgW2lkXT1cImRhdGE/LmlkXCJcclxuICAgICAgICAgICAgICBbc2ltcG9BbmltYXRpb25dPVwic3R5bGVzPy5hbmltYXRpb25cIlxyXG4gICAgICAgICAgICAgIFtuZ0NsYXNzXT1cInsnYWxpZ24taXRlbXMtc3RyZXRjaCc6c3R5bGVzPy5sYXlvdXQ/LmFsaWduPT09J2xlZnQnIHx8IHN0eWxlcz8ubGF5b3V0Py5hbGlnbj09PSdjZW50ZXInIHx8IHN0eWxlcz8ubGF5b3V0Py5hbGlnbj09PSdyaWdodCd9XCI+XHJcbiAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvbC1sZy02IHctZnVsbCBtYXgtdy0yeGwgaXRlbXMtc3RhcnQgZC1mbGV4IGZsZXgtY29sdW1uIFwiXHJcbiAgICAgICAgICAgICAgICBbc2ltcG9Db250YWluZXJBbGlnbm1lbnRdPVwic3R5bGVzTGF5b3V0XCIgW2lkXT1cImRhdGE/LmlkXCI+XHJcbiAgICAgICAgICAgICAgICA8ZGl2ICpuZ0Zvcj1cImxldCBpdGVtIG9mIGNvbnRlbnQ/LmlucHV0VGV4dDsgbGV0IGkgPSBpbmRleFwiPlxyXG4gICAgICAgICAgICAgICAgICA8ZGl2IFtuZ0NsYXNzXT1cIml0ZW0ubGFiZWwuaW5jbHVkZXMoJ0hlYWRpbmcnKSA/ICdoZWFkaW5nLWxhcmdlIGxoLTIgbWItNCcgOiAnYm9keS1sYXJnZSdcIj5cclxuICAgICAgICAgICAgICAgICAgICA8c2ltcG8tdGV4dC1lZGl0b3IgWyh2YWx1ZSldPVwiaXRlbS52YWx1ZVwiIFtlZGl0YWJsZV09XCJlZGl0IHx8IGZhbHNlXCIgW3NlY3Rpb25JZF09XCJkYXRhPy5pZFwiIFtpbnB1dFRleHRJbmRleF09XCJpXCIgW2lzUlRFXT1cIml0ZW0uaXNSVEVcIj48L3NpbXBvLXRleHQtZWRpdG9yPlxyXG4gICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgICAgICAgICAgIDxkaXYgKm5nSWY9XCJkYXRhPy5hY3Rpb24gJiYgZGF0YT8uYWN0aW9uPy5kaXNwbGF5XCIgY2xhc3M9XCJjdXN0b21jbGFzcyB3LWZ1bGwgbWItM1wiIFtuZ0NsYXNzXT1cIltcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3R5bGVzPy5sYXlvdXQ/LmFsaWduID09PSAnbGVmdCcgPyAnanVzdGlmeS1jb250ZW50LW1kLXN0YXJ0JyA6ICcnLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHlsZXM/LmxheW91dD8uYWxpZ24gPT09ICdjZW50ZXInID8gJ2p1c3RpZnktY29udGVudC1tZC1jZW50ZXInIDogJycsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0eWxlcz8ubGF5b3V0Py5hbGlnbiA9PT0gJ3JpZ2h0JyA/ICdqdXN0aWZ5LWNvbnRlbnQtbWQtZW5kJyA6ICcnXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXVwiPlxyXG4gICAgICAgICAgICAgICAgICA8ZGl2ICpuZ0Zvcj1cImxldCBidXR0b24gb2YgZGF0YT8uYWN0aW9uPy5idXR0b25zXCIgY2xhc3M9XCJidG4tY29udGFpbmVyIFwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxhcHAtYnV0dG9uLWVsZW1lbnQgW2J1dHRvbkNvbnRlbnRdPVwiYnV0dG9uLmNvbnRlbnRcIiBbYnV0dG9uU3R5bGVdPVwiYnV0dG9uLnN0eWxlc1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICBbYnV0dG9uSWRdPVwiYnV0dG9uLmlkXCIgW3NlY3Rpb25JZF09XCJkYXRhPy5pZFwiIFtlZGl0XT1cImVkaXRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgW2NvbG9yXT1cImRhdGE/LnN0eWxlcz8uYmFja2dyb3VuZD8uYWNjZW50Q29sb3JcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgW2JhY2tncm91bmRJbmZvXT1cImRhdGE/LnN0eWxlcz8uYmFja2dyb3VuZFwiPjwvYXBwLWJ1dHRvbi1lbGVtZW50PlxyXG4gICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgICA8YSBjbGFzcz1cImNhcm91c2VsLWNvbnRyb2wtcHJldlwiIGRhdGEtYnMtdGFyZ2V0PVwiI2Nhcm91c2VsRXhhbXBsZUludGVydmFsXCIgcm9sZT1cImJ1dHRvblwiIGRhdGEtYnMtc2xpZGU9XCJwcmV2XCJcclxuICAgICAgICAgICpuZ0lmPVwiKGNvbnRlbnQ/Lmxpc3RJdGVtPy5kYXRhPy5sZW5ndGggfHwgMCkgPiAxXCI+XHJcbiAgICAgICAgICA8c3BhbiBjbGFzcz1cImNhcm91c2VsLWNvbnRyb2wtcHJldi1pY29uIHByZXZpb3VzLWljb25cIiBhcmlhLWhpZGRlbj1cInRydWVcIj48L3NwYW4+XHJcbiAgICAgICAgICA8c3BhbiBjbGFzcz1cInNyLW9ubHlcIj5QcmV2aW91czwvc3Bhbj5cclxuICAgICAgICA8L2E+XHJcblxyXG4gICAgICAgIDxhIGNsYXNzPVwiY2Fyb3VzZWwtY29udHJvbC1uZXh0XCIgZGF0YS1icy10YXJnZXQ9XCIjY2Fyb3VzZWxFeGFtcGxlSW50ZXJ2YWxcIiByb2xlPVwiYnV0dG9uXCIgZGF0YS1icy1zbGlkZT1cIm5leHRcIlxyXG4gICAgICAgICAgKm5nSWY9XCIoY29udGVudD8ubGlzdEl0ZW0/LmRhdGE/Lmxlbmd0aCB8fCAwKSA+IDFcIj5cclxuICAgICAgICAgIDxzcGFuIGNsYXNzPVwiY2Fyb3VzZWwtY29udHJvbC1uZXh0LWljb24gcHJldmlvdXMtaWNvblwiIGFyaWEtaGlkZGVuPVwidHJ1ZVwiPjwvc3Bhbj5cclxuICAgICAgICAgIDxzcGFuIGNsYXNzPVwic3Itb25seVwiPk5leHQ8L3NwYW4+XHJcbiAgICAgICAgPC9hPlxyXG4gICAgICA8L2Rpdj5cclxuICAgIDwvZGl2PlxyXG4gIDwvZGl2PlxyXG5cclxuICA8bmctY29udGFpbmVyICpuZ0lmPVwic3R5bGVzPy5kZXZpZGVyPy5kaXNwbGF5XCI+XHJcbiAgICA8c2ltcG8tc3ZnLWRpdmlkZXIgW2RpdmlkZXJUeXBlXT1cInN0eWxlcz8uZGV2aWRlcj8uZGV2aWRlclR5cGVcIlxyXG4gICAgICBbY29sb3JdPVwibmV4dENvbXBvbmVudENvbG9yPy5jb2xvclwiPjwvc2ltcG8tc3ZnLWRpdmlkZXI+XHJcbiAgPC9uZy1jb250YWluZXI+XHJcblxyXG4gIDxkaXYgW25nQ2xhc3NdPVwieydob3Zlcl9lZmZlY3QnOiBlZGl0fVwiICpuZ0lmPVwic2hvd0VkaXRvcnNcIiAoY2xpY2spPVwiZWRpdFNlY3Rpb24oKVwiPlxyXG4gICAgPHNpbXBvLWhvdmVyLWVsZW1lbnRzIFtkYXRhXT1cImRhdGFcIiBbaW5kZXhdPVwiaW5kZXhcIiBbZWRpdE9wdGlvbnNdPVwiZWRpdFwiPjwvc2ltcG8taG92ZXItZWxlbWVudHM+XHJcbiAgPC9kaXY+XHJcblxyXG4gIDxkaXYgKm5nSWY9XCJzaG93RGVsZXRlXCIgW25nQ2xhc3NdPVwieydob3Zlcl9lZmZlY3QnOiBkZWxldGV9XCI+XHJcbiAgICA8c2ltcG8tZGVsZXRlLWhvdmVyLWVsZW1lbnQgW2RhdGFdPVwiZGF0YVwiIFtpbmRleF09XCJpbmRleFwiPjwvc2ltcG8tZGVsZXRlLWhvdmVyLWVsZW1lbnQ+XHJcbiAgPC9kaXY+XHJcbjwvZGl2PiJdfQ==
203
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFubmVyLWNhcm91c2VsLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3NpbXBvLXVpL3NyYy9saWIvc2VjdGlvbnMvYmFubmVyLWNhcm91c2VsL2Jhbm5lci1jYXJvdXNlbC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zaW1wby11aS9zcmMvbGliL3NlY3Rpb25zL2Jhbm5lci1jYXJvdXNlbC9iYW5uZXItY2Fyb3VzZWwuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLFNBQVMsRUFDVCxLQUFLLEVBR0wsU0FBUyxFQUtWLE1BQU0sZUFBZSxDQUFDO0FBRXZCLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3JELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUN4RCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUNoRSxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxvREFBb0QsQ0FBQztBQUMxRixPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQztBQUN6RSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxzQ0FBc0MsQ0FBQztBQUMzRSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSx1Q0FBdUMsQ0FBQztBQUM1RSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sa0NBQWtDLENBQUM7QUFDbkUsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHlDQUF5QyxDQUFDO0FBQ3pFLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLG1DQUFtQyxDQUFDO0FBQ3JFLE9BQU8sV0FBVyxNQUFNLGdCQUFnQixDQUFDO0FBR3pDLE9BQU8sRUFB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RyxNQUFNO3NCQUFkLEtBQUs7Z0JBQ0csV0FBVztzQkFBbkIsS0FBSztnQkFDRyxrQkFBa0I7c0JBQTFCLEtBQUs7Z0JBRXdCLGVBQWU7c0JBQTVDLFNBQVM7dUJBQUMsaUJBQWlCO2dCQUNBLGNBQWM7c0JBQXpDLFNBQVM7dUJBQUMsZUFBZSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XHJcbiAgQ29tcG9uZW50LFxyXG4gIElucHV0LFxyXG4gIE9uSW5pdCxcclxuICBFbGVtZW50UmVmLFxyXG4gIFZpZXdDaGlsZCxcclxuICBPbkRlc3Ryb3ksXHJcbiAgQWZ0ZXJWaWV3SW5pdCxcclxuICBPbkNoYW5nZXMsXHJcbiAgU2ltcGxlQ2hhbmdlc1xyXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBBY3Rpb25Nb2RlbCwgQmFja2dyb3VuZE1vZGVsLCBMYXlPdXRNb2RlbCB9IGZyb20gJy4uLy4uL3N0eWxlcy9zdHlsZS5tb2RlbCc7XHJcbmltcG9ydCB7IFNpbXBvRWxlbWVudHNNb2R1bGUgfSBmcm9tICcuLi8uLi9lbGVtZW50cyc7XHJcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XHJcbmltcG9ydCB7IFNpbXBvQ29tcG9uZW50TW9kdWxlIH0gZnJvbSAnLi4vLi4vY29tcG9uZW50cyc7XHJcbmltcG9ydCB7IE1hdEdyaWRMaXN0TW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvZ3JpZC1saXN0JztcclxuaW1wb3J0IHsgU2ltcG9CdXR0b25Db21wb25lbnQgfSBmcm9tICcuLi8uLi9lbGVtZW50cy9zaW1wby1idXR0b24vc2ltcG8tYnV0dG9uLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEFuaW1hdGlvbkRpcmVjdGl2ZSB9IGZyb20gJy4uLy4uL2RpcmVjdGl2ZS9hbmltYXRpb24tZGlyZWN0aXZlJztcclxuaW1wb3J0IHsgQmFja2dyb3VuZERpcmVjdGl2ZSB9IGZyb20gJy4uLy4uL2RpcmVjdGl2ZS9iYWNrZ3JvdW5kLWRpcmVjdGl2ZSc7XHJcbmltcG9ydCB7IENvbnRlbnRGaXREaXJlY3RpdmUgfSBmcm9tICcuLi8uLi9kaXJlY3RpdmUvY29udGVudC1maXQtZGlyZWN0aXZlJztcclxuaW1wb3J0IHsgQm9yZGVyRGlyZWN0aXZlIH0gZnJvbSAnLi4vLi4vZGlyZWN0aXZlL2JvcmRlci1kaXJlY3RpdmUnO1xyXG5pbXBvcnQgeyBIb3ZlckRpcmVjdGl2ZSB9IGZyb20gJy4uLy4uL2RpcmVjdGl2ZS9ob3Zlci1lbGVtZW50LWRpcmVjdGl2ZSc7XHJcbmltcG9ydCB7IE92ZXJsYXlEaXJlY3RpdmUgfSBmcm9tICcuLi8uLi9kaXJlY3RpdmUvb3ZlcmxheS1kaXJlY3RpdmUnO1xyXG5pbXBvcnQgQmFzZVNlY3Rpb24gZnJvbSAnLi4vQmFzZVNlY3Rpb24nO1xyXG5pbXBvcnQgeyBFdmVudHNTZXJ2aWNlIH0gZnJvbSAnLi8uLi8uLi9zZXJ2aWNlcy9ldmVudHMuc2VydmljZSc7XHJcbmltcG9ydCB7IEJhbm5lckNhcm91c2VsQ29udGVudE1vZGVsLCBCYW5uZXJDYXJvdXNlbE1vZGVsLCBCYW5uZXJDYXJvdXNlbFN0eWxlc01vZGVsIH0gZnJvbSAnLi9iYW5uZXItY2Fyb3VzZWwubW9kZWwnO1xyXG5pbXBvcnQgeyBTaW1wb0NvbnRhaW5lckFsaWdtZW50IH0gZnJvbSAnLi4vLi4vZGlyZWN0aXZlL2NvbnRhaW5lci1hbGlnbm1lbnQuZGlyZWN0aXZlJztcclxuaW1wb3J0IHsgU2ltcG9CbHVyQ29udGVudERpcmVjdGl2ZSB9IGZyb20gJy4uLy4uL2RpcmVjdGl2ZS9ibHVyLWNvbnRlbnQuZGlyZWN0aXZlJztcclxuaW1wb3J0IHsgT3ZlcmxheVZhbHVlIH0gZnJvbSAnLi4vLi4vc3R5bGVzL2luZGV4JztcclxuaW1wb3J0IHsgVGV4dEVkaXRvckNvbXBvbmVudCB9IGZyb20gJy4uLy4uL2VsZW1lbnRzL3RleHQtZWRpdG9yL3RleHQtZWRpdG9yLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEltYWdlRWRpdG9yRGlyZWN0aXZlIH0gZnJvbSAnLi4vLi4vZGlyZWN0aXZlL2ltYWdlLWVkaXRvci5kaXJlY3RpdmUnO1xyXG5pbXBvcnQgeyBTcGFjaW5nSG9yaXpvbnRhbERpcmVjdGl2ZSB9IGZyb20gJy4uLy4uL2RpcmVjdGl2ZS9zcGFjaW5nLWhvcml6b250YWwuZGlyZWN0aXZlJztcclxuaW1wb3J0IHsgU3BhY2luZ0Fyb3VuZERpcmVjdGl2ZSB9IGZyb20gJy4uLy4uL2RpcmVjdGl2ZS9zcGFjaW5nLWFyb3VuZC5kaXJlY3RpdmUnO1xyXG5pbXBvcnQgeyBPYmplY3RQb3NpdGlvbkRpcmVjdGl2ZSB9IGZyb20gJy4vLi4vLi4vZGlyZWN0aXZlL2ltYWdlLXBvc2l0aW9uLmRpcmVjdGl2ZSc7XHJcbmltcG9ydCB7IFN1YnNjcmlwdGlvbiB9IGZyb20gJ3J4anMnO1xyXG5cclxuZGVjbGFyZSB2YXIgYm9vdHN0cmFwOiBhbnk7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ3NpbXBvLWJhbm5lci1jYXJvdXNlbCcsXHJcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcclxuICBpbXBvcnRzOiBbXHJcbiAgICBPYmplY3RQb3NpdGlvbkRpcmVjdGl2ZSxcclxuICAgIFNpbXBvRWxlbWVudHNNb2R1bGUsXHJcbiAgICBDb21tb25Nb2R1bGUsXHJcbiAgICBTaW1wb0NvbXBvbmVudE1vZHVsZSxcclxuICAgIE1hdEdyaWRMaXN0TW9kdWxlLFxyXG4gICAgU2ltcG9CdXR0b25Db21wb25lbnQsXHJcbiAgICBBbmltYXRpb25EaXJlY3RpdmUsXHJcbiAgICBCYWNrZ3JvdW5kRGlyZWN0aXZlLFxyXG4gICAgQ29udGVudEZpdERpcmVjdGl2ZSxcclxuICAgIEJvcmRlckRpcmVjdGl2ZSxcclxuICAgIEhvdmVyRGlyZWN0aXZlLFxyXG4gICAgT3ZlcmxheURpcmVjdGl2ZSxcclxuICAgIFNpbXBvQ29udGFpbmVyQWxpZ21lbnQsXHJcbiAgICBTaW1wb0JsdXJDb250ZW50RGlyZWN0aXZlLFxyXG4gICAgVGV4dEVkaXRvckNvbXBvbmVudCxcclxuICAgIEltYWdlRWRpdG9yRGlyZWN0aXZlLFxyXG4gICAgU3BhY2luZ0hvcml6b250YWxEaXJlY3RpdmUsXHJcbiAgICBTcGFjaW5nQXJvdW5kRGlyZWN0aXZlXHJcbiAgXSxcclxuICB0ZW1wbGF0ZVVybDogJy4vYmFubmVyLWNhcm91c2VsLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybDogJy4vYmFubmVyLWNhcm91c2VsLmNvbXBvbmVudC5jc3MnXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBCYW5uZXJDYXJvdXNlbENvbXBvbmVudCBleHRlbmRzIEJhc2VTZWN0aW9uIGltcGxlbWVudHMgT25Jbml0LCBBZnRlclZpZXdJbml0LCBPbkRlc3Ryb3ksIE9uQ2hhbmdlcyB7XHJcbiAgQElucHV0KCkgZGF0YT86IEJhbm5lckNhcm91c2VsTW9kZWw7XHJcbiAgQElucHV0KCkgaW5kZXg/OiBudW1iZXI7XHJcbiAgQElucHV0KCkgZWRpdD86IGJvb2xlYW47XHJcbiAgQElucHV0KCkgZGVsZXRlPzogYm9vbGVhbjtcclxuICBASW5wdXQoKSBjdXN0b21DbGFzcz86IHN0cmluZztcclxuICBASW5wdXQoKSBuZXh0Q29tcG9uZW50Q29sb3I/OiBCYWNrZ3JvdW5kTW9kZWw7XHJcblxyXG4gIEBWaWV3Q2hpbGQoJ2Nhcm91c2VsRWxlbWVudCcpIGNhcm91c2VsRWxlbWVudCE6IEVsZW1lbnRSZWY7XHJcbiAgQFZpZXdDaGlsZCgnbWFpbkNvbnRhaW5lcicpIF9tYWluQ29udGFpbmVyOiBFbGVtZW50UmVmIHwgbnVsbCA9IG51bGw7XHJcblxyXG4gIGlkITogc3RyaW5nO1xyXG4gIGFjdGlvbiE6IEFjdGlvbk1vZGVsO1xyXG4gIGNvbnRlbnQ/OiBCYW5uZXJDYXJvdXNlbENvbnRlbnRNb2RlbDtcclxuICBzdHlsZXM/OiBCYW5uZXJDYXJvdXNlbFN0eWxlc01vZGVsO1xyXG5cclxuICBwcml2YXRlIGVkaXRvclN1YnNjcmlwdGlvbj86IFN1YnNjcmlwdGlvbjtcclxuICBwcml2YXRlIGNhcm91c2VsSW5zdGFuY2U6IGFueTtcclxuICBwcml2YXRlIGlzRWRpdG9yT3BlbiA9IGZhbHNlO1xyXG5cclxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIF9ldmVudFNlcnZpY2U6IEV2ZW50c1NlcnZpY2UpIHtcclxuICAgIHN1cGVyKCk7XHJcbiAgfVxyXG5cclxuICBuZ09uSW5pdCgpIHtcclxuICAgIHRoaXMuZGVsZXRlU2VsZWN0ZWQgPSB0aGlzLmRlbGV0ZTtcclxuICAgIHRoaXMuY29udGVudCA9IHRoaXMuZGF0YT8uY29udGVudDtcclxuICAgIHRoaXMuc3R5bGVzID0gdGhpcy5kYXRhPy5zdHlsZXM7XHJcblxyXG4gICAgdGhpcy5lZGl0b3JTdWJzY3JpcHRpb24gPSB0aGlzLl9ldmVudFNlcnZpY2UudG9nZ2xlRWRpdG9yRXZlbnQuc3Vic2NyaWJlKChpc0VkaXRvck9wZW46IGJvb2xlYW4pID0+IHtcclxuICAgICAgdGhpcy5pc0VkaXRvck9wZW4gPSBpc0VkaXRvck9wZW47XHJcbiAgICAgIGlmIChpc0VkaXRvck9wZW4pIHtcclxuICAgICAgICB0aGlzLmNvbnRyb2xBdXRvU2xpZGUoZmFsc2UpO1xyXG4gICAgICB9IGVsc2Uge1xyXG4gICAgICAgIHRoaXMuY29udHJvbEF1dG9TbGlkZSh0cnVlKTtcclxuICAgICAgfVxyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICBuZ0FmdGVyVmlld0luaXQoKTogdm9pZCB7XHJcbiAgICBzZXRUaW1lb3V0KCgpID0+IHtcclxuICAgICAgdGhpcy5pbml0aWFsaXplQ2Fyb3VzZWwoKTtcclxuICAgICAgaWYgKCF0aGlzLmlzRWRpdG9yT3Blbikge1xyXG4gICAgICAgIHRoaXMuY29udHJvbEF1dG9TbGlkZSh0cnVlKTtcclxuICAgICAgfVxyXG4gICAgfSwgMjAwKTtcclxuICB9XHJcblxyXG4gIG5nT25EZXN0cm95KCkge1xyXG4gICAgaWYgKHRoaXMuZWRpdG9yU3Vic2NyaXB0aW9uKSB7XHJcbiAgICAgIHRoaXMuZWRpdG9yU3Vic2NyaXB0aW9uLnVuc3Vic2NyaWJlKCk7XHJcbiAgICB9XHJcblxyXG4gICAgaWYgKHRoaXMuY2Fyb3VzZWxJbnN0YW5jZSkge1xyXG4gICAgICB0aGlzLmNhcm91c2VsSW5zdGFuY2UucGF1c2UoKTtcclxuICAgICAgdGhpcy5jYXJvdXNlbEluc3RhbmNlLmRpc3Bvc2UoKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpOiB2b2lkIHtcclxuICAgIGlmIChcclxuICAgICAgY2hhbmdlc1snZWRpdCddICYmXHJcbiAgICAgICFjaGFuZ2VzWydlZGl0J10uZmlyc3RDaGFuZ2VcclxuICAgICkge1xyXG4gICAgICBpZiAodGhpcy5lZGl0KSB7XHJcbiAgICAgICAgdGhpcy5jb250cm9sQXV0b1NsaWRlKGZhbHNlKTtcclxuICAgICAgfSBlbHNlIHtcclxuICAgICAgICB0aGlzLmNvbnRyb2xBdXRvU2xpZGUodHJ1ZSk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIHByaXZhdGUgaW5pdGlhbGl6ZUNhcm91c2VsKCk6IHZvaWQge1xyXG5cclxuICAgIGlmICghdGhpcy5jYXJvdXNlbEVsZW1lbnQpIHtcclxuICAgICAgcmV0dXJuO1xyXG4gICAgfVxyXG5cclxuICAgIGlmICh0eXBlb2YgYm9vdHN0cmFwID09PSAndW5kZWZpbmVkJykge1xyXG4gICAgICByZXR1cm47XHJcbiAgICB9XHJcblxyXG4gICAgY29uc3QgY2Fyb3VzZWxOYXRpdmUgPSB0aGlzLmNhcm91c2VsRWxlbWVudC5uYXRpdmVFbGVtZW50O1xyXG5cclxuICAgIHRoaXMuY2Fyb3VzZWxJbnN0YW5jZSA9XHJcbiAgICAgIGJvb3RzdHJhcC5DYXJvdXNlbC5nZXRPckNyZWF0ZUluc3RhbmNlKFxyXG4gICAgICAgIGNhcm91c2VsTmF0aXZlLFxyXG4gICAgICAgIHtcclxuICAgICAgICAgIGludGVydmFsOiAzMDAwLFxyXG4gICAgICAgICAgd3JhcDogdHJ1ZSxcclxuICAgICAgICAgIHRvdWNoOiB0cnVlXHJcbiAgICAgICAgfVxyXG4gICAgICApO1xyXG5cclxuICAgIGlmICh0aGlzLmVkaXQpIHtcclxuICAgICAgdGhpcy5jYXJvdXNlbEluc3RhbmNlLnBhdXNlKCk7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICB0aGlzLmNhcm91c2VsSW5zdGFuY2UuY3ljbGUoKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIGNvbnRyb2xBdXRvU2xpZGUoc2hvdWxkU3RhcnQ6IGJvb2xlYW4pOiB2b2lkIHtcclxuXHJcbiAgICBpZiAoIXRoaXMuY2Fyb3VzZWxJbnN0YW5jZSkge1xyXG4gICAgICByZXR1cm47XHJcbiAgICB9XHJcblxyXG4gICAgaWYgKHNob3VsZFN0YXJ0ICYmICF0aGlzLmVkaXQpIHtcclxuICAgICAgdGhpcy5jYXJvdXNlbEluc3RhbmNlLmN5Y2xlKCk7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICB0aGlzLmNhcm91c2VsSW5zdGFuY2UucGF1c2UoKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIGdldCBzdHlsZXNMYXlvdXQoKSB7XHJcbiAgICByZXR1cm4geyAuLi50aGlzLnN0eWxlcz8ubGF5b3V0IH0gYXMgTGF5T3V0TW9kZWw7XHJcbiAgfVxyXG5cclxuICBnZXQgZ2V0Qmx1clZhbHVlKCkge1xyXG4gICAgcmV0dXJuIHRoaXMuc3R5bGVzPy5iYWNrZ3JvdW5kPy5ibHVyO1xyXG4gIH1cclxuXHJcbiAgZ2V0IGdldEJhY2tncm91bmRDb2xvcigpIHtcclxuICAgIHJldHVybiB7IC4uLnRoaXMuc3R5bGVzPy5iYWNrZ3JvdW5kIH0gYXMgQmFja2dyb3VuZE1vZGVsO1xyXG4gIH1cclxuXHJcbiAgZ2V0IGdldEJhY2tncm91bmRPcGFjaXR5KCkge1xyXG4gICAgaWYgKHRoaXMuc3R5bGVzPy5iYWNrZ3JvdW5kPy5vdmVybGF5KSB7XHJcbiAgICAgIHJldHVybiB0aGlzLm9wYWNpdHlWYWx1ZSh0aGlzLnN0eWxlcy5iYWNrZ3JvdW5kPy5vdmVybGF5KTtcclxuICAgIH1cclxuICAgIHJldHVybiAnMCc7XHJcbiAgfVxyXG5cclxuICBvcGFjaXR5VmFsdWUodmFsdWU6IE92ZXJsYXlWYWx1ZSkge1xyXG4gICAgc3dpdGNoICh2YWx1ZSkge1xyXG4gICAgICBjYXNlICdWRVJZX1NUUk9ORycgYXMgT3ZlcmxheVZhbHVlOlxyXG4gICAgICAgIHJldHVybiAnMC41JztcclxuICAgICAgY2FzZSAnU1RST05HJyBhcyBPdmVybGF5VmFsdWU6XHJcbiAgICAgICAgcmV0dXJuICcwLjYnO1xyXG4gICAgICBjYXNlICdNT0RFUkFURScgYXMgT3ZlcmxheVZhbHVlOlxyXG4gICAgICAgIHJldHVybiAnMC43JztcclxuICAgICAgY2FzZSAnTElHSFQnIGFzIE92ZXJsYXlWYWx1ZTpcclxuICAgICAgICByZXR1cm4gJzAuOCc7XHJcbiAgICAgIGRlZmF1bHQ6XHJcbiAgICAgICAgcmV0dXJuICcxJztcclxuICAgIH1cclxuICB9XHJcblxyXG4gIGVkaXRTZWN0aW9uKCkge1xyXG4gICAgaWYgKHdpbmRvdy5pbm5lcldpZHRoIDw9IDQ3NSkgcmV0dXJuO1xyXG5cclxuICAgIHRoaXMuY29udHJvbEF1dG9TbGlkZShmYWxzZSk7XHJcbiAgICB0aGlzLl9ldmVudFNlcnZpY2UudG9nZ2xlRWRpdG9yRXZlbnQuZW1pdCh0cnVlKTtcclxuXHJcbiAgICBzZXRUaW1lb3V0KCgpID0+IHtcclxuICAgICAgdGhpcy5fZXZlbnRTZXJ2aWNlLmVkaXRTZWN0aW9uLmVtaXQoeyBkYXRhOiB0aGlzLmRhdGEgfSk7XHJcbiAgICB9LCAxMDApO1xyXG4gIH1cclxuXHJcbiAgZ2V0U2NyZWVuU2l6ZSgpIHtcclxuICAgIHJldHVybiB3aW5kb3cuaW5uZXJXaWR0aDtcclxuICB9XHJcblxyXG4gIGdldFNlY3Rpb25NaW5IZWlnaHQoKTogc3RyaW5nIHtcclxuICAgIGNvbnN0IGZpdCA9IHRoaXMuc3R5bGVzPy5sYXlvdXQ/LmZpdDtcclxuICAgIGNvbnN0IGlzTW9iaWxlID0gdGhpcy5nZXRTY3JlZW5TaXplKCkgPD0gNDc1O1xyXG5cclxuICAgIGlmIChmaXQgPT09ICdzY3JlZW4nKSByZXR1cm4gaXNNb2JpbGUgPyAnMTAwdmgnIDogJ2NhbGMoNzV2aCArIDEzNHB4KSc7XHJcbiAgICBpZiAoZml0ID09PSAnY29udGVudCcpIHJldHVybiBpc01vYmlsZSA/ICc1NjBweCcgOiAnNDIwcHgnO1xyXG4gICAgcmV0dXJuIGlzTW9iaWxlID8gJzU2MHB4JyA6ICc0MjBweCc7XHJcbiAgfVxyXG59IiwiPGRpdiBbaWRdPVwiZGF0YT8uaWRcIiBbc2ltcG9CYWNrZ3JvdW5kXT1cInN0eWxlcz8uYmFja2dyb3VuZFwiIHNpbXBvSG92ZXIgKGhvdmVyaW5nKT1cInNob3dFZGl0VGFicygkZXZlbnQpXCJcclxuICBjbGFzcz1cInRvdGFsLWNvbnRhaW5lclwiIFthdHRyLnN0eWxlXT1cImN1c3RvbUNsYXNzXCI+XHJcbiAgPGRpdiBjbGFzcz1cImJhbm5lci1jYXJvdXNlbC1zaGVsbCBmbGV4IHJlbGF0aXZlIGZpeC1zYWZhcmktZmxpY2tlcmluZ1wiIFtuZ1N0eWxlXT1cIntcclxuICAgICAgJ21pbi1oZWlnaHQnOiBnZXRTZWN0aW9uTWluSGVpZ2h0KCksXHJcbiAgICAgICAncGFkZGluZy10b3AnOiAnMHB4JyxcclxuICAgICAgICdwYWRkaW5nLWJvdHRvbSc6ICcwcHgnXHJcbiAgICAgfVwiIFtzcGFjaW5nQXJvdW5kXT1cInN0eWxlc0xheW91dFwiIFtpZF09XCJkYXRhPy5pZFwiIFtzaW1wb0JvcmRlcl09XCJzdHlsZXM/LmJvcmRlclwiPlxyXG4gICAgPGRpdiBjbGFzcz1cImZsZXggYnJlYWstd29yZCB3LWZ1bGwgaXRlbXMtY2VudGVyIG92ZXJmbG93LWhpZGRlbiBiYW5uZXItY2Fyb3VzZWwtY29udGVudFwiIFtpZF09XCJkYXRhPy5pZFwiPlxyXG5cclxuICAgICAgPGRpdiAjY2Fyb3VzZWxFbGVtZW50IGlkPVwiY2Fyb3VzZWxFeGFtcGxlSW50ZXJ2YWxcIiBjbGFzcz1cImNhcm91c2VsIHNsaWRlIGJhbm5lci1jYXJvdXNlbFwiXHJcbiAgICAgICAgW2F0dHIuZGF0YS1icy1yaWRlXT1cIiFlZGl0ID8gJ2Nhcm91c2VsJyA6IG51bGxcIiBkYXRhLWJzLXBhdXNlPVwiZmFsc2VcIj5cclxuXHJcbiAgICAgICAgPG9sIGNsYXNzPVwiY2Fyb3VzZWwtaW5kaWNhdG9yc1wiICpuZ0lmPVwiKGNvbnRlbnQ/Lmxpc3RJdGVtPy5kYXRhPy5sZW5ndGggfHwgMCkgPiAxXCI+XHJcbiAgICAgICAgICA8bGkgKm5nRm9yPVwibGV0IGltZyBvZiBjb250ZW50Py5saXN0SXRlbT8uZGF0YTsgbGV0IGkgPSBpbmRleFwiXHJcbiAgICAgICAgICAgIFthdHRyLmRhdGEtYnMtdGFyZ2V0XT1cIicjY2Fyb3VzZWxFeGFtcGxlSW50ZXJ2YWwnXCIgW2F0dHIuZGF0YS1icy1zbGlkZS10b109XCJpXCIgW2NsYXNzLmFjdGl2ZV09XCJpID09PSAwXCJcclxuICAgICAgICAgICAgW2F0dHIuYXJpYS1jdXJyZW50XT1cImkgPT09IDAgPyAndHJ1ZScgOiBudWxsXCI+XHJcbiAgICAgICAgICA8L2xpPlxyXG4gICAgICAgIDwvb2w+XHJcblxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJjYXJvdXNlbC1pbm5lciBiYW5uZXItY2Fyb3VzZWwtaW5uZXJcIj5cclxuICAgICAgICAgIDxkaXYgKm5nRm9yPVwibGV0IGl0ZW0gb2YgY29udGVudD8ubGlzdEl0ZW0/LmRhdGE7IGxldCBpID0gaW5kZXhcIiBjbGFzcz1cImNhcm91c2VsLWl0ZW0gYmFubmVyLWNhcm91c2VsLWl0ZW1cIlxyXG4gICAgICAgICAgICBbY2xhc3MuYWN0aXZlXT1cImkgPT09IDBcIj5cclxuICAgICAgICAgICAgPGltZyBsb2FkaW5nPVwibGF6eVwiIFtzcmNdPVwiaXRlbS5pbWFnZS51cmxcIiBbc2ltcG9CbHVyQ29udGVudF09XCJnZXRCbHVyVmFsdWVcIiBbaWRdPVwiZGF0YT8uaWRcIlxyXG4gICAgICAgICAgICAgIFtzaW1wb09iamVjdFBvc2l0aW9uXT1cIml0ZW0/LmltYWdlPy5wb3NpdGlvblwiIGNsYXNzPVwiaW1nY2xhc3MgYmFubmVyLWNhcm91c2VsLWltYWdlXCJcclxuICAgICAgICAgICAgICBbYWx0XT1cIml0ZW0/LmltYWdlPy5hbHRUZXh0IHx8ICdDYXJvdXNlbCBpbWFnZSdcIiBbYXBwSW1hZ2VFZGl0b3JdPVwiZWRpdCB8fCBmYWxzZVwiXHJcbiAgICAgICAgICAgICAgW2NsYXNzXT1cImRhdGE/LmlkK2l0ZW0uaW1hZ2UuaWRcIiBbaW1hZ2VEYXRhXT1cIml0ZW0/LmltYWdlXCIgW3NlY3Rpb25JZF09XCJkYXRhPy5pZFwiIFtpdGVtSW5kZXhdPVwiaVwiXHJcbiAgICAgICAgICAgICAgKm5nSWY9XCJpdGVtPy5pbWFnZT8udXJsXCIgLz5cclxuICAgICAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb2wteHhsLTggbXgtYXV0byByZWxhdGl2ZSBvcGFjaXR5LTEwMCBwb3NpdGlvbi1yZWxhdGl2ZSB0ZXh0LXdyYXBwZXJcIiB0ZXh0LWNvbnRlbnQtbGF5ZXJcclxuICAgICAgICAgICAgc3R5bGU9XCJ6LWluZGV4OiAxO1wiIFtpZF09XCJkYXRhPy5pZFwiICNtYWluQ29udGFpbmVyIFtzaW1wb092ZXJsYXldPVwic3R5bGVzPy5iYWNrZ3JvdW5kXCJcclxuICAgICAgICAgICAgW3NwYWNpbmdIb3Jpem9udGFsXT1cInN0eWxlc0xheW91dFwiIFtzaW1wb0xheW91dF09XCJzdHlsZXM/LmxheW91dFwiPlxyXG5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cInJvdyBnLTUganVzdGlmeS1jb250ZW50LXN0YXJ0IGNvbnRlbnQtc2lkZSB0ZXh0LWNvbnRhaW5lclwiIFtpZF09XCJkYXRhPy5pZFwiXHJcbiAgICAgICAgICAgICAgW3NpbXBvQW5pbWF0aW9uXT1cInN0eWxlcz8uYW5pbWF0aW9uXCJcclxuICAgICAgICAgICAgICBbbmdDbGFzc109XCJ7J2FsaWduLWl0ZW1zLXN0cmV0Y2gnOnN0eWxlcz8ubGF5b3V0Py5hbGlnbj09PSdsZWZ0JyB8fCBzdHlsZXM/LmxheW91dD8uYWxpZ249PT0nY2VudGVyJyB8fCBzdHlsZXM/LmxheW91dD8uYWxpZ249PT0ncmlnaHQnfVwiPlxyXG4gICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtbGctNiB3LWZ1bGwgbWF4LXctMnhsIGl0ZW1zLXN0YXJ0IGQtZmxleCBmbGV4LWNvbHVtbiBcIlxyXG4gICAgICAgICAgICAgICAgW3NpbXBvQ29udGFpbmVyQWxpZ25tZW50XT1cInN0eWxlc0xheW91dFwiIFtpZF09XCJkYXRhPy5pZFwiPlxyXG4gICAgICAgICAgICAgICAgPGRpdiAqbmdGb3I9XCJsZXQgaXRlbSBvZiBjb250ZW50Py5pbnB1dFRleHQ7IGxldCBpID0gaW5kZXhcIj5cclxuICAgICAgICAgICAgICAgICAgPGRpdiBbbmdDbGFzc109XCJpdGVtLmxhYmVsLmluY2x1ZGVzKCdIZWFkaW5nJykgPyAnaGVhZGluZy1sYXJnZSBsaC0yIG1iLTQnIDogJ2JvZHktbGFyZ2UnXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPHNpbXBvLXRleHQtZWRpdG9yIFsodmFsdWUpXT1cIml0ZW0udmFsdWVcIiBbZWRpdGFibGVdPVwiZWRpdCB8fCBmYWxzZVwiIFtzZWN0aW9uSWRdPVwiZGF0YT8uaWRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgW2lucHV0VGV4dEluZGV4XT1cImlcIiBbaXNSVEVdPVwiaXRlbS5pc1JURVwiPjwvc2ltcG8tdGV4dC1lZGl0b3I+XHJcbiAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcblxyXG4gICAgICAgICAgICAgICAgPGRpdiAqbmdJZj1cImRhdGE/LmFjdGlvbiAmJiBkYXRhPy5hY3Rpb24/LmRpc3BsYXlcIiBjbGFzcz1cImN1c3RvbWNsYXNzIHctZnVsbCBtYi0zXCIgW25nQ2xhc3NdPVwiW1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHlsZXM/LmxheW91dD8uYWxpZ24gPT09ICdsZWZ0JyA/ICdqdXN0aWZ5LWNvbnRlbnQtbWQtc3RhcnQnIDogJycsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0eWxlcz8ubGF5b3V0Py5hbGlnbiA9PT0gJ2NlbnRlcicgPyAnanVzdGlmeS1jb250ZW50LW1kLWNlbnRlcicgOiAnJyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3R5bGVzPy5sYXlvdXQ/LmFsaWduID09PSAncmlnaHQnID8gJ2p1c3RpZnktY29udGVudC1tZC1lbmQnIDogJydcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBdXCI+XHJcbiAgICAgICAgICAgICAgICAgIDxkaXYgKm5nRm9yPVwibGV0IGJ1dHRvbiBvZiBkYXRhPy5hY3Rpb24/LmJ1dHRvbnNcIiBjbGFzcz1cImJ0bi1jb250YWluZXIgXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPGFwcC1idXR0b24tZWxlbWVudCBbYnV0dG9uQ29udGVudF09XCJidXR0b24uY29udGVudFwiIFtidXR0b25TdHlsZV09XCJidXR0b24uc3R5bGVzXCJcclxuICAgICAgICAgICAgICAgICAgICAgIFtidXR0b25JZF09XCJidXR0b24uaWRcIiBbc2VjdGlvbklkXT1cImRhdGE/LmlkXCIgW2VkaXRdPVwiZWRpdFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICBbY29sb3JdPVwiZGF0YT8uc3R5bGVzPy5iYWNrZ3JvdW5kPy5hY2NlbnRDb2xvclwiXHJcbiAgICAgICAgICAgICAgICAgICAgICBbYmFja2dyb3VuZEluZm9dPVwiZGF0YT8uc3R5bGVzPy5iYWNrZ3JvdW5kXCI+PC9hcHAtYnV0dG9uLWVsZW1lbnQ+XHJcbiAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPC9kaXY+XHJcblxyXG4gICAgICAgIDxhIGNsYXNzPVwiY2Fyb3VzZWwtY29udHJvbC1wcmV2XCIgZGF0YS1icy10YXJnZXQ9XCIjY2Fyb3VzZWxFeGFtcGxlSW50ZXJ2YWxcIiByb2xlPVwiYnV0dG9uXCIgZGF0YS1icy1zbGlkZT1cInByZXZcIlxyXG4gICAgICAgICAgKm5nSWY9XCIoY29udGVudD8ubGlzdEl0ZW0/LmRhdGE/Lmxlbmd0aCB8fCAwKSA+IDFcIj5cclxuICAgICAgICAgIDxzcGFuIGNsYXNzPVwiY2Fyb3VzZWwtY29udHJvbC1wcmV2LWljb24gcHJldmlvdXMtaWNvblwiIGFyaWEtaGlkZGVuPVwidHJ1ZVwiPjwvc3Bhbj5cclxuICAgICAgICAgIDxzcGFuIGNsYXNzPVwic3Itb25seVwiPlByZXZpb3VzPC9zcGFuPlxyXG4gICAgICAgIDwvYT5cclxuXHJcbiAgICAgICAgPGEgY2xhc3M9XCJjYXJvdXNlbC1jb250cm9sLW5leHRcIiBkYXRhLWJzLXRhcmdldD1cIiNjYXJvdXNlbEV4YW1wbGVJbnRlcnZhbFwiIHJvbGU9XCJidXR0b25cIiBkYXRhLWJzLXNsaWRlPVwibmV4dFwiXHJcbiAgICAgICAgICAqbmdJZj1cIihjb250ZW50Py5saXN0SXRlbT8uZGF0YT8ubGVuZ3RoIHx8IDApID4gMVwiPlxyXG4gICAgICAgICAgPHNwYW4gY2xhc3M9XCJjYXJvdXNlbC1jb250cm9sLW5leHQtaWNvbiBwcmV2aW91cy1pY29uXCIgYXJpYS1oaWRkZW49XCJ0cnVlXCI+PC9zcGFuPlxyXG4gICAgICAgICAgPHNwYW4gY2xhc3M9XCJzci1vbmx5XCI+TmV4dDwvc3Bhbj5cclxuICAgICAgICA8L2E+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgPC9kaXY+XHJcbiAgPC9kaXY+XHJcblxyXG4gIDxuZy1jb250YWluZXIgKm5nSWY9XCJzdHlsZXM/LmRldmlkZXI/LmRpc3BsYXlcIj5cclxuICAgIDxzaW1wby1zdmctZGl2aWRlciBbZGl2aWRlclR5cGVdPVwic3R5bGVzPy5kZXZpZGVyPy5kZXZpZGVyVHlwZVwiXHJcbiAgICAgIFtjb2xvcl09XCJuZXh0Q29tcG9uZW50Q29sb3I/LmNvbG9yXCI+PC9zaW1wby1zdmctZGl2aWRlcj5cclxuICA8L25nLWNvbnRhaW5lcj5cclxuXHJcbiAgPGRpdiBbbmdDbGFzc109XCJ7J2hvdmVyX2VmZmVjdCc6IGVkaXR9XCIgKm5nSWY9XCJzaG93RWRpdG9yc1wiIChjbGljayk9XCJlZGl0U2VjdGlvbigpXCI+XHJcbiAgICA8c2ltcG8taG92ZXItZWxlbWVudHMgW2RhdGFdPVwiZGF0YVwiIFtpbmRleF09XCJpbmRleFwiIFtlZGl0T3B0aW9uc109XCJlZGl0XCI+PC9zaW1wby1ob3Zlci1lbGVtZW50cz5cclxuICA8L2Rpdj5cclxuXHJcbiAgPGRpdiAqbmdJZj1cInNob3dEZWxldGVcIiBbbmdDbGFzc109XCJ7J2hvdmVyX2VmZmVjdCc6IGRlbGV0ZX1cIj5cclxuICAgIDxzaW1wby1kZWxldGUtaG92ZXItZWxlbWVudCBbZGF0YV09XCJkYXRhXCIgW2luZGV4XT1cImluZGV4XCI+PC9zaW1wby1kZWxldGUtaG92ZXItZWxlbWVudD5cclxuICA8L2Rpdj5cclxuPC9kaXY+Il19
@@ -1,2 +1,2 @@
1
1
  export {};
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFubmVyLWNhcm91c2VsLm1vZGVsLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc2ltcG8tdWkvc3JjL2xpYi9zZWN0aW9ucy9iYW5uZXItY2Fyb3VzZWwvYmFubmVyLWNhcm91c2VsLm1vZGVsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb3JuZXJzLCBPdmVybGF5VmFsdWUgfSBmcm9tICcuLi8uLi9zdHlsZXMvaW5kZXgnO1xuaW1wb3J0IHtcbiAgICBBY3Rpb25Nb2RlbCxcbiAgSW1hZ2UsXG4gIEltYWdlU3R5bGUsXG4gIElucHV0VGV4dE1vZGVsLFxuICBMaXN0SXRlbU1vZGFsLFxuICBTdHlsZXNNb2RlbCxcbn0gZnJvbSAnLi4vLi4vc3R5bGVzL3N0eWxlLm1vZGVsJztcblxuZXhwb3J0IGludGVyZmFjZSBCYW5uZXJDYXJvdXNlbE1vZGVsIHtcbiAgICBpZDogc3RyaW5nO1xuICAgIHNlY3Rpb25UeXBlOiBzdHJpbmcsXG4gICAgc2VjdGlvbk5hbWU6IHN0cmluZyxcbiAgICBjb250ZW50OiBCYW5uZXJDYXJvdXNlbENvbnRlbnRNb2RlbDtcbiAgICBzdHlsZXM6IEJhbm5lckNhcm91c2VsU3R5bGVzTW9kZWw7XG4gICAgYWN0aW9uOiBBY3Rpb25Nb2RlbDtcbn1cblxuXG5leHBvcnQgaW50ZXJmYWNlIEJhbm5lckNhcm91c2VsQ29udGVudE1vZGVsIHtcbiAgICBpbnB1dFRleHQ6IFtJbnB1dFRleHRNb2RlbF07XG4gICAgbGlzdEl0ZW06IExpc3RJdGVtTW9kYWw8QmFubmVyQ2Fyb3VzZWxJdGVtTW9kZWw+O1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEJhbm5lckNhcm91c2VsSXRlbU1vZGVsIHtcbiAgICBsYWJlbDogc3RyaW5nO1xuICAgIGltYWdlOiBJbWFnZTtcbiAgfVxuXG5leHBvcnQgaW50ZXJmYWNlIHRleHRNb2RlbHtcbiAgICB2YWx1ZSA6IHN0cmluZ1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEJhbm5lckNhcm91c2VsU3R5bGVzTW9kZWwgZXh0ZW5kcyBTdHlsZXNNb2RlbHtcbiAgICBjb3JuZXJzOiBDb3JuZXJzO1xufVxuIl19
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFubmVyLWNhcm91c2VsLm1vZGVsLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc2ltcG8tdWkvc3JjL2xpYi9zZWN0aW9ucy9iYW5uZXItY2Fyb3VzZWwvYmFubmVyLWNhcm91c2VsLm1vZGVsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb3JuZXJzLCBPdmVybGF5VmFsdWUgfSBmcm9tICcuLi8uLi9zdHlsZXMvaW5kZXgnO1xyXG5pbXBvcnQge1xyXG4gICAgQWN0aW9uTW9kZWwsXHJcbiAgSW1hZ2UsXHJcbiAgSW1hZ2VTdHlsZSxcclxuICBJbnB1dFRleHRNb2RlbCxcclxuICBMaXN0SXRlbU1vZGFsLFxyXG4gIFN0eWxlc01vZGVsLFxyXG59IGZyb20gJy4uLy4uL3N0eWxlcy9zdHlsZS5tb2RlbCc7XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIEJhbm5lckNhcm91c2VsTW9kZWwge1xyXG4gICAgaWQ6IHN0cmluZztcclxuICAgIHNlY3Rpb25UeXBlOiBzdHJpbmcsXHJcbiAgICBzZWN0aW9uTmFtZTogc3RyaW5nLFxyXG4gICAgY29udGVudDogQmFubmVyQ2Fyb3VzZWxDb250ZW50TW9kZWw7XHJcbiAgICBzdHlsZXM6IEJhbm5lckNhcm91c2VsU3R5bGVzTW9kZWw7XHJcbiAgICBhY3Rpb246IEFjdGlvbk1vZGVsO1xyXG59XHJcblxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBCYW5uZXJDYXJvdXNlbENvbnRlbnRNb2RlbCB7XHJcbiAgICBpbnB1dFRleHQ6IFtJbnB1dFRleHRNb2RlbF07XHJcbiAgICBsaXN0SXRlbTogTGlzdEl0ZW1Nb2RhbDxCYW5uZXJDYXJvdXNlbEl0ZW1Nb2RlbD47XHJcbn1cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgQmFubmVyQ2Fyb3VzZWxJdGVtTW9kZWwge1xyXG4gICAgbGFiZWw6IHN0cmluZztcclxuICAgIGltYWdlOiBJbWFnZTtcclxuICB9XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIHRleHRNb2RlbHtcclxuICAgIHZhbHVlIDogc3RyaW5nXHJcbn1cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgQmFubmVyQ2Fyb3VzZWxTdHlsZXNNb2RlbCBleHRlbmRzIFN0eWxlc01vZGVse1xyXG4gICAgY29ybmVyczogQ29ybmVycztcclxufVxyXG4iXX0=
@@ -145,4 +145,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
145
145
  type: HostListener,
146
146
  args: ["window: resize", ["$event"]]
147
147
  }] } });
148
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFubmVyLWdyaWQtc2VjdGlvbi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zaW1wby11aS9zcmMvbGliL3NlY3Rpb25zL2Jhbm5lci1ncmlkLXNlY3Rpb24vYmFubmVyLWdyaWQtc2VjdGlvbi5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zaW1wby11aS9zcmMvbGliL3NlY3Rpb25zL2Jhbm5lci1ncmlkLXNlY3Rpb24vYmFubmVyLWdyaWQtc2VjdGlvbi5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQVUsTUFBTSxlQUFlLENBQUM7QUFHdkUsT0FBTyxXQUFXLE1BQU0sZ0JBQWdCLENBQUM7QUFDekMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSx5Q0FBeUMsQ0FBQztBQUN6RSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxzQ0FBc0MsQ0FBQTtBQUMxRSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSwyQ0FBMkMsQ0FBQztBQUNwRixPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQztBQUNyRSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sa0NBQWtDLENBQUM7QUFDbkUsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sMERBQTBELENBQUM7QUFDbEcsT0FBTyxFQUFFLDJCQUEyQixFQUFFLE1BQU0sc0VBQXNFLENBQUM7QUFDbkgsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sb0RBQW9ELENBQUM7QUFDMUYsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLGtDQUFrQyxDQUFDO0FBQ25FLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLHFDQUFxQyxD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bkIsdUJBQXVCLG1HQUN2QixzQkFBc0I7OzRGQUdiLDBCQUEwQjtrQkE1QnRDLFNBQVM7K0JBQ0UsMkJBQTJCLGNBQ3pCLElBQUksV0FHUCxDQUFDLFlBQVk7d0JBQ3BCLGNBQWM7d0JBQ2QsbUJBQW1CO3dCQUNuQixnQkFBZ0I7d0JBQ2hCLGVBQWU7d0JBQ2Ysc0JBQXNCO3dCQUN0QiwyQkFBMkI7d0JBQzNCLG9CQUFvQjt3QkFDcEIsZUFBZTt3QkFDZixrQkFBa0I7d0JBQ2xCLGdDQUFnQzt3QkFDaEMsdUJBQXVCO3dCQUN2Qiw4QkFBOEI7d0JBQzlCLG1CQUFtQjt3QkFDbkIsb0JBQW9CO3dCQUNwQiwwQkFBMEI7d0JBQzFCLGdCQUFnQjt3QkFDaEIsZUFBZTt3QkFDZixtQkFBbUI7d0JBQ25CLHVCQUF1Qjt3QkFDdkIsc0JBQXNCO3FCQUN2QjtrRkFHUSxJQUFJO3NCQUFaLEtBQUs7Z0JBQ0csSUFBSTtzQkFBWixLQUFLO2dCQUdHLE1BQU07c0JBQWQsS0FBSztnQkFDRyxXQUFXO3NCQUFuQixLQUFLO2dCQUNHLEtBQUs7c0JBQWIsS0FBSztnQkFDRyxrQkFBa0I7c0JBQTFCLEtBQUs7Z0JBb0JOLGFBQWE7c0JBRFosWUFBWTt1QkFBQyxnQkFBZ0IsRUFBRSxDQUFDLFFBQVEsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgSG9zdExpc3RlbmVyLCBJbnB1dCwgT25Jbml0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBCYW5uZXJHcmlkU2VjdGlvbk1vZGVsLCBCYW5uZXJHcmlkQ29udGVudE1vZGVsLCBCYW5uZXJHcmlkU3R5bGVzTW9kZWwgfSBmcm9tICcuL2Jhbm5lci1ncmlkLXNlY3Rpb24ubW9kZWwnO1xuaW1wb3J0IHsgRXZlbnRzU2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL2V2ZW50cy5zZXJ2aWNlJztcbmltcG9ydCBCYXNlU2VjdGlvbiBmcm9tICcuLi9CYXNlU2VjdGlvbic7XG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgSG92ZXJEaXJlY3RpdmUgfSBmcm9tICcuLi8uLi9kaXJlY3RpdmUvaG92ZXItZWxlbWVudC1kaXJlY3RpdmUnO1xuaW1wb3J0IHsgQmFja2dyb3VuZERpcmVjdGl2ZSB9IGZyb20gJy4uLy4uL2RpcmVjdGl2ZS9iYWNrZ3JvdW5kLWRpcmVjdGl2ZSdcbmltcG9ydCB7IEltYWdlRGlyZWN0aXZlRGlyZWN0aXZlIH0gZnJvbSAnLi4vLi4vZGlyZWN0aXZlL2ltYWdlLWRpcmVjdGl2ZS5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgT3ZlcmxheURpcmVjdGl2ZSB9IGZyb20gJy4uLy4uL2RpcmVjdGl2ZS9vdmVybGF5LWRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBDb3JuZXJEaXJlY3RpdmUgfSBmcm9tICcuLi8uLi9kaXJlY3RpdmUvY29ybmVyLWRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBIb3ZlckVsZW1lbnRzQ29tcG9uZW50IH0gZnJvbSBcIi4uLy4uL2NvbXBvbmVudHMvaG92ZXItZWxlbWVudHMvaG92ZXItZWxlbWVudHMuY29tcG9uZW50XCI7XG5pbXBvcnQgeyBEZWxldGVIb3ZlckVsZW1lbnRDb21wb25lbnQgfSBmcm9tIFwiLi4vLi4vY29tcG9uZW50cy9kZWxldGUtaG92ZXItZWxlbWVudC9kZWxldGUtaG92ZXItZWxlbWVudC5jb21wb25lbnRcIjtcbmltcG9ydCB7IFNpbXBvQnV0dG9uQ29tcG9uZW50IH0gZnJvbSBcIi4uLy4uL2VsZW1lbnRzL3NpbXBvLWJ1dHRvbi9zaW1wby1idXR0b24uY29tcG9uZW50XCI7XG5pbXBvcnQgeyBCb3JkZXJEaXJlY3RpdmUgfSBmcm9tICcuLi8uLi9kaXJlY3RpdmUvYm9yZGVyLWRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBBbmltYXRpb25EaXJlY3RpdmUgfSBmcm9tICcuLi8uLi9kaXJlY3RpdmUvYW5pbWF0aW9uLWRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBQb3NpdGlvbkxheW91dERpcmVjdGl2ZURpcmVjdGl2ZSB9IGZyb20gJy4uLy4uL2RpcmVjdGl2ZS9wb3NpdGlvbi1sYXlvdXQtZGlyZWN0aXZlLmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBPYmplY3RQb3NpdGlvbkRpcmVjdGl2ZSB9IGZyb20gJy4uLy4uL2RpcmVjdGl2ZS9pbWFnZS1wb3NpdGlvbi5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgc2ltcG9Db25ldGVuQWxpZ25tZW50RGlyZWN0aXZlIH0gZnJvbSAnLi4vLi4vZGlyZWN0aXZlL2NvbnRlbnQtYWxpZ25tZW50LWRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBCYWNrZ3JvdW5kTW9kZWwsIExheU91dE1vZGVsLCBTcGFjaW5nTW9kZWwgfSBmcm9tICcuLi8uLi9zdHlsZXMvc3R5bGUubW9kZWwnO1xuaW1wb3J0IHsgU3ZnRGl2aWRlckNvbXBvbmVudCB9IGZyb20gJy4uLy4uL2VsZW1lbnRzL3N2Zy1kaXZpZGVyL3N2Zy1kaXZpZGVyLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBUZXh0RWRpdG9yQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vZWxlbWVudHMvdGV4dC1lZGl0b3IvdGV4dC1lZGl0b3IuY29tcG9uZW50JztcbmltcG9ydCB7IEltYWdlRWRpdG9yRGlyZWN0aXZlIH0gZnJvbSAnLi4vLi4vZGlyZWN0aXZlL2ltYWdlLWVkaXRvci5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgU3BhY2luZ0hvcml6b250YWxEaXJlY3RpdmUgfSBmcm9tICcuLi8uLi9kaXJlY3RpdmUvc3BhY2luZy1ob3Jpem9udGFsLmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBTcGFjaW5nRGlyZWN0aXZlIH0gZnJvbSAnLi4vLi4vZGlyZWN0aXZlL3NwYWNpbmcuZGlyZWN0aXZlJztcbmltcG9ydCB7IEhlaWdodERpcmVjdGl2ZSB9IGZyb20gJy4uLy4uL2RpcmVjdGl2ZS9oZWlnaHQuZGlyZWN0aXZlJztcbmltcG9ydCB7IFNwYWNpbmdBcm91bmREaXJlY3RpdmUgfSBmcm9tICcuLi8uLi9kaXJlY3RpdmUvc3BhY2luZy1hcm91bmQuZGlyZWN0aXZlJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnc2ltcG8tYmFubmVyLWdyaWQtc2VjdGlvbicsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIHRlbXBsYXRlVXJsOiAnLi9iYW5uZXItZ3JpZC1zZWN0aW9uLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmw6ICcuL2Jhbm5lci1ncmlkLXNlY3Rpb24uY29tcG9uZW50LmNzcycsXG4gIGltcG9ydHM6IFtDb21tb25Nb2R1bGUsXG4gICAgSG92ZXJEaXJlY3RpdmUsXG4gICAgQmFja2dyb3VuZERpcmVjdGl2ZSxcbiAgICBPdmVybGF5RGlyZWN0aXZlLFxuICAgIENvcm5lckRpcmVjdGl2ZSxcbiAgICBIb3ZlckVsZW1lbnRzQ29tcG9uZW50LFxuICAgIERlbGV0ZUhvdmVyRWxlbWVudENvbXBvbmVudCxcbiAgICBTaW1wb0J1dHRvbkNvbXBvbmVudCxcbiAgICBCb3JkZXJEaXJlY3RpdmUsXG4gICAgQW5pbWF0aW9uRGlyZWN0aXZlLFxuICAgIFBvc2l0aW9uTGF5b3V0RGlyZWN0aXZlRGlyZWN0aXZlLFxuICAgIE9iamVjdFBvc2l0aW9uRGlyZWN0aXZlLFxuICAgIHNpbXBvQ29uZXRlbkFsaWdubWVudERpcmVjdGl2ZSxcbiAgICBUZXh0RWRpdG9yQ29tcG9uZW50LFxuICAgIEltYWdlRWRpdG9yRGlyZWN0aXZlLFxuICAgIFNwYWNpbmdIb3Jpem9udGFsRGlyZWN0aXZlLFxuICAgIFNwYWNpbmdEaXJlY3RpdmUsXG4gICAgSGVpZ2h0RGlyZWN0aXZlLFxuICAgIFN2Z0RpdmlkZXJDb21wb25lbnQsXG4gICAgSW1hZ2VEaXJlY3RpdmVEaXJlY3RpdmUsXG4gICAgU3BhY2luZ0Fyb3VuZERpcmVjdGl2ZVxuICBdXG59KVxuZXhwb3J0IGNsYXNzIEJhbm5lckdyaWRTZWN0aW9uQ29tcG9uZW50IGV4dGVuZHMgQmFzZVNlY3Rpb24gaW1wbGVtZW50cyBPbkluaXQge1xuICBASW5wdXQoKSBkYXRhPzogQmFubmVyR3JpZFNlY3Rpb25Nb2RlbDtcbiAgQElucHV0KCkgZWRpdD86IGJvb2xlYW47XG4gIGNvbnRlbnQ/OiBCYW5uZXJHcmlkQ29udGVudE1vZGVsO1xuICBzdHlsZXM/OiBCYW5uZXJHcmlkU3R5bGVzTW9kZWw7XG4gIEBJbnB1dCgpIGRlbGV0ZT86IGJvb2xlYW47XG4gIEBJbnB1dCgpIGN1c3RvbUNsYXNzPzogc3RyaW5nO1xuICBASW5wdXQoKSBpbmRleD86IG51bWJlcjtcbiAgQElucHV0KCkgbmV4dENvbXBvbmVudENvbG9yPzogQmFja2dyb3VuZE1vZGVsO1xuXG4gIGxpc3RJdGVtczogYW55O1xuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIF9ldmVudFNlcnZpY2U6IEV2ZW50c1NlcnZpY2VcbiAgKSB7XG4gICAgc3VwZXIoKTtcbiAgICB0aGlzLmdldFNjcmVlblNpemUoKVxuICB9XG5cbiAgbmdPbkluaXQoKSB7XG4gICAgdGhpcy5jb250ZW50ID0gdGhpcy5kYXRhPy5jb250ZW50O1xuICAgIHRoaXMubGlzdEl0ZW1zID0gdGhpcy5kYXRhPy5jb250ZW50Lmxpc3RJdGVtLmRhdGFcbiAgICB0aGlzLnN0eWxlcyA9IHRoaXMuZGF0YT8uc3R5bGVzO1xuICAgIGlmICghdGhpcy5zdHlsZXMgfHwgIXRoaXMuY29udGVudCkgcmV0dXJuO1xuICAgIHRoaXMuZGVsZXRlU2VsZWN0ZWQgPSB0aGlzLmRlbGV0ZVxuICB9XG5cbiAgc2NyZWVuV2lkdGg6IGFueSA9IFwiXCJcbiAgQEhvc3RMaXN0ZW5lcihcIndpbmRvdzogcmVzaXplXCIsIFtcIiRldmVudFwiXSlcbiAgZ2V0U2NyZWVuU2l6ZSgpIHtcbiAgICB0aGlzLnNjcmVlbldpZHRoID0gd2luZG93LmlubmVyV2lkdGg7XG4gIH1cblxuICBnZXQgc3R5bGVzTGF5b3V0KCkge1xuICAgIC8vICAgaWYodGhpcy5kYXRhPy5zdHlsZXM/LmJvcmRlckxlc3NJbWFnZSlcbiAgICAvLyByZXR1cm4gdW5kZWZpbmVkXG5cbiAgICByZXR1cm4geyAuLi50aGlzLnN0eWxlcz8ubGF5b3V0IH0gYXMgTGF5T3V0TW9kZWw7XG4gIH1cblxuICBnZXQgY2FuTWVyZ2VOYXZiYXIoKSB7XG4gICAgcmV0dXJuIHRoaXMuc3R5bGVzPy5tZXJnZTtcbiAgfVxuICBnZXQgaXNCb3JkZXJsZXNzSW1hZ2UoKSB7XG4gICAgcmV0dXJuIHRoaXMuc3R5bGVzPy5ib3JkZXJMZXNzSW1hZ2UgJiYgKHRoaXMuc3R5bGVzPy5wb3NpdGlvbkxheW91dC52YWx1ZSA9PSBcImxlZnRcIiB8fCB0aGlzLnN0eWxlcz8ucG9zaXRpb25MYXlvdXQudmFsdWUgPT0gXCJyaWdodFwiKTtcbiAgfVxuICBlZGl0U2VjdGlvbigpIHtcbiAgICBpZiAod2luZG93LmlubmVyV2lkdGggPD0gNDc1KVxuICAgICAgcmV0dXJuXG5cbiAgICB0aGlzLl9ldmVudFNlcnZpY2UudG9nZ2xlRWRpdG9yRXZlbnQuZW1pdChmYWxzZSk7XG4gICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICB0aGlzLl9ldmVudFNlcnZpY2UuZWRpdFNlY3Rpb24uZW1pdCh7IGRhdGE6IHRoaXMuZGF0YSB9KTtcbiAgICB9LCAxMDApO1xuICB9XG5cbiAgZ2V0SW1hZ2VDbGFzcyhpbmRleDogbnVtYmVyKTogc3RyaW5nIHtcbiAgICAgIGNvbnN0IGl0ZW1Db3VudCA9IHRoaXMuZGF0YT8uY29udGVudD8ubGlzdEl0ZW0/LmRhdGE/Lmxlbmd0aCB8fCAwXG4gICAgaWYgKHRoaXMuc2NyZWVuV2lkdGggPiA0NzUgJiYgKHRoaXMuZGF0YT8uc3R5bGVzPy5wb3NpdGlvbkxheW91dD8udmFsdWUgPT09IFwidG9wXCIgfHwgdGhpcy5kYXRhPy5zdHlsZXM/LnBvc2l0aW9uTGF5b3V0Py52YWx1ZSA9PT0gXCJib3R0b21cIikpIHtcbiAgICAgIGlmKGl0ZW1Db3VudCAlIDMgPT0gMClcbiAgICAgICAgcmV0dXJuICdjb2wtNCdcbiAgICAgIGlmKGl0ZW1Db3VudCAlIDMgPT0gMSAmJiBpbmRleCA9PSBpdGVtQ291bnQgLSAxKVxuICAgICAgICByZXR1cm4gJ2NvbC0xMidcbiAgICAgIGlmKGl0ZW1Db3VudCAlIDMgPT0gMiAmJiAoaW5kZXggPT0gaXRlbUNvdW50IC0gMSB8fCBpbmRleCA9PSBpdGVtQ291bnQgLSAyKSlcbiAgICAgICAgcmV0dXJuICdjb2wtNidcbiAgICAgIHJldHVybiAnY29sLTQnXG4gICAgfVxuICAgIGlmIChpdGVtQ291bnQgPD0gMilcbiAgICAgIHJldHVybiAnY29sLTEyJ1xuICAgIGlmIChpdGVtQ291bnQgJSAyID09IDApXG4gICAgICByZXR1cm4gJ2NvbC02J1xuICAgIGlmIChpdGVtQ291bnQgJSAyICE9IDAgJiYgaW5kZXggPT0gaXRlbUNvdW50IC0gMSlcbiAgICAgIHJldHVybiAnY29sLTEyJ1xuICAgIHJldHVybiAnY29sLTYnXG4gIH1cblxuICBnZXQgc3BhY2luZ0xheW91dCgpIHtcbiAgICAvLyBpZih0aGlzLmRhdGE/LnN0eWxlcz8uYm9yZGVyTGVzc0ltYWdlKVxuICAgIC8vICAgcmV0dXJuIHVuZGVmaW5lZFxuICAgIHJldHVybiB7IC4uLnRoaXMuc3R5bGVzPy5sYXlvdXQ/LnNwYWNpbmcgfSBhcyBTcGFjaW5nTW9kZWxcbiAgfVxuICBnZXQgYWxpZ25tZW50TGF5b3V0KCkge1xuICAgIHJldHVybiB0aGlzLnN0eWxlcz8ubGF5b3V0Py5hbGlnblxuICB9XG4gIGdldCBmaXRMYXlvdXQoKSB7XG4gICAgcmV0dXJuIHRoaXMuc3R5bGVzPy5sYXlvdXQ/LmZpdFxuICB9XG5cbiAgZ2V0VGV4dENvbG9yKGJnQ29sb3I6IHN0cmluZykge1xuICAgIGlmIChiZ0NvbG9yKSB7XG4gICAgICBjb25zdCB0aHJlc2hvbGQgPSAxMzA7IC8vIEFkanVzdCB0aGlzIHRocmVzaG9sZCBhcyBuZWVkZWRcbiAgICAgIGNvbnN0IHIgPSBwYXJzZUludChiZ0NvbG9yLnNsaWNlKDEsIDMpLCAxNik7XG4gICAgICBjb25zdCBnID0gcGFyc2VJbnQoYmdDb2xvci5zbGljZSgzLCA1KSwgMTYpO1xuICAgICAgY29uc3QgYiA9IHBhcnNlSW50KGJnQ29sb3Iuc2xpY2UoNSwgNyksIDE2KTtcbiAgICAgIGNvbnN0IGJyaWdodG5lc3MgPSAociAqIDI5OSArIGcgKiA1ODcgKyBiICogMTE0KSAvIDEwMDA7XG5cbiAgICAgIHJldHVybiBicmlnaHRuZXNzID4gdGhyZXNob2xkID8gJyMwMDAwMDAnIDogJyNmZmZmZmYnO1xuICAgIH1cbiAgICByZXR1cm4gXCIjZmZmZmZmO1wiXG4gIH1cblxuXG59XG4iLCI8c2VjdGlvbiBjbGFzcz1cInRvdGFsLWNvbnRhaW5lclwiIHNpbXBvSG92ZXIgKGhvdmVyaW5nKT1cInNob3dFZGl0VGFicygkZXZlbnQpXCI+XHJcbiAgPGRpdiBbaWRdPVwiZGF0YT8uaWRcIiBbc2ltcG9Cb3JkZXJdPVwic3R5bGVzPy5ib3JkZXJcIiBbc3BhY2luZ0Fyb3VuZF09XCJzdHlsZXNMYXlvdXRcIj5cclxuICAgIDxkaXYgY2xhc3M9XCJyb3cgdG9wLXBhcmVudCBoLTEwMCBhbGlnbi1qdXN0aWZ5LXVuc2V0XCIgW2lkXT1cImRhdGE/LmlkXCIgW3NpbXBvQW5pbWF0aW9uXT1cInN0eWxlcz8uYW5pbWF0aW9uXCJcclxuICAgICAgW3NpbXBvUG9zaXRpb25MYXlvdXREaXJlY3RpdmVdPVwic3R5bGVzPy5wb3NpdGlvbkxheW91dFwiXHJcbiAgICAgIFtzaW1wb0JhY2tncm91bmRdPVwic3R5bGVzPy5iYWNrZ3JvdW5kXCIgW3NpbXBvSGVpZ2h0XT1cImZpdExheW91dFwiPlxyXG4gICAgICA8ZGl2IGNsYXNzPVwiY29sXCIgW3NwYWNpbmdIb3Jpem9udGFsXT1cIiFkYXRhPy5zdHlsZXM/LmJvcmRlckxlc3NJbWFnZSA/IHN0eWxlc0xheW91dCA6IHVuZGVmaW5lZFwiXHJcbiAgICAgICAgW2NsYXNzLnAwXT1cImRhdGE/LnN0eWxlcz8uYm9yZGVyTGVzc0ltYWdlXCIgIFtzaW1wb092ZXJsYXldPVwic3R5bGVzPy5iYWNrZ3JvdW5kXCJcclxuICAgICAgICBbc2ltcG9TcGFjaW5nXT1cIiFkYXRhPy5zdHlsZXM/LmJvcmRlckxlc3NJbWFnZSA/IHNwYWNpbmdMYXlvdXQgOiB1bmRlZmluZWRcIiBbaWRdPVwiZGF0YT8uaWRcIj5cclxuICAgICAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwiaW1hZ2VUZW1wbGF0ZVwiPjwvbmctY29udGFpbmVyPlxyXG4gICAgICA8L2Rpdj5cclxuICAgICAgPGRpdiBjbGFzcz1cImNvbCBkLWZsZXggZmxleC1jb2x1bW5cIiBbc3BhY2luZ0hvcml6b250YWxdPVwic3R5bGVzTGF5b3V0XCIgIFtzaW1wb092ZXJsYXldPVwic3R5bGVzPy5iYWNrZ3JvdW5kXCJcclxuICAgICAgICBbc2ltcG9Db250ZW50QWxpZ25tZW50XT1cInN0eWxlcz8uY29udGVudEFsaWdubWVudFwiIFtzaW1wb1NwYWNpbmddPVwic3BhY2luZ0xheW91dFwiIFtpZF09XCJkYXRhPy5pZFwiPlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJ0ZXh0LXBhcmVudFwiPlxyXG4gICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cInRleHRUZW1wbGF0ZVwiPjwvbmctY29udGFpbmVyPlxyXG4gICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cImJ1dHRvblRlbXBsYXRlXCI+PC9uZy1jb250YWluZXI+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgPC9kaXY+XHJcbiAgPC9kaXY+XHJcbiAgPG5nLWNvbnRhaW5lciAqbmdJZj1cInN0eWxlcz8uZGV2aWRlcj8uZGlzcGxheVwiPlxyXG4gICAgPHNpbXBvLXN2Zy1kaXZpZGVyIFtkaXZpZGVyVHlwZV09XCJzdHlsZXM/LmRldmlkZXI/LmRldmlkZXJUeXBlXCJcclxuICAgICAgW2NvbG9yXT1cIm5leHRDb21wb25lbnRDb2xvcj8uY29sb3JcIj48L3NpbXBvLXN2Zy1kaXZpZGVyPlxyXG4gIDwvbmctY29udGFpbmVyPlxyXG4gIDxkaXYgW25nQ2xhc3NdPVwieydob3Zlcl9lZmZlY3QnOiBlZGl0fVwiICpuZ0lmPVwic2hvd0VkaXRvcnNcIj5cclxuICAgIDxzaW1wby1ob3Zlci1lbGVtZW50cyBbZGF0YV09XCJkYXRhXCIgW2luZGV4XT1cImluZGV4XCIgW2VkaXRPcHRpb25zXT1cImVkaXRcIlxyXG4gICAgICBbaXNNZXJnZWRdPVwic3R5bGVzPy5tZXJnZSA/PyBmYWxzZVwiPjwvc2ltcG8taG92ZXItZWxlbWVudHM+XHJcbiAgPC9kaXY+XHJcbiAgPGRpdiAqbmdJZj1cInNob3dEZWxldGVcIiBbbmdDbGFzc109XCJ7J2hvdmVyX2VmZmVjdCc6IGRlbGV0ZX1cIj5cclxuICAgIDxzaW1wby1kZWxldGUtaG92ZXItZWxlbWVudCBbZGF0YV09XCJkYXRhXCIgW2luZGV4XT1cImluZGV4XCI+PC9zaW1wby1kZWxldGUtaG92ZXItZWxlbWVudD5cclxuICA8L2Rpdj5cclxuXHJcbjwvc2VjdGlvbj5cclxuXHJcbjxuZy10ZW1wbGF0ZSAjYnV0dG9uVGVtcGxhdGU+XHJcbiAgPGRpdiBjbGFzcz1cImJ1dHRvbi1kaXNwbGF5XCIgKm5nSWY9XCJkYXRhPy5hY3Rpb24gJiYgZGF0YT8uYWN0aW9uPy5kaXNwbGF5XCIgY2xhc3M9XCJkLWZsZXggY3VzdG9tY2xhc3Mgdy1mdWxsIGdhcC0yXCJcclxuICAgIFtuZ0NsYXNzXT1cIltcclxuICAgICAgc3R5bGVzPy5sYXlvdXQ/LmFsaWduID09PSAnbGVmdCcgPyAnanVzdGlmeS1jb250ZW50LW1kLXN0YXJ0JyA6ICcnLFxyXG4gICAgICBzdHlsZXM/LmxheW91dD8uYWxpZ24gPT09ICdjZW50ZXInID8gJ2p1c3RpZnktY29udGVudC1tZC1jZW50ZXInIDogJycsXHJcbiAgICAgIHN0eWxlcz8ubGF5b3V0Py5hbGlnbiA9PT0gJ3JpZ2h0JyA/ICdqdXN0aWZ5LWNvbnRlbnQtbWQtZW5kJyA6ICcnLFxyXG4gICAgICBzY3JlZW5XaWR0aCA8IDQ3NSA/ICdqdXN0aWZ5LWNvbnRlbnQtY2VudGVyJyA6ICcnXHJcbiAgICBdXCI+XHJcbiAgICA8bmctY29udGFpbmVyICpuZ0Zvcj1cImxldCBidXR0b24gb2YgZGF0YT8uYWN0aW9uPy5idXR0b25zXCI+XHJcbiAgICAgIDxhcHAtYnV0dG9uLWVsZW1lbnQgW2J1dHRvbkNvbnRlbnRdPVwiYnV0dG9uLmNvbnRlbnRcIiBbYnV0dG9uU3R5bGVdPVwiYnV0dG9uLnN0eWxlc1wiIFtidXR0b25JZF09XCJidXR0b24uaWRcIlxyXG4gICAgICAgIFtzZWN0aW9uSWRdPVwiZGF0YT8uaWRcIiBbY29sb3JdPVwiZGF0YT8uc3R5bGVzPy5iYWNrZ3JvdW5kPy5hY2NlbnRDb2xvclwiIFtlZGl0XT1cImVkaXRcIlxyXG4gICAgICAgIFtiYWNrZ3JvdW5kSW5mb109XCJkYXRhPy5zdHlsZXM/LmJhY2tncm91bmRcIj48L2FwcC1idXR0b24tZWxlbWVudD5cclxuICAgIDwvbmctY29udGFpbmVyPlxyXG4gIDwvZGl2PlxyXG48L25nLXRlbXBsYXRlPlxyXG5cclxuPG5nLXRlbXBsYXRlICN0ZXh0VGVtcGxhdGU+XHJcbiAgPGRpdiBbaWRdPVwiZGF0YT8uaWRcIj5cclxuICAgIDxuZy1jb250YWluZXIgKm5nRm9yPVwibGV0IGl0ZW0gb2YgY29udGVudD8uaW5wdXRUZXh0OyBsZXQgaSA9IGluZGV4XCI+XHJcbiAgICAgIDxkaXYgW25nQ2xhc3NdPVwiaXRlbS5sYWJlbC5pbmNsdWRlcygnSGVhZGluZycpID8gJ2hlYWRpbmctbGFyZ2UgbGgtMiBtYi00JyA6ICdib2R5LWxhcmdlJ1wiPlxyXG4gICAgICAgIDxzaW1wby10ZXh0LWVkaXRvciBbKHZhbHVlKV09XCJpdGVtLnZhbHVlXCIgW2VkaXRhYmxlXT1cImVkaXQgfHwgZmFsc2VcIiBbc2VjdGlvbklkXT1cImRhdGE/LmlkXCIgW2lucHV0VGV4dEluZGV4XT1cImlcIiBbaXNSVEVdPVwiaXRlbS5pc1JURVwiPjwvc2ltcG8tdGV4dC1lZGl0b3I+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgPC9uZy1jb250YWluZXI+XHJcbiAgPC9kaXY+XHJcbjwvbmctdGVtcGxhdGU+XHJcblxyXG48bmctdGVtcGxhdGUgI2ltYWdlVGVtcGxhdGU+XHJcbiAgPGRpdiBjbGFzcz1cInJvd1wiIFtzdHlsZS5yb3dHYXBdPVwiIWRhdGE/LnN0eWxlcz8uYm9yZGVyTGVzc0ltYWdlID8gJzE1cHgnIDogJzAnXCI+XHJcbiAgICA8ZGl2ICpuZ0Zvcj1cImxldCBpdGVtIG9mIGRhdGE/LmNvbnRlbnQ/Lmxpc3RJdGVtPy5kYXRhIHx8IFtdOyBsZXQgaSA9IGluZGV4XCIgW2NsYXNzXT1cImdldEltYWdlQ2xhc3MoaSlcIlxyXG4gICAgICBbY2xhc3MucDBdPVwiZGF0YT8uc3R5bGVzPy5ib3JkZXJMZXNzSW1hZ2VcIlxyXG4gICAgICBbY2xhc3MuZ3JpZC1pbWddPVwic3R5bGVzPy5wb3NpdGlvbkxheW91dD8udmFsdWUgPT0gJ2xlZnQnIHx8IHN0eWxlcz8ucG9zaXRpb25MYXlvdXQ/LnZhbHVlID09ICdyaWdodCdcIj5cclxuICAgICAgPGltZyBbc3JjXT1cIml0ZW0/LmltYWdlPy51cmxcIiBbYWx0XT1cIml0ZW0/LmltYWdlPy5hbHRUZXh0XCIgW3NpbXBvQ29ybmVyXT1cInN0eWxlcz8uY29ybmVyc1wiIFtpZF09XCJkYXRhPy5pZFwiXHJcbiAgICAgICAgW3NpbXBvSW1hZ2VEaXJlY3RpdmVdPVwic3R5bGVzPy5pbWFnZVwiIFtzaW1wb09iamVjdFBvc2l0aW9uXT1cIml0ZW0/LmltYWdlPy5wb3NpdGlvblwiXHJcbiAgICAgICAgW2FwcEltYWdlRWRpdG9yXT1cImVkaXQgfHwgZmFsc2VcIiBbaW1hZ2VEYXRhXT1cIml0ZW0/LmltYWdlXCIgW3NlY3Rpb25JZF09XCJkYXRhPy5pZFwiIFtpdGVtSW5kZXhdPVwiaVwiIGNsYXNzPVwidy0xMDAgaC0xMDBcIj5cclxuICAgIDwvZGl2PlxyXG4gIDwvZGl2PlxyXG48L25nLXRlbXBsYXRlPiJdfQ==
148
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFubmVyLWdyaWQtc2VjdGlvbi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zaW1wby11aS9zcmMvbGliL3NlY3Rpb25zL2Jhbm5lci1ncmlkLXNlY3Rpb24vYmFubmVyLWdyaWQtc2VjdGlvbi5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zaW1wby11aS9zcmMvbGliL3NlY3Rpb25zL2Jhbm5lci1ncmlkLXNlY3Rpb24vYmFubmVyLWdyaWQtc2VjdGlvbi5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQVUsTUFBTSxlQUFlLENBQUM7QUFHdkUsT0FBTyxXQUFXLE1BQU0sZ0JBQWdCLENBQUM7QUFDekMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSx5Q0FBeUMsQ0FBQztBQUN6RSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxzQ0FBc0MsQ0FBQTtBQUMxRSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSwyQ0FBMkMsQ0FBQztBQUNwRixPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQztBQUNyRSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sa0NBQWtDLENBQUM7QUFDbkUsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sMERBQTBELENBQUM7QUFDbEcsT0FBTyxFQUFFLDJCQUEyQixFQUFFLE1BQU0sc0VBQXNFLENBQUM7QUFDbkgsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sb0RBQW9ELENBQUM7QUFDMUYsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLGtDQUFrQyxDQUFDO0FBQ25FLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLHFDQUFxQyxD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bkIsdUJBQXVCLG1HQUN2QixzQkFBc0I7OzRGQUdiLDBCQUEwQjtrQkE1QnRDLFNBQVM7K0JBQ0UsMkJBQTJCLGNBQ3pCLElBQUksV0FHUCxDQUFDLFlBQVk7d0JBQ3BCLGNBQWM7d0JBQ2QsbUJBQW1CO3dCQUNuQixnQkFBZ0I7d0JBQ2hCLGVBQWU7d0JBQ2Ysc0JBQXNCO3dCQUN0QiwyQkFBMkI7d0JBQzNCLG9CQUFvQjt3QkFDcEIsZUFBZTt3QkFDZixrQkFBa0I7d0JBQ2xCLGdDQUFnQzt3QkFDaEMsdUJBQXVCO3dCQUN2Qiw4QkFBOEI7d0JBQzlCLG1CQUFtQjt3QkFDbkIsb0JBQW9CO3dCQUNwQiwwQkFBMEI7d0JBQzFCLGdCQUFnQjt3QkFDaEIsZUFBZTt3QkFDZixtQkFBbUI7d0JBQ25CLHVCQUF1Qjt3QkFDdkIsc0JBQXNCO3FCQUN2QjtrRkFHUSxJQUFJO3NCQUFaLEtBQUs7Z0JBQ0csSUFBSTtzQkFBWixLQUFLO2dCQUdHLE1BQU07c0JBQWQsS0FBSztnQkFDRyxXQUFXO3NCQUFuQixLQUFLO2dCQUNHLEtBQUs7c0JBQWIsS0FBSztnQkFDRyxrQkFBa0I7c0JBQTFCLEtBQUs7Z0JBb0JOLGFBQWE7c0JBRFosWUFBWTt1QkFBQyxnQkFBZ0IsRUFBRSxDQUFDLFFBQVEsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgSG9zdExpc3RlbmVyLCBJbnB1dCwgT25Jbml0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IEJhbm5lckdyaWRTZWN0aW9uTW9kZWwsIEJhbm5lckdyaWRDb250ZW50TW9kZWwsIEJhbm5lckdyaWRTdHlsZXNNb2RlbCB9IGZyb20gJy4vYmFubmVyLWdyaWQtc2VjdGlvbi5tb2RlbCc7XHJcbmltcG9ydCB7IEV2ZW50c1NlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy9ldmVudHMuc2VydmljZSc7XHJcbmltcG9ydCBCYXNlU2VjdGlvbiBmcm9tICcuLi9CYXNlU2VjdGlvbic7XHJcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XHJcbmltcG9ydCB7IEhvdmVyRGlyZWN0aXZlIH0gZnJvbSAnLi4vLi4vZGlyZWN0aXZlL2hvdmVyLWVsZW1lbnQtZGlyZWN0aXZlJztcclxuaW1wb3J0IHsgQmFja2dyb3VuZERpcmVjdGl2ZSB9IGZyb20gJy4uLy4uL2RpcmVjdGl2ZS9iYWNrZ3JvdW5kLWRpcmVjdGl2ZSdcclxuaW1wb3J0IHsgSW1hZ2VEaXJlY3RpdmVEaXJlY3RpdmUgfSBmcm9tICcuLi8uLi9kaXJlY3RpdmUvaW1hZ2UtZGlyZWN0aXZlLmRpcmVjdGl2ZSc7XHJcbmltcG9ydCB7IE92ZXJsYXlEaXJlY3RpdmUgfSBmcm9tICcuLi8uLi9kaXJlY3RpdmUvb3ZlcmxheS1kaXJlY3RpdmUnO1xyXG5pbXBvcnQgeyBDb3JuZXJEaXJlY3RpdmUgfSBmcm9tICcuLi8uLi9kaXJlY3RpdmUvY29ybmVyLWRpcmVjdGl2ZSc7XHJcbmltcG9ydCB7IEhvdmVyRWxlbWVudHNDb21wb25lbnQgfSBmcm9tIFwiLi4vLi4vY29tcG9uZW50cy9ob3Zlci1lbGVtZW50cy9ob3Zlci1lbGVtZW50cy5jb21wb25lbnRcIjtcclxuaW1wb3J0IHsgRGVsZXRlSG92ZXJFbGVtZW50Q29tcG9uZW50IH0gZnJvbSBcIi4uLy4uL2NvbXBvbmVudHMvZGVsZXRlLWhvdmVyLWVsZW1lbnQvZGVsZXRlLWhvdmVyLWVsZW1lbnQuY29tcG9uZW50XCI7XHJcbmltcG9ydCB7IFNpbXBvQnV0dG9uQ29tcG9uZW50IH0gZnJvbSBcIi4uLy4uL2VsZW1lbnRzL3NpbXBvLWJ1dHRvbi9zaW1wby1idXR0b24uY29tcG9uZW50XCI7XHJcbmltcG9ydCB7IEJvcmRlckRpcmVjdGl2ZSB9IGZyb20gJy4uLy4uL2RpcmVjdGl2ZS9ib3JkZXItZGlyZWN0aXZlJztcclxuaW1wb3J0IHsgQW5pbWF0aW9uRGlyZWN0aXZlIH0gZnJvbSAnLi4vLi4vZGlyZWN0aXZlL2FuaW1hdGlvbi1kaXJlY3RpdmUnO1xyXG5pbXBvcnQgeyBQb3NpdGlvbkxheW91dERpcmVjdGl2ZURpcmVjdGl2ZSB9IGZyb20gJy4uLy4uL2RpcmVjdGl2ZS9wb3NpdGlvbi1sYXlvdXQtZGlyZWN0aXZlLmRpcmVjdGl2ZSc7XHJcbmltcG9ydCB7IE9iamVjdFBvc2l0aW9uRGlyZWN0aXZlIH0gZnJvbSAnLi4vLi4vZGlyZWN0aXZlL2ltYWdlLXBvc2l0aW9uLmRpcmVjdGl2ZSc7XHJcbmltcG9ydCB7IHNpbXBvQ29uZXRlbkFsaWdubWVudERpcmVjdGl2ZSB9IGZyb20gJy4uLy4uL2RpcmVjdGl2ZS9jb250ZW50LWFsaWdubWVudC1kaXJlY3RpdmUnO1xyXG5pbXBvcnQgeyBCYWNrZ3JvdW5kTW9kZWwsIExheU91dE1vZGVsLCBTcGFjaW5nTW9kZWwgfSBmcm9tICcuLi8uLi9zdHlsZXMvc3R5bGUubW9kZWwnO1xyXG5pbXBvcnQgeyBTdmdEaXZpZGVyQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vZWxlbWVudHMvc3ZnLWRpdmlkZXIvc3ZnLWRpdmlkZXIuY29tcG9uZW50JztcclxuaW1wb3J0IHsgVGV4dEVkaXRvckNvbXBvbmVudCB9IGZyb20gJy4uLy4uL2VsZW1lbnRzL3RleHQtZWRpdG9yL3RleHQtZWRpdG9yLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEltYWdlRWRpdG9yRGlyZWN0aXZlIH0gZnJvbSAnLi4vLi4vZGlyZWN0aXZlL2ltYWdlLWVkaXRvci5kaXJlY3RpdmUnO1xyXG5pbXBvcnQgeyBTcGFjaW5nSG9yaXpvbnRhbERpcmVjdGl2ZSB9IGZyb20gJy4uLy4uL2RpcmVjdGl2ZS9zcGFjaW5nLWhvcml6b250YWwuZGlyZWN0aXZlJztcclxuaW1wb3J0IHsgU3BhY2luZ0RpcmVjdGl2ZSB9IGZyb20gJy4uLy4uL2RpcmVjdGl2ZS9zcGFjaW5nLmRpcmVjdGl2ZSc7XHJcbmltcG9ydCB7IEhlaWdodERpcmVjdGl2ZSB9IGZyb20gJy4uLy4uL2RpcmVjdGl2ZS9oZWlnaHQuZGlyZWN0aXZlJztcclxuaW1wb3J0IHsgU3BhY2luZ0Fyb3VuZERpcmVjdGl2ZSB9IGZyb20gJy4uLy4uL2RpcmVjdGl2ZS9zcGFjaW5nLWFyb3VuZC5kaXJlY3RpdmUnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdzaW1wby1iYW5uZXItZ3JpZC1zZWN0aW9uJyxcclxuICBzdGFuZGFsb25lOiB0cnVlLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9iYW5uZXItZ3JpZC1zZWN0aW9uLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybDogJy4vYmFubmVyLWdyaWQtc2VjdGlvbi5jb21wb25lbnQuY3NzJyxcclxuICBpbXBvcnRzOiBbQ29tbW9uTW9kdWxlLFxyXG4gICAgSG92ZXJEaXJlY3RpdmUsXHJcbiAgICBCYWNrZ3JvdW5kRGlyZWN0aXZlLFxyXG4gICAgT3ZlcmxheURpcmVjdGl2ZSxcclxuICAgIENvcm5lckRpcmVjdGl2ZSxcclxuICAgIEhvdmVyRWxlbWVudHNDb21wb25lbnQsXHJcbiAgICBEZWxldGVIb3ZlckVsZW1lbnRDb21wb25lbnQsXHJcbiAgICBTaW1wb0J1dHRvbkNvbXBvbmVudCxcclxuICAgIEJvcmRlckRpcmVjdGl2ZSxcclxuICAgIEFuaW1hdGlvbkRpcmVjdGl2ZSxcclxuICAgIFBvc2l0aW9uTGF5b3V0RGlyZWN0aXZlRGlyZWN0aXZlLFxyXG4gICAgT2JqZWN0UG9zaXRpb25EaXJlY3RpdmUsXHJcbiAgICBzaW1wb0NvbmV0ZW5BbGlnbm1lbnREaXJlY3RpdmUsXHJcbiAgICBUZXh0RWRpdG9yQ29tcG9uZW50LFxyXG4gICAgSW1hZ2VFZGl0b3JEaXJlY3RpdmUsXHJcbiAgICBTcGFjaW5nSG9yaXpvbnRhbERpcmVjdGl2ZSxcclxuICAgIFNwYWNpbmdEaXJlY3RpdmUsXHJcbiAgICBIZWlnaHREaXJlY3RpdmUsXHJcbiAgICBTdmdEaXZpZGVyQ29tcG9uZW50LFxyXG4gICAgSW1hZ2VEaXJlY3RpdmVEaXJlY3RpdmUsXHJcbiAgICBTcGFjaW5nQXJvdW5kRGlyZWN0aXZlXHJcbiAgXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgQmFubmVyR3JpZFNlY3Rpb25Db21wb25lbnQgZXh0ZW5kcyBCYXNlU2VjdGlvbiBpbXBsZW1lbnRzIE9uSW5pdCB7XHJcbiAgQElucHV0KCkgZGF0YT86IEJhbm5lckdyaWRTZWN0aW9uTW9kZWw7XHJcbiAgQElucHV0KCkgZWRpdD86IGJvb2xlYW47XHJcbiAgY29udGVudD86IEJhbm5lckdyaWRDb250ZW50TW9kZWw7XHJcbiAgc3R5bGVzPzogQmFubmVyR3JpZFN0eWxlc01vZGVsO1xyXG4gIEBJbnB1dCgpIGRlbGV0ZT86IGJvb2xlYW47XHJcbiAgQElucHV0KCkgY3VzdG9tQ2xhc3M/OiBzdHJpbmc7XHJcbiAgQElucHV0KCkgaW5kZXg/OiBudW1iZXI7XHJcbiAgQElucHV0KCkgbmV4dENvbXBvbmVudENvbG9yPzogQmFja2dyb3VuZE1vZGVsO1xyXG5cclxuICBsaXN0SXRlbXM6IGFueTtcclxuICBjb25zdHJ1Y3RvcihcclxuICAgIHByaXZhdGUgX2V2ZW50U2VydmljZTogRXZlbnRzU2VydmljZVxyXG4gICkge1xyXG4gICAgc3VwZXIoKTtcclxuICAgIHRoaXMuZ2V0U2NyZWVuU2l6ZSgpXHJcbiAgfVxyXG5cclxuICBuZ09uSW5pdCgpIHtcclxuICAgIHRoaXMuY29udGVudCA9IHRoaXMuZGF0YT8uY29udGVudDtcclxuICAgIHRoaXMubGlzdEl0ZW1zID0gdGhpcy5kYXRhPy5jb250ZW50Lmxpc3RJdGVtLmRhdGFcclxuICAgIHRoaXMuc3R5bGVzID0gdGhpcy5kYXRhPy5zdHlsZXM7XHJcbiAgICBpZiAoIXRoaXMuc3R5bGVzIHx8ICF0aGlzLmNvbnRlbnQpIHJldHVybjtcclxuICAgIHRoaXMuZGVsZXRlU2VsZWN0ZWQgPSB0aGlzLmRlbGV0ZVxyXG4gIH1cclxuXHJcbiAgc2NyZWVuV2lkdGg6IGFueSA9IFwiXCJcclxuICBASG9zdExpc3RlbmVyKFwid2luZG93OiByZXNpemVcIiwgW1wiJGV2ZW50XCJdKVxyXG4gIGdldFNjcmVlblNpemUoKSB7XHJcbiAgICB0aGlzLnNjcmVlbldpZHRoID0gd2luZG93LmlubmVyV2lkdGg7XHJcbiAgfVxyXG5cclxuICBnZXQgc3R5bGVzTGF5b3V0KCkge1xyXG4gICAgLy8gICBpZih0aGlzLmRhdGE/LnN0eWxlcz8uYm9yZGVyTGVzc0ltYWdlKVxyXG4gICAgLy8gcmV0dXJuIHVuZGVmaW5lZFxyXG5cclxuICAgIHJldHVybiB7IC4uLnRoaXMuc3R5bGVzPy5sYXlvdXQgfSBhcyBMYXlPdXRNb2RlbDtcclxuICB9XHJcblxyXG4gIGdldCBjYW5NZXJnZU5hdmJhcigpIHtcclxuICAgIHJldHVybiB0aGlzLnN0eWxlcz8ubWVyZ2U7XHJcbiAgfVxyXG4gIGdldCBpc0JvcmRlcmxlc3NJbWFnZSgpIHtcclxuICAgIHJldHVybiB0aGlzLnN0eWxlcz8uYm9yZGVyTGVzc0ltYWdlICYmICh0aGlzLnN0eWxlcz8ucG9zaXRpb25MYXlvdXQudmFsdWUgPT0gXCJsZWZ0XCIgfHwgdGhpcy5zdHlsZXM/LnBvc2l0aW9uTGF5b3V0LnZhbHVlID09IFwicmlnaHRcIik7XHJcbiAgfVxyXG4gIGVkaXRTZWN0aW9uKCkge1xyXG4gICAgaWYgKHdpbmRvdy5pbm5lcldpZHRoIDw9IDQ3NSlcclxuICAgICAgcmV0dXJuXHJcblxyXG4gICAgdGhpcy5fZXZlbnRTZXJ2aWNlLnRvZ2dsZUVkaXRvckV2ZW50LmVtaXQoZmFsc2UpO1xyXG4gICAgc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgIHRoaXMuX2V2ZW50U2VydmljZS5lZGl0U2VjdGlvbi5lbWl0KHsgZGF0YTogdGhpcy5kYXRhIH0pO1xyXG4gICAgfSwgMTAwKTtcclxuICB9XHJcblxyXG4gIGdldEltYWdlQ2xhc3MoaW5kZXg6IG51bWJlcik6IHN0cmluZyB7XHJcbiAgICAgIGNvbnN0IGl0ZW1Db3VudCA9IHRoaXMuZGF0YT8uY29udGVudD8ubGlzdEl0ZW0/LmRhdGE/Lmxlbmd0aCB8fCAwXHJcbiAgICBpZiAodGhpcy5zY3JlZW5XaWR0aCA+IDQ3NSAmJiAodGhpcy5kYXRhPy5zdHlsZXM/LnBvc2l0aW9uTGF5b3V0Py52YWx1ZSA9PT0gXCJ0b3BcIiB8fCB0aGlzLmRhdGE/LnN0eWxlcz8ucG9zaXRpb25MYXlvdXQ/LnZhbHVlID09PSBcImJvdHRvbVwiKSkge1xyXG4gICAgICBpZihpdGVtQ291bnQgJSAzID09IDApXHJcbiAgICAgICAgcmV0dXJuICdjb2wtNCdcclxuICAgICAgaWYoaXRlbUNvdW50ICUgMyA9PSAxICYmIGluZGV4ID09IGl0ZW1Db3VudCAtIDEpXHJcbiAgICAgICAgcmV0dXJuICdjb2wtMTInXHJcbiAgICAgIGlmKGl0ZW1Db3VudCAlIDMgPT0gMiAmJiAoaW5kZXggPT0gaXRlbUNvdW50IC0gMSB8fCBpbmRleCA9PSBpdGVtQ291bnQgLSAyKSlcclxuICAgICAgICByZXR1cm4gJ2NvbC02J1xyXG4gICAgICByZXR1cm4gJ2NvbC00J1xyXG4gICAgfVxyXG4gICAgaWYgKGl0ZW1Db3VudCA8PSAyKVxyXG4gICAgICByZXR1cm4gJ2NvbC0xMidcclxuICAgIGlmIChpdGVtQ291bnQgJSAyID09IDApXHJcbiAgICAgIHJldHVybiAnY29sLTYnXHJcbiAgICBpZiAoaXRlbUNvdW50ICUgMiAhPSAwICYmIGluZGV4ID09IGl0ZW1Db3VudCAtIDEpXHJcbiAgICAgIHJldHVybiAnY29sLTEyJ1xyXG4gICAgcmV0dXJuICdjb2wtNidcclxuICB9XHJcblxyXG4gIGdldCBzcGFjaW5nTGF5b3V0KCkge1xyXG4gICAgLy8gaWYodGhpcy5kYXRhPy5zdHlsZXM/LmJvcmRlckxlc3NJbWFnZSlcclxuICAgIC8vICAgcmV0dXJuIHVuZGVmaW5lZFxyXG4gICAgcmV0dXJuIHsgLi4udGhpcy5zdHlsZXM/LmxheW91dD8uc3BhY2luZyB9IGFzIFNwYWNpbmdNb2RlbFxyXG4gIH1cclxuICBnZXQgYWxpZ25tZW50TGF5b3V0KCkge1xyXG4gICAgcmV0dXJuIHRoaXMuc3R5bGVzPy5sYXlvdXQ/LmFsaWduXHJcbiAgfVxyXG4gIGdldCBmaXRMYXlvdXQoKSB7XHJcbiAgICByZXR1cm4gdGhpcy5zdHlsZXM/LmxheW91dD8uZml0XHJcbiAgfVxyXG5cclxuICBnZXRUZXh0Q29sb3IoYmdDb2xvcjogc3RyaW5nKSB7XHJcbiAgICBpZiAoYmdDb2xvcikge1xyXG4gICAgICBjb25zdCB0aHJlc2hvbGQgPSAxMzA7IC8vIEFkanVzdCB0aGlzIHRocmVzaG9sZCBhcyBuZWVkZWRcclxuICAgICAgY29uc3QgciA9IHBhcnNlSW50KGJnQ29sb3Iuc2xpY2UoMSwgMyksIDE2KTtcclxuICAgICAgY29uc3QgZyA9IHBhcnNlSW50KGJnQ29sb3Iuc2xpY2UoMywgNSksIDE2KTtcclxuICAgICAgY29uc3QgYiA9IHBhcnNlSW50KGJnQ29sb3Iuc2xpY2UoNSwgNyksIDE2KTtcclxuICAgICAgY29uc3QgYnJpZ2h0bmVzcyA9IChyICogMjk5ICsgZyAqIDU4NyArIGIgKiAxMTQpIC8gMTAwMDtcclxuXHJcbiAgICAgIHJldHVybiBicmlnaHRuZXNzID4gdGhyZXNob2xkID8gJyMwMDAwMDAnIDogJyNmZmZmZmYnO1xyXG4gICAgfVxyXG4gICAgcmV0dXJuIFwiI2ZmZmZmZjtcIlxyXG4gIH1cclxuXHJcblxyXG59XHJcbiIsIjxzZWN0aW9uIGNsYXNzPVwidG90YWwtY29udGFpbmVyXCIgc2ltcG9Ib3ZlciAoaG92ZXJpbmcpPVwic2hvd0VkaXRUYWJzKCRldmVudClcIj5cclxuICA8ZGl2IFtpZF09XCJkYXRhPy5pZFwiIFtzaW1wb0JvcmRlcl09XCJzdHlsZXM/LmJvcmRlclwiIFtzcGFjaW5nQXJvdW5kXT1cInN0eWxlc0xheW91dFwiPlxyXG4gICAgPGRpdiBjbGFzcz1cInJvdyB0b3AtcGFyZW50IGgtMTAwIGFsaWduLWp1c3RpZnktdW5zZXRcIiBbaWRdPVwiZGF0YT8uaWRcIiBbc2ltcG9BbmltYXRpb25dPVwic3R5bGVzPy5hbmltYXRpb25cIlxyXG4gICAgICBbc2ltcG9Qb3NpdGlvbkxheW91dERpcmVjdGl2ZV09XCJzdHlsZXM/LnBvc2l0aW9uTGF5b3V0XCJcclxuICAgICAgW3NpbXBvQmFja2dyb3VuZF09XCJzdHlsZXM/LmJhY2tncm91bmRcIiBbc2ltcG9IZWlnaHRdPVwiZml0TGF5b3V0XCI+XHJcbiAgICAgIDxkaXYgY2xhc3M9XCJjb2xcIiBbc3BhY2luZ0hvcml6b250YWxdPVwiIWRhdGE/LnN0eWxlcz8uYm9yZGVyTGVzc0ltYWdlID8gc3R5bGVzTGF5b3V0IDogdW5kZWZpbmVkXCJcclxuICAgICAgICBbY2xhc3MucDBdPVwiZGF0YT8uc3R5bGVzPy5ib3JkZXJMZXNzSW1hZ2VcIiAgW3NpbXBvT3ZlcmxheV09XCJzdHlsZXM/LmJhY2tncm91bmRcIlxyXG4gICAgICAgIFtzaW1wb1NwYWNpbmddPVwiIWRhdGE/LnN0eWxlcz8uYm9yZGVyTGVzc0ltYWdlID8gc3BhY2luZ0xheW91dCA6IHVuZGVmaW5lZFwiIFtpZF09XCJkYXRhPy5pZFwiPlxyXG4gICAgICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJpbWFnZVRlbXBsYXRlXCI+PC9uZy1jb250YWluZXI+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgICA8ZGl2IGNsYXNzPVwiY29sIGQtZmxleCBmbGV4LWNvbHVtblwiIFtzcGFjaW5nSG9yaXpvbnRhbF09XCJzdHlsZXNMYXlvdXRcIiAgW3NpbXBvT3ZlcmxheV09XCJzdHlsZXM/LmJhY2tncm91bmRcIlxyXG4gICAgICAgIFtzaW1wb0NvbnRlbnRBbGlnbm1lbnRdPVwic3R5bGVzPy5jb250ZW50QWxpZ25tZW50XCIgW3NpbXBvU3BhY2luZ109XCJzcGFjaW5nTGF5b3V0XCIgW2lkXT1cImRhdGE/LmlkXCI+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cInRleHQtcGFyZW50XCI+XHJcbiAgICAgICAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwidGV4dFRlbXBsYXRlXCI+PC9uZy1jb250YWluZXI+XHJcbiAgICAgICAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwiYnV0dG9uVGVtcGxhdGVcIj48L25nLWNvbnRhaW5lcj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgPC9kaXY+XHJcbiAgICA8L2Rpdj5cclxuICA8L2Rpdj5cclxuICA8bmctY29udGFpbmVyICpuZ0lmPVwic3R5bGVzPy5kZXZpZGVyPy5kaXNwbGF5XCI+XHJcbiAgICA8c2ltcG8tc3ZnLWRpdmlkZXIgW2RpdmlkZXJUeXBlXT1cInN0eWxlcz8uZGV2aWRlcj8uZGV2aWRlclR5cGVcIlxyXG4gICAgICBbY29sb3JdPVwibmV4dENvbXBvbmVudENvbG9yPy5jb2xvclwiPjwvc2ltcG8tc3ZnLWRpdmlkZXI+XHJcbiAgPC9uZy1jb250YWluZXI+XHJcbiAgPGRpdiBbbmdDbGFzc109XCJ7J2hvdmVyX2VmZmVjdCc6IGVkaXR9XCIgKm5nSWY9XCJzaG93RWRpdG9yc1wiPlxyXG4gICAgPHNpbXBvLWhvdmVyLWVsZW1lbnRzIFtkYXRhXT1cImRhdGFcIiBbaW5kZXhdPVwiaW5kZXhcIiBbZWRpdE9wdGlvbnNdPVwiZWRpdFwiXHJcbiAgICAgIFtpc01lcmdlZF09XCJzdHlsZXM/Lm1lcmdlID8/IGZhbHNlXCI+PC9zaW1wby1ob3Zlci1lbGVtZW50cz5cclxuICA8L2Rpdj5cclxuICA8ZGl2ICpuZ0lmPVwic2hvd0RlbGV0ZVwiIFtuZ0NsYXNzXT1cInsnaG92ZXJfZWZmZWN0JzogZGVsZXRlfVwiPlxyXG4gICAgPHNpbXBvLWRlbGV0ZS1ob3Zlci1lbGVtZW50IFtkYXRhXT1cImRhdGFcIiBbaW5kZXhdPVwiaW5kZXhcIj48L3NpbXBvLWRlbGV0ZS1ob3Zlci1lbGVtZW50PlxyXG4gIDwvZGl2PlxyXG5cclxuPC9zZWN0aW9uPlxyXG5cclxuPG5nLXRlbXBsYXRlICNidXR0b25UZW1wbGF0ZT5cclxuICA8ZGl2IGNsYXNzPVwiYnV0dG9uLWRpc3BsYXlcIiAqbmdJZj1cImRhdGE/LmFjdGlvbiAmJiBkYXRhPy5hY3Rpb24/LmRpc3BsYXlcIiBjbGFzcz1cImQtZmxleCBjdXN0b21jbGFzcyB3LWZ1bGwgZ2FwLTJcIlxyXG4gICAgW25nQ2xhc3NdPVwiW1xyXG4gICAgICBzdHlsZXM/LmxheW91dD8uYWxpZ24gPT09ICdsZWZ0JyA/ICdqdXN0aWZ5LWNvbnRlbnQtbWQtc3RhcnQnIDogJycsXHJcbiAgICAgIHN0eWxlcz8ubGF5b3V0Py5hbGlnbiA9PT0gJ2NlbnRlcicgPyAnanVzdGlmeS1jb250ZW50LW1kLWNlbnRlcicgOiAnJyxcclxuICAgICAgc3R5bGVzPy5sYXlvdXQ/LmFsaWduID09PSAncmlnaHQnID8gJ2p1c3RpZnktY29udGVudC1tZC1lbmQnIDogJycsXHJcbiAgICAgIHNjcmVlbldpZHRoIDwgNDc1ID8gJ2p1c3RpZnktY29udGVudC1jZW50ZXInIDogJydcclxuICAgIF1cIj5cclxuICAgIDxuZy1jb250YWluZXIgKm5nRm9yPVwibGV0IGJ1dHRvbiBvZiBkYXRhPy5hY3Rpb24/LmJ1dHRvbnNcIj5cclxuICAgICAgPGFwcC1idXR0b24tZWxlbWVudCBbYnV0dG9uQ29udGVudF09XCJidXR0b24uY29udGVudFwiIFtidXR0b25TdHlsZV09XCJidXR0b24uc3R5bGVzXCIgW2J1dHRvbklkXT1cImJ1dHRvbi5pZFwiXHJcbiAgICAgICAgW3NlY3Rpb25JZF09XCJkYXRhPy5pZFwiIFtjb2xvcl09XCJkYXRhPy5zdHlsZXM/LmJhY2tncm91bmQ/LmFjY2VudENvbG9yXCIgW2VkaXRdPVwiZWRpdFwiXHJcbiAgICAgICAgW2JhY2tncm91bmRJbmZvXT1cImRhdGE/LnN0eWxlcz8uYmFja2dyb3VuZFwiPjwvYXBwLWJ1dHRvbi1lbGVtZW50PlxyXG4gICAgPC9uZy1jb250YWluZXI+XHJcbiAgPC9kaXY+XHJcbjwvbmctdGVtcGxhdGU+XHJcblxyXG48bmctdGVtcGxhdGUgI3RleHRUZW1wbGF0ZT5cclxuICA8ZGl2IFtpZF09XCJkYXRhPy5pZFwiPlxyXG4gICAgPG5nLWNvbnRhaW5lciAqbmdGb3I9XCJsZXQgaXRlbSBvZiBjb250ZW50Py5pbnB1dFRleHQ7IGxldCBpID0gaW5kZXhcIj5cclxuICAgICAgPGRpdiBbbmdDbGFzc109XCJpdGVtLmxhYmVsLmluY2x1ZGVzKCdIZWFkaW5nJykgPyAnaGVhZGluZy1sYXJnZSBsaC0yIG1iLTQnIDogJ2JvZHktbGFyZ2UnXCI+XHJcbiAgICAgICAgPHNpbXBvLXRleHQtZWRpdG9yIFsodmFsdWUpXT1cIml0ZW0udmFsdWVcIiBbZWRpdGFibGVdPVwiZWRpdCB8fCBmYWxzZVwiIFtzZWN0aW9uSWRdPVwiZGF0YT8uaWRcIiBbaW5wdXRUZXh0SW5kZXhdPVwiaVwiIFtpc1JURV09XCJpdGVtLmlzUlRFXCI+PC9zaW1wby10ZXh0LWVkaXRvcj5cclxuICAgICAgPC9kaXY+XHJcbiAgICA8L25nLWNvbnRhaW5lcj5cclxuICA8L2Rpdj5cclxuPC9uZy10ZW1wbGF0ZT5cclxuXHJcbjxuZy10ZW1wbGF0ZSAjaW1hZ2VUZW1wbGF0ZT5cclxuICA8ZGl2IGNsYXNzPVwicm93XCIgW3N0eWxlLnJvd0dhcF09XCIhZGF0YT8uc3R5bGVzPy5ib3JkZXJMZXNzSW1hZ2UgPyAnMTVweCcgOiAnMCdcIj5cclxuICAgIDxkaXYgKm5nRm9yPVwibGV0IGl0ZW0gb2YgZGF0YT8uY29udGVudD8ubGlzdEl0ZW0/LmRhdGEgfHwgW107IGxldCBpID0gaW5kZXhcIiBbY2xhc3NdPVwiZ2V0SW1hZ2VDbGFzcyhpKVwiXHJcbiAgICAgIFtjbGFzcy5wMF09XCJkYXRhPy5zdHlsZXM/LmJvcmRlckxlc3NJbWFnZVwiXHJcbiAgICAgIFtjbGFzcy5ncmlkLWltZ109XCJzdHlsZXM/LnBvc2l0aW9uTGF5b3V0Py52YWx1ZSA9PSAnbGVmdCcgfHwgc3R5bGVzPy5wb3NpdGlvbkxheW91dD8udmFsdWUgPT0gJ3JpZ2h0J1wiPlxyXG4gICAgICA8aW1nIFtzcmNdPVwiaXRlbT8uaW1hZ2U/LnVybFwiIFthbHRdPVwiaXRlbT8uaW1hZ2U/LmFsdFRleHRcIiBbc2ltcG9Db3JuZXJdPVwic3R5bGVzPy5jb3JuZXJzXCIgW2lkXT1cImRhdGE/LmlkXCJcclxuICAgICAgICBbc2ltcG9JbWFnZURpcmVjdGl2ZV09XCJzdHlsZXM/LmltYWdlXCIgW3NpbXBvT2JqZWN0UG9zaXRpb25dPVwiaXRlbT8uaW1hZ2U/LnBvc2l0aW9uXCJcclxuICAgICAgICBbYXBwSW1hZ2VFZGl0b3JdPVwiZWRpdCB8fCBmYWxzZVwiIFtpbWFnZURhdGFdPVwiaXRlbT8uaW1hZ2VcIiBbc2VjdGlvbklkXT1cImRhdGE/LmlkXCIgW2l0ZW1JbmRleF09XCJpXCIgY2xhc3M9XCJ3LTEwMCBoLTEwMFwiPlxyXG4gICAgPC9kaXY+XHJcbiAgPC9kaXY+XHJcbjwvbmctdGVtcGxhdGU+Il19
@@ -27,11 +27,11 @@ export class BlogListComponent extends BaseSection {
27
27
  }
28
28
  ngOnInit() {
29
29
  for (let blog of this.responseData) {
30
- console.log(blog);
30
+ // console.log(blog);
31
31
  blog['img'] = blog.blocks.find((x) => x.type === 'image')?.data?.file?.url;
32
32
  if (blog?.keyWords?.content?.length > 0)
33
33
  blog['tags'] = blog?.keyWords?.content?.split(',') || [];
34
- console.log(blog['tags']);
34
+ // console.log(blog['tags']);
35
35
  }
36
36
  this.style = this.data?.styles;
37
37
  this.blogContent = this.data?.content;
@@ -85,4 +85,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
85
85
  }], nextComponentColor: [{
86
86
  type: Input
87
87
  }] } });
88
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmxvZy1saXN0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3NpbXBvLXVpL3NyYy9saWIvc2VjdGlvbnMvYmxvZy1saXN0L2Jsb2ctbGlzdC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zaW1wby11aS9zcmMvbGliL3NlY3Rpb25zL2Jsb2ctbGlzdC9ibG9nLWxpc3QuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFakQsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBRS9DLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHNDQUFzQyxDQUFDO0FBQzNFLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBQ3pFLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQztBQUNuRSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSx1Q0FBdUMsQ0FBQztBQUM1RSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSwyQ0FBMkMsQ0FBQztBQUNwRixPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sa0NBQWtDLENBQUM7QUFDbkUsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sNENBQTRDLENBQUM7QUFDdEYsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sbUNBQW1DLENBQUM7QUFDckUsT0FBTyxFQUFFLHFCQUFxQixFQUFXLE1BQU0saURBQWlELENBQUM7QUFDakcsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ2pELE9BQU8sV0FBVyxNQUFNLGdCQUFnQixDQUFDO0FBQ3pDLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLDBEQUEwRCxDQUFDO0FBQ2xHLE9BQU8s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LHdCQUF3Qjt3QkFDeEIsZ0JBQWdCO3dCQUNoQixxQkFBcUI7d0JBQ3JCLGNBQWM7d0JBQ2Qsc0JBQXNCO3dCQUN0QixPQUFPLEVBQUUsbUJBQW1CO3dCQUM1QiwwQkFBMEIsRUFBRSxVQUFVLENBQUM7a0ZBS2hDLFlBQVk7c0JBQXBCLEtBQUs7Z0JBQ0csS0FBSztzQkFBYixLQUFLO2dCQUNHLElBQUk7c0JBQVosS0FBSztnQkFDRyxXQUFXO3NCQUFuQixLQUFLO2dCQUNHLElBQUk7c0JBQVosS0FBSztnQkFDRyxrQkFBa0I7c0JBQTFCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIElucHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBFdmVudHNTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvZXZlbnRzLnNlcnZpY2UnO1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IEJsb2dMaXN0Q29udGVudE1vZGVsLCBCbG9nTGlzdFNlY3Rpb25Nb2RlbCwgQmxvZ0xpc3RTdHlsZXNNb2RlbCB9IGZyb20gJy4vYmxvZy1saXN0Lm1vZGVsJztcbmltcG9ydCB7IEJhY2tncm91bmREaXJlY3RpdmUgfSBmcm9tICcuLi8uLi9kaXJlY3RpdmUvYmFja2dyb3VuZC1kaXJlY3RpdmUnO1xuaW1wb3J0IHsgQW5pbWF0aW9uRGlyZWN0aXZlIH0gZnJvbSAnLi4vLi4vZGlyZWN0aXZlL2FuaW1hdGlvbi1kaXJlY3RpdmUnO1xuaW1wb3J0IHsgQm9yZGVyRGlyZWN0aXZlIH0gZnJvbSAnLi4vLi4vZGlyZWN0aXZlL2JvcmRlci1kaXJlY3RpdmUnO1xuaW1wb3J0IHsgQ29udGVudEZpdERpcmVjdGl2ZSB9IGZyb20gJy4uLy4uL2RpcmVjdGl2ZS9jb250ZW50LWZpdC1kaXJlY3RpdmUnO1xuaW1wb3J0IHsgSW1hZ2VEaXJlY3RpdmVEaXJlY3RpdmUgfSBmcm9tICcuLi8uLi9kaXJlY3RpdmUvaW1hZ2UtZGlyZWN0aXZlLmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBDb3JuZXJEaXJlY3RpdmUgfSBmcm9tICcuLi8uLi9kaXJlY3RpdmUvY29ybmVyLWRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBDb2x1bW5EaXJlY3RpdmVEaXJlY3RpdmUgfSBmcm9tICcuLi8uLi9kaXJlY3RpdmUvY29sdW1uLWRpcmVjdGl2ZS5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgT3ZlcmxheURpcmVjdGl2ZSB9IGZyb20gJy4uLy4uL2RpcmVjdGl2ZS9vdmVybGF5LWRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBDb250ZW50VGl0bGVEaXJlY3RpdmUsIFNQQUNJTkcgfSBmcm9tICcuLi8uLi9kaXJlY3RpdmUvY29udGVudC10aXRsZS1zcGFjaW5nLmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBNYXRJY29uIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvaWNvbic7XG5pbXBvcnQgQmFzZVNlY3Rpb24gZnJvbSAnLi4vQmFzZVNlY3Rpb24nO1xuaW1wb3J0IHsgSG92ZXJFbGVtZW50c0NvbXBvbmVudCB9IGZyb20gXCIuLi8uLi9jb21wb25lbnRzL2hvdmVyLWVsZW1lbnRzL2hvdmVyLWVsZW1lbnRzLmNvbXBvbmVudFwiO1xuaW1wb3J0IHsgSG92ZXJEaXJlY3RpdmUgfSBmcm9tICcuLi8uLi9kaXJlY3RpdmUvaG92ZXItZWxlbWVudC1kaXJlY3RpdmUnO1xuaW1wb3J0IHsgQmFja2dyb3VuZE1vZGVsLCBMYXlPdXRNb2RlbCB9IGZyb20gJy4uLy4uL3N0eWxlcy9zdHlsZS5tb2RlbCc7XG5pbXBvcnQgeyBTdmdEaXZpZGVyQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vZWxlbWVudHMvc3ZnLWRpdmlkZXIvc3ZnLWRpdmlkZXIuY29tcG9uZW50JztcbmltcG9ydCB7IFNwYWNpbmdIb3Jpem9udGFsRGlyZWN0aXZlIH0gZnJvbSAnLi4vLi4vZGlyZWN0aXZlL3NwYWNpbmctaG9yaXpvbnRhbC5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgUm91dGVyTGluayB9IGZyb20gXCJAYW5ndWxhci9yb3V0ZXJcIjtcblxuXG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3NpbXBvLWJsb2ctbGlzdCcsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtDb21tb25Nb2R1bGUsXG4gICAgQW5pbWF0aW9uRGlyZWN0aXZlLFxuICAgIEJvcmRlckRpcmVjdGl2ZSxcbiAgICBDb250ZW50Rml0RGlyZWN0aXZlLFxuICAgIEJhY2tncm91bmREaXJlY3RpdmUsXG4gICAgSW1hZ2VEaXJlY3RpdmVEaXJlY3RpdmUsXG4gICAgQ29ybmVyRGlyZWN0aXZlLFxuICAgIENvbHVtbkRpcmVjdGl2ZURpcmVjdGl2ZSxcbiAgICBPdmVybGF5RGlyZWN0aXZlLFxuICAgIENvbnRlbnRUaXRsZURpcmVjdGl2ZSxcbiAgICBIb3ZlckRpcmVjdGl2ZSxcbiAgICBIb3ZlckVsZW1lbnRzQ29tcG9uZW50LFxuICAgIE1hdEljb24sIFN2Z0RpdmlkZXJDb21wb25lbnQsXG4gICAgU3BhY2luZ0hvcml6b250YWxEaXJlY3RpdmUsIFJvdXRlckxpbmtdLFxuICB0ZW1wbGF0ZVVybDogJy4vYmxvZy1saXN0LmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmw6ICcuL2Jsb2ctbGlzdC5jb21wb25lbnQuY3NzJ1xufSlcbmV4cG9ydCBjbGFzcyBCbG9nTGlzdENvbXBvbmVudCBleHRlbmRzIEJhc2VTZWN0aW9uIHtcbiAgQElucHV0KCkgcmVzcG9uc2VEYXRhOiBhbnlbXSA9IFtdO1xuICBASW5wdXQoKSBpbmRleD86IG51bWJlcjtcbiAgQElucHV0KCkgZWRpdD86IGJvb2xlYW47XG4gIEBJbnB1dCgpIGN1c3RvbUNsYXNzPzogc3RyaW5nO1xuICBASW5wdXQoKSBkYXRhPzogQmxvZ0xpc3RTZWN0aW9uTW9kZWw7XG4gIEBJbnB1dCgpIG5leHRDb21wb25lbnRDb2xvcj86IEJhY2tncm91bmRNb2RlbDtcblxuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgX2V2ZW50U2VydmljZTogRXZlbnRzU2VydmljZVxuICApIHtcbiAgICBzdXBlcigpXG4gIH1cblxuICBzdHlsZT86IEJsb2dMaXN0U3R5bGVzTW9kZWw7XG4gIGJsb2dDb250ZW50PzogQmxvZ0xpc3RDb250ZW50TW9kZWxcblxuICBuZ09uSW5pdCgpIHtcbiAgICBmb3IgKGxldCBibG9nIG9mIHRoaXMucmVzcG9uc2VEYXRhKSB7XG4gICAgICBjb25zb2xlLmxvZyhibG9nKTtcbiAgICAgIGJsb2dbJ2ltZyddID0gYmxvZy5ibG9ja3MuZmluZCgoeDogYW55KSA9PiB4LnR5cGUgPT09ICdpbWFnZScpPy5kYXRhPy5maWxlPy51cmxcbiAgICAgIGlmIChibG9nPy5rZXlXb3Jkcz8uY29udGVudD8ubGVuZ3RoID4gMClcbiAgICAgICAgYmxvZ1sndGFncyddID0gYmxvZz8ua2V5V29yZHM/LmNvbnRlbnQ/LnNwbGl0KCcsJykgfHwgW11cbiAgICAgIGNvbnNvbGUubG9nKGJsb2dbJ3RhZ3MnXSk7XG4gICAgfVxuICAgIHRoaXMuc3R5bGUgPSB0aGlzLmRhdGE/LnN0eWxlc1xuICAgIHRoaXMuYmxvZ0NvbnRlbnQgPSB0aGlzLmRhdGE/LmNvbnRlbnRcbiAgfVxuXG4gIGdldCBoZWFkaW5nU3BhY2UoKSB7XG4gICAgcmV0dXJuIHRoaXMuc3R5bGU/LmxheW91dD8uaGVhZGluZ1NwYWNpbmcgYXMgU1BBQ0lORztcbiAgfVxuXG4gIGdldCBzdHlsZXNMYXlvdXQoKSB7XG4gICAgcmV0dXJuIHsgLi4udGhpcy5zdHlsZT8ubGF5b3V0IH0gYXMgTGF5T3V0TW9kZWw7XG4gIH1cblxuICBnZXRCbG9nQnlJZChibG9nSWQ6IGFueSkge1xuICAgIHRoaXMuX2V2ZW50U2VydmljZS5ibG9nQnlJZEV2ZW50LmVtaXQoYmxvZ0lkKTtcbiAgfVxuICBlZGl0U2VjdGlvbigpIHtcblxuICAgIGlmICh3aW5kb3cuaW5uZXJXaWR0aCA8PSA0NzUpXG4gICAgICByZXR1cm5cblxuICAgIHRoaXMuX2V2ZW50U2VydmljZS50b2dnbGVFZGl0b3JFdmVudC5lbWl0KGZhbHNlKTtcbiAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgIHRoaXMuX2V2ZW50U2VydmljZS5lZGl0U2VjdGlvbi5lbWl0KHsgZGF0YTogdGhpcy5kYXRhIH0pO1xuICAgIH0sIDEwMCk7XG4gIH1cbn1cbiIsIjxzZWN0aW9uIFtpZF09XCJkYXRhPy5pZFwiIFtzaW1wb0JhY2tncm91bmRdPVwic3R5bGU/LmJhY2tncm91bmRcIiBjbGFzcz1cInRvdGFsLWNvbnRhaW5lclwiIHNpbXBvSG92ZXJcclxuICAoaG92ZXJpbmcpPVwic2hvd0VkaXRUYWJzKCRldmVudClcIiAqbmdJZj1cIihyZXNwb25zZURhdGE/Lmxlbmd0aCB8fCAwKSA+IDA7ZWxzZSBlbHNlQmxvY2tcIiBbYXR0ci5zdHlsZV09XCJjdXN0b21DbGFzc1wiPlxyXG4gIDxkaXYgW2lkXT1cImRhdGE/LmlkXCIgW3NpbXBvT3ZlcmxheV09XCJzdHlsZT8uYmFja2dyb3VuZFwiIFtzaW1wb0JvcmRlcl09XCJzdHlsZT8uYm9yZGVyXCJcclxuICAgIFtzaW1wb0FuaW1hdGlvbl09XCJzdHlsZT8uYW5pbWF0aW9uXCIgW3NpbXBvTGF5b3V0XT1cInN0eWxlPy5sYXlvdXRcIj5cclxuICAgIDxkaXYgY2xhc3M9XCJjb250YWluZXItZmx1aWRcIiBbc3BhY2luZ0hvcml6b250YWxdPVwic3R5bGVzTGF5b3V0XCI+XHJcbiAgICAgIDxkaXYgY2xhc3M9XCJyb3cgZ2FwLTIwXCI+XHJcbiAgICAgICAgPGRpdiBbc2ltcG9Db2x1bW5EaXJlY3RpdmVdPVwiZGF0YT8uc3R5bGVzPy5zaXplXCIgW2lkXT1cImRhdGE/LmlkXCIgKm5nRm9yPVwibGV0IGNvbnRlbnQgb2YgcmVzcG9uc2VEYXRhXCJcclxuICAgICAgICAgIGNsYXNzPVwiZC1mbGV4XCI+XHJcbiAgICAgICAgICA8YSBbcm91dGVyTGlua109XCJbJy9ibG9nJywgY29udGVudC5uZXdQb3N0VGl0bGVdXCIgKGNsaWNrKT1cImdldEJsb2dCeUlkKGNvbnRlbnQuYXJ0aWNsZVNsdWcpXCI+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjYXJkcyBoLTEwMFwiIFtzaW1wb0Nvcm5lcl09XCJzdHlsZT8uY29ybmVyc1wiIFtpZF09XCJkYXRhPy5pZFwiPlxyXG4gICAgICAgICAgICAgIDxpbWcgbG9hZGluZz1cImxhenlcIiBbc3JjXT1cImNvbnRlbnQuaW1nXCIgW3NpbXBvSW1hZ2VEaXJlY3RpdmVdPVwic3R5bGU/LmltYWdlXCIgW2lkXT1cImRhdGE/LmlkXCJcclxuICAgICAgICAgICAgICAgIFtzaW1wb0Nvcm5lcl09XCJzdHlsZT8uY29ybmVyc1wiIGFsdD1cIlwiICpuZ0lmPVwiY29udGVudC5pbWdcIiBsb2FkaW5nPVwibGF6eVwiPlxyXG4gICAgICAgICAgICAgIDxpbWcgbG9hZGluZz1cImxhenlcIiBbc2ltcG9JbWFnZURpcmVjdGl2ZV09XCJzdHlsZT8uaW1hZ2VcIiBbaWRdPVwiZGF0YT8uaWRcIiBbc2ltcG9Db3JuZXJdPVwic3R5bGU/LmNvcm5lcnNcIlxyXG4gICAgICAgICAgICAgICAgc3JjPVwiaHR0cHM6Ly9kZXYtYmVlb3MuczMuYW1hem9uYXdzLmNvbS9saWJyYXJ5LW1lZGlhLzU0MTMyOWMxNzE5MjM2OTYzMTk5cGV4ZWxzLXBpeGFiYXktMjYyNTA4LmpwZ1wiXHJcbiAgICAgICAgICAgICAgICBhbHQ9XCJcIiAqbmdJZj1cIiFjb250ZW50LmltZ1wiIGxvYWRpbmc9XCJsYXp5XCI+XHJcbiAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInAtMzBcIj5cclxuICAgICAgICAgICAgICAgIDwhLS0gPGRpdiBjbGFzcz1cImQtZmxleCBmbGV4LXdyYXAgYWxpZ24taXRlbXMtY2VudGVyIGdhcC0yXCI+XHJcbiAgICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nRm9yPVwibGV0IHRhZyBvZiBjb250ZW50Py50YWdzIHwgc2xpY2U6MDo0XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPHAgY2xhc3M9XCJtYi0wIHAtMiBib3JkZXJcIj57eyB0YWcgfX08L3A+XHJcbiAgICAgICAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+IC0tPlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImhlYWRpbmctbWVkaXVtIHRpdGxlIG10LTIgZnMtMjBcIiAqbmdJZj1cImJsb2dDb250ZW50Py5kaXNwbGF5Py5zaG93SGVhZGluZ1wiPlxyXG4gICAgICAgICAgICAgICAgICB7e2NvbnRlbnQucG9zdFRpdGxlLmxlbmd0aCA+IDEwMCA/IGNvbnRlbnQucG9zdFRpdGxlLnN1YnN0cmluZygwLDEwMCkrJy4uLlwiJyA6IGNvbnRlbnQucG9zdFRpdGxlfX1cclxuICAgICAgICAgICAgICAgICAgPCEtLSB7e2NvbnRlbnQucG9zdFRpdGxlfX0gLS0+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXI+XHJcbiAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJib2R5LWxhcmdlIG10LTQgcGItMTVcIiAqbmdJZj1cImJsb2dDb250ZW50Py5kaXNwbGF5Py5zaG93Q29udGVudFwiPlxyXG4gICAgICAgICAgICAgICAgICAgIHt7IGNvbnRlbnQucG9zdFN1bW1hcnkubGVuZ3RoID4gMjUwID8gY29udGVudC5wb3N0U3VtbWFyeS5zdWJzdHJpbmcoMCwgMjUwKSArICcuLi4nIDpcclxuICAgICAgICAgICAgICAgICAgICBjb250ZW50LnBvc3RTdW1tYXJ5IH19XHJcbiAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XHJcblxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImQtZmxleCBqdXN0aWZ5LWNvbnRlbnQtZW5kIHAtMiBhbGlnbi1pdGVtcy1jZW50ZXJcIiAqbmdJZj1cImNvbnRlbnQ/LmF1dGhvcj8uY29udGVudCAmJiBjb250ZW50Py5hdXRob3I/LmNvbnRlbnQubGVuZ3RoID4gMFwiPlxyXG4gICAgICAgICAgICAgICAgICA8cD4tIHt7Y29udGVudD8uYXV0aG9yPy5jb250ZW50IHwgdGl0bGVjYXNlfX08L3A+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuXHJcbiAgICAgICAgICAgICAgICA8IS0tIDxkaXYgY2xhc3M9XCJhdXRob3JzXCIgW25nQ2xhc3NdPVwiJ2p1c3RpZnktY29udGVudC0nICsgKHN0eWxlPy5sYXlvdXQ/LmFsaWduIHx8ICcnKVwiPlxyXG4gICAgICAgICAgICAgICAgPGRpdj5cclxuICAgICAgICAgICAgICAgICAgPG1hdC1pY29uPnBlcnNvbjwvbWF0LWljb24+ICZuYnNwOyZuYnNwOzxzcGFuIGNsYXNzPVwiYm9keS1sYXJnZVwiPnt7Y29udGVudD8uYXV0aG9yPy5jb250ZW50IHwgdGl0bGVjYXNlfX08L3NwYW4+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjYWxlbmRhcl90b2RheVwiPlxyXG4gICAgICAgICAgICAgICAgICA8bWF0LWljb24+Y2FsZW5kYXJfdG9kYXk8L21hdC1pY29uPiAmbmJzcDsmbmJzcDsgPHNwYW4gY2xhc3M9XCJib2R5LWxhcmdlXCI+e3tjb250ZW50LmNyZWF0ZWRUaW1lU3RhbXAgfFxyXG4gICAgICAgICAgICAgICAgICAgIGRhdGU6J0VFRUUsIE1NTSwgZCwgeSd9fTwvc3Bhbj5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJidXR0b24gaGVhZGluZy1sYXJnZVwiIChjbGljayk9XCJnZXRCbG9nQnlJZChjb250ZW50Lm5ld1Bvc3RUaXRsZSlcIiBbbmdDbGFzc109XCInanVzdGlmeS1jb250ZW50LScgKyAoc3R5bGU/LmxheW91dD8uYWxpZ24gfHwgJycpXCI+XHJcbiAgICAgICAgICAgICAgICBSZWFkIE1vcmUgPG1hdC1pY29uPmFycm93X3JpZ2h0X2FsdDwvbWF0LWljb24+XHJcbiAgICAgICAgICAgICAgPC9kaXY+IC0tPlxyXG4gICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgIDwvYT5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgPC9kaXY+XHJcbiAgICA8L2Rpdj5cclxuICA8L2Rpdj5cclxuICA8bmctY29udGFpbmVyICpuZ0lmPVwic3R5bGU/LmRldmlkZXI/LmRpc3BsYXlcIj5cclxuICAgIDxzaW1wby1zdmctZGl2aWRlciBbZGl2aWRlclR5cGVdPVwic3R5bGU/LmRldmlkZXI/LmRldmlkZXJUeXBlXCJcclxuICAgICAgW2NvbG9yXT1cIm5leHRDb21wb25lbnRDb2xvcj8uY29sb3JcIj48L3NpbXBvLXN2Zy1kaXZpZGVyPlxyXG4gIDwvbmctY29udGFpbmVyPlxyXG4gIDxkaXYgW25nQ2xhc3NdPVwieydob3Zlcl9lZmZlY3QnOiBlZGl0fVwiICpuZ0lmPVwic2hvd0VkaXRvcnNcIj5cclxuICAgIDxzaW1wby1ob3Zlci1lbGVtZW50cyBbZGF0YV09XCJkYXRhXCIgW2luZGV4XT1cImluZGV4XCIgW2VkaXRPcHRpb25zXT1cImVkaXRcIj48L3NpbXBvLWhvdmVyLWVsZW1lbnRzPlxyXG4gIDwvZGl2PlxyXG48L3NlY3Rpb24+XHJcbjxuZy10ZW1wbGF0ZSAjZWxzZUJsb2NrPlxyXG4gIDxkaXYgY2xhc3M9XCJuby1ibG9nLXRleHQgaGVhZGluZy1tZWRpdW1cIj5Tb3JyeSB0aGVyZSBhcmUgbm8gYmxvZyBwb3N0cy48L2Rpdj5cclxuPC9uZy10ZW1wbGF0ZT4iXX0=
88
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmxvZy1saXN0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3NpbXBvLXVpL3NyYy9saWIvc2VjdGlvbnMvYmxvZy1saXN0L2Jsb2ctbGlzdC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zaW1wby11aS9zcmMvbGliL3NlY3Rpb25zL2Jsb2ctbGlzdC9ibG9nLWxpc3QuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFakQsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBRS9DLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHNDQUFzQyxDQUFDO0FBQzNFLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBQ3pFLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQztBQUNuRSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSx1Q0FBdUMsQ0FBQztBQUM1RSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSwyQ0FBMkMsQ0FBQztBQUNwRixPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sa0NBQWtDLENBQUM7QUFDbkUsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sNENBQTRDLENBQUM7QUFDdEYsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sbUNBQW1DLENBQUM7QUFDckUsT0FBTyxFQUFFLHFCQUFxQixFQUFXLE1BQU0saURBQWlELENBQUM7QUFDakcsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ2pELE9BQU8sV0FBVyxNQUFNLGdCQUFnQixDQUFDO0FBQ3pDLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLDBEQUEwRCxDQUFDO0FBQ2xHLE9BQU8s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TyxFQUFFLG1CQUFtQjt3QkFDNUIsMEJBQTBCLEVBQUUsVUFBVSxDQUFDO2tGQUtoQyxZQUFZO3NCQUFwQixLQUFLO2dCQUNHLEtBQUs7c0JBQWIsS0FBSztnQkFDRyxJQUFJO3NCQUFaLEtBQUs7Z0JBQ0csV0FBVztzQkFBbkIsS0FBSztnQkFDRyxJQUFJO3NCQUFaLEtBQUs7Z0JBQ0csa0JBQWtCO3NCQUExQixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBJbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBFdmVudHNTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvZXZlbnRzLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xyXG5pbXBvcnQgeyBCbG9nTGlzdENvbnRlbnRNb2RlbCwgQmxvZ0xpc3RTZWN0aW9uTW9kZWwsIEJsb2dMaXN0U3R5bGVzTW9kZWwgfSBmcm9tICcuL2Jsb2ctbGlzdC5tb2RlbCc7XHJcbmltcG9ydCB7IEJhY2tncm91bmREaXJlY3RpdmUgfSBmcm9tICcuLi8uLi9kaXJlY3RpdmUvYmFja2dyb3VuZC1kaXJlY3RpdmUnO1xyXG5pbXBvcnQgeyBBbmltYXRpb25EaXJlY3RpdmUgfSBmcm9tICcuLi8uLi9kaXJlY3RpdmUvYW5pbWF0aW9uLWRpcmVjdGl2ZSc7XHJcbmltcG9ydCB7IEJvcmRlckRpcmVjdGl2ZSB9IGZyb20gJy4uLy4uL2RpcmVjdGl2ZS9ib3JkZXItZGlyZWN0aXZlJztcclxuaW1wb3J0IHsgQ29udGVudEZpdERpcmVjdGl2ZSB9IGZyb20gJy4uLy4uL2RpcmVjdGl2ZS9jb250ZW50LWZpdC1kaXJlY3RpdmUnO1xyXG5pbXBvcnQgeyBJbWFnZURpcmVjdGl2ZURpcmVjdGl2ZSB9IGZyb20gJy4uLy4uL2RpcmVjdGl2ZS9pbWFnZS1kaXJlY3RpdmUuZGlyZWN0aXZlJztcclxuaW1wb3J0IHsgQ29ybmVyRGlyZWN0aXZlIH0gZnJvbSAnLi4vLi4vZGlyZWN0aXZlL2Nvcm5lci1kaXJlY3RpdmUnO1xyXG5pbXBvcnQgeyBDb2x1bW5EaXJlY3RpdmVEaXJlY3RpdmUgfSBmcm9tICcuLi8uLi9kaXJlY3RpdmUvY29sdW1uLWRpcmVjdGl2ZS5kaXJlY3RpdmUnO1xyXG5pbXBvcnQgeyBPdmVybGF5RGlyZWN0aXZlIH0gZnJvbSAnLi4vLi4vZGlyZWN0aXZlL292ZXJsYXktZGlyZWN0aXZlJztcclxuaW1wb3J0IHsgQ29udGVudFRpdGxlRGlyZWN0aXZlLCBTUEFDSU5HIH0gZnJvbSAnLi4vLi4vZGlyZWN0aXZlL2NvbnRlbnQtdGl0bGUtc3BhY2luZy5kaXJlY3RpdmUnO1xyXG5pbXBvcnQgeyBNYXRJY29uIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvaWNvbic7XHJcbmltcG9ydCBCYXNlU2VjdGlvbiBmcm9tICcuLi9CYXNlU2VjdGlvbic7XHJcbmltcG9ydCB7IEhvdmVyRWxlbWVudHNDb21wb25lbnQgfSBmcm9tIFwiLi4vLi4vY29tcG9uZW50cy9ob3Zlci1lbGVtZW50cy9ob3Zlci1lbGVtZW50cy5jb21wb25lbnRcIjtcclxuaW1wb3J0IHsgSG92ZXJEaXJlY3RpdmUgfSBmcm9tICcuLi8uLi9kaXJlY3RpdmUvaG92ZXItZWxlbWVudC1kaXJlY3RpdmUnO1xyXG5pbXBvcnQgeyBCYWNrZ3JvdW5kTW9kZWwsIExheU91dE1vZGVsIH0gZnJvbSAnLi4vLi4vc3R5bGVzL3N0eWxlLm1vZGVsJztcclxuaW1wb3J0IHsgU3ZnRGl2aWRlckNvbXBvbmVudCB9IGZyb20gJy4uLy4uL2VsZW1lbnRzL3N2Zy1kaXZpZGVyL3N2Zy1kaXZpZGVyLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFNwYWNpbmdIb3Jpem9udGFsRGlyZWN0aXZlIH0gZnJvbSAnLi4vLi4vZGlyZWN0aXZlL3NwYWNpbmctaG9yaXpvbnRhbC5kaXJlY3RpdmUnO1xyXG5pbXBvcnQgeyBSb3V0ZXJMaW5rIH0gZnJvbSBcIkBhbmd1bGFyL3JvdXRlclwiO1xyXG5cclxuXHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ3NpbXBvLWJsb2ctbGlzdCcsXHJcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcclxuICBpbXBvcnRzOiBbQ29tbW9uTW9kdWxlLFxyXG4gICAgQW5pbWF0aW9uRGlyZWN0aXZlLFxyXG4gICAgQm9yZGVyRGlyZWN0aXZlLFxyXG4gICAgQ29udGVudEZpdERpcmVjdGl2ZSxcclxuICAgIEJhY2tncm91bmREaXJlY3RpdmUsXHJcbiAgICBJbWFnZURpcmVjdGl2ZURpcmVjdGl2ZSxcclxuICAgIENvcm5lckRpcmVjdGl2ZSxcclxuICAgIENvbHVtbkRpcmVjdGl2ZURpcmVjdGl2ZSxcclxuICAgIE92ZXJsYXlEaXJlY3RpdmUsXHJcbiAgICBDb250ZW50VGl0bGVEaXJlY3RpdmUsXHJcbiAgICBIb3ZlckRpcmVjdGl2ZSxcclxuICAgIEhvdmVyRWxlbWVudHNDb21wb25lbnQsXHJcbiAgICBNYXRJY29uLCBTdmdEaXZpZGVyQ29tcG9uZW50LFxyXG4gICAgU3BhY2luZ0hvcml6b250YWxEaXJlY3RpdmUsIFJvdXRlckxpbmtdLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9ibG9nLWxpc3QuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsOiAnLi9ibG9nLWxpc3QuY29tcG9uZW50LmNzcydcclxufSlcclxuZXhwb3J0IGNsYXNzIEJsb2dMaXN0Q29tcG9uZW50IGV4dGVuZHMgQmFzZVNlY3Rpb24ge1xyXG4gIEBJbnB1dCgpIHJlc3BvbnNlRGF0YTogYW55W10gPSBbXTtcclxuICBASW5wdXQoKSBpbmRleD86IG51bWJlcjtcclxuICBASW5wdXQoKSBlZGl0PzogYm9vbGVhbjtcclxuICBASW5wdXQoKSBjdXN0b21DbGFzcz86IHN0cmluZztcclxuICBASW5wdXQoKSBkYXRhPzogQmxvZ0xpc3RTZWN0aW9uTW9kZWw7XHJcbiAgQElucHV0KCkgbmV4dENvbXBvbmVudENvbG9yPzogQmFja2dyb3VuZE1vZGVsO1xyXG5cclxuXHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBwcml2YXRlIF9ldmVudFNlcnZpY2U6IEV2ZW50c1NlcnZpY2VcclxuICApIHtcclxuICAgIHN1cGVyKClcclxuICB9XHJcblxyXG4gIHN0eWxlPzogQmxvZ0xpc3RTdHlsZXNNb2RlbDtcclxuICBibG9nQ29udGVudD86IEJsb2dMaXN0Q29udGVudE1vZGVsXHJcblxyXG4gIG5nT25Jbml0KCkge1xyXG4gICAgZm9yIChsZXQgYmxvZyBvZiB0aGlzLnJlc3BvbnNlRGF0YSkge1xyXG4gICAgICAvLyBjb25zb2xlLmxvZyhibG9nKTtcclxuICAgICAgYmxvZ1snaW1nJ10gPSBibG9nLmJsb2Nrcy5maW5kKCh4OiBhbnkpID0+IHgudHlwZSA9PT0gJ2ltYWdlJyk/LmRhdGE/LmZpbGU/LnVybFxyXG4gICAgICBpZiAoYmxvZz8ua2V5V29yZHM/LmNvbnRlbnQ/Lmxlbmd0aCA+IDApXHJcbiAgICAgICAgYmxvZ1sndGFncyddID0gYmxvZz8ua2V5V29yZHM/LmNvbnRlbnQ/LnNwbGl0KCcsJykgfHwgW11cclxuICAgICAgLy8gY29uc29sZS5sb2coYmxvZ1sndGFncyddKTtcclxuICAgIH1cclxuICAgIHRoaXMuc3R5bGUgPSB0aGlzLmRhdGE/LnN0eWxlc1xyXG4gICAgdGhpcy5ibG9nQ29udGVudCA9IHRoaXMuZGF0YT8uY29udGVudFxyXG4gIH1cclxuXHJcbiAgZ2V0IGhlYWRpbmdTcGFjZSgpIHtcclxuICAgIHJldHVybiB0aGlzLnN0eWxlPy5sYXlvdXQ/LmhlYWRpbmdTcGFjaW5nIGFzIFNQQUNJTkc7XHJcbiAgfVxyXG5cclxuICBnZXQgc3R5bGVzTGF5b3V0KCkge1xyXG4gICAgcmV0dXJuIHsgLi4udGhpcy5zdHlsZT8ubGF5b3V0IH0gYXMgTGF5T3V0TW9kZWw7XHJcbiAgfVxyXG5cclxuICBnZXRCbG9nQnlJZChibG9nSWQ6IGFueSkge1xyXG4gICAgdGhpcy5fZXZlbnRTZXJ2aWNlLmJsb2dCeUlkRXZlbnQuZW1pdChibG9nSWQpO1xyXG4gIH1cclxuICBlZGl0U2VjdGlvbigpIHtcclxuXHJcbiAgICBpZiAod2luZG93LmlubmVyV2lkdGggPD0gNDc1KVxyXG4gICAgICByZXR1cm5cclxuXHJcbiAgICB0aGlzLl9ldmVudFNlcnZpY2UudG9nZ2xlRWRpdG9yRXZlbnQuZW1pdChmYWxzZSk7XHJcbiAgICBzZXRUaW1lb3V0KCgpID0+IHtcclxuICAgICAgdGhpcy5fZXZlbnRTZXJ2aWNlLmVkaXRTZWN0aW9uLmVtaXQoeyBkYXRhOiB0aGlzLmRhdGEgfSk7XHJcbiAgICB9LCAxMDApO1xyXG4gIH1cclxufVxyXG4iLCI8c2VjdGlvbiBbaWRdPVwiZGF0YT8uaWRcIiBbc2ltcG9CYWNrZ3JvdW5kXT1cInN0eWxlPy5iYWNrZ3JvdW5kXCIgY2xhc3M9XCJ0b3RhbC1jb250YWluZXJcIiBzaW1wb0hvdmVyXHJcbiAgKGhvdmVyaW5nKT1cInNob3dFZGl0VGFicygkZXZlbnQpXCIgKm5nSWY9XCIocmVzcG9uc2VEYXRhPy5sZW5ndGggfHwgMCkgPiAwO2Vsc2UgZWxzZUJsb2NrXCIgW2F0dHIuc3R5bGVdPVwiY3VzdG9tQ2xhc3NcIj5cclxuICA8ZGl2IFtpZF09XCJkYXRhPy5pZFwiIFtzaW1wb092ZXJsYXldPVwic3R5bGU/LmJhY2tncm91bmRcIiBbc2ltcG9Cb3JkZXJdPVwic3R5bGU/LmJvcmRlclwiXHJcbiAgICBbc2ltcG9BbmltYXRpb25dPVwic3R5bGU/LmFuaW1hdGlvblwiIFtzaW1wb0xheW91dF09XCJzdHlsZT8ubGF5b3V0XCI+XHJcbiAgICA8ZGl2IGNsYXNzPVwiY29udGFpbmVyLWZsdWlkXCIgW3NwYWNpbmdIb3Jpem9udGFsXT1cInN0eWxlc0xheW91dFwiPlxyXG4gICAgICA8ZGl2IGNsYXNzPVwicm93IGdhcC0yMFwiPlxyXG4gICAgICAgIDxkaXYgW3NpbXBvQ29sdW1uRGlyZWN0aXZlXT1cImRhdGE/LnN0eWxlcz8uc2l6ZVwiIFtpZF09XCJkYXRhPy5pZFwiICpuZ0Zvcj1cImxldCBjb250ZW50IG9mIHJlc3BvbnNlRGF0YVwiXHJcbiAgICAgICAgICBjbGFzcz1cImQtZmxleFwiPlxyXG4gICAgICAgICAgPGEgW3JvdXRlckxpbmtdPVwiWycvYmxvZycsIGNvbnRlbnQubmV3UG9zdFRpdGxlXVwiIChjbGljayk9XCJnZXRCbG9nQnlJZChjb250ZW50LmFydGljbGVTbHVnKVwiPlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY2FyZHMgaC0xMDBcIiBbc2ltcG9Db3JuZXJdPVwic3R5bGU/LmNvcm5lcnNcIiBbaWRdPVwiZGF0YT8uaWRcIj5cclxuICAgICAgICAgICAgICA8aW1nIGxvYWRpbmc9XCJsYXp5XCIgW3NyY109XCJjb250ZW50LmltZ1wiIFtzaW1wb0ltYWdlRGlyZWN0aXZlXT1cInN0eWxlPy5pbWFnZVwiIFtpZF09XCJkYXRhPy5pZFwiXHJcbiAgICAgICAgICAgICAgICBbc2ltcG9Db3JuZXJdPVwic3R5bGU/LmNvcm5lcnNcIiBhbHQ9XCJcIiAqbmdJZj1cImNvbnRlbnQuaW1nXCIgbG9hZGluZz1cImxhenlcIj5cclxuICAgICAgICAgICAgICA8aW1nIGxvYWRpbmc9XCJsYXp5XCIgW3NpbXBvSW1hZ2VEaXJlY3RpdmVdPVwic3R5bGU/LmltYWdlXCIgW2lkXT1cImRhdGE/LmlkXCIgW3NpbXBvQ29ybmVyXT1cInN0eWxlPy5jb3JuZXJzXCJcclxuICAgICAgICAgICAgICAgIHNyYz1cImh0dHBzOi8vZGV2LWJlZW9zLnMzLmFtYXpvbmF3cy5jb20vbGlicmFyeS1tZWRpYS81NDEzMjljMTcxOTIzNjk2MzE5OXBleGVscy1waXhhYmF5LTI2MjUwOC5qcGdcIlxyXG4gICAgICAgICAgICAgICAgYWx0PVwiXCIgKm5nSWY9XCIhY29udGVudC5pbWdcIiBsb2FkaW5nPVwibGF6eVwiPlxyXG4gICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJwLTMwXCI+XHJcbiAgICAgICAgICAgICAgICA8IS0tIDxkaXYgY2xhc3M9XCJkLWZsZXggZmxleC13cmFwIGFsaWduLWl0ZW1zLWNlbnRlciBnYXAtMlwiPlxyXG4gICAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0Zvcj1cImxldCB0YWcgb2YgY29udGVudD8udGFncyB8IHNsaWNlOjA6NFwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxwIGNsYXNzPVwibWItMCBwLTIgYm9yZGVyXCI+e3sgdGFnIH19PC9wPlxyXG4gICAgICAgICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgICAgICAgICAgICAgIDwvZGl2PiAtLT5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJoZWFkaW5nLW1lZGl1bSB0aXRsZSBtdC0yIGZzLTIwXCIgKm5nSWY9XCJibG9nQ29udGVudD8uZGlzcGxheT8uc2hvd0hlYWRpbmdcIj5cclxuICAgICAgICAgICAgICAgICAge3tjb250ZW50LnBvc3RUaXRsZS5sZW5ndGggPiAxMDAgPyBjb250ZW50LnBvc3RUaXRsZS5zdWJzdHJpbmcoMCwxMDApKycuLi5cIicgOiBjb250ZW50LnBvc3RUaXRsZX19XHJcbiAgICAgICAgICAgICAgICAgIDwhLS0ge3tjb250ZW50LnBvc3RUaXRsZX19IC0tPlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyPlxyXG4gICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiYm9keS1sYXJnZSBtdC00IHBiLTE1XCIgKm5nSWY9XCJibG9nQ29udGVudD8uZGlzcGxheT8uc2hvd0NvbnRlbnRcIj5cclxuICAgICAgICAgICAgICAgICAgICB7eyBjb250ZW50LnBvc3RTdW1tYXJ5Lmxlbmd0aCA+IDI1MCA/IGNvbnRlbnQucG9zdFN1bW1hcnkuc3Vic3RyaW5nKDAsIDI1MCkgKyAnLi4uJyA6XHJcbiAgICAgICAgICAgICAgICAgICAgY29udGVudC5wb3N0U3VtbWFyeSB9fVxyXG4gICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxyXG5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJkLWZsZXgganVzdGlmeS1jb250ZW50LWVuZCBwLTIgYWxpZ24taXRlbXMtY2VudGVyXCIgKm5nSWY9XCJjb250ZW50Py5hdXRob3I/LmNvbnRlbnQgJiYgY29udGVudD8uYXV0aG9yPy5jb250ZW50Lmxlbmd0aCA+IDBcIj5cclxuICAgICAgICAgICAgICAgICAgPHA+LSB7e2NvbnRlbnQ/LmF1dGhvcj8uY29udGVudCB8IHRpdGxlY2FzZX19PC9wPlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcblxyXG4gICAgICAgICAgICAgICAgPCEtLSA8ZGl2IGNsYXNzPVwiYXV0aG9yc1wiIFtuZ0NsYXNzXT1cIidqdXN0aWZ5LWNvbnRlbnQtJyArIChzdHlsZT8ubGF5b3V0Py5hbGlnbiB8fCAnJylcIj5cclxuICAgICAgICAgICAgICAgIDxkaXY+XHJcbiAgICAgICAgICAgICAgICAgIDxtYXQtaWNvbj5wZXJzb248L21hdC1pY29uPiAmbmJzcDsmbmJzcDs8c3BhbiBjbGFzcz1cImJvZHktbGFyZ2VcIj57e2NvbnRlbnQ/LmF1dGhvcj8uY29udGVudCB8IHRpdGxlY2FzZX19PC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY2FsZW5kYXJfdG9kYXlcIj5cclxuICAgICAgICAgICAgICAgICAgPG1hdC1pY29uPmNhbGVuZGFyX3RvZGF5PC9tYXQtaWNvbj4gJm5ic3A7Jm5ic3A7IDxzcGFuIGNsYXNzPVwiYm9keS1sYXJnZVwiPnt7Y29udGVudC5jcmVhdGVkVGltZVN0YW1wIHxcclxuICAgICAgICAgICAgICAgICAgICBkYXRlOidFRUVFLCBNTU0sIGQsIHknfX08L3NwYW4+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiYnV0dG9uIGhlYWRpbmctbGFyZ2VcIiAoY2xpY2spPVwiZ2V0QmxvZ0J5SWQoY29udGVudC5uZXdQb3N0VGl0bGUpXCIgW25nQ2xhc3NdPVwiJ2p1c3RpZnktY29udGVudC0nICsgKHN0eWxlPy5sYXlvdXQ/LmFsaWduIHx8ICcnKVwiPlxyXG4gICAgICAgICAgICAgICAgUmVhZCBNb3JlIDxtYXQtaWNvbj5hcnJvd19yaWdodF9hbHQ8L21hdC1pY29uPlxyXG4gICAgICAgICAgICAgIDwvZGl2PiAtLT5cclxuICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICA8L2E+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgPC9kaXY+XHJcbiAgPC9kaXY+XHJcbiAgPG5nLWNvbnRhaW5lciAqbmdJZj1cInN0eWxlPy5kZXZpZGVyPy5kaXNwbGF5XCI+XHJcbiAgICA8c2ltcG8tc3ZnLWRpdmlkZXIgW2RpdmlkZXJUeXBlXT1cInN0eWxlPy5kZXZpZGVyPy5kZXZpZGVyVHlwZVwiXHJcbiAgICAgIFtjb2xvcl09XCJuZXh0Q29tcG9uZW50Q29sb3I/LmNvbG9yXCI+PC9zaW1wby1zdmctZGl2aWRlcj5cclxuICA8L25nLWNvbnRhaW5lcj5cclxuICA8ZGl2IFtuZ0NsYXNzXT1cInsnaG92ZXJfZWZmZWN0JzogZWRpdH1cIiAqbmdJZj1cInNob3dFZGl0b3JzXCI+XHJcbiAgICA8c2ltcG8taG92ZXItZWxlbWVudHMgW2RhdGFdPVwiZGF0YVwiIFtpbmRleF09XCJpbmRleFwiIFtlZGl0T3B0aW9uc109XCJlZGl0XCI+PC9zaW1wby1ob3Zlci1lbGVtZW50cz5cclxuICA8L2Rpdj5cclxuPC9zZWN0aW9uPlxyXG48bmctdGVtcGxhdGUgI2Vsc2VCbG9jaz5cclxuICA8ZGl2IGNsYXNzPVwibm8tYmxvZy10ZXh0IGhlYWRpbmctbWVkaXVtXCI+U29ycnkgdGhlcmUgYXJlIG5vIGJsb2cgcG9zdHMuPC9kaXY+XHJcbjwvbmctdGVtcGxhdGU+Il19
@@ -1,2 +1,2 @@
1
1
  export {};
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmxvZy1saXN0Lm1vZGVsLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc2ltcG8tdWkvc3JjL2xpYi9zZWN0aW9ucy9ibG9nLWxpc3QvYmxvZy1saXN0Lm1vZGVsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBY3Rpb25Nb2RlbCwgSW1hZ2UsIElucHV0VGV4dE1vZGVsLCBMaXN0SXRlbU1vZGFsLCBTdHlsZXNNb2RlbCwgQ2FyZFN0eWxlcywgRGlzcGxheVNlY3Rpb24gfSBmcm9tIFwiLi8uLi8uLi9zdHlsZXMvc3R5bGUubW9kZWxcIjtcblxuXG5leHBvcnQgaW50ZXJmYWNlIEJsb2dMaXN0U2VjdGlvbk1vZGVsIHtcbiAgaWQ6IHN0cmluZyxcbiAgc2VjdGlvblR5cGU6IHN0cmluZyxcbiAgc2VjdGlvbk5hbWU6IHN0cmluZyxcbiAgY29udGVudDogQmxvZ0xpc3RDb250ZW50TW9kZWw7XG4gIHN0eWxlczogQmxvZ0xpc3RTdHlsZXNNb2RlbDtcbn1cbmV4cG9ydCBpbnRlcmZhY2UgQmxvZ0xpc3RDb250ZW50TW9kZWwge1xuICBkaXNwbGF5IDogRGlzcGxheVNlY3Rpb25cbn1cblxuZXhwb3J0IGludGVyZmFjZSBCbG9nTGlzdFN0eWxlc01vZGVsIGV4dGVuZHMgU3R5bGVzTW9kZWwsIENhcmRTdHlsZXMge1xuXG59XG4iXX0=
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmxvZy1saXN0Lm1vZGVsLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc2ltcG8tdWkvc3JjL2xpYi9zZWN0aW9ucy9ibG9nLWxpc3QvYmxvZy1saXN0Lm1vZGVsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBY3Rpb25Nb2RlbCwgSW1hZ2UsIElucHV0VGV4dE1vZGVsLCBMaXN0SXRlbU1vZGFsLCBTdHlsZXNNb2RlbCwgQ2FyZFN0eWxlcywgRGlzcGxheVNlY3Rpb24gfSBmcm9tIFwiLi8uLi8uLi9zdHlsZXMvc3R5bGUubW9kZWxcIjtcclxuXHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIEJsb2dMaXN0U2VjdGlvbk1vZGVsIHtcclxuICBpZDogc3RyaW5nLFxyXG4gIHNlY3Rpb25UeXBlOiBzdHJpbmcsXHJcbiAgc2VjdGlvbk5hbWU6IHN0cmluZyxcclxuICBjb250ZW50OiBCbG9nTGlzdENvbnRlbnRNb2RlbDtcclxuICBzdHlsZXM6IEJsb2dMaXN0U3R5bGVzTW9kZWw7XHJcbn1cclxuZXhwb3J0IGludGVyZmFjZSBCbG9nTGlzdENvbnRlbnRNb2RlbCB7XHJcbiAgZGlzcGxheSA6IERpc3BsYXlTZWN0aW9uXHJcbn1cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgQmxvZ0xpc3RTdHlsZXNNb2RlbCBleHRlbmRzIFN0eWxlc01vZGVsLCBDYXJkU3R5bGVzIHtcclxuXHJcbn1cclxuIl19