@rededor/site-front-end-lib 1.0.41 → 1.0.42

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 (146) hide show
  1. package/README.md +114 -114
  2. package/esm2022/lib/components/algolia/algolia.component.mjs +5 -5
  3. package/esm2022/lib/components/banner/content-banner/content-banner.component.mjs +5 -5
  4. package/esm2022/lib/components/breadcrumbs/breadcrumbs.component.mjs +5 -5
  5. package/esm2022/lib/components/cards/card-unidade-planos-convenios/card-unidade-planos-convenios.component.mjs +5 -5
  6. package/esm2022/lib/components/cards/expandable-card/expandable-card.component.mjs +5 -5
  7. package/esm2022/lib/components/cards/testimonial-card/testimonial-card.component.mjs +5 -5
  8. package/esm2022/lib/components/carousels/testimonials-carousel/testimonials-carousel.component.mjs +5 -5
  9. package/esm2022/lib/components/cta-wrapper/cta-wrapper.component.mjs +5 -5
  10. package/esm2022/lib/components/error/error-service/error.service.mjs +4 -4
  11. package/esm2022/lib/components/error/error.component.mjs +5 -5
  12. package/esm2022/lib/components/filter-letter-and-terms/filter-letter-and-terms.component.mjs +52 -9
  13. package/esm2022/lib/components/filters/filter-planos-convenios/filter-planos-convenios.component.mjs +5 -5
  14. package/esm2022/lib/components/footer/components/footer-disclaimer/footer-disclaimer.component.mjs +5 -5
  15. package/esm2022/lib/components/footer/components/footer-menu/footer-menu.component.mjs +5 -5
  16. package/esm2022/lib/components/footer/components/footer-menu-item/footer-menu-item.component.mjs +5 -5
  17. package/esm2022/lib/components/footer/components/footer-social-medias/footer-social-medias.component.mjs +5 -5
  18. package/esm2022/lib/components/footer/footer.component.mjs +5 -5
  19. package/esm2022/lib/components/footer/helpers/footerTheme.func.mjs +1 -1
  20. package/esm2022/lib/components/footer/models/FooterTheme.model.mjs +1 -1
  21. package/esm2022/lib/components/header/components/header-action-menu/header-action-menu.component.mjs +5 -5
  22. package/esm2022/lib/components/header/components/header-aux-menu/header-aux-menu.component.mjs +5 -5
  23. package/esm2022/lib/components/header/components/header-aux-menu-container/header-aux-menu-container.component.mjs +5 -5
  24. package/esm2022/lib/components/header/components/header-aux-menu-item/header-aux-menu-item.component.mjs +5 -5
  25. package/esm2022/lib/components/header/components/header-aux-menu-item-dropdown/header-aux-menu-item-dropdown.component.mjs +5 -5
  26. package/esm2022/lib/components/header/components/header-logo/header-logo.component.mjs +5 -5
  27. package/esm2022/lib/components/header/components/header-main-menu/header-main-menu.component.mjs +5 -5
  28. package/esm2022/lib/components/header/components/header-main-menu-item/header-main-menu-item.component.mjs +5 -5
  29. package/esm2022/lib/components/header/components/header-main-menu-item-dropdown/header-main-menu-item-dropdown.component.mjs +5 -5
  30. package/esm2022/lib/components/header/components/header-side-menu/header-side-menu.component.mjs +5 -5
  31. package/esm2022/lib/components/header/components/header-side-menu-item/header-side-menu-item.component.mjs +5 -5
  32. package/esm2022/lib/components/header/header.component.mjs +5 -5
  33. package/esm2022/lib/components/header/helpers/headerTheme.func.mjs +1 -1
  34. package/esm2022/lib/components/header/models/HeaderTheme.model.mjs +1 -1
  35. package/esm2022/lib/components/header/services/header.service.mjs +4 -4
  36. package/esm2022/lib/components/image/image.component.mjs +5 -5
  37. package/esm2022/lib/components/index.mjs +1 -1
  38. package/esm2022/lib/components/load-screen/load-screen.component.mjs +5 -5
  39. package/esm2022/lib/components/overlay/overlay.component.mjs +5 -5
  40. package/esm2022/lib/components/page-header/page-header.component.mjs +5 -5
  41. package/esm2022/lib/components/page-template-sidebar/page-template-sidebar.component.mjs +5 -5
  42. package/esm2022/lib/components/pagination/pagination.component.mjs +5 -5
  43. package/esm2022/lib/components/search/search.component.mjs +5 -5
  44. package/esm2022/lib/components/section-navigation/section-navigation.component.mjs +5 -5
  45. package/esm2022/lib/components/side-ctas/components/side-ctas-bottom/side-ctas-bottom.component.mjs +5 -5
  46. package/esm2022/lib/components/side-ctas/components/side-ctas-right-bottom/side-ctas-right-bottom.component.mjs +5 -5
  47. package/esm2022/lib/components/side-ctas/components/side-ctas-right-middle/side-ctas-right-middle.component.mjs +5 -5
  48. package/esm2022/lib/components/side-ctas/components/side-ctas-right-top/side-ctas-right-top.component.mjs +3 -3
  49. package/esm2022/lib/components/side-ctas/side-ctas.component.mjs +5 -5
  50. package/esm2022/lib/components/whatsapp/whatsapp.component.mjs +5 -5
  51. package/esm2022/lib/directives/index.mjs +1 -1
  52. package/esm2022/lib/directives/rdsite-click-outside/rdsite-click-outside.directive.mjs +4 -4
  53. package/esm2022/lib/directives/rdsite-link/rdsite-link.directive.mjs +4 -4
  54. package/esm2022/lib/directives/rdsite-phone-modal/rdsite-phone-modal.directive.mjs +3 -3
  55. package/esm2022/lib/enums/EnumDoencaTaxonomy.enum.mjs +1 -1
  56. package/esm2022/lib/enums/EnumError.enum.mjs +1 -1
  57. package/esm2022/lib/enums/EnumThemes.enum.mjs +1 -1
  58. package/esm2022/lib/enums/Estados.enum.mjs +1 -1
  59. package/esm2022/lib/enums/IconCuraDefaultType.enum.mjs +1 -1
  60. package/esm2022/lib/enums/ImageMimeType.enum.mjs +1 -1
  61. package/esm2022/lib/enums/RdsiteModalComponentStyle.enum.mjs +1 -1
  62. package/esm2022/lib/enums/RdsiteModalDrawerComponentStyle.enum.mjs +1 -1
  63. package/esm2022/lib/enums/UnidadeCoverageType.enum.mjs +1 -1
  64. package/esm2022/lib/enums/index.mjs +1 -1
  65. package/esm2022/lib/helpers/check-safari-agent.func.mjs +1 -1
  66. package/esm2022/lib/helpers/getSiteUrl.func.mjs +1 -1
  67. package/esm2022/lib/helpers/index.mjs +1 -1
  68. package/esm2022/lib/helpers/mediaQueries.mjs +1 -1
  69. package/esm2022/lib/helpers/removeDuplicateObjectsFromArray.func.mjs +1 -1
  70. package/esm2022/lib/helpers/removeDuplicateValuesFromArray.func.mjs +1 -1
  71. package/esm2022/lib/helpers/removeHtmlTags.func.mjs +1 -1
  72. package/esm2022/lib/helpers/toQueryParams.func.mjs +1 -1
  73. package/esm2022/lib/interceptors/error.interceptor.mjs +4 -4
  74. package/esm2022/lib/interceptors/index.mjs +1 -1
  75. package/esm2022/lib/interceptors/log.interceptor.mjs +4 -4
  76. package/esm2022/lib/models/algolia-search-api.model.mjs +1 -1
  77. package/esm2022/lib/models/algolia.model.mjs +1 -1
  78. package/esm2022/lib/models/breadcrumbs/breadcrumbs-items.model.mjs +1 -1
  79. package/esm2022/lib/models/breadcrumbs/breadcrumbs-json-item.model.mjs +1 -1
  80. package/esm2022/lib/models/centro-estudos-backend.model.mjs +1 -1
  81. package/esm2022/lib/models/content-banner.model.mjs +1 -1
  82. package/esm2022/lib/models/cta-wrapper.model.mjs +1 -1
  83. package/esm2022/lib/models/doenca-backend.model.mjs +1 -1
  84. package/esm2022/lib/models/doenca-taxonomy.model.mjs +1 -1
  85. package/esm2022/lib/models/especialidade-backend.model.mjs +1 -1
  86. package/esm2022/lib/models/exame-backend.model.mjs +1 -1
  87. package/esm2022/lib/models/filters/filter-planos-convenios.model.mjs +1 -1
  88. package/esm2022/lib/models/images/rdsite-image.model.mjs +1 -1
  89. package/esm2022/lib/models/medico-cv.model.mjs +1 -1
  90. package/esm2022/lib/models/menu-de-unidade.model.mjs +1 -1
  91. package/esm2022/lib/models/menu-item.model.mjs +1 -1
  92. package/esm2022/lib/models/privacy-tools/privacy-tools.model.mjs +1 -1
  93. package/esm2022/lib/models/rdsl-cobertura.model.mjs +1 -1
  94. package/esm2022/lib/models/rdsl-convenio.model.mjs +1 -1
  95. package/esm2022/lib/models/rdsl-especialidade.model.mjs +1 -1
  96. package/esm2022/lib/models/rdsl-planos.model.mjs +1 -1
  97. package/esm2022/lib/models/rdsl-post-category.model.mjs +1 -1
  98. package/esm2022/lib/models/rdsl-unidade.model.mjs +1 -1
  99. package/esm2022/lib/models/section-navigation.model.mjs +1 -1
  100. package/esm2022/lib/models/seo/seo-data.model.mjs +1 -1
  101. package/esm2022/lib/models/seo/seo-unidade.model.mjs +1 -1
  102. package/esm2022/lib/models/social-meta-properties.model.mjs +1 -1
  103. package/esm2022/lib/models/wordpress/WpResponse.model.mjs +1 -1
  104. package/esm2022/lib/models/wordpress/category/wpCategory.model.mjs +1 -1
  105. package/esm2022/lib/models/wordpress/general/content.model.mjs +1 -1
  106. package/esm2022/lib/models/wordpress/general/excerpt.model.mjs +1 -1
  107. package/esm2022/lib/models/wordpress/general/featuredMedia.model.mjs +1 -1
  108. package/esm2022/lib/models/wordpress/general/guid.model.mjs +1 -1
  109. package/esm2022/lib/models/wordpress/general/index.mjs +1 -1
  110. package/esm2022/lib/models/wordpress/general/links.model.mjs +1 -1
  111. package/esm2022/lib/models/wordpress/general/meta.model.mjs +1 -1
  112. package/esm2022/lib/models/wordpress/general/title.model.mjs +1 -1
  113. package/esm2022/lib/models/wordpress/general/yoastData.model.mjs +1 -1
  114. package/esm2022/lib/models/wordpress/general/yoastHeadJson.model.mjs +1 -1
  115. package/esm2022/lib/models/wordpress/general/yoastMeta.model.mjs +1 -1
  116. package/esm2022/lib/models/wordpress/page/page.model.mjs +1 -1
  117. package/esm2022/lib/models/wordpress/post/post.model.mjs +1 -1
  118. package/esm2022/lib/models/wordpress/unidade/wp-unidade-onco.model.mjs +1 -1
  119. package/esm2022/lib/models/wordpress/unidade/wp-unidade-site-detalhe.model.mjs +1 -1
  120. package/esm2022/lib/pipes/phone/phone.pipe.mjs +3 -3
  121. package/esm2022/lib/services/algolia/algolia.service.mjs +4 -4
  122. package/esm2022/lib/services/algolia-search-api/algolia-search-api.service.mjs +4 -4
  123. package/esm2022/lib/services/cura/cura.service.mjs +4 -4
  124. package/esm2022/lib/services/http-client/http-client.service.mjs +4 -4
  125. package/esm2022/lib/services/index.mjs +1 -1
  126. package/esm2022/lib/services/log/log.service.mjs +4 -4
  127. package/esm2022/lib/services/modal/modal.service.mjs +4 -4
  128. package/esm2022/lib/services/modal-drawer/modal-drawer.service.mjs +3 -3
  129. package/esm2022/lib/services/ngu-carousel/ngu-carousel.service.mjs +4 -4
  130. package/esm2022/lib/services/phone/phone.service.mjs +3 -3
  131. package/esm2022/lib/services/privacy-tools/privacy-tools.service.mjs +4 -4
  132. package/esm2022/lib/services/seo/seo.service.mjs +4 -4
  133. package/esm2022/lib/services/server-response/server-response.service.mjs +4 -4
  134. package/esm2022/lib/services/site-back-end/site-back-end.service.mjs +4 -4
  135. package/esm2022/lib/services/ssr-loading/ssr-loading.service.mjs +4 -4
  136. package/esm2022/lib/services/transfer-state/transfer-state.service.mjs +4 -4
  137. package/esm2022/lib/services/youtube/youtube.service.mjs +4 -4
  138. package/esm2022/lib/tokens/CuraApi.mjs +1 -1
  139. package/esm2022/lib/tokens/LibConfig.mjs +1 -1
  140. package/esm2022/lib/tokens/express.tokens.mjs +1 -1
  141. package/esm2022/public-api.mjs +1 -1
  142. package/fesm2022/rededor-site-front-end-lib.mjs +284 -242
  143. package/fesm2022/rededor-site-front-end-lib.mjs.map +1 -1
  144. package/lib/components/filter-letter-and-terms/filter-letter-and-terms.component.d.ts +13 -5
  145. package/package.json +1 -1
  146. package/styles/_breakpoints.scss +5 -5
@@ -471,10 +471,10 @@ export class SeoService {
471
471
  this.unidadePath = unidadePath;
472
472
  this.unidadeSlug = unidadeSlug;
473
473
  }
474
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.11", ngImport: i0, type: SeoService, deps: [{ token: i1.Title }, { token: i1.Meta }, { token: i2.Location }, { token: LIB_CONFIG }, { token: DOCUMENT }], target: i0.ɵɵFactoryTarget.Injectable }); }
475
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.11", ngImport: i0, type: SeoService, providedIn: 'root' }); }
474
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: SeoService, deps: [{ token: i1.Title }, { token: i1.Meta }, { token: i2.Location }, { token: LIB_CONFIG }, { token: DOCUMENT }], target: i0.ɵɵFactoryTarget.Injectable }); }
475
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: SeoService, providedIn: 'root' }); }
476
476
  }
477
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.11", ngImport: i0, type: SeoService, decorators: [{
477
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: SeoService, decorators: [{
478
478
  type: Injectable,
479
479
  args: [{
480
480
  providedIn: 'root',
@@ -486,4 +486,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.11", ngImpo
486
486
  type: Inject,
487
487
  args: [DOCUMENT]
488
488
  }] }] });
489
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VvLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zaXRlLWZyb250LWVuZC1saWIvc3JjL2xpYi9zZXJ2aWNlcy9zZW8vc2VvLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFbkQsT0FBTyxFQUFFLFFBQVEsRUFBWSxNQUFNLGlCQUFpQixDQUFDO0FBRXJELE9BQU8sS0FBSyxFQUFFLE1BQU0sSUFBSSxDQUFDO0FBUXpCLE9BQU8sRUFBRSxVQUFVLEVBQUUsY0FBYyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNELE9BQU8sRUFBRSxVQUFVLEVBQWEsTUFBTSx3QkFBd0IsQ0FBQzs7OztBQUsvRCxNQUFNLE9BQU8sVUFBVTtJQXlCckIsWUFDVSxLQUFZLEVBQ1osSUFBVSxFQUNWLFFBQWtCLEVBQ0UsU0FBb0IsRUFDdEIsUUFBa0I7UUFKcEMsVUFBSyxHQUFMLEtBQUssQ0FBTztRQUNaLFNBQUksR0FBSixJQUFJLENBQU07UUFDVixhQUFRLEdBQVIsUUFBUSxDQUFVO1FBQ0UsY0FBUyxHQUFULFNBQVMsQ0FBVztRQUN0QixhQUFRLEdBQVIsUUFBUSxDQUFVO1FBN0J2QyxjQUFTLEdBQUcsS0FBSyxDQUFDO1FBQ2xCLGlCQUFZLEdBQUcsV0FBVyxDQUFDO1FBRTNCLFdBQU0sR0FBRztZQUNkLG1DQUFtQztZQUNuQyw0Q0FBNEM7WUFDNUMsa0RBQWtEO1lBQ2xELDZCQUE2QjtTQUM5QixDQUFDO1FBQ0ssZ0JBQVcsR0FBRyxVQUFVLENBQUM7UUFJeEIsY0FBUyxHQUFHLFNBQVMsQ0FBQztRQUV0Qix5QkFBb0IsR0FBRyxpQkFBaUIsQ0FBQztRQUUxQyxZQUFPLEdBQVEsSUFBSSxDQUFDO1FBQ3BCLGdCQUFXLEdBQVcsRUFBRSxDQUFDO1FBQ3pCLGdCQUFXLEdBQVcsRUFBRSxDQUFD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LENBQUMsQ0FBQztJQUN6QyxDQUFDO0lBRUQsbUJBQW1CLENBQUMsVUFBa0I7UUFDcEMsTUFBTSxNQUFNLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxjQUFjLENBQUMsVUFBVSxDQUFDLENBQUM7UUFDeEQsTUFBTSxFQUFFLE1BQU0sRUFBRSxDQUFDO0lBQ25CLENBQUM7SUFFTSxVQUFVLENBQUMsRUFBRSxPQUFPLEdBQUcsSUFBSSxFQUFFLFdBQVcsR0FBRyxFQUFFLEVBQUUsV0FBVyxHQUFHLEVBQUUsRUFBRSxXQUFXLEdBQUcsRUFBRSxFQUFjO1FBQ3BHLElBQUksQ0FBQyxPQUFPLEdBQUcsT0FBTyxDQUFDO1FBQ3ZCLElBQUksQ0FBQyxXQUFXLEdBQUcsV0FBVyxDQUFDO1FBQy9CLElBQUksQ0FBQyxXQUFXLEdBQUcsV0FBVyxDQUFDO1FBQy9CLElBQUksQ0FBQyxXQUFXLEdBQUcsV0FBVyxDQUFDO0lBQ2pDLENBQUM7K0dBdGdCVSxVQUFVLG1GQTZCWCxVQUFVLGFBQ1YsUUFBUTttSEE5QlAsVUFBVSxjQUZULE1BQU07OzRGQUVQLFVBQVU7a0JBSHRCLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25COzswQkE4QkksTUFBTTsyQkFBQyxVQUFVOzswQkFDakIsTUFBTTsyQkFBQyxRQUFRIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0LCBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IE1ldGEsIFRpdGxlIH0gZnJvbSAnQGFuZ3VsYXIvcGxhdGZvcm0tYnJvd3Nlcic7XHJcbmltcG9ydCB7IERPQ1VNRU5ULCBMb2NhdGlvbiB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XHJcblxyXG5pbXBvcnQgKiBhcyBoZSBmcm9tICdoZSc7XHJcblxyXG5pbXBvcnQgeyBTb2NpYWxNZXRhUHJvcGVydGllcyB9IGZyb20gJy4uLy4uL21vZGVscy9zb2NpYWwtbWV0YS1wcm9wZXJ0aWVzLm1vZGVsJztcclxuaW1wb3J0IHsgQnJlYWRjcnVtYnNJdGVtcyB9IGZyb20gJy4uLy4uL21vZGVscy9icmVhZGNydW1icy9icmVhZGNydW1icy1pdGVtcy5tb2RlbCc7XHJcbmltcG9ydCB7IEJyZWFkY3J1bWJzSnNvbkl0ZW0gfSBmcm9tICcuLi8uLi9tb2RlbHMvYnJlYWRjcnVtYnMvYnJlYWRjcnVtYnMtanNvbi1pdGVtLm1vZGVsJztcclxuaW1wb3J0IHsgU2VvRGF0YSB9IGZyb20gJy4uLy4uL21vZGVscy9zZW8vc2VvLWRhdGEubW9kZWwnO1xyXG5pbXBvcnQgeyBTZW9VbmlkYWRlIH0gZnJvbSAnLi4vLi4vbW9kZWxzL3Nlby9zZW8tdW5pZGFkZS5tb2RlbCc7XHJcbmltcG9ydCB7IFdwUG9zdCB9IGZyb20gJy4uLy4uL21vZGVscy93b3JkcHJlc3MvcG9zdC9wb3N0Lm1vZGVsJztcclxuaW1wb3J0IHsgZ2V0U2l0ZVVybCwgcmVtb3ZlSHRtbFRhZ3MgfSBmcm9tICcuLi8uLi9oZWxwZXJzJztcclxuaW1wb3J0IHsgTElCX0NPTkZJRywgTGliQ29uZmlnIH0gZnJvbSAnLi4vLi4vdG9rZW5zL0xpYkNvbmZpZyc7XHJcblxyXG5ASW5qZWN0YWJsZSh7XHJcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgU2VvU2VydmljZSB7XHJcbiAgcHVibGljIHNlcGFyYXRvciA9ICcgLSAnO1xyXG4gIHB1YmxpYyBkZWZhdWx0VGl0bGUgPSAnUmVkZSBE4oCZT3InO1xyXG4gIHB1YmxpYyBhY3RpdmVEZXNjcmlwdGlvbiE6IHN0cmluZztcclxuICBwdWJsaWMgc2FtZUFzID0gW1xyXG4gICAgJ2h0dHBzOi8vd3d3LmZhY2Vib29rLmNvbS9yZWRlZG9yLycsXHJcbiAgICAnaHR0cHM6Ly93d3cuaW5zdGFncmFtLmNvbS9yZWRlZG9yX29maWNpYWwvJyxcclxuICAgICdodHRwczovL3d3dy5saW5rZWRpbi5jb20vY29tcGFueS9yZWRlZG9yLXNhb2x1aXonLFxyXG4gICAgJ2h0dHBzOi8vdHdpdHRlci5jb20vcmVkZWRvcicsXHJcbiAgXTtcclxuICBwdWJsaWMgdHdpdHRlclVzZXIgPSAnQHJlZGVkb3InO1xyXG5cclxuICBwcml2YXRlIGNhbm9uaWNhbFRhZyE6IEhUTUxMaW5rRWxlbWVudDtcclxuICBwcml2YXRlIGpzb25UYWchOiBIVE1MU2NyaXB0RWxlbWVudDtcclxuICBwcml2YXRlIGpzb25UYWdJZCA9ICdzZW9KU09OJztcclxuICBwcml2YXRlIGJyZWFkY3J1bWJzSnNvblRhZyE6IEhUTUxTY3JpcHRFbGVtZW50O1xyXG4gIHByaXZhdGUgYnJlYWRjcnVtYnNKc29uVGFnSWQgPSAnYnJlYWRjcnVtYnNKU09OJztcclxuXHJcbiAgcHVibGljIHVuaWRhZGU6IGFueSA9IG51bGw7XHJcbiAgcHVibGljIHVuaWRhZGVOYW1lOiBzdHJpbmcgPSAnJztcclxuICBwdWJsaWMgdW5pZGFkZVBhdGg6IHN0cmluZyA9ICcnO1xyXG4gIHB1YmxpYyB1bmlkYWRlU2x1Zzogc3RyaW5nID0gJyc7XHJcblxyXG4gIHB1YmxpYyBjdXN0b21Kc29uVHlwZTogYW55W10gPSBbXTtcclxuXHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBwcml2YXRlIHRpdGxlOiBUaXRsZSxcclxuICAgIHByaXZhdGUgbWV0YTogTWV0YSxcclxuICAgIHByaXZhdGUgbG9jYXRpb246IExvY2F0aW9uLFxyXG4gICAgQEluamVjdChMSUJfQ09ORklHKSBwcml2YXRlIGxpYkNvbmZpZzogTGliQ29uZmlnLFxyXG4gICAgQEluamVjdChET0NVTUVOVCkgcHJpdmF0ZSBkb2N1bWVudDogRG9jdW1lbnQsXHJcbiAgKSB7fVxyXG5cclxuICBwdWJsaWMgc2V0RnVsbFNlbyhkYXRhOiBTZW9EYXRhKSB7XHJcbiAgICB0aGlzLnNldFRpdGxlKGRhdGEudGl0bGUudGV4dCwgISFkYXRhLnRpdGxlLnN1Yik7XHJcbiAgICB0aGlzLnNldERlc2NyaXB0aW9uKGRhdGEuZGVzY3JpcHRpb24pO1xyXG4gICAgdGhpcy5zZXRDYW5vbmljYWxIcmVmKGRhdGEuY2Fub25pY2FsKTtcclxuICAgIHRoaXMuc2V0UGFnZUpzb24oKTtcclxuICAgIHRoaXMuc2V0U29jaWFsVGFncyhkYXRhLnNvY2lhbFRhZ3MpO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogRGVmaW5lIHRhZyBkZXNjcmlwdGlvbiBkYSBww6FnaW5hXHJcbiAgICogQHBhcmFtIGNvbnRlbnQgY29udGXDumRvIGRhIGRlc2NyacOnw6NvIDxzdHJpbmc+XHJcbiAgICovXHJcbiAgcHVibGljIHNldERlc2NyaXB0aW9uKGNvbnRlbnQ6IHN0cmluZyk6IFNlb1NlcnZpY2Uge1xyXG4gICAgY29uc3QgZGVzY1RhZyA9IHRoaXMubWV0YS5nZXRUYWcoXCJuYW1lPSdkZXNjcmlwdGlvbidcIik7XHJcbiAgICBpZiAoY29udGVudCkge1xyXG4gICAgICBjb250ZW50ID0gaGUuZGVjb2RlKGNvbnRlbnQpO1xyXG4gICAgICBjb250ZW50ID0gcmVtb3ZlSHRtbFRhZ3MoY29udGVudCk7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICBjb250ZW50ID0gJyc7XHJcbiAgICB9XHJcbiAgICB0aGlzLmFjdGl2ZURlc2NyaXB0aW9uID0gY29udGVudDtcclxuICAgIGNvbnN0IHRhZ0NvbnRlbnQgPSB7IG5hbWU6ICdkZXNjcmlwdGlvbicsIGNvbnRlbnQgfTtcclxuICAgIGlmIChkZXNjVGFnKSB7XHJcbiAgICAgIHRoaXMubWV0YS51cGRhdGVUYWcodGFnQ29udGVudCk7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICB0aGlzLm1ldGEuYWRkVGFnKHRhZ0NvbnRlbnQpO1xyXG4gICAgfVxyXG4gICAgcmV0dXJuIHRoaXM7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBEZWZpbmUgbWV0YSB0YWdzIHBhcmEgYSBww6FnaW5hXHJcbiAgICogQHBhcmFtIHRhZyBub21lIGRhIHRhZyBtZXRhXHJcbiAgICogQHBhcmFtIGNvbnRlbnQgY29udGXDumRvIGRhIHRhZyBtZXRhXHJcbiAgICogQHBhcmFtIHR5cGUgdGlwbyBkZSB0YWcgbWV0YVxyXG4gICAqL1xyXG4gIHB1YmxpYyBzZXRNZXRhVGFnKHRhZzogc3RyaW5nLCBjb250ZW50OiBzdHJpbmcsIHR5cGUgPSAnbmFtZScpIHtcclxuICAgIGNvbnN0IG1ldGF0YWcgPSB0aGlzLm1ldGEuZ2V0VGFnKGAke3R5cGV9PScke3RhZ30nYCk7XHJcbiAgICBjb250ZW50ID0gaGUuZGVjb2RlKGNvbnRlbnQpO1xyXG4gICAgY29udGVudCA9IHJlbW92ZUh0bWxUYWdzKGNvbnRlbnQpO1xyXG4gICAgY29uc3QgdGFnQ29udGVudCA9IHtcclxuICAgICAgW3R5cGVdOiB0YWcsXHJcbiAgICAgIGNvbnRlbnQsXHJcbiAgICB9O1xyXG4gICAgaWYgKCFtZXRhdGFnKSB7XHJcbiAgICAgIHRoaXMubWV0YS5hZGRUYWcodGFnQ29udGVudCk7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICB0aGlzLm1ldGEudXBkYXRlVGFnKHRhZ0NvbnRlbnQpO1xyXG4gICAgfVxyXG4gICAgcmV0dXJuIHRoaXM7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBSZW1vdmUgbWV0YSB0YWdzIGRhIHDDoWdpbmFcclxuICAgKiBAcGFyYW0gdGFnIG5vbWUgZGEgdGFnIG1ldGFcclxuICAgKiBAcGFyYW0gY29udGVudCBjb250ZcO6ZG8gZGEgdGFnIG1ldGFcclxuICAgKiBAcGFyYW0gYXR0ciBhdHJpYnV0byBkYSB0YWcgbWV0YVxyXG4gICAqIEBwYXJhbSB0eXBlIHRpcG8gZGUgdGFnIG1ldGFcclxuICAgKi9cclxuICBwdWJsaWMgcmVtb3ZlVGFnKHRhZzogc3RyaW5nLCBjb250ZW50OiBzdHJpbmcsIGF0dHI6IHN0cmluZywgdHlwZSA9ICduYW1lJykge1xyXG4gICAgY29uc3QgbWV0YXRhZyA9IHRoaXMubWV0YS5nZXRUYWcoYCR7dHlwZX09JyR7dGFnfSdgKTtcclxuICAgIGlmIChtZXRhdGFnKSB7XHJcbiAgICAgIHRoaXMubWV0YS5yZW1vdmVUYWcoYCR7YXR0cn09JHtjb250ZW50fWApO1xyXG4gICAgfVxyXG4gICAgcmV0dXJuIHRoaXM7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBEZWZpbmUgbWV0YSB0YWdzIHBhcmEgRmFjZWJvb2tcclxuICAgKiBAcGFyYW0gdGl0bGUgdMOtdHVsbyBwYXJhIG8gZmFjZWJvb2tcclxuICAgKiBAcGFyYW0gZGVzY3JpcHRpb24gZGVzY3Jpw6fDo28gcGFyYSBvIGZhY2Vib29rXHJcbiAgICogQHBhcmFtIHVybCB1cmwgcGFyYSBkZWZpbmnDp8OjbyBkbyBmYWNlYm9va1xyXG4gICAqIEBwYXJhbSBpbWcgaW1hZ2VtIHBhcmEgZGVmaW5pw6fDo28gbm8gZmFjZWJvb2tcclxuICAgKi9cclxuICBwdWJsaWMgc2V0TWV0YUZhY2Vib29rKHRpdGxlOiBzdHJpbmcsIGRlc2NyaXB0aW9uOiBzdHJpbmcsIHVybDogc3RyaW5nLCBpbWc6IHN0cmluZyB8IG51bGwgPSBudWxsKSB7XHJcbiAgICB0aGlzLnNldE1ldGFUYWcoJ29nOnVybCcsIHVybCwgJ3Byb3BlcnR5Jyk7XHJcbiAgICB0aGlzLnNldE1ldGFUYWcoJ29nOnRpdGxlJywgdGl0bGUsICdwcm9wZXJ0eScpO1xyXG4gICAgdGhpcy5zZXRNZXRhVGFnKCdvZzpkZXNjcmlwdGlvbicsIGRlc2NyaXB0aW9uLCAncHJvcGVydHknKTtcclxuICAgIHRoaXMuc2V0TWV0YVRhZygnb2c6dHlwZScsICd3ZWJzaXRlJywgJ3Byb3BlcnR5Jyk7XHJcbiAgICB0aGlzLnNldE1ldGFUYWcoJ29nOmltYWdlJywgaW1nID8/ICcnLCAncHJvcGVydHknKTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIERlZmluZSBtZXRhIHRhZ3MgcGFyYSBUd2l0dGVyXHJcbiAgICogQHBhcmFtIHRpdGxlIHTDrXR1bG8gcGFyYSBvIHR3aXR0ZXJcclxuICAgKiBAcGFyYW0gZGVzY3JpcHRpb24gZGVzY3Jpw6fDo28gcGFyYSBvIHR3aXR0ZXJcclxuICAgKiBAcGFyYW0gdXJsIHVybCBwYXJhIG8gdHdpdHRlclxyXG4gICAqIEBwYXJhbSBpbWcgaW1hZ2VtIHBhcmEgZGVmaW5pw6fDo28gbm8gdHdpdHRlclxyXG4gICAqL1xyXG4gIHB1YmxpYyBzZXRNZXRhVHdpdHRlcih0aXRsZTogc3RyaW5nLCBkZXNjcmlwdGlvbjogc3RyaW5nLCB1cmw6IHN0cmluZywgaW1nOiBzdHJpbmcgfCBudWxsID0gbnVsbCkge1xyXG4gICAgdGhpcy5zZXRNZXRhVGFnKCd0d2l0dGVyOnNpdGUnLCB1cmwsICduYW1lJyk7XHJcbiAgICB0aGlzLnNldE1ldGFUYWcoJ3R3aXR0ZXI6dGl0bGUnLCB0aXRsZSwgJ25hbWUnKTtcclxuICAgIHRoaXMuc2V0TWV0YVRhZygndHdpdHRlcjpkZXNjcmlwdGlvbicsIGRlc2NyaXB0aW9uLCAnbmFtZScpO1xyXG4gICAgdGhpcy5zZXRNZXRhVGFnKCd0d2l0dGVyOmltYWdlJywgaW1nID8/ICcnLCAnbmFtZScpO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogRGVmaW5lIHRhZ3MgZGUgcmVkZXMgc29jaWFpcyAoVHdpdHRlciBlIE9wZW4gR3JhcGgpXHJcbiAgICogQHBhcmFtIHByb3BlcnRpZXNcclxuICAgKi9cclxuICBzZXRTb2NpYWxUYWdzKHByb3BlcnRpZXM/OiBTb2NpYWxNZXRhUHJvcGVydGllcykge1xyXG4gICAgY29uc3QgcGFnZVBhdGggPSB0aGlzLmxvY2F0aW9uLnBhdGgoKTtcclxuICAgIGNvbnN0IHNpdGV1cmwgPSBnZXRTaXRlVXJsKHRoaXMubGliQ29uZmlnPy5zaXRlVXJsLCB0aGlzLmxpYkNvbmZpZz8uc2l0ZVN1Zml4KTtcclxuICAgIGxldCBkZWZhdWx0UHJvcGVydGllczogU29jaWFsTWV0YVByb3BlcnRpZXMgPSB7XHJcbiAgICAgIHR3aXR0ZXJDYXJkOiAnc3VtbWFyeScsXHJcbiAgICAgIHR3aXR0ZXJTaXRlOiB0aGlzLnR3aXR0ZXJVc2VyLFxyXG4gICAgICB0eXBlOiAnd2Vic2l0ZScsXHJcbiAgICAgIHRpdGxlOiB0aGlzLmdldFRpdGxlKCksXHJcbiAgICAgIGRlc2NyaXB0aW9uOiB0aGlzLmFjdGl2ZURlc2NyaXB0aW9uIHx8ICcnLFxyXG4gICAgICB1cmw6IGAke3NpdGV1cmx9JHtwYWdlUGF0aH1gLFxyXG4gICAgICBpbWFnZTogdGhpcy5saWJDb25maWc/LmxvZ29QYXRoID8gYCR7c2l0ZXVybH0ke3RoaXMubGliQ29uZmlnLmxvZ29QYXRofWAgOiAnaHR0cHM6Ly93d3cucmVkZWRvcnNhb2x1aXouY29tLmJyL2Fzc2V0cy9pbWdzL2xvZ28tcmVkZWRvci1ibHVlLnBuZycsXHJcbiAgICB9O1xyXG4gICAgaWYgKHByb3BlcnRpZXMpIHtcclxuICAgICAgZGVmYXVsdFByb3BlcnRpZXMgPSB7IC4uLmRlZmF1bHRQcm9wZXJ0aWVzLCAuLi5wcm9wZXJ0aWVzIH07XHJcbiAgICB9XHJcbiAgICB0aGlzLnNldE1ldGFUYWcoJ3R3aXR0ZXI6Y2FyZCcsIGRlZmF1bHRQcm9wZXJ0aWVzLnR3aXR0ZXJDYXJkIHx8ICcnLCAnbmFtZScpXHJcbiAgICAgIC5zZXRNZXRhVGFnKCd0d2l0dGVyOnNpdGUnLCBkZWZhdWx0UHJvcGVydGllcy50d2l0dGVyU2l0ZSB8fCAnJywgJ25hbWUnKVxyXG4gICAgICAuc2V0TWV0YVRhZygnb2c6dHlwZScsIGRlZmF1bHRQcm9wZXJ0aWVzLnR5cGUgfHwgJycsICdwcm9wZXJ0eScpXHJcbiAgICAgIC5zZXRNZXRhVGFnKCdvZzp0aXRsZScsIGRlZmF1bHRQcm9wZXJ0aWVzLnRpdGxlIHx8ICcnLCAncHJvcGVydHknKVxyXG4gICAgICAuc2V0TWV0YVRhZygnb2c6ZGVzY3JpcHRpb24nLCBkZWZhdWx0UHJvcGVydGllcy5kZXNjcmlwdGlvbiB8fCAnJywgJ3Byb3BlcnR5JylcclxuICAgICAgLnNldE1ldGFUYWcoJ29nOnVybCcsIGRlZmF1bHRQcm9wZXJ0aWVzLnVybCB8fCAnJywgJ3Byb3BlcnR5JylcclxuICAgICAgLnNldE1ldGFUYWcoJ29nOmltYWdlJywgZGVmYXVsdFByb3BlcnRpZXMuaW1hZ2UgfHwgJycsICdwcm9wZXJ0eScpO1xyXG5cclxuICAgIHJldHVybiB0aGlzO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogRGVmaW5lIHTDrXR1bG8gZGEgcMOhZ2luYVxyXG4gICAqIEBwYXJhbSB0aXRsZSB0w610dWxvIGRhIHDDoWdpbmEgPHN0cmluZz5cclxuICAgKiBAcGFyYW0gc3ViIFNlIMOpIHN1YnNpdGUgYWNyZXNjZW50YSB1bmlkYWRlIDxib29sZWFuPlxyXG4gICAqL1xyXG4gIHB1YmxpYyBzZXRUaXRsZSh0aXRsZTogc3RyaW5nLCBzdWIgPSBmYWxzZSkge1xyXG4gICAgaWYgKHRpdGxlICYmIHRpdGxlICE9PSAnJykge1xyXG4gICAgICB0aXRsZSA9IGhlLmRlY29kZSh0aXRsZSk7XHJcbiAgICAgIHRpdGxlID0gcmVtb3ZlSHRtbFRhZ3ModGl0bGUpO1xyXG4gICAgICBpZiAoc3ViKSB7XHJcbiAgICAgICAgdGl0bGUgPSBoZS5kZWNvZGUoYCR7dGl0bGV9JHt0aGlzLnNlcGFyYXRvcn0ke3RoaXMudW5pZGFkZU5hbWV9YCk7XHJcbiAgICAgIH1cclxuICAgICAgdGhpcy50aXRsZS5zZXRUaXRsZSh0aXRsZSk7XHJcbiAgICB9XHJcbiAgICByZXR1cm4gdGhpcztcclxuICB9XHJcblxyXG4gIC8qKiBPYnRlbSB0w610dWxvIGF0dWFsIGRhIHDDoWdpbmEgKi9cclxuICBwdWJsaWMgZ2V0VGl0bGUoKTogc3RyaW5nIHtcclxuICAgIHJldHVybiB0aGlzLnRpdGxlLmdldFRpdGxlKCk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgc2V0NDA0VGl0bGUoY29tcG9uZW50OiBzdHJpbmcgPSAnRGVmYXVsdCBDb21wb25lbnQnKSB7XHJcbiAgICBpZiAoY29tcG9uZW50ICYmIGNvbXBvbmVudCAhPT0gJycpIHtcclxuICAgICAgY29tcG9uZW50ID0gaGUuZGVjb2RlKGNvbXBvbmVudCk7XHJcbiAgICAgIGNvbXBvbmVudCA9IHJlbW92ZUh0bWxUYWdzKGNvbXBvbmVudCk7XHJcbiAgICAgIGlmICh0aGlzLnVuaWRhZGVOYW1lKSB7XHJcbiAgICAgICAgY29tcG9uZW50ID0gaGUuZGVjb2RlKGAke2NvbXBvbmVudH0ke3RoaXMuc2VwYXJhdG9yfSR7dGhpcy51bmlkYWRlTmFtZX1gKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgY29uc3QgdGl0bGUgPSBgRXJybyA0MDQgLSAke2NvbXBvbmVudH0gLSAke3RoaXMubGliQ29uZmlnPy5zaXRlTmFtZX0gLSAke3RoaXMubG9jYXRpb24ucGF0aCgpfWA7XHJcbiAgICB0aGlzLnRpdGxlLnNldFRpdGxlKHRpdGxlKTtcclxuICAgIHJldHVybiB0aGlzO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIHNldDUwMFRpdGxlKGNvbXBvbmVudDogc3RyaW5nID0gJ0RlZmF1bHQgQ29tcG9uZW50Jykge1xyXG4gICAgaWYgKGNvbXBvbmVudCAmJiBjb21wb25lbnQgIT09ICcnKSB7XHJcbiAgICAgIGNvbXBvbmVudCA9IGhlLmRlY29kZShjb21wb25lbnQpO1xyXG4gICAgICBjb21wb25lbnQgPSByZW1vdmVIdG1sVGFncyhjb21wb25lbnQpO1xyXG4gICAgICBpZiAodGhpcy51bmlkYWRlTmFtZSkge1xyXG4gICAgICAgIGNvbXBvbmVudCA9IGhlLmRlY29kZShgJHtjb21wb25lbnR9JHt0aGlzLnNlcGFyYXRvcn0ke3RoaXMudW5pZGFkZU5hbWV9YCk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIGNvbnN0IHRpdGxlID0gYEVycm8gNTAwIC0gJHtjb21wb25lbnR9IC0gJHt0aGlzLmxpYkNvbmZpZz8uc2l0ZU5hbWV9IC0gJHt0aGlzLmxvY2F0aW9uLnBhdGgoKX1gO1xyXG4gICAgdGhpcy50aXRsZS5zZXRUaXRsZSh0aXRsZSk7XHJcbiAgICByZXR1cm4gdGhpcztcclxuICB9XHJcblxyXG4gIC8qKiBDcmlhIHRhZyBzY3JpcHQgcGFyYSBKU09OIGRlIGJyZWFkY3J1bWJzICovXHJcbiAgcHJpdmF0ZSBjcmVhdGVCcmVhZGNydW1ic0pTT05UYWcoKTogSFRNTFNjcmlwdEVsZW1lbnQge1xyXG4gICAgY29uc3QgdGFnOiBIVE1MU2NyaXB0RWxlbWVudCA9IHRoaXMuZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnc2NyaXB0Jyk7XHJcbiAgICB0YWcuaWQgPSB0aGlzLmJyZWFkY3J1bWJzSnNvblRhZ0lkO1xyXG4gICAgdGFnLnR5cGUgPSAnYXBwbGljYXRpb24vbGQranNvbic7XHJcbiAgICB0aGlzLmRvY3VtZW50LmhlYWQuYXBwZW5kQ2hpbGQodGFnKTtcclxuICAgIHRoaXMuYnJlYWRjcnVtYnNKc29uVGFnID0gdGFnO1xyXG4gICAgcmV0dXJuIHRhZztcclxuICB9XHJcblxyXG4gIC8qKiBSZXRvcm5hIHRhZyBwYXJhIHNjcmlwdCBqc29uIGRlIGJyZWFkY3J1bWJzIG91IGNyaWEgc2UgbsOjbyBob3V2ZXIuICovXHJcbiAgcHJpdmF0ZSBnZXRCcmVhZGNydW1ic0pTT05UYWcoKTogSFRNTFNjcmlwdEVsZW1lbnQge1xyXG4gICAgY29uc3QgZWxlbWVudHMgPSB0aGlzLmRvY3VtZW50LmhlYWQuY2hpbGRyZW47XHJcbiAgICBsZXQgaTogbnVtYmVyO1xyXG4gICAgZm9yIChpID0gMDsgaSA8IGVsZW1lbnRzLmxlbmd0aDsgaSsrKSB7XHJcbiAgICAgIGNvbnN0IGVsZW0gPSBlbGVtZW50c1tpXSBhcyBIVE1MU2NyaXB0RWxlbWVudDtcclxuICAgICAgaWYgKGVsZW0gJiYgZWxlbS5pZCA9PT0gdGhpcy5icmVhZGNydW1ic0pzb25UYWdJZCkge1xyXG4gICAgICAgIHJldHVybiBlbGVtO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICByZXR1cm4gdGhpcy5jcmVhdGVCcmVhZGNydW1ic0pTT05UYWcoKTtcclxuICB9XHJcblxyXG4gIC8qKiBEZWZpbmUgbyBKU09OIGRlIGJyZWFkY3J1bWJzIGRhIHDDoWdpbmEgKi9cclxuICBwdWJsaWMgc2V0QnJlYWRjcnVtYnNKc29uKGl0ZW1zOiBCcmVhZGNydW1ic0l0ZW1zW10pIHtcclxuICAgIHRoaXMuYnJlYWRjcnVtYnNKc29uVGFnID0gdGhpcy5nZXRCcmVhZGNydW1ic0pTT05UYWcoKTtcclxuICAgIGNvbnN0IGpzb24gPSB7XHJcbiAgICAgICdAY29udGV4dCc6ICdodHRwOi8vc2NoZW1hLm9yZycsXHJcbiAgICAgICdAdHlwZSc6ICdCcmVhZGNydW1iTGlzdCcsXHJcbiAgICAgIGl0ZW1MaXN0RWxlbWVudDogdGhpcy5nZXRKc29uQnJlYWRjcnVtYkl0ZW1zKGl0ZW1zKSxcclxuICAgIH07XHJcbiAgICB0aGlzLmJyZWFkY3J1bWJzSnNvblRhZy5pbm5lckhUTUwgPSBKU09OLnN0cmluZ2lmeShqc29uKTtcclxuICAgIHJldHVybiB0aGlzO1xyXG4gIH1cclxuXHJcbiAgLyoqIENvbnZlcnRlIGl0ZW5zIGRvIGJyZWFkY3J1bWIgZW0gaXRlbnMgZG8gSlNPTiAqL1xyXG4gIHByaXZhdGUgZ2V0SnNvbkJyZWFkY3J1bWJJdGVtcyhpdGVtczogQnJlYWRjcnVtYnNJdGVtc1tdKTogQnJlYWRjcnVtYnNKc29uSXRlbVtdIHtcclxuICAgIGNvbnN0IGpzb25JdGVtcyA9IFtcclxuICAgICAge1xyXG4gICAgICAgICdAdHlwZSc6ICdMaXN0SXRlbScsXHJcbiAgICAgICAgcG9zaXRpb246IDEsXHJcbiAgICAgICAgaXRlbTogeyAnQGlkJzogdGhpcy5nZXRCcmVhZGNydW1iSXRlbVVybChbJy8nXSksIG5hbWU6IGhlLmVuY29kZSgnUMOhZ2luYSBJbmljaWFsJykgfSxcclxuICAgICAgfSBhcyBCcmVhZGNydW1ic0pzb25JdGVtLFxyXG4gICAgXTtcclxuICAgIGl0ZW1zLmZvckVhY2goKGl0ZW0sIGkpID0+IHtcclxuICAgICAgY29uc3QganNvbkl0ZW06IEJyZWFkY3J1bWJzSnNvbkl0ZW0gPSB7XHJcbiAgICAgICAgJ0B0eXBlJzogJ0xpc3RJdGVtJyxcclxuICAgICAgICBwb3NpdGlvbjogaSArIDIsXHJcbiAgICAgICAgaXRlbTogeyAnQGlkJzogdGhpcy5nZXRCcmVhZGNydW1iSXRlbVVybChpdGVtPy51cmwgfHwgW10pLCBuYW1lOiBoZS5lbmNvZGUoaXRlbS5sYWJlbCkgfSxcclxuICAgICAgfTtcclxuICAgICAganNvbkl0ZW1zLnB1c2goanNvbkl0ZW0pO1xyXG4gICAgfSk7XHJcbiAgICByZXR1cm4ganNvbkl0ZW1zO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogTW9udGEgYSB1cmwgZG8gaXRlbSBkZSBicmVhZGNydW1iIHByb3ZlbmllbnRlIGRvIGFycmF5IGRlIHVybHNcclxuICAgKiBvdSBkbyBjYW1pbmhvIGRhIHByw7NwcmlhIHDDoWdpbmEsIGNvbmZvcm1lIGNhc28gZG8gw7psdGltbyBpdGVtLlxyXG4gICAqL1xyXG4gIHByaXZhdGUgZ2V0QnJlYWRjcnVtYkl0ZW1VcmwodXJsOiBzdHJpbmdbXSk6IHN0cmluZyB7XHJcbiAgICBjb25zdCBzaXRldXJsID0gZ2V0U2l0ZVVybCh0aGlzLmxpYkNvbmZpZz8uc2l0ZVVybCwgdGhpcy5saWJDb25maWc/LnNpdGVTdWZpeCk7XHJcbiAgICBpZiAoIXVybCB8fCB1cmwubGVuZ3RoIDw9IDApIHtcclxuICAgICAgY29uc3QgcGFnZVBhdGggPSB0aGlzLmxvY2F0aW9uLnBhdGgoKTtcclxuICAgICAgcmV0dXJuIGAke3NpdGV1cmx9JHtwYWdlUGF0aH1gO1xyXG4gICAgfVxyXG4gICAgdXJsID0gdXJsLmZpbHRlcigodSkgPT4gdSAhPT0gdGhpcy51bmlkYWRlUGF0aCk7XHJcbiAgICBjb25zdCB1bmlkYWRlUGF0aCA9IHRoaXMuZ2V0VW5pZGFkZVBhdGgoKTtcclxuICAgIGNvbnN0IGZ1bGxQYXRoID0gYCR7dW5pZGFkZVBhdGh9LyR7dXJsLmpvaW4oJy8nKS5yZXBsYWNlKC9eXFwvPy8sICcnKX1gO1xyXG4gICAgcmV0dXJuIGAke3NpdGV1cmx9JHtmdWxsUGF0aH1gLnJlcGxhY2UoL1xcLyQvLCAnJyk7XHJcbiAgfVxyXG5cclxuICAvKiogQ3JpYSB0YWcgc2NyaXB0IHBhcmEgbyBKU09OIGRlIFNFTyAqL1xyXG4gIHByaXZhdGUgY3JlYXRlSlNPTlRhZygpOiBIVE1MU2NyaXB0RWxlbWVudCB7XHJcbiAgICBjb25zdCB0YWc6IEhUTUxTY3JpcHRFbGVtZW50ID0gdGhpcy5kb2N1bWVudC5jcmVhdGVFbGVtZW50KCdzY3JpcHQnKTtcclxuICAgIHRhZy5pZCA9IHRoaXMuanNvblRhZ0lkO1xyXG4gICAgdGFnLnR5cGUgPSAnYXBwbGljYXRpb24vbGQranNvbic7XHJcbiAgICB0aGlzLmRvY3VtZW50LmhlYWQuYXBwZW5kQ2hpbGQodGFnKTtcclxuICAgIHRoaXMuanNvblRhZyA9IHRhZztcclxuICAgIHJldHVybiB0YWc7XHJcbiAgfVxyXG5cclxuICAvKiogUmV0b3JuYSB0YWcgcGFyYSBzY3JpcHQganNvbiBkZSBicmVhZGNydW1icyBvdSBjcmlhIHNlIG7Do28gaG91dmVyLiAqL1xyXG4gIHByaXZhdGUgZ2V0SlNPTlRhZygpOiBIVE1MU2NyaXB0RWxlbWVudCB7XHJcbiAgICBjb25zdCBlbGVtZW50cyA9IHRoaXMuZG9jdW1lbnQuaGVhZC5jaGlsZHJlbjtcclxuICAgIGxldCBpOiBudW1iZXI7XHJcbiAgICBmb3IgKGkgPSAwOyBpIDwgZWxlbWVudHMubGVuZ3RoOyBpKyspIHtcclxuICAgICAgY29uc3QgZWxlbSA9IGVsZW1lbnRzW2ldIGFzIEhUTUxTY3JpcHRFbGVtZW50O1xyXG4gICAgICBpZiAoZWxlbSAmJiBlbGVtLmlkID09PSB0aGlzLmpzb25UYWdJZCkge1xyXG4gICAgICAgIHJldHVybiBlbGVtO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICByZXR1cm4gdGhpcy5jcmVhdGVKU09OVGFnKCk7XHJcbiAgfVxyXG5cclxuICAvKiogRGVmaW5lIEpTT04gcGFyYSBTRU8gc29tZW50ZSBxdWFuZG8gbm8gc2Vydmlkb3IgKi9cclxuICBwdWJsaWMgc2V0UGFnZUpzb24oKSB7XHJcbiAgICB0aGlzLmpzb25UYWcgPSB0aGlzLmdldEpTT05UYWcoKTtcclxuXHJcbiAgICBjb25zdCBiYXNlR3JhcGggPSBbdGhpcy5nZXRPcmdKc29uKCksIHRoaXMuZ2V0V2Vic2l0ZUpzb24oKSwgdGhpcy5nZXRXZWJwYWdlSnNvbigpXTtcclxuXHJcbiAgICBjb25zdCBleHRlbmRlZEdyYXBoID0gdGhpcy5jdXN0b21Kc29uVHlwZS5sZW5ndGggPyBbLi4uYmFzZUdyYXBoLCAuLi50aGlzLmN1c3RvbUpzb25UeXBlXSA6IGJhc2VHcmFwaDtcclxuXHJcbiAgICB0aGlzLmN1c3RvbUpzb25UeXBlID0gW107XHJcblxyXG4gICAgY29uc3QganNvbiA9IHtcclxuICAgICAgJ0Bjb250ZXh0JzogJ2h0dHA6Ly9zY2hlbWEub3JnJyxcclxuICAgICAgJ0BncmFwaCc6IGV4dGVuZGVkR3JhcGgsXHJcbiAgICB9O1xyXG5cclxuICAgIHRoaXMuanNvblRhZy5pbm5lckhUTUwgPSBKU09OLnN0cmluZ2lmeShqc29uKTtcclxuXHJcbiAgICByZXR1cm4gdGhpcztcclxuICB9XHJcblxyXG4gIC8qKiBPYnRlbSBKU09OIGRhIE9yZ2FuaXphw6fDo28gKi9cclxuICBwcml2YXRlIGdldE9yZ0pzb24oKSB7XHJcbiAgICBjb25zdCBzaXRldXJsID0gZ2V0U2l0ZVVybCh0aGlzLmxpYkNvbmZpZz8uc2l0ZVVybCwgdGhpcy5saWJDb25maWc/LnNpdGVTdWZpeCk7XHJcbiAgICByZXR1cm4ge1xyXG4gICAgICAnQHR5cGUnOiAnT3JnYW5pemF0aW9uJyxcclxuICAgICAgJ0BpZCc6IGAke3NpdGV1cmx9I29yZ2FuaXphdGlvbmAsXHJcbiAgICAgIG5hbWU6IHRoaXMuZGVmYXVsdFRpdGxlLFxyXG4gICAgICBrZXl3b3JkczogdGhpcy5saWJDb25maWc/LmtleXdvcmRzLFxyXG4gICAgICB1cmw6IGAke3NpdGV1cmx9YCxcclxuICAgICAgc2FtZUFzOiB0aGlzLnNhbWVBcyxcclxuICAgIH07XHJcbiAgfVxyXG5cclxuICAvKiogT2J0ZW0gSlNPTiBkbyBXZWJzaXRlIChwb3J0YWwsIHVuaWRhZGVzLCBldGMpICovXHJcbiAgcHJpdmF0ZSBnZXRXZWJzaXRlSnNvbigpIHtcclxuICAgIGNvbnN0IHVuaWRhZGVQYXRoID0gdGhpcy5nZXRVbmlkYWRlUGF0aCgpO1xyXG4gICAgY29uc3Qgc2l0ZXVybCA9IGdldFNpdGVVcmwodGhpcy5saWJDb25maWc/LnNpdGVVcmwsIHRoaXMubGliQ29uZmlnPy5zaXRlU3VmaXgpO1xyXG4gICAgcmV0dXJuIHtcclxuICAgICAgJ0B0eXBlJzogJ1dlYlNpdGUnLFxyXG4gICAgICAnQGlkJzogYCR7c2l0ZXVybH0ke3VuaWRhZGVQYXRofSN3ZWJzaXRlYCxcclxuICAgICAgdXJsOiBgJHtzaXRldXJsfSR7dW5pZGFkZVBhdGh9YCxcclxuICAgICAgbmFtZTogdGhpcy51bmlkYWRlTmFtZSxcclxuICAgICAga2V5d29yZHM6IHRoaXMubGliQ29uZmlnPy5rZXl3b3JkcyxcclxuICAgIH07XHJcbiAgfVxyXG5cclxuICAvKiogT2J0ZW0gSnNvbiBkYSBww6FnaW5hICovXHJcbiAgcHJpdmF0ZSBnZXRXZWJwYWdlSnNvbigpIHtcclxuICAgIGNvbnN0IHVuaWRhZGVQYXRoID0gdGhpcy5nZXRVbmlkYWRlUGF0aCgpO1xyXG4gICAgY29uc3Qgc2l0ZVVSTCA9IGdldFNpdGVVcmwodGhpcy5saWJDb25maWc/LnNpdGVVcmwsIHRoaXMubGliQ29uZmlnPy5zaXRlU3VmaXgpO1xyXG4gICAgY29uc3QgcGFnZVBhdGggPSBgJHtzaXRlVVJMfSR7dGhpcy5sb2NhdGlvbi5wYXRoKCl9YDtcclxuICAgIGNvbnN0IGRlc2MgPSB0aGlzLmFjdGl2ZURlc2NyaXB0aW9uID8gdGhpcy5hY3RpdmVEZXNjcmlwdGlvbiA6ICcnO1xyXG4gICAgcmV0dXJuIHtcclxuICAgICAgJ0B0eXBlJzogJ1dlYlBhZ2UnLFxyXG4gICAgICAnQGlkJzogYCR7cGFnZVBhdGh9I3dlYnBhZ2VgLFxyXG4gICAgICB1cmw6IHBhZ2VQYXRoLFxyXG4gICAgICBpbkxhbmd1YWdlOiAncHQtQlInLFxyXG4gICAgICBuYW1lOiB0aGlzLmdldFRpdGxlKCksXHJcbiAgICAgIGlzUGFydE9mOiB7ICdAaWQnOiBgJHtzaXRlVVJMfSR7dW5pZGFkZVBhdGh9I3dlYnNpdGVgIH0sXHJcbiAgICAgIGFib3V0OiB7ICdAaWQnOiBgJHtzaXRlVVJMfSNvcmdhbml6YXRpb25gIH0sXHJcbiAgICAgIGRlc2NyaXB0aW9uOiBkZXNjLFxyXG4gICAgfTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgZ2V0VW5pZGFkZVBhdGgoKSB7XHJcbiAgICBsZXQgdW5pZGFkZVBhdGggPSAnJztcclxuICAgIGlmICh0aGlzLnVuaWRhZGUgJiYgdGhpcy51bmlkYWRlUGF0aCkge1xyXG4gICAgICB1bmlkYWRlUGF0aCA9IHRoaXMudW5pZGFkZT8ucGF0aCA9PT0gJy8nID8gJycgOiB0aGlzLnVuaWRhZGVQYXRoPy5zdWJzdHJpbmcoMCwgdGhpcy51bmlkYWRlUGF0aD8ubGVuZ3RoIC0gMSk7XHJcbiAgICB9XHJcbiAgICByZXR1cm4gdW5pZGFkZVBhdGg7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBPYnTDqW0gYSBVUkwgY2Fuw7RuaWNhIGRhIHDDoWdpbmEuXHJcbiAgICogQHJldHVybnMgQSBVUkwgY2Fuw7RuaWNhIGRhIHDDoWdpbmEuXHJcbiAgICovXHJcbiAgcHVibGljIGdldENhbm9uaWNhbEhyZWYoKTogc3RyaW5nIHtcclxuICAgIGlmICghdGhpcy5jYW5vbmljYWxUYWcpIHtcclxuICAgICAgdGhpcy5jYW5vbmljYWxUYWcgPSB0aGlzLmdldENhbm9uaWNhbFRhZygpO1xyXG4gICAgfVxyXG4gICAgcmV0dXJuIHRoaXMuY2Fub25pY2FsVGFnLmhyZWY7XHJcbiAgfVxyXG5cclxuICAvKiogQ3JpYSB0YWcgcGFyYSBsaW5rcyBjYW5vbmljYWxzIG5vIGhlYWQgKi9cclxuICBwcml2YXRlIGNyZWF0ZUNhbm9uaWNhbFRhZygpOiBIVE1MTGlua0VsZW1lbnQge1xyXG4gICAgY29uc3QgdGFnID0gdGhpcy5kb2N1bWVudC5jcmVhdGVFbGVtZW50KCdsaW5rJyk7XHJcbiAgICB0YWcuc2V0QXR0cmlidXRlKCdyZWwnLCAnY2Fub25pY2FsJyk7XHJcbiAgICB0aGlzLmRvY3VtZW50LmhlYWQuYXBwZW5kQ2hpbGQodGFnKTtcclxuICAgIHRhZy5zZXRBdHRyaWJ1dGUoJ2hyZWYnLCB0aGlzLmRvY3VtZW50LlVSTCk7XHJcbiAgICB0aGlzLmNhbm9uaWNhbFRhZyA9IHRhZztcclxuICAgIHJldHVybiB0YWc7XHJcbiAgfVxyXG5cclxuICAvKiogUmV0b3JuYSB0YWcgcGFyYSBsaW5rIGNhbm9uaWNhbCBleGlzdGUgb3UgY3JpYSBzZSBuw6NvIGhvdXZlci4gKi9cclxuICBwcml2YXRlIGdldENhbm9uaWNhbFRhZygpOiBIVE1MTGlua0VsZW1lbnQge1xyXG4gICAgY29uc3QgZWxlbWVudHMgPSB0aGlzLmRvY3VtZW50LmhlYWQuY2hpbGRyZW47XHJcbiAgICBsZXQgaTogbnVtYmVyO1xyXG4gICAgZm9yIChpID0gMDsgaSA8IGVsZW1lbnRzLmxlbmd0aDsgaSsrKSB7XHJcbiAgICAgIGNvbnN0IGVsZW0gPSBlbGVtZW50c1tpXSBhcyBIVE1MTGlua0VsZW1lbnQ7XHJcbiAgICAgIGlmIChlbGVtICYmIGVsZW0udGFnTmFtZSA9PT0gJ0xJTksnICYmIGVsZW0ucmVsID09PSAnY2Fub25pY2FsJykge1xyXG4gICAgICAgIHJldHVybiBlbGVtO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICByZXR1cm4gdGhpcy5jcmVhdGVDYW5vbmljYWxUYWcoKTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIERlZmluZSBsaW5rIGNhbm9uaWNhbCBkYSBww6FnaW5hXHJcbiAgICogQHBhcmFtIHVybCB1cmwgY2Fub25pY2FsXHJcbiAgICovXHJcbiAgcHVibGljIHNldENhbm9uaWNhbEhyZWYodXJsPzogc3RyaW5nKSB7XHJcbiAgICBpZiAoIXRoaXMuY2Fub25pY2FsVGFnKSB7XHJcbiAgICAgIHRoaXMuY2Fub25pY2FsVGFnID0gdGhpcy5nZXRDYW5vbmljYWxUYWcoKTtcclxuICAgIH1cclxuXHJcbiAgICBsZXQgcGF0aCA9IHRoaXMuZG9jdW1lbnQubG9jYXRpb24ucGF0aG5hbWU7XHJcblxyXG4gICAgaWYgKHRoaXMubGliQ29uZmlnPy5zaXRlU3VmaXggJiYgcGF0aC5pbmNsdWRlcyh0aGlzLmxpYkNvbmZpZz8uc2l0ZVN1Zml4KSkge1xyXG4gICAgICBwYXRoID0gcGF0aC5yZXBsYWNlKHRoaXMubGliQ29uZmlnPy5zaXRlU3VmaXgsICcnKTtcclxuICAgIH1cclxuXHJcbiAgICBpZiAoIXBhdGguc3RhcnRzV2l0aCgnLycpKSB7XHJcbiAgICAgIHBhdGggPSBgLyR7cGF0aH1gO1xyXG4gICAgfVxyXG5cclxuICAgIGNvbnN0IGNhbm9uaWNhbFVybCA9IHVybCAmJiB0aGlzLmlzQ3VzdG9tQ2Fub25pY2FsKHVybCkgPyB1cmwgOiBgJHtnZXRTaXRlVXJsKHRoaXMubGliQ29uZmlnPy5zaXRlVXJsLCB0aGlzLmxpYkNvbmZpZz8uc2l0ZVN1Zml4KX0ke3BhdGh9YDtcclxuXHJcbiAgICB0aGlzLmNhbm9uaWNhbFRhZy5zZXRBdHRyaWJ1dGUoJ2hyZWYnLCBjYW5vbmljYWxVcmwpO1xyXG4gICAgcmV0dXJuIHRoaXM7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBWZXJpZmljYSBzZSBhIFVSTCBmb3JuZWNpZGEgw6kgdW0gbGluayBjYW5vbmljYWwgcGVyc29uYWxpemFkb1xyXG4gICAqIEBwYXJhbSB1cmwgVVJMIGZvcm5lY2lkYVxyXG4gICAqL1xyXG4gIHB1YmxpYyBpc0N1c3RvbUNhbm9uaWNhbCh1cmw6IHN0cmluZyk6IGJvb2xlYW4ge1xyXG4gICAgY29uc3Qgc2l0ZXVybCA9IGdldFNpdGVVcmwodGhpcy5saWJDb25maWc/LnNpdGVVcmwsIHRoaXMubGliQ29uZmlnPy5zaXRlU3VmaXgpO1xyXG4gICAgcmV0dXJuIHVybC5zdGFydHNXaXRoKHNpdGV1cmwpO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogT2J0w6ltIHVtYSB1cmwgdsOhbGlkYSBuYSBhcGxpY2HDp8OjbyBwcm92ZW5pZW50ZSBkZSB1bWEgVVJMIGdlcmFkYVxyXG4gICAqIHBlbG8gcGx1Z2luIFlvYXN0IHBhcmEgY2Fub25pY2FsIGF1dG9tw6F0aWNvLlxyXG4gICAqIEV4LjogaHR0cHM6Ly93cC5yZWRlZG9yc2FvbHVpei5jb20uYnIvYnJhc2lsL2VzcGVjaWFsaWRhZGVzL2NhcmRpb2xvZ2lhL1xyXG4gICAqIEBwYXJhbSB1cmxGcm9tV3BBcGkgVVJMIGNhbm9uaWNhIGdlcmFkYSBwZWxvIFlvYXN0IFBsdWdpbi5cclxuICAgKi9cclxuICB0b0xvY2FsQ2Fub25pY2FsKHVybEZyb21XcEFwaTogc3RyaW5nKTogc3RyaW5nIHtcclxuICAgIGNvbnN0IGFwaVVybCA9IHRoaXMubGliQ29uZmlnPy53cFVybCA/PyAnJztcclxuICAgIGNvbnN0IHNpdGV1cmwgPSBnZXRTaXRlVXJsKHRoaXMubGliQ29uZmlnPy5zaXRlVXJsLCB0aGlzLmxpYkNvbmZpZz8uc2l0ZVN1Zml4KTtcclxuICAgIGNvbnN0IHVuaWRhZGVTbHVnID0gdGhpcy51bmlkYWRlU2x1ZztcclxuICAgIGxldCBjb252ZXJ0ZWQgPSB1cmxGcm9tV3BBcGkucmVwbGFjZShhcGlVcmwsIHNpdGV1cmwpO1xyXG4gICAgaWYgKHVuaWRhZGVTbHVnICE9PSAnLycgJiYgY29udmVydGVkLmluY2x1ZGVzKGAvJHt1bmlkYWRlU2x1Z30vYCkpIHtcclxuICAgICAgY29udmVydGVkID0gY29udmVydGVkLnJlcGxhY2UoYC8ke3VuaWRhZGVTbHVnfS9gLCBgJHt0aGlzLnVuaWRhZGVQYXRofWApO1xyXG4gICAgfVxyXG4gICAgcmV0dXJuIGNvbnZlcnRlZDtcclxuICB9XHJcblxyXG4gIGdldFBvc3RDb250ZW50KHBvc3Q6IFdwUG9zdCk6IHN0cmluZyB7XHJcbiAgICBjb25zdCBjb250ZW50ID0gcG9zdC5hY2ZbJ3Jkc2xfcG9zdF9jb250ZW50J10gPyBwb3N0LmFjZi5yZHNsX3Bvc3RfY29udGVudC5maW5kKChjb250ZW50OiBhbnkpID0+IGNvbnRlbnQuYWNmX2ZjX2xheW91dCA9PT0gJ3RleHRfaHRtbCcpIDogbnVsbDtcclxuICAgIHJldHVybiBjb250ZW50Py5jb250ZW50IHx8IHBvc3QuY29udGVudC5yZW5kZXJlZCB8fCAnJztcclxuICB9XHJcblxyXG4gIGFkZEFydGljbGVTY3JpcHQocG9zdDogV3BQb3N0LCBzY3JpcHROYW1lOiBzdHJpbmcpOiB2b2lkIHtcclxuICAgIGNvbnN0IHBvc3RDb250ZW50ID0gdGhpcy5nZXRQb3N0Q29udGVudChwb3N0KTtcclxuICAgIGNvbnN0IHBvc3RIZWFkZXJJbWFnZSA9IHBvc3QuYWNmWydyZHNsX3Bvc3RfaGVhZGVyX2ltZyddXHJcbiAgICAgID8ge1xyXG4gICAgICAgICAgdXJsOiBwb3N0LmFjZlsncmRzbF9wb3N0X2hlYWRlcl9pbWcnXS51cmwsXHJcbiAgICAgICAgICB3aWR0aDogcG9zdC5hY2ZbJ3Jkc2xfcG9zdF9oZWFkZXJfaW1nJ10ud2lkdGgsXHJcbiAgICAgICAgICBoZWlnaHQ6IHBvc3QuYWNmWydyZHNsX3Bvc3RfaGVhZGVyX2ltZyddLmhlaWdodCxcclxuICAgICAgICB9XHJcbiAgICAgIDogbnVsbDtcclxuXHJcbiAgICBjb25zdCBzdHJ1Y3R1cmVkRGF0YSA9IHtcclxuICAgICAgJ0Bjb250ZXh0JzogJ2h0dHBzOi8vc2NoZW1hLm9yZycsXHJcbiAgICAgICdAdHlwZSc6ICdBcnRpY2xlJyxcclxuICAgICAgbWFpbkVudGl0eU9mUGFnZTogYCR7Z2V0U2l0ZVVybCh0aGlzLmxpYkNvbmZpZz8uc2l0ZVVybCwgdGhpcy5saWJDb25maWc/LnNpdGVTdWZpeCl9JHt0aGlzLmxvY2F0aW9uLnBhdGgoKX1gLFxyXG4gICAgICBoZWFkbGluZTogcG9zdC50aXRsZT8ucmVuZGVyZWQsXHJcbiAgICAgIGRhdGVQdWJsaXNoZWQ6IHBvc3QuZGF0ZV9nbXQsXHJcbiAgICAgIHB1Ymxpc2hlcjoge1xyXG4gICAgICAgICdAdHlwZSc6ICdPcmdhbml6YXRpb24nLFxyXG4gICAgICAgIG5hbWU6ICdSZWRlIETigJlPcicsXHJcbiAgICAgIH0sXHJcbiAgICAgIGRlc2NyaXB0aW9uOiBwb3N0LnRpdGxlPy5yZW5kZXJlZCxcclxuICAgICAgYXJ0aWNsZUJvZHk6IHJlbW92ZUh0bWxUYWdzKGhlLmRlY29kZShwb3N0Q29udGVudCkpLFxyXG4gICAgICBkYXRlTW9kaWZpZWQ6IHBvc3QubW9kaWZpZWRfZ210LFxyXG4gICAgICBpbWFnZToge1xyXG4gICAgICAgICdAdHlwZSc6ICdJbWFnZU9iamVjdCcsXHJcbiAgICAgICAgdXJsOiBwb3N0SGVhZGVySW1hZ2U/LnVybCB8fCBwb3N0LmZlYXR1cmVkX21lZGlhX3BhdGggfHwgJycsXHJcbiAgICAgICAgaGVpZ2h0OiBwb3N0SGVhZGVySW1hZ2U/LmhlaWdodCB8fCAnJyxcclxuICAgICAgICB3aWR0aDogcG9zdEhlYWRlckltYWdlPy53aWR0aCB8fCAnJyxcclxuICAgICAgfSxcclxuICAgICAgYXV0aG9yOiB7XHJcbiAgICAgICAgJ0B0eXBlJzogJ09yZ2FuaXphdGlvbicsXHJcbiAgICAgICAgbmFtZTogJ1JlZGUgROKAmU9yJyxcclxuICAgICAgfSxcclxuICAgICAgd29yZGNvdW50OiBwb3N0Q29udGVudC5zcGxpdCgnICcpLmxlbmd0aCxcclxuICAgIH07XHJcblxyXG4gICAgY29uc3Qgc2NyaXB0ID0gdGhpcy5kb2N1bWVudC5jcmVhdGVFbGVtZW50KCdzY3JpcHQnKTtcclxuXHJcbiAgICBzY3JpcHQudHlwZSA9ICdhcHBsaWNhdGlvbi9sZCtqc29uJztcclxuICAgIHNjcmlwdC5pZCA9IHNjcmlwdE5hbWU7XHJcbiAgICBzY3JpcHQuaW5uZXJIVE1MID0gSlNPTi5zdHJpbmdpZnkoc3RydWN0dXJlZERhdGEpO1xyXG5cclxuICAgIHRoaXMuZG9jdW1lbnQuaGVhZC5hcHBlbmRDaGlsZChzY3JpcHQpO1xyXG4gIH1cclxuXHJcbiAgcmVtb3ZlQXJ0aWNsZVNjcmlwdChzY3JpcHROYW1lOiBzdHJpbmcpOiB2b2lkIHtcclxuICAgIGNvbnN0IHNjcmlwdCA9IHRoaXMuZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoc2NyaXB0TmFtZSk7XHJcbiAgICBzY3JpcHQ/LnJlbW92ZSgpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIHNldFVuaWRhZGUoeyB1bmlkYWRlID0gbnVsbCwgdW5pZGFkZU5hbWUgPSAnJywgdW5pZGFkZVBhdGggPSAnJywgdW5pZGFkZVNsdWcgPSAnJyB9OiBTZW9VbmlkYWRlKSB7XHJcbiAgICB0aGlzLnVuaWRhZGUgPSB1bmlkYWRlO1xyXG4gICAgdGhpcy51bmlkYWRlTmFtZSA9IHVuaWRhZGVOYW1lO1xyXG4gICAgdGhpcy51bmlkYWRlUGF0aCA9IHVuaWRhZGVQYXRoO1xyXG4gICAgdGhpcy51bmlkYWRlU2x1ZyA9IHVuaWRhZGVTbHVnO1xyXG4gIH1cclxufVxyXG4iXX0=
489
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VvLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zaXRlLWZyb250LWVuZC1saWIvc3JjL2xpYi9zZXJ2aWNlcy9zZW8vc2VvLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFbkQsT0FBTyxFQUFFLFFBQVEsRUFBWSxNQUFNLGlCQUFpQixDQUFDO0FBRXJELE9BQU8sS0FBSyxFQUFFLE1BQU0sSUFBSSxDQUFDO0FBUXpCLE9BQU8sRUFBRSxVQUFVLEVBQUUsY0FBYyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNELE9BQU8sRUFBRSxVQUFVLEVBQWEsTUFBTSx3QkFBd0IsQ0FBQzs7OztBQUsvRCxNQUFNLE9BQU8sVUFBVTtJQXlCckIsWUFDVSxLQUFZLEVBQ1osSUFBVSxFQUNWLFFBQWtCLEVBQ0UsU0FBb0IsRUFDdEIsUUFBa0I7UUFKcEMsVUFBSyxHQUFMLEtBQUssQ0FBTztRQUNaLFNBQUksR0FBSixJQUFJLENBQU07UUFDVixhQUFRLEdBQVIsUUFBUSxDQUFVO1FBQ0UsY0FBUyxHQUFULFNBQVMsQ0FBVztRQUN0QixhQUFRLEdBQVIsUUFBUSxDQUFVO1FBN0J2QyxjQUFTLEdBQUcsS0FBSyxDQUFDO1FBQ2xCLGlCQUFZLEdBQUcsV0FBVyxDQUFDO1FBRTNCLFdBQU0sR0FBRztZQUNkLG1DQUFtQztZQUNuQyw0Q0FBNEM7WUFDNUMsa0RBQWtEO1lBQ2xELDZCQUE2QjtTQUM5QixDQUFDO1FBQ0ssZ0JBQVcsR0FBRyxVQUFVLENBQUM7UUFJeEIsY0FBUyxHQUFHLFNBQVMsQ0FBQztRQUV0Qix5QkFBb0IsR0FBRyxpQkFBaUIsQ0FBQztRQUUxQyxZQUFPLEdBQVEsSUFBSSxDQUFDO1FBQ3BCLGdCQUFXLEdBQVcsRUFBRSxDQUFDO1FBQ3pCLGdCQUFXLEdBQVcsRUFBRSxDQUFD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LENBQUMsQ0FBQztJQUN6QyxDQUFDO0lBRUQsbUJBQW1CLENBQUMsVUFBa0I7UUFDcEMsTUFBTSxNQUFNLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxjQUFjLENBQUMsVUFBVSxDQUFDLENBQUM7UUFDeEQsTUFBTSxFQUFFLE1BQU0sRUFBRSxDQUFDO0lBQ25CLENBQUM7SUFFTSxVQUFVLENBQUMsRUFBRSxPQUFPLEdBQUcsSUFBSSxFQUFFLFdBQVcsR0FBRyxFQUFFLEVBQUUsV0FBVyxHQUFHLEVBQUUsRUFBRSxXQUFXLEdBQUcsRUFBRSxFQUFjO1FBQ3BHLElBQUksQ0FBQyxPQUFPLEdBQUcsT0FBTyxDQUFDO1FBQ3ZCLElBQUksQ0FBQyxXQUFXLEdBQUcsV0FBVyxDQUFDO1FBQy9CLElBQUksQ0FBQyxXQUFXLEdBQUcsV0FBVyxDQUFDO1FBQy9CLElBQUksQ0FBQyxXQUFXLEdBQUcsV0FBVyxDQUFDO0lBQ2pDLENBQUM7K0dBdGdCVSxVQUFVLG1GQTZCWCxVQUFVLGFBQ1YsUUFBUTttSEE5QlAsVUFBVSxjQUZULE1BQU07OzRGQUVQLFVBQVU7a0JBSHRCLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25COzswQkE4QkksTUFBTTsyQkFBQyxVQUFVOzswQkFDakIsTUFBTTsyQkFBQyxRQUFRIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0LCBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBNZXRhLCBUaXRsZSB9IGZyb20gJ0Bhbmd1bGFyL3BsYXRmb3JtLWJyb3dzZXInO1xuaW1wb3J0IHsgRE9DVU1FTlQsIExvY2F0aW9uIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcblxuaW1wb3J0ICogYXMgaGUgZnJvbSAnaGUnO1xuXG5pbXBvcnQgeyBTb2NpYWxNZXRhUHJvcGVydGllcyB9IGZyb20gJy4uLy4uL21vZGVscy9zb2NpYWwtbWV0YS1wcm9wZXJ0aWVzLm1vZGVsJztcbmltcG9ydCB7IEJyZWFkY3J1bWJzSXRlbXMgfSBmcm9tICcuLi8uLi9tb2RlbHMvYnJlYWRjcnVtYnMvYnJlYWRjcnVtYnMtaXRlbXMubW9kZWwnO1xuaW1wb3J0IHsgQnJlYWRjcnVtYnNKc29uSXRlbSB9IGZyb20gJy4uLy4uL21vZGVscy9icmVhZGNydW1icy9icmVhZGNydW1icy1qc29uLWl0ZW0ubW9kZWwnO1xuaW1wb3J0IHsgU2VvRGF0YSB9IGZyb20gJy4uLy4uL21vZGVscy9zZW8vc2VvLWRhdGEubW9kZWwnO1xuaW1wb3J0IHsgU2VvVW5pZGFkZSB9IGZyb20gJy4uLy4uL21vZGVscy9zZW8vc2VvLXVuaWRhZGUubW9kZWwnO1xuaW1wb3J0IHsgV3BQb3N0IH0gZnJvbSAnLi4vLi4vbW9kZWxzL3dvcmRwcmVzcy9wb3N0L3Bvc3QubW9kZWwnO1xuaW1wb3J0IHsgZ2V0U2l0ZVVybCwgcmVtb3ZlSHRtbFRhZ3MgfSBmcm9tICcuLi8uLi9oZWxwZXJzJztcbmltcG9ydCB7IExJQl9DT05GSUcsIExpYkNvbmZpZyB9IGZyb20gJy4uLy4uL3Rva2Vucy9MaWJDb25maWcnO1xuXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290Jyxcbn0pXG5leHBvcnQgY2xhc3MgU2VvU2VydmljZSB7XG4gIHB1YmxpYyBzZXBhcmF0b3IgPSAnIC0gJztcbiAgcHVibGljIGRlZmF1bHRUaXRsZSA9ICdSZWRlIETigJlPcic7XG4gIHB1YmxpYyBhY3RpdmVEZXNjcmlwdGlvbiE6IHN0cmluZztcbiAgcHVibGljIHNhbWVBcyA9IFtcbiAgICAnaHR0cHM6Ly93d3cuZmFjZWJvb2suY29tL3JlZGVkb3IvJyxcbiAgICAnaHR0cHM6Ly93d3cuaW5zdGFncmFtLmNvbS9yZWRlZG9yX29maWNpYWwvJyxcbiAgICAnaHR0cHM6Ly93d3cubGlua2VkaW4uY29tL2NvbXBhbnkvcmVkZWRvci1zYW9sdWl6JyxcbiAgICAnaHR0cHM6Ly90d2l0dGVyLmNvbS9yZWRlZG9yJyxcbiAgXTtcbiAgcHVibGljIHR3aXR0ZXJVc2VyID0gJ0ByZWRlZG9yJztcblxuICBwcml2YXRlIGNhbm9uaWNhbFRhZyE6IEhUTUxMaW5rRWxlbWVudDtcbiAgcHJpdmF0ZSBqc29uVGFnITogSFRNTFNjcmlwdEVsZW1lbnQ7XG4gIHByaXZhdGUganNvblRhZ0lkID0gJ3Nlb0pTT04nO1xuICBwcml2YXRlIGJyZWFkY3J1bWJzSnNvblRhZyE6IEhUTUxTY3JpcHRFbGVtZW50O1xuICBwcml2YXRlIGJyZWFkY3J1bWJzSnNvblRhZ0lkID0gJ2JyZWFkY3J1bWJzSlNPTic7XG5cbiAgcHVibGljIHVuaWRhZGU6IGFueSA9IG51bGw7XG4gIHB1YmxpYyB1bmlkYWRlTmFtZTogc3RyaW5nID0gJyc7XG4gIHB1YmxpYyB1bmlkYWRlUGF0aDogc3RyaW5nID0gJyc7XG4gIHB1YmxpYyB1bmlkYWRlU2x1Zzogc3RyaW5nID0gJyc7XG5cbiAgcHVibGljIGN1c3RvbUpzb25UeXBlOiBhbnlbXSA9IFtdO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgdGl0bGU6IFRpdGxlLFxuICAgIHByaXZhdGUgbWV0YTogTWV0YSxcbiAgICBwcml2YXRlIGxvY2F0aW9uOiBMb2NhdGlvbixcbiAgICBASW5qZWN0KExJQl9DT05GSUcpIHByaXZhdGUgbGliQ29uZmlnOiBMaWJDb25maWcsXG4gICAgQEluamVjdChET0NVTUVOVCkgcHJpdmF0ZSBkb2N1bWVudDogRG9jdW1lbnQsXG4gICkge31cblxuICBwdWJsaWMgc2V0RnVsbFNlbyhkYXRhOiBTZW9EYXRhKSB7XG4gICAgdGhpcy5zZXRUaXRsZShkYXRhLnRpdGxlLnRleHQsICEhZGF0YS50aXRsZS5zdWIpO1xuICAgIHRoaXMuc2V0RGVzY3JpcHRpb24oZGF0YS5kZXNjcmlwdGlvbik7XG4gICAgdGhpcy5zZXRDYW5vbmljYWxIcmVmKGRhdGEuY2Fub25pY2FsKTtcbiAgICB0aGlzLnNldFBhZ2VKc29uKCk7XG4gICAgdGhpcy5zZXRTb2NpYWxUYWdzKGRhdGEuc29jaWFsVGFncyk7XG4gIH1cblxuICAvKipcbiAgICogRGVmaW5lIHRhZyBkZXNjcmlwdGlvbiBkYSBww6FnaW5hXG4gICAqIEBwYXJhbSBjb250ZW50IGNvbnRlw7pkbyBkYSBkZXNjcmnDp8OjbyA8c3RyaW5nPlxuICAgKi9cbiAgcHVibGljIHNldERlc2NyaXB0aW9uKGNvbnRlbnQ6IHN0cmluZyk6IFNlb1NlcnZpY2Uge1xuICAgIGNvbnN0IGRlc2NUYWcgPSB0aGlzLm1ldGEuZ2V0VGFnKFwibmFtZT0nZGVzY3JpcHRpb24nXCIpO1xuICAgIGlmIChjb250ZW50KSB7XG4gICAgICBjb250ZW50ID0gaGUuZGVjb2RlKGNvbnRlbnQpO1xuICAgICAgY29udGVudCA9IHJlbW92ZUh0bWxUYWdzKGNvbnRlbnQpO1xuICAgIH0gZWxzZSB7XG4gICAgICBjb250ZW50ID0gJyc7XG4gICAgfVxuICAgIHRoaXMuYWN0aXZlRGVzY3JpcHRpb24gPSBjb250ZW50O1xuICAgIGNvbnN0IHRhZ0NvbnRlbnQgPSB7IG5hbWU6ICdkZXNjcmlwdGlvbicsIGNvbnRlbnQgfTtcbiAgICBpZiAoZGVzY1RhZykge1xuICAgICAgdGhpcy5tZXRhLnVwZGF0ZVRhZyh0YWdDb250ZW50KTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5tZXRhLmFkZFRhZyh0YWdDb250ZW50KTtcbiAgICB9XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICAvKipcbiAgICogRGVmaW5lIG1ldGEgdGFncyBwYXJhIGEgcMOhZ2luYVxuICAgKiBAcGFyYW0gdGFnIG5vbWUgZGEgdGFnIG1ldGFcbiAgICogQHBhcmFtIGNvbnRlbnQgY29udGXDumRvIGRhIHRhZyBtZXRhXG4gICAqIEBwYXJhbSB0eXBlIHRpcG8gZGUgdGFnIG1ldGFcbiAgICovXG4gIHB1YmxpYyBzZXRNZXRhVGFnKHRhZzogc3RyaW5nLCBjb250ZW50OiBzdHJpbmcsIHR5cGUgPSAnbmFtZScpIHtcbiAgICBjb25zdCBtZXRhdGFnID0gdGhpcy5tZXRhLmdldFRhZyhgJHt0eXBlfT0nJHt0YWd9J2ApO1xuICAgIGNvbnRlbnQgPSBoZS5kZWNvZGUoY29udGVudCk7XG4gICAgY29udGVudCA9IHJlbW92ZUh0bWxUYWdzKGNvbnRlbnQpO1xuICAgIGNvbnN0IHRhZ0NvbnRlbnQgPSB7XG4gICAgICBbdHlwZV06IHRhZyxcbiAgICAgIGNvbnRlbnQsXG4gICAgfTtcbiAgICBpZiAoIW1ldGF0YWcpIHtcbiAgICAgIHRoaXMubWV0YS5hZGRUYWcodGFnQ29udGVudCk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMubWV0YS51cGRhdGVUYWcodGFnQ29udGVudCk7XG4gICAgfVxuICAgIHJldHVybiB0aGlzO1xuICB9XG5cbiAgLyoqXG4gICAqIFJlbW92ZSBtZXRhIHRhZ3MgZGEgcMOhZ2luYVxuICAgKiBAcGFyYW0gdGFnIG5vbWUgZGEgdGFnIG1ldGFcbiAgICogQHBhcmFtIGNvbnRlbnQgY29udGXDumRvIGRhIHRhZyBtZXRhXG4gICAqIEBwYXJhbSBhdHRyIGF0cmlidXRvIGRhIHRhZyBtZXRhXG4gICAqIEBwYXJhbSB0eXBlIHRpcG8gZGUgdGFnIG1ldGFcbiAgICovXG4gIHB1YmxpYyByZW1vdmVUYWcodGFnOiBzdHJpbmcsIGNvbnRlbnQ6IHN0cmluZywgYXR0cjogc3RyaW5nLCB0eXBlID0gJ25hbWUnKSB7XG4gICAgY29uc3QgbWV0YXRhZyA9IHRoaXMubWV0YS5nZXRUYWcoYCR7dHlwZX09JyR7dGFnfSdgKTtcbiAgICBpZiAobWV0YXRhZykge1xuICAgICAgdGhpcy5tZXRhLnJlbW92ZVRhZyhgJHthdHRyfT0ke2NvbnRlbnR9YCk7XG4gICAgfVxuICAgIHJldHVybiB0aGlzO1xuICB9XG5cbiAgLyoqXG4gICAqIERlZmluZSBtZXRhIHRhZ3MgcGFyYSBGYWNlYm9va1xuICAgKiBAcGFyYW0gdGl0bGUgdMOtdHVsbyBwYXJhIG8gZmFjZWJvb2tcbiAgICogQHBhcmFtIGRlc2NyaXB0aW9uIGRlc2NyacOnw6NvIHBhcmEgbyBmYWNlYm9va1xuICAgKiBAcGFyYW0gdXJsIHVybCBwYXJhIGRlZmluacOnw6NvIGRvIGZhY2Vib29rXG4gICAqIEBwYXJhbSBpbWcgaW1hZ2VtIHBhcmEgZGVmaW5pw6fDo28gbm8gZmFjZWJvb2tcbiAgICovXG4gIHB1YmxpYyBzZXRNZXRhRmFjZWJvb2sodGl0bGU6IHN0cmluZywgZGVzY3JpcHRpb246IHN0cmluZywgdXJsOiBzdHJpbmcsIGltZzogc3RyaW5nIHwgbnVsbCA9IG51bGwpIHtcbiAgICB0aGlzLnNldE1ldGFUYWcoJ29nOnVybCcsIHVybCwgJ3Byb3BlcnR5Jyk7XG4gICAgdGhpcy5zZXRNZXRhVGFnKCdvZzp0aXRsZScsIHRpdGxlLCAncHJvcGVydHknKTtcbiAgICB0aGlzLnNldE1ldGFUYWcoJ29nOmRlc2NyaXB0aW9uJywgZGVzY3JpcHRpb24sICdwcm9wZXJ0eScpO1xuICAgIHRoaXMuc2V0TWV0YVRhZygnb2c6dHlwZScsICd3ZWJzaXRlJywgJ3Byb3BlcnR5Jyk7XG4gICAgdGhpcy5zZXRNZXRhVGFnKCdvZzppbWFnZScsIGltZyA/PyAnJywgJ3Byb3BlcnR5Jyk7XG4gIH1cblxuICAvKipcbiAgICogRGVmaW5lIG1ldGEgdGFncyBwYXJhIFR3aXR0ZXJcbiAgICogQHBhcmFtIHRpdGxlIHTDrXR1bG8gcGFyYSBvIHR3aXR0ZXJcbiAgICogQHBhcmFtIGRlc2NyaXB0aW9uIGRlc2NyacOnw6NvIHBhcmEgbyB0d2l0dGVyXG4gICAqIEBwYXJhbSB1cmwgdXJsIHBhcmEgbyB0d2l0dGVyXG4gICAqIEBwYXJhbSBpbWcgaW1hZ2VtIHBhcmEgZGVmaW5pw6fDo28gbm8gdHdpdHRlclxuICAgKi9cbiAgcHVibGljIHNldE1ldGFUd2l0dGVyKHRpdGxlOiBzdHJpbmcsIGRlc2NyaXB0aW9uOiBzdHJpbmcsIHVybDogc3RyaW5nLCBpbWc6IHN0cmluZyB8IG51bGwgPSBudWxsKSB7XG4gICAgdGhpcy5zZXRNZXRhVGFnKCd0d2l0dGVyOnNpdGUnLCB1cmwsICduYW1lJyk7XG4gICAgdGhpcy5zZXRNZXRhVGFnKCd0d2l0dGVyOnRpdGxlJywgdGl0bGUsICduYW1lJyk7XG4gICAgdGhpcy5zZXRNZXRhVGFnKCd0d2l0dGVyOmRlc2NyaXB0aW9uJywgZGVzY3JpcHRpb24sICduYW1lJyk7XG4gICAgdGhpcy5zZXRNZXRhVGFnKCd0d2l0dGVyOmltYWdlJywgaW1nID8/ICcnLCAnbmFtZScpO1xuICB9XG5cbiAgLyoqXG4gICAqIERlZmluZSB0YWdzIGRlIHJlZGVzIHNvY2lhaXMgKFR3aXR0ZXIgZSBPcGVuIEdyYXBoKVxuICAgKiBAcGFyYW0gcHJvcGVydGllc1xuICAgKi9cbiAgc2V0U29jaWFsVGFncyhwcm9wZXJ0aWVzPzogU29jaWFsTWV0YVByb3BlcnRpZXMpIHtcbiAgICBjb25zdCBwYWdlUGF0aCA9IHRoaXMubG9jYXRpb24ucGF0aCgpO1xuICAgIGNvbnN0IHNpdGV1cmwgPSBnZXRTaXRlVXJsKHRoaXMubGliQ29uZmlnPy5zaXRlVXJsLCB0aGlzLmxpYkNvbmZpZz8uc2l0ZVN1Zml4KTtcbiAgICBsZXQgZGVmYXVsdFByb3BlcnRpZXM6IFNvY2lhbE1ldGFQcm9wZXJ0aWVzID0ge1xuICAgICAgdHdpdHRlckNhcmQ6ICdzdW1tYXJ5JyxcbiAgICAgIHR3aXR0ZXJTaXRlOiB0aGlzLnR3aXR0ZXJVc2VyLFxuICAgICAgdHlwZTogJ3dlYnNpdGUnLFxuICAgICAgdGl0bGU6IHRoaXMuZ2V0VGl0bGUoKSxcbiAgICAgIGRlc2NyaXB0aW9uOiB0aGlzLmFjdGl2ZURlc2NyaXB0aW9uIHx8ICcnLFxuICAgICAgdXJsOiBgJHtzaXRldXJsfSR7cGFnZVBhdGh9YCxcbiAgICAgIGltYWdlOiB0aGlzLmxpYkNvbmZpZz8ubG9nb1BhdGggPyBgJHtzaXRldXJsfSR7dGhpcy5saWJDb25maWcubG9nb1BhdGh9YCA6ICdodHRwczovL3d3dy5yZWRlZG9yc2FvbHVpei5jb20uYnIvYXNzZXRzL2ltZ3MvbG9nby1yZWRlZG9yLWJsdWUucG5nJyxcbiAgICB9O1xuICAgIGlmIChwcm9wZXJ0aWVzKSB7XG4gICAgICBkZWZhdWx0UHJvcGVydGllcyA9IHsgLi4uZGVmYXVsdFByb3BlcnRpZXMsIC4uLnByb3BlcnRpZXMgfTtcbiAgICB9XG4gICAgdGhpcy5zZXRNZXRhVGFnKCd0d2l0dGVyOmNhcmQnLCBkZWZhdWx0UHJvcGVydGllcy50d2l0dGVyQ2FyZCB8fCAnJywgJ25hbWUnKVxuICAgICAgLnNldE1ldGFUYWcoJ3R3aXR0ZXI6c2l0ZScsIGRlZmF1bHRQcm9wZXJ0aWVzLnR3aXR0ZXJTaXRlIHx8ICcnLCAnbmFtZScpXG4gICAgICAuc2V0TWV0YVRhZygnb2c6dHlwZScsIGRlZmF1bHRQcm9wZXJ0aWVzLnR5cGUgfHwgJycsICdwcm9wZXJ0eScpXG4gICAgICAuc2V0TWV0YVRhZygnb2c6dGl0bGUnLCBkZWZhdWx0UHJvcGVydGllcy50aXRsZSB8fCAnJywgJ3Byb3BlcnR5JylcbiAgICAgIC5zZXRNZXRhVGFnKCdvZzpkZXNjcmlwdGlvbicsIGRlZmF1bHRQcm9wZXJ0aWVzLmRlc2NyaXB0aW9uIHx8ICcnLCAncHJvcGVydHknKVxuICAgICAgLnNldE1ldGFUYWcoJ29nOnVybCcsIGRlZmF1bHRQcm9wZXJ0aWVzLnVybCB8fCAnJywgJ3Byb3BlcnR5JylcbiAgICAgIC5zZXRNZXRhVGFnKCdvZzppbWFnZScsIGRlZmF1bHRQcm9wZXJ0aWVzLmltYWdlIHx8ICcnLCAncHJvcGVydHknKTtcblxuICAgIHJldHVybiB0aGlzO1xuICB9XG5cbiAgLyoqXG4gICAqIERlZmluZSB0w610dWxvIGRhIHDDoWdpbmFcbiAgICogQHBhcmFtIHRpdGxlIHTDrXR1bG8gZGEgcMOhZ2luYSA8c3RyaW5nPlxuICAgKiBAcGFyYW0gc3ViIFNlIMOpIHN1YnNpdGUgYWNyZXNjZW50YSB1bmlkYWRlIDxib29sZWFuPlxuICAgKi9cbiAgcHVibGljIHNldFRpdGxlKHRpdGxlOiBzdHJpbmcsIHN1YiA9IGZhbHNlKSB7XG4gICAgaWYgKHRpdGxlICYmIHRpdGxlICE9PSAnJykge1xuICAgICAgdGl0bGUgPSBoZS5kZWNvZGUodGl0bGUpO1xuICAgICAgdGl0bGUgPSByZW1vdmVIdG1sVGFncyh0aXRsZSk7XG4gICAgICBpZiAoc3ViKSB7XG4gICAgICAgIHRpdGxlID0gaGUuZGVjb2RlKGAke3RpdGxlfSR7dGhpcy5zZXBhcmF0b3J9JHt0aGlzLnVuaWRhZGVOYW1lfWApO1xuICAgICAgfVxuICAgICAgdGhpcy50aXRsZS5zZXRUaXRsZSh0aXRsZSk7XG4gICAgfVxuICAgIHJldHVybiB0aGlzO1xuICB9XG5cbiAgLyoqIE9idGVtIHTDrXR1bG8gYXR1YWwgZGEgcMOhZ2luYSAqL1xuICBwdWJsaWMgZ2V0VGl0bGUoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy50aXRsZS5nZXRUaXRsZSgpO1xuICB9XG5cbiAgcHVibGljIHNldDQwNFRpdGxlKGNvbXBvbmVudDogc3RyaW5nID0gJ0RlZmF1bHQgQ29tcG9uZW50Jykge1xuICAgIGlmIChjb21wb25lbnQgJiYgY29tcG9uZW50ICE9PSAnJykge1xuICAgICAgY29tcG9uZW50ID0gaGUuZGVjb2RlKGNvbXBvbmVudCk7XG4gICAgICBjb21wb25lbnQgPSByZW1vdmVIdG1sVGFncyhjb21wb25lbnQpO1xuICAgICAgaWYgKHRoaXMudW5pZGFkZU5hbWUpIHtcbiAgICAgICAgY29tcG9uZW50ID0gaGUuZGVjb2RlKGAke2NvbXBvbmVudH0ke3RoaXMuc2VwYXJhdG9yfSR7dGhpcy51bmlkYWRlTmFtZX1gKTtcbiAgICAgIH1cbiAgICB9XG4gICAgY29uc3QgdGl0bGUgPSBgRXJybyA0MDQgLSAke2NvbXBvbmVudH0gLSAke3RoaXMubGliQ29uZmlnPy5zaXRlTmFtZX0gLSAke3RoaXMubG9jYXRpb24ucGF0aCgpfWA7XG4gICAgdGhpcy50aXRsZS5zZXRUaXRsZSh0aXRsZSk7XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICBwdWJsaWMgc2V0NTAwVGl0bGUoY29tcG9uZW50OiBzdHJpbmcgPSAnRGVmYXVsdCBDb21wb25lbnQnKSB7XG4gICAgaWYgKGNvbXBvbmVudCAmJiBjb21wb25lbnQgIT09ICcnKSB7XG4gICAgICBjb21wb25lbnQgPSBoZS5kZWNvZGUoY29tcG9uZW50KTtcbiAgICAgIGNvbXBvbmVudCA9IHJlbW92ZUh0bWxUYWdzKGNvbXBvbmVudCk7XG4gICAgICBpZiAodGhpcy51bmlkYWRlTmFtZSkge1xuICAgICAgICBjb21wb25lbnQgPSBoZS5kZWNvZGUoYCR7Y29tcG9uZW50fSR7dGhpcy5zZXBhcmF0b3J9JHt0aGlzLnVuaWRhZGVOYW1lfWApO1xuICAgICAgfVxuICAgIH1cbiAgICBjb25zdCB0aXRsZSA9IGBFcnJvIDUwMCAtICR7Y29tcG9uZW50fSAtICR7dGhpcy5saWJDb25maWc/LnNpdGVOYW1lfSAtICR7dGhpcy5sb2NhdGlvbi5wYXRoKCl9YDtcbiAgICB0aGlzLnRpdGxlLnNldFRpdGxlKHRpdGxlKTtcbiAgICByZXR1cm4gdGhpcztcbiAgfVxuXG4gIC8qKiBDcmlhIHRhZyBzY3JpcHQgcGFyYSBKU09OIGRlIGJyZWFkY3J1bWJzICovXG4gIHByaXZhdGUgY3JlYXRlQnJlYWRjcnVtYnNKU09OVGFnKCk6IEhUTUxTY3JpcHRFbGVtZW50IHtcbiAgICBjb25zdCB0YWc6IEhUTUxTY3JpcHRFbGVtZW50ID0gdGhpcy5kb2N1bWVudC5jcmVhdGVFbGVtZW50KCdzY3JpcHQnKTtcbiAgICB0YWcuaWQgPSB0aGlzLmJyZWFkY3J1bWJzSnNvblRhZ0lkO1xuICAgIHRhZy50eXBlID0gJ2FwcGxpY2F0aW9uL2xkK2pzb24nO1xuICAgIHRoaXMuZG9jdW1lbnQuaGVhZC5hcHBlbmRDaGlsZCh0YWcpO1xuICAgIHRoaXMuYnJlYWRjcnVtYnNKc29uVGFnID0gdGFnO1xuICAgIHJldHVybiB0YWc7XG4gIH1cblxuICAvKiogUmV0b3JuYSB0YWcgcGFyYSBzY3JpcHQganNvbiBkZSBicmVhZGNydW1icyBvdSBjcmlhIHNlIG7Do28gaG91dmVyLiAqL1xuICBwcml2YXRlIGdldEJyZWFkY3J1bWJzSlNPTlRhZygpOiBIVE1MU2NyaXB0RWxlbWVudCB7XG4gICAgY29uc3QgZWxlbWVudHMgPSB0aGlzLmRvY3VtZW50LmhlYWQuY2hpbGRyZW47XG4gICAgbGV0IGk6IG51bWJlcjtcbiAgICBmb3IgKGkgPSAwOyBpIDwgZWxlbWVudHMubGVuZ3RoOyBpKyspIHtcbiAgICAgIGNvbnN0IGVsZW0gPSBlbGVtZW50c1tpXSBhcyBIVE1MU2NyaXB0RWxlbWVudDtcbiAgICAgIGlmIChlbGVtICYmIGVsZW0uaWQgPT09IHRoaXMuYnJlYWRjcnVtYnNKc29uVGFnSWQpIHtcbiAgICAgICAgcmV0dXJuIGVsZW07XG4gICAgICB9XG4gICAgfVxuICAgIHJldHVybiB0aGlzLmNyZWF0ZUJyZWFkY3J1bWJzSlNPTlRhZygpO1xuICB9XG5cbiAgLyoqIERlZmluZSBvIEpTT04gZGUgYnJlYWRjcnVtYnMgZGEgcMOhZ2luYSAqL1xuICBwdWJsaWMgc2V0QnJlYWRjcnVtYnNKc29uKGl0ZW1zOiBCcmVhZGNydW1ic0l0ZW1zW10pIHtcbiAgICB0aGlzLmJyZWFkY3J1bWJzSnNvblRhZyA9IHRoaXMuZ2V0QnJlYWRjcnVtYnNKU09OVGFnKCk7XG4gICAgY29uc3QganNvbiA9IHtcbiAgICAgICdAY29udGV4dCc6ICdodHRwOi8vc2NoZW1hLm9yZycsXG4gICAgICAnQHR5cGUnOiAnQnJlYWRjcnVtYkxpc3QnLFxuICAgICAgaXRlbUxpc3RFbGVtZW50OiB0aGlzLmdldEpzb25CcmVhZGNydW1iSXRlbXMoaXRlbXMpLFxuICAgIH07XG4gICAgdGhpcy5icmVhZGNydW1ic0pzb25UYWcuaW5uZXJIVE1MID0gSlNPTi5zdHJpbmdpZnkoanNvbik7XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICAvKiogQ29udmVydGUgaXRlbnMgZG8gYnJlYWRjcnVtYiBlbSBpdGVucyBkbyBKU09OICovXG4gIHByaXZhdGUgZ2V0SnNvbkJyZWFkY3J1bWJJdGVtcyhpdGVtczogQnJlYWRjcnVtYnNJdGVtc1tdKTogQnJlYWRjcnVtYnNKc29uSXRlbVtdIHtcbiAgICBjb25zdCBqc29uSXRlbXMgPSBbXG4gICAgICB7XG4gICAgICAgICdAdHlwZSc6ICdMaXN0SXRlbScsXG4gICAgICAgIHBvc2l0aW9uOiAxLFxuICAgICAgICBpdGVtOiB7ICdAaWQnOiB0aGlzLmdldEJyZWFkY3J1bWJJdGVtVXJsKFsnLyddKSwgbmFtZTogaGUuZW5jb2RlKCdQw6FnaW5hIEluaWNpYWwnKSB9LFxuICAgICAgfSBhcyBCcmVhZGNydW1ic0pzb25JdGVtLFxuICAgIF07XG4gICAgaXRlbXMuZm9yRWFjaCgoaXRlbSwgaSkgPT4ge1xuICAgICAgY29uc3QganNvbkl0ZW06IEJyZWFkY3J1bWJzSnNvbkl0ZW0gPSB7XG4gICAgICAgICdAdHlwZSc6ICdMaXN0SXRlbScsXG4gICAgICAgIHBvc2l0aW9uOiBpICsgMixcbiAgICAgICAgaXRlbTogeyAnQGlkJzogdGhpcy5nZXRCcmVhZGNydW1iSXRlbVVybChpdGVtPy51cmwgfHwgW10pLCBuYW1lOiBoZS5lbmNvZGUoaXRlbS5sYWJlbCkgfSxcbiAgICAgIH07XG4gICAgICBqc29uSXRlbXMucHVzaChqc29uSXRlbSk7XG4gICAgfSk7XG4gICAgcmV0dXJuIGpzb25JdGVtcztcbiAgfVxuXG4gIC8qKlxuICAgKiBNb250YSBhIHVybCBkbyBpdGVtIGRlIGJyZWFkY3J1bWIgcHJvdmVuaWVudGUgZG8gYXJyYXkgZGUgdXJsc1xuICAgKiBvdSBkbyBjYW1pbmhvIGRhIHByw7NwcmlhIHDDoWdpbmEsIGNvbmZvcm1lIGNhc28gZG8gw7psdGltbyBpdGVtLlxuICAgKi9cbiAgcHJpdmF0ZSBnZXRCcmVhZGNydW1iSXRlbVVybCh1cmw6IHN0cmluZ1tdKTogc3RyaW5nIHtcbiAgICBjb25zdCBzaXRldXJsID0gZ2V0U2l0ZVVybCh0aGlzLmxpYkNvbmZpZz8uc2l0ZVVybCwgdGhpcy5saWJDb25maWc/LnNpdGVTdWZpeCk7XG4gICAgaWYgKCF1cmwgfHwgdXJsLmxlbmd0aCA8PSAwKSB7XG4gICAgICBjb25zdCBwYWdlUGF0aCA9IHRoaXMubG9jYXRpb24ucGF0aCgpO1xuICAgICAgcmV0dXJuIGAke3NpdGV1cmx9JHtwYWdlUGF0aH1gO1xuICAgIH1cbiAgICB1cmwgPSB1cmwuZmlsdGVyKCh1KSA9PiB1ICE9PSB0aGlzLnVuaWRhZGVQYXRoKTtcbiAgICBjb25zdCB1bmlkYWRlUGF0aCA9IHRoaXMuZ2V0VW5pZGFkZVBhdGgoKTtcbiAgICBjb25zdCBmdWxsUGF0aCA9IGAke3VuaWRhZGVQYXRofS8ke3VybC5qb2luKCcvJykucmVwbGFjZSgvXlxcLz8vLCAnJyl9YDtcbiAgICByZXR1cm4gYCR7c2l0ZXVybH0ke2Z1bGxQYXRofWAucmVwbGFjZSgvXFwvJC8sICcnKTtcbiAgfVxuXG4gIC8qKiBDcmlhIHRhZyBzY3JpcHQgcGFyYSBvIEpTT04gZGUgU0VPICovXG4gIHByaXZhdGUgY3JlYXRlSlNPTlRhZygpOiBIVE1MU2NyaXB0RWxlbWVudCB7XG4gICAgY29uc3QgdGFnOiBIVE1MU2NyaXB0RWxlbWVudCA9IHRoaXMuZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnc2NyaXB0Jyk7XG4gICAgdGFnLmlkID0gdGhpcy5qc29uVGFnSWQ7XG4gICAgdGFnLnR5cGUgPSAnYXBwbGljYXRpb24vbGQranNvbic7XG4gICAgdGhpcy5kb2N1bWVudC5oZWFkLmFwcGVuZENoaWxkKHRhZyk7XG4gICAgdGhpcy5qc29uVGFnID0gdGFnO1xuICAgIHJldHVybiB0YWc7XG4gIH1cblxuICAvKiogUmV0b3JuYSB0YWcgcGFyYSBzY3JpcHQganNvbiBkZSBicmVhZGNydW1icyBvdSBjcmlhIHNlIG7Do28gaG91dmVyLiAqL1xuICBwcml2YXRlIGdldEpTT05UYWcoKTogSFRNTFNjcmlwdEVsZW1lbnQge1xuICAgIGNvbnN0IGVsZW1lbnRzID0gdGhpcy5kb2N1bWVudC5oZWFkLmNoaWxkcmVuO1xuICAgIGxldCBpOiBudW1iZXI7XG4gICAgZm9yIChpID0gMDsgaSA8IGVsZW1lbnRzLmxlbmd0aDsgaSsrKSB7XG4gICAgICBjb25zdCBlbGVtID0gZWxlbWVudHNbaV0gYXMgSFRNTFNjcmlwdEVsZW1lbnQ7XG4gICAgICBpZiAoZWxlbSAmJiBlbGVtLmlkID09PSB0aGlzLmpzb25UYWdJZCkge1xuICAgICAgICByZXR1cm4gZWxlbTtcbiAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIHRoaXMuY3JlYXRlSlNPTlRhZygpO1xuICB9XG5cbiAgLyoqIERlZmluZSBKU09OIHBhcmEgU0VPIHNvbWVudGUgcXVhbmRvIG5vIHNlcnZpZG9yICovXG4gIHB1YmxpYyBzZXRQYWdlSnNvbigpIHtcbiAgICB0aGlzLmpzb25UYWcgPSB0aGlzLmdldEpTT05UYWcoKTtcblxuICAgIGNvbnN0IGJhc2VHcmFwaCA9IFt0aGlzLmdldE9yZ0pzb24oKSwgdGhpcy5nZXRXZWJzaXRlSnNvbigpLCB0aGlzLmdldFdlYnBhZ2VKc29uKCldO1xuXG4gICAgY29uc3QgZXh0ZW5kZWRHcmFwaCA9IHRoaXMuY3VzdG9tSnNvblR5cGUubGVuZ3RoID8gWy4uLmJhc2VHcmFwaCwgLi4udGhpcy5jdXN0b21Kc29uVHlwZV0gOiBiYXNlR3JhcGg7XG5cbiAgICB0aGlzLmN1c3RvbUpzb25UeXBlID0gW107XG5cbiAgICBjb25zdCBqc29uID0ge1xuICAgICAgJ0Bjb250ZXh0JzogJ2h0dHA6Ly9zY2hlbWEub3JnJyxcbiAgICAgICdAZ3JhcGgnOiBleHRlbmRlZEdyYXBoLFxuICAgIH07XG5cbiAgICB0aGlzLmpzb25UYWcuaW5uZXJIVE1MID0gSlNPTi5zdHJpbmdpZnkoanNvbik7XG5cbiAgICByZXR1cm4gdGhpcztcbiAgfVxuXG4gIC8qKiBPYnRlbSBKU09OIGRhIE9yZ2FuaXphw6fDo28gKi9cbiAgcHJpdmF0ZSBnZXRPcmdKc29uKCkge1xuICAgIGNvbnN0IHNpdGV1cmwgPSBnZXRTaXRlVXJsKHRoaXMubGliQ29uZmlnPy5zaXRlVXJsLCB0aGlzLmxpYkNvbmZpZz8uc2l0ZVN1Zml4KTtcbiAgICByZXR1cm4ge1xuICAgICAgJ0B0eXBlJzogJ09yZ2FuaXphdGlvbicsXG4gICAgICAnQGlkJzogYCR7c2l0ZXVybH0jb3JnYW5pemF0aW9uYCxcbiAgICAgIG5hbWU6IHRoaXMuZGVmYXVsdFRpdGxlLFxuICAgICAga2V5d29yZHM6IHRoaXMubGliQ29uZmlnPy5rZXl3b3JkcyxcbiAgICAgIHVybDogYCR7c2l0ZXVybH1gLFxuICAgICAgc2FtZUFzOiB0aGlzLnNhbWVBcyxcbiAgICB9O1xuICB9XG5cbiAgLyoqIE9idGVtIEpTT04gZG8gV2Vic2l0ZSAocG9ydGFsLCB1bmlkYWRlcywgZXRjKSAqL1xuICBwcml2YXRlIGdldFdlYnNpdGVKc29uKCkge1xuICAgIGNvbnN0IHVuaWRhZGVQYXRoID0gdGhpcy5nZXRVbmlkYWRlUGF0aCgpO1xuICAgIGNvbnN0IHNpdGV1cmwgPSBnZXRTaXRlVXJsKHRoaXMubGliQ29uZmlnPy5zaXRlVXJsLCB0aGlzLmxpYkNvbmZpZz8uc2l0ZVN1Zml4KTtcbiAgICByZXR1cm4ge1xuICAgICAgJ0B0eXBlJzogJ1dlYlNpdGUnLFxuICAgICAgJ0BpZCc6IGAke3NpdGV1cmx9JHt1bmlkYWRlUGF0aH0jd2Vic2l0ZWAsXG4gICAgICB1cmw6IGAke3NpdGV1cmx9JHt1bmlkYWRlUGF0aH1gLFxuICAgICAgbmFtZTogdGhpcy51bmlkYWRlTmFtZSxcbiAgICAgIGtleXdvcmRzOiB0aGlzLmxpYkNvbmZpZz8ua2V5d29yZHMsXG4gICAgfTtcbiAgfVxuXG4gIC8qKiBPYnRlbSBKc29uIGRhIHDDoWdpbmEgKi9cbiAgcHJpdmF0ZSBnZXRXZWJwYWdlSnNvbigpIHtcbiAgICBjb25zdCB1bmlkYWRlUGF0aCA9IHRoaXMuZ2V0VW5pZGFkZVBhdGgoKTtcbiAgICBjb25zdCBzaXRlVVJMID0gZ2V0U2l0ZVVybCh0aGlzLmxpYkNvbmZpZz8uc2l0ZVVybCwgdGhpcy5saWJDb25maWc/LnNpdGVTdWZpeCk7XG4gICAgY29uc3QgcGFnZVBhdGggPSBgJHtzaXRlVVJMfSR7dGhpcy5sb2NhdGlvbi5wYXRoKCl9YDtcbiAgICBjb25zdCBkZXNjID0gdGhpcy5hY3RpdmVEZXNjcmlwdGlvbiA/IHRoaXMuYWN0aXZlRGVzY3JpcHRpb24gOiAnJztcbiAgICByZXR1cm4ge1xuICAgICAgJ0B0eXBlJzogJ1dlYlBhZ2UnLFxuICAgICAgJ0BpZCc6IGAke3BhZ2VQYXRofSN3ZWJwYWdlYCxcbiAgICAgIHVybDogcGFnZVBhdGgsXG4gICAgICBpbkxhbmd1YWdlOiAncHQtQlInLFxuICAgICAgbmFtZTogdGhpcy5nZXRUaXRsZSgpLFxuICAgICAgaXNQYXJ0T2Y6IHsgJ0BpZCc6IGAke3NpdGVVUkx9JHt1bmlkYWRlUGF0aH0jd2Vic2l0ZWAgfSxcbiAgICAgIGFib3V0OiB7ICdAaWQnOiBgJHtzaXRlVVJMfSNvcmdhbml6YXRpb25gIH0sXG4gICAgICBkZXNjcmlwdGlvbjogZGVzYyxcbiAgICB9O1xuICB9XG5cbiAgcHJpdmF0ZSBnZXRVbmlkYWRlUGF0aCgpIHtcbiAgICBsZXQgdW5pZGFkZVBhdGggPSAnJztcbiAgICBpZiAodGhpcy51bmlkYWRlICYmIHRoaXMudW5pZGFkZVBhdGgpIHtcbiAgICAgIHVuaWRhZGVQYXRoID0gdGhpcy51bmlkYWRlPy5wYXRoID09PSAnLycgPyAnJyA6IHRoaXMudW5pZGFkZVBhdGg/LnN1YnN0cmluZygwLCB0aGlzLnVuaWRhZGVQYXRoPy5sZW5ndGggLSAxKTtcbiAgICB9XG4gICAgcmV0dXJuIHVuaWRhZGVQYXRoO1xuICB9XG5cbiAgLyoqXG4gICAqIE9idMOpbSBhIFVSTCBjYW7DtG5pY2EgZGEgcMOhZ2luYS5cbiAgICogQHJldHVybnMgQSBVUkwgY2Fuw7RuaWNhIGRhIHDDoWdpbmEuXG4gICAqL1xuICBwdWJsaWMgZ2V0Q2Fub25pY2FsSHJlZigpOiBzdHJpbmcge1xuICAgIGlmICghdGhpcy5jYW5vbmljYWxUYWcpIHtcbiAgICAgIHRoaXMuY2Fub25pY2FsVGFnID0gdGhpcy5nZXRDYW5vbmljYWxUYWcoKTtcbiAgICB9XG4gICAgcmV0dXJuIHRoaXMuY2Fub25pY2FsVGFnLmhyZWY7XG4gIH1cblxuICAvKiogQ3JpYSB0YWcgcGFyYSBsaW5rcyBjYW5vbmljYWxzIG5vIGhlYWQgKi9cbiAgcHJpdmF0ZSBjcmVhdGVDYW5vbmljYWxUYWcoKTogSFRNTExpbmtFbGVtZW50IHtcbiAgICBjb25zdCB0YWcgPSB0aGlzLmRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2xpbmsnKTtcbiAgICB0YWcuc2V0QXR0cmlidXRlKCdyZWwnLCAnY2Fub25pY2FsJyk7XG4gICAgdGhpcy5kb2N1bWVudC5oZWFkLmFwcGVuZENoaWxkKHRhZyk7XG4gICAgdGFnLnNldEF0dHJpYnV0ZSgnaHJlZicsIHRoaXMuZG9jdW1lbnQuVVJMKTtcbiAgICB0aGlzLmNhbm9uaWNhbFRhZyA9IHRhZztcbiAgICByZXR1cm4gdGFnO1xuICB9XG5cbiAgLyoqIFJldG9ybmEgdGFnIHBhcmEgbGluayBjYW5vbmljYWwgZXhpc3RlIG91IGNyaWEgc2UgbsOjbyBob3V2ZXIuICovXG4gIHByaXZhdGUgZ2V0Q2Fub25pY2FsVGFnKCk6IEhUTUxMaW5rRWxlbWVudCB7XG4gICAgY29uc3QgZWxlbWVudHMgPSB0aGlzLmRvY3VtZW50LmhlYWQuY2hpbGRyZW47XG4gICAgbGV0IGk6IG51bWJlcjtcbiAgICBmb3IgKGkgPSAwOyBpIDwgZWxlbWVudHMubGVuZ3RoOyBpKyspIHtcbiAgICAgIGNvbnN0IGVsZW0gPSBlbGVtZW50c1tpXSBhcyBIVE1MTGlua0VsZW1lbnQ7XG4gICAgICBpZiAoZWxlbSAmJiBlbGVtLnRhZ05hbWUgPT09ICdMSU5LJyAmJiBlbGVtLnJlbCA9PT0gJ2Nhbm9uaWNhbCcpIHtcbiAgICAgICAgcmV0dXJuIGVsZW07XG4gICAgICB9XG4gICAgfVxuICAgIHJldHVybiB0aGlzLmNyZWF0ZUNhbm9uaWNhbFRhZygpO1xuICB9XG5cbiAgLyoqXG4gICAqIERlZmluZSBsaW5rIGNhbm9uaWNhbCBkYSBww6FnaW5hXG4gICAqIEBwYXJhbSB1cmwgdXJsIGNhbm9uaWNhbFxuICAgKi9cbiAgcHVibGljIHNldENhbm9uaWNhbEhyZWYodXJsPzogc3RyaW5nKSB7XG4gICAgaWYgKCF0aGlzLmNhbm9uaWNhbFRhZykge1xuICAgICAgdGhpcy5jYW5vbmljYWxUYWcgPSB0aGlzLmdldENhbm9uaWNhbFRhZygpO1xuICAgIH1cblxuICAgIGxldCBwYXRoID0gdGhpcy5kb2N1bWVudC5sb2NhdGlvbi5wYXRobmFtZTtcblxuICAgIGlmICh0aGlzLmxpYkNvbmZpZz8uc2l0ZVN1Zml4ICYmIHBhdGguaW5jbHVkZXModGhpcy5saWJDb25maWc/LnNpdGVTdWZpeCkpIHtcbiAgICAgIHBhdGggPSBwYXRoLnJlcGxhY2UodGhpcy5saWJDb25maWc/LnNpdGVTdWZpeCwgJycpO1xuICAgIH1cblxuICAgIGlmICghcGF0aC5zdGFydHNXaXRoKCcvJykpIHtcbiAgICAgIHBhdGggPSBgLyR7cGF0aH1gO1xuICAgIH1cblxuICAgIGNvbnN0IGNhbm9uaWNhbFVybCA9IHVybCAmJiB0aGlzLmlzQ3VzdG9tQ2Fub25pY2FsKHVybCkgPyB1cmwgOiBgJHtnZXRTaXRlVXJsKHRoaXMubGliQ29uZmlnPy5zaXRlVXJsLCB0aGlzLmxpYkNvbmZpZz8uc2l0ZVN1Zml4KX0ke3BhdGh9YDtcblxuICAgIHRoaXMuY2Fub25pY2FsVGFnLnNldEF0dHJpYnV0ZSgnaHJlZicsIGNhbm9uaWNhbFVybCk7XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICAvKipcbiAgICogVmVyaWZpY2Egc2UgYSBVUkwgZm9ybmVjaWRhIMOpIHVtIGxpbmsgY2Fub25pY2FsIHBlcnNvbmFsaXphZG9cbiAgICogQHBhcmFtIHVybCBVUkwgZm9ybmVjaWRhXG4gICAqL1xuICBwdWJsaWMgaXNDdXN0b21DYW5vbmljYWwodXJsOiBzdHJpbmcpOiBib29sZWFuIHtcbiAgICBjb25zdCBzaXRldXJsID0gZ2V0U2l0ZVVybCh0aGlzLmxpYkNvbmZpZz8uc2l0ZVVybCwgdGhpcy5saWJDb25maWc/LnNpdGVTdWZpeCk7XG4gICAgcmV0dXJuIHVybC5zdGFydHNXaXRoKHNpdGV1cmwpO1xuICB9XG5cbiAgLyoqXG4gICAqIE9idMOpbSB1bWEgdXJsIHbDoWxpZGEgbmEgYXBsaWNhw6fDo28gcHJvdmVuaWVudGUgZGUgdW1hIFVSTCBnZXJhZGFcbiAgICogcGVsbyBwbHVnaW4gWW9hc3QgcGFyYSBjYW5vbmljYWwgYXV0b23DoXRpY28uXG4gICAqIEV4LjogaHR0cHM6Ly93cC5yZWRlZG9yc2FvbHVpei5jb20uYnIvYnJhc2lsL2VzcGVjaWFsaWRhZGVzL2NhcmRpb2xvZ2lhL1xuICAgKiBAcGFyYW0gdXJsRnJvbVdwQXBpIFVSTCBjYW5vbmljYSBnZXJhZGEgcGVsbyBZb2FzdCBQbHVnaW4uXG4gICAqL1xuICB0b0xvY2FsQ2Fub25pY2FsKHVybEZyb21XcEFwaTogc3RyaW5nKTogc3RyaW5nIHtcbiAgICBjb25zdCBhcGlVcmwgPSB0aGlzLmxpYkNvbmZpZz8ud3BVcmwgPz8gJyc7XG4gICAgY29uc3Qgc2l0ZXVybCA9IGdldFNpdGVVcmwodGhpcy5saWJDb25maWc/LnNpdGVVcmwsIHRoaXMubGliQ29uZmlnPy5zaXRlU3VmaXgpO1xuICAgIGNvbnN0IHVuaWRhZGVTbHVnID0gdGhpcy51bmlkYWRlU2x1ZztcbiAgICBsZXQgY29udmVydGVkID0gdXJsRnJvbVdwQXBpLnJlcGxhY2UoYXBpVXJsLCBzaXRldXJsKTtcbiAgICBpZiAodW5pZGFkZVNsdWcgIT09ICcvJyAmJiBjb252ZXJ0ZWQuaW5jbHVkZXMoYC8ke3VuaWRhZGVTbHVnfS9gKSkge1xuICAgICAgY29udmVydGVkID0gY29udmVydGVkLnJlcGxhY2UoYC8ke3VuaWRhZGVTbHVnfS9gLCBgJHt0aGlzLnVuaWRhZGVQYXRofWApO1xuICAgIH1cbiAgICByZXR1cm4gY29udmVydGVkO1xuICB9XG5cbiAgZ2V0UG9zdENvbnRlbnQocG9zdDogV3BQb3N0KTogc3RyaW5nIHtcbiAgICBjb25zdCBjb250ZW50ID0gcG9zdC5hY2ZbJ3Jkc2xfcG9zdF9jb250ZW50J10gPyBwb3N0LmFjZi5yZHNsX3Bvc3RfY29udGVudC5maW5kKChjb250ZW50OiBhbnkpID0+IGNvbnRlbnQuYWNmX2ZjX2xheW91dCA9PT0gJ3RleHRfaHRtbCcpIDogbnVsbDtcbiAgICByZXR1cm4gY29udGVudD8uY29udGVudCB8fCBwb3N0LmNvbnRlbnQucmVuZGVyZWQgfHwgJyc7XG4gIH1cblxuICBhZGRBcnRpY2xlU2NyaXB0KHBvc3Q6IFdwUG9zdCwgc2NyaXB0TmFtZTogc3RyaW5nKTogdm9pZCB7XG4gICAgY29uc3QgcG9zdENvbnRlbnQgPSB0aGlzLmdldFBvc3RDb250ZW50KHBvc3QpO1xuICAgIGNvbnN0IHBvc3RIZWFkZXJJbWFnZSA9IHBvc3QuYWNmWydyZHNsX3Bvc3RfaGVhZGVyX2ltZyddXG4gICAgICA/IHtcbiAgICAgICAgICB1cmw6IHBvc3QuYWNmWydyZHNsX3Bvc3RfaGVhZGVyX2ltZyddLnVybCxcbiAgICAgICAgICB3aWR0aDogcG9zdC5hY2ZbJ3Jkc2xfcG9zdF9oZWFkZXJfaW1nJ10ud2lkdGgsXG4gICAgICAgICAgaGVpZ2h0OiBwb3N0LmFjZlsncmRzbF9wb3N0X2hlYWRlcl9pbWcnXS5oZWlnaHQsXG4gICAgICAgIH1cbiAgICAgIDogbnVsbDtcblxuICAgIGNvbnN0IHN0cnVjdHVyZWREYXRhID0ge1xuICAgICAgJ0Bjb250ZXh0JzogJ2h0dHBzOi8vc2NoZW1hLm9yZycsXG4gICAgICAnQHR5cGUnOiAnQXJ0aWNsZScsXG4gICAgICBtYWluRW50aXR5T2ZQYWdlOiBgJHtnZXRTaXRlVXJsKHRoaXMubGliQ29uZmlnPy5zaXRlVXJsLCB0aGlzLmxpYkNvbmZpZz8uc2l0ZVN1Zml4KX0ke3RoaXMubG9jYXRpb24ucGF0aCgpfWAsXG4gICAgICBoZWFkbGluZTogcG9zdC50aXRsZT8ucmVuZGVyZWQsXG4gICAgICBkYXRlUHVibGlzaGVkOiBwb3N0LmRhdGVfZ210LFxuICAgICAgcHVibGlzaGVyOiB7XG4gICAgICAgICdAdHlwZSc6ICdPcmdhbml6YXRpb24nLFxuICAgICAgICBuYW1lOiAnUmVkZSBE4oCZT3InLFxuICAgICAgfSxcbiAgICAgIGRlc2NyaXB0aW9uOiBwb3N0LnRpdGxlPy5yZW5kZXJlZCxcbiAgICAgIGFydGljbGVCb2R5OiByZW1vdmVIdG1sVGFncyhoZS5kZWNvZGUocG9zdENvbnRlbnQpKSxcbiAgICAgIGRhdGVNb2RpZmllZDogcG9zdC5tb2RpZmllZF9nbXQsXG4gICAgICBpbWFnZToge1xuICAgICAgICAnQHR5cGUnOiAnSW1hZ2VPYmplY3QnLFxuICAgICAgICB1cmw6IHBvc3RIZWFkZXJJbWFnZT8udXJsIHx8IHBvc3QuZmVhdHVyZWRfbWVkaWFfcGF0aCB8fCAnJyxcbiAgICAgICAgaGVpZ2h0OiBwb3N0SGVhZGVySW1hZ2U/LmhlaWdodCB8fCAnJyxcbiAgICAgICAgd2lkdGg6IHBvc3RIZWFkZXJJbWFnZT8ud2lkdGggfHwgJycsXG4gICAgICB9LFxuICAgICAgYXV0aG9yOiB7XG4gICAgICAgICdAdHlwZSc6ICdPcmdhbml6YXRpb24nLFxuICAgICAgICBuYW1lOiAnUmVkZSBE4oCZT3InLFxuICAgICAgfSxcbiAgICAgIHdvcmRjb3VudDogcG9zdENvbnRlbnQuc3BsaXQoJyAnKS5sZW5ndGgsXG4gICAgfTtcblxuICAgIGNvbnN0IHNjcmlwdCA9IHRoaXMuZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnc2NyaXB0Jyk7XG5cbiAgICBzY3JpcHQudHlwZSA9ICdhcHBsaWNhdGlvbi9sZCtqc29uJztcbiAgICBzY3JpcHQuaWQgPSBzY3JpcHROYW1lO1xuICAgIHNjcmlwdC5pbm5lckhUTUwgPSBKU09OLnN0cmluZ2lmeShzdHJ1Y3R1cmVkRGF0YSk7XG5cbiAgICB0aGlzLmRvY3VtZW50LmhlYWQuYXBwZW5kQ2hpbGQoc2NyaXB0KTtcbiAgfVxuXG4gIHJlbW92ZUFydGljbGVTY3JpcHQoc2NyaXB0TmFtZTogc3RyaW5nKTogdm9pZCB7XG4gICAgY29uc3Qgc2NyaXB0ID0gdGhpcy5kb2N1bWVudC5nZXRFbGVtZW50QnlJZChzY3JpcHROYW1lKTtcbiAgICBzY3JpcHQ/LnJlbW92ZSgpO1xuICB9XG5cbiAgcHVibGljIHNldFVuaWRhZGUoeyB1bmlkYWRlID0gbnVsbCwgdW5pZGFkZU5hbWUgPSAnJywgdW5pZGFkZVBhdGggPSAnJywgdW5pZGFkZVNsdWcgPSAnJyB9OiBTZW9VbmlkYWRlKSB7XG4gICAgdGhpcy51bmlkYWRlID0gdW5pZGFkZTtcbiAgICB0aGlzLnVuaWRhZGVOYW1lID0gdW5pZGFkZU5hbWU7XG4gICAgdGhpcy51bmlkYWRlUGF0aCA9IHVuaWRhZGVQYXRoO1xuICAgIHRoaXMudW5pZGFkZVNsdWcgPSB1bmlkYWRlU2x1ZztcbiAgfVxufVxuIl19
@@ -75,10 +75,10 @@ export class ServerResponseService {
75
75
  }
76
76
  return this;
77
77
  }
78
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.11", ngImport: i0, type: ServerResponseService, deps: [{ token: RESPONSE, optional: true }], target: i0.ɵɵFactoryTarget.Injectable }); }
79
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.11", ngImport: i0, type: ServerResponseService, providedIn: 'root' }); }
78
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: ServerResponseService, deps: [{ token: RESPONSE, optional: true }], target: i0.ɵɵFactoryTarget.Injectable }); }
79
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: ServerResponseService, providedIn: 'root' }); }
80
80
  }
81
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.11", ngImport: i0, type: ServerResponseService, decorators: [{
81
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: ServerResponseService, decorators: [{
82
82
  type: Injectable,
83
83
  args: [{
84
84
  providedIn: 'root',
@@ -89,4 +89,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.11", ngImpo
89
89
  type: Inject,
90
90
  args: [RESPONSE]
91
91
  }] }] });
92
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VydmVyLXJlc3BvbnNlLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zaXRlLWZyb250LWVuZC1saWIvc3JjL2xpYi9zZXJ2aWNlcy9zZXJ2ZXItcmVzcG9uc2Uvc2VydmVyLXJlc3BvbnNlLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRTdELE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQzs7QUFnQnZELE1BQU0sT0FBTyxxQkFBcUI7SUFHaEMsWUFBMEMsUUFBYTtRQUNyRCxJQUFJLENBQUMsUUFBUSxHQUFHLFFBQVEsQ0FBQztJQUMzQixDQUFDO0lBRUQsU0FBUyxDQUFDLEdBQVc7UUFDbkIsT0FBTyxJQUFJLENBQUMsUUFBUSxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQVcsQ0FBQztJQUNoRCxDQUFDO0lBRUQsU0FBUyxDQUFDLEdBQVcsRUFBRSxLQUFhO1FBQ2xDLElBQUksSUFBSSxDQUFDLFFBQVEsRUFBRSxDQUFDO1lBQ2xCLElBQUksQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDLEdBQUcsRUFBRSxLQUFLLENBQUMsQ0FBQztRQUNuQyxDQUFDO1FBQ0QsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDO0lBRUQsWUFBWSxDQUFDLEdBQVcsRUFBRSxLQUFhLEVBQUUsU0FBUyxHQUFHLEdBQUc7UUFDdEQsSUFBSSxJQUFJLENBQUMsUUFBUSxFQUFFLENBQUM7WUFDbEIsTUFBTSxPQUFPLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsQ0FBQztZQUNwQyxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUM7Z0JBQ2IsT0FBTyxJQUFJLENBQUMsU0FBUyxDQUFDLEdBQUcsRUFBRSxLQUFLLENBQUMsQ0FBQztZQUNwQyxDQUFDO1lBQ0Qs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QUFDOytHQXRGVSxxQkFBcUIsa0JBR0EsUUFBUTttSEFIN0IscUJBQXFCLGNBRnBCLE1BQU07OzRGQUVQLHFCQUFxQjtrQkFIakMsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkI7OzBCQUljLFFBQVE7OzBCQUFJLE1BQU07MkJBQUMsUUFBUSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdCwgSW5qZWN0YWJsZSwgT3B0aW9uYWwgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgUmVzcG9uc2UgfSBmcm9tICdleHByZXNzJztcclxuaW1wb3J0IHsgUkVTUE9OU0UgfSBmcm9tICcuLi8uLi90b2tlbnMvZXhwcmVzcy50b2tlbnMnO1xyXG5cclxuZXhwb3J0IGludGVyZmFjZSBJU2VydmVyUmVzcG9uc2VTZXJ2aWNlIHtcclxuICBnZXRIZWFkZXIoa2V5OiBzdHJpbmcpOiBzdHJpbmc7XHJcbiAgc2V0SGVhZGVyKGtleTogc3RyaW5nLCB2YWx1ZTogc3RyaW5nKTogdGhpcztcclxuICBzZXRIZWFkZXJzKGRpY3Rpb25hcnk6IHsgW2tleTogc3RyaW5nXTogc3RyaW5nIH0pOiB0aGlzO1xyXG4gIGFwcGVuZEhlYWRlcihrZXk6IHN0cmluZywgdmFsdWU6IHN0cmluZywgZGVsaW1pdGVyPzogc3RyaW5nKTogdGhpcztcclxuICBzZXRTdGF0dXMoY29kZTogbnVtYmVyLCBtZXNzYWdlPzogc3RyaW5nKTogdGhpcztcclxuICBzZXROb3RGb3VuZChtZXNzYWdlPzogc3RyaW5nKTogdGhpcztcclxuICBzZXRFcnJvcihtZXNzYWdlPzogc3RyaW5nKTogdGhpcztcclxuICBzZXRSZWRpcmVjdChyZWRpcmVjdFBhcmFtcz86IHsgc3RhdHVzQ29kZTogbnVtYmVyOyBtZXNzYWdlOiBzdHJpbmc7IHVybD86IHN0cmluZyB9KTogdGhpcztcclxufVxyXG5cclxuQEluamVjdGFibGUoe1xyXG4gIHByb3ZpZGVkSW46ICdyb290JyxcclxufSlcclxuZXhwb3J0IGNsYXNzIFNlcnZlclJlc3BvbnNlU2VydmljZSBpbXBsZW1lbnRzIElTZXJ2ZXJSZXNwb25zZVNlcnZpY2Uge1xyXG4gIHByaXZhdGUgcmVzcG9uc2U6IFJlc3BvbnNlO1xyXG5cclxuICBjb25zdHJ1Y3RvcihAT3B0aW9uYWwoKSBASW5qZWN0KFJFU1BPTlNFKSByZXNwb25zZTogYW55KSB7XHJcbiAgICB0aGlzLnJlc3BvbnNlID0gcmVzcG9uc2U7XHJcbiAgfVxyXG5cclxuICBnZXRIZWFkZXIoa2V5OiBzdHJpbmcpOiBzdHJpbmcge1xyXG4gICAgcmV0dXJuIHRoaXMucmVzcG9uc2UuZ2V0SGVhZGVyKGtleSkgYXMgc3RyaW5nO1xyXG4gIH1cclxuXHJcbiAgc2V0SGVhZGVyKGtleTogc3RyaW5nLCB2YWx1ZTogc3RyaW5nKTogdGhpcyB7XHJcbiAgICBpZiAodGhpcy5yZXNwb25zZSkge1xyXG4gICAgICB0aGlzLnJlc3BvbnNlLmhlYWRlcihrZXksIHZhbHVlKTtcclxuICAgIH1cclxuICAgIHJldHVybiB0aGlzO1xyXG4gIH1cclxuXHJcbiAgYXBwZW5kSGVhZGVyKGtleTogc3RyaW5nLCB2YWx1ZTogc3RyaW5nLCBkZWxpbWl0ZXIgPSAnLCcpOiB0aGlzIHtcclxuICAgIGlmICh0aGlzLnJlc3BvbnNlKSB7XHJcbiAgICAgIGNvbnN0IGN1cnJlbnQgPSB0aGlzLmdldEhlYWRlcihrZXkpO1xyXG4gICAgICBpZiAoIWN1cnJlbnQpIHtcclxuICAgICAgICByZXR1cm4gdGhpcy5zZXRIZWFkZXIoa2V5LCB2YWx1ZSk7XHJcbiAgICAgIH1cclxuICAgICAgY29uc3QgbmV3VmFsdWUgPSBbLi4uY3VycmVudC5zcGxpdChkZWxpbWl0ZXIpLCB2YWx1ZV0uZmlsdGVyKChlbCwgaSwgYSkgPT4gaSA9PT0gYS5pbmRleE9mKGVsKSkuam9pbihkZWxpbWl0ZXIpO1xyXG4gICAgICB0aGlzLnJlc3BvbnNlLmhlYWRlcihrZXksIG5ld1ZhbHVlKTtcclxuICAgIH1cclxuICAgIHJldHVybiB0aGlzO1xyXG4gIH1cclxuXHJcbiAgc2V0SGVhZGVycyhkaWN0aW9uYXJ5OiB7IFtrZXk6IHN0cmluZ106IHN0cmluZyB9KTogdGhpcyB7XHJcbiAgICBpZiAodGhpcy5yZXNwb25zZSkge1xyXG4gICAgICBPYmplY3Qua2V5cyhkaWN0aW9uYXJ5KS5mb3JFYWNoKChrZXkpID0+IHRoaXMuc2V0SGVhZGVyKGtleSwgZGljdGlvbmFyeVtrZXldKSk7XHJcbiAgICB9XHJcbiAgICByZXR1cm4gdGhpcztcclxuICB9XHJcblxyXG4gIHNldFN0YXR1cyhjb2RlOiBudW1iZXIsIG1lc3NhZ2U/OiBzdHJpbmcpOiB0aGlzIHtcclxuICAgIGlmICh0aGlzLnJlc3BvbnNlKSB7XHJcbiAgICAgIHRoaXMucmVzcG9uc2Uuc3RhdHVzQ29kZSA9IGNvZGU7XHJcbiAgICAgIGlmIChtZXNzYWdlKSB7XHJcbiAgICAgICAgdGhpcy5yZXNwb25zZS5zdGF0dXNNZXNzYWdlID0gbWVzc2FnZTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgcmV0dXJuIHRoaXM7XHJcbiAgfVxyXG5cclxuICBzZXROb3RGb3VuZChtZXNzYWdlID0gJ07Do28gZW5jb250cmFkbycpOiB0aGlzIHtcclxuICAgIGlmICh0aGlzLnJlc3BvbnNlKSB7XHJcbiAgICAgIHRoaXMucmVzcG9uc2Uuc3RhdHVzQ29kZSA9IDQwNDtcclxuICAgICAgdGhpcy5yZXNwb25zZS5zdGF0dXNNZXNzYWdlID0gbWVzc2FnZTtcclxuICAgIH1cclxuICAgIHJldHVybiB0aGlzO1xyXG4gIH1cclxuXHJcbiAgc2V0VW5hdXRob3JpemVkKG1lc3NhZ2UgPSAnTsOjbyBhdXRvcml6YWRvJyk6IHRoaXMge1xyXG4gICAgaWYgKHRoaXMucmVzcG9uc2UpIHtcclxuICAgICAgdGhpcy5yZXNwb25zZS5zdGF0dXNDb2RlID0gNDAxO1xyXG4gICAgICB0aGlzLnJlc3BvbnNlLnN0YXR1c01lc3NhZ2UgPSBtZXNzYWdlO1xyXG4gICAgfVxyXG4gICAgcmV0dXJuIHRoaXM7XHJcbiAgfVxyXG5cclxuICBzZXRFcnJvcihtZXNzYWdlID0gJ0Vycm8gaW50ZXJubyBkZSBzZXJ2aWRvcicpOiB0aGlzIHtcclxuICAgIGlmICh0aGlzLnJlc3BvbnNlKSB7XHJcbiAgICAgIHRoaXMucmVzcG9uc2Uuc3RhdHVzQ29kZSA9IDUwMDtcclxuICAgICAgdGhpcy5yZXNwb25zZS5zdGF0dXNNZXNzYWdlID0gbWVzc2FnZTtcclxuICAgIH1cclxuICAgIHJldHVybiB0aGlzO1xyXG4gIH1cclxuXHJcbiAgc2V0UmVkaXJlY3QoXHJcbiAgICB7IHN0YXR1c0NvZGUsIG1lc3NhZ2UsIHVybCB9OiB7IHN0YXR1c0NvZGU/OiBudW1iZXI7IG1lc3NhZ2U/OiBzdHJpbmc7IHVybD86IHN0cmluZyB9ID0ge1xyXG4gICAgICBzdGF0dXNDb2RlOiAzMDEsXHJcbiAgICAgIG1lc3NhZ2U6ICdSZWRpcmVjaW9uYWRvIHBlcm1hbmVudGVtZW50ZScsXHJcbiAgICAgIHVybDogdW5kZWZpbmVkLFxyXG4gICAgfSxcclxuICApOiB0aGlzIHtcclxuICAgIGlmICh0aGlzLnJlc3BvbnNlKSB7XHJcbiAgICAgIHRoaXMucmVzcG9uc2Uuc3RhdHVzQ29kZSA9IHN0YXR1c0NvZGUgfHwgMzAxO1xyXG4gICAgICB0aGlzLnJlc3BvbnNlLnN0YXR1c01lc3NhZ2UgPSBtZXNzYWdlIHx8ICdSZWRpcmVjaW9uYWRvIHBlcm1hbmVudGVtZW50ZSc7XHJcbiAgICAgIGlmICh1cmwpIHtcclxuICAgICAgICB0aGlzLnJlc3BvbnNlLmxvY2Fsc1sncmVkaXJlY3RVcmwnXSA9IHVybDsgLy8gVXRpbGl6YWRvIG5vIHNzciBwYXJhIHJlZGlyZWN0XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIHJldHVybiB0aGlzO1xyXG4gIH1cclxufVxyXG5cclxuZXhwb3J0IHR5cGUgSHR0cENhY2hlRGlyZWN0aXZlID0gJ3B1YmxpYycgfCAncHJpdmF0ZScgfCAnbm8tc3RvcmUnIHwgJ25vLWNhY2hlJyB8ICdtdXN0LXJldmFsaWRhdGUnIHwgJ25vLXRyYW5zZm9ybScgfCAncHJveHktcmV2YWxpZGF0ZSc7XHJcbiJdfQ==
92
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VydmVyLXJlc3BvbnNlLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zaXRlLWZyb250LWVuZC1saWIvc3JjL2xpYi9zZXJ2aWNlcy9zZXJ2ZXItcmVzcG9uc2Uvc2VydmVyLXJlc3BvbnNlLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRTdELE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQzs7QUFnQnZELE1BQU0sT0FBTyxxQkFBcUI7SUFHaEMsWUFBMEMsUUFBYTtRQUNyRCxJQUFJLENBQUMsUUFBUSxHQUFHLFFBQVEsQ0FBQztJQUMzQixDQUFDO0lBRUQsU0FBUyxDQUFDLEdBQVc7UUFDbkIsT0FBTyxJQUFJLENBQUMsUUFBUSxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQVcsQ0FBQztJQUNoRCxDQUFDO0lBRUQsU0FBUyxDQUFDLEdBQVcsRUFBRSxLQUFhO1FBQ2xDLElBQUksSUFBSSxDQUFDLFFBQVEsRUFBRSxDQUFDO1lBQ2xCLElBQUksQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDLEdBQUcsRUFBRSxLQUFLLENBQUMsQ0FBQztRQUNuQyxDQUFDO1FBQ0QsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDO0lBRUQsWUFBWSxDQUFDLEdBQVcsRUFBRSxLQUFhLEVBQUUsU0FBUyxHQUFHLEdBQUc7UUFDdEQsSUFBSSxJQUFJLENBQUMsUUFBUSxFQUFFLENBQUM7WUFDbEIsTUFBTSxPQUFPLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsQ0FBQztZQUNwQyxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUM7Z0JBQ2IsT0FBTyxJQUFJLENBQUMsU0FBUyxDQUFDLEdBQUcsRUFBRSxLQUFLLENBQUMsQ0FBQztZQUNwQyxDQUFDO1lBQ0Qs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QUFDOytHQXRGVSxxQkFBcUIsa0JBR0EsUUFBUTttSEFIN0IscUJBQXFCLGNBRnBCLE1BQU07OzRGQUVQLHFCQUFxQjtrQkFIakMsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkI7OzBCQUljLFFBQVE7OzBCQUFJLE1BQU07MkJBQUMsUUFBUSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdCwgSW5qZWN0YWJsZSwgT3B0aW9uYWwgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFJlc3BvbnNlIH0gZnJvbSAnZXhwcmVzcyc7XG5pbXBvcnQgeyBSRVNQT05TRSB9IGZyb20gJy4uLy4uL3Rva2Vucy9leHByZXNzLnRva2Vucyc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgSVNlcnZlclJlc3BvbnNlU2VydmljZSB7XG4gIGdldEhlYWRlcihrZXk6IHN0cmluZyk6IHN0cmluZztcbiAgc2V0SGVhZGVyKGtleTogc3RyaW5nLCB2YWx1ZTogc3RyaW5nKTogdGhpcztcbiAgc2V0SGVhZGVycyhkaWN0aW9uYXJ5OiB7IFtrZXk6IHN0cmluZ106IHN0cmluZyB9KTogdGhpcztcbiAgYXBwZW5kSGVhZGVyKGtleTogc3RyaW5nLCB2YWx1ZTogc3RyaW5nLCBkZWxpbWl0ZXI/OiBzdHJpbmcpOiB0aGlzO1xuICBzZXRTdGF0dXMoY29kZTogbnVtYmVyLCBtZXNzYWdlPzogc3RyaW5nKTogdGhpcztcbiAgc2V0Tm90Rm91bmQobWVzc2FnZT86IHN0cmluZyk6IHRoaXM7XG4gIHNldEVycm9yKG1lc3NhZ2U/OiBzdHJpbmcpOiB0aGlzO1xuICBzZXRSZWRpcmVjdChyZWRpcmVjdFBhcmFtcz86IHsgc3RhdHVzQ29kZTogbnVtYmVyOyBtZXNzYWdlOiBzdHJpbmc7IHVybD86IHN0cmluZyB9KTogdGhpcztcbn1cblxuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAncm9vdCcsXG59KVxuZXhwb3J0IGNsYXNzIFNlcnZlclJlc3BvbnNlU2VydmljZSBpbXBsZW1lbnRzIElTZXJ2ZXJSZXNwb25zZVNlcnZpY2Uge1xuICBwcml2YXRlIHJlc3BvbnNlOiBSZXNwb25zZTtcblxuICBjb25zdHJ1Y3RvcihAT3B0aW9uYWwoKSBASW5qZWN0KFJFU1BPTlNFKSByZXNwb25zZTogYW55KSB7XG4gICAgdGhpcy5yZXNwb25zZSA9IHJlc3BvbnNlO1xuICB9XG5cbiAgZ2V0SGVhZGVyKGtleTogc3RyaW5nKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy5yZXNwb25zZS5nZXRIZWFkZXIoa2V5KSBhcyBzdHJpbmc7XG4gIH1cblxuICBzZXRIZWFkZXIoa2V5OiBzdHJpbmcsIHZhbHVlOiBzdHJpbmcpOiB0aGlzIHtcbiAgICBpZiAodGhpcy5yZXNwb25zZSkge1xuICAgICAgdGhpcy5yZXNwb25zZS5oZWFkZXIoa2V5LCB2YWx1ZSk7XG4gICAgfVxuICAgIHJldHVybiB0aGlzO1xuICB9XG5cbiAgYXBwZW5kSGVhZGVyKGtleTogc3RyaW5nLCB2YWx1ZTogc3RyaW5nLCBkZWxpbWl0ZXIgPSAnLCcpOiB0aGlzIHtcbiAgICBpZiAodGhpcy5yZXNwb25zZSkge1xuICAgICAgY29uc3QgY3VycmVudCA9IHRoaXMuZ2V0SGVhZGVyKGtleSk7XG4gICAgICBpZiAoIWN1cnJlbnQpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuc2V0SGVhZGVyKGtleSwgdmFsdWUpO1xuICAgICAgfVxuICAgICAgY29uc3QgbmV3VmFsdWUgPSBbLi4uY3VycmVudC5zcGxpdChkZWxpbWl0ZXIpLCB2YWx1ZV0uZmlsdGVyKChlbCwgaSwgYSkgPT4gaSA9PT0gYS5pbmRleE9mKGVsKSkuam9pbihkZWxpbWl0ZXIpO1xuICAgICAgdGhpcy5yZXNwb25zZS5oZWFkZXIoa2V5LCBuZXdWYWx1ZSk7XG4gICAgfVxuICAgIHJldHVybiB0aGlzO1xuICB9XG5cbiAgc2V0SGVhZGVycyhkaWN0aW9uYXJ5OiB7IFtrZXk6IHN0cmluZ106IHN0cmluZyB9KTogdGhpcyB7XG4gICAgaWYgKHRoaXMucmVzcG9uc2UpIHtcbiAgICAgIE9iamVjdC5rZXlzKGRpY3Rpb25hcnkpLmZvckVhY2goKGtleSkgPT4gdGhpcy5zZXRIZWFkZXIoa2V5LCBkaWN0aW9uYXJ5W2tleV0pKTtcbiAgICB9XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICBzZXRTdGF0dXMoY29kZTogbnVtYmVyLCBtZXNzYWdlPzogc3RyaW5nKTogdGhpcyB7XG4gICAgaWYgKHRoaXMucmVzcG9uc2UpIHtcbiAgICAgIHRoaXMucmVzcG9uc2Uuc3RhdHVzQ29kZSA9IGNvZGU7XG4gICAgICBpZiAobWVzc2FnZSkge1xuICAgICAgICB0aGlzLnJlc3BvbnNlLnN0YXR1c01lc3NhZ2UgPSBtZXNzYWdlO1xuICAgICAgfVxuICAgIH1cbiAgICByZXR1cm4gdGhpcztcbiAgfVxuXG4gIHNldE5vdEZvdW5kKG1lc3NhZ2UgPSAnTsOjbyBlbmNvbnRyYWRvJyk6IHRoaXMge1xuICAgIGlmICh0aGlzLnJlc3BvbnNlKSB7XG4gICAgICB0aGlzLnJlc3BvbnNlLnN0YXR1c0NvZGUgPSA0MDQ7XG4gICAgICB0aGlzLnJlc3BvbnNlLnN0YXR1c01lc3NhZ2UgPSBtZXNzYWdlO1xuICAgIH1cbiAgICByZXR1cm4gdGhpcztcbiAgfVxuXG4gIHNldFVuYXV0aG9yaXplZChtZXNzYWdlID0gJ07Do28gYXV0b3JpemFkbycpOiB0aGlzIHtcbiAgICBpZiAodGhpcy5yZXNwb25zZSkge1xuICAgICAgdGhpcy5yZXNwb25zZS5zdGF0dXNDb2RlID0gNDAxO1xuICAgICAgdGhpcy5yZXNwb25zZS5zdGF0dXNNZXNzYWdlID0gbWVzc2FnZTtcbiAgICB9XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICBzZXRFcnJvcihtZXNzYWdlID0gJ0Vycm8gaW50ZXJubyBkZSBzZXJ2aWRvcicpOiB0aGlzIHtcbiAgICBpZiAodGhpcy5yZXNwb25zZSkge1xuICAgICAgdGhpcy5yZXNwb25zZS5zdGF0dXNDb2RlID0gNTAwO1xuICAgICAgdGhpcy5yZXNwb25zZS5zdGF0dXNNZXNzYWdlID0gbWVzc2FnZTtcbiAgICB9XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICBzZXRSZWRpcmVjdChcbiAgICB7IHN0YXR1c0NvZGUsIG1lc3NhZ2UsIHVybCB9OiB7IHN0YXR1c0NvZGU/OiBudW1iZXI7IG1lc3NhZ2U/OiBzdHJpbmc7IHVybD86IHN0cmluZyB9ID0ge1xuICAgICAgc3RhdHVzQ29kZTogMzAxLFxuICAgICAgbWVzc2FnZTogJ1JlZGlyZWNpb25hZG8gcGVybWFuZW50ZW1lbnRlJyxcbiAgICAgIHVybDogdW5kZWZpbmVkLFxuICAgIH0sXG4gICk6IHRoaXMge1xuICAgIGlmICh0aGlzLnJlc3BvbnNlKSB7XG4gICAgICB0aGlzLnJlc3BvbnNlLnN0YXR1c0NvZGUgPSBzdGF0dXNDb2RlIHx8IDMwMTtcbiAgICAgIHRoaXMucmVzcG9uc2Uuc3RhdHVzTWVzc2FnZSA9IG1lc3NhZ2UgfHwgJ1JlZGlyZWNpb25hZG8gcGVybWFuZW50ZW1lbnRlJztcbiAgICAgIGlmICh1cmwpIHtcbiAgICAgICAgdGhpcy5yZXNwb25zZS5sb2NhbHNbJ3JlZGlyZWN0VXJsJ10gPSB1cmw7IC8vIFV0aWxpemFkbyBubyBzc3IgcGFyYSByZWRpcmVjdFxuICAgICAgfVxuICAgIH1cbiAgICByZXR1cm4gdGhpcztcbiAgfVxufVxuXG5leHBvcnQgdHlwZSBIdHRwQ2FjaGVEaXJlY3RpdmUgPSAncHVibGljJyB8ICdwcml2YXRlJyB8ICduby1zdG9yZScgfCAnbm8tY2FjaGUnIHwgJ211c3QtcmV2YWxpZGF0ZScgfCAnbm8tdHJhbnNmb3JtJyB8ICdwcm94eS1yZXZhbGlkYXRlJztcbiJdfQ==
@@ -161,10 +161,10 @@ export class SiteBackendService {
161
161
  url,
162
162
  });
163
163
  }
164
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.11", ngImport: i0, type: SiteBackendService, deps: [{ token: i1.HttpClientService }, { token: i2.LogService }, { token: LIB_CONFIG }, { token: PLATFORM_ID }], target: i0.ɵɵFactoryTarget.Injectable }); }
165
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.11", ngImport: i0, type: SiteBackendService, providedIn: 'root' }); }
164
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: SiteBackendService, deps: [{ token: i1.HttpClientService }, { token: i2.LogService }, { token: LIB_CONFIG }, { token: PLATFORM_ID }], target: i0.ɵɵFactoryTarget.Injectable }); }
165
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: SiteBackendService, providedIn: 'root' }); }
166
166
  }
167
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.11", ngImport: i0, type: SiteBackendService, decorators: [{
167
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: SiteBackendService, decorators: [{
168
168
  type: Injectable,
169
169
  args: [{
170
170
  providedIn: 'root',
@@ -176,4 +176,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.11", ngImpo
176
176
  type: Inject,
177
177
  args: [PLATFORM_ID]
178
178
  }] }] });
179
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2l0ZS1iYWNrLWVuZC5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc2l0ZS1mcm9udC1lbmQtbGliL3NyYy9saWIvc2VydmljZXMvc2l0ZS1iYWNrLWVuZC9zaXRlLWJhY2stZW5kLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUUsV0FBVyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ2hFLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ25ELE9BQU8sRUFBRSxVQUFVLEVBQWMsRUFBRSxFQUFFLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUMzRCxPQUFPLEVBQUUsVUFBVSxFQUFhLE1BQU0sd0JBQXdCLENBQUM7QUFDL0QsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLGtDQUFrQyxDQUFDO0FBb0JqRSxPQUFPLEtBQUssY0FBYyxNQUFNLDBCQUEwQixDQUFDO0FBQzNELE9BQU8sS0FBSyxrQkFBa0IsTUFBTSw4QkFBOEIsQ0FBQzs7OztBQUtuRSxNQUFNLE9BQU8sa0JBQWtCO0lBRzdCLFlBQ1UsaUJBQW9DLEVBQ3BDLEdBQWUsRUFDSyxTQUFvQixFQUNuQixVQUFrQjtRQUh2QyxzQkFBaUIsR0FBakIsaUJBQWlCLENBQW1CO1FBQ3BDLFFBQUcsR0FBSCxHQUFHLENBQVk7UUFDSyxjQUFTLEdBQVQsU0FBUyxDQUFXO1FBQ25CLGVBQVUsR0FBVixVQUFVLENBQVE7UUFFL0MsSUFBSSxDQUFDLFVBQVUsR0FBRyxJQUFJLENBQUMsU0FBUyxFQUFFLENBQUM7SUFDckMsQ0FBQztJQUVPLFNBQVM7UUFDZixJQUFJLGdCQUFnQixDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxJQUFJLENBQUMsU0FBUyxDQUFDLE1BQU0sRUFBRSxDQUFDO1lBQy9ELE9BQU8sSUFBSSxDQUFDLFNBQVMs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RCxXQUFXLENBQUMsUUFBZ0I7UUFDMUIsT0FBTyxJQUFJLENBQUMsaUJBQWlCLENBQUMsR0FBRyxDQUFDLEdBQUcsSUFBSSxDQUFDLFVBQVUsV0FBVyxRQUFRLEVBQUUsQ0FBQyxDQUFDO0lBQzdFLENBQUM7SUFFRCxvQkFBb0I7SUFDcEIsV0FBVyxDQUFDLGNBQXNCO1FBQ2hDLE9BQU8sSUFBSSxDQUFDLGlCQUFpQixDQUFDLEdBQUcsQ0FBQyxHQUFHLElBQUksQ0FBQyxVQUFVLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxPQUFPLENBQUMsYUFBYSxVQUFVLGNBQWMsRUFBRSxDQUFDLENBQUM7SUFDekgsQ0FBQztJQUVELFVBQVUsQ0FBQyxVQUFzQztRQUMvQyxPQUFPLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxJQUFJLENBQUMsR0FBRyxJQUFJLENBQUMsVUFBVSxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsT0FBTyxDQUFDLGFBQWEsRUFBRSxFQUFFLFVBQVUsQ0FBQyxDQUFDO0lBQzlHLENBQUM7SUFFRCxjQUFjLENBQUMsS0FBYSxFQUFFLE1BQWMsRUFBRSxHQUFXO1FBQ3ZELE9BQU8sSUFBSSxDQUFDLGlCQUFpQixDQUFDLElBQUksQ0FBQyxHQUFHLElBQUksQ0FBQyxVQUFVLFdBQVcsRUFBRTtZQUNoRSxLQUFLO1lBQ0wsTUFBTTtZQUNOLEdBQUc7U0FDSixDQUFDLENBQUM7SUFDTCxDQUFDOytHQXpOVSxrQkFBa0IsNkVBTW5CLFVBQVUsYUFDVixXQUFXO21IQVBWLGtCQUFrQixjQUZqQixNQUFNOzs0RkFFUCxrQkFBa0I7a0JBSDlCLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25COzswQkFPSSxNQUFNOzJCQUFDLFVBQVU7OzBCQUNqQixNQUFNOzJCQUFDLFdBQVciLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlLCBJbmplY3QsIFBMQVRGT1JNX0lEIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IGlzUGxhdGZvcm1TZXJ2ZXIgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xyXG5pbXBvcnQgeyBjYXRjaEVycm9yLCBPYnNlcnZhYmxlLCBvZiwgdGltZW91dCB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgeyBMSUJfQ09ORklHLCBMaWJDb25maWcgfSBmcm9tICcuLi8uLi90b2tlbnMvTGliQ29uZmlnJztcclxuaW1wb3J0IHsgdG9RdWVyeVBhcmFtcyB9IGZyb20gJy4uLy4uL2hlbHBlcnMvdG9RdWVyeVBhcmFtcy5mdW5jJztcclxuaW1wb3J0IHsgSHR0cENsaWVudFNlcnZpY2UgfSBmcm9tICcuLi9odHRwLWNsaWVudC9odHRwLWNsaWVudC5zZXJ2aWNlJztcclxuaW1wb3J0IHsgTG9nU2VydmljZSB9IGZyb20gJy4uL2xvZy9sb2cuc2VydmljZSc7XHJcblxyXG5pbXBvcnQgeyBSRFNMQ29udmVuaW8sIFJEU0xDb252ZW5pb1BhcmFtcyB9IGZyb20gJy4uLy4uL21vZGVscy9yZHNsLWNvbnZlbmlvLm1vZGVsJztcclxuaW1wb3J0IHsgUkRTTFBsYW5vLCBSRFNMUGxhbm9QYXJhbXMgfSBmcm9tICcuLi8uLi9tb2RlbHMvcmRzbC1wbGFub3MubW9kZWwnO1xyXG5pbXBvcnQgeyBSRFNMQ29iZXJ0dXJhLCBSRFNMQ29iZXJ0dXJhUGFyYW1zIH0gZnJvbSAnLi4vLi4vbW9kZWxzL3Jkc2wtY29iZXJ0dXJhLm1vZGVsJztcclxuaW1wb3J0IHsgUkRTTFVuaWRhZGUsIFJEU0xVbmlkYWRlc1BhcmFtcyB9IGZyb20gJy4uLy4uL21vZGVscy9yZHNsLXVuaWRhZGUubW9kZWwnO1xyXG5pbXBvcnQgeyBSRFNMRXNwZWNpYWxpZGFkZSwgUkRTTEVzcGVjaWFsaWRhZGVzUGFyYW1zIH0gZnJvbSAnLi4vLi4vbW9kZWxzL3Jkc2wtZXNwZWNpYWxpZGFkZS5tb2RlbCc7XHJcbmltcG9ydCB7IERvZW5jYUJhY2tlbmQgfSBmcm9tICcuLi8uLi9tb2RlbHMvZG9lbmNhLWJhY2tlbmQubW9kZWwnO1xyXG5pbXBvcnQgeyBUYXhvbm9taWFzRG9lbmNhc0xpc3QgfSBmcm9tICcuLi8uLi9tb2RlbHMvZG9lbmNhLXRheG9ub215Lm1vZGVsJztcclxuaW1wb3J0IHsgRXhhbWVBcGlEYWRvcywgRXhhbWVCYWNrZW5kIH0gZnJvbSAnLi4vLi4vbW9kZWxzL2V4YW1lLWJhY2tlbmQubW9kZWwnO1xyXG5pbXBvcnQgeyBFc3BlY2lhbGlkYWRlQmFja2VuZCwgRXNwZWNpYWxpZGFkZUdydXBvQmFja2VuZCB9IGZyb20gJy4uLy4uL21vZGVscy9lc3BlY2lhbGlkYWRlLWJhY2tlbmQubW9kZWwnO1xyXG5pbXBvcnQgeyBDZW50cm9Fc3R1ZG9zQmFja2VuZE1lZGljbyB9IGZyb20gJy4uLy4uL21vZGVscy9jZW50cm8tZXN0dWRvcy1iYWNrZW5kLm1vZGVsJztcclxuaW1wb3J0IHsgV3BVbmlkYWRlU2l0ZSB9IGZyb20gJy4uLy4uL21vZGVscy93b3JkcHJlc3MvdW5pZGFkZS93cC11bmlkYWRlLXNpdGUubW9kZWwnO1xyXG5pbXBvcnQgeyBXcFVuaWRhZGVPbmNvIH0gZnJvbSAnLi4vLi4vbW9kZWxzL3dvcmRwcmVzcy91bmlkYWRlL3dwLXVuaWRhZGUtb25jby5tb2RlbCc7XHJcbmltcG9ydCB7IFVuaWZpZWRNZW51IH0gZnJvbSAnLi4vLi4vbW9kZWxzL21lbnUtaXRlbS5tb2RlbCc7XHJcbmltcG9ydCB7IE1lZGljb0N2IH0gZnJvbSAnLi4vLi4vbW9kZWxzL21lZGljby1jdi5tb2RlbCc7XHJcbmltcG9ydCB7IE1lbnVEZVVuaWRhZGUgfSBmcm9tICcuLi8uLi9tb2RlbHMvbWVudS1kZS11bmlkYWRlLm1vZGVsJztcclxuXHJcbmltcG9ydCAqIGFzIHVuaWRhZGVzV3BNb2NrIGZyb20gJy4uLy4uL2pzb24vdW5pZGFkZXMuanNvbic7XHJcbmltcG9ydCAqIGFzIHVuaWRhZGVzT25jb1dwTW9jayBmcm9tICcuLi8uLi9qc29uL3VuaWRhZGVzT25jby5qc29uJztcclxuXHJcbkBJbmplY3RhYmxlKHtcclxuICBwcm92aWRlZEluOiAncm9vdCcsXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBTaXRlQmFja2VuZFNlcnZpY2Uge1xyXG4gIHNpdGVBcGlVcmw6IHN0cmluZztcclxuXHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBwcml2YXRlIGh0dHBDbGllbnRTZXJ2aWNlOiBIdHRwQ2xpZW50U2VydmljZSxcclxuICAgIHByaXZhdGUgbG9nOiBMb2dTZXJ2aWNlLFxyXG4gICAgQEluamVjdChMSUJfQ09ORklHKSBwcml2YXRlIGxpYkNvbmZpZzogTGliQ29uZmlnLFxyXG4gICAgQEluamVjdChQTEFURk9STV9JRCkgcHJpdmF0ZSBwbGF0Zm9ybUlkOiBvYmplY3QsXHJcbiAgKSB7XHJcbiAgICB0aGlzLnNpdGVBcGlVcmwgPSB0aGlzLmdldEFwaVVybCgpO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBnZXRBcGlVcmwoKTogc3RyaW5nIHtcclxuICAgIGlmIChpc1BsYXRmb3JtU2VydmVyKHRoaXMucGxhdGZvcm1JZCkgJiYgdGhpcy5saWJDb25maWcuc2VydmVyKSB7XHJcbiAgICAgIHJldHVybiB0aGlzLmxpYkNvbmZpZy5zaXRlQXBpLmJhc2VJbnRlcm5hbDtcclxuICAgIH1cclxuICAgIHJldHVybiB0aGlzLmxpYkNvbmZpZy5zaXRlQXBpLmJhc2U7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBHRVQgcGFyYSBxdWFscXVlciBlbmRwb2ludCBkbyBiYWNrLWVuZCBkbyBzaXRlLlxyXG4gICAqIEBwYXJhbSBwYXRoIC0gTyBjYW1pbmhvIGRvIHJlY3Vyc28uIChJbmljaWEgc2VtICcvJy4gRXg6ICd1bmlkYWRlcy93cCcpXHJcbiAgICogQHBhcmFtIHBhcmFtcyAtIFBhcsOibWV0cm9zIG9wY2lvbmFpcyBwYXJhIGEgcmVxdWlzacOnw6NvLlxyXG4gICAqIEByZXR1cm5zIE9ic2VydmFibGUgcXVlIGVtaXRlIG9zIGRhZG9zIHJldG9ybmFkb3MgcGVsbyBiYWNrLWVuZC5cclxuICAgKi9cclxuICBnZXQ8VCA9IGFueT4ocGF0aDogc3RyaW5nLCBwYXJhbXM/OiBhbnkpOiBPYnNlcnZhYmxlPFQ+IHtcclxuICAgIHJldHVybiB0aGlzLmh0dHBDbGllbnRTZXJ2aWNlLmdldDxUPihgJHt0aGlzLnNpdGVBcGlVcmx9JHtwYXRofSR7dG9RdWVyeVBhcmFtcyhwYXJhbXMpfWApO1xyXG4gIH1cclxuXHJcbiAgZ2V0VW5pZGFkZXMocGFyYW1zPzogUkRTTFVuaWRhZGVzUGFyYW1zKTogT2JzZXJ2YWJsZTxSRFNMVW5pZGFkZVtdPiB7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwQ2xpZW50U2VydmljZS5nZXQoYCR7dGhpcy5zaXRlQXBpVXJsfXVuaWRhZGVzJHt0b1F1ZXJ5UGFyYW1zKHBhcmFtcyl9YCk7XHJcbiAgfVxyXG5cclxuICBnZXRVbmlkYWRlc0xpc3QoKTogT2JzZXJ2YWJsZTxhbnk+IHtcclxuICAgIHJldHVybiB0aGlzLmh0dHBDbGllbnRTZXJ2aWNlLmdldChgJHt0aGlzLnNpdGVBcGlVcmx9dW5pZGFkZXMvbGlzdGFgKTtcclxuICB9XHJcblxyXG4gIGdldFVuaWRhZGVzV1AoKTogT2JzZXJ2YWJsZTxXcFVuaWRhZGVTaXRlW10+IHtcclxuICAgIHJldHVybiB0aGlzLmh0dHBDbGllbnRTZXJ2aWNlLmdldDxXcFVuaWRhZGVTaXRlW10+KGAke3RoaXMuc2l0ZUFwaVVybH11bmlkYWRlcy93cGApLnBpcGUoXHJcbiAgICAgIHRpbWVvdXQoMTUwMCksXHJcbiAgICAgIGNhdGNoRXJyb3IoKGVycikgPT4ge1xyXG4gICAgICAgIHRoaXMubG9nLmxvZ01zZyhKU09OLnN0cmluZ2lmeShlcnIpLCAnRVJST1InKTtcclxuICAgICAgICB0aGlzLmxvZy5sb2dNc2coJ1V0aWxpemFuZG8ganNvbiBkZSB1bmlkYWRlcyB3b3JkcHJlc3MuJywgJ0ZBTExCQUNLJyk7XHJcbiAgICAgICAgcmV0dXJuIG9mKEFycmF5LmZyb20odW5pZGFkZXNXcE1vY2spIGFzIHVua25vd24gYXMgV3BVbmlkYWRlU2l0ZVtdKTtcclxuICAgICAgfSksXHJcbiAgICApO1xyXG4gIH1cclxuXHJcbiAgZ2V0VW5pZGFkZXNNZW51c1dQKHVuaWRhZGVTbHVnID0gJycpOiBPYnNlcnZhYmxlPFVuaWZpZWRNZW51PiB7XHJcbiAgICBjb25zdCB1bmlkYWRlID0gdW5pZGFkZVNsdWcgJiYgdW5pZGFkZVNsdWcgIT09ICcvJyA/IHVuaWRhZGVTbHVnIDogJyc7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwQ2xpZW50U2VydmljZS5nZXQoYCR7dGhpcy5zaXRlQXBpVXJsfXVuaWRhZGVzL3dwL21lbnVzLyR7dW5pZGFkZX1gKTtcclxuICB9XHJcblxyXG4gIGdldFVuaWRhZGVzT25jb1dQKCk6IE9ic2VydmFibGU8V3BVbmlkYWRlT25jb1tdPiB7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwQ2xpZW50U2VydmljZS5nZXQ8V3BVbmlkYWRlT25jb1tdPihgJHt0aGlzLnNpdGVBcGlVcmx9dW5pZGFkZXMvd3Atb25jb2ApLnBpcGUoXHJcbiAgICAgIHRpbWVvdXQoMTUwMCksXHJcbiAgICAgIGNhdGNoRXJyb3IoKGVycikgPT4ge1xyXG4gICAgICAgIHRoaXMubG9nLmxvZ01zZyhKU09OLnN0cmluZ2lmeShlcnIpLCAnRVJST1InKTtcclxuICAgICAgICB0aGlzLmxvZy5sb2dNc2coJ1V0aWxpemFuZG8ganNvbiBkZSB1bmlkYWRlcyBvbmNvIHdvcmRwcmVzcy4nLCAnRkFMTEJBQ0snKTtcclxuICAgICAgICByZXR1cm4gb2YoQXJyYXkuZnJvbSh1bmlkYWRlc09uY29XcE1vY2spIGFzIHVua25vd24gYXMgV3BVbmlkYWRlT25jb1tdKTtcclxuICAgICAgfSksXHJcbiAgICApO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogUmV0b3JuYSBvICdtZW51IGRlIHVuaWRhZGVzJyBjb21wbGV0bywgYmFzZWFkbyBub3MgZGFkb3MgZGUgL3VuaWRhZGVzL3dwIGUgL3VuaWRhZGVzL3dwLW9uY28gZG8gYmFja2VuZC5cclxuICAgKiBpbmRleCAwID0+IHJlZGVkb3JcclxuICAgKiBpbmRleCAxID0+IG9uY29sb2dpYVxyXG4gICAqIGluZGV4IDIgPT4gc3RhclxyXG4gICAqKi9cclxuICBnZXRNZW51RGVVbmlkYWRlcygpOiBPYnNlcnZhYmxlPE1lbnVEZVVuaWRhZGVbXT4ge1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cENsaWVudFNlcnZpY2UuZ2V0PE1lbnVEZVVuaWRhZGVbXT4oYCR7dGhpcy5zaXRlQXBpVXJsfXVuaWRhZGVzL3dwL21lbnUtZGUtdW5pZGFkZXNgKTtcclxuICB9XHJcblxyXG4gIGdldENvbnZlbmlvcyhwYXJhbXM/OiBSRFNMQ29udmVuaW9QYXJhbXMpOiBPYnNlcnZhYmxlPFJEU0xDb252ZW5pb1tdPiB7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwQ2xpZW50U2VydmljZS5nZXQoYCR7dGhpcy5zaXRlQXBpVXJsfWNvbnZlbmlvcyR7dG9RdWVyeVBhcmFtcyhwYXJhbXMpfWApO1xyXG4gIH1cclxuXHJcbiAgZ2V0UGxhbm9zKHBhcmFtcz86IFJEU0xQbGFub1BhcmFtcyk6IE9ic2VydmFibGU8UkRTTFBsYW5vW10+IHtcclxuICAgIHJldHVybiB0aGlzLmh0dHBDbGllbnRTZXJ2aWNlLmdldChgJHt0aGlzLnNpdGVBcGlVcmx9cGxhbm9zJHt0b1F1ZXJ5UGFyYW1zKHBhcmFtcyl9YCk7XHJcbiAgfVxyXG5cclxuICBnZXRDb2JlcnR1cmFzKHBsYW5vSWRRZDogbnVtYmVyLCBwYXJhbXM/OiBSRFNMQ29iZXJ0dXJhUGFyYW1zKTogT2JzZXJ2YWJsZTxSRFNMQ29iZXJ0dXJhW10+IHtcclxuICAgIHJldHVybiB0aGlzLmh0dHBDbGllbnRTZXJ2aWNlLmdldChgJHt0aGlzLnNpdGVBcGlVcmx9cGxhbm9zLyR7cGxhbm9JZFFkfS9jb2JlcnR1cmEke3RvUXVlcnlQYXJhbXMocGFyYW1zKX1gKTtcclxuICB9XHJcblxyXG4gIGdldERvZW5jYXMoKTogT2JzZXJ2YWJsZTxEb2VuY2FCYWNrZW5kW10+IHtcclxuICAgIHJldHVybiB0aGlzLmh0dHBDbGllbnRTZXJ2aWNlLmdldChgJHt0aGlzLnNpdGVBcGlVcmx9ZG9lbmNhc2ApO1xyXG4gIH1cclxuXHJcbiAgZ2V0RG9lbmNhc1RheG9ub21pZXMoKSB7XHJcbiAgICBjb25zdCB1cmwgPSBgJHt0aGlzLnNpdGVBcGlVcmx9ZG9lbmNhcy90YXhvbm9taWFzYDtcclxuICAgIHJldHVybiB0aGlzLmh0dHBDbGllbnRTZXJ2aWNlLmdldDxUYXhvbm9taWFzRG9lbmNhc0xpc3Q+KHVybCk7XHJcbiAgfVxyXG5cclxuICBnZXREb2VuY2FzVW5pcXVlTGV0dGVycygpOiBPYnNlcnZhYmxlPHN0cmluZ1tdPiB7XHJcbiAgICBjb25zdCB1cmwgPSBgJHt0aGlzLnNpdGVBcGlVcmx9ZG9lbmNhcy9sZXR0ZXJzYDtcclxuICAgIHJldHVybiB0aGlzLmh0dHBDbGllbnRTZXJ2aWNlLmdldCh1cmwpO1xyXG4gIH1cclxuXHJcbiAgZ2V0VmFjaW5hcygpOiBPYnNlcnZhYmxlPGFueVtdPiB7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwQ2xpZW50U2VydmljZS5nZXQoYCR7dGhpcy5zaXRlQXBpVXJsfXZhY2luYXNgKTtcclxuICB9XHJcblxyXG4gIGdldFZhY2luYXNUYXhvbm9taWVzKCkge1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cENsaWVudFNlcnZpY2UuZ2V0KGAke3RoaXMuc2l0ZUFwaVVybH12YWNpbmFzL3RheG9ub21pYXNgKTtcclxuICB9XHJcblxyXG4gIGdldENpcnVyZ2lhcygpOiBPYnNlcnZhYmxlPGFueVtdPiB7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwQ2xpZW50U2VydmljZS5nZXQoYCR7dGhpcy5zaXRlQXBpVXJsfWNpcnVyZ2lhc2ApO1xyXG4gIH1cclxuXHJcbiAgZ2V0Q2lydXJnaWFzR3J1cG9zKCk6IE9ic2VydmFibGU8YW55W10+IHtcclxuICAgIHJldHVybiB0aGlzLmh0dHBDbGllbnRTZXJ2aWNlLmdldChgJHt0aGlzLnNpdGVBcGlVcmx9Y2lydXJnaWFzL2dydXBvc2ApO1xyXG4gIH1cclxuXHJcbiAgZ2V0Q2lydXJnaWFzVGF4b25vbWllcygpOiBPYnNlcnZhYmxlPGFueVtdPiB7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwQ2xpZW50U2VydmljZS5nZXQoYCR7dGhpcy5zaXRlQXBpVXJsfWNpcnVyZ2lhcy90YXhvbm9taWFzYCk7XHJcbiAgfVxyXG5cclxuICBnZXRFeGFtZXNMaXN0KGxpc3RhRGFVbmlkYWRlOiBib29sZWFuLCB1bmlkYWRlU2x1Zzogc3RyaW5nLCB1bmlkYWRlSWRRZDogc3RyaW5nLCB1bmlkYWRlSWRNb3Rpb246IHN0cmluZywgdW5pZGFkZUlkTG9jYWw6IHN0cmluZyk6IE9ic2VydmFibGU8YW55PiB7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwQ2xpZW50U2VydmljZS5nZXQoXHJcbiAgICAgIGAke3RoaXMuc2l0ZUFwaVVybH1leGFtZXMtZS1wcm9jZWRpbWVudG9zL2xpc3RhP2xpc3RhRGFVbmlkYWRlPSR7bGlzdGFEYVVuaWRhZGV9JnVuaWRhZGVTbHVnPSR7dW5pZGFkZVNsdWd9JnVuaWRhZGVJZFFkPSR7dW5pZGFkZUlkUWR9JnVuaWRhZGVJZE1vdGlvbj0ke3VuaWRhZGVJZE1vdGlvbn0mdW5pZGFkZUlkTG9jYWw9JHt1bmlkYWRlSWRMb2NhbH1gLFxyXG4gICAgKTtcclxuICB9XHJcblxyXG4gIGdldEV4YW1lRGV0YWlscyhcclxuICAgIHVuaWRhZGVQb3NzdWlFeGFtZXM6IGJvb2xlYW4sXHJcbiAgICB1bmlkYWRlU2x1Zzogc3RyaW5nLFxyXG4gICAgdW5pZGFkZUlkUWQ6IHN0cmluZyxcclxuICAgIHVuaWRhZGVJZE1vdGlvbjogc3RyaW5nLFxyXG4gICAgdW5pZGFkZUlkTG9jYWw6IHN0cmluZyxcclxuICAgIGdydXBvU2x1Zzogc3RyaW5nLFxyXG4gICAgZXhhbWVTbHVnOiBzdHJpbmcsXHJcbiAgKTogT2JzZXJ2YWJsZTxhbnk+IHtcclxuICAgIHJldHVybiB0aGlzLmh0dHBDbGllbnRTZXJ2aWNlLmdldChcclxuICAgICAgYCR7dGhpcy5zaXRlQXBpVXJsfWV4YW1lcy1lLXByb2NlZGltZW50b3MvZGV0YWxoZXM/dW5pZGFkZVBvc3N1aUV4YW1lcz0ke3VuaWRhZGVQb3NzdWlFeGFtZXN9JnVuaWRhZGVTbHVnPSR7dW5pZGFkZVNsdWd9JnVuaWRhZGVJZFFkPSR7dW5pZGFkZUlkUWR9JnVuaWRhZGVJZE1vdGlvbj0ke3VuaWRhZGVJZE1vdGlvbn0mdW5pZGFkZUlkTG9jYWw9JHt1bmlkYWRlSWRMb2NhbH0mZ3J1cG9TbHVnPSR7Z3J1cG9TbHVnfSZleGFtZVNsdWc9JHtleGFtZVNsdWd9YCxcclxuICAgICk7XHJcbiAgfVxyXG5cclxuICBnZXRHcnVwb3NFeGFtZXModW5pZGFkZVNsdWc6IHN0cmluZyk6IE9ic2VydmFibGU8RXhhbWVCYWNrZW5kW10+IHtcclxuICAgIGNvbnN0IHNsdWcgPSB1bmlkYWRlU2x1ZyA/PyAnLyc7XHJcbiAgICBjb25zdCBwYXJhbXMgPSBzbHVnID8gYD91bmlkYWRlPSR7c2x1Z31gIDogJyc7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwQ2xpZW50U2VydmljZS5nZXQoYCR7dGhpcy5zaXRlQXBpVXJsfWV4YW1lcy1lLXByb2NlZGltZW50b3Mke3BhcmFtc31gKTtcclxuICB9XHJcblxyXG4gIGdldEV4YW1lc0J5R3J1cG8odW5pZGFkZVNsdWc6IHN0cmluZywgc2x1Z0dydXBvOiBzdHJpbmcpOiBPYnNlcnZhYmxlPEV4YW1lQmFja2VuZFtdPiB7XHJcbiAgICBjb25zdCBzbHVnID0gdW5pZGFkZVNsdWcgPz8gJy8nO1xyXG4gICAgY29uc3QgcGFyYW1zID0gYD91bmlkYWRlPSR7c2x1Z30mc2x1Z0dydXBvPSR7c2x1Z0dydXBvfWA7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwQ2xpZW50U2VydmljZS5nZXQoYCR7dGhpcy5zaXRlQXBpVXJsfWV4YW1lcy1lLXByb2NlZGltZW50b3MvZ3J1cG8ke3BhcmFtc31gKTtcclxuICB9XHJcblxyXG4gIGdldEV4YW1lc0J5VW5pZGFkZSh1bmlkYWRlSWQ6IHN0cmluZyk6IE9ic2VydmFibGU8c3RyaW5nW10+IHtcclxuICAgIGNvbnN0IHBhcmFtcyA9IGA/dW5pdElkPSR7dW5pZGFkZUlkfWA7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwQ2xpZW50U2VydmljZS5nZXQoYCR7dGhpcy5zaXRlQXBpVXJsfWV4YW1lcy1lLXByb2NlZGltZW50b3MvdW5pZGFkZSR7cGFyYW1zfWApO1xyXG4gIH1cclxuXHJcbiAgZ2V0RXhhbWVzQXBpRGFkb3MoKTogT2JzZXJ2YWJsZTxFeGFtZUFwaURhZG9zW10+IHtcclxuICAgIHJldHVybiB0aGlzLmh0dHBDbGllbnRTZXJ2aWNlLmdldChgJHt0aGlzLnNpdGVBcGlVcmx9ZXhhbWVzLWUtcHJvY2VkaW1lbnRvcy9hcGktZGFkb3NgKTtcclxuICB9XHJcblxyXG4gIGdldEVzcGVjaWFsaWRhZGVzTGlzdChcclxuICAgIGxpc3RhRGFVbmlkYWRlOiBib29sZWFuLFxyXG4gICAgdW5pZGFkZVNsdWc6IHN0cmluZyxcclxuICAgIHVuaWRhZGVQb3NzdWlBZ2VuZGFtZW50bzogYm9vbGVhbixcclxuICAgIHVuaWRhZGVJZENvbnN1bHRhczogc3RyaW5nLFxyXG4gICAgdW5pZGFkZUlkTW90aW9uOiBzdHJpbmcsXHJcbiAgICB1bmlkYWRlSWRMb2NhbDogc3RyaW5nLFxyXG4gICk6IE9ic2VydmFibGU8YW55PiB7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwQ2xpZW50U2VydmljZS5nZXQoXHJcbiAgICAgIGAke3RoaXMuc2l0ZUFwaVVybH1lc3BlY2lhbGlkYWRlcy9saXN0YT9saXN0YURhVW5pZGFkZT0ke2xpc3RhRGFVbmlkYWRlfSZ1bmlkYWRlU2x1Zz0ke3VuaWRhZGVTbHVnfSZ1bmlkYWRlUG9zc3VpQWdlbmRhbWVudG89JHt1bmlkYWRlUG9zc3VpQWdlbmRhbWVudG99JnVuaWRhZGVJZENvbnN1bHRhcz0ke3VuaWRhZGVJZENvbnN1bHRhc30mdW5pZGFkZUlkTW90aW9uPSR7dW5pZGFkZUlkTW90aW9ufSZ1bmlkYWRlSWRMb2NhbD0ke3VuaWRhZGVJZExvY2FsfWAsXHJcbiAgICApO1xyXG4gIH1cclxuXHJcbiAgZ2V0R3J1cG9zRXNwZWNpYWxpZGFkZXModW5pZGFkZVNsdWc/OiBzdHJpbmcpOiBPYnNlcnZhYmxlPEVzcGVjaWFsaWRhZGVHcnVwb0JhY2tlbmRbXT4ge1xyXG4gICAgY29uc3QgcGFyYW1zID0gdW5pZGFkZVNsdWcgPyBgP3VuaWRhZGU9JHt1bmlkYWRlU2x1Z31gIDogJyc7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwQ2xpZW50U2VydmljZS5nZXQoYCR7dGhpcy5zaXRlQXBpVXJsfWVzcGVjaWFsaWRhZGVzJHtwYXJhbXN9YCk7XHJcbiAgfVxyXG5cclxuICBnZXRFc3BlY2lhbGlkYWRlc0J5R3J1cG8odGl0dWxvR3J1cG86IHN0cmluZywgdW5pZGFkZVNsdWc/OiBzdHJpbmcpOiBPYnNlcnZhYmxlPEVzcGVjaWFsaWRhZGVCYWNrZW5kW10+IHtcclxuICAgIGNvbnN0IHRpdHVsbyA9IGA/dGl0dWxvR3J1cG89JHtlbmNvZGVVUkkodGl0dWxvR3J1cG8pfWA7XHJcbiAgICBjb25zdCBzbHVnID0gdW5pZGFkZVNsdWcgPyBgJnVuaWRhZGU9JHt1bmlkYWRlU2x1Z31gIDogJyc7XHJcbiAgICBjb25zdCBwYXJhbXMgPSBgJHt0aXR1bG99JHtzbHVnfWA7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwQ2xpZW50U2VydmljZS5nZXQoYCR7dGhpcy5zaXRlQXBpVXJsfWVzcGVjaWFsaWRhZGVzL2dydXBvJHtwYXJhbXN9YCk7XHJcbiAgfVxyXG5cclxuICBnZXRFc3BlY2lhbGlkYWRlc0RxKHBhcmFtcz86IFJEU0xFc3BlY2lhbGlkYWRlc1BhcmFtcyk6IE9ic2VydmFibGU8UkRTTEVzcGVjaWFsaWRhZGVbXT4ge1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cENsaWVudFNlcnZpY2UuZ2V0KGAke3RoaXMuc2l0ZUFwaVVybH1lc3BlY2lhbGlkYWRlcy9lc3BlY2lhbGlkYWRlcy1kcSR7dG9RdWVyeVBhcmFtcyhwYXJhbXMpfWApO1xyXG4gIH1cclxuXHJcbiAgZ2V0R3J1cG9zRXNwZWNpYWxpZGFkZXNEcShwYXJhbXM/OiBSRFNMRXNwZWNpYWxpZGFkZXNQYXJhbXMpOiBPYnNlcnZhYmxlPFJEU0xFc3BlY2lhbGlkYWRlW10+IHtcclxuICAgIHJldHVybiB0aGlzLmh0dHBDbGllbnRTZXJ2aWNlLmdldChgJHt0aGlzLnNpdGVBcGlVcmx9ZXNwZWNpYWxpZGFkZXMvZ3J1cG9zLWRxJHt0b1F1ZXJ5UGFyYW1zKHBhcmFtcyl9YCk7XHJcbiAgfVxyXG5cclxuICBnZXRSZWNhcHRjaGFSZXN1bHQodG9rZW46IHN0cmluZyk6IE9ic2VydmFibGU8YW55PiB7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwQ2xpZW50U2VydmljZS5wb3N0KGAke3RoaXMuc2l0ZUFwaVVybH0ke3RoaXMubGliQ29uZmlnLnNpdGVBcGkucmVjYXB0Y2hhfWAsIHsgdG9rZW4gfSk7XHJcbiAgfVxyXG5cclxuICBnZXRNZWRpY29DdihtZWRpY29JZDogbnVtYmVyKTogT2JzZXJ2YWJsZTxNZWRpY29Ddj4ge1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cENsaWVudFNlcnZpY2UuZ2V0KGAke3RoaXMuc2l0ZUFwaVVybH1tZWRpY29zLyR7bWVkaWNvSWR9YCk7XHJcbiAgfVxyXG5cclxuICAvLyBDZW50cm8gZGUgRXN0dWRvc1xyXG4gIGNoZWNrTWVkaWNvKGNvbnNlbGhvQ29kaWdvOiBzdHJpbmcpOiBPYnNlcnZhYmxlPGFueT4ge1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cENsaWVudFNlcnZpY2UuZ2V0KGAke3RoaXMuc2l0ZUFwaVVybH0ke3RoaXMubGliQ29uZmlnLnNpdGVBcGkuY2VudHJvRXN0dWRvc30/ZW1haWw9JHtjb25zZWxob0NvZGlnb31gKTtcclxuICB9XHJcblxyXG4gIHNhdmVNZWRpY28obm92b01lZGljbzogQ2VudHJvRXN0dWRvc0JhY2tlbmRNZWRpY28pOiBPYnNlcnZhYmxlPENlbnRyb0VzdHVkb3NCYWNrZW5kTWVkaWNvPiB7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwQ2xpZW50U2VydmljZS5wb3N0KGAke3RoaXMuc2l0ZUFwaVVybH0ke3RoaXMubGliQ29uZmlnLnNpdGVBcGkuY2VudHJvRXN0dWRvc31gLCBub3ZvTWVkaWNvKTtcclxuICB9XHJcblxyXG4gIGxvZ0NsaWVudEVycm9yKGVycm9yOiBzdHJpbmcsIG9yaWdpbjogc3RyaW5nLCB1cmw6IHN0cmluZykge1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cENsaWVudFNlcnZpY2UucG9zdChgJHt0aGlzLnNpdGVBcGlVcmx9bG9nL2Vycm9yYCwge1xyXG4gICAgICBlcnJvcixcclxuICAgICAgb3JpZ2luLFxyXG4gICAgICB1cmwsXHJcbiAgICB9KTtcclxuICB9XHJcbn1cclxuIl19
179
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2l0ZS1iYWNrLWVuZC5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc2l0ZS1mcm9udC1lbmQtbGliL3NyYy9saWIvc2VydmljZXMvc2l0ZS1iYWNrLWVuZC9zaXRlLWJhY2stZW5kLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUUsV0FBVyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ2hFLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ25ELE9BQU8sRUFBRSxVQUFVLEVBQWMsRUFBRSxFQUFFLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUMzRCxPQUFPLEVBQUUsVUFBVSxFQUFhLE1BQU0sd0JBQXdCLENBQUM7QUFDL0QsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLGtDQUFrQyxDQUFDO0FBb0JqRSxPQUFPLEtBQUssY0FBYyxNQUFNLDBCQUEwQixDQUFDO0FBQzNELE9BQU8sS0FBSyxrQkFBa0IsTUFBTSw4QkFBOEIsQ0FBQzs7OztBQUtuRSxNQUFNLE9BQU8sa0JBQWtCO0lBRzdCLFlBQ1UsaUJBQW9DLEVBQ3BDLEdBQWUsRUFDSyxTQUFvQixFQUNuQixVQUFrQjtRQUh2QyxzQkFBaUIsR0FBakIsaUJBQWlCLENBQW1CO1FBQ3BDLFFBQUcsR0FBSCxHQUFHLENBQVk7UUFDSyxjQUFTLEdBQVQsU0FBUyxDQUFXO1FBQ25CLGVBQVUsR0FBVixVQUFVLENBQVE7UUFFL0MsSUFBSSxDQUFDLFVBQVUsR0FBRyxJQUFJLENBQUMsU0FBUyxFQUFFLENBQUM7SUFDckMsQ0FBQztJQUVPLFNBQVM7UUFDZixJQUFJLGdCQUFnQixDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxJQUFJLENBQUMsU0FBUyxDQUFDLE1BQU0sRUFBRSxDQUFDO1lBQy9ELE9BQU8sSUFBSSxDQUFDLFNBQVMs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RCxXQUFXLENBQUMsUUFBZ0I7UUFDMUIsT0FBTyxJQUFJLENBQUMsaUJBQWlCLENBQUMsR0FBRyxDQUFDLEdBQUcsSUFBSSxDQUFDLFVBQVUsV0FBVyxRQUFRLEVBQUUsQ0FBQyxDQUFDO0lBQzdFLENBQUM7SUFFRCxvQkFBb0I7SUFDcEIsV0FBVyxDQUFDLGNBQXNCO1FBQ2hDLE9BQU8sSUFBSSxDQUFDLGlCQUFpQixDQUFDLEdBQUcsQ0FBQyxHQUFHLElBQUksQ0FBQyxVQUFVLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxPQUFPLENBQUMsYUFBYSxVQUFVLGNBQWMsRUFBRSxDQUFDLENBQUM7SUFDekgsQ0FBQztJQUVELFVBQVUsQ0FBQyxVQUFzQztRQUMvQyxPQUFPLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxJQUFJLENBQUMsR0FBRyxJQUFJLENBQUMsVUFBVSxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsT0FBTyxDQUFDLGFBQWEsRUFBRSxFQUFFLFVBQVUsQ0FBQyxDQUFDO0lBQzlHLENBQUM7SUFFRCxjQUFjLENBQUMsS0FBYSxFQUFFLE1BQWMsRUFBRSxHQUFXO1FBQ3ZELE9BQU8sSUFBSSxDQUFDLGlCQUFpQixDQUFDLElBQUksQ0FBQyxHQUFHLElBQUksQ0FBQyxVQUFVLFdBQVcsRUFBRTtZQUNoRSxLQUFLO1lBQ0wsTUFBTTtZQUNOLEdBQUc7U0FDSixDQUFDLENBQUM7SUFDTCxDQUFDOytHQXpOVSxrQkFBa0IsNkVBTW5CLFVBQVUsYUFDVixXQUFXO21IQVBWLGtCQUFrQixjQUZqQixNQUFNOzs0RkFFUCxrQkFBa0I7a0JBSDlCLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25COzswQkFPSSxNQUFNOzJCQUFDLFVBQVU7OzBCQUNqQixNQUFNOzJCQUFDLFdBQVciLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlLCBJbmplY3QsIFBMQVRGT1JNX0lEIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBpc1BsYXRmb3JtU2VydmVyIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IGNhdGNoRXJyb3IsIE9ic2VydmFibGUsIG9mLCB0aW1lb3V0IH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBMSUJfQ09ORklHLCBMaWJDb25maWcgfSBmcm9tICcuLi8uLi90b2tlbnMvTGliQ29uZmlnJztcbmltcG9ydCB7IHRvUXVlcnlQYXJhbXMgfSBmcm9tICcuLi8uLi9oZWxwZXJzL3RvUXVlcnlQYXJhbXMuZnVuYyc7XG5pbXBvcnQgeyBIdHRwQ2xpZW50U2VydmljZSB9IGZyb20gJy4uL2h0dHAtY2xpZW50L2h0dHAtY2xpZW50LnNlcnZpY2UnO1xuaW1wb3J0IHsgTG9nU2VydmljZSB9IGZyb20gJy4uL2xvZy9sb2cuc2VydmljZSc7XG5cbmltcG9ydCB7IFJEU0xDb252ZW5pbywgUkRTTENvbnZlbmlvUGFyYW1zIH0gZnJvbSAnLi4vLi4vbW9kZWxzL3Jkc2wtY29udmVuaW8ubW9kZWwnO1xuaW1wb3J0IHsgUkRTTFBsYW5vLCBSRFNMUGxhbm9QYXJhbXMgfSBmcm9tICcuLi8uLi9tb2RlbHMvcmRzbC1wbGFub3MubW9kZWwnO1xuaW1wb3J0IHsgUkRTTENvYmVydHVyYSwgUkRTTENvYmVydHVyYVBhcmFtcyB9IGZyb20gJy4uLy4uL21vZGVscy9yZHNsLWNvYmVydHVyYS5tb2RlbCc7XG5pbXBvcnQgeyBSRFNMVW5pZGFkZSwgUkRTTFVuaWRhZGVzUGFyYW1zIH0gZnJvbSAnLi4vLi4vbW9kZWxzL3Jkc2wtdW5pZGFkZS5tb2RlbCc7XG5pbXBvcnQgeyBSRFNMRXNwZWNpYWxpZGFkZSwgUkRTTEVzcGVjaWFsaWRhZGVzUGFyYW1zIH0gZnJvbSAnLi4vLi4vbW9kZWxzL3Jkc2wtZXNwZWNpYWxpZGFkZS5tb2RlbCc7XG5pbXBvcnQgeyBEb2VuY2FCYWNrZW5kIH0gZnJvbSAnLi4vLi4vbW9kZWxzL2RvZW5jYS1iYWNrZW5kLm1vZGVsJztcbmltcG9ydCB7IFRheG9ub21pYXNEb2VuY2FzTGlzdCB9IGZyb20gJy4uLy4uL21vZGVscy9kb2VuY2EtdGF4b25vbXkubW9kZWwnO1xuaW1wb3J0IHsgRXhhbWVBcGlEYWRvcywgRXhhbWVCYWNrZW5kIH0gZnJvbSAnLi4vLi4vbW9kZWxzL2V4YW1lLWJhY2tlbmQubW9kZWwnO1xuaW1wb3J0IHsgRXNwZWNpYWxpZGFkZUJhY2tlbmQsIEVzcGVjaWFsaWRhZGVHcnVwb0JhY2tlbmQgfSBmcm9tICcuLi8uLi9tb2RlbHMvZXNwZWNpYWxpZGFkZS1iYWNrZW5kLm1vZGVsJztcbmltcG9ydCB7IENlbnRyb0VzdHVkb3NCYWNrZW5kTWVkaWNvIH0gZnJvbSAnLi4vLi4vbW9kZWxzL2NlbnRyby1lc3R1ZG9zLWJhY2tlbmQubW9kZWwnO1xuaW1wb3J0IHsgV3BVbmlkYWRlU2l0ZSB9IGZyb20gJy4uLy4uL21vZGVscy93b3JkcHJlc3MvdW5pZGFkZS93cC11bmlkYWRlLXNpdGUubW9kZWwnO1xuaW1wb3J0IHsgV3BVbmlkYWRlT25jbyB9IGZyb20gJy4uLy4uL21vZGVscy93b3JkcHJlc3MvdW5pZGFkZS93cC11bmlkYWRlLW9uY28ubW9kZWwnO1xuaW1wb3J0IHsgVW5pZmllZE1lbnUgfSBmcm9tICcuLi8uLi9tb2RlbHMvbWVudS1pdGVtLm1vZGVsJztcbmltcG9ydCB7IE1lZGljb0N2IH0gZnJvbSAnLi4vLi4vbW9kZWxzL21lZGljby1jdi5tb2RlbCc7XG5pbXBvcnQgeyBNZW51RGVVbmlkYWRlIH0gZnJvbSAnLi4vLi4vbW9kZWxzL21lbnUtZGUtdW5pZGFkZS5tb2RlbCc7XG5cbmltcG9ydCAqIGFzIHVuaWRhZGVzV3BNb2NrIGZyb20gJy4uLy4uL2pzb24vdW5pZGFkZXMuanNvbic7XG5pbXBvcnQgKiBhcyB1bmlkYWRlc09uY29XcE1vY2sgZnJvbSAnLi4vLi4vanNvbi91bmlkYWRlc09uY28uanNvbic7XG5cbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnLFxufSlcbmV4cG9ydCBjbGFzcyBTaXRlQmFja2VuZFNlcnZpY2Uge1xuICBzaXRlQXBpVXJsOiBzdHJpbmc7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBodHRwQ2xpZW50U2VydmljZTogSHR0cENsaWVudFNlcnZpY2UsXG4gICAgcHJpdmF0ZSBsb2c6IExvZ1NlcnZpY2UsXG4gICAgQEluamVjdChMSUJfQ09ORklHKSBwcml2YXRlIGxpYkNvbmZpZzogTGliQ29uZmlnLFxuICAgIEBJbmplY3QoUExBVEZPUk1fSUQpIHByaXZhdGUgcGxhdGZvcm1JZDogb2JqZWN0LFxuICApIHtcbiAgICB0aGlzLnNpdGVBcGlVcmwgPSB0aGlzLmdldEFwaVVybCgpO1xuICB9XG5cbiAgcHJpdmF0ZSBnZXRBcGlVcmwoKTogc3RyaW5nIHtcbiAgICBpZiAoaXNQbGF0Zm9ybVNlcnZlcih0aGlzLnBsYXRmb3JtSWQpICYmIHRoaXMubGliQ29uZmlnLnNlcnZlcikge1xuICAgICAgcmV0dXJuIHRoaXMubGliQ29uZmlnLnNpdGVBcGkuYmFzZUludGVybmFsO1xuICAgIH1cbiAgICByZXR1cm4gdGhpcy5saWJDb25maWcuc2l0ZUFwaS5iYXNlO1xuICB9XG5cbiAgLyoqXG4gICAqIEdFVCBwYXJhIHF1YWxxdWVyIGVuZHBvaW50IGRvIGJhY2stZW5kIGRvIHNpdGUuXG4gICAqIEBwYXJhbSBwYXRoIC0gTyBjYW1pbmhvIGRvIHJlY3Vyc28uIChJbmljaWEgc2VtICcvJy4gRXg6ICd1bmlkYWRlcy93cCcpXG4gICAqIEBwYXJhbSBwYXJhbXMgLSBQYXLDom1ldHJvcyBvcGNpb25haXMgcGFyYSBhIHJlcXVpc2nDp8Ojby5cbiAgICogQHJldHVybnMgT2JzZXJ2YWJsZSBxdWUgZW1pdGUgb3MgZGFkb3MgcmV0b3JuYWRvcyBwZWxvIGJhY2stZW5kLlxuICAgKi9cbiAgZ2V0PFQgPSBhbnk+KHBhdGg6IHN0cmluZywgcGFyYW1zPzogYW55KTogT2JzZXJ2YWJsZTxUPiB7XG4gICAgcmV0dXJuIHRoaXMuaHR0cENsaWVudFNlcnZpY2UuZ2V0PFQ+KGAke3RoaXMuc2l0ZUFwaVVybH0ke3BhdGh9JHt0b1F1ZXJ5UGFyYW1zKHBhcmFtcyl9YCk7XG4gIH1cblxuICBnZXRVbmlkYWRlcyhwYXJhbXM/OiBSRFNMVW5pZGFkZXNQYXJhbXMpOiBPYnNlcnZhYmxlPFJEU0xVbmlkYWRlW10+IHtcbiAgICByZXR1cm4gdGhpcy5odHRwQ2xpZW50U2VydmljZS5nZXQoYCR7dGhpcy5zaXRlQXBpVXJsfXVuaWRhZGVzJHt0b1F1ZXJ5UGFyYW1zKHBhcmFtcyl9YCk7XG4gIH1cblxuICBnZXRVbmlkYWRlc0xpc3QoKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICByZXR1cm4gdGhpcy5odHRwQ2xpZW50U2VydmljZS5nZXQoYCR7dGhpcy5zaXRlQXBpVXJsfXVuaWRhZGVzL2xpc3RhYCk7XG4gIH1cblxuICBnZXRVbmlkYWRlc1dQKCk6IE9ic2VydmFibGU8V3BVbmlkYWRlU2l0ZVtdPiB7XG4gICAgcmV0dXJuIHRoaXMuaHR0cENsaWVudFNlcnZpY2UuZ2V0PFdwVW5pZGFkZVNpdGVbXT4oYCR7dGhpcy5zaXRlQXBpVXJsfXVuaWRhZGVzL3dwYCkucGlwZShcbiAgICAgIHRpbWVvdXQoMTUwMCksXG4gICAgICBjYXRjaEVycm9yKChlcnIpID0+IHtcbiAgICAgICAgdGhpcy5sb2cubG9nTXNnKEpTT04uc3RyaW5naWZ5KGVyciksICdFUlJPUicpO1xuICAgICAgICB0aGlzLmxvZy5sb2dNc2coJ1V0aWxpemFuZG8ganNvbiBkZSB1bmlkYWRlcyB3b3JkcHJlc3MuJywgJ0ZBTExCQUNLJyk7XG4gICAgICAgIHJldHVybiBvZihBcnJheS5mcm9tKHVuaWRhZGVzV3BNb2NrKSBhcyB1bmtub3duIGFzIFdwVW5pZGFkZVNpdGVbXSk7XG4gICAgICB9KSxcbiAgICApO1xuICB9XG5cbiAgZ2V0VW5pZGFkZXNNZW51c1dQKHVuaWRhZGVTbHVnID0gJycpOiBPYnNlcnZhYmxlPFVuaWZpZWRNZW51PiB7XG4gICAgY29uc3QgdW5pZGFkZSA9IHVuaWRhZGVTbHVnICYmIHVuaWRhZGVTbHVnICE9PSAnLycgPyB1bmlkYWRlU2x1ZyA6ICcnO1xuICAgIHJldHVybiB0aGlzLmh0dHBDbGllbnRTZXJ2aWNlLmdldChgJHt0aGlzLnNpdGVBcGlVcmx9dW5pZGFkZXMvd3AvbWVudXMvJHt1bmlkYWRlfWApO1xuICB9XG5cbiAgZ2V0VW5pZGFkZXNPbmNvV1AoKTogT2JzZXJ2YWJsZTxXcFVuaWRhZGVPbmNvW10+IHtcbiAgICByZXR1cm4gdGhpcy5odHRwQ2xpZW50U2VydmljZS5nZXQ8V3BVbmlkYWRlT25jb1tdPihgJHt0aGlzLnNpdGVBcGlVcmx9dW5pZGFkZXMvd3Atb25jb2ApLnBpcGUoXG4gICAgICB0aW1lb3V0KDE1MDApLFxuICAgICAgY2F0Y2hFcnJvcigoZXJyKSA9PiB7XG4gICAgICAgIHRoaXMubG9nLmxvZ01zZyhKU09OLnN0cmluZ2lmeShlcnIpLCAnRVJST1InKTtcbiAgICAgICAgdGhpcy5sb2cubG9nTXNnKCdVdGlsaXphbmRvIGpzb24gZGUgdW5pZGFkZXMgb25jbyB3b3JkcHJlc3MuJywgJ0ZBTExCQUNLJyk7XG4gICAgICAgIHJldHVybiBvZihBcnJheS5mcm9tKHVuaWRhZGVzT25jb1dwTW9jaykgYXMgdW5rbm93biBhcyBXcFVuaWRhZGVPbmNvW10pO1xuICAgICAgfSksXG4gICAgKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBSZXRvcm5hIG8gJ21lbnUgZGUgdW5pZGFkZXMnIGNvbXBsZXRvLCBiYXNlYWRvIG5vcyBkYWRvcyBkZSAvdW5pZGFkZXMvd3AgZSAvdW5pZGFkZXMvd3Atb25jbyBkbyBiYWNrZW5kLlxuICAgKiBpbmRleCAwID0+IHJlZGVkb3JcbiAgICogaW5kZXggMSA9PiBvbmNvbG9naWFcbiAgICogaW5kZXggMiA9PiBzdGFyXG4gICAqKi9cbiAgZ2V0TWVudURlVW5pZGFkZXMoKTogT2JzZXJ2YWJsZTxNZW51RGVVbmlkYWRlW10+IHtcbiAgICByZXR1cm4gdGhpcy5odHRwQ2xpZW50U2VydmljZS5nZXQ8TWVudURlVW5pZGFkZVtdPihgJHt0aGlzLnNpdGVBcGlVcmx9dW5pZGFkZXMvd3AvbWVudS1kZS11bmlkYWRlc2ApO1xuICB9XG5cbiAgZ2V0Q29udmVuaW9zKHBhcmFtcz86IFJEU0xDb252ZW5pb1BhcmFtcyk6IE9ic2VydmFibGU8UkRTTENvbnZlbmlvW10+IHtcbiAgICByZXR1cm4gdGhpcy5odHRwQ2xpZW50U2VydmljZS5nZXQoYCR7dGhpcy5zaXRlQXBpVXJsfWNvbnZlbmlvcyR7dG9RdWVyeVBhcmFtcyhwYXJhbXMpfWApO1xuICB9XG5cbiAgZ2V0UGxhbm9zKHBhcmFtcz86IFJEU0xQbGFub1BhcmFtcyk6IE9ic2VydmFibGU8UkRTTFBsYW5vW10+IHtcbiAgICByZXR1cm4gdGhpcy5odHRwQ2xpZW50U2VydmljZS5nZXQoYCR7dGhpcy5zaXRlQXBpVXJsfXBsYW5vcyR7dG9RdWVyeVBhcmFtcyhwYXJhbXMpfWApO1xuICB9XG5cbiAgZ2V0Q29iZXJ0dXJhcyhwbGFub0lkUWQ6IG51bWJlciwgcGFyYW1zPzogUkRTTENvYmVydHVyYVBhcmFtcyk6IE9ic2VydmFibGU8UkRTTENvYmVydHVyYVtdPiB7XG4gICAgcmV0dXJuIHRoaXMuaHR0cENsaWVudFNlcnZpY2UuZ2V0KGAke3RoaXMuc2l0ZUFwaVVybH1wbGFub3MvJHtwbGFub0lkUWR9L2NvYmVydHVyYSR7dG9RdWVyeVBhcmFtcyhwYXJhbXMpfWApO1xuICB9XG5cbiAgZ2V0RG9lbmNhcygpOiBPYnNlcnZhYmxlPERvZW5jYUJhY2tlbmRbXT4ge1xuICAgIHJldHVybiB0aGlzLmh0dHBDbGllbnRTZXJ2aWNlLmdldChgJHt0aGlzLnNpdGVBcGlVcmx9ZG9lbmNhc2ApO1xuICB9XG5cbiAgZ2V0RG9lbmNhc1RheG9ub21pZXMoKSB7XG4gICAgY29uc3QgdXJsID0gYCR7dGhpcy5zaXRlQXBpVXJsfWRvZW5jYXMvdGF4b25vbWlhc2A7XG4gICAgcmV0dXJuIHRoaXMuaHR0cENsaWVudFNlcnZpY2UuZ2V0PFRheG9ub21pYXNEb2VuY2FzTGlzdD4odXJsKTtcbiAgfVxuXG4gIGdldERvZW5jYXNVbmlxdWVMZXR0ZXJzKCk6IE9ic2VydmFibGU8c3RyaW5nW10+IHtcbiAgICBjb25zdCB1cmwgPSBgJHt0aGlzLnNpdGVBcGlVcmx9ZG9lbmNhcy9sZXR0ZXJzYDtcbiAgICByZXR1cm4gdGhpcy5odHRwQ2xpZW50U2VydmljZS5nZXQodXJsKTtcbiAgfVxuXG4gIGdldFZhY2luYXMoKTogT2JzZXJ2YWJsZTxhbnlbXT4ge1xuICAgIHJldHVybiB0aGlzLmh0dHBDbGllbnRTZXJ2aWNlLmdldChgJHt0aGlzLnNpdGVBcGlVcmx9dmFjaW5hc2ApO1xuICB9XG5cbiAgZ2V0VmFjaW5hc1RheG9ub21pZXMoKSB7XG4gICAgcmV0dXJuIHRoaXMuaHR0cENsaWVudFNlcnZpY2UuZ2V0KGAke3RoaXMuc2l0ZUFwaVVybH12YWNpbmFzL3RheG9ub21pYXNgKTtcbiAgfVxuXG4gIGdldENpcnVyZ2lhcygpOiBPYnNlcnZhYmxlPGFueVtdPiB7XG4gICAgcmV0dXJuIHRoaXMuaHR0cENsaWVudFNlcnZpY2UuZ2V0KGAke3RoaXMuc2l0ZUFwaVVybH1jaXJ1cmdpYXNgKTtcbiAgfVxuXG4gIGdldENpcnVyZ2lhc0dydXBvcygpOiBPYnNlcnZhYmxlPGFueVtdPiB7XG4gICAgcmV0dXJuIHRoaXMuaHR0cENsaWVudFNlcnZpY2UuZ2V0KGAke3RoaXMuc2l0ZUFwaVVybH1jaXJ1cmdpYXMvZ3J1cG9zYCk7XG4gIH1cblxuICBnZXRDaXJ1cmdpYXNUYXhvbm9taWVzKCk6IE9ic2VydmFibGU8YW55W10+IHtcbiAgICByZXR1cm4gdGhpcy5odHRwQ2xpZW50U2VydmljZS5nZXQoYCR7dGhpcy5zaXRlQXBpVXJsfWNpcnVyZ2lhcy90YXhvbm9taWFzYCk7XG4gIH1cblxuICBnZXRFeGFtZXNMaXN0KGxpc3RhRGFVbmlkYWRlOiBib29sZWFuLCB1bmlkYWRlU2x1Zzogc3RyaW5nLCB1bmlkYWRlSWRRZDogc3RyaW5nLCB1bmlkYWRlSWRNb3Rpb246IHN0cmluZywgdW5pZGFkZUlkTG9jYWw6IHN0cmluZyk6IE9ic2VydmFibGU8YW55PiB7XG4gICAgcmV0dXJuIHRoaXMuaHR0cENsaWVudFNlcnZpY2UuZ2V0KFxuICAgICAgYCR7dGhpcy5zaXRlQXBpVXJsfWV4YW1lcy1lLXByb2NlZGltZW50b3MvbGlzdGE/bGlzdGFEYVVuaWRhZGU9JHtsaXN0YURhVW5pZGFkZX0mdW5pZGFkZVNsdWc9JHt1bmlkYWRlU2x1Z30mdW5pZGFkZUlkUWQ9JHt1bmlkYWRlSWRRZH0mdW5pZGFkZUlkTW90aW9uPSR7dW5pZGFkZUlkTW90aW9ufSZ1bmlkYWRlSWRMb2NhbD0ke3VuaWRhZGVJZExvY2FsfWAsXG4gICAgKTtcbiAgfVxuXG4gIGdldEV4YW1lRGV0YWlscyhcbiAgICB1bmlkYWRlUG9zc3VpRXhhbWVzOiBib29sZWFuLFxuICAgIHVuaWRhZGVTbHVnOiBzdHJpbmcsXG4gICAgdW5pZGFkZUlkUWQ6IHN0cmluZyxcbiAgICB1bmlkYWRlSWRNb3Rpb246IHN0cmluZyxcbiAgICB1bmlkYWRlSWRMb2NhbDogc3RyaW5nLFxuICAgIGdydXBvU2x1Zzogc3RyaW5nLFxuICAgIGV4YW1lU2x1Zzogc3RyaW5nLFxuICApOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgIHJldHVybiB0aGlzLmh0dHBDbGllbnRTZXJ2aWNlLmdldChcbiAgICAgIGAke3RoaXMuc2l0ZUFwaVVybH1leGFtZXMtZS1wcm9jZWRpbWVudG9zL2RldGFsaGVzP3VuaWRhZGVQb3NzdWlFeGFtZXM9JHt1bmlkYWRlUG9zc3VpRXhhbWVzfSZ1bmlkYWRlU2x1Zz0ke3VuaWRhZGVTbHVnfSZ1bmlkYWRlSWRRZD0ke3VuaWRhZGVJZFFkfSZ1bmlkYWRlSWRNb3Rpb249JHt1bmlkYWRlSWRNb3Rpb259JnVuaWRhZGVJZExvY2FsPSR7dW5pZGFkZUlkTG9jYWx9JmdydXBvU2x1Zz0ke2dydXBvU2x1Z30mZXhhbWVTbHVnPSR7ZXhhbWVTbHVnfWAsXG4gICAgKTtcbiAgfVxuXG4gIGdldEdydXBvc0V4YW1lcyh1bmlkYWRlU2x1Zzogc3RyaW5nKTogT2JzZXJ2YWJsZTxFeGFtZUJhY2tlbmRbXT4ge1xuICAgIGNvbnN0IHNsdWcgPSB1bmlkYWRlU2x1ZyA/PyAnLyc7XG4gICAgY29uc3QgcGFyYW1zID0gc2x1ZyA/IGA/dW5pZGFkZT0ke3NsdWd9YCA6ICcnO1xuICAgIHJldHVybiB0aGlzLmh0dHBDbGllbnRTZXJ2aWNlLmdldChgJHt0aGlzLnNpdGVBcGlVcmx9ZXhhbWVzLWUtcHJvY2VkaW1lbnRvcyR7cGFyYW1zfWApO1xuICB9XG5cbiAgZ2V0RXhhbWVzQnlHcnVwbyh1bmlkYWRlU2x1Zzogc3RyaW5nLCBzbHVnR3J1cG86IHN0cmluZyk6IE9ic2VydmFibGU8RXhhbWVCYWNrZW5kW10+IHtcbiAgICBjb25zdCBzbHVnID0gdW5pZGFkZVNsdWcgPz8gJy8nO1xuICAgIGNvbnN0IHBhcmFtcyA9IGA/dW5pZGFkZT0ke3NsdWd9JnNsdWdHcnVwbz0ke3NsdWdHcnVwb31gO1xuICAgIHJldHVybiB0aGlzLmh0dHBDbGllbnRTZXJ2aWNlLmdldChgJHt0aGlzLnNpdGVBcGlVcmx9ZXhhbWVzLWUtcHJvY2VkaW1lbnRvcy9ncnVwbyR7cGFyYW1zfWApO1xuICB9XG5cbiAgZ2V0RXhhbWVzQnlVbmlkYWRlKHVuaWRhZGVJZDogc3RyaW5nKTogT2JzZXJ2YWJsZTxzdHJpbmdbXT4ge1xuICAgIGNvbnN0IHBhcmFtcyA9IGA/dW5pdElkPSR7dW5pZGFkZUlkfWA7XG4gICAgcmV0dXJuIHRoaXMuaHR0cENsaWVudFNlcnZpY2UuZ2V0KGAke3RoaXMuc2l0ZUFwaVVybH1leGFtZXMtZS1wcm9jZWRpbWVudG9zL3VuaWRhZGUke3BhcmFtc31gKTtcbiAgfVxuXG4gIGdldEV4YW1lc0FwaURhZG9zKCk6IE9ic2VydmFibGU8RXhhbWVBcGlEYWRvc1tdPiB7XG4gICAgcmV0dXJuIHRoaXMuaHR0cENsaWVudFNlcnZpY2UuZ2V0KGAke3RoaXMuc2l0ZUFwaVVybH1leGFtZXMtZS1wcm9jZWRpbWVudG9zL2FwaS1kYWRvc2ApO1xuICB9XG5cbiAgZ2V0RXNwZWNpYWxpZGFkZXNMaXN0KFxuICAgIGxpc3RhRGFVbmlkYWRlOiBib29sZWFuLFxuICAgIHVuaWRhZGVTbHVnOiBzdHJpbmcsXG4gICAgdW5pZGFkZVBvc3N1aUFnZW5kYW1lbnRvOiBib29sZWFuLFxuICAgIHVuaWRhZGVJZENvbnN1bHRhczogc3RyaW5nLFxuICAgIHVuaWRhZGVJZE1vdGlvbjogc3RyaW5nLFxuICAgIHVuaWRhZGVJZExvY2FsOiBzdHJpbmcsXG4gICk6IE9ic2VydmFibGU8YW55PiB7XG4gICAgcmV0dXJuIHRoaXMuaHR0cENsaWVudFNlcnZpY2UuZ2V0KFxuICAgICAgYCR7dGhpcy5zaXRlQXBpVXJsfWVzcGVjaWFsaWRhZGVzL2xpc3RhP2xpc3RhRGFVbmlkYWRlPSR7bGlzdGFEYVVuaWRhZGV9JnVuaWRhZGVTbHVnPSR7dW5pZGFkZVNsdWd9JnVuaWRhZGVQb3NzdWlBZ2VuZGFtZW50bz0ke3VuaWRhZGVQb3NzdWlBZ2VuZGFtZW50b30mdW5pZGFkZUlkQ29uc3VsdGFzPSR7dW5pZGFkZUlkQ29uc3VsdGFzfSZ1bmlkYWRlSWRNb3Rpb249JHt1bmlkYWRlSWRNb3Rpb259JnVuaWRhZGVJZExvY2FsPSR7dW5pZGFkZUlkTG9jYWx9YCxcbiAgICApO1xuICB9XG5cbiAgZ2V0R3J1cG9zRXNwZWNpYWxpZGFkZXModW5pZGFkZVNsdWc/OiBzdHJpbmcpOiBPYnNlcnZhYmxlPEVzcGVjaWFsaWRhZGVHcnVwb0JhY2tlbmRbXT4ge1xuICAgIGNvbnN0IHBhcmFtcyA9IHVuaWRhZGVTbHVnID8gYD91bmlkYWRlPSR7dW5pZGFkZVNsdWd9YCA6ICcnO1xuICAgIHJldHVybiB0aGlzLmh0dHBDbGllbnRTZXJ2aWNlLmdldChgJHt0aGlzLnNpdGVBcGlVcmx9ZXNwZWNpYWxpZGFkZXMke3BhcmFtc31gKTtcbiAgfVxuXG4gIGdldEVzcGVjaWFsaWRhZGVzQnlHcnVwbyh0aXR1bG9HcnVwbzogc3RyaW5nLCB1bmlkYWRlU2x1Zz86IHN0cmluZyk6IE9ic2VydmFibGU8RXNwZWNpYWxpZGFkZUJhY2tlbmRbXT4ge1xuICAgIGNvbnN0IHRpdHVsbyA9IGA/dGl0dWxvR3J1cG89JHtlbmNvZGVVUkkodGl0dWxvR3J1cG8pfWA7XG4gICAgY29uc3Qgc2x1ZyA9IHVuaWRhZGVTbHVnID8gYCZ1bmlkYWRlPSR7dW5pZGFkZVNsdWd9YCA6ICcnO1xuICAgIGNvbnN0IHBhcmFtcyA9IGAke3RpdHVsb30ke3NsdWd9YDtcbiAgICByZXR1cm4gdGhpcy5odHRwQ2xpZW50U2VydmljZS5nZXQoYCR7dGhpcy5zaXRlQXBpVXJsfWVzcGVjaWFsaWRhZGVzL2dydXBvJHtwYXJhbXN9YCk7XG4gIH1cblxuICBnZXRFc3BlY2lhbGlkYWRlc0RxKHBhcmFtcz86IFJEU0xFc3BlY2lhbGlkYWRlc1BhcmFtcyk6IE9ic2VydmFibGU8UkRTTEVzcGVjaWFsaWRhZGVbXT4ge1xuICAgIHJldHVybiB0aGlzLmh0dHBDbGllbnRTZXJ2aWNlLmdldChgJHt0aGlzLnNpdGVBcGlVcmx9ZXNwZWNpYWxpZGFkZXMvZXNwZWNpYWxpZGFkZXMtZHEke3RvUXVlcnlQYXJhbXMocGFyYW1zKX1gKTtcbiAgfVxuXG4gIGdldEdydXBvc0VzcGVjaWFsaWRhZGVzRHEocGFyYW1zPzogUkRTTEVzcGVjaWFsaWRhZGVzUGFyYW1zKTogT2JzZXJ2YWJsZTxSRFNMRXNwZWNpYWxpZGFkZVtdPiB7XG4gICAgcmV0dXJuIHRoaXMuaHR0cENsaWVudFNlcnZpY2UuZ2V0KGAke3RoaXMuc2l0ZUFwaVVybH1lc3BlY2lhbGlkYWRlcy9ncnVwb3MtZHEke3RvUXVlcnlQYXJhbXMocGFyYW1zKX1gKTtcbiAgfVxuXG4gIGdldFJlY2FwdGNoYVJlc3VsdCh0b2tlbjogc3RyaW5nKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICByZXR1cm4gdGhpcy5odHRwQ2xpZW50U2VydmljZS5wb3N0KGAke3RoaXMuc2l0ZUFwaVVybH0ke3RoaXMubGliQ29uZmlnLnNpdGVBcGkucmVjYXB0Y2hhfWAsIHsgdG9rZW4gfSk7XG4gIH1cblxuICBnZXRNZWRpY29DdihtZWRpY29JZDogbnVtYmVyKTogT2JzZXJ2YWJsZTxNZWRpY29Ddj4ge1xuICAgIHJldHVybiB0aGlzLmh0dHBDbGllbnRTZXJ2aWNlLmdldChgJHt0aGlzLnNpdGVBcGlVcmx9bWVkaWNvcy8ke21lZGljb0lkfWApO1xuICB9XG5cbiAgLy8gQ2VudHJvIGRlIEVzdHVkb3NcbiAgY2hlY2tNZWRpY28oY29uc2VsaG9Db2RpZ286IHN0cmluZyk6IE9ic2VydmFibGU8YW55PiB7XG4gICAgcmV0dXJuIHRoaXMuaHR0cENsaWVudFNlcnZpY2UuZ2V0KGAke3RoaXMuc2l0ZUFwaVVybH0ke3RoaXMubGliQ29uZmlnLnNpdGVBcGkuY2VudHJvRXN0dWRvc30/ZW1haWw9JHtjb25zZWxob0NvZGlnb31gKTtcbiAgfVxuXG4gIHNhdmVNZWRpY28obm92b01lZGljbzogQ2VudHJvRXN0dWRvc0JhY2tlbmRNZWRpY28pOiBPYnNlcnZhYmxlPENlbnRyb0VzdHVkb3NCYWNrZW5kTWVkaWNvPiB7XG4gICAgcmV0dXJuIHRoaXMuaHR0cENsaWVudFNlcnZpY2UucG9zdChgJHt0aGlzLnNpdGVBcGlVcmx9JHt0aGlzLmxpYkNvbmZpZy5zaXRlQXBpLmNlbnRyb0VzdHVkb3N9YCwgbm92b01lZGljbyk7XG4gIH1cblxuICBsb2dDbGllbnRFcnJvcihlcnJvcjogc3RyaW5nLCBvcmlnaW46IHN0cmluZywgdXJsOiBzdHJpbmcpIHtcbiAgICByZXR1cm4gdGhpcy5odHRwQ2xpZW50U2VydmljZS5wb3N0KGAke3RoaXMuc2l0ZUFwaVVybH1sb2cvZXJyb3JgLCB7XG4gICAgICBlcnJvcixcbiAgICAgIG9yaWdpbixcbiAgICAgIHVybCxcbiAgICB9KTtcbiAgfVxufVxuIl19
@@ -33,10 +33,10 @@ export class SsrLoadingService {
33
33
  stopLoading() {
34
34
  this._loading = false;
35
35
  }
36
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.11", ngImport: i0, type: SsrLoadingService, deps: [{ token: i1.LogService }, { token: PLATFORM_ID }], target: i0.ɵɵFactoryTarget.Injectable }); }
37
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.11", ngImport: i0, type: SsrLoadingService, providedIn: 'root' }); }
36
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: SsrLoadingService, deps: [{ token: i1.LogService }, { token: PLATFORM_ID }], target: i0.ɵɵFactoryTarget.Injectable }); }
37
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: SsrLoadingService, providedIn: 'root' }); }
38
38
  }
39
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.11", ngImport: i0, type: SsrLoadingService, decorators: [{
39
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: SsrLoadingService, decorators: [{
40
40
  type: Injectable,
41
41
  args: [{
42
42
  providedIn: 'root',
@@ -45,4 +45,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.11", ngImpo
45
45
  type: Inject,
46
46
  args: [PLATFORM_ID]
47
47
  }] }] });
48
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3NyLWxvYWRpbmcuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3NpdGUtZnJvbnQtZW5kLWxpYi9zcmMvbGliL3NlcnZpY2VzL3Nzci1sb2FkaW5nL3Nzci1sb2FkaW5nLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsV0FBVyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ2hFLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGlCQUFpQixDQUFDOzs7QUFNbkQsTUFBTSxPQUFPLGlCQUFpQjtJQUk1QixZQUNVLFVBQXNCLEVBQ0QsVUFBa0I7UUFEdkMsZUFBVSxHQUFWLFVBQVUsQ0FBWTtRQUNELGVBQVUsR0FBVixVQUFVLENBQVE7UUFMMUMsaUJBQVksR0FBRyxLQUFLLENBQUM7UUFDcEIsYUFBUSxHQUFHLEtBQUssQ0FBQztJQUt0QixDQUFDO0lBRUosWUFBWSxDQUFDLFNBQVMsR0FBRyxFQUFFLEVBQUUsVUFBVSxHQUFHLEdBQUcsRUFBRSxTQUFTLEdBQUcsS0FBSztRQUM5RCxJQUFJLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQztZQUFFLE9BQU87UUFFL0MsSUFBSSxDQUFDLFFBQVEsR0FBRyxJQUFJLENBQUM7UUFDckIsSUFBSSxDQUFDLFlBQVksR0FBRyxJQUFJLENBQUM7UUFFekIsTUFBTSxPQUFPLEdBQUcsVUFBVSxDQUFDLEdBQUcsRUFBRTtZQUM5QixJQUFJLENBQUMsUUFBUSxHQUFHLEtBQUssQ0FBQztZQUN0QixJQUFJLENBQUMsWUFBWSxHQUFHLEtBQUssQ0FBQztZQUMxQixJQUFJLENBQUMsVUFBVSxDQUFDLE1BQU0sQ0FBQyw4QkFBOEIsR0FBRyxTQUFTLEVBQUUsU0FBUyxDQUFDLENBQUM7UUFDaEYsQ0FBQyxFQUFFLFNBQVMsQ0FBQyxDQUFDO1FBRWQsTUFBTSxRQUFRLEdBQUcsV0FBVyxDQUFDLEdBQUcsRUFBRTtZQUNoQyxJQUFJLElBQUksQ0FBQyxRQUFRLEtBQUssSUFBSSxFQUFFLENBQUM7Z0JBQzNCLElBQUksQ0FBQyxZQUFZLEdBQUcsQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDO1lBQ3pDLENBQUM7aUJBQU0sQ0FBQztnQkFDTixhQUFhLENBQUMsUUFBUSxDQUFDLENBQUM7Z0JBQ3hCLFlBQVksQ0FBQyxPQUFPLENBQUMsQ0FBQztnQkFDdEIsSUFBSSxDQUFDLFlBQVksR0FBRyxLQUFLLENBQUM7WUFDNUIsQ0FBQztRQUNILENBQUMsRUFBRSxVQUFVLENBQUMsQ0FBQztJQUNqQixDQUFDO0lBRUQsV0FBVztRQUNULElBQUksQ0FBQyxRQUFRLEdBQUcsS0FBSyxDQUFDO0lBQ3hCLENBQUM7K0dBbENVLGlCQUFpQiw0Q0FNbEIsV0FBVzttSEFOVixpQkFBaUIsY0FGaEIsTUFBTTs7NEZBRVAsaUJBQWlCO2tCQUg3QixVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQjs7MEJBT0ksTUFBTTsyQkFBQyxXQUFXIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0LCBJbmplY3RhYmxlLCBQTEFURk9STV9JRCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBpc1BsYXRmb3JtU2VydmVyIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcclxuaW1wb3J0IHsgTG9nU2VydmljZSB9IGZyb20gJy4uL2xvZy9sb2cuc2VydmljZSc7XHJcblxyXG5ASW5qZWN0YWJsZSh7XHJcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgU3NyTG9hZGluZ1NlcnZpY2Uge1xyXG4gIHB1YmxpYyBzc3JJc0xvYWRpbmcgPSBmYWxzZTtcclxuICBwcml2YXRlIF9sb2FkaW5nID0gZmFsc2U7XHJcblxyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHJpdmF0ZSBsb2dTZXJ2aWNlOiBMb2dTZXJ2aWNlLFxyXG4gICAgQEluamVjdChQTEFURk9STV9JRCkgcHJpdmF0ZSBwbGF0Zm9ybUlkOiBvYmplY3QsXHJcbiAgKSB7fVxyXG5cclxuICBzdGFydExvYWRpbmcoY29tcG9uZW50ID0gJycsIGludGVydmFsTXMgPSAyMDAsIHRpbWVvdXRNcyA9IDIwMDAwKSB7XHJcbiAgICBpZiAoIWlzUGxhdGZvcm1TZXJ2ZXIodGhpcy5wbGF0Zm9ybUlkKSkgcmV0dXJuO1xyXG5cclxuICAgIHRoaXMuX2xvYWRpbmcgPSB0cnVlO1xyXG4gICAgdGhpcy5zc3JJc0xvYWRpbmcgPSB0cnVlO1xyXG5cclxuICAgIGNvbnN0IHRpbWVvdXQgPSBzZXRUaW1lb3V0KCgpID0+IHtcclxuICAgICAgdGhpcy5fbG9hZGluZyA9IGZhbHNlO1xyXG4gICAgICB0aGlzLnNzcklzTG9hZGluZyA9IGZhbHNlO1xyXG4gICAgICB0aGlzLmxvZ1NlcnZpY2UubG9nTXNnKCdTU1IgbG9hZGluZyBzZXJ2aWNlIFRpbWVvdXQgJyArIGNvbXBvbmVudCwgJ1RJTUVPVVQnKTtcclxuICAgIH0sIHRpbWVvdXRNcyk7XHJcblxyXG4gICAgY29uc3QgaW50ZXJ2YWwgPSBzZXRJbnRlcnZhbCgoKSA9PiB7XHJcbiAgICAgIGlmICh0aGlzLl9sb2FkaW5nID09PSB0cnVlKSB7XHJcbiAgICAgICAgdGhpcy5zc3JJc0xvYWRpbmcgPSAhdGhpcy5zc3JJc0xvYWRpbmc7XHJcbiAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgY2xlYXJJbnRlcnZhbChpbnRlcnZhbCk7XHJcbiAgICAgICAgY2xlYXJUaW1lb3V0KHRpbWVvdXQpO1xyXG4gICAgICAgIHRoaXMuc3NySXNMb2FkaW5nID0gZmFsc2U7XHJcbiAgICAgIH1cclxuICAgIH0sIGludGVydmFsTXMpO1xyXG4gIH1cclxuXHJcbiAgc3RvcExvYWRpbmcoKSB7XHJcbiAgICB0aGlzLl9sb2FkaW5nID0gZmFsc2U7XHJcbiAgfVxyXG59XHJcbiJdfQ==
48
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3NyLWxvYWRpbmcuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3NpdGUtZnJvbnQtZW5kLWxpYi9zcmMvbGliL3NlcnZpY2VzL3Nzci1sb2FkaW5nL3Nzci1sb2FkaW5nLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsV0FBVyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ2hFLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGlCQUFpQixDQUFDOzs7QUFNbkQsTUFBTSxPQUFPLGlCQUFpQjtJQUk1QixZQUNVLFVBQXNCLEVBQ0QsVUFBa0I7UUFEdkMsZUFBVSxHQUFWLFVBQVUsQ0FBWTtRQUNELGVBQVUsR0FBVixVQUFVLENBQVE7UUFMMUMsaUJBQVksR0FBRyxLQUFLLENBQUM7UUFDcEIsYUFBUSxHQUFHLEtBQUssQ0FBQztJQUt0QixDQUFDO0lBRUosWUFBWSxDQUFDLFNBQVMsR0FBRyxFQUFFLEVBQUUsVUFBVSxHQUFHLEdBQUcsRUFBRSxTQUFTLEdBQUcsS0FBSztRQUM5RCxJQUFJLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQztZQUFFLE9BQU87UUFFL0MsSUFBSSxDQUFDLFFBQVEsR0FBRyxJQUFJLENBQUM7UUFDckIsSUFBSSxDQUFDLFlBQVksR0FBRyxJQUFJLENBQUM7UUFFekIsTUFBTSxPQUFPLEdBQUcsVUFBVSxDQUFDLEdBQUcsRUFBRTtZQUM5QixJQUFJLENBQUMsUUFBUSxHQUFHLEtBQUssQ0FBQztZQUN0QixJQUFJLENBQUMsWUFBWSxHQUFHLEtBQUssQ0FBQztZQUMxQixJQUFJLENBQUMsVUFBVSxDQUFDLE1BQU0sQ0FBQyw4QkFBOEIsR0FBRyxTQUFTLEVBQUUsU0FBUyxDQUFDLENBQUM7UUFDaEYsQ0FBQyxFQUFFLFNBQVMsQ0FBQyxDQUFDO1FBRWQsTUFBTSxRQUFRLEdBQUcsV0FBVyxDQUFDLEdBQUcsRUFBRTtZQUNoQyxJQUFJLElBQUksQ0FBQyxRQUFRLEtBQUssSUFBSSxFQUFFLENBQUM7Z0JBQzNCLElBQUksQ0FBQyxZQUFZLEdBQUcsQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDO1lBQ3pDLENBQUM7aUJBQU0sQ0FBQztnQkFDTixhQUFhLENBQUMsUUFBUSxDQUFDLENBQUM7Z0JBQ3hCLFlBQVksQ0FBQyxPQUFPLENBQUMsQ0FBQztnQkFDdEIsSUFBSSxDQUFDLFlBQVksR0FBRyxLQUFLLENBQUM7WUFDNUIsQ0FBQztRQUNILENBQUMsRUFBRSxVQUFVLENBQUMsQ0FBQztJQUNqQixDQUFDO0lBRUQsV0FBVztRQUNULElBQUksQ0FBQyxRQUFRLEdBQUcsS0FBSyxDQUFDO0lBQ3hCLENBQUM7K0dBbENVLGlCQUFpQiw0Q0FNbEIsV0FBVzttSEFOVixpQkFBaUIsY0FGaEIsTUFBTTs7NEZBRVAsaUJBQWlCO2tCQUg3QixVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQjs7MEJBT0ksTUFBTTsyQkFBQyxXQUFXIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0LCBJbmplY3RhYmxlLCBQTEFURk9STV9JRCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgaXNQbGF0Zm9ybVNlcnZlciB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBMb2dTZXJ2aWNlIH0gZnJvbSAnLi4vbG9nL2xvZy5zZXJ2aWNlJztcblxuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAncm9vdCcsXG59KVxuZXhwb3J0IGNsYXNzIFNzckxvYWRpbmdTZXJ2aWNlIHtcbiAgcHVibGljIHNzcklzTG9hZGluZyA9IGZhbHNlO1xuICBwcml2YXRlIF9sb2FkaW5nID0gZmFsc2U7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBsb2dTZXJ2aWNlOiBMb2dTZXJ2aWNlLFxuICAgIEBJbmplY3QoUExBVEZPUk1fSUQpIHByaXZhdGUgcGxhdGZvcm1JZDogb2JqZWN0LFxuICApIHt9XG5cbiAgc3RhcnRMb2FkaW5nKGNvbXBvbmVudCA9ICcnLCBpbnRlcnZhbE1zID0gMjAwLCB0aW1lb3V0TXMgPSAyMDAwMCkge1xuICAgIGlmICghaXNQbGF0Zm9ybVNlcnZlcih0aGlzLnBsYXRmb3JtSWQpKSByZXR1cm47XG5cbiAgICB0aGlzLl9sb2FkaW5nID0gdHJ1ZTtcbiAgICB0aGlzLnNzcklzTG9hZGluZyA9IHRydWU7XG5cbiAgICBjb25zdCB0aW1lb3V0ID0gc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICB0aGlzLl9sb2FkaW5nID0gZmFsc2U7XG4gICAgICB0aGlzLnNzcklzTG9hZGluZyA9IGZhbHNlO1xuICAgICAgdGhpcy5sb2dTZXJ2aWNlLmxvZ01zZygnU1NSIGxvYWRpbmcgc2VydmljZSBUaW1lb3V0ICcgKyBjb21wb25lbnQsICdUSU1FT1VUJyk7XG4gICAgfSwgdGltZW91dE1zKTtcblxuICAgIGNvbnN0IGludGVydmFsID0gc2V0SW50ZXJ2YWwoKCkgPT4ge1xuICAgICAgaWYgKHRoaXMuX2xvYWRpbmcgPT09IHRydWUpIHtcbiAgICAgICAgdGhpcy5zc3JJc0xvYWRpbmcgPSAhdGhpcy5zc3JJc0xvYWRpbmc7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBjbGVhckludGVydmFsKGludGVydmFsKTtcbiAgICAgICAgY2xlYXJUaW1lb3V0KHRpbWVvdXQpO1xuICAgICAgICB0aGlzLnNzcklzTG9hZGluZyA9IGZhbHNlO1xuICAgICAgfVxuICAgIH0sIGludGVydmFsTXMpO1xuICB9XG5cbiAgc3RvcExvYWRpbmcoKSB7XG4gICAgdGhpcy5fbG9hZGluZyA9IGZhbHNlO1xuICB9XG59XG4iXX0=
@@ -48,13 +48,13 @@ export class TransferStateService {
48
48
  }
49
49
  this.transferState.remove(key);
50
50
  }
51
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.11", ngImport: i0, type: TransferStateService, deps: [{ token: i0.TransferState }], target: i0.ɵɵFactoryTarget.Injectable }); }
52
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.11", ngImport: i0, type: TransferStateService, providedIn: 'root' }); }
51
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: TransferStateService, deps: [{ token: i0.TransferState }], target: i0.ɵɵFactoryTarget.Injectable }); }
52
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: TransferStateService, providedIn: 'root' }); }
53
53
  }
54
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.11", ngImport: i0, type: TransferStateService, decorators: [{
54
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: TransferStateService, decorators: [{
55
55
  type: Injectable,
56
56
  args: [{
57
57
  providedIn: 'root',
58
58
  }]
59
59
  }], ctorParameters: () => [{ type: i0.TransferState }] });
60
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNmZXItc3RhdGUuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3NpdGUtZnJvbnQtZW5kLWxpYi9zcmMvbGliL3NlcnZpY2VzL3RyYW5zZmVyLXN0YXRlL3RyYW5zZmVyLXN0YXRlLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxZQUFZLEVBQTJCLE1BQU0sZUFBZSxDQUFDOztBQUNsRixvSkFBb0o7QUFLcEosTUFBTSxPQUFPLG9CQUFvQjtJQUkvQixZQUE2QixhQUE0QjtRQUE1QixrQkFBYSxHQUFiLGFBQWEsQ0FBZTtRQUhqRCxTQUFJLEdBQUcsSUFBSSxHQUFHLEVBQTRCLENBQUM7UUFDbkQsY0FBUyxHQUFHLGtDQUFrQyxDQUFDO0lBRWEsQ0FBQztJQUU3RCw2REFBNkQ7SUFDN0QsTUFBTSxDQUFDLElBQVMsRUFBRSxRQUFxQjtRQUNyQyxPQUFPLENBQUMsZ0NBQWdDO1FBQ3hDLGlDQUFpQztRQUNqQyxjQUFjO1FBQ2QsOEJBQThCO1FBQzlCLDhCQUE4QjtRQUM5QixJQUFJO1FBQ0osK0NBQStDO1FBQy9DLHVGQUF1RjtRQUN2RixnREFBZ0Q7SUFDbEQsQ0FBQztJQUVELDZEQUE2RDtJQUM3RCxNQUFNLENBQUMsSUFBWSxFQUFFLGVBQTRCLElBQUk7UUFDbkQsT0FBTyxJQUFJLENBQUMsQ0FBQyxnQ0FBZ0M7UUFDN0MsaUNBQWlDO1FBQ2pDLGNBQWM7UUFDZCw4QkFBOEI7UUFDOUIsOEJBQThCO1FBQzlCLElBQUk7UUFDSixpRUFBaUU7UUFDakUsc0JBQXNCO1FBQ3RCLHlCQUF5QjtRQUN6QixJQUFJO1FBQ0osUUFBUTtRQUNSLHFFQUFxRTtRQUNyRSxxRUFBcUU7UUFDckUsaUVBQWlFO1FBQ2pFLDhCQUE4QjtRQUM5QixvQkFBb0I7UUFDcEIseUJBQXlCO1FBQ3pCLElBQUk7SUFDTixDQUFDO0lBRUQsTUFBTSxDQUFDLElBQVk7UUFDakIsSUFBSSxHQUFHLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDOUIsSUFBSSxDQUFDLEdBQUcsRUFBRSxDQUFDO1lBQ1QsR0FBRyxHQUFHLFlBQVksQ0FBQyxJQUFJLENBQUMsQ0FBQztZQUN6QixJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxJQUFJLEVBQUUsR0FBRyxDQUFDLENBQUM7UUFDM0IsQ0FBQztRQUNELElBQUksQ0FBQyxhQUFhLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQ2pDLENBQUM7K0dBaERVLG9CQUFvQjttSEFBcEIsb0JBQW9CLGNBRm5CLE1BQU07OzRGQUVQLG9CQUFvQjtrQkFIaEMsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlLCBtYWtlU3RhdGVLZXksIFN0YXRlS2V5LCBUcmFuc2ZlclN0YXRlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbi8vIGltcG9ydCAqIGFzIENyeXB0b0pTIGZyb20gJ2NyeXB0by1qcyc7IC8vIENhc28gc2VqYSBuZWNlc3PDoXJpbyBjcmlwdG9ncmFmYXIgbm92YW1lbnRlLCDDqSBuZWNlc3PDoXJpbyBhZGljaW9uYXIgbyBwYWNvdGUgY3J5cHRvLWpzIG5vcyBwYWNrYWdlLmpzb25cclxuXHJcbkBJbmplY3RhYmxlKHtcclxuICBwcm92aWRlZEluOiAncm9vdCcsXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBUcmFuc2ZlclN0YXRlU2VydmljZSB7XHJcbiAgcHJpdmF0ZSBrZXlzID0gbmV3IE1hcDxzdHJpbmcsIFN0YXRlS2V5PHN0cmluZz4+KCk7XHJcbiAgY3J5cHRvS2V5ID0gJzNjMmQ3MGFiMjdhNDIwYWNhOGNmNDE5MTYxMWZhNGVlJztcclxuXHJcbiAgY29uc3RydWN0b3IocHJpdmF0ZSByZWFkb25seSB0cmFuc2ZlclN0YXRlOiBUcmFuc2ZlclN0YXRlKSB7fVxyXG5cclxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLXVudXNlZC12YXJzXHJcbiAgc2V0S2V5KG5hbWU6IGFueSwgcmVzcG9uc2U6IGFueSB8IGFueVtdKSB7XHJcbiAgICByZXR1cm47IC8vIHRlc3RlIHJlbW92ZW5kbyB0cmFuc2ZlcnN0YXRlXHJcbiAgICAvLyBsZXQga2V5ID0gdGhpcy5rZXlzLmdldChuYW1lKTtcclxuICAgIC8vIGlmICgha2V5KSB7XHJcbiAgICAvLyAgIGtleSA9IG1ha2VTdGF0ZUtleShuYW1lKTtcclxuICAgIC8vICAgdGhpcy5rZXlzLnNldChuYW1lLCBrZXkpO1xyXG4gICAgLy8gfVxyXG4gICAgLy8gY29uc3QganNvblN0cmluZyA9IEpTT04uc3RyaW5naWZ5KHJlc3BvbnNlKTtcclxuICAgIC8vIGNvbnN0IGNyeXB0ZWRSZXNwb25zZSA9IENyeXB0b0pTLkFFUy5lbmNyeXB0KGpzb25TdHJpbmcsIHRoaXMuY3J5cHRvS2V5KS50b1N0cmluZygpO1xyXG4gICAgLy8gdGhpcy50cmFuc2ZlclN0YXRlLnNldChrZXksIGNyeXB0ZWRSZXNwb25zZSk7XHJcbiAgfVxyXG5cclxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLXVudXNlZC12YXJzXHJcbiAgZ2V0S2V5KG5hbWU6IHN0cmluZywgZGVmYXVsdFZhbHVlOiBhbnkgfCBhbnlbXSA9IG51bGwpOiBhbnkgfCBhbnlbXSB7XHJcbiAgICByZXR1cm4gbnVsbDsgLy8gdGVzdGUgcmVtb3ZlbmRvIHRyYW5zZmVyc3RhdGVcclxuICAgIC8vIGxldCBrZXkgPSB0aGlzLmtleXMuZ2V0KG5hbWUpO1xyXG4gICAgLy8gaWYgKCFrZXkpIHtcclxuICAgIC8vICAga2V5ID0gbWFrZVN0YXRlS2V5KG5hbWUpO1xyXG4gICAgLy8gICB0aGlzLmtleXMuc2V0KG5hbWUsIGtleSk7XHJcbiAgICAvLyB9XHJcbiAgICAvLyBjb25zdCBjcnlwdGVkRGF0YSA9IHRoaXMudHJhbnNmZXJTdGF0ZS5nZXQoa2V5LCBkZWZhdWx0VmFsdWUpO1xyXG4gICAgLy8gaWYgKCFjcnlwdGVkRGF0YSkge1xyXG4gICAgLy8gICByZXR1cm4gZGVmYXVsdFZhbHVlO1xyXG4gICAgLy8gfVxyXG4gICAgLy8gdHJ5IHtcclxuICAgIC8vICAgY29uc3QgYnl0ZXMgPSBDcnlwdG9KUy5BRVMuZGVjcnlwdChjcnlwdGVkRGF0YSwgdGhpcy5jcnlwdG9LZXkpO1xyXG4gICAgLy8gICBjb25zdCBkZWNyeXB0ZWRSZXNwb25zZUpzb24gPSBieXRlcy50b1N0cmluZyhDcnlwdG9KUy5lbmMuVXRmOCk7XHJcbiAgICAvLyAgIGNvbnN0IGRlY3J5cHRlZFJlc3BvbnNlID0gSlNPTi5wYXJzZShkZWNyeXB0ZWRSZXNwb25zZUpzb24pO1xyXG4gICAgLy8gICByZXR1cm4gZGVjcnlwdGVkUmVzcG9uc2U7XHJcbiAgICAvLyB9IGNhdGNoIChlcnJvcikge1xyXG4gICAgLy8gICByZXR1cm4gZGVmYXVsdFZhbHVlO1xyXG4gICAgLy8gfVxyXG4gIH1cclxuXHJcbiAgcmVtb3ZlKG5hbWU6IHN0cmluZykge1xyXG4gICAgbGV0IGtleSA9IHRoaXMua2V5cy5nZXQobmFtZSk7XHJcbiAgICBpZiAoIWtleSkge1xyXG4gICAgICBrZXkgPSBtYWtlU3RhdGVLZXkobmFtZSk7XHJcbiAgICAgIHRoaXMua2V5cy5zZXQobmFtZSwga2V5KTtcclxuICAgIH1cclxuICAgIHRoaXMudHJhbnNmZXJTdGF0ZS5yZW1vdmUoa2V5KTtcclxuICB9XHJcbn1cclxuIl19
60
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNmZXItc3RhdGUuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3NpdGUtZnJvbnQtZW5kLWxpYi9zcmMvbGliL3NlcnZpY2VzL3RyYW5zZmVyLXN0YXRlL3RyYW5zZmVyLXN0YXRlLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxZQUFZLEVBQTJCLE1BQU0sZUFBZSxDQUFDOztBQUNsRixvSkFBb0o7QUFLcEosTUFBTSxPQUFPLG9CQUFvQjtJQUkvQixZQUE2QixhQUE0QjtRQUE1QixrQkFBYSxHQUFiLGFBQWEsQ0FBZTtRQUhqRCxTQUFJLEdBQUcsSUFBSSxHQUFHLEVBQTRCLENBQUM7UUFDbkQsY0FBUyxHQUFHLGtDQUFrQyxDQUFDO0lBRWEsQ0FBQztJQUU3RCw2REFBNkQ7SUFDN0QsTUFBTSxDQUFDLElBQVMsRUFBRSxRQUFxQjtRQUNyQyxPQUFPLENBQUMsZ0NBQWdDO1FBQ3hDLGlDQUFpQztRQUNqQyxjQUFjO1FBQ2QsOEJBQThCO1FBQzlCLDhCQUE4QjtRQUM5QixJQUFJO1FBQ0osK0NBQStDO1FBQy9DLHVGQUF1RjtRQUN2RixnREFBZ0Q7SUFDbEQsQ0FBQztJQUVELDZEQUE2RDtJQUM3RCxNQUFNLENBQUMsSUFBWSxFQUFFLGVBQTRCLElBQUk7UUFDbkQsT0FBTyxJQUFJLENBQUMsQ0FBQyxnQ0FBZ0M7UUFDN0MsaUNBQWlDO1FBQ2pDLGNBQWM7UUFDZCw4QkFBOEI7UUFDOUIsOEJBQThCO1FBQzlCLElBQUk7UUFDSixpRUFBaUU7UUFDakUsc0JBQXNCO1FBQ3RCLHlCQUF5QjtRQUN6QixJQUFJO1FBQ0osUUFBUTtRQUNSLHFFQUFxRTtRQUNyRSxxRUFBcUU7UUFDckUsaUVBQWlFO1FBQ2pFLDhCQUE4QjtRQUM5QixvQkFBb0I7UUFDcEIseUJBQXlCO1FBQ3pCLElBQUk7SUFDTixDQUFDO0lBRUQsTUFBTSxDQUFDLElBQVk7UUFDakIsSUFBSSxHQUFHLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDOUIsSUFBSSxDQUFDLEdBQUcsRUFBRSxDQUFDO1lBQ1QsR0FBRyxHQUFHLFlBQVksQ0FBQyxJQUFJLENBQUMsQ0FBQztZQUN6QixJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxJQUFJLEVBQUUsR0FBRyxDQUFDLENBQUM7UUFDM0IsQ0FBQztRQUNELElBQUksQ0FBQyxhQUFhLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQ2pDLENBQUM7K0dBaERVLG9CQUFvQjttSEFBcEIsb0JBQW9CLGNBRm5CLE1BQU07OzRGQUVQLG9CQUFvQjtrQkFIaEMsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlLCBtYWtlU3RhdGVLZXksIFN0YXRlS2V5LCBUcmFuc2ZlclN0YXRlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG4vLyBpbXBvcnQgKiBhcyBDcnlwdG9KUyBmcm9tICdjcnlwdG8tanMnOyAvLyBDYXNvIHNlamEgbmVjZXNzw6FyaW8gY3JpcHRvZ3JhZmFyIG5vdmFtZW50ZSwgw6kgbmVjZXNzw6FyaW8gYWRpY2lvbmFyIG8gcGFjb3RlIGNyeXB0by1qcyBub3MgcGFja2FnZS5qc29uXG5cbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnLFxufSlcbmV4cG9ydCBjbGFzcyBUcmFuc2ZlclN0YXRlU2VydmljZSB7XG4gIHByaXZhdGUga2V5cyA9IG5ldyBNYXA8c3RyaW5nLCBTdGF0ZUtleTxzdHJpbmc+PigpO1xuICBjcnlwdG9LZXkgPSAnM2MyZDcwYWIyN2E0MjBhY2E4Y2Y0MTkxNjExZmE0ZWUnO1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgcmVhZG9ubHkgdHJhbnNmZXJTdGF0ZTogVHJhbnNmZXJTdGF0ZSkge31cblxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLXVudXNlZC12YXJzXG4gIHNldEtleShuYW1lOiBhbnksIHJlc3BvbnNlOiBhbnkgfCBhbnlbXSkge1xuICAgIHJldHVybjsgLy8gdGVzdGUgcmVtb3ZlbmRvIHRyYW5zZmVyc3RhdGVcbiAgICAvLyBsZXQga2V5ID0gdGhpcy5rZXlzLmdldChuYW1lKTtcbiAgICAvLyBpZiAoIWtleSkge1xuICAgIC8vICAga2V5ID0gbWFrZVN0YXRlS2V5KG5hbWUpO1xuICAgIC8vICAgdGhpcy5rZXlzLnNldChuYW1lLCBrZXkpO1xuICAgIC8vIH1cbiAgICAvLyBjb25zdCBqc29uU3RyaW5nID0gSlNPTi5zdHJpbmdpZnkocmVzcG9uc2UpO1xuICAgIC8vIGNvbnN0IGNyeXB0ZWRSZXNwb25zZSA9IENyeXB0b0pTLkFFUy5lbmNyeXB0KGpzb25TdHJpbmcsIHRoaXMuY3J5cHRvS2V5KS50b1N0cmluZygpO1xuICAgIC8vIHRoaXMudHJhbnNmZXJTdGF0ZS5zZXQoa2V5LCBjcnlwdGVkUmVzcG9uc2UpO1xuICB9XG5cbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby11bnVzZWQtdmFyc1xuICBnZXRLZXkobmFtZTogc3RyaW5nLCBkZWZhdWx0VmFsdWU6IGFueSB8IGFueVtdID0gbnVsbCk6IGFueSB8IGFueVtdIHtcbiAgICByZXR1cm4gbnVsbDsgLy8gdGVzdGUgcmVtb3ZlbmRvIHRyYW5zZmVyc3RhdGVcbiAgICAvLyBsZXQga2V5ID0gdGhpcy5rZXlzLmdldChuYW1lKTtcbiAgICAvLyBpZiAoIWtleSkge1xuICAgIC8vICAga2V5ID0gbWFrZVN0YXRlS2V5KG5hbWUpO1xuICAgIC8vICAgdGhpcy5rZXlzLnNldChuYW1lLCBrZXkpO1xuICAgIC8vIH1cbiAgICAvLyBjb25zdCBjcnlwdGVkRGF0YSA9IHRoaXMudHJhbnNmZXJTdGF0ZS5nZXQoa2V5LCBkZWZhdWx0VmFsdWUpO1xuICAgIC8vIGlmICghY3J5cHRlZERhdGEpIHtcbiAgICAvLyAgIHJldHVybiBkZWZhdWx0VmFsdWU7XG4gICAgLy8gfVxuICAgIC8vIHRyeSB7XG4gICAgLy8gICBjb25zdCBieXRlcyA9IENyeXB0b0pTLkFFUy5kZWNyeXB0KGNyeXB0ZWREYXRhLCB0aGlzLmNyeXB0b0tleSk7XG4gICAgLy8gICBjb25zdCBkZWNyeXB0ZWRSZXNwb25zZUpzb24gPSBieXRlcy50b1N0cmluZyhDcnlwdG9KUy5lbmMuVXRmOCk7XG4gICAgLy8gICBjb25zdCBkZWNyeXB0ZWRSZXNwb25zZSA9IEpTT04ucGFyc2UoZGVjcnlwdGVkUmVzcG9uc2VKc29uKTtcbiAgICAvLyAgIHJldHVybiBkZWNyeXB0ZWRSZXNwb25zZTtcbiAgICAvLyB9IGNhdGNoIChlcnJvcikge1xuICAgIC8vICAgcmV0dXJuIGRlZmF1bHRWYWx1ZTtcbiAgICAvLyB9XG4gIH1cblxuICByZW1vdmUobmFtZTogc3RyaW5nKSB7XG4gICAgbGV0IGtleSA9IHRoaXMua2V5cy5nZXQobmFtZSk7XG4gICAgaWYgKCFrZXkpIHtcbiAgICAgIGtleSA9IG1ha2VTdGF0ZUtleShuYW1lKTtcbiAgICAgIHRoaXMua2V5cy5zZXQobmFtZSwga2V5KTtcbiAgICB9XG4gICAgdGhpcy50cmFuc2ZlclN0YXRlLnJlbW92ZShrZXkpO1xuICB9XG59XG4iXX0=
@@ -21,10 +21,10 @@ export class YoutubeService {
21
21
  script?.remove();
22
22
  }
23
23
  }
24
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.11", ngImport: i0, type: YoutubeService, deps: [{ token: PLATFORM_ID }, { token: DOCUMENT }], target: i0.ɵɵFactoryTarget.Injectable }); }
25
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.11", ngImport: i0, type: YoutubeService, providedIn: 'root' }); }
24
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: YoutubeService, deps: [{ token: PLATFORM_ID }, { token: DOCUMENT }], target: i0.ɵɵFactoryTarget.Injectable }); }
25
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: YoutubeService, providedIn: 'root' }); }
26
26
  }
27
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.11", ngImport: i0, type: YoutubeService, decorators: [{
27
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: YoutubeService, decorators: [{
28
28
  type: Injectable,
29
29
  args: [{
30
30
  providedIn: 'root',
@@ -36,4 +36,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.11", ngImpo
36
36
  type: Inject,
37
37
  args: [DOCUMENT]
38
38
  }] }] });
39
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoieW91dHViZS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc2l0ZS1mcm9udC1lbmQtbGliL3NyYy9saWIvc2VydmljZXMveW91dHViZS95b3V0dWJlLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQzlELE9BQU8sRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFFLFdBQVcsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7QUFLaEUsTUFBTSxPQUFPLGNBQWM7SUFHekIsWUFDK0IsVUFBa0IsRUFDckIsUUFBa0I7UUFEZixlQUFVLEdBQVYsVUFBVSxDQUFRO1FBQ3JCLGFBQVEsR0FBUixRQUFRLENBQVU7UUFKOUMsYUFBUSxHQUFHLFlBQVksQ0FBQztJQUtyQixDQUFDO0lBRUosU0FBUztRQUNQLElBQUksaUJBQWlCLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxFQUFFLENBQUM7WUFDdkYsTUFBTSxNQUFNLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxhQUFhLENBQUMsUUFBUSxDQUFDLENBQUM7WUFDckQsTUFBTSxDQUFDLEVBQUUsR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDO1lBQzFCLE1BQU0sQ0FBQyxHQUFHLEdBQUcsb0NBQW9DLENBQUM7WUFDbEQsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQ3pDLENBQUM7SUFDSCxDQUFDO0lBRUQsWUFBWTtRQUNWLElBQUksaUJBQWlCLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxFQUFFLENBQUM7WUFDdkMsTUFBTSxNQUFNLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1lBQzNELE1BQU0sRUFBRSxNQUFNLEVBQUUsQ0FBQztRQUNuQixDQUFDO0lBQ0gsQ0FBQzsrR0F0QlUsY0FBYyxrQkFJZixXQUFXLGFBQ1gsUUFBUTttSEFMUCxjQUFjLGNBRmIsTUFBTTs7NEZBRVAsY0FBYztrQkFIMUIsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkI7OzBCQUtJLE1BQU07MkJBQUMsV0FBVzs7MEJBQ2xCLE1BQU07MkJBQUMsUUFBUSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERPQ1VNRU5ULCBpc1BsYXRmb3JtQnJvd3NlciB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XHJcbmltcG9ydCB7IEluamVjdCwgSW5qZWN0YWJsZSwgUExBVEZPUk1fSUQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuXHJcbkBJbmplY3RhYmxlKHtcclxuICBwcm92aWRlZEluOiAncm9vdCcsXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBZb3V0dWJlU2VydmljZSB7XHJcbiAgc2NyaXB0SWQgPSAneW91dHViZUFwaSc7XHJcblxyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgQEluamVjdChQTEFURk9STV9JRCkgcHJpdmF0ZSBwbGF0Zm9ybUlkOiBvYmplY3QsXHJcbiAgICBASW5qZWN0KERPQ1VNRU5UKSBwcml2YXRlIGRvY3VtZW50OiBEb2N1bWVudCxcclxuICApIHt9XHJcblxyXG4gIHNldFNjcmlwdCgpOiB2b2lkIHtcclxuICAgIGlmIChpc1BsYXRmb3JtQnJvd3Nlcih0aGlzLnBsYXRmb3JtSWQpICYmICF0aGlzLmRvY3VtZW50LmdldEVsZW1lbnRCeUlkKHRoaXMuc2NyaXB0SWQpKSB7XHJcbiAgICAgIGNvbnN0IHNjcmlwdCA9IHRoaXMuZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnc2NyaXB0Jyk7XHJcbiAgICAgIHNjcmlwdC5pZCA9IHRoaXMuc2NyaXB0SWQ7XHJcbiAgICAgIHNjcmlwdC5zcmMgPSAnaHR0cHM6Ly93d3cueW91dHViZS5jb20vaWZyYW1lX2FwaSc7XHJcbiAgICAgIHRoaXMuZG9jdW1lbnQuYm9keS5hcHBlbmRDaGlsZChzY3JpcHQpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcmVtb3ZlU2NyaXB0KCk6IHZvaWQge1xyXG4gICAgaWYgKGlzUGxhdGZvcm1Ccm93c2VyKHRoaXMucGxhdGZvcm1JZCkpIHtcclxuICAgICAgY29uc3Qgc2NyaXB0ID0gdGhpcy5kb2N1bWVudC5nZXRFbGVtZW50QnlJZCh0aGlzLnNjcmlwdElkKTtcclxuICAgICAgc2NyaXB0Py5yZW1vdmUoKTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuIl19
39
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoieW91dHViZS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc2l0ZS1mcm9udC1lbmQtbGliL3NyYy9saWIvc2VydmljZXMveW91dHViZS95b3V0dWJlLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQzlELE9BQU8sRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFFLFdBQVcsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7QUFLaEUsTUFBTSxPQUFPLGNBQWM7SUFHekIsWUFDK0IsVUFBa0IsRUFDckIsUUFBa0I7UUFEZixlQUFVLEdBQVYsVUFBVSxDQUFRO1FBQ3JCLGFBQVEsR0FBUixRQUFRLENBQVU7UUFKOUMsYUFBUSxHQUFHLFlBQVksQ0FBQztJQUtyQixDQUFDO0lBRUosU0FBUztRQUNQLElBQUksaUJBQWlCLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxFQUFFLENBQUM7WUFDdkYsTUFBTSxNQUFNLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxhQUFhLENBQUMsUUFBUSxDQUFDLENBQUM7WUFDckQsTUFBTSxDQUFDLEVBQUUsR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDO1lBQzFCLE1BQU0sQ0FBQyxHQUFHLEdBQUcsb0NBQW9DLENBQUM7WUFDbEQsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQ3pDLENBQUM7SUFDSCxDQUFDO0lBRUQsWUFBWTtRQUNWLElBQUksaUJBQWlCLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxFQUFFLENBQUM7WUFDdkMsTUFBTSxNQUFNLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1lBQzNELE1BQU0sRUFBRSxNQUFNLEVBQUUsQ0FBQztRQUNuQixDQUFDO0lBQ0gsQ0FBQzsrR0F0QlUsY0FBYyxrQkFJZixXQUFXLGFBQ1gsUUFBUTttSEFMUCxjQUFjLGNBRmIsTUFBTTs7NEZBRVAsY0FBYztrQkFIMUIsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkI7OzBCQUtJLE1BQU07MkJBQUMsV0FBVzs7MEJBQ2xCLE1BQU07MkJBQUMsUUFBUSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERPQ1VNRU5ULCBpc1BsYXRmb3JtQnJvd3NlciB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBJbmplY3QsIEluamVjdGFibGUsIFBMQVRGT1JNX0lEIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnLFxufSlcbmV4cG9ydCBjbGFzcyBZb3V0dWJlU2VydmljZSB7XG4gIHNjcmlwdElkID0gJ3lvdXR1YmVBcGknO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIEBJbmplY3QoUExBVEZPUk1fSUQpIHByaXZhdGUgcGxhdGZvcm1JZDogb2JqZWN0LFxuICAgIEBJbmplY3QoRE9DVU1FTlQpIHByaXZhdGUgZG9jdW1lbnQ6IERvY3VtZW50LFxuICApIHt9XG5cbiAgc2V0U2NyaXB0KCk6IHZvaWQge1xuICAgIGlmIChpc1BsYXRmb3JtQnJvd3Nlcih0aGlzLnBsYXRmb3JtSWQpICYmICF0aGlzLmRvY3VtZW50LmdldEVsZW1lbnRCeUlkKHRoaXMuc2NyaXB0SWQpKSB7XG4gICAgICBjb25zdCBzY3JpcHQgPSB0aGlzLmRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ3NjcmlwdCcpO1xuICAgICAgc2NyaXB0LmlkID0gdGhpcy5zY3JpcHRJZDtcbiAgICAgIHNjcmlwdC5zcmMgPSAnaHR0cHM6Ly93d3cueW91dHViZS5jb20vaWZyYW1lX2FwaSc7XG4gICAgICB0aGlzLmRvY3VtZW50LmJvZHkuYXBwZW5kQ2hpbGQoc2NyaXB0KTtcbiAgICB9XG4gIH1cblxuICByZW1vdmVTY3JpcHQoKTogdm9pZCB7XG4gICAgaWYgKGlzUGxhdGZvcm1Ccm93c2VyKHRoaXMucGxhdGZvcm1JZCkpIHtcbiAgICAgIGNvbnN0IHNjcmlwdCA9IHRoaXMuZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQodGhpcy5zY3JpcHRJZCk7XG4gICAgICBzY3JpcHQ/LnJlbW92ZSgpO1xuICAgIH1cbiAgfVxufVxuIl19
@@ -1,3 +1,3 @@
1
1
  import { InjectionToken } from '@angular/core';
2
2
  export const SSR_CURA_API = new InjectionToken('SSR Cura API');
3
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQ3VyYUFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3NpdGUtZnJvbnQtZW5kLWxpYi9zcmMvbGliL3Rva2Vucy9DdXJhQXBpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFL0MsTUFBTSxDQUFDLE1BQU0sWUFBWSxHQUFHLElBQUksY0FBYyxDQUFNLGNBQWMsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0aW9uVG9rZW4gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuXHJcbmV4cG9ydCBjb25zdCBTU1JfQ1VSQV9BUEkgPSBuZXcgSW5qZWN0aW9uVG9rZW48YW55PignU1NSIEN1cmEgQVBJJyk7XHJcbiJdfQ==
3
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQ3VyYUFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3NpdGUtZnJvbnQtZW5kLWxpYi9zcmMvbGliL3Rva2Vucy9DdXJhQXBpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFL0MsTUFBTSxDQUFDLE1BQU0sWUFBWSxHQUFHLElBQUksY0FBYyxDQUFNLGNBQWMsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0aW9uVG9rZW4gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuZXhwb3J0IGNvbnN0IFNTUl9DVVJBX0FQSSA9IG5ldyBJbmplY3Rpb25Ub2tlbjxhbnk+KCdTU1IgQ3VyYSBBUEknKTtcbiJdfQ==
@@ -1,4 +1,4 @@
1
1
  import { InjectionToken } from '@angular/core';
2
2
  // Configura a lib com informações especificas de cada projeto.
3
3
  export const LIB_CONFIG = new InjectionToken('libConfig');
4
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiTGliQ29uZmlnLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc2l0ZS1mcm9udC1lbmQtbGliL3NyYy9saWIvdG9rZW5zL0xpYkNvbmZpZy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQWMsY0FBYyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBaUQzRCwrREFBK0Q7QUFDL0QsTUFBTSxDQUFDLE1BQU0sVUFBVSxHQUFHLElBQUksY0FBYyxDQUFZLFdBQVcsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRWxlbWVudFJlZiwgSW5qZWN0aW9uVG9rZW4gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgTGliQ29uZmlnIHtcclxuICBwcm9kdWN0aW9uOiBib29sZWFuO1xyXG4gIGVudmlyb25tZW50TmFtZTogc3RyaW5nO1xyXG4gIHNpdGVQcm9qZWN0OiBzdHJpbmc7XHJcbiAgc2VydmVyOiBib29sZWFuO1xyXG4gIHNpdGVOYW1lOiBzdHJpbmc7XHJcbiAgc2l0ZVVybDogc3RyaW5nO1xyXG4gIHNpdGVTdWZpeD86IHN0cmluZztcclxuICBjbGllbnRfaWQ6IHN0cmluZztcclxuICB4T3JpZ2luQXBwbGljYXRpb246IHN0cmluZztcclxuICBzZWFyY2hBcGlFbnY6IHN0cmluZztcclxuICBmYWxsYmFja0ltZ1NyYzogc3RyaW5nO1xyXG5cclxuICAvLyBDdXJhIGljb25zZXRcclxuICBpY29uc2V0RGVmYXVsdExpc3Q6IHN0cmluZ1tdO1xyXG5cclxuICAvLyBzaXRlLWJhY2stZW5kIChTTkYpXHJcbiAgc2l0ZUFwaToge1xyXG4gICAgYXV0aDoge1xyXG4gICAgICB1c2VyOiBzdHJpbmc7XHJcbiAgICAgIHBhc3N3b3JkOiBzdHJpbmc7XHJcbiAgICB9O1xyXG4gICAgYmFzZTogc3RyaW5nO1xyXG4gICAgYmFzZUludGVybmFsOiBzdHJpbmc7XHJcbiAgICByZWNhcHRjaGE6IHN0cmluZztcclxuICAgIGNlbnRyb0VzdHVkb3M6IHN0cmluZztcclxuICB9O1xyXG5cclxuICAvLyBBbGdvbGlhIFNlYXJjaFxyXG4gIGFsZ29saWFDb25maWc6IHtcclxuICAgIGlkOiBzdHJpbmc7XHJcbiAgICBrZXk6IHN0cmluZztcclxuICB9O1xyXG5cclxuICAvLyBXb3JkcHJlc3NcclxuICB3cFVybDogc3RyaW5nO1xyXG5cclxuICAvLyBTRU9cclxuICBrZXl3b3Jkczogc3RyaW5nO1xyXG4gIGxvZ29QYXRoPzogc3RyaW5nO1xyXG5cclxuICAvLyByZHNpdGVsaW5rIGN1c3RvbSBhbmNob3IgYWRqdXN0bWVudFxyXG4gIGN1c3RvbUFuY2hvckFkanVzdG1lbnQ/OiAoZG9jdW1lbnQ6IERvY3VtZW50KSA9PiBudW1iZXI7XHJcbiAgY3VzdG9tUGhvbmVNb2RhbENvbmRpdGlvbj86IChlbGVtZW50OiBFbGVtZW50UmVmPGFueT4pID0+IGJvb2xlYW47XHJcbiAgY3VzdG9tSW50ZXJuYWxMaW5rTmF2aWdhdGlvbj86IChub0Jhc2VIcmVmOiBzdHJpbmcpID0+IGJvb2xlYW47XHJcbn1cclxuXHJcbi8vIENvbmZpZ3VyYSBhIGxpYiBjb20gaW5mb3JtYcOnw7VlcyBlc3BlY2lmaWNhcyBkZSBjYWRhIHByb2pldG8uXHJcbmV4cG9ydCBjb25zdCBMSUJfQ09ORklHID0gbmV3IEluamVjdGlvblRva2VuPExpYkNvbmZpZz4oJ2xpYkNvbmZpZycpO1xyXG4iXX0=
4
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiTGliQ29uZmlnLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc2l0ZS1mcm9udC1lbmQtbGliL3NyYy9saWIvdG9rZW5zL0xpYkNvbmZpZy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQWMsY0FBYyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBaUQzRCwrREFBK0Q7QUFDL0QsTUFBTSxDQUFDLE1BQU0sVUFBVSxHQUFHLElBQUksY0FBYyxDQUFZLFdBQVcsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRWxlbWVudFJlZiwgSW5qZWN0aW9uVG9rZW4gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuZXhwb3J0IGludGVyZmFjZSBMaWJDb25maWcge1xuICBwcm9kdWN0aW9uOiBib29sZWFuO1xuICBlbnZpcm9ubWVudE5hbWU6IHN0cmluZztcbiAgc2l0ZVByb2plY3Q6IHN0cmluZztcbiAgc2VydmVyOiBib29sZWFuO1xuICBzaXRlTmFtZTogc3RyaW5nO1xuICBzaXRlVXJsOiBzdHJpbmc7XG4gIHNpdGVTdWZpeD86IHN0cmluZztcbiAgY2xpZW50X2lkOiBzdHJpbmc7XG4gIHhPcmlnaW5BcHBsaWNhdGlvbjogc3RyaW5nO1xuICBzZWFyY2hBcGlFbnY6IHN0cmluZztcbiAgZmFsbGJhY2tJbWdTcmM6IHN0cmluZztcblxuICAvLyBDdXJhIGljb25zZXRcbiAgaWNvbnNldERlZmF1bHRMaXN0OiBzdHJpbmdbXTtcblxuICAvLyBzaXRlLWJhY2stZW5kIChTTkYpXG4gIHNpdGVBcGk6IHtcbiAgICBhdXRoOiB7XG4gICAgICB1c2VyOiBzdHJpbmc7XG4gICAgICBwYXNzd29yZDogc3RyaW5nO1xuICAgIH07XG4gICAgYmFzZTogc3RyaW5nO1xuICAgIGJhc2VJbnRlcm5hbDogc3RyaW5nO1xuICAgIHJlY2FwdGNoYTogc3RyaW5nO1xuICAgIGNlbnRyb0VzdHVkb3M6IHN0cmluZztcbiAgfTtcblxuICAvLyBBbGdvbGlhIFNlYXJjaFxuICBhbGdvbGlhQ29uZmlnOiB7XG4gICAgaWQ6IHN0cmluZztcbiAgICBrZXk6IHN0cmluZztcbiAgfTtcblxuICAvLyBXb3JkcHJlc3NcbiAgd3BVcmw6IHN0cmluZztcblxuICAvLyBTRU9cbiAga2V5d29yZHM6IHN0cmluZztcbiAgbG9nb1BhdGg/OiBzdHJpbmc7XG5cbiAgLy8gcmRzaXRlbGluayBjdXN0b20gYW5jaG9yIGFkanVzdG1lbnRcbiAgY3VzdG9tQW5jaG9yQWRqdXN0bWVudD86IChkb2N1bWVudDogRG9jdW1lbnQpID0+IG51bWJlcjtcbiAgY3VzdG9tUGhvbmVNb2RhbENvbmRpdGlvbj86IChlbGVtZW50OiBFbGVtZW50UmVmPGFueT4pID0+IGJvb2xlYW47XG4gIGN1c3RvbUludGVybmFsTGlua05hdmlnYXRpb24/OiAobm9CYXNlSHJlZjogc3RyaW5nKSA9PiBib29sZWFuO1xufVxuXG4vLyBDb25maWd1cmEgYSBsaWIgY29tIGluZm9ybWHDp8O1ZXMgZXNwZWNpZmljYXMgZGUgY2FkYSBwcm9qZXRvLlxuZXhwb3J0IGNvbnN0IExJQl9DT05GSUcgPSBuZXcgSW5qZWN0aW9uVG9rZW48TGliQ29uZmlnPignbGliQ29uZmlnJyk7XG4iXX0=
@@ -1,4 +1,4 @@
1
1
  import { InjectionToken } from '@angular/core';
2
2
  export const REQUEST = new InjectionToken('REQUEST');
3
3
  export const RESPONSE = new InjectionToken('RESPONSE');
4
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXhwcmVzcy50b2tlbnMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zaXRlLWZyb250LWVuZC1saWIvc3JjL2xpYi90b2tlbnMvZXhwcmVzcy50b2tlbnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUcvQyxNQUFNLENBQUMsTUFBTSxPQUFPLEdBQUcsSUFBSSxjQUFjLENBQVUsU0FBUyxDQUFDLENBQUM7QUFDOUQsTUFBTSxDQUFDLE1BQU0sUUFBUSxHQUFHLElBQUksY0FBYyxDQUFXLFVBQVUsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0aW9uVG9rZW4gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgUmVxdWVzdCwgUmVzcG9uc2UgfSBmcm9tICdleHByZXNzJztcclxuXHJcbmV4cG9ydCBjb25zdCBSRVFVRVNUID0gbmV3IEluamVjdGlvblRva2VuPFJlcXVlc3Q+KCdSRVFVRVNUJyk7XHJcbmV4cG9ydCBjb25zdCBSRVNQT05TRSA9IG5ldyBJbmplY3Rpb25Ub2tlbjxSZXNwb25zZT4oJ1JFU1BPTlNFJyk7XHJcbiJdfQ==
4
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXhwcmVzcy50b2tlbnMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zaXRlLWZyb250LWVuZC1saWIvc3JjL2xpYi90b2tlbnMvZXhwcmVzcy50b2tlbnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUcvQyxNQUFNLENBQUMsTUFBTSxPQUFPLEdBQUcsSUFBSSxjQUFjLENBQVUsU0FBUyxDQUFDLENBQUM7QUFDOUQsTUFBTSxDQUFDLE1BQU0sUUFBUSxHQUFHLElBQUksY0FBYyxDQUFXLFVBQVUsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0aW9uVG9rZW4gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFJlcXVlc3QsIFJlc3BvbnNlIH0gZnJvbSAnZXhwcmVzcyc7XG5cbmV4cG9ydCBjb25zdCBSRVFVRVNUID0gbmV3IEluamVjdGlvblRva2VuPFJlcXVlc3Q+KCdSRVFVRVNUJyk7XG5leHBvcnQgY29uc3QgUkVTUE9OU0UgPSBuZXcgSW5qZWN0aW9uVG9rZW48UmVzcG9uc2U+KCdSRVNQT05TRScpO1xuIl19
@@ -19,4 +19,4 @@ export * from './lib/enums';
19
19
  export * from './lib/tokens/CuraApi';
20
20
  export * from './lib/tokens/express.tokens';
21
21
  export * from './lib/tokens/LibConfig';
22
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3Byb2plY3RzL3NpdGUtZnJvbnQtZW5kLWxpYi9zcmMvcHVibGljLWFwaS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUVILGFBQWE7QUFDYixjQUFjLGtCQUFrQixDQUFDO0FBRWpDLGFBQWE7QUFDYixjQUFjLGtCQUFrQixDQUFDO0FBRWpDLFFBQVE7QUFDUixjQUFjLGFBQWEsQ0FBQztBQUU1QixVQUFVO0FBQ1YsY0FBYyxnQkFBZ0IsQ0FBQztBQUUvQixlQUFlO0FBQ2YsY0FBYyxvQkFBb0IsQ0FBQztBQUVuQyxVQUFVO0FBQ1YsY0FBYyxlQUFlLENBQUM7QUFFOUIsUUFBUTtBQUNSLGNBQWMsYUFBYSxDQUFDO0FBRTVCLFNBQVM7QUFDVCxjQUFjLHNCQUFzQixDQUFDO0FBQ3JDLGNBQWMsNkJBQTZCLENBQUM7QUFDNUMsY0FBYyx3QkFBd0IsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qXHJcbiAqIFB1YmxpYyBBUEkgU3VyZmFjZSBvZiBzaXRlLWZyb250LWVuZC1saWJcclxuICovXHJcblxyXG4vLyBDb21wb25lbnRzXHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMnO1xyXG5cclxuLy8gRGlyZWN0aXZlc1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9kaXJlY3RpdmVzJztcclxuXHJcbi8vIFBpcGVzXHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL3BpcGVzJztcclxuXHJcbi8vU2VydmljZXNcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvc2VydmljZXMnO1xyXG5cclxuLy8gSW50ZXJjZXB0b3JzXHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2ludGVyY2VwdG9ycyc7XHJcblxyXG4vLyBIZWxwZXJzXHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2hlbHBlcnMnO1xyXG5cclxuLy8gRW51bXNcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvZW51bXMnO1xyXG5cclxuLy8gVG9rZW5zXHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL3Rva2Vucy9DdXJhQXBpJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvdG9rZW5zL2V4cHJlc3MudG9rZW5zJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvdG9rZW5zL0xpYkNvbmZpZyc7XHJcbiJdfQ==
22
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3Byb2plY3RzL3NpdGUtZnJvbnQtZW5kLWxpYi9zcmMvcHVibGljLWFwaS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUVILGFBQWE7QUFDYixjQUFjLGtCQUFrQixDQUFDO0FBRWpDLGFBQWE7QUFDYixjQUFjLGtCQUFrQixDQUFDO0FBRWpDLFFBQVE7QUFDUixjQUFjLGFBQWEsQ0FBQztBQUU1QixVQUFVO0FBQ1YsY0FBYyxnQkFBZ0IsQ0FBQztBQUUvQixlQUFlO0FBQ2YsY0FBYyxvQkFBb0IsQ0FBQztBQUVuQyxVQUFVO0FBQ1YsY0FBYyxlQUFlLENBQUM7QUFFOUIsUUFBUTtBQUNSLGNBQWMsYUFBYSxDQUFDO0FBRTVCLFNBQVM7QUFDVCxjQUFjLHNCQUFzQixDQUFDO0FBQ3JDLGNBQWMsNkJBQTZCLENBQUM7QUFDNUMsY0FBYyx3QkFBd0IsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qXG4gKiBQdWJsaWMgQVBJIFN1cmZhY2Ugb2Ygc2l0ZS1mcm9udC1lbmQtbGliXG4gKi9cblxuLy8gQ29tcG9uZW50c1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cyc7XG5cbi8vIERpcmVjdGl2ZXNcbmV4cG9ydCAqIGZyb20gJy4vbGliL2RpcmVjdGl2ZXMnO1xuXG4vLyBQaXBlc1xuZXhwb3J0ICogZnJvbSAnLi9saWIvcGlwZXMnO1xuXG4vL1NlcnZpY2VzXG5leHBvcnQgKiBmcm9tICcuL2xpYi9zZXJ2aWNlcyc7XG5cbi8vIEludGVyY2VwdG9yc1xuZXhwb3J0ICogZnJvbSAnLi9saWIvaW50ZXJjZXB0b3JzJztcblxuLy8gSGVscGVyc1xuZXhwb3J0ICogZnJvbSAnLi9saWIvaGVscGVycyc7XG5cbi8vIEVudW1zXG5leHBvcnQgKiBmcm9tICcuL2xpYi9lbnVtcyc7XG5cbi8vIFRva2Vuc1xuZXhwb3J0ICogZnJvbSAnLi9saWIvdG9rZW5zL0N1cmFBcGknO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvdG9rZW5zL2V4cHJlc3MudG9rZW5zJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3Rva2Vucy9MaWJDb25maWcnO1xuIl19