tango-app-ui-shared 3.3.1-beta.9 → 3.3.1-beta.91

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 (62) hide show
  1. package/esm2022/lib/guards/stores.guard.mjs +5 -5
  2. package/esm2022/lib/guards/tickets.guard.mjs +5 -5
  3. package/esm2022/lib/modules/common/filters/filters.component.mjs +2 -2
  4. package/esm2022/lib/modules/intro/lead-intro/lead-intro.component.mjs +13 -8
  5. package/esm2022/lib/modules/layout/header/header-menu/header-menu.component.mjs +3 -3
  6. package/esm2022/lib/modules/layout/header/header.component.mjs +2 -2
  7. package/esm2022/lib/modules/layout/header/navbar/navbar.component.mjs +6 -3
  8. package/esm2022/lib/modules/layout/header/page-title/page-title.component.mjs +2 -1
  9. package/esm2022/lib/modules/layout/layout/layout.component.mjs +24 -4
  10. package/esm2022/lib/modules/layout/layout.module.mjs +18 -3
  11. package/esm2022/lib/modules/layout/sidebar/sidebar-menu/sidebar-menu.component.mjs +43 -16
  12. package/esm2022/lib/modules/layout/toolbar/client-settings/client-settings.component.mjs +8 -2
  13. package/esm2022/lib/modules/layout/toolbar/date-single-select/date-single-select.component.mjs +33 -9
  14. package/esm2022/lib/modules/layout/toolbar/datepicker/datepicker.component.mjs +11 -6
  15. package/esm2022/lib/modules/layout/toolbar/single-store/single-store.component.mjs +41 -12
  16. package/esm2022/lib/modules/layout/toolbar/single-storedate/single-storedate.component.mjs +130 -0
  17. package/esm2022/lib/modules/layout/toolbar/storesingle/storesingle.component.mjs +105 -0
  18. package/esm2022/lib/modules/layout/toolbar/toolbar.component.mjs +93 -22
  19. package/esm2022/lib/modules/layout/toolbar/traffic-header/traffic-header/traffic-header.component.mjs +265 -138
  20. package/esm2022/lib/modules/layout/toolbar/traffic-nob/traffic-nob.component.mjs +795 -0
  21. package/esm2022/lib/modules/layout/toolbar/trax-header/trax-header.component.mjs +867 -0
  22. package/esm2022/lib/modules/layout/toolbar/trax-withoutdate/trax-withoutdate.component.mjs +729 -0
  23. package/esm2022/lib/modules/notification/conformation/conformation.component.mjs +22 -0
  24. package/esm2022/lib/modules/notification/notification/notification.component.mjs +161 -22
  25. package/esm2022/lib/modules/notification/notification-routing.module.mjs +5 -1
  26. package/esm2022/lib/modules/notification/notification.module.mjs +6 -3
  27. package/esm2022/lib/routes/route-wraper-modules/edge-wrapper.module.mjs +1 -1
  28. package/esm2022/lib/services/auth.service.mjs +8 -6
  29. package/esm2022/lib/services/notification.service.mjs +9 -1
  30. package/fesm2022/tango-app-ui-shared-edge-wrapper.module-CFDk0tvS.mjs.map +1 -1
  31. package/fesm2022/{tango-app-ui-shared-intro.module-CZdX0CkN.mjs → tango-app-ui-shared-intro.module-DYh4ZRha.mjs} +14 -9
  32. package/fesm2022/tango-app-ui-shared-intro.module-DYh4ZRha.mjs.map +1 -0
  33. package/fesm2022/tango-app-ui-shared-manage-wrapper.module-BHyh4Njw.mjs.map +1 -1
  34. package/fesm2022/tango-app-ui-shared-notification.module-C5ZmCf8U.mjs +400 -0
  35. package/fesm2022/tango-app-ui-shared-notification.module-C5ZmCf8U.mjs.map +1 -0
  36. package/fesm2022/tango-app-ui-shared-profile-wrapper.module-BNC1AGOk.mjs.map +1 -1
  37. package/fesm2022/tango-app-ui-shared-store-wrapper.module-DdaCYHdv.mjs.map +1 -1
  38. package/fesm2022/tango-app-ui-shared-ticket-wrapper.module-r32uKkDO.mjs.map +1 -1
  39. package/fesm2022/tango-app-ui-shared.mjs +3251 -348
  40. package/fesm2022/tango-app-ui-shared.mjs.map +1 -1
  41. package/lib/modules/intro/lead-intro/lead-intro.component.d.ts +4 -1
  42. package/lib/modules/layout/header/navbar/navbar.component.d.ts +1 -0
  43. package/lib/modules/layout/layout/layout.component.d.ts +3 -0
  44. package/lib/modules/layout/layout.module.d.ts +15 -10
  45. package/lib/modules/layout/sidebar/sidebar-menu/sidebar-menu.component.d.ts +2 -0
  46. package/lib/modules/layout/toolbar/single-store/single-store.component.d.ts +11 -4
  47. package/lib/modules/layout/toolbar/single-storedate/single-storedate.component.d.ts +30 -0
  48. package/lib/modules/layout/toolbar/storesingle/storesingle.component.d.ts +24 -0
  49. package/lib/modules/layout/toolbar/toolbar.component.d.ts +7 -1
  50. package/lib/modules/layout/toolbar/traffic-header/traffic-header/traffic-header.component.d.ts +5 -1
  51. package/lib/modules/layout/toolbar/traffic-nob/traffic-nob.component.d.ts +80 -0
  52. package/lib/modules/layout/toolbar/trax-header/trax-header.component.d.ts +82 -0
  53. package/lib/modules/layout/toolbar/trax-withoutdate/trax-withoutdate.component.d.ts +74 -0
  54. package/lib/modules/notification/conformation/conformation.component.d.ts +10 -0
  55. package/lib/modules/notification/notification/notification.component.d.ts +21 -3
  56. package/lib/modules/notification/notification.module.d.ts +5 -4
  57. package/lib/services/auth.service.d.ts +1 -0
  58. package/lib/services/notification.service.d.ts +3 -0
  59. package/package.json +1 -1
  60. package/fesm2022/tango-app-ui-shared-intro.module-CZdX0CkN.mjs.map +0 -1
  61. package/fesm2022/tango-app-ui-shared-notification.module-CbWXIyly.mjs +0 -238
  62. package/fesm2022/tango-app-ui-shared-notification.module-CbWXIyly.mjs.map +0 -1
@@ -91,10 +91,10 @@ export class HeaderComponent {
91
91
  this.unsubscribe.forEach((sb) => sb.unsubscribe());
92
92
  }
93
93
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: HeaderComponent, deps: [{ token: i1.LayoutService }, { token: i2.Router }], target: i0.ɵɵFactoryTarget.Component });
94
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: HeaderComponent, selector: "lib-header", ngImport: i0, template: "<!--begin::Header container-->\r\n<div class=\"app-container header-style\" id=\"kt_app_header_container\" [ngClass]=\"headerContainerCssClass\">\r\n <ng-container *ngIf=\"appSidebarDefaultCollapseDesktopEnabled\">\r\n <div class=\"app-sidebar-collapse-d-flex align-items-center me-3\">\r\n <!--begin::sidebar toggle-->\r\n <div class=\"btn btn-icon w-auto px-0 btn-color-muted btn-active-icon-primary\" data-kt-toggle=\"true\"\r\n data-kt-toggle-target=\"body\" data-kt-toggle-mode=\"on\" data-kt-toggle-name=\"app-sidebar-collapse\">\r\n <lib-keenicon name=\"double-right\" class=\"fs-1\"></lib-keenicon>\r\n </div>\r\n <!--end::sidebar toggle-->\r\n </div>\r\n </ng-container>\r\n\r\n <ng-container *ngIf=\"appSidebarDisplay\">\r\n <!--begin::sidebar mobile toggle-->\r\n <div class=\"d-flex align-items-center d-lg-none ms-n2 me-2\" title=\"Show sidebar menu\">\r\n <div class=\"btn btn-icon btn-active-color-primary w-35px h-35px\" id=\"kt_app_sidebar_mobile_toggle\">\r\n <lib-keenicon name=\"abstract-14\" class=\"fs-1\"></lib-keenicon>\r\n </div>\r\n </div>\r\n <!--end::sidebar mobile toggle-->\r\n <!--begin::Mobile logo-->\r\n <div class=\"d-flex align-items-center flex-grow-1 flex-lg-grow-0\">\r\n <a class=\"d-lg-none\">\r\n <img alt=\"Logo\" src=\"./assets/tango/sidemenu-icons/tango_logo.svg\" class=\"h-30px\" />\r\n </a>\r\n </div>\r\n <!--end::Mobile logo-->\r\n </ng-container>\r\n\r\n <ng-container *ngIf=\"!appSidebarDisplay\">\r\n <!--begin::Logo-->\r\n <div class=\"d-flex align-items-center flex-grow-1 flex-lg-grow-0 me-lg-15\">\r\n <a >\r\n <ng-container *ngIf=\"currentLayoutType === 'dark-header'\">\r\n <img alt=\"Logo\" src=\"./assets/tango/sidemenu-icons/tango_logo.svg\"\r\n class=\"h-20px h-lg-30px app-sidebar-logo-default\" />\r\n </ng-container>\r\n <ng-container *ngIf=\"currentLayoutType !== 'dark-header'\">\r\n <img alt=\"Logo\" src=\"./assets/tango/sidemenu-icons/tango_logo.svg\"\r\n class=\"h-20px h-lg-30px app-sidebar-logo-default theme-light-show\" />\r\n <img alt=\"Logo\" src=\"./assets/tango/sidemenu-icons/tango_logo.svg\"\r\n class=\"h-20px h-lg-30px app-sidebar-logo-default theme-dark-show\" />\r\n </ng-container>\r\n </a>\r\n </div>\r\n <!--end::Logo-->\r\n </ng-container>\r\n\r\n <!--begin::Header wrapper-->\r\n <div class=\"d-flex align-items-stretch justify-content-between flex-lg-grow-1 header-border\" id=\"kt_app_header_wrapper\">\r\n <ng-container *ngIf=\"appHeaderDefaultContent === 'menu' && appHeaderDefaulMenuDisplay\">\r\n <!--begin::Menu wrapper-->\r\n <div class=\"\r\n app-header-menu\r\n app-header-mobile-drawer\r\n align-items-stretch\r\n\" data-kt-drawer=\"true\" data-kt-drawer-name=\"app-header-menu\" data-kt-drawer-activate=\"{default: true, lg: false}\"\r\n data-kt-drawer-overlay=\"true\" data-kt-drawer-width=\"225px\" data-kt-drawer-direction=\"end\"\r\n data-kt-drawer-toggle=\"#kt_app_header_menu_toggle\" data-kt-swapper=\"true\"\r\n data-kt-swapper-mode=\"{default: 'append', lg: 'prepend'}\"\r\n data-kt-swapper-parent=\"{default: '#kt_app_body', lg: '#kt_app_header_wrapper'}\">\r\n <!--begin::Menu-->\r\n <lib-header-menu\r\n appPageTitleDirection = ''\r\n [appPageTitleDescription] = true\r\n class=\"\r\n menu\r\n menu-rounded\r\n menu-column\r\n menu-lg-row\r\n my-5\r\n my-lg-0\r\n align-items-stretch\r\n fw-semibold\r\n px-2 px-lg-0\r\n \" id=\"kt_app_header_menu\" data-kt-menu=\"true\"></lib-header-menu>\r\n <!--end::Menu-->\r\n </div>\r\n <!--end::Menu wrapper-->\r\n </ng-container>\r\n <!-- <ng-container *ngIf=\"appHeaderDefaultContent === 'page-title' && appPageTitleDisplay\">\r\n <app-page-title #ktPageTitle class=\"page-title d-flex\"></app-page-title>\r\n </ng-container> -->\r\n <lib-navbar class=\"app-navbar flex-shrink-0\" [appHeaderDefaulMenuDisplay]=\"appHeaderDefaulMenuDisplay\"\r\n [isRtl]=\"false\"></lib-navbar>\r\n </div>\r\n <!--end::Header wrapper-->\r\n</div>\r\n<!--end::Header container-->\r\n", styles: [".header-style{background-color:#fff}.header-border{border-bottom:1px solid #EAECF0}\n"], dependencies: [{ kind: "directive", type: i3.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i4.HeaderMenuComponent, selector: "lib-header-menu", inputs: ["appPageTitleDirection", "appPageTitleDescription"] }, { kind: "component", type: i5.NavbarComponent, selector: "lib-navbar", inputs: ["appHeaderDefaulMenuDisplay", "isRtl"] }, { kind: "component", type: i6.KeeniconComponent, selector: "lib-keenicon", inputs: ["name", "class", "type"] }] });
94
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: HeaderComponent, selector: "lib-header", ngImport: i0, template: "<!--begin::Header container-->\r\n<div class=\"app-container header-style\" id=\"kt_app_header_container\" [ngClass]=\"headerContainerCssClass\">\r\n <ng-container *ngIf=\"appSidebarDefaultCollapseDesktopEnabled\">\r\n <div class=\"app-sidebar-collapse-d-flex align-items-center me-3\">\r\n <!--begin::sidebar toggle-->\r\n <div class=\"btn btn-icon w-auto px-0 btn-color-muted btn-active-icon-primary\" data-kt-toggle=\"true\"\r\n data-kt-toggle-target=\"body\" data-kt-toggle-mode=\"on\" data-kt-toggle-name=\"app-sidebar-collapse\">\r\n <lib-keenicon name=\"double-right\" class=\"fs-1\"></lib-keenicon>\r\n </div>\r\n <!--end::sidebar toggle-->\r\n </div>\r\n </ng-container>\r\n\r\n <ng-container *ngIf=\"appSidebarDisplay\">\r\n <!--begin::sidebar mobile toggle-->\r\n <div class=\"d-flex align-items-center d-lg-none ms-n2 me-2\" title=\"Show sidebar menu\">\r\n <div class=\"btn btn-icon btn-active-color-primary w-35px h-35px\" id=\"kt_app_sidebar_mobile_toggle\">\r\n <lib-keenicon name=\"abstract-14\" class=\"fs-1\"></lib-keenicon>\r\n </div>\r\n </div>\r\n <!--end::sidebar mobile toggle-->\r\n <!--begin::Mobile logo-->\r\n <div class=\"d-flex align-items-center flex-grow-1 flex-lg-grow-0\">\r\n <a class=\"d-lg-none\">\r\n <img alt=\"Logo\" src=\"./assets/tango/sidemenu-icons/tango_logo.svg\" class=\"h-30px\" />\r\n </a>\r\n </div>\r\n <!--end::Mobile logo-->\r\n </ng-container>\r\n\r\n <ng-container *ngIf=\"!appSidebarDisplay\">\r\n <!--begin::Logo-->\r\n <div class=\"d-flex align-items-center flex-grow-1 flex-lg-grow-0 me-lg-15\">\r\n <a >\r\n <ng-container *ngIf=\"currentLayoutType === 'dark-header'\">\r\n <img alt=\"Logo\" src=\"./assets/tango/sidemenu-icons/tango_logo.svg\"\r\n class=\"h-20px h-lg-30px app-sidebar-logo-default\" />\r\n </ng-container>\r\n <ng-container *ngIf=\"currentLayoutType !== 'dark-header'\">\r\n <img alt=\"Logo\" src=\"./assets/tango/sidemenu-icons/tango_logo.svg\"\r\n class=\"h-20px h-lg-30px app-sidebar-logo-default theme-light-show\" />\r\n <img alt=\"Logo\" src=\"./assets/tango/sidemenu-icons/tango_logo.svg\"\r\n class=\"h-20px h-lg-30px app-sidebar-logo-default theme-dark-show\" />\r\n </ng-container>\r\n </a>\r\n </div>\r\n <!--end::Logo-->\r\n </ng-container>\r\n\r\n <!--begin::Header wrapper-->\r\n <div class=\"d-flex align-items-stretch justify-content-between flex-lg-grow-1 header-border\" id=\"kt_app_header_wrapper\">\r\n <ng-container *ngIf=\"appHeaderDefaultContent === 'menu' && appHeaderDefaulMenuDisplay\">\r\n <!--begin::Menu wrapper-->\r\n <div class=\"\r\n app-header-menu\r\n app-header-mobile-drawer\r\n align-items-stretch\r\n\" data-kt-drawer=\"true\" data-kt-drawer-name=\"app-header-menu\" data-kt-drawer-activate=\"{default: true, lg: false}\"\r\n data-kt-drawer-overlay=\"true\" data-kt-drawer-width=\"225px\" data-kt-drawer-direction=\"end\"\r\n data-kt-drawer-toggle=\"#kt_app_header_menu_toggle\" data-kt-swapper=\"true\"\r\n data-kt-swapper-mode=\"{default: 'append', lg: 'prepend'}\"\r\n data-kt-swapper-parent=\"{default: '#kt_app_body', lg: '#kt_app_header_wrapper'}\">\r\n <!--begin::Menu-->\r\n <lib-header-menu\r\n appPageTitleDirection = ''\r\n [appPageTitleDescription] = true\r\n class=\"\r\n menu\r\n menu-rounded\r\n menu-column\r\n menu-lg-row\r\n my-5\r\n my-lg-0\r\n align-items-stretch\r\n fw-semibold\r\n px-2 px-lg-0\r\n \" id=\"kt_app_header_menu\" data-kt-menu=\"true\"></lib-header-menu>\r\n <!--end::Menu-->\r\n </div>\r\n <!--end::Menu wrapper-->\r\n </ng-container>\r\n <!-- <ng-container *ngIf=\"appHeaderDefaultContent === 'page-title' && appPageTitleDisplay\">\r\n <app-page-title #ktPageTitle class=\"page-title d-flex\"></app-page-title>\r\n </ng-container> -->\r\n <lib-navbar class=\"app-navbar flex-shrink-0\" [appHeaderDefaulMenuDisplay]=\"appHeaderDefaulMenuDisplay\"\r\n [isRtl]=\"false\"></lib-navbar>\r\n </div>\r\n <!--end::Header wrapper-->\r\n</div>\r\n<!--end::Header container-->\r\n", styles: [".header-style{background-color:#fff}\n"], dependencies: [{ kind: "directive", type: i3.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i4.HeaderMenuComponent, selector: "lib-header-menu", inputs: ["appPageTitleDirection", "appPageTitleDescription"] }, { kind: "component", type: i5.NavbarComponent, selector: "lib-navbar", inputs: ["appHeaderDefaulMenuDisplay", "isRtl"] }, { kind: "component", type: i6.KeeniconComponent, selector: "lib-keenicon", inputs: ["name", "class", "type"] }] });
95
95
  }
96
96
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: HeaderComponent, decorators: [{
97
97
  type: Component,
98
- args: [{ selector: 'lib-header', template: "<!--begin::Header container-->\r\n<div class=\"app-container header-style\" id=\"kt_app_header_container\" [ngClass]=\"headerContainerCssClass\">\r\n <ng-container *ngIf=\"appSidebarDefaultCollapseDesktopEnabled\">\r\n <div class=\"app-sidebar-collapse-d-flex align-items-center me-3\">\r\n <!--begin::sidebar toggle-->\r\n <div class=\"btn btn-icon w-auto px-0 btn-color-muted btn-active-icon-primary\" data-kt-toggle=\"true\"\r\n data-kt-toggle-target=\"body\" data-kt-toggle-mode=\"on\" data-kt-toggle-name=\"app-sidebar-collapse\">\r\n <lib-keenicon name=\"double-right\" class=\"fs-1\"></lib-keenicon>\r\n </div>\r\n <!--end::sidebar toggle-->\r\n </div>\r\n </ng-container>\r\n\r\n <ng-container *ngIf=\"appSidebarDisplay\">\r\n <!--begin::sidebar mobile toggle-->\r\n <div class=\"d-flex align-items-center d-lg-none ms-n2 me-2\" title=\"Show sidebar menu\">\r\n <div class=\"btn btn-icon btn-active-color-primary w-35px h-35px\" id=\"kt_app_sidebar_mobile_toggle\">\r\n <lib-keenicon name=\"abstract-14\" class=\"fs-1\"></lib-keenicon>\r\n </div>\r\n </div>\r\n <!--end::sidebar mobile toggle-->\r\n <!--begin::Mobile logo-->\r\n <div class=\"d-flex align-items-center flex-grow-1 flex-lg-grow-0\">\r\n <a class=\"d-lg-none\">\r\n <img alt=\"Logo\" src=\"./assets/tango/sidemenu-icons/tango_logo.svg\" class=\"h-30px\" />\r\n </a>\r\n </div>\r\n <!--end::Mobile logo-->\r\n </ng-container>\r\n\r\n <ng-container *ngIf=\"!appSidebarDisplay\">\r\n <!--begin::Logo-->\r\n <div class=\"d-flex align-items-center flex-grow-1 flex-lg-grow-0 me-lg-15\">\r\n <a >\r\n <ng-container *ngIf=\"currentLayoutType === 'dark-header'\">\r\n <img alt=\"Logo\" src=\"./assets/tango/sidemenu-icons/tango_logo.svg\"\r\n class=\"h-20px h-lg-30px app-sidebar-logo-default\" />\r\n </ng-container>\r\n <ng-container *ngIf=\"currentLayoutType !== 'dark-header'\">\r\n <img alt=\"Logo\" src=\"./assets/tango/sidemenu-icons/tango_logo.svg\"\r\n class=\"h-20px h-lg-30px app-sidebar-logo-default theme-light-show\" />\r\n <img alt=\"Logo\" src=\"./assets/tango/sidemenu-icons/tango_logo.svg\"\r\n class=\"h-20px h-lg-30px app-sidebar-logo-default theme-dark-show\" />\r\n </ng-container>\r\n </a>\r\n </div>\r\n <!--end::Logo-->\r\n </ng-container>\r\n\r\n <!--begin::Header wrapper-->\r\n <div class=\"d-flex align-items-stretch justify-content-between flex-lg-grow-1 header-border\" id=\"kt_app_header_wrapper\">\r\n <ng-container *ngIf=\"appHeaderDefaultContent === 'menu' && appHeaderDefaulMenuDisplay\">\r\n <!--begin::Menu wrapper-->\r\n <div class=\"\r\n app-header-menu\r\n app-header-mobile-drawer\r\n align-items-stretch\r\n\" data-kt-drawer=\"true\" data-kt-drawer-name=\"app-header-menu\" data-kt-drawer-activate=\"{default: true, lg: false}\"\r\n data-kt-drawer-overlay=\"true\" data-kt-drawer-width=\"225px\" data-kt-drawer-direction=\"end\"\r\n data-kt-drawer-toggle=\"#kt_app_header_menu_toggle\" data-kt-swapper=\"true\"\r\n data-kt-swapper-mode=\"{default: 'append', lg: 'prepend'}\"\r\n data-kt-swapper-parent=\"{default: '#kt_app_body', lg: '#kt_app_header_wrapper'}\">\r\n <!--begin::Menu-->\r\n <lib-header-menu\r\n appPageTitleDirection = ''\r\n [appPageTitleDescription] = true\r\n class=\"\r\n menu\r\n menu-rounded\r\n menu-column\r\n menu-lg-row\r\n my-5\r\n my-lg-0\r\n align-items-stretch\r\n fw-semibold\r\n px-2 px-lg-0\r\n \" id=\"kt_app_header_menu\" data-kt-menu=\"true\"></lib-header-menu>\r\n <!--end::Menu-->\r\n </div>\r\n <!--end::Menu wrapper-->\r\n </ng-container>\r\n <!-- <ng-container *ngIf=\"appHeaderDefaultContent === 'page-title' && appPageTitleDisplay\">\r\n <app-page-title #ktPageTitle class=\"page-title d-flex\"></app-page-title>\r\n </ng-container> -->\r\n <lib-navbar class=\"app-navbar flex-shrink-0\" [appHeaderDefaulMenuDisplay]=\"appHeaderDefaulMenuDisplay\"\r\n [isRtl]=\"false\"></lib-navbar>\r\n </div>\r\n <!--end::Header wrapper-->\r\n</div>\r\n<!--end::Header container-->\r\n", styles: [".header-style{background-color:#fff}.header-border{border-bottom:1px solid #EAECF0}\n"] }]
98
+ args: [{ selector: 'lib-header', template: "<!--begin::Header container-->\r\n<div class=\"app-container header-style\" id=\"kt_app_header_container\" [ngClass]=\"headerContainerCssClass\">\r\n <ng-container *ngIf=\"appSidebarDefaultCollapseDesktopEnabled\">\r\n <div class=\"app-sidebar-collapse-d-flex align-items-center me-3\">\r\n <!--begin::sidebar toggle-->\r\n <div class=\"btn btn-icon w-auto px-0 btn-color-muted btn-active-icon-primary\" data-kt-toggle=\"true\"\r\n data-kt-toggle-target=\"body\" data-kt-toggle-mode=\"on\" data-kt-toggle-name=\"app-sidebar-collapse\">\r\n <lib-keenicon name=\"double-right\" class=\"fs-1\"></lib-keenicon>\r\n </div>\r\n <!--end::sidebar toggle-->\r\n </div>\r\n </ng-container>\r\n\r\n <ng-container *ngIf=\"appSidebarDisplay\">\r\n <!--begin::sidebar mobile toggle-->\r\n <div class=\"d-flex align-items-center d-lg-none ms-n2 me-2\" title=\"Show sidebar menu\">\r\n <div class=\"btn btn-icon btn-active-color-primary w-35px h-35px\" id=\"kt_app_sidebar_mobile_toggle\">\r\n <lib-keenicon name=\"abstract-14\" class=\"fs-1\"></lib-keenicon>\r\n </div>\r\n </div>\r\n <!--end::sidebar mobile toggle-->\r\n <!--begin::Mobile logo-->\r\n <div class=\"d-flex align-items-center flex-grow-1 flex-lg-grow-0\">\r\n <a class=\"d-lg-none\">\r\n <img alt=\"Logo\" src=\"./assets/tango/sidemenu-icons/tango_logo.svg\" class=\"h-30px\" />\r\n </a>\r\n </div>\r\n <!--end::Mobile logo-->\r\n </ng-container>\r\n\r\n <ng-container *ngIf=\"!appSidebarDisplay\">\r\n <!--begin::Logo-->\r\n <div class=\"d-flex align-items-center flex-grow-1 flex-lg-grow-0 me-lg-15\">\r\n <a >\r\n <ng-container *ngIf=\"currentLayoutType === 'dark-header'\">\r\n <img alt=\"Logo\" src=\"./assets/tango/sidemenu-icons/tango_logo.svg\"\r\n class=\"h-20px h-lg-30px app-sidebar-logo-default\" />\r\n </ng-container>\r\n <ng-container *ngIf=\"currentLayoutType !== 'dark-header'\">\r\n <img alt=\"Logo\" src=\"./assets/tango/sidemenu-icons/tango_logo.svg\"\r\n class=\"h-20px h-lg-30px app-sidebar-logo-default theme-light-show\" />\r\n <img alt=\"Logo\" src=\"./assets/tango/sidemenu-icons/tango_logo.svg\"\r\n class=\"h-20px h-lg-30px app-sidebar-logo-default theme-dark-show\" />\r\n </ng-container>\r\n </a>\r\n </div>\r\n <!--end::Logo-->\r\n </ng-container>\r\n\r\n <!--begin::Header wrapper-->\r\n <div class=\"d-flex align-items-stretch justify-content-between flex-lg-grow-1 header-border\" id=\"kt_app_header_wrapper\">\r\n <ng-container *ngIf=\"appHeaderDefaultContent === 'menu' && appHeaderDefaulMenuDisplay\">\r\n <!--begin::Menu wrapper-->\r\n <div class=\"\r\n app-header-menu\r\n app-header-mobile-drawer\r\n align-items-stretch\r\n\" data-kt-drawer=\"true\" data-kt-drawer-name=\"app-header-menu\" data-kt-drawer-activate=\"{default: true, lg: false}\"\r\n data-kt-drawer-overlay=\"true\" data-kt-drawer-width=\"225px\" data-kt-drawer-direction=\"end\"\r\n data-kt-drawer-toggle=\"#kt_app_header_menu_toggle\" data-kt-swapper=\"true\"\r\n data-kt-swapper-mode=\"{default: 'append', lg: 'prepend'}\"\r\n data-kt-swapper-parent=\"{default: '#kt_app_body', lg: '#kt_app_header_wrapper'}\">\r\n <!--begin::Menu-->\r\n <lib-header-menu\r\n appPageTitleDirection = ''\r\n [appPageTitleDescription] = true\r\n class=\"\r\n menu\r\n menu-rounded\r\n menu-column\r\n menu-lg-row\r\n my-5\r\n my-lg-0\r\n align-items-stretch\r\n fw-semibold\r\n px-2 px-lg-0\r\n \" id=\"kt_app_header_menu\" data-kt-menu=\"true\"></lib-header-menu>\r\n <!--end::Menu-->\r\n </div>\r\n <!--end::Menu wrapper-->\r\n </ng-container>\r\n <!-- <ng-container *ngIf=\"appHeaderDefaultContent === 'page-title' && appPageTitleDisplay\">\r\n <app-page-title #ktPageTitle class=\"page-title d-flex\"></app-page-title>\r\n </ng-container> -->\r\n <lib-navbar class=\"app-navbar flex-shrink-0\" [appHeaderDefaulMenuDisplay]=\"appHeaderDefaulMenuDisplay\"\r\n [isRtl]=\"false\"></lib-navbar>\r\n </div>\r\n <!--end::Header wrapper-->\r\n</div>\r\n<!--end::Header container-->\r\n", styles: [".header-style{background-color:#fff}\n"] }]
99
99
  }], ctorParameters: () => [{ type: i1.LayoutService }, { type: i2.Router }] });
100
100
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGVhZGVyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3RhbmdvLWFwcC1zaGFyZWQvc3JjL2xpYi9tb2R1bGVzL2xheW91dC9oZWFkZXIvaGVhZGVyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3RhbmdvLWFwcC1zaGFyZWQvc3JjL2xpYi9tb2R1bGVzL2xheW91dC9oZWFkZXIvaGVhZGVyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQXFCLE1BQU0sZUFBZSxDQUFDO0FBQzdELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxhQUFhLEVBQVUsTUFBTSxpQkFBaUIsQ0FBQztBQUkxRSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0scUJBQXFCLENBQUM7Ozs7Ozs7O0FBT3BELE1BQU0sT0FBTyxlQUFlO0lBc0JOO0lBQStCO0lBckIzQyxXQUFXLEdBQW1CLEVBQUUsQ0FBQztJQUN6QyxlQUFlO0lBQ2YsaUJBQWlCLENBQW9CO0lBRXJDLGdCQUFnQixDQUFVO0lBQzFCLDRCQUE0QixDQUFVO0lBQ3RDLDJCQUEyQixDQUFVO0lBRXJDLHlCQUF5QixDQUFvQjtJQUM3Qyx1QkFBdUIsR0FBVyxFQUFFLENBQUM7SUFDckMsOEJBQThCLEdBQVcsRUFBRSxDQUFDO0lBRTVDLHVCQUF1QixDQUFVO0lBRWpDLE9BQU87SUFDUCx1Q0FBdUMsQ0FBVTtJQUNqRCxpQkFBaUIsQ0FBVTtJQUMzQix1QkFBdUIsR0FBVyxFQUFFLENBQUM7SUFDckMsMEJBQTBCLENBQVU7SUFDcEMsbUJBQW1CLENBQVU7SUFFN0IsWUFBb0IsTUFBcUIsRUFBVSxNQUFjO1FBQTdDLFdBQU0sR0FBTixNQUFNLENBQWU7UUFBVSxXQUFNLEdBQU4sTUFBTSxDQUFRO1FBQy9ELElBQUksQ0FBQyxjQUFjLEVBQUUsQ0FBQztJQUN4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QUMsd0JBQXdCO2FBQ3RELFlBQVksRUFBRTthQUNkLFNBQVMsQ0FBQyxDQUFDLE1BQU0sRUFBRSxFQUFFO1lBQ3BCLElBQUksQ0FBQyxpQkFBaUIsR0FBRyxNQUFNLENBQUM7UUFDbEMsQ0FBQyxDQUFDLENBQUM7UUFDTCxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsQ0FBQztJQUN0QyxDQUFDO0lBRUQsY0FBYztRQUNaLE1BQU0sa0JBQWtCLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsU0FBUyxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUU7WUFDaEUsSUFBSSxLQUFLLFlBQVksYUFBYSxJQUFJLEtBQUssWUFBWSxnQkFBZ0IsRUFBRTtnQkFDdkUsYUFBYSxDQUFDLGdCQUFnQixFQUFFLENBQUM7YUFDbEM7UUFDSCxDQUFDLENBQUMsQ0FBQztRQUNILElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLGtCQUFrQixDQUFDLENBQUM7SUFDNUMsQ0FBQztJQUVELFdBQVc7UUFDVCxJQUFJLENBQUMsV0FBVyxDQUFDLE9BQU8sQ0FBQyxDQUFDLEVBQUUsRUFBRSxFQUFFLENBQUMsRUFBRSxDQUFDLFdBQVcsRUFBRSxDQUFDLENBQUM7SUFDckQsQ0FBQzt3R0E3SFUsZUFBZTs0RkFBZixlQUFlLGtEQ1o1Qiw2dUlBMEZBOzs0RkQ5RWEsZUFBZTtrQkFMM0IsU0FBUzsrQkFDRSxZQUFZIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBPbkRlc3Ryb3ksIE9uSW5pdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBOYXZpZ2F0aW9uQ2FuY2VsLCBOYXZpZ2F0aW9uRW5kLCBSb3V0ZXIgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xyXG5pbXBvcnQgeyBTdWJzY3JpcHRpb24gfSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHsgSUxheW91dCwgTGF5b3V0VHlwZSB9IGZyb20gJ3RhbmdvLWFwcC11aS1nbG9iYWwnO1xyXG5pbXBvcnQgeyBMYXlvdXRTZXJ2aWNlIH0gZnJvbSAndGFuZ28tYXBwLXVpLWdsb2JhbCc7XHJcbmltcG9ydCB7IE1lbnVDb21wb25lbnQgfSBmcm9tICd0YW5nby1hcHAtdWktZ2xvYmFsJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnbGliLWhlYWRlcicsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL2hlYWRlci5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmxzOiBbJy4vaGVhZGVyLmNvbXBvbmVudC5zY3NzJ10sXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBIZWFkZXJDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XHJcbiAgcHJpdmF0ZSB1bnN1YnNjcmliZTogU3Vic2NyaXB0aW9uW10gPSBbXTtcclxuICAvLyBQdWJsaWMgcHJvcHNcclxuICBjdXJyZW50TGF5b3V0VHlwZTogTGF5b3V0VHlwZSB8IG51bGw7XHJcblxyXG4gIGFwcEhlYWRlckRpc3BsYXk6IGJvb2xlYW47XHJcbiAgYXBwSGVhZGVyRGVmYXVsdEZpeGVkRGVza3RvcDogYm9vbGVhbjtcclxuICBhcHBIZWFkZXJEZWZhdWx0Rml4ZWRNb2JpbGU6IGJvb2xlYW47XHJcblxyXG4gIGFwcEhlYWRlckRlZmF1bHRDb250YWluZXI6ICdmaXhlZCcgfCAnZmx1aWQnO1xyXG4gIGhlYWRlckNvbnRhaW5lckNzc0NsYXNzOiBzdHJpbmcgPSAnJztcclxuICBhcHBIZWFkZXJEZWZhdWx0Q29udGFpbmVyQ2xhc3M6IHN0cmluZyA9ICcnO1xyXG5cclxuICBhcHBIZWFkZXJEZWZhdWx0U3RhY2tlZDogYm9vbGVhbjtcclxuXHJcbiAgLy8gdmlld1xyXG4gIGFwcFNpZGViYXJEZWZhdWx0Q29sbGFwc2VEZXNrdG9wRW5hYmxlZDogYm9vbGVhbjtcclxuICBhcHBTaWRlYmFyRGlzcGxheTogYm9vbGVhbjtcclxuICBhcHBIZWFkZXJEZWZhdWx0Q29udGVudDogc3RyaW5nID0gJyc7XHJcbiAgYXBwSGVhZGVyRGVmYXVsTWVudURpc3BsYXk6IGJvb2xlYW47XHJcbiAgYXBwUGFnZVRpdGxlRGlzcGxheTogYm9vbGVhbjtcclxuXHJcbiAgY29uc3RydWN0b3IocHJpdmF0ZSBsYXlvdXQ6IExheW91dFNlcnZpY2UsIHByaXZhdGUgcm91dGVyOiBSb3V0ZXIpIHtcclxuICAgIHRoaXMucm91dGluZ0NoYW5nZXMoKTtcclxuICB9XHJcblxyXG4gIHVwZGF0ZVByb3BzKGNvbmZpZzogSUxheW91dCkge1xyXG4gICAgdGhpcy5hcHBIZWFkZXJEaXNwbGF5ID0gdGhpcy5sYXlvdXQuZ2V0UHJvcChcclxuICAgICAgJ2FwcC5oZWFkZXIuZGlzcGxheScsXHJcbiAgICAgIGNvbmZpZ1xyXG4gICAgKSBhcyBib29sZWFuO1xyXG4gICAgLy8gdmlld1xyXG4gICAgdGhpcy5hcHBTaWRlYmFyRGVmYXVsdENvbGxhcHNlRGVza3RvcEVuYWJsZWQgPSB0aGlzLmxheW91dC5nZXRQcm9wKFxyXG4gICAgICAnYXBwLnNpZGViYXIuZGVmYXVsdC5jb2xsYXBzZS5kZXNrdG9wLmVuYWJsZWQnLFxyXG4gICAgICBjb25maWdcclxuICAgICkgYXMgYm9vbGVhbjtcclxuICAgIHRoaXMuYXBwU2lkZWJhckRpc3BsYXkgPSB0aGlzLmxheW91dC5nZXRQcm9wKFxyXG4gICAgICAnYXBwLnNpZGViYXIuZGlzcGxheScsXHJcbiAgICAgIGNvbmZpZ1xyXG4gICAgKSBhcyBib29sZWFuO1xyXG4gICAgdGhpcy5hcHBIZWFkZXJEZWZhdWx0Q29udGVudCA9IHRoaXMubGF5b3V0LmdldFByb3AoXHJcbiAgICAgICdhcHAuaGVhZGVyLmRlZmF1bHQuY29udGVudCcsXHJcbiAgICAgIGNvbmZpZ1xyXG4gICAgKSBhcyBzdHJpbmc7XHJcbiAgICB0aGlzLmFwcEhlYWRlckRlZmF1bE1lbnVEaXNwbGF5ID0gdGhpcy5sYXlvdXQuZ2V0UHJvcChcclxuICAgICAgJ2FwcC5oZWFkZXIuZGVmYXVsdC5tZW51LmRpc3BsYXknLFxyXG4gICAgICBjb25maWdcclxuICAgICkgYXMgYm9vbGVhbjtcclxuICAgIHRoaXMuYXBwUGFnZVRpdGxlRGlzcGxheSA9IHRoaXMubGF5b3V0LmdldFByb3AoXHJcbiAgICAgICdhcHAucGFnZVRpdGxlLmRpc3BsYXknLFxyXG4gICAgICBjb25maWdcclxuICAgICkgYXMgYm9vbGVhbjtcclxuXHJcbiAgICAvLyBib2R5IGF0dHJzIGFuZCBjb250YWluZXIgY3NzIGNsYXNzZXNcclxuICAgIHRoaXMuYXBwSGVhZGVyRGVmYXVsdEZpeGVkRGVza3RvcCA9IHRoaXMubGF5b3V0LmdldFByb3AoXHJcbiAgICAgICdhcHAuaGVhZGVyLmRlZmF1bHQuZml4ZWQuZGVza3RvcCcsXHJcbiAgICAgIGNvbmZpZ1xyXG4gICAgKSBhcyBib29sZWFuO1xyXG4gICAgaWYgKHRoaXMuYXBwSGVhZGVyRGVmYXVsdEZpeGVkRGVza3RvcCkge1xyXG4gICAgICBkb2N1bWVudC5ib2R5LnNldEF0dHJpYnV0ZSgnZGF0YS1rdC1hcHAtaGVhZGVyLWZpeGVkJywgJ3RydWUnKTtcclxuICAgIH1cclxuXHJcbiAgICB0aGlzLmFwcEhlYWRlckRlZmF1bHRGaXhlZE1vYmlsZSA9IHRoaXMubGF5b3V0LmdldFByb3AoXHJcbiAgICAgICdhcHAuaGVhZGVyLmRlZmF1bHQuZml4ZWQubW9iaWxlJyxcclxuICAgICAgY29uZmlnXHJcbiAgICApIGFzIGJvb2xlYW47XHJcbiAgICBpZiAodGhpcy5hcHBIZWFkZXJEZWZhdWx0Rml4ZWRNb2JpbGUpIHtcclxuICAgICAgZG9jdW1lbnQuYm9keS5zZXRBdHRyaWJ1dGUoJ2RhdGEta3QtYXBwLWhlYWRlci1maXhlZC1tb2JpbGUnLCAndHJ1ZScpO1xyXG4gICAgfVxyXG5cclxuICAgIHRoaXMuYXBwSGVhZGVyRGVmYXVsdENvbnRhaW5lciA9IHRoaXMubGF5b3V0LmdldFByb3AoXHJcbiAgICAgICdhcHBIZWFkZXJEZWZhdWx0Q29udGFpbmVyJyxcclxuICAgICAgY29uZmlnXHJcbiAgICApIGFzICdmaXhlZCcgfCAnZmx1aWQnO1xyXG4gICAgdGhpcy5oZWFkZXJDb250YWluZXJDc3NDbGFzcyA9XHJcbiAgICAgIHRoaXMuYXBwSGVhZGVyRGVmYXVsdENvbnRhaW5lciA9PT0gJ2ZpeGVkJ1xyXG4gICAgICAgID8gJ2NvbnRhaW5lci14eGwnXHJcbiAgICAgICAgOiAnY29udGFpbmVyLWZsdWlkJztcclxuXHJcbiAgICB0aGlzLmFwcEhlYWRlckRlZmF1bHRDb250YWluZXJDbGFzcyA9IHRoaXMubGF5b3V0LmdldFByb3AoXHJcbiAgICAgICdhcHAuaGVhZGVyLmRlZmF1bHQuY29udGFpbmVyQ2xhc3MnLFxyXG4gICAgICBjb25maWdcclxuICAgICkgYXMgc3RyaW5nO1xyXG4gICAgaWYgKHRoaXMuYXBwSGVhZGVyRGVmYXVsdENvbnRhaW5lckNsYXNzKSB7XHJcbiAgICAgIHRoaXMuaGVhZGVyQ29udGFpbmVyQ3NzQ2xhc3MgKz0gYCAke3RoaXMuYXBwSGVhZGVyRGVmYXVsdENvbnRhaW5lckNsYXNzfWA7XHJcbiAgICB9XHJcblxyXG4gICAgdGhpcy5hcHBIZWFkZXJEZWZhdWx0U3RhY2tlZCA9IHRoaXMubGF5b3V0LmdldFByb3AoXHJcbiAgICAgICdhcHAuaGVhZGVyLmRlZmF1bHQuc3RhY2tlZCcsXHJcbiAgICAgIGNvbmZpZ1xyXG4gICAgKSBhcyBib29sZWFuO1xyXG4gICAgaWYgKHRoaXMuYXBwSGVhZGVyRGVmYXVsdFN0YWNrZWQpIHtcclxuICAgICAgZG9jdW1lbnQuYm9keS5zZXRBdHRyaWJ1dGUoJ2RhdGEta3QtYXBwLWhlYWRlci1zdGFja2VkJywgJ3RydWUnKTtcclxuICAgIH1cclxuXHJcbiAgICAvLyBQcmltYXJ5IGhlYWRlclxyXG4gICAgLy8gU2Vjb25kYXJ5IGhlYWRlclxyXG4gIH1cclxuXHJcbiAgbmdPbkluaXQoKTogdm9pZCB7XHJcbiAgICBjb25zdCBzdWJzY3IgPSB0aGlzLmxheW91dC5sYXlvdXRDb25maWdTdWJqZWN0XHJcbiAgICAgIC5hc09ic2VydmFibGUoKVxyXG4gICAgICAuc3Vic2NyaWJlKChjb25maWc6IElMYXlvdXQpID0+IHtcclxuICAgICAgICB0aGlzLnVwZGF0ZVByb3BzKGNvbmZpZyk7XHJcbiAgICAgIH0pO1xyXG4gICAgdGhpcy51bnN1YnNjcmliZS5wdXNoKHN1YnNjcik7XHJcbiAgICBjb25zdCBsYXlvdXRTdWJzY3IgPSB0aGlzLmxheW91dC5jdXJyZW50TGF5b3V0VHlwZVN1YmplY3RcclxuICAgICAgLmFzT2JzZXJ2YWJsZSgpXHJcbiAgICAgIC5zdWJzY3JpYmUoKGxheW91dCkgPT4ge1xyXG4gICAgICAgIHRoaXMuY3VycmVudExheW91dFR5cGUgPSBsYXlvdXQ7XHJcbiAgICAgIH0pO1xyXG4gICAgdGhpcy51bnN1YnNjcmliZS5wdXNoKGxheW91dFN1YnNjcik7XHJcbiAgfVxyXG5cclxuICByb3V0aW5nQ2hhbmdlcygpIHtcclxuICAgIGNvbnN0IHJvdXRlclN1YnNjcmlwdGlvbiA9IHRoaXMucm91dGVyLmV2ZW50cy5zdWJzY3JpYmUoKGV2ZW50KSA9PiB7XHJcbiAgICAgIGlmIChldmVudCBpbnN0YW5jZW9mIE5hdmlnYXRpb25FbmQgfHwgZXZlbnQgaW5zdGFuY2VvZiBOYXZpZ2F0aW9uQ2FuY2VsKSB7XHJcbiAgICAgICAgTWVudUNvbXBvbmVudC5yZWluaXRpYWxpemF0aW9uKCk7XHJcbiAgICAgIH1cclxuICAgIH0pO1xyXG4gICAgdGhpcy51bnN1YnNjcmliZS5wdXNoKHJvdXRlclN1YnNjcmlwdGlvbik7XHJcbiAgfVxyXG5cclxuICBuZ09uRGVzdHJveSgpIHtcclxuICAgIHRoaXMudW5zdWJzY3JpYmUuZm9yRWFjaCgoc2IpID0+IHNiLnVuc3Vic2NyaWJlKCkpO1xyXG4gIH1cclxufVxyXG4iLCI8IS0tYmVnaW46OkhlYWRlciBjb250YWluZXItLT5cclxuPGRpdiBjbGFzcz1cImFwcC1jb250YWluZXIgaGVhZGVyLXN0eWxlXCIgaWQ9XCJrdF9hcHBfaGVhZGVyX2NvbnRhaW5lclwiIFtuZ0NsYXNzXT1cImhlYWRlckNvbnRhaW5lckNzc0NsYXNzXCI+XHJcbiAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImFwcFNpZGViYXJEZWZhdWx0Q29sbGFwc2VEZXNrdG9wRW5hYmxlZFwiPlxyXG4gICAgPGRpdiBjbGFzcz1cImFwcC1zaWRlYmFyLWNvbGxhcHNlLWQtZmxleCBhbGlnbi1pdGVtcy1jZW50ZXIgbWUtM1wiPlxyXG4gICAgICA8IS0tYmVnaW46OnNpZGViYXIgdG9nZ2xlLS0+XHJcbiAgICAgIDxkaXYgY2xhc3M9XCJidG4gYnRuLWljb24gdy1hdXRvIHB4LTAgYnRuLWNvbG9yLW11dGVkIGJ0bi1hY3RpdmUtaWNvbi1wcmltYXJ5XCIgZGF0YS1rdC10b2dnbGU9XCJ0cnVlXCJcclxuICAgICAgICBkYXRhLWt0LXRvZ2dsZS10YXJnZXQ9XCJib2R5XCIgZGF0YS1rdC10b2dnbGUtbW9kZT1cIm9uXCIgZGF0YS1rdC10b2dnbGUtbmFtZT1cImFwcC1zaWRlYmFyLWNvbGxhcHNlXCI+XHJcbiAgICAgICAgPGxpYi1rZWVuaWNvbiBuYW1lPVwiZG91YmxlLXJpZ2h0XCIgY2xhc3M9XCJmcy0xXCI+PC9saWIta2Vlbmljb24+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgICA8IS0tZW5kOjpzaWRlYmFyIHRvZ2dsZS0tPlxyXG4gICAgPC9kaXY+XHJcbiAgPC9uZy1jb250YWluZXI+XHJcblxyXG4gIDxuZy1jb250YWluZXIgKm5nSWY9XCJhcHBTaWRlYmFyRGlzcGxheVwiPlxyXG4gICAgPCEtLWJlZ2luOjpzaWRlYmFyIG1vYmlsZSB0b2dnbGUtLT5cclxuICAgIDxkaXYgY2xhc3M9XCJkLWZsZXggYWxpZ24taXRlbXMtY2VudGVyIGQtbGctbm9uZSBtcy1uMiBtZS0yXCIgdGl0bGU9XCJTaG93IHNpZGViYXIgbWVudVwiPlxyXG4gICAgICA8ZGl2IGNsYXNzPVwiYnRuIGJ0bi1pY29uIGJ0bi1hY3RpdmUtY29sb3ItcHJpbWFyeSB3LTM1cHggaC0zNXB4XCIgaWQ9XCJrdF9hcHBfc2lkZWJhcl9tb2JpbGVfdG9nZ2xlXCI+XHJcbiAgICAgICAgPGxpYi1rZWVuaWNvbiBuYW1lPVwiYWJzdHJhY3QtMTRcIiBjbGFzcz1cImZzLTFcIj48L2xpYi1rZWVuaWNvbj5cclxuICAgICAgPC9kaXY+XHJcbiAgICA8L2Rpdj5cclxuICAgIDwhLS1lbmQ6OnNpZGViYXIgbW9iaWxlIHRvZ2dsZS0tPlxyXG4gICAgPCEtLWJlZ2luOjpNb2JpbGUgbG9nby0tPlxyXG4gICAgPGRpdiBjbGFzcz1cImQtZmxleCBhbGlnbi1pdGVtcy1jZW50ZXIgZmxleC1ncm93LTEgZmxleC1sZy1ncm93LTBcIj5cclxuICAgICAgPGEgIGNsYXNzPVwiZC1sZy1ub25lXCI+XHJcbiAgICAgICAgPGltZyBhbHQ9XCJMb2dvXCIgc3JjPVwiLi9hc3NldHMvdGFuZ28vc2lkZW1lbnUtaWNvbnMvdGFuZ29fbG9nby5zdmdcIiBjbGFzcz1cImgtMzBweFwiIC8+XHJcbiAgICAgIDwvYT5cclxuICAgIDwvZGl2PlxyXG4gICAgPCEtLWVuZDo6TW9iaWxlIGxvZ28tLT5cclxuICA8L25nLWNvbnRhaW5lcj5cclxuXHJcbiAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIiFhcHBTaWRlYmFyRGlzcGxheVwiPlxyXG4gICAgPCEtLWJlZ2luOjpMb2dvLS0+XHJcbiAgICA8ZGl2IGNsYXNzPVwiZC1mbGV4IGFsaWduLWl0ZW1zLWNlbnRlciBmbGV4LWdyb3ctMSBmbGV4LWxnLWdyb3ctMCBtZS1sZy0xNVwiPlxyXG4gICAgICA8YSA+XHJcbiAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImN1cnJlbnRMYXlvdXRUeXBlID09PSAnZGFyay1oZWFkZXInXCI+XHJcbiAgICAgICAgICA8aW1nIGFsdD1cIkxvZ29cIiBzcmM9XCIuL2Fzc2V0cy90YW5nby9zaWRlbWVudS1pY29ucy90YW5nb19sb2dvLnN2Z1wiXHJcbiAgICAgICAgICAgIGNsYXNzPVwiaC0yMHB4IGgtbGctMzBweCBhcHAtc2lkZWJhci1sb2dvLWRlZmF1bHRcIiAvPlxyXG4gICAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJjdXJyZW50TGF5b3V0VHlwZSAhPT0gJ2RhcmstaGVhZGVyJ1wiPlxyXG4gICAgICAgICAgPGltZyBhbHQ9XCJMb2dvXCIgc3JjPVwiLi9hc3NldHMvdGFuZ28vc2lkZW1lbnUtaWNvbnMvdGFuZ29fbG9nby5zdmdcIlxyXG4gICAgICAgICAgICBjbGFzcz1cImgtMjBweCBoLWxnLTMwcHggYXBwLXNpZGViYXItbG9nby1kZWZhdWx0IHRoZW1lLWxpZ2h0LXNob3dcIiAvPlxyXG4gICAgICAgICAgPGltZyBhbHQ9XCJMb2dvXCIgc3JjPVwiLi9hc3NldHMvdGFuZ28vc2lkZW1lbnUtaWNvbnMvdGFuZ29fbG9nby5zdmdcIlxyXG4gICAgICAgICAgICBjbGFzcz1cImgtMjBweCBoLWxnLTMwcHggYXBwLXNpZGViYXItbG9nby1kZWZhdWx0IHRoZW1lLWRhcmstc2hvd1wiIC8+XHJcbiAgICAgICAgPC9uZy1jb250YWluZXI+XHJcbiAgICAgIDwvYT5cclxuICAgIDwvZGl2PlxyXG4gICAgPCEtLWVuZDo6TG9nby0tPlxyXG4gIDwvbmctY29udGFpbmVyPlxyXG5cclxuICA8IS0tYmVnaW46OkhlYWRlciB3cmFwcGVyLS0+XHJcbiAgPGRpdiBjbGFzcz1cImQtZmxleCBhbGlnbi1pdGVtcy1zdHJldGNoIGp1c3RpZnktY29udGVudC1iZXR3ZWVuIGZsZXgtbGctZ3Jvdy0xIGhlYWRlci1ib3JkZXJcIiBpZD1cImt0X2FwcF9oZWFkZXJfd3JhcHBlclwiPlxyXG4gICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImFwcEhlYWRlckRlZmF1bHRDb250ZW50ID09PSAnbWVudScgJiYgYXBwSGVhZGVyRGVmYXVsTWVudURpc3BsYXlcIj5cclxuICAgICAgPCEtLWJlZ2luOjpNZW51IHdyYXBwZXItLT5cclxuICAgICAgPGRpdiBjbGFzcz1cIlxyXG4gICAgYXBwLWhlYWRlci1tZW51XHJcbiAgICBhcHAtaGVhZGVyLW1vYmlsZS1kcmF3ZXJcclxuICAgIGFsaWduLWl0ZW1zLXN0cmV0Y2hcclxuXCIgZGF0YS1rdC1kcmF3ZXI9XCJ0cnVlXCIgZGF0YS1rdC1kcmF3ZXItbmFtZT1cImFwcC1oZWFkZXItbWVudVwiIGRhdGEta3QtZHJhd2VyLWFjdGl2YXRlPVwie2RlZmF1bHQ6IHRydWUsIGxnOiBmYWxzZX1cIlxyXG4gICAgICAgIGRhdGEta3QtZHJhd2VyLW92ZXJsYXk9XCJ0cnVlXCIgZGF0YS1rdC1kcmF3ZXItd2lkdGg9XCIyMjVweFwiIGRhdGEta3QtZHJhd2VyLWRpcmVjdGlvbj1cImVuZFwiXHJcbiAgICAgICAgZGF0YS1rdC1kcmF3ZXItdG9nZ2xlPVwiI2t0X2FwcF9oZWFkZXJfbWVudV90b2dnbGVcIiBkYXRhLWt0LXN3YXBwZXI9XCJ0cnVlXCJcclxuICAgICAgICBkYXRhLWt0LXN3YXBwZXItbW9kZT1cIntkZWZhdWx0OiAnYXBwZW5kJywgbGc6ICdwcmVwZW5kJ31cIlxyXG4gICAgICAgIGRhdGEta3Qtc3dhcHBlci1wYXJlbnQ9XCJ7ZGVmYXVsdDogJyNrdF9hcHBfYm9keScsIGxnOiAnI2t0X2FwcF9oZWFkZXJfd3JhcHBlcid9XCI+XHJcbiAgICAgICAgPCEtLWJlZ2luOjpNZW51LS0+XHJcbiAgICAgICAgPGxpYi1oZWFkZXItbWVudVxyXG4gICAgICAgIGFwcFBhZ2VUaXRsZURpcmVjdGlvbiA9ICcnXHJcbiAgICAgICAgW2FwcFBhZ2VUaXRsZURlc2NyaXB0aW9uXSA9IHRydWVcclxuICAgICAgICBjbGFzcz1cIlxyXG4gICAgICAgIG1lbnVcclxuICAgICAgICBtZW51LXJvdW5kZWRcclxuICAgICAgICBtZW51LWNvbHVtblxyXG4gICAgICAgIG1lbnUtbGctcm93XHJcbiAgICAgICAgbXktNVxyXG4gICAgICAgIG15LWxnLTBcclxuICAgICAgICBhbGlnbi1pdGVtcy1zdHJldGNoXHJcbiAgICAgICAgZnctc2VtaWJvbGRcclxuICAgICAgICBweC0yIHB4LWxnLTBcclxuICAgIFwiIGlkPVwia3RfYXBwX2hlYWRlcl9tZW51XCIgZGF0YS1rdC1tZW51PVwidHJ1ZVwiPjwvbGliLWhlYWRlci1tZW51PlxyXG4gICAgICAgIDwhLS1lbmQ6Ok1lbnUtLT5cclxuICAgICAgPC9kaXY+XHJcbiAgICAgIDwhLS1lbmQ6Ok1lbnUgd3JhcHBlci0tPlxyXG4gICAgPC9uZy1jb250YWluZXI+XHJcbiAgICA8IS0tIDxuZy1jb250YWluZXIgKm5nSWY9XCJhcHBIZWFkZXJEZWZhdWx0Q29udGVudCA9PT0gJ3BhZ2UtdGl0bGUnICYmIGFwcFBhZ2VUaXRsZURpc3BsYXlcIj5cclxuICAgICAgPGFwcC1wYWdlLXRpdGxlICNrdFBhZ2VUaXRsZSBjbGFzcz1cInBhZ2UtdGl0bGUgZC1mbGV4XCI+PC9hcHAtcGFnZS10aXRsZT5cclxuICAgIDwvbmctY29udGFpbmVyPiAtLT5cclxuICAgIDxsaWItbmF2YmFyIGNsYXNzPVwiYXBwLW5hdmJhciBmbGV4LXNocmluay0wXCIgW2FwcEhlYWRlckRlZmF1bE1lbnVEaXNwbGF5XT1cImFwcEhlYWRlckRlZmF1bE1lbnVEaXNwbGF5XCJcclxuICAgICAgW2lzUnRsXT1cImZhbHNlXCI+PC9saWItbmF2YmFyPlxyXG4gIDwvZGl2PlxyXG4gIDwhLS1lbmQ6OkhlYWRlciB3cmFwcGVyLS0+XHJcbjwvZGl2PlxyXG48IS0tZW5kOjpIZWFkZXIgY29udGFpbmVyLS0+XHJcbiJdfQ==
@@ -224,6 +224,9 @@ export class NavbarComponent {
224
224
  viewAll(type) {
225
225
  this.router.navigateByUrl('/notifications/alerts');
226
226
  }
227
+ redirecttonotification() {
228
+ this.router.navigateByUrl('/notifications/alerts?tab=download');
229
+ }
227
230
  onClick(event) {
228
231
  const target = event.target;
229
232
  if (!target.closest('.app-navbar')) {
@@ -231,7 +234,7 @@ export class NavbarComponent {
231
234
  }
232
235
  }
233
236
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: NavbarComponent, deps: [{ token: i1.NotificationService }, { token: i2.Router }, { token: i3.ToastService }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
234
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: NavbarComponent, selector: "lib-navbar", inputs: { appHeaderDefaulMenuDisplay: "appHeaderDefaulMenuDisplay", isRtl: "isRtl" }, host: { listeners: { "document:click": "onClick($event)" } }, ngImport: i0, template: "<!--begin::Notifications-->\r\n<div class=\"app-navbar-item\" [ngClass]=\"itemClass\" *ngIf=\"showNotification\">\r\n <!--begin::Menu- wrapper-->\r\n <div [ngClass]=\"btnClass\" (click)=\"showDropdown = !showDropdown\">\r\n <span *ngIf=\"!notification.length\">\r\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"20\" height=\"24\" viewBox=\"0 0 20 24\" fill=\"none\">\r\n <path\r\n d=\"M10.6779 2.4V3.00688L11.2715 3.1335C14.1674 3.75125 16.3919 6.45842 16.3919 9.75V10.6313C16.3919 13.0131 17.2249 15.3087 18.7338 17.0963L18.7352 17.0979L19.0636 17.4846C19.0639 17.485 19.0642 17.4853 19.0645 17.4857C19.2557 17.7136 19.3048 18.0393 19.185 18.3174C19.0641 18.5983 18.8153 18.75 18.5704 18.75H1.42848C1.1825 18.75 0.933931 18.5974 0.815017 18.3193C0.695108 18.0388 0.744592 17.7123 0.933996 17.4853C0.934445 17.4848 0.934894 17.4843 0.935344 17.4837L1.26312 17.0985L1.26473 17.0966C2.77599 15.3086 3.60697 13.0127 3.60697 10.6313V9.75C3.60697 6.45434 5.79488 3.75145 8.72559 3.13388L9.32094 3.00843V2.4V1.5C9.32094 1.05052 9.65806 0.75 9.99944 0.75C10.3408 0.75 10.6779 1.05052 10.6779 1.5V2.4ZM9.99944 23.25C9.44983 23.25 8.91726 23.023 8.52034 22.6062C8.29649 22.3712 8.12457 22.0708 8.01769 21.75H11.9812C11.8743 22.0708 11.7024 22.3712 11.4785 22.6062C11.0856 23.0188 10.5146 23.25 9.99944 23.25Z\"\r\n stroke=\"#00A3FF\" stroke-width=\"1.5\" />\r\n </svg>\r\n </span>\r\n <span *ngIf=\"notification.length\">\r\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"20\" height=\"24\" viewBox=\"0 0 20 24\" fill=\"none\">\r\n <path\r\n d=\"M11.4279 2.4V1.5C11.4279 0.671719 10.7896 0 9.99944 0C9.2093 0 8.57094 0.671719 8.57094 1.5V2.4C5.27202 3.09516 2.85697 6.12188 2.85697 9.75V10.6313C2.85697 12.8391 2.08648 14.9625 0.691915 16.6125L0.360862 17.0016C-0.0128805 17.4469 -0.10505 18.075 0.125384 18.6141C0.355818 19.1531 0.866013 19.5 1.42848 19.5H18.5704C19.1329 19.5 19.6418 19.1531 19.8739 18.6141C20.106 18.075 20.0123 17.4469 19.6373 17.0016L19.307 16.6125C17.9142 14.9625 17.1419 12.8391 17.1419 10.6313V9.75C17.1419 9.39947 17.119 9.05455 17.0746 8.71681C16.5845 8.8999 16.054 9 15.5 9C13.0147 9 11 6.98528 11 4.5C11 3.74877 11.1841 3.04054 11.5096 2.41795C11.4824 2.4118 11.4552 2.40582 11.4279 2.4Z\"\r\n fill=\"#00A3FF\" />\r\n <path\r\n d=\"M7.97723 23.1234C8.51291 23.6859 9.24055 24 9.99944 24C10.7181 24 11.486 23.6859 12.0216 23.1234C12.5573 22.5609 12.8564 21.7547 12.8564 21H7.14245C7.14245 21.7547 7.44154 22.5609 7.97723 23.1234Z\"\r\n fill=\"#00A3FF\" />\r\n <circle cx=\"16\" cy=\"4\" r=\"4\" fill=\"#F04438\" />\r\n </svg>\r\n </span>\r\n <div class=\"menu menu-sub menu-sub-dropdown menu-column w-450px w-lg-425px notificationMenu\" *ngIf=\"showDropdown\">\r\n <div class=\"card topbar\">\r\n <div class=\"card-header\">\r\n <h3 class=\"title-notify mt-10 mb-6\">\r\n Notifications\r\n </h3>\r\n </div>\r\n <ng-container *ngIf=\"loading\">\r\n <div class=\"row loader d-flex justify-content-center align-items-center\">\r\n <div class=\"shimmer\">\r\n <div class=\"wrapper\">\r\n <div class=\"stroke animate title\"></div>\r\n <div class=\"stroke animate link\"></div>\r\n <div class=\"stroke animate description\"></div>\r\n </div>\r\n </div>\r\n <div class=\"shimmer\">\r\n <div class=\"wrapper\">\r\n <div class=\"stroke animate title\"></div>\r\n <div class=\"stroke animate link\"></div>\r\n <div class=\"stroke animate description\"></div>\r\n </div>\r\n </div>\r\n\r\n </div>\r\n </ng-container>\r\n <ng-container *ngIf=\"noData && !loading\">\r\n <div class=\"row\">\r\n <div class=\"col-lg-12 mb-3\">\r\n <div class=\"card-body d-flex justify-content-center align-items-center flex-column\">\r\n <img class=\"img-src w-25\" src=\"./assets/tango/Icons/noNotification.svg\" alt=\"\">\r\n <span class=\"notificationAlign mt-10\">No New Notification</span>\r\n <span class=\"noNotification mt-2\">Any new notification will be shown here.</span>\r\n </div>\r\n </div>\r\n </div>\r\n </ng-container>\r\n\r\n <div class=\"alertscroll\" *ngIf=\"notification.length\">\r\n <div *ngFor=\"let item of notification\" class=\"mh-200px ng-star-inserted\" style=\"overflow: auto;\">\r\n <div class=\"d-flex flex-stack py-3 mx-4 ng-star-inserted\">\r\n <div class=\"d-flex align-items-center\">\r\n <div class=\"symbol symbol-35px me-4\"><span class=\"symbol-label bg-light-primary\"><span\r\n class=\"svg-icon svg-icon-2 svg-icon-primary\"></span><span\r\n class=\"svg-icon svg-icon-2 svg-icon-primary\"><svg xmlns=\"http://www.w3.org/2000/svg\"\r\n xmlns:xlink=\"http://www.w3.org/1999/xlink\" width=\"24px\" height=\"24px\" viewBox=\"0 0 24 24\"\r\n version=\"1.1\" class=\"ng-star-inserted\">\r\n <g stroke=\"none\" stroke-width=\"1\" fill=\"none\" fill-rule=\"evenodd\">\r\n <polygon points=\"0 0 24 0 24 24 0 24\"></polygon>\r\n <path\r\n d=\"M12,11 C9.790861,11 8,9.209139 8,7 C8,4.790861 9.790861,3 12,3 C14.209139,3 16,4.790861 16,7 C16,9.209139 14.209139,11 12,11 Z\"\r\n fill=\"#009EF7\" fill-rule=\"nonzero\" opacity=\"0.3\"></path>\r\n <path\r\n d=\"M3.00065168,20.1992055 C3.38825852,15.4265159 7.26191235,13 11.9833413,13 C16.7712164,13 20.7048837,15.2931929 20.9979143,20.2 C21.0095879,20.3954741 20.9979143,21 20.2466999,21 C16.541124,21 11.0347247,21 3.72750223,21 C3.47671215,21 2.97953825,20.45918 3.00065168,20.1992055 Z\"\r\n fill=\"#009EF7\" fill-rule=\"nonzero\"></path>\r\n </g>\r\n </svg></span></span></div>\r\n <div class=\"mb-0 me-2\" style=\"text-align: left;\">\r\n <div class=\"alert-title\">{{ item._source.title }}</div>\r\n <div class=\"alt-desc\">{{ item._source.description }}</div>\r\n </div>\r\n </div><span class=\"badge badge-light fs-9\">{{ item._source.date|customDateFormat }}</span>\r\n </div>\r\n </div>\r\n <div class=\"text-center border-top\">\r\n <a (click)=\"viewAll('alerts')\" class=\"btn btn-color-gray-600 btn-active-color-primary my-2\">\r\n View All\r\n </a>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n</div>\r\n\r\n<div class=\"w-450px position-fixed end-0 bottom-0 transition\">\r\n <div class=\"mb-4\" *ngFor=\"let item of pushNotificationList;let i = index\">\r\n <div class=\"alertbg card\" *ngIf=\"item._score\" @fadeIn @fadeOut>\r\n <div class=\"row m-2\">\r\n <div class=\"col-1 align-items-start mt-1\">\r\n <span><svg xmlns=\"http://www.w3.org/2000/svg\" width=\"20\" height=\"20\" viewBox=\"0 0 20 20\" fill=\"none\">\r\n <g clip-path=\"url(#clip0_12254_112653)\">\r\n <path\r\n d=\"M9.99935 13.3334V10M9.99935 6.66669H10.0077M18.3327 10C18.3327 14.6024 14.6017 18.3334 9.99935 18.3334C5.39698 18.3334 1.66602 14.6024 1.66602 10C1.66602 5.39765 5.39698 1.66669 9.99935 1.66669C14.6017 1.66669 18.3327 5.39765 18.3327 10Z\"\r\n stroke=\"#667085\" stroke-width=\"1.66667\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </g>\r\n <defs>\r\n <clipPath id=\"clip0_12254_112653\">\r\n <rect width=\"20\" height=\"20\" fill=\"white\" />\r\n </clipPath>\r\n </defs>\r\n </svg>\r\n </span>\r\n </div>\r\n <div class=\"col-10 align-items-start\">\r\n <span class=\"alert-title\">\r\n Notification\r\n </span>\r\n <div>\r\n {{item._source.description}}\r\n </div>\r\n </div>\r\n <div class=\"col-1 align-items-start cursor-pointer\" (click)=\"notificationPushUpdate(item,'')\">\r\n <span><svg width=\"20\" height=\"20\" viewBox=\"0 0 20 20\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path d=\"M15 5L5 15M5 5L15 15\" stroke=\"#667085\" stroke-width=\"1.67\" stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n </div>\r\n <!-- -->\r\n <div class=\"d-flex my-2 justify-content-around\" >\r\n <div [ngClass]=\"!['remind','cancel'].includes(button.redirectionUrl) ? '' : 'mt-2'\" *ngFor=\"let button of item._source?.alertCta\">\r\n <button *ngIf=\"!['remind','cancel'].includes(button.redirectionUrl)\" (click)=\"notificationPushUpdate(item,button)\"\r\n type=\"button\" tabindex=\"0\" class=\" ms-10 btn btn-sm btn-primary ng-star-inserted\"\r\n style=\"white-space: nowrap;\"><span class=\"submit\">{{ button.buttonName }} </span></button>\r\n <span *ngIf=\"['remind','cancel'].includes(button.redirectionUrl)\" (click)=\"notificationPushUpdate(item,button)\"\r\n class=\"text-primary mx-6 remindlatertext cursor-pointer\">{{ button.buttonName }} </span>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n</div>\r\n", styles: [".nav-line-tabs .nav-item .nav-link.active{border-radius:6px!important;background:var(--Primary-50, #EAF8FF)!important;padding:10px 14px!important;border-bottom:none!important;width:100%!important}.nav-line-tabs.nav-line-tabs-2x{background:var(--Gray-50, #F9FAFB)!important;padding:6px!important;border-radius:8px!important;border:1px solid var(--Gray-100, #F2F4F7)!important}.title-name{color:var(--Primary-700, #009BF3)!important;font-size:14px!important;font-weight:500!important;line-height:20px}.title-desc{color:var(--Gray-500, #667085)!important;font-size:14px!important;font-weight:400!important;line-height:20px}.title-notify{color:var(--Gray-900, #101828)!important;font-size:20px!important;font-weight:500!important;line-height:30px}.alert-title{color:var(--Gray-900, #101828);font-size:14px;font-style:normal;font-weight:600;line-height:28px;text-align:left}.alt-desc{color:var(--Gray-500, #667085)!important;font-size:14px!important;font-weight:400!important;line-height:20px;width:200px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.alertscroll{max-height:300px;overflow-y:scroll}.loader .title{width:65%}.loader .link{width:85%}.loader .description{width:95%}.loader .shimmer{padding:15px;width:95%;height:120px;margin:10px auto;background:#fff}.loader .shimmer .image-card{height:90px;width:90px;float:right;border-radius:8px}.loader .stroke{height:15px;background:#777;margin-top:20px}.loader .wrapper{width:0px;animation:fullView .5s forwards linear}@keyframes fullView{to{width:100%}}.loader .animate{animation:shimmer 3s;animation-iteration-count:infinite;background:linear-gradient(to right,#e6e6e6 5%,#ccc 25%,#e6e6e6 35%);background-size:1000px 100%}@keyframes shimmer{0%{background-position:-1000px 0}to{background-position:1000px 0}}.notificationAlign{color:var(--Gray-900, #101828);text-align:center;font-size:16px;font-style:normal;font-weight:600;line-height:24px}.noNotification{color:var(--Gray-500, #667085);text-align:center;font-family:Inter;font-size:14px;font-style:normal;font-weight:400;line-height:20px}.border-value{padding:16px!important;border-radius:12px!important;border:1.095px solid var(--Gray-200, #EAECF0)!important;background:var(--White, #FFF)!important}.buttonsec{border-radius:8px;margin:0;background:var(--gray-50, white);width:100%;height:fit-content;padding:5px}.submenu{background:var(--gray-50, white)!important;color:var(--gray-500, #667085)!important;font-size:16px!important;font-weight:500!important;outline:none!important}.text-primary{color:var(--primary-700, #009BF3)!important;font-size:16px;font-weight:500}.alertdot{color:var(--Gray-500, #667085);font-size:12px;font-weight:400;line-height:18px}.remindlatertext{color:var(--Primary-700, #009BF3);font-size:16px;font-weight:600;line-height:24px;text-decoration-line:underline;text-transform:capitalize}.submit{font-size:16px;font-weight:600;line-height:24px;text-align:left;color:#fff}.alerticon{margin-bottom:35%!important}.alertbg{gap:0px;opacity:0px;border-left:7px solid var(--Primary-500, #33B5FF);border-top-left-radius:15px;border-bottom-left-radius:15px}.notificationMenu{display:block!important;z-index:105;position:fixed;inset:0 0 auto auto;margin:0;transform:translate3d(-30.2222px,72.8889px,0)}.transition{transition:5s ease-in!important;right:-450px}\n"], dependencies: [{ kind: "directive", type: i4.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i4.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: i5.CustomDateFormatPipe, name: "customDateFormat" }], animations: [
237
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: NavbarComponent, selector: "lib-navbar", inputs: { appHeaderDefaulMenuDisplay: "appHeaderDefaulMenuDisplay", isRtl: "isRtl" }, host: { listeners: { "document:click": "onClick($event)" } }, ngImport: i0, template: "<!--begin::Notifications-->\r\n<div class=\"app-navbar-item\" [ngClass]=\"itemClass\" *ngIf=\"showNotification\">\r\n <!--begin::Menu- wrapper-->\r\n <div [ngClass]=\"btnClass\" (click)=\"showDropdown = !showDropdown\">\r\n <span *ngIf=\"!notification.length\">\r\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"20\" height=\"24\" viewBox=\"0 0 20 24\" fill=\"none\">\r\n <path\r\n d=\"M10.6779 2.4V3.00688L11.2715 3.1335C14.1674 3.75125 16.3919 6.45842 16.3919 9.75V10.6313C16.3919 13.0131 17.2249 15.3087 18.7338 17.0963L18.7352 17.0979L19.0636 17.4846C19.0639 17.485 19.0642 17.4853 19.0645 17.4857C19.2557 17.7136 19.3048 18.0393 19.185 18.3174C19.0641 18.5983 18.8153 18.75 18.5704 18.75H1.42848C1.1825 18.75 0.933931 18.5974 0.815017 18.3193C0.695108 18.0388 0.744592 17.7123 0.933996 17.4853C0.934445 17.4848 0.934894 17.4843 0.935344 17.4837L1.26312 17.0985L1.26473 17.0966C2.77599 15.3086 3.60697 13.0127 3.60697 10.6313V9.75C3.60697 6.45434 5.79488 3.75145 8.72559 3.13388L9.32094 3.00843V2.4V1.5C9.32094 1.05052 9.65806 0.75 9.99944 0.75C10.3408 0.75 10.6779 1.05052 10.6779 1.5V2.4ZM9.99944 23.25C9.44983 23.25 8.91726 23.023 8.52034 22.6062C8.29649 22.3712 8.12457 22.0708 8.01769 21.75H11.9812C11.8743 22.0708 11.7024 22.3712 11.4785 22.6062C11.0856 23.0188 10.5146 23.25 9.99944 23.25Z\"\r\n stroke=\"#00A3FF\" stroke-width=\"1.5\" />\r\n </svg>\r\n </span>\r\n <span *ngIf=\"notification.length\">\r\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"20\" height=\"24\" viewBox=\"0 0 20 24\" fill=\"none\">\r\n <path\r\n d=\"M11.4279 2.4V1.5C11.4279 0.671719 10.7896 0 9.99944 0C9.2093 0 8.57094 0.671719 8.57094 1.5V2.4C5.27202 3.09516 2.85697 6.12188 2.85697 9.75V10.6313C2.85697 12.8391 2.08648 14.9625 0.691915 16.6125L0.360862 17.0016C-0.0128805 17.4469 -0.10505 18.075 0.125384 18.6141C0.355818 19.1531 0.866013 19.5 1.42848 19.5H18.5704C19.1329 19.5 19.6418 19.1531 19.8739 18.6141C20.106 18.075 20.0123 17.4469 19.6373 17.0016L19.307 16.6125C17.9142 14.9625 17.1419 12.8391 17.1419 10.6313V9.75C17.1419 9.39947 17.119 9.05455 17.0746 8.71681C16.5845 8.8999 16.054 9 15.5 9C13.0147 9 11 6.98528 11 4.5C11 3.74877 11.1841 3.04054 11.5096 2.41795C11.4824 2.4118 11.4552 2.40582 11.4279 2.4Z\"\r\n fill=\"#00A3FF\" />\r\n <path\r\n d=\"M7.97723 23.1234C8.51291 23.6859 9.24055 24 9.99944 24C10.7181 24 11.486 23.6859 12.0216 23.1234C12.5573 22.5609 12.8564 21.7547 12.8564 21H7.14245C7.14245 21.7547 7.44154 22.5609 7.97723 23.1234Z\"\r\n fill=\"#00A3FF\" />\r\n <circle cx=\"16\" cy=\"4\" r=\"4\" fill=\"#F04438\" />\r\n </svg>\r\n </span>\r\n <div class=\"menu menu-sub menu-sub-dropdown menu-column w-450px w-lg-425px notificationMenu\" *ngIf=\"showDropdown\">\r\n <div class=\"card topbar\">\r\n <div class=\"card-header\">\r\n <h3 class=\"title-notify mt-10 mb-6\">\r\n Notifications\r\n </h3>\r\n <div class=\"card-toolbar\">\r\n <div class=\"d-flex mt-5\">\r\n <div class=\"d-flex align-items-center position-relative my-1\">\r\n <div (click)=\"redirecttonotification()\" [routerLink]=\"['/notifications/alerts?tab=download']\" class=\"text-primary\">View All <span><svg width=\"18\" height=\"18\" viewBox=\"0 0 18 18\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path d=\"M14 9.83333V14.8333C14 15.2754 13.8244 15.6993 13.5118 16.0118C13.1993 16.3244 12.7754 16.5 12.3333 16.5H3.16667C2.72464 16.5 2.30072 16.3244 1.98816 16.0118C1.67559 15.6993 1.5 15.2754 1.5 14.8333V5.66667C1.5 5.22464 1.67559 4.80072 1.98816 4.48816C2.30072 4.17559 2.72464 4 3.16667 4H8.16667M11.5 1.5H16.5M16.5 1.5V6.5M16.5 1.5L7.33333 10.6667\" stroke=\"#009BF3\" stroke-width=\"1.67\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\r\n </svg>\r\n </span></div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n \r\n <ng-container *ngIf=\"loading\">\r\n <div class=\"row loader d-flex justify-content-center align-items-center\">\r\n <div class=\"shimmer\">\r\n <div class=\"wrapper\">\r\n <div class=\"stroke animate title\"></div>\r\n <div class=\"stroke animate link\"></div>\r\n <div class=\"stroke animate description\"></div>\r\n </div>\r\n </div>\r\n <div class=\"shimmer\">\r\n <div class=\"wrapper\">\r\n <div class=\"stroke animate title\"></div>\r\n <div class=\"stroke animate link\"></div>\r\n <div class=\"stroke animate description\"></div>\r\n </div>\r\n </div>\r\n\r\n </div>\r\n </ng-container>\r\n <ng-container *ngIf=\"noData && !loading\">\r\n <div class=\"row\">\r\n <div class=\"col-lg-12 mb-3\">\r\n <div class=\"card-body d-flex justify-content-center align-items-center flex-column\">\r\n <img class=\"img-src w-25\" src=\"./assets/tango/Icons/noNotification.svg\" alt=\"\">\r\n <span class=\"notificationAlign mt-10\">No New Notification</span>\r\n <span class=\"noNotification mt-2\">Any new notification will be shown here.</span>\r\n </div>\r\n </div>\r\n </div>\r\n </ng-container>\r\n\r\n <div class=\"alertscroll\" *ngIf=\"notification.length\">\r\n <div *ngFor=\"let item of notification\" class=\"mh-200px ng-star-inserted\" style=\"overflow: auto;\">\r\n <div class=\"d-flex flex-stack py-3 mx-4 ng-star-inserted\">\r\n <div class=\"d-flex align-items-center\">\r\n <div class=\"symbol symbol-35px me-4\"><span class=\"symbol-label bg-light-primary\"><span\r\n class=\"svg-icon svg-icon-2 svg-icon-primary\"></span><span\r\n class=\"svg-icon svg-icon-2 svg-icon-primary\"><svg xmlns=\"http://www.w3.org/2000/svg\"\r\n xmlns:xlink=\"http://www.w3.org/1999/xlink\" width=\"24px\" height=\"24px\" viewBox=\"0 0 24 24\"\r\n version=\"1.1\" class=\"ng-star-inserted\">\r\n <g stroke=\"none\" stroke-width=\"1\" fill=\"none\" fill-rule=\"evenodd\">\r\n <polygon points=\"0 0 24 0 24 24 0 24\"></polygon>\r\n <path\r\n d=\"M12,11 C9.790861,11 8,9.209139 8,7 C8,4.790861 9.790861,3 12,3 C14.209139,3 16,4.790861 16,7 C16,9.209139 14.209139,11 12,11 Z\"\r\n fill=\"#009EF7\" fill-rule=\"nonzero\" opacity=\"0.3\"></path>\r\n <path\r\n d=\"M3.00065168,20.1992055 C3.38825852,15.4265159 7.26191235,13 11.9833413,13 C16.7712164,13 20.7048837,15.2931929 20.9979143,20.2 C21.0095879,20.3954741 20.9979143,21 20.2466999,21 C16.541124,21 11.0347247,21 3.72750223,21 C3.47671215,21 2.97953825,20.45918 3.00065168,20.1992055 Z\"\r\n fill=\"#009EF7\" fill-rule=\"nonzero\"></path>\r\n </g>\r\n </svg></span></span></div>\r\n <div class=\"mb-0 me-2\" style=\"text-align: left;\">\r\n <div class=\"alert-title\">{{ item._source.title }}</div>\r\n <div class=\"alt-desc\">{{ item._source.description }}</div>\r\n </div>\r\n </div><span class=\"badge badge-light fs-9\">{{ item._source.date|customDateFormat }}</span>\r\n </div>\r\n </div>\r\n <div class=\"text-center border-top\">\r\n <a (click)=\"viewAll('alerts')\" class=\"btn btn-color-gray-600 btn-active-color-primary my-2\">\r\n View All\r\n </a>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n</div>\r\n\r\n<div class=\"w-450px position-fixed end-0 bottom-0 transition\">\r\n <div class=\"mb-4\" *ngFor=\"let item of pushNotificationList;let i = index\">\r\n <div class=\"alertbg card\" *ngIf=\"item._score\" @fadeIn @fadeOut>\r\n <div class=\"row m-2\">\r\n <div class=\"col-1 align-items-start mt-1\">\r\n <span><svg xmlns=\"http://www.w3.org/2000/svg\" width=\"20\" height=\"20\" viewBox=\"0 0 20 20\" fill=\"none\">\r\n <g clip-path=\"url(#clip0_12254_112653)\">\r\n <path\r\n d=\"M9.99935 13.3334V10M9.99935 6.66669H10.0077M18.3327 10C18.3327 14.6024 14.6017 18.3334 9.99935 18.3334C5.39698 18.3334 1.66602 14.6024 1.66602 10C1.66602 5.39765 5.39698 1.66669 9.99935 1.66669C14.6017 1.66669 18.3327 5.39765 18.3327 10Z\"\r\n stroke=\"#667085\" stroke-width=\"1.66667\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </g>\r\n <defs>\r\n <clipPath id=\"clip0_12254_112653\">\r\n <rect width=\"20\" height=\"20\" fill=\"white\" />\r\n </clipPath>\r\n </defs>\r\n </svg>\r\n </span>\r\n </div>\r\n <div class=\"col-10 align-items-start\">\r\n <span class=\"alert-title\">\r\n Notification\r\n </span>\r\n <div>\r\n {{item._source.description}}\r\n </div>\r\n </div>\r\n <div class=\"col-1 align-items-start cursor-pointer\" (click)=\"notificationPushUpdate(item,'')\">\r\n <span><svg width=\"20\" height=\"20\" viewBox=\"0 0 20 20\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path d=\"M15 5L5 15M5 5L15 15\" stroke=\"#667085\" stroke-width=\"1.67\" stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n </div>\r\n <!-- -->\r\n <div class=\"d-flex my-2 justify-content-around\" >\r\n <div [ngClass]=\"!['remind','cancel'].includes(button.redirectionUrl) ? '' : 'mt-2'\" *ngFor=\"let button of item._source?.alertCta\">\r\n <button *ngIf=\"!['remind','cancel'].includes(button.redirectionUrl)\" (click)=\"notificationPushUpdate(item,button)\"\r\n type=\"button\" tabindex=\"0\" class=\" ms-10 btn btn-sm btn-primary ng-star-inserted\"\r\n style=\"white-space: nowrap;\"><span class=\"submit\">{{ button.buttonName }} </span></button>\r\n <span *ngIf=\"['remind','cancel'].includes(button.redirectionUrl)\" (click)=\"notificationPushUpdate(item,button)\"\r\n class=\"text-primary mx-6 remindlatertext cursor-pointer\">{{ button.buttonName }} </span>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n</div>\r\n", styles: [".nav-line-tabs .nav-item .nav-link.active{border-radius:6px!important;background:var(--Primary-50, #EAF8FF)!important;padding:10px 14px!important;border-bottom:none!important;width:100%!important}.nav-line-tabs.nav-line-tabs-2x{background:var(--Gray-50, #F9FAFB)!important;padding:6px!important;border-radius:8px!important;border:1px solid var(--Gray-100, #F2F4F7)!important}.title-name{color:var(--Primary-700, #009BF3)!important;font-size:14px!important;font-weight:500!important;line-height:20px}.title-desc{color:var(--Gray-500, #667085)!important;font-size:14px!important;font-weight:400!important;line-height:20px}.title-notify{color:var(--Gray-900, #101828)!important;font-size:20px!important;font-weight:500!important;line-height:30px}.alert-title{color:var(--Gray-900, #101828);font-size:14px;font-style:normal;font-weight:600;line-height:28px;text-align:left}.alt-desc{color:var(--Gray-500, #667085)!important;font-size:14px!important;font-weight:400!important;line-height:20px;width:200px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.alertscroll{max-height:300px;overflow-y:scroll}.loader .title{width:65%}.loader .link{width:85%}.loader .description{width:95%}.loader .shimmer{padding:15px;width:95%;height:120px;margin:10px auto;background:#fff}.loader .shimmer .image-card{height:90px;width:90px;float:right;border-radius:8px}.loader .stroke{height:15px;background:#777;margin-top:20px}.loader .wrapper{width:0px;animation:fullView .5s forwards linear}@keyframes fullView{to{width:100%}}.loader .animate{animation:shimmer 3s;animation-iteration-count:infinite;background:linear-gradient(to right,#e6e6e6 5%,#ccc 25%,#e6e6e6 35%);background-size:1000px 100%}@keyframes shimmer{0%{background-position:-1000px 0}to{background-position:1000px 0}}.notificationAlign{color:var(--Gray-900, #101828);text-align:center;font-size:16px;font-style:normal;font-weight:600;line-height:24px}.noNotification{color:var(--Gray-500, #667085);text-align:center;font-family:Inter;font-size:14px;font-style:normal;font-weight:400;line-height:20px}.border-value{padding:16px!important;border-radius:12px!important;border:1.095px solid var(--Gray-200, #EAECF0)!important;background:var(--White, #FFF)!important}.buttonsec{border-radius:8px;margin:0;background:var(--gray-50, white);width:100%;height:fit-content;padding:5px}.submenu{background:var(--gray-50, white)!important;color:var(--gray-500, #667085)!important;font-size:16px!important;font-weight:500!important;outline:none!important}.text-primary{color:var(--primary-700, #009BF3)!important;font-size:16px;font-weight:500}.alertdot{color:var(--Gray-500, #667085);font-size:12px;font-weight:400;line-height:18px}.remindlatertext{color:var(--Primary-700, #009BF3);font-size:16px;font-weight:600;line-height:24px;text-decoration-line:underline;text-transform:capitalize}.submit{font-size:16px;font-weight:600;line-height:24px;text-align:left;color:#fff}.alerticon{margin-bottom:35%!important}.alertbg{gap:0px;opacity:0px;border-left:7px solid var(--Primary-500, #33B5FF);border-top-left-radius:15px;border-bottom-left-radius:15px}.notificationMenu{display:block!important;z-index:105;position:fixed;inset:0 0 auto auto;margin:0;transform:translate3d(-30.2222px,72.8889px,0)}.transition{transition:5s ease-in!important;right:-450px}\n"], dependencies: [{ kind: "directive", type: i4.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i4.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "info", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "pipe", type: i5.CustomDateFormatPipe, name: "customDateFormat" }], animations: [
235
238
  fadeIn,
236
239
  fadeOut
237
240
  ] });
@@ -241,7 +244,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
241
244
  args: [{ selector: 'lib-navbar', animations: [
242
245
  fadeIn,
243
246
  fadeOut
244
- ], template: "<!--begin::Notifications-->\r\n<div class=\"app-navbar-item\" [ngClass]=\"itemClass\" *ngIf=\"showNotification\">\r\n <!--begin::Menu- wrapper-->\r\n <div [ngClass]=\"btnClass\" (click)=\"showDropdown = !showDropdown\">\r\n <span *ngIf=\"!notification.length\">\r\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"20\" height=\"24\" viewBox=\"0 0 20 24\" fill=\"none\">\r\n <path\r\n d=\"M10.6779 2.4V3.00688L11.2715 3.1335C14.1674 3.75125 16.3919 6.45842 16.3919 9.75V10.6313C16.3919 13.0131 17.2249 15.3087 18.7338 17.0963L18.7352 17.0979L19.0636 17.4846C19.0639 17.485 19.0642 17.4853 19.0645 17.4857C19.2557 17.7136 19.3048 18.0393 19.185 18.3174C19.0641 18.5983 18.8153 18.75 18.5704 18.75H1.42848C1.1825 18.75 0.933931 18.5974 0.815017 18.3193C0.695108 18.0388 0.744592 17.7123 0.933996 17.4853C0.934445 17.4848 0.934894 17.4843 0.935344 17.4837L1.26312 17.0985L1.26473 17.0966C2.77599 15.3086 3.60697 13.0127 3.60697 10.6313V9.75C3.60697 6.45434 5.79488 3.75145 8.72559 3.13388L9.32094 3.00843V2.4V1.5C9.32094 1.05052 9.65806 0.75 9.99944 0.75C10.3408 0.75 10.6779 1.05052 10.6779 1.5V2.4ZM9.99944 23.25C9.44983 23.25 8.91726 23.023 8.52034 22.6062C8.29649 22.3712 8.12457 22.0708 8.01769 21.75H11.9812C11.8743 22.0708 11.7024 22.3712 11.4785 22.6062C11.0856 23.0188 10.5146 23.25 9.99944 23.25Z\"\r\n stroke=\"#00A3FF\" stroke-width=\"1.5\" />\r\n </svg>\r\n </span>\r\n <span *ngIf=\"notification.length\">\r\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"20\" height=\"24\" viewBox=\"0 0 20 24\" fill=\"none\">\r\n <path\r\n d=\"M11.4279 2.4V1.5C11.4279 0.671719 10.7896 0 9.99944 0C9.2093 0 8.57094 0.671719 8.57094 1.5V2.4C5.27202 3.09516 2.85697 6.12188 2.85697 9.75V10.6313C2.85697 12.8391 2.08648 14.9625 0.691915 16.6125L0.360862 17.0016C-0.0128805 17.4469 -0.10505 18.075 0.125384 18.6141C0.355818 19.1531 0.866013 19.5 1.42848 19.5H18.5704C19.1329 19.5 19.6418 19.1531 19.8739 18.6141C20.106 18.075 20.0123 17.4469 19.6373 17.0016L19.307 16.6125C17.9142 14.9625 17.1419 12.8391 17.1419 10.6313V9.75C17.1419 9.39947 17.119 9.05455 17.0746 8.71681C16.5845 8.8999 16.054 9 15.5 9C13.0147 9 11 6.98528 11 4.5C11 3.74877 11.1841 3.04054 11.5096 2.41795C11.4824 2.4118 11.4552 2.40582 11.4279 2.4Z\"\r\n fill=\"#00A3FF\" />\r\n <path\r\n d=\"M7.97723 23.1234C8.51291 23.6859 9.24055 24 9.99944 24C10.7181 24 11.486 23.6859 12.0216 23.1234C12.5573 22.5609 12.8564 21.7547 12.8564 21H7.14245C7.14245 21.7547 7.44154 22.5609 7.97723 23.1234Z\"\r\n fill=\"#00A3FF\" />\r\n <circle cx=\"16\" cy=\"4\" r=\"4\" fill=\"#F04438\" />\r\n </svg>\r\n </span>\r\n <div class=\"menu menu-sub menu-sub-dropdown menu-column w-450px w-lg-425px notificationMenu\" *ngIf=\"showDropdown\">\r\n <div class=\"card topbar\">\r\n <div class=\"card-header\">\r\n <h3 class=\"title-notify mt-10 mb-6\">\r\n Notifications\r\n </h3>\r\n </div>\r\n <ng-container *ngIf=\"loading\">\r\n <div class=\"row loader d-flex justify-content-center align-items-center\">\r\n <div class=\"shimmer\">\r\n <div class=\"wrapper\">\r\n <div class=\"stroke animate title\"></div>\r\n <div class=\"stroke animate link\"></div>\r\n <div class=\"stroke animate description\"></div>\r\n </div>\r\n </div>\r\n <div class=\"shimmer\">\r\n <div class=\"wrapper\">\r\n <div class=\"stroke animate title\"></div>\r\n <div class=\"stroke animate link\"></div>\r\n <div class=\"stroke animate description\"></div>\r\n </div>\r\n </div>\r\n\r\n </div>\r\n </ng-container>\r\n <ng-container *ngIf=\"noData && !loading\">\r\n <div class=\"row\">\r\n <div class=\"col-lg-12 mb-3\">\r\n <div class=\"card-body d-flex justify-content-center align-items-center flex-column\">\r\n <img class=\"img-src w-25\" src=\"./assets/tango/Icons/noNotification.svg\" alt=\"\">\r\n <span class=\"notificationAlign mt-10\">No New Notification</span>\r\n <span class=\"noNotification mt-2\">Any new notification will be shown here.</span>\r\n </div>\r\n </div>\r\n </div>\r\n </ng-container>\r\n\r\n <div class=\"alertscroll\" *ngIf=\"notification.length\">\r\n <div *ngFor=\"let item of notification\" class=\"mh-200px ng-star-inserted\" style=\"overflow: auto;\">\r\n <div class=\"d-flex flex-stack py-3 mx-4 ng-star-inserted\">\r\n <div class=\"d-flex align-items-center\">\r\n <div class=\"symbol symbol-35px me-4\"><span class=\"symbol-label bg-light-primary\"><span\r\n class=\"svg-icon svg-icon-2 svg-icon-primary\"></span><span\r\n class=\"svg-icon svg-icon-2 svg-icon-primary\"><svg xmlns=\"http://www.w3.org/2000/svg\"\r\n xmlns:xlink=\"http://www.w3.org/1999/xlink\" width=\"24px\" height=\"24px\" viewBox=\"0 0 24 24\"\r\n version=\"1.1\" class=\"ng-star-inserted\">\r\n <g stroke=\"none\" stroke-width=\"1\" fill=\"none\" fill-rule=\"evenodd\">\r\n <polygon points=\"0 0 24 0 24 24 0 24\"></polygon>\r\n <path\r\n d=\"M12,11 C9.790861,11 8,9.209139 8,7 C8,4.790861 9.790861,3 12,3 C14.209139,3 16,4.790861 16,7 C16,9.209139 14.209139,11 12,11 Z\"\r\n fill=\"#009EF7\" fill-rule=\"nonzero\" opacity=\"0.3\"></path>\r\n <path\r\n d=\"M3.00065168,20.1992055 C3.38825852,15.4265159 7.26191235,13 11.9833413,13 C16.7712164,13 20.7048837,15.2931929 20.9979143,20.2 C21.0095879,20.3954741 20.9979143,21 20.2466999,21 C16.541124,21 11.0347247,21 3.72750223,21 C3.47671215,21 2.97953825,20.45918 3.00065168,20.1992055 Z\"\r\n fill=\"#009EF7\" fill-rule=\"nonzero\"></path>\r\n </g>\r\n </svg></span></span></div>\r\n <div class=\"mb-0 me-2\" style=\"text-align: left;\">\r\n <div class=\"alert-title\">{{ item._source.title }}</div>\r\n <div class=\"alt-desc\">{{ item._source.description }}</div>\r\n </div>\r\n </div><span class=\"badge badge-light fs-9\">{{ item._source.date|customDateFormat }}</span>\r\n </div>\r\n </div>\r\n <div class=\"text-center border-top\">\r\n <a (click)=\"viewAll('alerts')\" class=\"btn btn-color-gray-600 btn-active-color-primary my-2\">\r\n View All\r\n </a>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n</div>\r\n\r\n<div class=\"w-450px position-fixed end-0 bottom-0 transition\">\r\n <div class=\"mb-4\" *ngFor=\"let item of pushNotificationList;let i = index\">\r\n <div class=\"alertbg card\" *ngIf=\"item._score\" @fadeIn @fadeOut>\r\n <div class=\"row m-2\">\r\n <div class=\"col-1 align-items-start mt-1\">\r\n <span><svg xmlns=\"http://www.w3.org/2000/svg\" width=\"20\" height=\"20\" viewBox=\"0 0 20 20\" fill=\"none\">\r\n <g clip-path=\"url(#clip0_12254_112653)\">\r\n <path\r\n d=\"M9.99935 13.3334V10M9.99935 6.66669H10.0077M18.3327 10C18.3327 14.6024 14.6017 18.3334 9.99935 18.3334C5.39698 18.3334 1.66602 14.6024 1.66602 10C1.66602 5.39765 5.39698 1.66669 9.99935 1.66669C14.6017 1.66669 18.3327 5.39765 18.3327 10Z\"\r\n stroke=\"#667085\" stroke-width=\"1.66667\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </g>\r\n <defs>\r\n <clipPath id=\"clip0_12254_112653\">\r\n <rect width=\"20\" height=\"20\" fill=\"white\" />\r\n </clipPath>\r\n </defs>\r\n </svg>\r\n </span>\r\n </div>\r\n <div class=\"col-10 align-items-start\">\r\n <span class=\"alert-title\">\r\n Notification\r\n </span>\r\n <div>\r\n {{item._source.description}}\r\n </div>\r\n </div>\r\n <div class=\"col-1 align-items-start cursor-pointer\" (click)=\"notificationPushUpdate(item,'')\">\r\n <span><svg width=\"20\" height=\"20\" viewBox=\"0 0 20 20\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path d=\"M15 5L5 15M5 5L15 15\" stroke=\"#667085\" stroke-width=\"1.67\" stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n </div>\r\n <!-- -->\r\n <div class=\"d-flex my-2 justify-content-around\" >\r\n <div [ngClass]=\"!['remind','cancel'].includes(button.redirectionUrl) ? '' : 'mt-2'\" *ngFor=\"let button of item._source?.alertCta\">\r\n <button *ngIf=\"!['remind','cancel'].includes(button.redirectionUrl)\" (click)=\"notificationPushUpdate(item,button)\"\r\n type=\"button\" tabindex=\"0\" class=\" ms-10 btn btn-sm btn-primary ng-star-inserted\"\r\n style=\"white-space: nowrap;\"><span class=\"submit\">{{ button.buttonName }} </span></button>\r\n <span *ngIf=\"['remind','cancel'].includes(button.redirectionUrl)\" (click)=\"notificationPushUpdate(item,button)\"\r\n class=\"text-primary mx-6 remindlatertext cursor-pointer\">{{ button.buttonName }} </span>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n</div>\r\n", styles: [".nav-line-tabs .nav-item .nav-link.active{border-radius:6px!important;background:var(--Primary-50, #EAF8FF)!important;padding:10px 14px!important;border-bottom:none!important;width:100%!important}.nav-line-tabs.nav-line-tabs-2x{background:var(--Gray-50, #F9FAFB)!important;padding:6px!important;border-radius:8px!important;border:1px solid var(--Gray-100, #F2F4F7)!important}.title-name{color:var(--Primary-700, #009BF3)!important;font-size:14px!important;font-weight:500!important;line-height:20px}.title-desc{color:var(--Gray-500, #667085)!important;font-size:14px!important;font-weight:400!important;line-height:20px}.title-notify{color:var(--Gray-900, #101828)!important;font-size:20px!important;font-weight:500!important;line-height:30px}.alert-title{color:var(--Gray-900, #101828);font-size:14px;font-style:normal;font-weight:600;line-height:28px;text-align:left}.alt-desc{color:var(--Gray-500, #667085)!important;font-size:14px!important;font-weight:400!important;line-height:20px;width:200px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.alertscroll{max-height:300px;overflow-y:scroll}.loader .title{width:65%}.loader .link{width:85%}.loader .description{width:95%}.loader .shimmer{padding:15px;width:95%;height:120px;margin:10px auto;background:#fff}.loader .shimmer .image-card{height:90px;width:90px;float:right;border-radius:8px}.loader .stroke{height:15px;background:#777;margin-top:20px}.loader .wrapper{width:0px;animation:fullView .5s forwards linear}@keyframes fullView{to{width:100%}}.loader .animate{animation:shimmer 3s;animation-iteration-count:infinite;background:linear-gradient(to right,#e6e6e6 5%,#ccc 25%,#e6e6e6 35%);background-size:1000px 100%}@keyframes shimmer{0%{background-position:-1000px 0}to{background-position:1000px 0}}.notificationAlign{color:var(--Gray-900, #101828);text-align:center;font-size:16px;font-style:normal;font-weight:600;line-height:24px}.noNotification{color:var(--Gray-500, #667085);text-align:center;font-family:Inter;font-size:14px;font-style:normal;font-weight:400;line-height:20px}.border-value{padding:16px!important;border-radius:12px!important;border:1.095px solid var(--Gray-200, #EAECF0)!important;background:var(--White, #FFF)!important}.buttonsec{border-radius:8px;margin:0;background:var(--gray-50, white);width:100%;height:fit-content;padding:5px}.submenu{background:var(--gray-50, white)!important;color:var(--gray-500, #667085)!important;font-size:16px!important;font-weight:500!important;outline:none!important}.text-primary{color:var(--primary-700, #009BF3)!important;font-size:16px;font-weight:500}.alertdot{color:var(--Gray-500, #667085);font-size:12px;font-weight:400;line-height:18px}.remindlatertext{color:var(--Primary-700, #009BF3);font-size:16px;font-weight:600;line-height:24px;text-decoration-line:underline;text-transform:capitalize}.submit{font-size:16px;font-weight:600;line-height:24px;text-align:left;color:#fff}.alerticon{margin-bottom:35%!important}.alertbg{gap:0px;opacity:0px;border-left:7px solid var(--Primary-500, #33B5FF);border-top-left-radius:15px;border-bottom-left-radius:15px}.notificationMenu{display:block!important;z-index:105;position:fixed;inset:0 0 auto auto;margin:0;transform:translate3d(-30.2222px,72.8889px,0)}.transition{transition:5s ease-in!important;right:-450px}\n"] }]
247
+ ], template: "<!--begin::Notifications-->\r\n<div class=\"app-navbar-item\" [ngClass]=\"itemClass\" *ngIf=\"showNotification\">\r\n <!--begin::Menu- wrapper-->\r\n <div [ngClass]=\"btnClass\" (click)=\"showDropdown = !showDropdown\">\r\n <span *ngIf=\"!notification.length\">\r\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"20\" height=\"24\" viewBox=\"0 0 20 24\" fill=\"none\">\r\n <path\r\n d=\"M10.6779 2.4V3.00688L11.2715 3.1335C14.1674 3.75125 16.3919 6.45842 16.3919 9.75V10.6313C16.3919 13.0131 17.2249 15.3087 18.7338 17.0963L18.7352 17.0979L19.0636 17.4846C19.0639 17.485 19.0642 17.4853 19.0645 17.4857C19.2557 17.7136 19.3048 18.0393 19.185 18.3174C19.0641 18.5983 18.8153 18.75 18.5704 18.75H1.42848C1.1825 18.75 0.933931 18.5974 0.815017 18.3193C0.695108 18.0388 0.744592 17.7123 0.933996 17.4853C0.934445 17.4848 0.934894 17.4843 0.935344 17.4837L1.26312 17.0985L1.26473 17.0966C2.77599 15.3086 3.60697 13.0127 3.60697 10.6313V9.75C3.60697 6.45434 5.79488 3.75145 8.72559 3.13388L9.32094 3.00843V2.4V1.5C9.32094 1.05052 9.65806 0.75 9.99944 0.75C10.3408 0.75 10.6779 1.05052 10.6779 1.5V2.4ZM9.99944 23.25C9.44983 23.25 8.91726 23.023 8.52034 22.6062C8.29649 22.3712 8.12457 22.0708 8.01769 21.75H11.9812C11.8743 22.0708 11.7024 22.3712 11.4785 22.6062C11.0856 23.0188 10.5146 23.25 9.99944 23.25Z\"\r\n stroke=\"#00A3FF\" stroke-width=\"1.5\" />\r\n </svg>\r\n </span>\r\n <span *ngIf=\"notification.length\">\r\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"20\" height=\"24\" viewBox=\"0 0 20 24\" fill=\"none\">\r\n <path\r\n d=\"M11.4279 2.4V1.5C11.4279 0.671719 10.7896 0 9.99944 0C9.2093 0 8.57094 0.671719 8.57094 1.5V2.4C5.27202 3.09516 2.85697 6.12188 2.85697 9.75V10.6313C2.85697 12.8391 2.08648 14.9625 0.691915 16.6125L0.360862 17.0016C-0.0128805 17.4469 -0.10505 18.075 0.125384 18.6141C0.355818 19.1531 0.866013 19.5 1.42848 19.5H18.5704C19.1329 19.5 19.6418 19.1531 19.8739 18.6141C20.106 18.075 20.0123 17.4469 19.6373 17.0016L19.307 16.6125C17.9142 14.9625 17.1419 12.8391 17.1419 10.6313V9.75C17.1419 9.39947 17.119 9.05455 17.0746 8.71681C16.5845 8.8999 16.054 9 15.5 9C13.0147 9 11 6.98528 11 4.5C11 3.74877 11.1841 3.04054 11.5096 2.41795C11.4824 2.4118 11.4552 2.40582 11.4279 2.4Z\"\r\n fill=\"#00A3FF\" />\r\n <path\r\n d=\"M7.97723 23.1234C8.51291 23.6859 9.24055 24 9.99944 24C10.7181 24 11.486 23.6859 12.0216 23.1234C12.5573 22.5609 12.8564 21.7547 12.8564 21H7.14245C7.14245 21.7547 7.44154 22.5609 7.97723 23.1234Z\"\r\n fill=\"#00A3FF\" />\r\n <circle cx=\"16\" cy=\"4\" r=\"4\" fill=\"#F04438\" />\r\n </svg>\r\n </span>\r\n <div class=\"menu menu-sub menu-sub-dropdown menu-column w-450px w-lg-425px notificationMenu\" *ngIf=\"showDropdown\">\r\n <div class=\"card topbar\">\r\n <div class=\"card-header\">\r\n <h3 class=\"title-notify mt-10 mb-6\">\r\n Notifications\r\n </h3>\r\n <div class=\"card-toolbar\">\r\n <div class=\"d-flex mt-5\">\r\n <div class=\"d-flex align-items-center position-relative my-1\">\r\n <div (click)=\"redirecttonotification()\" [routerLink]=\"['/notifications/alerts?tab=download']\" class=\"text-primary\">View All <span><svg width=\"18\" height=\"18\" viewBox=\"0 0 18 18\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path d=\"M14 9.83333V14.8333C14 15.2754 13.8244 15.6993 13.5118 16.0118C13.1993 16.3244 12.7754 16.5 12.3333 16.5H3.16667C2.72464 16.5 2.30072 16.3244 1.98816 16.0118C1.67559 15.6993 1.5 15.2754 1.5 14.8333V5.66667C1.5 5.22464 1.67559 4.80072 1.98816 4.48816C2.30072 4.17559 2.72464 4 3.16667 4H8.16667M11.5 1.5H16.5M16.5 1.5V6.5M16.5 1.5L7.33333 10.6667\" stroke=\"#009BF3\" stroke-width=\"1.67\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\r\n </svg>\r\n </span></div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n \r\n <ng-container *ngIf=\"loading\">\r\n <div class=\"row loader d-flex justify-content-center align-items-center\">\r\n <div class=\"shimmer\">\r\n <div class=\"wrapper\">\r\n <div class=\"stroke animate title\"></div>\r\n <div class=\"stroke animate link\"></div>\r\n <div class=\"stroke animate description\"></div>\r\n </div>\r\n </div>\r\n <div class=\"shimmer\">\r\n <div class=\"wrapper\">\r\n <div class=\"stroke animate title\"></div>\r\n <div class=\"stroke animate link\"></div>\r\n <div class=\"stroke animate description\"></div>\r\n </div>\r\n </div>\r\n\r\n </div>\r\n </ng-container>\r\n <ng-container *ngIf=\"noData && !loading\">\r\n <div class=\"row\">\r\n <div class=\"col-lg-12 mb-3\">\r\n <div class=\"card-body d-flex justify-content-center align-items-center flex-column\">\r\n <img class=\"img-src w-25\" src=\"./assets/tango/Icons/noNotification.svg\" alt=\"\">\r\n <span class=\"notificationAlign mt-10\">No New Notification</span>\r\n <span class=\"noNotification mt-2\">Any new notification will be shown here.</span>\r\n </div>\r\n </div>\r\n </div>\r\n </ng-container>\r\n\r\n <div class=\"alertscroll\" *ngIf=\"notification.length\">\r\n <div *ngFor=\"let item of notification\" class=\"mh-200px ng-star-inserted\" style=\"overflow: auto;\">\r\n <div class=\"d-flex flex-stack py-3 mx-4 ng-star-inserted\">\r\n <div class=\"d-flex align-items-center\">\r\n <div class=\"symbol symbol-35px me-4\"><span class=\"symbol-label bg-light-primary\"><span\r\n class=\"svg-icon svg-icon-2 svg-icon-primary\"></span><span\r\n class=\"svg-icon svg-icon-2 svg-icon-primary\"><svg xmlns=\"http://www.w3.org/2000/svg\"\r\n xmlns:xlink=\"http://www.w3.org/1999/xlink\" width=\"24px\" height=\"24px\" viewBox=\"0 0 24 24\"\r\n version=\"1.1\" class=\"ng-star-inserted\">\r\n <g stroke=\"none\" stroke-width=\"1\" fill=\"none\" fill-rule=\"evenodd\">\r\n <polygon points=\"0 0 24 0 24 24 0 24\"></polygon>\r\n <path\r\n d=\"M12,11 C9.790861,11 8,9.209139 8,7 C8,4.790861 9.790861,3 12,3 C14.209139,3 16,4.790861 16,7 C16,9.209139 14.209139,11 12,11 Z\"\r\n fill=\"#009EF7\" fill-rule=\"nonzero\" opacity=\"0.3\"></path>\r\n <path\r\n d=\"M3.00065168,20.1992055 C3.38825852,15.4265159 7.26191235,13 11.9833413,13 C16.7712164,13 20.7048837,15.2931929 20.9979143,20.2 C21.0095879,20.3954741 20.9979143,21 20.2466999,21 C16.541124,21 11.0347247,21 3.72750223,21 C3.47671215,21 2.97953825,20.45918 3.00065168,20.1992055 Z\"\r\n fill=\"#009EF7\" fill-rule=\"nonzero\"></path>\r\n </g>\r\n </svg></span></span></div>\r\n <div class=\"mb-0 me-2\" style=\"text-align: left;\">\r\n <div class=\"alert-title\">{{ item._source.title }}</div>\r\n <div class=\"alt-desc\">{{ item._source.description }}</div>\r\n </div>\r\n </div><span class=\"badge badge-light fs-9\">{{ item._source.date|customDateFormat }}</span>\r\n </div>\r\n </div>\r\n <div class=\"text-center border-top\">\r\n <a (click)=\"viewAll('alerts')\" class=\"btn btn-color-gray-600 btn-active-color-primary my-2\">\r\n View All\r\n </a>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n</div>\r\n\r\n<div class=\"w-450px position-fixed end-0 bottom-0 transition\">\r\n <div class=\"mb-4\" *ngFor=\"let item of pushNotificationList;let i = index\">\r\n <div class=\"alertbg card\" *ngIf=\"item._score\" @fadeIn @fadeOut>\r\n <div class=\"row m-2\">\r\n <div class=\"col-1 align-items-start mt-1\">\r\n <span><svg xmlns=\"http://www.w3.org/2000/svg\" width=\"20\" height=\"20\" viewBox=\"0 0 20 20\" fill=\"none\">\r\n <g clip-path=\"url(#clip0_12254_112653)\">\r\n <path\r\n d=\"M9.99935 13.3334V10M9.99935 6.66669H10.0077M18.3327 10C18.3327 14.6024 14.6017 18.3334 9.99935 18.3334C5.39698 18.3334 1.66602 14.6024 1.66602 10C1.66602 5.39765 5.39698 1.66669 9.99935 1.66669C14.6017 1.66669 18.3327 5.39765 18.3327 10Z\"\r\n stroke=\"#667085\" stroke-width=\"1.66667\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </g>\r\n <defs>\r\n <clipPath id=\"clip0_12254_112653\">\r\n <rect width=\"20\" height=\"20\" fill=\"white\" />\r\n </clipPath>\r\n </defs>\r\n </svg>\r\n </span>\r\n </div>\r\n <div class=\"col-10 align-items-start\">\r\n <span class=\"alert-title\">\r\n Notification\r\n </span>\r\n <div>\r\n {{item._source.description}}\r\n </div>\r\n </div>\r\n <div class=\"col-1 align-items-start cursor-pointer\" (click)=\"notificationPushUpdate(item,'')\">\r\n <span><svg width=\"20\" height=\"20\" viewBox=\"0 0 20 20\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path d=\"M15 5L5 15M5 5L15 15\" stroke=\"#667085\" stroke-width=\"1.67\" stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n </div>\r\n <!-- -->\r\n <div class=\"d-flex my-2 justify-content-around\" >\r\n <div [ngClass]=\"!['remind','cancel'].includes(button.redirectionUrl) ? '' : 'mt-2'\" *ngFor=\"let button of item._source?.alertCta\">\r\n <button *ngIf=\"!['remind','cancel'].includes(button.redirectionUrl)\" (click)=\"notificationPushUpdate(item,button)\"\r\n type=\"button\" tabindex=\"0\" class=\" ms-10 btn btn-sm btn-primary ng-star-inserted\"\r\n style=\"white-space: nowrap;\"><span class=\"submit\">{{ button.buttonName }} </span></button>\r\n <span *ngIf=\"['remind','cancel'].includes(button.redirectionUrl)\" (click)=\"notificationPushUpdate(item,button)\"\r\n class=\"text-primary mx-6 remindlatertext cursor-pointer\">{{ button.buttonName }} </span>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n</div>\r\n", styles: [".nav-line-tabs .nav-item .nav-link.active{border-radius:6px!important;background:var(--Primary-50, #EAF8FF)!important;padding:10px 14px!important;border-bottom:none!important;width:100%!important}.nav-line-tabs.nav-line-tabs-2x{background:var(--Gray-50, #F9FAFB)!important;padding:6px!important;border-radius:8px!important;border:1px solid var(--Gray-100, #F2F4F7)!important}.title-name{color:var(--Primary-700, #009BF3)!important;font-size:14px!important;font-weight:500!important;line-height:20px}.title-desc{color:var(--Gray-500, #667085)!important;font-size:14px!important;font-weight:400!important;line-height:20px}.title-notify{color:var(--Gray-900, #101828)!important;font-size:20px!important;font-weight:500!important;line-height:30px}.alert-title{color:var(--Gray-900, #101828);font-size:14px;font-style:normal;font-weight:600;line-height:28px;text-align:left}.alt-desc{color:var(--Gray-500, #667085)!important;font-size:14px!important;font-weight:400!important;line-height:20px;width:200px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.alertscroll{max-height:300px;overflow-y:scroll}.loader .title{width:65%}.loader .link{width:85%}.loader .description{width:95%}.loader .shimmer{padding:15px;width:95%;height:120px;margin:10px auto;background:#fff}.loader .shimmer .image-card{height:90px;width:90px;float:right;border-radius:8px}.loader .stroke{height:15px;background:#777;margin-top:20px}.loader .wrapper{width:0px;animation:fullView .5s forwards linear}@keyframes fullView{to{width:100%}}.loader .animate{animation:shimmer 3s;animation-iteration-count:infinite;background:linear-gradient(to right,#e6e6e6 5%,#ccc 25%,#e6e6e6 35%);background-size:1000px 100%}@keyframes shimmer{0%{background-position:-1000px 0}to{background-position:1000px 0}}.notificationAlign{color:var(--Gray-900, #101828);text-align:center;font-size:16px;font-style:normal;font-weight:600;line-height:24px}.noNotification{color:var(--Gray-500, #667085);text-align:center;font-family:Inter;font-size:14px;font-style:normal;font-weight:400;line-height:20px}.border-value{padding:16px!important;border-radius:12px!important;border:1.095px solid var(--Gray-200, #EAECF0)!important;background:var(--White, #FFF)!important}.buttonsec{border-radius:8px;margin:0;background:var(--gray-50, white);width:100%;height:fit-content;padding:5px}.submenu{background:var(--gray-50, white)!important;color:var(--gray-500, #667085)!important;font-size:16px!important;font-weight:500!important;outline:none!important}.text-primary{color:var(--primary-700, #009BF3)!important;font-size:16px;font-weight:500}.alertdot{color:var(--Gray-500, #667085);font-size:12px;font-weight:400;line-height:18px}.remindlatertext{color:var(--Primary-700, #009BF3);font-size:16px;font-weight:600;line-height:24px;text-decoration-line:underline;text-transform:capitalize}.submit{font-size:16px;font-weight:600;line-height:24px;text-align:left;color:#fff}.alerticon{margin-bottom:35%!important}.alertbg{gap:0px;opacity:0px;border-left:7px solid var(--Primary-500, #33B5FF);border-top-left-radius:15px;border-bottom-left-radius:15px}.notificationMenu{display:block!important;z-index:105;position:fixed;inset:0 0 auto auto;margin:0;transform:translate3d(-30.2222px,72.8889px,0)}.transition{transition:5s ease-in!important;right:-450px}\n"] }]
245
248
  }], ctorParameters: () => [{ type: i1.NotificationService }, { type: i2.Router }, { type: i3.ToastService }, { type: i0.ChangeDetectorRef }], propDecorators: { appHeaderDefaulMenuDisplay: [{
246
249
  type: Input
247
250
  }], isRtl: [{
@@ -250,4 +253,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
250
253
  type: HostListener,
251
254
  args: ['document:click', ['$event']]
252
255
  }] } });
253
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmF2YmFyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3RhbmdvLWFwcC1zaGFyZWQvc3JjL2xpYi9tb2R1bGVzL2xheW91dC9oZWFkZXIvbmF2YmFyL25hdmJhci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90YW5nby1hcHAtc2hhcmVkL3NyYy9saWIvbW9kdWxlcy9sYXlvdXQvaGVhZGVyL25hdmJhci9uYXZiYXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFxQixTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBcUIsTUFBTSxlQUFlLENBQUM7QUFFckcsT0FBTyxFQUFlLE1BQU0sRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUMzQyxPQUFPLEVBQXdCLGFBQWEsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ3RFLE9BQU8sRUFBRSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBRTFDLE9BQU8sRUFBRSxPQUFPLEVBQVMsS0FBSyxFQUFFLFVBQVUsRUFBRSxPQUFPLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQzs7Ozs7OztBQUNqRixNQUFNLGVBQWUsR0FBRyxVQUFVLENBQUMsUUFBUSxFQUFFO0lBQzNDLEtBQUssQ0FBQztRQUNKLE9BQU8sRUFBRSxDQUFDO1FBQ1YsZ0NBQWdDO0tBQ2pDLENBQUM7SUFDRixPQUFPLENBQUMsWUFBWSxFQUFFLEtBQUssQ0FBQztRQUMxQixPQUFPLEVBQUUsQ0FBQztLQUNYLENBQUMsQ0FBQztDQUNKLENBQUMsQ0FBQztBQUVILE1BQU0sVUFBVSxHQUFHLFVBQVUsQ0FBQyxRQUFRLEVBQUU7SUFDdEMsS0FBSyxDQUFDO1FBQ0osT0FBTyxFQUFFLENBQUM7UUFDVixpQ0FBaUM7S0FDbEMsQ0FBQztJQUNGLE9BQU8sQ0FBQyxhQUFhLEVBQUUsS0FBSyxDQUFDO1FBQzNCLE9BQU8sRUFBRSxDQUFDO0tBQ1gsQ0FBQyxDQUFDO0NBQ0osQ0FBQyxDQUFBO0FBRUYsTUFBTSxNQUFNLEdBQUcsT0FBTyxDQUFDLFFBQVEsRUFBRTtJQUMvQixlQUFlO0NBQ2hCLENBQUMsQ0FBQztBQUVILE1BQU0sT0FBTyxHQUFHLE9BQU8sQ0FBQyxTQUFTLEVBQUU7SUFDakMsVUFBVTtDQUNYLENBQUMsQ0FBQTtBQVdGLE1BQU0sT0FBTyxlQUFlO0lBdUJOO0lBQW9DO0lBQXNCO0lBQTJCO0lBdEJoRywwQkFBMEIsQ0FBVTtJQUNwQyxLQUFLLENBQVU7SUFDUCxRQUFRLEdBQUcsSUFBSSxPQUFPLEVBQUUsQ0FBQztJQUUxQyxTQUFTLEdBQVcsY0FBYyxDQUFDO0lBQ25DLFFBQVEsR0FBVyxvSEFBb0gsQ0FBQztJQUN4SSxTQUFTLENBQVM7SUFDbEIsZUFBZSxHQUFXLDRCQUE0QixDQUFDO0lBQ3ZELFlBQVksR0FBVyxjQUFjLENBQUM7SUFDdEMsb0JBQW9CLEdBQVksS0FBSyxDQUFDO0lBQ3RDLFlBQVksR0FBTyxFQUFFLENBQUM7SUFDdEIsb0JBQW9CLEdBQU8sRUFBRSxDQUFDO0lBQzlCLFdBQVcsR0FBVSxRQUFRLENBQUM7SUFDOUIsT0FBTyxHQUFXLElBQUksQ0FBQztJQUN2QixNQUFNLEdBQVcsS0FBSyxDQUFDO0lBQ3ZCLEdBQUcsQ0FBSztJQUNSLGdCQUFnQixHQUFXLElBQUksQ0FBQztJQUNoQyxZQUFZLEdBQVcsS0FBSyxDQUFDO0lBRXJCLFlBQVksQ0FBZTtJQUNuQyx5QkFBeUIsR0FBWSxJQUFJLENBQUM7SUFFMUMsWUFBb0IsT0FBMkIsRUFBUyxNQUFhLEVBQVMsS0FBa0IsRUFBUyxFQUFvQjtRQUF6RyxZQUFPLEdBQVAsT0FBTyxDQUFvQjtRQUFTLFdBQU0sR0FBTixNQUFNLENBQU87UUFBUyxVQUFLLEdBQUwsS0FBSyxDQUFhO1FBQVMsT0FBRSxHQUFGLEVBQUUsQ0FBa0I7SUFFN0gsQ0FBQztJQUVELFdBQVc7UUFDVCxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUN6QixJQUFJLENBQUMsUUFBUSxDQUFDLFFBQVEsRUFBRSxDQUFDO0lBQzNCLENBQUM7SUFFRCxRQUFRO1FBQ04sSUFBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLEtBQUssWUFBWSxhQUFhLENBQUMsRUFBQyxTQUFTLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDLEdBQUcsRUFBRTtZQUMvRyxJQUFJLENBQUMsb0JBQW9CLEVBQUUsQ0FBQztRQUM5QixDQUFDLENBQUMsQ0FBQztRQUNILElBQUksQ0FBQyxvQkFBb0IsRUFBRSxDQUFDO0lBRTlCLENBQUM7SUFFRCxvQkFBb0I7UUFDbEIsSUFBSSxHQUFHLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBQ3JDLElBQUcsR0FBRyxDQUFDLFFBQVEsQ0FBQyxlQUFlLENBQUMsRUFBRTtZQUNoQyxJQUFJLENBQUMsZ0JBQWdCLEdBQUcsS0FBSyxDQUFDO1NBQy9CO2FBQ0k7WUFDSCxJQUFJLENBQUMsZ0JBQWdCLEdBQUcsSUFBSSxDQUFDO1NBQzlCO1FBQ0QsSUFBSSxDQUFDLGdCQUFnQixFQUFFLENBQUM7SUFDMUIsQ0FBQztJQUVELGtCQUFrQjtRQUNoQixJQUFJLENBQUMseUJBQXlCLEdBQUcsQ0FBQyxJQUFJLENBQUMseUJBQXlCLENBQUM7SUFDbkUsQ0FBQztJQUNELGNBQWMsQ0FBQyxLQUFVO1FBQ3ZCLElBQUksQ0FBQyxXQUFXLEdBQUcsS0FBSyxDQUFDO0lBQzNCLENBQUM7SUFFRCxnQkFBZ0I7UUFDZCxJQUFJLENBQUMsb0JBQW9CLEdBQUcsRUFBRSxDQUFDO1FBQy9CLElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDO1FBQ3BCLElBQUksSUFBSSxHQUFHO1lBQ1QsS0FBSyxFQUFFLEVBQUU7WUFDVCxNQUFNLEVBQUUsQ0FBQztTQUNWLENBQUM7UUFDRixJQUFJLENBQUMsT0FBTyxDQUFDLGdCQUFnQixDQUFDLElBQUksQ0FBQzthQUNoQyxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQzthQUM5QixTQUFTLENBQUM7WUFDVCxJQUFJLEVBQUUsQ0FBQyxHQUFRLEVBQUUsRUFBRTtnQkFDakIsSUFBSSxHQUFHLElBQUksR0FBRyxDQUFDLElBQUksSUFBSSxHQUFHLEVBQUU7b0JBQzFCLElBQUksQ0FBQyxPQUFPLEdBQUcsS0FBSyxDQUFDO29CQUNyQixJQUFJLENBQUMsTUFBTSxHQUFHLEtBQUssQ0FBQztvQkFDcEIsSUFBSSxDQUFDLFlBQVksR0FBRyxHQUFHLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQyxFQUFDLENBQUMsQ0FBQyxDQUFDO29CQUMvQyxJQUFJLENBQUMsb0JBQW9CLEdBQUcsR0FBRyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUMsSUFBUSxFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLG9CQUFvQixDQUFDLENBQUM7b0JBQ3BHLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxPQUFPLENBQUMsQ0FBQyxJQUFTLEVBQUUsRUFBRTt3QkFDOUMsSUFBSSxDQUFDLE1BQU0sR0FBRyxJQUFJLENBQUM7d0JBQ25CLFVBQVUsQ0FBQyxHQUFHLEVBQUU7NEJBQ2QsSUFBSSxDQUFDLE1BQU0sR0FBRyxLQUFLLENBQUM7NEJBQ3BCLElBQUksQ0FBQyxPQUFPLENBQUMsc0JBQXNCLENBQUMsSUFBSSxDQUFDLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUUsQ0FBQyxHQUFRLEVBQUUsRUFBRTs0QkFDakcsQ0FBQyxDQUFDLENBQUE7NEJBQ0Ysd0NBQXdDO3dCQUMxQyxDQUFDLEVBQUUsSUFBSSxDQUFDLENBQUM7b0JBQ1gsQ0FBQyxDQUFDLENBQUM7aUJBRUo7cUJBQU07b0JBQ0wsSUFBSSxDQUFDLFlBQVksR0FBRyxFQUFFLENBQUM7b0JBQ3ZCLElBQUksQ0FBQyxPQUFPLEdBQUcsS0FBSyxDQUFDO29CQUNyQixJQUFJLENBQUMsTUFBTSxHQUFHLElBQUksQ0FBQztpQkFDcEI7WUFDSCxDQUFDO1lBQ0QsS0FBSyxFQUFFLENBQUMsR0FBRyxFQUFFLEVBQUU7Z0JBQ2IsSUFBSSxDQUFDLFlBQVksR0FBRyxFQUFFLENBQUM7Z0JBQ3ZCLElBQUksQ0FBQyxPQUFPLEdBQUcsS0FBSyxDQUFDO2dCQUNyQixJQUFJLENBQUMsTUFBTSxHQUFHLElBQUksQ0FBQztZQUNyQixDQUFDO1NBQ0YsQ0FBQyxDQUFDO0lBQ1AsQ0FBQztJQUVBLHNCQUFzQixDQUFDLElBQVMsRUFBQyxVQUFjO1FBQzlDLElBQUksQ0FBQyxPQUFPLENBQUMsc0JBQXNCLENBQUMsSUFBSSxDQUFDLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUMsQ0FBQyxHQUFRLEVBQUUsRUFBRTtZQUM5RixJQUFJLEdBQUcsSUFBSSxHQUFHLENBQUMsSUFBSSxJQUFJLEdBQUcsRUFBRTtnQkFDMUIsSUFBRyxVQUFVLElBQUksVUFBVSxFQUFFLGNBQWMsSUFBSSxFQUFFLElBQUksVUFBVSxFQUFFLGNBQWMsQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUMsTUFBTSxHQUFHLENBQUMsRUFBRTtvQkFDckcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxhQUFhLENBQUMsVUFBVSxDQUFDLGNBQWMsQ0FBQyxDQUFDO2lCQUN0RDtnQkFDRCxJQUFHLFVBQVUsSUFBSSxVQUFVLEVBQUUsY0FBYyxJQUFJLFFBQVEsRUFBRTtvQkFDdkQsSUFBSSxDQUFDLE9BQU8sQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDLEdBQUcsRUFBRSxHQUFFLENBQUMsQ0FBQyxDQUFBO2lCQUV2RjtnQkFDRCxJQUFHLFVBQVUsSUFBSSxVQUFVLEVBQUUsY0FBYyxJQUFJLGVBQWUsRUFBRTtvQkFDOUQsSUFBSSxNQUFNLEdBQUc7d0JBQ1gsRUFBRSxFQUFDLFVBQVUsQ0FBQyxFQUFFO3dCQUNoQixJQUFJLEVBQUMsU0FBUztxQkFDZixDQUFBO29CQUNELElBQUksQ0FBQyxPQUFPLENBQUMsYUFBYSxDQUFDLE1BQU0sQ0FBQyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDLENBQUMsR0FBTyxFQUFFLEVBQUUsR0FBRSxDQUFDLENBQUMsQ0FBQTtpQkFDN0Y7Z0JBQ0QsSUFBRyxVQUFVLElBQUksVUFBVSxFQUFFLGNBQWMsSUFBSSxZQUFZLEVBQUU7b0JBQzNELElBQUksTUFBTSxHQUFHO3dCQUNYLFFBQVEsRUFBRSxVQUFVLEVBQUUsUUFBUTt3QkFDOUIsUUFBUSxFQUFFOzRCQUNOO2dDQUNJLElBQUksRUFBRSxVQUFVLENBQUMsT0FBTztnQ0FDeEIsV0FBVyxFQUFFLFVBQVUsQ0FBQyxJQUFJO2dDQUM1QixJQUFJLEVBQUUsY0FBYztnQ0FDcEIsT0FBTyxFQUFFLEtBQUs7NkJBQ2pCO3lCQUNKO3FCQUNGLENBQUE7b0JBQ0QsSUFBSSxDQUFDLE9BQU8sQ0FBQyxrQkFBa0IsQ0FBQyxNQUFNLENBQUMsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxDQUFDLEdBQU8sRUFBRSxFQUFFLEdBQUUsQ0FBQyxDQUFDLENBQUE7aUJBQ2xHO2dCQUNELElBQUksQ0FBQyxFQUFFLENBQUMsYUFBYSxFQUFFLENBQUM7Z0JBQ3hCLFVBQVUsQ0FBQyxHQUFHLEVBQUU7b0JBQ2QsSUFBRyxVQUFVLEVBQUU7d0JBQ2IsSUFBRyxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsRUFBQzs0QkFDeEIsSUFBSSxDQUFDLE9BQU8sQ0FBQyxhQUFhLEVBQUUsQ0FBQzt5QkFDOUI7d0JBQ0QsSUFBSSxDQUFDLE9BQU8sQ0FBQyxrQkFBa0IsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxTQUFTLEVBQUUsQ0FBQTtxQkFDckY7b0JBQ0QsSUFBSSxDQUFDLGdCQUFnQixFQUFFLENBQUM7Z0JBQzFCLENBQUMsRUFBQyxJQUFJLENBQUMsQ0FBQzthQUNUO1FBQ0gsQ0FBQyxDQUFDLENBQUE7SUFDSixDQUFDO0lBRUQsa0JBQWtCLENBQUMsSUFBUyxFQUFFLFVBQWU7UUFDM0MsSUFBSSxDQUFDLE9BQU8sR0FBRyxJQUFJLENBQUM7UUFDcEIsSUFBSSxDQUFDLE9BQU8sQ0FBQyxrQkFBa0IsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUMsQ0FBQyxHQUFRLEVBQUUsRUFBRTtZQUM5RixJQUFJLEdBQUcsSUFBSSxHQUFHLENBQUMsSUFBSSxJQUFJLEdBQUcsRUFBRTtnQkFDMUIsSUFBRyxDQUFDLFVBQVUsSUFBSSxVQUFVLEVBQUUsY0FBYyxJQUFJLFlBQVk7b0JBQzFELElBQUksQ0FBQyxLQUFLLENBQUMsZUFBZSxDQUFDLEdBQUcsQ0FBQyxPQUFPLENBQUMsQ0FBQztnQkFDMUMsVUFBVSxDQUFDLEdBQUcsRUFBRTtvQkFDZCxJQUFJLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQztnQkFDMUIsQ0FBQyxFQUFDLElBQUksQ0FBQyxDQUFDO2dCQUNSLElBQUcsVUFBVSxJQUFJLFVBQVUsRUFBRSxjQUFjLElBQUksRUFBRSxJQUFJLENBQUMsQ0FBQyxRQUFRLEVBQUMsWUFBWSxDQUFDLENBQUMsUUFBUSxDQUFDLFVBQVUsRUFBRSxjQUFjLENBQUMsRUFBRTtvQkFDbEgsSUFBSSxDQUFDLE1BQU0sQ0FBQyxhQUFhLENBQUMsVUFBVSxDQUFDLGNBQWMsQ0FBQyxDQUFDO2lCQUN0RDtnQkFDRCxJQUFHLFVBQVUsSUFBSSxVQUFVLEVBQUUsY0FBYyxJQUFJLFFBQVEsRUFBRTtvQkFDdkQsSUFBSSxDQUFDLE9BQU8sQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDLEdBQUcsRUFBRSxHQUFFLENBQUMsQ0FBQyxDQUFBO2lCQUN2RjtnQkFDRCxJQUFHLFVBQVUsSUFBSSxVQUFVLEVBQUUsY0FBYyxJQUFJLGVBQWUsRUFBRTtvQkFDOUQsSUFBSSxNQUFNLEdBQUc7d0JBQ1gsRUFBRSxFQUFDLFVBQVUsQ0FBQyxFQUFFO3dCQUNoQixJQUFJLEVBQUMsU0FBUztxQkFDZixDQUFBO29CQUNELElBQUksQ0FBQyxPQUFPLENBQUMsYUFBYSxDQUFDLE1BQU0sQ0FBQyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDLEdBQUcsRUFBRSxHQUFFLENBQUMsQ0FBQyxDQUFBO2lCQUN0RjtnQkFDRCxJQUFHLFVBQVUsSUFBSSxVQUFVLEVBQUUsY0FBYyxJQUFJLFlBQVksRUFBRTtvQkFDM0QsSUFBSSxNQUFNLEdBQUc7d0JBQ1gsUUFBUSxFQUFFLFVBQVUsRUFBRSxRQUFRO3dCQUM5QixRQUFRLEVBQUU7NEJBQ047Z0NBQ0ksSUFBSSxFQUFFLFVBQVUsQ0FBQyxPQUFPO2dDQUN4QixXQUFXLEVBQUUsVUFBVSxDQUFDLElBQUk7Z0NBQzVCLElBQUksRUFBRSxjQUFjO2dDQUNwQixPQUFPLEVBQUUsS0FBSzs2QkFDakI7eUJBQ0o7cUJBQ0YsQ0FBQTtvQkFDRCxJQUFJLENBQUMsT0FBTyxDQUFDLGtCQUFrQixDQUFDLE1BQU0sQ0FBQyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDLENBQUMsR0FBTyxFQUFFLEVBQUU7d0JBQzNGLElBQUcsR0FBRyxJQUFJLEdBQUcsQ0FBQyxJQUFJLElBQUksR0FBRyxFQUFFOzRCQUN6QixJQUFJLENBQUMsS0FBSyxDQUFDLGVBQWUsQ0FBQyxpQ0FBaUMsQ0FBQyxDQUFDO3lCQUMvRDtvQkFDSCxDQUFDLENBQUMsQ0FBQTtpQkFDSDtnQkFDRCxJQUFJLENBQUMsRUFBRSxDQUFDLGFBQWEsRUFBRSxDQUFDO2FBQ3pCO1FBQ0gsQ0FBQyxFQUFDLENBQUMsS0FBUyxFQUFFLEVBQUU7WUFDZCxJQUFJLENBQUMsT0FBTyxHQUFHLEtBQUssQ0FBQztZQUNyQixJQUFJLENBQUMsTUFBTSxHQUFHLElBQUksQ0FBQztRQUNyQixDQUFDLENBQUMsQ0FBQTtJQUNKLENBQUM7SUFFRCxrQkFBa0I7UUFDaEIsSUFBSSxDQUFDLE9BQU8sQ0FBQywwQkFBMEIsQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUNoRCxDQUFDO0lBRUQsT0FBTyxDQUFDLElBQVE7UUFDZCxJQUFJLENBQUMsTUFBTSxDQUFDLGFBQWEsQ0FBQyx1QkFBdUIsQ0FBQyxDQUFBO0lBQ3BELENBQUM7SUFHRCxPQUFPLENBQUUsS0FBaUI7UUFDeEIsTUFBTSxNQUFNLEdBQUcsS0FBSyxDQUFDLE1BQXFCLENBQUM7UUFDM0MsSUFBRyxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsYUFBYSxDQUFDLEVBQUU7WUFDakMsSUFBSSxDQUFDLFlBQVksR0FBRyxLQUFLLENBQUM7U0FDM0I7SUFDSCxDQUFDO3dHQTdNVSxlQUFlOzRGQUFmLGVBQWUsc01DNUM1Qiw4a1RBaUpBLGtwSEQzR2M7WUFDVixNQUFNO1lBQ04sT0FBTztTQUVSOzs0RkFFVSxlQUFlO2tCQVYzQixTQUFTOytCQUNFLFlBQVksY0FHVjt3QkFDVixNQUFNO3dCQUNOLE9BQU87cUJBRVI7d0tBR1EsMEJBQTBCO3NCQUFsQyxLQUFLO2dCQUNHLEtBQUs7c0JBQWIsS0FBSztnQkFzTU4sT0FBTztzQkFETixZQUFZO3VCQUFDLGdCQUFnQixFQUFFLENBQUMsUUFBUSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0b3JSZWYsIENvbXBvbmVudCwgSG9zdExpc3RlbmVyLCBJbnB1dCwgT25EZXN0cm95LCBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgTm90aWZpY2F0aW9uU2VydmljZSB9IGZyb20gJy4uLy4uLy4uLy4uL3NlcnZpY2VzL25vdGlmaWNhdGlvbi5zZXJ2aWNlJztcclxuaW1wb3J0IHsgU3Vic2NyaXB0aW9uLGZpbHRlciB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgeyBSb3V0ZXIsQWN0aXZhdGVkUm91dGUsTmF2aWdhdGlvbkVuZCB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XHJcbmltcG9ydCB7IFN1YmplY3QsIHRha2VVbnRpbCB9IGZyb20gXCJyeGpzXCI7XHJcbmltcG9ydCB7IFRvYXN0U2VydmljZSB9IGZyb20gJy4uLy4uLy4uLy4uL3NlcnZpY2VzL3RvYXN0LnNlcnZpY2UnO1xyXG5pbXBvcnQgeyB0cmlnZ2VyLCBzdGF0ZSwgc3R5bGUsIHRyYW5zaXRpb24sIGFuaW1hdGUgfSBmcm9tICdAYW5ndWxhci9hbmltYXRpb25zJztcclxuY29uc3QgZW50ZXJUcmFuc2l0aW9uID0gdHJhbnNpdGlvbignOmVudGVyJywgW1xyXG4gIHN0eWxlKHtcclxuICAgIG9wYWNpdHk6IDAsXHJcbiAgICAvLyB0cmFuc2Zvcm06ICd0cmFuc2xhdGVYKDUwcHgpJ1xyXG4gIH0pLFxyXG4gIGFuaW1hdGUoJzFzIGVhc2UtaW4nLCBzdHlsZSh7XHJcbiAgICBvcGFjaXR5OiAxXHJcbiAgfSkpXHJcbl0pO1xyXG4gXHJcbmNvbnN0IGxlYXZlVHJhbnMgPSB0cmFuc2l0aW9uKCc6bGVhdmUnLCBbXHJcbiAgc3R5bGUoe1xyXG4gICAgb3BhY2l0eTogMSxcclxuICAgIC8vIHRyYW5zZm9ybTogJ3RyYW5zbGF0ZVgoLTUwcHgpJ1xyXG4gIH0pLFxyXG4gIGFuaW1hdGUoJzFzIGVhc2Utb3V0Jywgc3R5bGUoe1xyXG4gICAgb3BhY2l0eTogMCxcclxuICB9KSlcclxuXSlcclxuIFxyXG5jb25zdCBmYWRlSW4gPSB0cmlnZ2VyKCdmYWRlSW4nLCBbXHJcbiAgZW50ZXJUcmFuc2l0aW9uXHJcbl0pO1xyXG4gXHJcbmNvbnN0IGZhZGVPdXQgPSB0cmlnZ2VyKCdmYWRlT3V0JywgW1xyXG4gIGxlYXZlVHJhbnNcclxuXSlcclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdsaWItbmF2YmFyJyxcclxuICB0ZW1wbGF0ZVVybDogJy4vbmF2YmFyLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi9uYXZiYXIuY29tcG9uZW50LnNjc3MnXSxcclxuICBhbmltYXRpb25zOiBbXHJcbiAgICBmYWRlSW4sXHJcbiAgICBmYWRlT3V0XHJcblxyXG4gIF1cclxufSlcclxuZXhwb3J0IGNsYXNzIE5hdmJhckNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCxPbkRlc3Ryb3kge1xyXG4gIEBJbnB1dCgpIGFwcEhlYWRlckRlZmF1bE1lbnVEaXNwbGF5OiBib29sZWFuO1xyXG4gIEBJbnB1dCgpIGlzUnRsOiBib29sZWFuO1xyXG4gIHByaXZhdGUgcmVhZG9ubHkgZGVzdHJveSQgPSBuZXcgU3ViamVjdCgpO1xyXG5cclxuICBpdGVtQ2xhc3M6IHN0cmluZyA9ICdtcy0xIG1zLWxnLTMnO1xyXG4gIGJ0bkNsYXNzOiBzdHJpbmcgPSAnYnRuIGJ0bi1pY29uIGJ0bi1jdXN0b20gYnRuLWljb24tbXV0ZWQgYnRuLWFjdGl2ZS1saWdodCBidG4tYWN0aXZlLWNvbG9yLXByaW1hcnkgdy0zNXB4IGgtMzVweCB3LW1kLTQwcHggaC1tZC00MHB4JztcclxuICBidG5DbGFzczE6IHN0cmluZztcclxuICB1c2VyQXZhdGFyQ2xhc3M6IHN0cmluZyA9ICdzeW1ib2wtMzVweCBzeW1ib2wtbWQtNDBweCc7XHJcbiAgYnRuSWNvbkNsYXNzOiBzdHJpbmcgPSAnZnMtMiBmcy1tZC0xJztcclxuICBub3RpZmljYXRpb25SZWNlaXZlZDogYm9vbGVhbiA9IGZhbHNlO1xyXG4gIG5vdGlmaWNhdGlvbjphbnkgPSBbXTtcclxuICBwdXNoTm90aWZpY2F0aW9uTGlzdDphbnkgPSBbXTtcclxuICBhY3RpdmVUYWJJZDpzdHJpbmcgPSAnYWxlcnRzJztcclxuICBsb2FkaW5nOmJvb2xlYW4gPSB0cnVlO1xyXG4gIG5vRGF0YTpib29sZWFuID0gZmFsc2U7XHJcbiAgdXJsOmFueTtcclxuICBzaG93Tm90aWZpY2F0aW9uOmJvb2xlYW4gPSB0cnVlO1xyXG4gIHNob3dEcm9wZG93bjpib29sZWFuID0gZmFsc2U7XHJcblxyXG4gIHByaXZhdGUgc3Vic2NyaXB0aW9uOiBTdWJzY3JpcHRpb247XHJcbiAgbm90aWZpY2F0aW9uRHJvcERvd25DbGFzczogYm9vbGVhbiA9IHRydWU7XHJcblxyXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgc2VydmljZTpOb3RpZmljYXRpb25TZXJ2aWNlLHByaXZhdGUgcm91dGVyOlJvdXRlcixwcml2YXRlIHRvYXN0OlRvYXN0U2VydmljZSxwcml2YXRlIGNkOkNoYW5nZURldGVjdG9yUmVmKSB7XHJcbiAgICBcclxuICB9XHJcbiAgXHJcbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XHJcbiAgICB0aGlzLmRlc3Ryb3kkLm5leHQodHJ1ZSk7XHJcbiAgICB0aGlzLmRlc3Ryb3kkLmNvbXBsZXRlKCk7XHJcbiAgfVxyXG5cclxuICBuZ09uSW5pdCgpOiB2b2lkIHtcclxuICAgIHRoaXMucm91dGVyLmV2ZW50cy5waXBlKGZpbHRlcihldmVudCA9PiBldmVudCBpbnN0YW5jZW9mIE5hdmlnYXRpb25FbmQpLHRha2VVbnRpbCh0aGlzLmRlc3Ryb3kkKSkuc3Vic2NyaWJlKCgpID0+IHtcclxuICAgICAgdGhpcy5zaG93Tm90aWZpY2F0aW9uSWNvbigpO1xyXG4gICAgfSk7XHJcbiAgICB0aGlzLnNob3dOb3RpZmljYXRpb25JY29uKCk7XHJcbiAgIFxyXG4gIH1cclxuIFxyXG4gIHNob3dOb3RpZmljYXRpb25JY29uICgpIHtcclxuICAgIGxldCB1cmwgPSB0aGlzLnJvdXRlci51cmwuc3BsaXQoJy8nKTtcclxuICAgIGlmKHVybC5pbmNsdWRlcygnbm90aWZpY2F0aW9ucycpKSB7XHJcbiAgICAgIHRoaXMuc2hvd05vdGlmaWNhdGlvbiA9IGZhbHNlO1xyXG4gICAgfVxyXG4gICAgZWxzZSB7XHJcbiAgICAgIHRoaXMuc2hvd05vdGlmaWNhdGlvbiA9IHRydWU7XHJcbiAgICB9XHJcbiAgICB0aGlzLm5vdGlmaWNhdGlvbkxpc3QoKTtcclxuICB9XHJcblxyXG4gIHRvZ2dsZVVzZXJEcm9wRG93bigpIHtcclxuICAgIHRoaXMubm90aWZpY2F0aW9uRHJvcERvd25DbGFzcyA9ICF0aGlzLm5vdGlmaWNhdGlvbkRyb3BEb3duQ2xhc3M7XHJcbiAgfVxyXG4gIHNldEFjdGl2ZVRhYklkKHRhYklkOiBhbnkpIHtcclxuICAgIHRoaXMuYWN0aXZlVGFiSWQgPSB0YWJJZDtcclxuICB9XHJcblxyXG4gIG5vdGlmaWNhdGlvbkxpc3QoKSB7XHJcbiAgICB0aGlzLnB1c2hOb3RpZmljYXRpb25MaXN0ID0gW107IFxyXG4gICAgdGhpcy5sb2FkaW5nID0gdHJ1ZTtcclxuICAgIGxldCBkYXRhID0ge1xyXG4gICAgICBsaW1pdDogMTAsXHJcbiAgICAgIG9mZnNldDogMVxyXG4gICAgfTtcclxuICAgIHRoaXMuc2VydmljZS5ub3RpZmljYXRpb25MaXN0KGRhdGEpXHJcbiAgICAgIC5waXBlKHRha2VVbnRpbCh0aGlzLmRlc3Ryb3kkKSlcclxuICAgICAgLnN1YnNjcmliZSh7XHJcbiAgICAgICAgbmV4dDogKHJlczogYW55KSA9PiB7XHJcbiAgICAgICAgICBpZiAocmVzICYmIHJlcy5jb2RlID09IDIwMCkge1xyXG4gICAgICAgICAgICB0aGlzLmxvYWRpbmcgPSBmYWxzZTtcclxuICAgICAgICAgICAgdGhpcy5ub0RhdGEgPSBmYWxzZTtcclxuICAgICAgICAgICAgdGhpcy5ub3RpZmljYXRpb24gPSByZXMuZGF0YS5yZXN1bHQuc2xpY2UoMCw1KTtcclxuICAgICAgICAgICAgdGhpcy5wdXNoTm90aWZpY2F0aW9uTGlzdCA9IHJlcy5kYXRhLnJlc3VsdC5maWx0ZXIoKGl0ZW06YW55KSA9PiBpdGVtLl9zb3VyY2Uuc2hvd1B1c2hOb3RpZmljYXRpb24pO1xyXG4gICAgICAgICAgICB0aGlzLnB1c2hOb3RpZmljYXRpb25MaXN0LmZvckVhY2goKGl0ZW06IGFueSkgPT4ge1xyXG4gICAgICAgICAgICAgIGl0ZW0uX3Njb3JlID0gdHJ1ZTtcclxuICAgICAgICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHtcclxuICAgICAgICAgICAgICAgIGl0ZW0uX3Njb3JlID0gZmFsc2U7XHJcbiAgICAgICAgICAgICAgICB0aGlzLnNlcnZpY2Uubm90aWZpY2F0aW9uUHVzaFVwZGF0ZShpdGVtKS5waXBlKHRha2VVbnRpbCh0aGlzLmRlc3Ryb3kkKSkuc3Vic2NyaWJlICgocmVzOiBhbnkpID0+IHtcclxuICAgICAgICAgICAgICAgIH0pXHJcbiAgICAgICAgICAgICAgICAvLyB0aGlzLm5vdGlmaWNhdGlvblB1c2hVcGRhdGUoaXRlbSwnJyk7XHJcbiAgICAgICAgICAgICAgfSwgNjAwMCk7XHJcbiAgICAgICAgICAgIH0pO1xyXG4gICAgICAgICAgICBcclxuICAgICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgIHRoaXMubm90aWZpY2F0aW9uID0gW107IFxyXG4gICAgICAgICAgICB0aGlzLmxvYWRpbmcgPSBmYWxzZTtcclxuICAgICAgICAgICAgdGhpcy5ub0RhdGEgPSB0cnVlO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH0sXHJcbiAgICAgICAgZXJyb3I6IChlcnIpID0+IHtcclxuICAgICAgICAgIHRoaXMubm90aWZpY2F0aW9uID0gW107IFxyXG4gICAgICAgICAgdGhpcy5sb2FkaW5nID0gZmFsc2U7XHJcbiAgICAgICAgICB0aGlzLm5vRGF0YSA9IHRydWU7XHJcbiAgICAgICAgfVxyXG4gICAgICB9KTtcclxuICB9XHJcblxyXG4gICBub3RpZmljYXRpb25QdXNoVXBkYXRlKGRhdGE6IGFueSxidG5EZXRhaWxzOmFueSk6IHZvaWQge1xyXG4gICAgdGhpcy5zZXJ2aWNlLm5vdGlmaWNhdGlvblB1c2hVcGRhdGUoZGF0YSkucGlwZSh0YWtlVW50aWwodGhpcy5kZXN0cm95JCkpLnN1YnNjcmliZSgocmVzOiBhbnkpID0+IHtcclxuICAgICAgaWYgKHJlcyAmJiByZXMuY29kZSA9PSAyMDApIHtcclxuICAgICAgICBpZihidG5EZXRhaWxzICYmIGJ0bkRldGFpbHM/LnJlZGlyZWN0aW9uVXJsICE9ICcnICYmIGJ0bkRldGFpbHM/LnJlZGlyZWN0aW9uVXJsLnNwbGl0KCcvJykubGVuZ3RoID4gMSkge1xyXG4gICAgICAgICAgdGhpcy5yb3V0ZXIubmF2aWdhdGVCeVVybChidG5EZXRhaWxzLnJlZGlyZWN0aW9uVXJsKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgaWYoYnRuRGV0YWlscyAmJiBidG5EZXRhaWxzPy5yZWRpcmVjdGlvblVybCA9PSAncmVtaW5kJykge1xyXG4gICAgICAgICAgdGhpcy5zZXJ2aWNlLnVwZGF0ZVJlbWluZChkYXRhLl9pZCkucGlwZSh0YWtlVW50aWwodGhpcy5kZXN0cm95JCkpLnN1YnNjcmliZSgoKSA9PiB7fSlcclxuICAgICAgICAgIFxyXG4gICAgICAgIH1cclxuICAgICAgICBpZihidG5EZXRhaWxzICYmIGJ0bkRldGFpbHM/LnJlZGlyZWN0aW9uVXJsID09ICd0cmlhbEFwcHJvdmVkJykge1xyXG4gICAgICAgICAgbGV0IHBhcmFtcyA9IHtcclxuICAgICAgICAgICAgaWQ6YnRuRGV0YWlscy5pZCxcclxuICAgICAgICAgICAgdHlwZTonYXBwcm92ZSdcclxuICAgICAgICAgIH1cclxuICAgICAgICAgIHRoaXMuc2VydmljZS50cmlhbEFwcHJvdmVkKHBhcmFtcykucGlwZSh0YWtlVW50aWwodGhpcy5kZXN0cm95JCkpLnN1YnNjcmliZSgocmVzOmFueSkgPT4ge30pXHJcbiAgICAgICAgfVxyXG4gICAgICAgIGlmKGJ0bkRldGFpbHMgJiYgYnRuRGV0YWlscz8ucmVkaXJlY3Rpb25VcmwgPT0gJ3N1YnNjcmliZWQnKSB7XHJcbiAgICAgICAgICBsZXQgcGFyYW1zID0ge1xyXG4gICAgICAgICAgICBjbGllbnRJZDogYnRuRGV0YWlscz8uY2xpZW50SWQsXHJcbiAgICAgICAgICAgIHByb2R1Y3RzOiBbXHJcbiAgICAgICAgICAgICAgICB7XHJcbiAgICAgICAgICAgICAgICAgICAgbmFtZTogYnRuRGV0YWlscy5wcm9kdWN0LFxyXG4gICAgICAgICAgICAgICAgICAgIHByb2R1Y3ROYW1lOiBidG5EZXRhaWxzLm5hbWUsXHJcbiAgICAgICAgICAgICAgICAgICAgdHlwZTogXCJzdWJzY3JpcHRpb25cIixcclxuICAgICAgICAgICAgICAgICAgICBjb250ZW50OiBcIm5ld1wiXHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIF1cclxuICAgICAgICAgIH1cclxuICAgICAgICAgIHRoaXMuc2VydmljZS51cGRhdGVTdWJzY3JpcHRpb24ocGFyYW1zKS5waXBlKHRha2VVbnRpbCh0aGlzLmRlc3Ryb3kkKSkuc3Vic2NyaWJlKChyZXM6YW55KSA9PiB7fSlcclxuICAgICAgICB9XHJcbiAgICAgICAgdGhpcy5jZC5kZXRlY3RDaGFuZ2VzKCk7XHJcbiAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgICAgICBpZihidG5EZXRhaWxzKSB7XHJcbiAgICAgICAgICAgIGlmKCF0aGlzLnNob3dOb3RpZmljYXRpb24pe1xyXG4gICAgICAgICAgICAgIHRoaXMuc2VydmljZS50cmlnZ2VyUmVsb2FkKCk7XHJcbiAgICAgICAgICAgIH0gXHJcbiAgICAgICAgICAgIHRoaXMuc2VydmljZS5ub3RpZmljYXRpb25VcGRhdGUoZGF0YS5faWQpLnBpcGUodGFrZVVudGlsKHRoaXMuZGVzdHJveSQpKS5zdWJzY3JpYmUoKVxyXG4gICAgICAgICAgfVxyXG4gICAgICAgICAgdGhpcy5ub3RpZmljYXRpb25MaXN0KCk7XHJcbiAgICAgICAgfSwxMDAwKTtcclxuICAgICAgfVxyXG4gICAgfSlcclxuICB9XHJcblxyXG4gIHVwZGF0ZU5vdGlmaWNhdGlvbihkYXRhOiBhbnksIGJ0bkRldGFpbHM6IGFueSk6IHZvaWQge1xyXG4gICAgdGhpcy5sb2FkaW5nID0gdHJ1ZTtcclxuICAgIHRoaXMuc2VydmljZS5ub3RpZmljYXRpb25VcGRhdGUoZGF0YS5faWQpLnBpcGUodGFrZVVudGlsKHRoaXMuZGVzdHJveSQpKS5zdWJzY3JpYmUoKHJlczogYW55KSA9PiB7XHJcbiAgICAgIGlmIChyZXMgJiYgcmVzLmNvZGUgPT0gMjAwKSB7XHJcbiAgICAgICAgaWYoIWJ0bkRldGFpbHMgfHwgYnRuRGV0YWlscz8ucmVkaXJlY3Rpb25VcmwgIT0gJ3N1YnNjcmliZWQnKVxyXG4gICAgICAgICAgdGhpcy50b2FzdC5nZXRTdWNjZXNzVG9hc3QocmVzLm1lc3NhZ2UpO1xyXG4gICAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xyXG4gICAgICAgICAgdGhpcy5ub3RpZmljYXRpb25MaXN0KCk7XHJcbiAgICAgICAgfSwxMDAwKTtcclxuICAgICAgICBpZihidG5EZXRhaWxzICYmIGJ0bkRldGFpbHM/LnJlZGlyZWN0aW9uVXJsICE9ICcnICYmICFbJ3JlbWluZCcsJ3N1YnNjcmliZWQnXS5pbmNsdWRlcyhidG5EZXRhaWxzPy5yZWRpcmVjdGlvblVybCkpIHtcclxuICAgICAgICAgIHRoaXMucm91dGVyLm5hdmlnYXRlQnlVcmwoYnRuRGV0YWlscy5yZWRpcmVjdGlvblVybCk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGlmKGJ0bkRldGFpbHMgJiYgYnRuRGV0YWlscz8ucmVkaXJlY3Rpb25VcmwgPT0gJ3JlbWluZCcpIHtcclxuICAgICAgICAgIHRoaXMuc2VydmljZS51cGRhdGVSZW1pbmQoZGF0YS5faWQpLnBpcGUodGFrZVVudGlsKHRoaXMuZGVzdHJveSQpKS5zdWJzY3JpYmUoKCkgPT4ge30pXHJcbiAgICAgICAgfVxyXG4gICAgICAgIGlmKGJ0bkRldGFpbHMgJiYgYnRuRGV0YWlscz8ucmVkaXJlY3Rpb25VcmwgPT0gJ3RyaWFsQXBwcm92ZWQnKSB7XHJcbiAgICAgICAgICBsZXQgcGFyYW1zID0ge1xyXG4gICAgICAgICAgICBpZDpidG5EZXRhaWxzLmlkLFxyXG4gICAgICAgICAgICB0eXBlOidhcHByb3ZlJ1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgICAgdGhpcy5zZXJ2aWNlLnRyaWFsQXBwcm92ZWQocGFyYW1zKS5waXBlKHRha2VVbnRpbCh0aGlzLmRlc3Ryb3kkKSkuc3Vic2NyaWJlKCgpID0+IHt9KVxyXG4gICAgICAgIH1cclxuICAgICAgICBpZihidG5EZXRhaWxzICYmIGJ0bkRldGFpbHM/LnJlZGlyZWN0aW9uVXJsID09ICdzdWJzY3JpYmVkJykge1xyXG4gICAgICAgICAgbGV0IHBhcmFtcyA9IHtcclxuICAgICAgICAgICAgY2xpZW50SWQ6IGJ0bkRldGFpbHM/LmNsaWVudElkLFxyXG4gICAgICAgICAgICBwcm9kdWN0czogW1xyXG4gICAgICAgICAgICAgICAge1xyXG4gICAgICAgICAgICAgICAgICAgIG5hbWU6IGJ0bkRldGFpbHMucHJvZHVjdCxcclxuICAgICAgICAgICAgICAgICAgICBwcm9kdWN0TmFtZTogYnRuRGV0YWlscy5uYW1lLFxyXG4gICAgICAgICAgICAgICAgICAgIHR5cGU6IFwic3Vic2NyaXB0aW9uXCIsXHJcbiAgICAgICAgICAgICAgICAgICAgY29udGVudDogXCJuZXdcIlxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBdXHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgICB0aGlzLnNlcnZpY2UudXBkYXRlU3Vic2NyaXB0aW9uKHBhcmFtcykucGlwZSh0YWtlVW50aWwodGhpcy5kZXN0cm95JCkpLnN1YnNjcmliZSgocmVzOmFueSkgPT4ge1xyXG4gICAgICAgICAgICBpZihyZXMgJiYgcmVzLmNvZGUgPT0gMjAwKSB7XHJcbiAgICAgICAgICAgICAgdGhpcy50b2FzdC5nZXRTdWNjZXNzVG9hc3QoJ1Byb2R1Y3QgU3Vic2NyaWJlZCBTdWNjZXNzZnVsbHknKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfSlcclxuICAgICAgICB9XHJcbiAgICAgICAgdGhpcy5jZC5kZXRlY3RDaGFuZ2VzKCk7XHJcbiAgICAgIH1cclxuICAgIH0sKGVycm9yOmFueSkgPT4ge1xyXG4gICAgICB0aGlzLmxvYWRpbmcgPSBmYWxzZTtcclxuICAgICAgdGhpcy5ub0RhdGEgPSB0cnVlO1xyXG4gICAgfSlcclxuICB9XHJcblxyXG4gIGhhbmRsZU5vdGlmaWNhdGlvbigpIHtcclxuICAgIHRoaXMuc2VydmljZS51cGRhdGVOb3RpZmljYXRpb25SZWNlaXZlZCh0cnVlKTtcclxuICB9XHJcblxyXG4gIHZpZXdBbGwodHlwZTphbnkpe1xyXG4gICAgdGhpcy5yb3V0ZXIubmF2aWdhdGVCeVVybCgnL25vdGlmaWNhdGlvbnMvYWxlcnRzJylcclxuICB9XHJcblxyXG4gIEBIb3N0TGlzdGVuZXIoJ2RvY3VtZW50OmNsaWNrJywgWyckZXZlbnQnXSlcclxuICBvbkNsaWNrIChldmVudDogTW91c2VFdmVudCkge1xyXG4gICAgY29uc3QgdGFyZ2V0ID0gZXZlbnQudGFyZ2V0IGFzIEhUTUxFbGVtZW50O1xyXG4gICAgaWYoIXRhcmdldC5jbG9zZXN0KCcuYXBwLW5hdmJhcicpKSB7XHJcbiAgICAgIHRoaXMuc2hvd0Ryb3Bkb3duID0gZmFsc2U7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiIsIjwhLS1iZWdpbjo6Tm90aWZpY2F0aW9ucy0tPlxyXG48ZGl2IGNsYXNzPVwiYXBwLW5hdmJhci1pdGVtXCIgW25nQ2xhc3NdPVwiaXRlbUNsYXNzXCIgKm5nSWY9XCJzaG93Tm90aWZpY2F0aW9uXCI+XHJcbiAgPCEtLWJlZ2luOjpNZW51LSB3cmFwcGVyLS0+XHJcbiAgPGRpdiBbbmdDbGFzc109XCJidG5DbGFzc1wiIChjbGljayk9XCJzaG93RHJvcGRvd24gPSAhc2hvd0Ryb3Bkb3duXCI+XHJcbiAgICA8c3BhbiAqbmdJZj1cIiFub3RpZmljYXRpb24ubGVuZ3RoXCI+XHJcbiAgICAgIDxzdmcgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHdpZHRoPVwiMjBcIiBoZWlnaHQ9XCIyNFwiIHZpZXdCb3g9XCIwIDAgMjAgMjRcIiBmaWxsPVwibm9uZVwiPlxyXG4gICAgICAgIDxwYXRoXHJcbiAgICAgICAgICBkPVwiTTEwLjY3NzkgMi40VjMuMDA2ODhMMTEuMjcxNSAzLjEzMzVDMTQuMTY3NCAzLjc1MTI1IDE2LjM5MTkgNi40NTg0MiAxNi4zOTE5IDkuNzVWMTAuNjMxM0MxNi4zOTE5IDEzLjAxMzEgMTcuMjI0OSAxNS4zMDg3IDE4LjczMzggMTcuMDk2M0wxOC43MzUyIDE3LjA5NzlMMTkuMDYzNiAxNy40ODQ2QzE5LjA2MzkgMTcuNDg1IDE5LjA2NDIgMTcuNDg1MyAxOS4wNjQ1IDE3LjQ4NTdDMTkuMjU1NyAxNy43MTM2IDE5LjMwNDggMTguMDM5MyAxOS4xODUgMTguMzE3NEMxOS4wNjQxIDE4LjU5ODMgMTguODE1MyAxOC43NSAxOC41NzA0IDE4Ljc1SDEuNDI4NDhDMS4xODI1IDE4Ljc1IDAuOTMzOTMxIDE4LjU5NzQgMC44MTUwMTcgMTguMzE5M0MwLjY5NTEwOCAxOC4wMzg4IDAuNzQ0NTkyIDE3LjcxMjMgMC45MzM5OTYgMTcuNDg1M0MwLjkzNDQ0NSAxNy40ODQ4IDAuOTM0ODk0IDE3LjQ4NDMgMC45MzUzNDQgMTcuNDgzN0wxLjI2MzEyIDE3LjA5ODVMMS4yNjQ3MyAxNy4wOTY2QzIuNzc1OTkgMTUuMzA4NiAzLjYwNjk3IDEzLjAxMjcgMy42MDY5NyAxMC42MzEzVjkuNzVDMy42MDY5NyA2LjQ1NDM0IDUuNzk0ODggMy43NTE0NSA4LjcyNTU5IDMuMTMzODhMOS4zMjA5NCAzLjAwODQzVjIuNFYxLjVDOS4zMjA5NCAxLjA1MDUyIDkuNjU4MDYgMC43NSA5Ljk5OTQ0IDAuNzVDMTAuMzQwOCAwLjc1IDEwLjY3NzkgMS4wNTA1MiAxMC42Nzc5IDEuNVYyLjRaTTkuOTk5NDQgMjMuMjVDOS40NDk4MyAyMy4yNSA4LjkxNzI2IDIzLjAyMyA4LjUyMDM0IDIyLjYwNjJDOC4yOTY0OSAyMi4zNzEyIDguMTI0NTcgMjIuMDcwOCA4LjAxNzY5IDIxLjc1SDExLjk4MTJDMTEuODc0MyAyMi4wNzA4IDExLjcwMjQgMjIuMzcxMiAxMS40Nzg1IDIyLjYwNjJDMTEuMDg1NiAyMy4wMTg4IDEwLjUxNDYgMjMuMjUgOS45OTk0NCAyMy4yNVpcIlxyXG4gICAgICAgICAgc3Ryb2tlPVwiIzAwQTNGRlwiIHN0cm9rZS13aWR0aD1cIjEuNVwiIC8+XHJcbiAgICAgIDwvc3ZnPlxyXG4gICAgPC9zcGFuPlxyXG4gICAgPHNwYW4gKm5nSWY9XCJub3RpZmljYXRpb24ubGVuZ3RoXCI+XHJcbiAgICAgIDxzdmcgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHdpZHRoPVwiMjBcIiBoZWlnaHQ9XCIyNFwiIHZpZXdCb3g9XCIwIDAgMjAgMjRcIiBmaWxsPVwibm9uZVwiPlxyXG4gICAgICAgIDxwYXRoXHJcbiAgICAgICAgICBkPVwiTTExLjQyNzkgMi40VjEuNUMxMS40Mjc5IDAuNjcxNzE5IDEwLjc4OTYgMCA5Ljk5OTQ0IDBDOS4yMDkzIDAgOC41NzA5NCAwLjY3MTcxOSA4LjU3MDk0IDEuNVYyLjRDNS4yNzIwMiAzLjA5NTE2IDIuODU2OTcgNi4xMjE4OCAyLjg1Njk3IDkuNzVWMTAuNjMxM0MyLjg1Njk3IDEyLjgzOTEgMi4wODY0OCAxNC45NjI1IDAuNjkxOTE1IDE2LjYxMjVMMC4zNjA4NjIgMTcuMDAxNkMtMC4wMTI4ODA1IDE3LjQ0NjkgLTAuMTA1MDUgMTguMDc1IDAuMTI1Mzg0IDE4LjYxNDFDMC4zNTU4MTggMTkuMTUzMSAwLjg2NjAxMyAxOS41IDEuNDI4NDggMTkuNUgxOC41NzA0QzE5LjEzMjkgMTkuNSAxOS42NDE4IDE5LjE1MzEgMTkuODczOSAxOC42MTQxQzIwLjEwNiAxOC4wNzUgMjAuMDEyMyAxNy40NDY5IDE5LjYzNzMgMTcuMDAxNkwxOS4zMDcgMTYuNjEyNUMxNy45MTQyIDE0Ljk2MjUgMTcuMTQxOSAxMi44MzkxIDE3LjE0MTkgMTAuNjMxM1Y5Ljc1QzE3LjE0MTkgOS4zOTk0NyAxNy4xMTkgOS4wNTQ1NSAxNy4wNzQ2IDguNzE2ODFDMTYuNTg0NSA4Ljg5OTkgMTYuMDU0IDkgMTUuNSA5QzEzLjAxNDcgOSAxMSA2Ljk4NTI4IDExIDQuNUMxMSAzLjc0ODc3IDExLjE4NDEgMy4wNDA1NCAxMS41MDk2IDIuNDE3OTVDMTEuNDgyNCAyLjQxMTggMTEuNDU1MiAyLjQwNTgyIDExLjQyNzkgMi40WlwiXHJcbiAgICAgICAgICBmaWxsPVwiIzAwQTNGRlwiIC8+XHJcbiAgICAgICAgPHBhdGhcclxuICAgICAgICAgIGQ9XCJNNy45NzcyMyAyMy4xMjM0QzguNTEyOTEgMjMuNjg1OSA5LjI0MDU1IDI0IDkuOTk5NDQgMjRDMTAuNzE4MSAyNCAxMS40ODYgMjMuNjg1OSAxMi4wMjE2IDIzLjEyMzRDMTIuNTU3MyAyMi41NjA5IDEyLjg1NjQgMjEuNzU0NyAxMi44NTY0IDIxSDcuMTQyNDVDNy4xNDI0NSAyMS43NTQ3IDcuNDQxNTQgMjIuNTYwOSA3Ljk3NzIzIDIzLjEyMzRaXCJcclxuICAgICAgICAgIGZpbGw9XCIjMDBBM0ZGXCIgLz5cclxuICAgICAgICA8Y2lyY2xlIGN4PVwiMTZcIiBjeT1cIjRcIiByPVwiNFwiIGZpbGw9XCIjRjA0NDM4XCIgLz5cclxuICAgICAgPC9zdmc+XHJcbiAgICA8L3NwYW4+XHJcbiAgICA8ZGl2IGNsYXNzPVwibWVudSBtZW51LXN1YiBtZW51LXN1Yi1kcm9wZG93biBtZW51LWNvbHVtbiB3LTQ1MHB4IHctbGctNDI1cHggbm90aWZpY2F0aW9uTWVudVwiICpuZ0lmPVwic2hvd0Ryb3Bkb3duXCI+XHJcbiAgICAgIDxkaXYgY2xhc3M9XCJjYXJkIHRvcGJhclwiPlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJjYXJkLWhlYWRlclwiPlxyXG4gICAgICAgICAgPGgzIGNsYXNzPVwidGl0bGUtbm90aWZ5IG10LTEwIG1iLTZcIj5cclxuICAgICAgICAgICAgTm90aWZpY2F0aW9uc1xyXG4gICAgICAgICAgPC9oMz5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwibG9hZGluZ1wiPlxyXG4gICAgICAgICAgPGRpdiBjbGFzcz1cInJvdyBsb2FkZXIgIGQtZmxleCBqdXN0aWZ5LWNvbnRlbnQtY2VudGVyIGFsaWduLWl0ZW1zLWNlbnRlclwiPlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwic2hpbW1lclwiPlxyXG4gICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ3cmFwcGVyXCI+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwic3Ryb2tlIGFuaW1hdGUgdGl0bGVcIj48L2Rpdj5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzdHJva2UgYW5pbWF0ZSBsaW5rXCI+PC9kaXY+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwic3Ryb2tlIGFuaW1hdGUgZGVzY3JpcHRpb25cIj48L2Rpdj5cclxuICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzaGltbWVyXCI+XHJcbiAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIndyYXBwZXJcIj5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzdHJva2UgYW5pbWF0ZSB0aXRsZVwiPjwvZGl2PlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInN0cm9rZSBhbmltYXRlIGxpbmtcIj48L2Rpdj5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzdHJva2UgYW5pbWF0ZSBkZXNjcmlwdGlvblwiPjwvZGl2PlxyXG4gICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuXHJcbiAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwibm9EYXRhICYmICFsb2FkaW5nXCI+XHJcbiAgICAgICAgICA8ZGl2IGNsYXNzPVwicm93XCI+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtbGctMTIgbWItM1wiPlxyXG4gICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjYXJkLWJvZHkgZC1mbGV4IGp1c3RpZnktY29udGVudC1jZW50ZXIgYWxpZ24taXRlbXMtY2VudGVyIGZsZXgtY29sdW1uXCI+XHJcbiAgICAgICAgICAgICAgICA8aW1nIGNsYXNzPVwiaW1nLXNyYyB3LTI1XCIgc3JjPVwiLi9hc3NldHMvdGFuZ28vSWNvbnMvbm9Ob3RpZmljYXRpb24uc3ZnXCIgYWx0PVwiXCI+XHJcbiAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cIm5vdGlmaWNhdGlvbkFsaWduIG10LTEwXCI+Tm8gTmV3IE5vdGlmaWNhdGlvbjwvc3Bhbj5cclxuICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwibm9Ob3RpZmljYXRpb24gbXQtMlwiPkFueSBuZXcgbm90aWZpY2F0aW9uIHdpbGwgYmUgc2hvd24gaGVyZS48L3NwYW4+XHJcbiAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPC9uZy1jb250YWluZXI+XHJcblxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJhbGVydHNjcm9sbFwiICpuZ0lmPVwibm90aWZpY2F0aW9uLmxlbmd0aFwiPlxyXG4gICAgICAgICAgPGRpdiAqbmdGb3I9XCJsZXQgaXRlbSBvZiBub3RpZmljYXRpb25cIiBjbGFzcz1cIm1oLTIwMHB4IG5nLXN0YXItaW5zZXJ0ZWRcIiBzdHlsZT1cIm92ZXJmbG93OiBhdXRvO1wiPlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZC1mbGV4IGZsZXgtc3RhY2sgcHktMyBteC00IG5nLXN0YXItaW5zZXJ0ZWRcIj5cclxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZC1mbGV4IGFsaWduLWl0ZW1zLWNlbnRlclwiPlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInN5bWJvbCBzeW1ib2wtMzVweCBtZS00XCI+PHNwYW4gY2xhc3M9XCJzeW1ib2wtbGFiZWwgYmctbGlnaHQtcHJpbWFyeVwiPjxzcGFuXHJcbiAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cInN2Zy1pY29uIHN2Zy1pY29uLTIgc3ZnLWljb24tcHJpbWFyeVwiPjwvc3Bhbj48c3BhblxyXG4gICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJzdmctaWNvbiBzdmctaWNvbi0yIHN2Zy1pY29uLXByaW1hcnlcIj48c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICB4bWxuczp4bGluaz1cImh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmtcIiB3aWR0aD1cIjI0cHhcIiBoZWlnaHQ9XCIyNHB4XCIgdmlld0JveD1cIjAgMCAyNCAyNFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHZlcnNpb249XCIxLjFcIiBjbGFzcz1cIm5nLXN0YXItaW5zZXJ0ZWRcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGcgc3Ryb2tlPVwibm9uZVwiIHN0cm9rZS13aWR0aD1cIjFcIiBmaWxsPVwibm9uZVwiIGZpbGwtcnVsZT1cImV2ZW5vZGRcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICA8cG9seWdvbiBwb2ludHM9XCIwIDAgMjQgMCAyNCAyNCAwIDI0XCI+PC9wb2x5Z29uPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkPVwiTTEyLDExIEM5Ljc5MDg2MSwxMSA4LDkuMjA5MTM5IDgsNyBDOCw0Ljc5MDg2MSA5Ljc5MDg2MSwzIDEyLDMgQzE0LjIwOTEzOSwzIDE2LDQuNzkwODYxIDE2LDcgQzE2LDkuMjA5MTM5IDE0LjIwOTEzOSwxMSAxMiwxMSBaXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZpbGw9XCIjMDA5RUY3XCIgZmlsbC1ydWxlPVwibm9uemVyb1wiIG9wYWNpdHk9XCIwLjNcIj48L3BhdGg+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGhcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGQ9XCJNMy4wMDA2NTE2OCwyMC4xOTkyMDU1IEMzLjM4ODI1ODUyLDE1LjQyNjUxNTkgNy4yNjE5MTIzNSwxMyAxMS45ODMzNDEzLDEzIEMxNi43NzEyMTY0LDEzIDIwLjcwNDg4MzcsMTUuMjkzMTkyOSAyMC45OTc5MTQzLDIwLjIgQzIxLjAwOTU4NzksMjAuMzk1NDc0MSAyMC45OTc5MTQzLDIxIDIwLjI0NjY5OTksMjEgQzE2LjU0MTEyNCwyMSAxMS4wMzQ3MjQ3LDIxIDMuNzI3NTAyMjMsMjEgQzMuNDc2NzEyMTUsMjEgMi45Nzk1MzgyNSwyMC40NTkxOCAzLjAwMDY1MTY4LDIwLjE5OTIwNTUgWlwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmaWxsPVwiIzAwOUVGN1wiIGZpbGwtcnVsZT1cIm5vbnplcm9cIj48L3BhdGg+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZz5cclxuICAgICAgICAgICAgICAgICAgICAgIDwvc3ZnPjwvc3Bhbj48L3NwYW4+PC9kaXY+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibWItMCBtZS0yXCIgc3R5bGU9XCJ0ZXh0LWFsaWduOiBsZWZ0O1wiPlxyXG4gICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiYWxlcnQtdGl0bGVcIj57eyBpdGVtLl9zb3VyY2UudGl0bGUgfX08L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImFsdC1kZXNjXCI+e3sgaXRlbS5fc291cmNlLmRlc2NyaXB0aW9uIH19PC9kaXY+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICA8L2Rpdj48c3BhbiBjbGFzcz1cImJhZGdlIGJhZGdlLWxpZ2h0IGZzLTlcIj57eyBpdGVtLl9zb3VyY2UuZGF0ZXxjdXN0b21EYXRlRm9ybWF0IH19PC9zcGFuPlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgPGRpdiBjbGFzcz1cInRleHQtY2VudGVyIGJvcmRlci10b3BcIj5cclxuICAgICAgICAgICAgPGEgKGNsaWNrKT1cInZpZXdBbGwoJ2FsZXJ0cycpXCIgY2xhc3M9XCJidG4gYnRuLWNvbG9yLWdyYXktNjAwIGJ0bi1hY3RpdmUtY29sb3ItcHJpbWFyeSBteS0yXCI+XHJcbiAgICAgICAgICAgICAgVmlldyBBbGxcclxuICAgICAgICAgICAgPC9hPlxyXG4gICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgPC9kaXY+XHJcbiAgPC9kaXY+XHJcbjwvZGl2PlxyXG5cclxuPGRpdiBjbGFzcz1cInctNDUwcHggcG9zaXRpb24tZml4ZWQgZW5kLTAgYm90dG9tLTAgdHJhbnNpdGlvblwiPlxyXG4gICAgPGRpdiBjbGFzcz1cIm1iLTRcIiAqbmdGb3I9XCJsZXQgaXRlbSBvZiBwdXNoTm90aWZpY2F0aW9uTGlzdDtsZXQgaSA9IGluZGV4XCI+XHJcbiAgICAgIDxkaXYgY2xhc3M9XCJhbGVydGJnIGNhcmRcIiAqbmdJZj1cIml0ZW0uX3Njb3JlXCIgQGZhZGVJbiBAZmFkZU91dD5cclxuICAgICAgPGRpdiBjbGFzcz1cInJvdyBtLTJcIj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwiY29sLTEgYWxpZ24taXRlbXMtc3RhcnQgbXQtMVwiPlxyXG4gICAgICAgICAgPHNwYW4+PHN2ZyB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgd2lkdGg9XCIyMFwiIGhlaWdodD1cIjIwXCIgdmlld0JveD1cIjAgMCAyMCAyMFwiIGZpbGw9XCJub25lXCI+XHJcbiAgICAgICAgICAgICAgPGcgY2xpcC1wYXRoPVwidXJsKCNjbGlwMF8xMjI1NF8xMTI2NTMpXCI+XHJcbiAgICAgICAgICAgICAgICA8cGF0aFxyXG4gICAgICAgICAgICAgICAgICBkPVwiTTkuOTk5MzUgMTMuMzMzNFYxME05Ljk5OTM1IDYuNjY2NjlIMTAuMDA3N00xOC4zMzI3IDEwQzE4LjMzMjcgMTQuNjAyNCAxNC42MDE3IDE4LjMzMzQgOS45OTkzNSAxOC4zMzM0QzUuMzk2OTggMTguMzMzNCAxLjY2NjAyIDE0LjYwMjQgMS42NjYwMiAxMEMxLjY2NjAyIDUuMzk3NjUgNS4zOTY5OCAxLjY2NjY5IDkuOTk5MzUgMS42NjY2OUMxNC42MDE3IDEuNjY2NjkgMTguMzMyNyA1LjM5NzY1IDE4LjMzMjcgMTBaXCJcclxuICAgICAgICAgICAgICAgICAgc3Ryb2tlPVwiIzY2NzA4NVwiIHN0cm9rZS13aWR0aD1cIjEuNjY2NjdcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIiAvPlxyXG4gICAgICAgICAgICAgIDwvZz5cclxuICAgICAgICAgICAgICA8ZGVmcz5cclxuICAgICAgICAgICAgICAgIDxjbGlwUGF0aCBpZD1cImNsaXAwXzEyMjU0XzExMjY1M1wiPlxyXG4gICAgICAgICAgICAgICAgICA8cmVjdCB3aWR0aD1cIjIwXCIgaGVpZ2h0PVwiMjBcIiBmaWxsPVwid2hpdGVcIiAvPlxyXG4gICAgICAgICAgICAgICAgPC9jbGlwUGF0aD5cclxuICAgICAgICAgICAgICA8L2RlZnM+XHJcbiAgICAgICAgICAgIDwvc3ZnPlxyXG4gICAgICAgICAgPC9zcGFuPlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtMTAgYWxpZ24taXRlbXMtc3RhcnRcIj5cclxuICAgICAgICAgIDxzcGFuIGNsYXNzPVwiYWxlcnQtdGl0bGVcIj5cclxuICAgICAgICAgICAgTm90aWZpY2F0aW9uXHJcbiAgICAgICAgICA8L3NwYW4+XHJcbiAgICAgICAgICA8ZGl2PlxyXG4gICAgICAgICAgICB7e2l0ZW0uX3NvdXJjZS5kZXNjcmlwdGlvbn19XHJcbiAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwiY29sLTEgYWxpZ24taXRlbXMtc3RhcnQgY3Vyc29yLXBvaW50ZXJcIiAoY2xpY2spPVwibm90aWZpY2F0aW9uUHVzaFVwZGF0ZShpdGVtLCcnKVwiPlxyXG4gICAgICAgICAgPHNwYW4+PHN2ZyB3aWR0aD1cIjIwXCIgaGVpZ2h0PVwiMjBcIiB2aWV3Qm94PVwiMCAwIDIwIDIwXCIgZmlsbD1cIm5vbmVcIiB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCI+XHJcbiAgICAgICAgICAgICAgPHBhdGggZD1cIk0xNSA1TDUgMTVNNSA1TDE1IDE1XCIgc3Ryb2tlPVwiIzY2NzA4NVwiIHN0cm9rZS13aWR0aD1cIjEuNjdcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCJcclxuICAgICAgICAgICAgICAgIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCIgLz5cclxuICAgICAgICAgICAgPC9zdmc+XHJcbiAgICAgICAgICA8L3NwYW4+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPCEtLSAgLS0+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cImQtZmxleCBteS0yIGp1c3RpZnktY29udGVudC1hcm91bmRcIiA+XHJcbiAgICAgICAgICA8ZGl2IFtuZ0NsYXNzXT1cIiFbJ3JlbWluZCcsJ2NhbmNlbCddLmluY2x1ZGVzKGJ1dHRvbi5yZWRpcmVjdGlvblVybCkgPyAnJyA6ICdtdC0yJ1wiICpuZ0Zvcj1cImxldCBidXR0b24gb2YgaXRlbS5fc291cmNlPy5hbGVydEN0YVwiPlxyXG4gICAgICAgICAgICA8YnV0dG9uICpuZ0lmPVwiIVsncmVtaW5kJywnY2FuY2VsJ10uaW5jbHVkZXMoYnV0dG9uLnJlZGlyZWN0aW9uVXJsKVwiIChjbGljayk9XCJub3RpZmljYXRpb25QdXNoVXBkYXRlKGl0ZW0sYnV0dG9uKVwiXHJcbiAgICAgICAgICAgICAgdHlwZT1cImJ1dHRvblwiIHRhYmluZGV4PVwiMFwiIGNsYXNzPVwiIG1zLTEwIGJ0biBidG4tc20gYnRuLXByaW1hcnkgbmctc3Rhci1pbnNlcnRlZFwiXHJcbiAgICAgICAgICAgICAgc3R5bGU9XCJ3aGl0ZS1zcGFjZTogbm93cmFwO1wiPjxzcGFuIGNsYXNzPVwic3VibWl0XCI+e3sgYnV0dG9uLmJ1dHRvbk5hbWUgfX0gPC9zcGFuPjwvYnV0dG9uPlxyXG4gICAgICAgICAgICA8c3BhbiAqbmdJZj1cIlsncmVtaW5kJywnY2FuY2VsJ10uaW5jbHVkZXMoYnV0dG9uLnJlZGlyZWN0aW9uVXJsKVwiIChjbGljayk9XCJub3RpZmljYXRpb25QdXNoVXBkYXRlKGl0ZW0sYnV0dG9uKVwiXHJcbiAgICAgICAgICAgICAgY2xhc3M9XCJ0ZXh0LXByaW1hcnkgbXgtNiByZW1pbmRsYXRlcnRleHQgY3Vyc29yLXBvaW50ZXJcIj57eyBidXR0b24uYnV0dG9uTmFtZSB9fSA8L3NwYW4+XHJcbiAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgPC9kaXY+XHJcbiAgICA8L2Rpdj5cclxuICA8L2Rpdj5cclxuPC9kaXY+XHJcbiJdfQ==
256
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmF2YmFyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3RhbmdvLWFwcC1zaGFyZWQvc3JjL2xpYi9tb2R1bGVzL2xheW91dC9oZWFkZXIvbmF2YmFyL25hdmJhci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90YW5nby1hcHAtc2hhcmVkL3NyYy9saWIvbW9kdWxlcy9sYXlvdXQvaGVhZGVyL25hdmJhci9uYXZiYXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFxQixTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBcUIsTUFBTSxlQUFlLENBQUM7QUFFckcsT0FBTyxFQUFlLE1BQU0sRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUMzQyxPQUFPLEVBQXdCLGFBQWEsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ3RFLE9BQU8sRUFBRSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBRTFDLE9BQU8sRUFBRSxPQUFPLEVBQVMsS0FBSyxFQUFFLFVBQVUsRUFBRSxPQUFPLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQzs7Ozs7OztBQUNqRixNQUFNLGVBQWUsR0FBRyxVQUFVLENBQUMsUUFBUSxFQUFFO0lBQzNDLEtBQUssQ0FBQztRQUNKLE9BQU8sRUFBRSxDQUFDO1FBQ1YsZ0NBQWdDO0tBQ2pDLENBQUM7SUFDRixPQUFPLENBQUMsWUFBWSxFQUFFLEtBQUssQ0FBQztRQUMxQixPQUFPLEVBQUUsQ0FBQztLQUNYLENBQUMsQ0FBQztDQUNKLENBQUMsQ0FBQztBQUVILE1BQU0sVUFBVSxHQUFHLFVBQVUsQ0FBQyxRQUFRLEVBQUU7SUFDdEMsS0FBSyxDQUFDO1FBQ0osT0FBTyxFQUFFLENBQUM7UUFDVixpQ0FBaUM7S0FDbEMsQ0FBQztJQUNGLE9BQU8sQ0FBQyxhQUFhLEVBQUUs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QUFiLEtBQUs7Z0JBeU1OLE9BQU87c0JBRE4sWUFBWTt1QkFBQyxnQkFBZ0IsRUFBRSxDQUFDLFFBQVEsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENoYW5nZURldGVjdG9yUmVmLCBDb21wb25lbnQsIEhvc3RMaXN0ZW5lciwgSW5wdXQsIE9uRGVzdHJveSwgT25Jbml0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IE5vdGlmaWNhdGlvblNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi8uLi9zZXJ2aWNlcy9ub3RpZmljYXRpb24uc2VydmljZSc7XHJcbmltcG9ydCB7IFN1YnNjcmlwdGlvbixmaWx0ZXIgfSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHsgUm91dGVyLEFjdGl2YXRlZFJvdXRlLE5hdmlnYXRpb25FbmQgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xyXG5pbXBvcnQgeyBTdWJqZWN0LCB0YWtlVW50aWwgfSBmcm9tIFwicnhqc1wiO1xyXG5pbXBvcnQgeyBUb2FzdFNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi8uLi9zZXJ2aWNlcy90b2FzdC5zZXJ2aWNlJztcclxuaW1wb3J0IHsgdHJpZ2dlciwgc3RhdGUsIHN0eWxlLCB0cmFuc2l0aW9uLCBhbmltYXRlIH0gZnJvbSAnQGFuZ3VsYXIvYW5pbWF0aW9ucyc7XHJcbmNvbnN0IGVudGVyVHJhbnNpdGlvbiA9IHRyYW5zaXRpb24oJzplbnRlcicsIFtcclxuICBzdHlsZSh7XHJcbiAgICBvcGFjaXR5OiAwLFxyXG4gICAgLy8gdHJhbnNmb3JtOiAndHJhbnNsYXRlWCg1MHB4KSdcclxuICB9KSxcclxuICBhbmltYXRlKCcxcyBlYXNlLWluJywgc3R5bGUoe1xyXG4gICAgb3BhY2l0eTogMVxyXG4gIH0pKVxyXG5dKTtcclxuIFxyXG5jb25zdCBsZWF2ZVRyYW5zID0gdHJhbnNpdGlvbignOmxlYXZlJywgW1xyXG4gIHN0eWxlKHtcclxuICAgIG9wYWNpdHk6IDEsXHJcbiAgICAvLyB0cmFuc2Zvcm06ICd0cmFuc2xhdGVYKC01MHB4KSdcclxuICB9KSxcclxuICBhbmltYXRlKCcxcyBlYXNlLW91dCcsIHN0eWxlKHtcclxuICAgIG9wYWNpdHk6IDAsXHJcbiAgfSkpXHJcbl0pXHJcbiBcclxuY29uc3QgZmFkZUluID0gdHJpZ2dlcignZmFkZUluJywgW1xyXG4gIGVudGVyVHJhbnNpdGlvblxyXG5dKTtcclxuIFxyXG5jb25zdCBmYWRlT3V0ID0gdHJpZ2dlcignZmFkZU91dCcsIFtcclxuICBsZWF2ZVRyYW5zXHJcbl0pXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnbGliLW5hdmJhcicsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL25hdmJhci5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmxzOiBbJy4vbmF2YmFyLmNvbXBvbmVudC5zY3NzJ10sXHJcbiAgYW5pbWF0aW9uczogW1xyXG4gICAgZmFkZUluLFxyXG4gICAgZmFkZU91dFxyXG5cclxuICBdXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBOYXZiYXJDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsT25EZXN0cm95IHtcclxuICBASW5wdXQoKSBhcHBIZWFkZXJEZWZhdWxNZW51RGlzcGxheTogYm9vbGVhbjtcclxuICBASW5wdXQoKSBpc1J0bDogYm9vbGVhbjtcclxuICBwcml2YXRlIHJlYWRvbmx5IGRlc3Ryb3kkID0gbmV3IFN1YmplY3QoKTtcclxuXHJcbiAgaXRlbUNsYXNzOiBzdHJpbmcgPSAnbXMtMSBtcy1sZy0zJztcclxuICBidG5DbGFzczogc3RyaW5nID0gJ2J0biBidG4taWNvbiBidG4tY3VzdG9tIGJ0bi1pY29uLW11dGVkIGJ0bi1hY3RpdmUtbGlnaHQgYnRuLWFjdGl2ZS1jb2xvci1wcmltYXJ5IHctMzVweCBoLTM1cHggdy1tZC00MHB4IGgtbWQtNDBweCc7XHJcbiAgYnRuQ2xhc3MxOiBzdHJpbmc7XHJcbiAgdXNlckF2YXRhckNsYXNzOiBzdHJpbmcgPSAnc3ltYm9sLTM1cHggc3ltYm9sLW1kLTQwcHgnO1xyXG4gIGJ0bkljb25DbGFzczogc3RyaW5nID0gJ2ZzLTIgZnMtbWQtMSc7XHJcbiAgbm90aWZpY2F0aW9uUmVjZWl2ZWQ6IGJvb2xlYW4gPSBmYWxzZTtcclxuICBub3RpZmljYXRpb246YW55ID0gW107XHJcbiAgcHVzaE5vdGlmaWNhdGlvbkxpc3Q6YW55ID0gW107XHJcbiAgYWN0aXZlVGFiSWQ6c3RyaW5nID0gJ2FsZXJ0cyc7XHJcbiAgbG9hZGluZzpib29sZWFuID0gdHJ1ZTtcclxuICBub0RhdGE6Ym9vbGVhbiA9IGZhbHNlO1xyXG4gIHVybDphbnk7XHJcbiAgc2hvd05vdGlmaWNhdGlvbjpib29sZWFuID0gdHJ1ZTtcclxuICBzaG93RHJvcGRvd246Ym9vbGVhbiA9IGZhbHNlO1xyXG5cclxuICBwcml2YXRlIHN1YnNjcmlwdGlvbjogU3Vic2NyaXB0aW9uO1xyXG4gIG5vdGlmaWNhdGlvbkRyb3BEb3duQ2xhc3M6IGJvb2xlYW4gPSB0cnVlO1xyXG5cclxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIHNlcnZpY2U6Tm90aWZpY2F0aW9uU2VydmljZSxwcml2YXRlIHJvdXRlcjpSb3V0ZXIscHJpdmF0ZSB0b2FzdDpUb2FzdFNlcnZpY2UscHJpdmF0ZSBjZDpDaGFuZ2VEZXRlY3RvclJlZikge1xyXG4gICAgXHJcbiAgfVxyXG4gIFxyXG4gIG5nT25EZXN0cm95KCk6IHZvaWQge1xyXG4gICAgdGhpcy5kZXN0cm95JC5uZXh0KHRydWUpO1xyXG4gICAgdGhpcy5kZXN0cm95JC5jb21wbGV0ZSgpO1xyXG4gIH1cclxuXHJcbiAgbmdPbkluaXQoKTogdm9pZCB7XHJcbiAgICB0aGlzLnJvdXRlci5ldmVudHMucGlwZShmaWx0ZXIoZXZlbnQgPT4gZXZlbnQgaW5zdGFuY2VvZiBOYXZpZ2F0aW9uRW5kKSx0YWtlVW50aWwodGhpcy5kZXN0cm95JCkpLnN1YnNjcmliZSgoKSA9PiB7XHJcbiAgICAgIHRoaXMuc2hvd05vdGlmaWNhdGlvbkljb24oKTtcclxuICAgIH0pO1xyXG4gICAgdGhpcy5zaG93Tm90aWZpY2F0aW9uSWNvbigpO1xyXG4gICBcclxuICB9XHJcbiBcclxuICBzaG93Tm90aWZpY2F0aW9uSWNvbiAoKSB7XHJcbiAgICBsZXQgdXJsID0gdGhpcy5yb3V0ZXIudXJsLnNwbGl0KCcvJyk7XHJcbiAgICBpZih1cmwuaW5jbHVkZXMoJ25vdGlmaWNhdGlvbnMnKSkge1xyXG4gICAgICB0aGlzLnNob3dOb3RpZmljYXRpb24gPSBmYWxzZTtcclxuICAgIH1cclxuICAgIGVsc2Uge1xyXG4gICAgICB0aGlzLnNob3dOb3RpZmljYXRpb24gPSB0cnVlO1xyXG4gICAgfVxyXG4gICAgdGhpcy5ub3RpZmljYXRpb25MaXN0KCk7XHJcbiAgfVxyXG5cclxuICB0b2dnbGVVc2VyRHJvcERvd24oKSB7XHJcbiAgICB0aGlzLm5vdGlmaWNhdGlvbkRyb3BEb3duQ2xhc3MgPSAhdGhpcy5ub3RpZmljYXRpb25Ecm9wRG93bkNsYXNzO1xyXG4gIH1cclxuICBzZXRBY3RpdmVUYWJJZCh0YWJJZDogYW55KSB7XHJcbiAgICB0aGlzLmFjdGl2ZVRhYklkID0gdGFiSWQ7XHJcbiAgfVxyXG5cclxuICBub3RpZmljYXRpb25MaXN0KCkge1xyXG4gICAgdGhpcy5wdXNoTm90aWZpY2F0aW9uTGlzdCA9IFtdOyBcclxuICAgIHRoaXMubG9hZGluZyA9IHRydWU7XHJcbiAgICBsZXQgZGF0YSA9IHtcclxuICAgICAgbGltaXQ6IDEwLFxyXG4gICAgICBvZmZzZXQ6IDFcclxuICAgIH07XHJcbiAgICB0aGlzLnNlcnZpY2Uubm90aWZpY2F0aW9uTGlzdChkYXRhKVxyXG4gICAgICAucGlwZSh0YWtlVW50aWwodGhpcy5kZXN0cm95JCkpXHJcbiAgICAgIC5zdWJzY3JpYmUoe1xyXG4gICAgICAgIG5leHQ6IChyZXM6IGFueSkgPT4ge1xyXG4gICAgICAgICAgaWYgKHJlcyAmJiByZXMuY29kZSA9PSAyMDApIHtcclxuICAgICAgICAgICAgdGhpcy5sb2FkaW5nID0gZmFsc2U7XHJcbiAgICAgICAgICAgIHRoaXMubm9EYXRhID0gZmFsc2U7XHJcbiAgICAgICAgICAgIHRoaXMubm90aWZpY2F0aW9uID0gcmVzLmRhdGEucmVzdWx0LnNsaWNlKDAsNSk7XHJcbiAgICAgICAgICAgIHRoaXMucHVzaE5vdGlmaWNhdGlvbkxpc3QgPSByZXMuZGF0YS5yZXN1bHQuZmlsdGVyKChpdGVtOmFueSkgPT4gaXRlbS5fc291cmNlLnNob3dQdXNoTm90aWZpY2F0aW9uKTtcclxuICAgICAgICAgICAgdGhpcy5wdXNoTm90aWZpY2F0aW9uTGlzdC5mb3JFYWNoKChpdGVtOiBhbnkpID0+IHtcclxuICAgICAgICAgICAgICBpdGVtLl9zY29yZSA9IHRydWU7XHJcbiAgICAgICAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgICAgICAgICAgICBpdGVtLl9zY29yZSA9IGZhbHNlO1xyXG4gICAgICAgICAgICAgICAgdGhpcy5zZXJ2aWNlLm5vdGlmaWNhdGlvblB1c2hVcGRhdGUoaXRlbSkucGlwZSh0YWtlVW50aWwodGhpcy5kZXN0cm95JCkpLnN1YnNjcmliZSAoKHJlczogYW55KSA9PiB7XHJcbiAgICAgICAgICAgICAgICB9KVxyXG4gICAgICAgICAgICAgICAgLy8gdGhpcy5ub3RpZmljYXRpb25QdXNoVXBkYXRlKGl0ZW0sJycpO1xyXG4gICAgICAgICAgICAgIH0sIDYwMDApO1xyXG4gICAgICAgICAgICB9KTtcclxuICAgICAgICAgICAgXHJcbiAgICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICB0aGlzLm5vdGlmaWNhdGlvbiA9IFtdOyBcclxuICAgICAgICAgICAgdGhpcy5sb2FkaW5nID0gZmFsc2U7XHJcbiAgICAgICAgICAgIHRoaXMubm9EYXRhID0gdHJ1ZTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9LFxyXG4gICAgICAgIGVycm9yOiAoZXJyKSA9PiB7XHJcbiAgICAgICAgICB0aGlzLm5vdGlmaWNhdGlvbiA9IFtdOyBcclxuICAgICAgICAgIHRoaXMubG9hZGluZyA9IGZhbHNlO1xyXG4gICAgICAgICAgdGhpcy5ub0RhdGEgPSB0cnVlO1xyXG4gICAgICAgIH1cclxuICAgICAgfSk7XHJcbiAgfVxyXG5cclxuICAgbm90aWZpY2F0aW9uUHVzaFVwZGF0ZShkYXRhOiBhbnksYnRuRGV0YWlsczphbnkpOiB2b2lkIHtcclxuICAgIHRoaXMuc2VydmljZS5ub3RpZmljYXRpb25QdXNoVXBkYXRlKGRhdGEpLnBpcGUodGFrZVVudGlsKHRoaXMuZGVzdHJveSQpKS5zdWJzY3JpYmUoKHJlczogYW55KSA9PiB7XHJcbiAgICAgIGlmIChyZXMgJiYgcmVzLmNvZGUgPT0gMjAwKSB7XHJcbiAgICAgICAgaWYoYnRuRGV0YWlscyAmJiBidG5EZXRhaWxzPy5yZWRpcmVjdGlvblVybCAhPSAnJyAmJiBidG5EZXRhaWxzPy5yZWRpcmVjdGlvblVybC5zcGxpdCgnLycpLmxlbmd0aCA+IDEpIHtcclxuICAgICAgICAgIHRoaXMucm91dGVyLm5hdmlnYXRlQnlVcmwoYnRuRGV0YWlscy5yZWRpcmVjdGlvblVybCk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGlmKGJ0bkRldGFpbHMgJiYgYnRuRGV0YWlscz8ucmVkaXJlY3Rpb25VcmwgPT0gJ3JlbWluZCcpIHtcclxuICAgICAgICAgIHRoaXMuc2VydmljZS51cGRhdGVSZW1pbmQoZGF0YS5faWQpLnBpcGUodGFrZVVudGlsKHRoaXMuZGVzdHJveSQpKS5zdWJzY3JpYmUoKCkgPT4ge30pXHJcbiAgICAgICAgICBcclxuICAgICAgICB9XHJcbiAgICAgICAgaWYoYnRuRGV0YWlscyAmJiBidG5EZXRhaWxzPy5yZWRpcmVjdGlvblVybCA9PSAndHJpYWxBcHByb3ZlZCcpIHtcclxuICAgICAgICAgIGxldCBwYXJhbXMgPSB7XHJcbiAgICAgICAgICAgIGlkOmJ0bkRldGFpbHMuaWQsXHJcbiAgICAgICAgICAgIHR5cGU6J2FwcHJvdmUnXHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgICB0aGlzLnNlcnZpY2UudHJpYWxBcHByb3ZlZChwYXJhbXMpLnBpcGUodGFrZVVudGlsKHRoaXMuZGVzdHJveSQpKS5zdWJzY3JpYmUoKHJlczphbnkpID0+IHt9KVxyXG4gICAgICAgIH1cclxuICAgICAgICBpZihidG5EZXRhaWxzICYmIGJ0bkRldGFpbHM/LnJlZGlyZWN0aW9uVXJsID09ICdzdWJzY3JpYmVkJykge1xyXG4gICAgICAgICAgbGV0IHBhcmFtcyA9IHtcclxuICAgICAgICAgICAgY2xpZW50SWQ6IGJ0bkRldGFpbHM/LmNsaWVudElkLFxyXG4gICAgICAgICAgICBwcm9kdWN0czogW1xyXG4gICAgICAgICAgICAgICAge1xyXG4gICAgICAgICAgICAgICAgICAgIG5hbWU6IGJ0bkRldGFpbHMucHJvZHVjdCxcclxuICAgICAgICAgICAgICAgICAgICBwcm9kdWN0TmFtZTogYnRuRGV0YWlscy5uYW1lLFxyXG4gICAgICAgICAgICAgICAgICAgIHR5cGU6IFwic3Vic2NyaXB0aW9uXCIsXHJcbiAgICAgICAgICAgICAgICAgICAgY29udGVudDogXCJuZXdcIlxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBdXHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgICB0aGlzLnNlcnZpY2UudXBkYXRlU3Vic2NyaXB0aW9uKHBhcmFtcykucGlwZSh0YWtlVW50aWwodGhpcy5kZXN0cm95JCkpLnN1YnNjcmliZSgocmVzOmFueSkgPT4ge30pXHJcbiAgICAgICAgfVxyXG4gICAgICAgIHRoaXMuY2QuZGV0ZWN0Q2hhbmdlcygpO1xyXG4gICAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xyXG4gICAgICAgICAgaWYoYnRuRGV0YWlscykge1xyXG4gICAgICAgICAgICBpZighdGhpcy5zaG93Tm90aWZpY2F0aW9uKXtcclxuICAgICAgICAgICAgICB0aGlzLnNlcnZpY2UudHJpZ2dlclJlbG9hZCgpO1xyXG4gICAgICAgICAgICB9IFxyXG4gICAgICAgICAgICB0aGlzLnNlcnZpY2Uubm90aWZpY2F0aW9uVXBkYXRlKGRhdGEuX2lkKS5waXBlKHRha2VVbnRpbCh0aGlzLmRlc3Ryb3kkKSkuc3Vic2NyaWJlKClcclxuICAgICAgICAgIH1cclxuICAgICAgICAgIHRoaXMubm90aWZpY2F0aW9uTGlzdCgpO1xyXG4gICAgICAgIH0sMTAwMCk7XHJcbiAgICAgIH1cclxuICAgIH0pXHJcbiAgfVxyXG5cclxuICB1cGRhdGVOb3RpZmljYXRpb24oZGF0YTogYW55LCBidG5EZXRhaWxzOiBhbnkpOiB2b2lkIHtcclxuICAgIHRoaXMubG9hZGluZyA9IHRydWU7XHJcbiAgICB0aGlzLnNlcnZpY2Uubm90aWZpY2F0aW9uVXBkYXRlKGRhdGEuX2lkKS5waXBlKHRha2VVbnRpbCh0aGlzLmRlc3Ryb3kkKSkuc3Vic2NyaWJlKChyZXM6IGFueSkgPT4ge1xyXG4gICAgICBpZiAocmVzICYmIHJlcy5jb2RlID09IDIwMCkge1xyXG4gICAgICAgIGlmKCFidG5EZXRhaWxzIHx8IGJ0bkRldGFpbHM/LnJlZGlyZWN0aW9uVXJsICE9ICdzdWJzY3JpYmVkJylcclxuICAgICAgICAgIHRoaXMudG9hc3QuZ2V0U3VjY2Vzc1RvYXN0KHJlcy5tZXNzYWdlKTtcclxuICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHtcclxuICAgICAgICAgIHRoaXMubm90aWZpY2F0aW9uTGlzdCgpO1xyXG4gICAgICAgIH0sMTAwMCk7XHJcbiAgICAgICAgaWYoYnRuRGV0YWlscyAmJiBidG5EZXRhaWxzPy5yZWRpcmVjdGlvblVybCAhPSAnJyAmJiAhWydyZW1pbmQnLCdzdWJzY3JpYmVkJ10uaW5jbHVkZXMoYnRuRGV0YWlscz8ucmVkaXJlY3Rpb25VcmwpKSB7XHJcbiAgICAgICAgICB0aGlzLnJvdXRlci5uYXZpZ2F0ZUJ5VXJsKGJ0bkRldGFpbHMucmVkaXJlY3Rpb25VcmwpO1xyXG4gICAgICAgIH1cclxuICAgICAgICBpZihidG5EZXRhaWxzICYmIGJ0bkRldGFpbHM/LnJlZGlyZWN0aW9uVXJsID09ICdyZW1pbmQnKSB7XHJcbiAgICAgICAgICB0aGlzLnNlcnZpY2UudXBkYXRlUmVtaW5kKGRhdGEuX2lkKS5waXBlKHRha2VVbnRpbCh0aGlzLmRlc3Ryb3kkKSkuc3Vic2NyaWJlKCgpID0+IHt9KVxyXG4gICAgICAgIH1cclxuICAgICAgICBpZihidG5EZXRhaWxzICYmIGJ0bkRldGFpbHM/LnJlZGlyZWN0aW9uVXJsID09ICd0cmlhbEFwcHJvdmVkJykge1xyXG4gICAgICAgICAgbGV0IHBhcmFtcyA9IHtcclxuICAgICAgICAgICAgaWQ6YnRuRGV0YWlscy5pZCxcclxuICAgICAgICAgICAgdHlwZTonYXBwcm92ZSdcclxuICAgICAgICAgIH1cclxuICAgICAgICAgIHRoaXMuc2VydmljZS50cmlhbEFwcHJvdmVkKHBhcmFtcykucGlwZSh0YWtlVW50aWwodGhpcy5kZXN0cm95JCkpLnN1YnNjcmliZSgoKSA9PiB7fSlcclxuICAgICAgICB9XHJcbiAgICAgICAgaWYoYnRuRGV0YWlscyAmJiBidG5EZXRhaWxzPy5yZWRpcmVjdGlvblVybCA9PSAnc3Vic2NyaWJlZCcpIHtcclxuICAgICAgICAgIGxldCBwYXJhbXMgPSB7XHJcbiAgICAgICAgICAgIGNsaWVudElkOiBidG5EZXRhaWxzPy5jbGllbnRJZCxcclxuICAgICAgICAgICAgcHJvZHVjdHM6IFtcclxuICAgICAgICAgICAgICAgIHtcclxuICAgICAgICAgICAgICAgICAgICBuYW1lOiBidG5EZXRhaWxzLnByb2R1Y3QsXHJcbiAgICAgICAgICAgICAgICAgICAgcHJvZHVjdE5hbWU6IGJ0bkRldGFpbHMubmFtZSxcclxuICAgICAgICAgICAgICAgICAgICB0eXBlOiBcInN1YnNjcmlwdGlvblwiLFxyXG4gICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6IFwibmV3XCJcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgXVxyXG4gICAgICAgICAgfVxyXG4gICAgICAgICAgdGhpcy5zZXJ2aWNlLnVwZGF0ZVN1YnNjcmlwdGlvbihwYXJhbXMpLnBpcGUodGFrZVVudGlsKHRoaXMuZGVzdHJveSQpKS5zdWJzY3JpYmUoKHJlczphbnkpID0+IHtcclxuICAgICAgICAgICAgaWYocmVzICYmIHJlcy5jb2RlID09IDIwMCkge1xyXG4gICAgICAgICAgICAgIHRoaXMudG9hc3QuZ2V0U3VjY2Vzc1RvYXN0KCdQcm9kdWN0IFN1YnNjcmliZWQgU3VjY2Vzc2Z1bGx5Jyk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH0pXHJcbiAgICAgICAgfVxyXG4gICAgICAgIHRoaXMuY2QuZGV0ZWN0Q2hhbmdlcygpO1xyXG4gICAgICB9XHJcbiAgICB9LChlcnJvcjphbnkpID0+IHtcclxuICAgICAgdGhpcy5sb2FkaW5nID0gZmFsc2U7XHJcbiAgICAgIHRoaXMubm9EYXRhID0gdHJ1ZTtcclxuICAgIH0pXHJcbiAgfVxyXG5cclxuICBoYW5kbGVOb3RpZmljYXRpb24oKSB7XHJcbiAgICB0aGlzLnNlcnZpY2UudXBkYXRlTm90aWZpY2F0aW9uUmVjZWl2ZWQodHJ1ZSk7XHJcbiAgfVxyXG5cclxuICB2aWV3QWxsKHR5cGU6YW55KXtcclxuICAgIHRoaXMucm91dGVyLm5hdmlnYXRlQnlVcmwoJy9ub3RpZmljYXRpb25zL2FsZXJ0cycpXHJcbiAgfVxyXG4gIHJlZGlyZWN0dG9ub3RpZmljYXRpb24oKXtcclxuICAgIHRoaXMucm91dGVyLm5hdmlnYXRlQnlVcmwoJy9ub3RpZmljYXRpb25zL2FsZXJ0cz90YWI9ZG93bmxvYWQnKVxyXG4gIH1cclxuXHJcbiAgQEhvc3RMaXN0ZW5lcignZG9jdW1lbnQ6Y2xpY2snLCBbJyRldmVudCddKVxyXG4gIG9uQ2xpY2sgKGV2ZW50OiBNb3VzZUV2ZW50KSB7XHJcbiAgICBjb25zdCB0YXJnZXQgPSBldmVudC50YXJnZXQgYXMgSFRNTEVsZW1lbnQ7XHJcbiAgICBpZighdGFyZ2V0LmNsb3Nlc3QoJy5hcHAtbmF2YmFyJykpIHtcclxuICAgICAgdGhpcy5zaG93RHJvcGRvd24gPSBmYWxzZTtcclxuICAgIH1cclxuICB9XHJcblxyXG59XHJcbiIsIjwhLS1iZWdpbjo6Tm90aWZpY2F0aW9ucy0tPlxyXG48ZGl2IGNsYXNzPVwiYXBwLW5hdmJhci1pdGVtXCIgW25nQ2xhc3NdPVwiaXRlbUNsYXNzXCIgKm5nSWY9XCJzaG93Tm90aWZpY2F0aW9uXCI+XHJcbiAgPCEtLWJlZ2luOjpNZW51LSB3cmFwcGVyLS0+XHJcbiAgPGRpdiBbbmdDbGFzc109XCJidG5DbGFzc1wiIChjbGljayk9XCJzaG93RHJvcGRvd24gPSAhc2hvd0Ryb3Bkb3duXCI+XHJcbiAgICA8c3BhbiAqbmdJZj1cIiFub3RpZmljYXRpb24ubGVuZ3RoXCI+XHJcbiAgICAgIDxzdmcgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHdpZHRoPVwiMjBcIiBoZWlnaHQ9XCIyNFwiIHZpZXdCb3g9XCIwIDAgMjAgMjRcIiBmaWxsPVwibm9uZVwiPlxyXG4gICAgICAgIDxwYXRoXHJcbiAgICAgICAgICBkPVwiTTEwLjY3NzkgMi40VjMuMDA2ODhMMTEuMjcxNSAzLjEzMzVDMTQuMTY3NCAzLjc1MTI1IDE2LjM5MTkgNi40NTg0MiAxNi4zOTE5IDkuNzVWMTAuNjMxM0MxNi4zOTE5IDEzLjAxMzEgMTcuMjI0OSAxNS4zMDg3IDE4LjczMzggMTcuMDk2M0wxOC43MzUyIDE3LjA5NzlMMTkuMDYzNiAxNy40ODQ2QzE5LjA2MzkgMTcuNDg1IDE5LjA2NDIgMTcuNDg1MyAxOS4wNjQ1IDE3LjQ4NTdDMTkuMjU1NyAxNy43MTM2IDE5LjMwNDggMTguMDM5MyAxOS4xODUgMTguMzE3NEMxOS4wNjQxIDE4LjU5ODMgMTguODE1MyAxOC43NSAxOC41NzA0IDE4Ljc1SDEuNDI4NDhDMS4xODI1IDE4Ljc1IDAuOTMzOTMxIDE4LjU5NzQgMC44MTUwMTcgMTguMzE5M0MwLjY5NTEwOCAxOC4wMzg4IDAuNzQ0NTkyIDE3LjcxMjMgMC45MzM5OTYgMTcuNDg1M0MwLjkzNDQ0NSAxNy40ODQ4IDAuOTM0ODk0IDE3LjQ4NDMgMC45MzUzNDQgMTcuNDgzN0wxLjI2MzEyIDE3LjA5ODVMMS4yNjQ3MyAxNy4wOTY2QzIuNzc1OTkgMTUuMzA4NiAzLjYwNjk3IDEzLjAxMjcgMy42MDY5NyAxMC42MzEzVjkuNzVDMy42MDY5NyA2LjQ1NDM0IDUuNzk0ODggMy43NTE0NSA4LjcyNTU5IDMuMTMzODhMOS4zMjA5NCAzLjAwODQzVjIuNFYxLjVDOS4zMjA5NCAxLjA1MDUyIDkuNjU4MDYgMC43NSA5Ljk5OTQ0IDAuNzVDMTAuMzQwOCAwLjc1IDEwLjY3NzkgMS4wNTA1MiAxMC42Nzc5IDEuNVYyLjRaTTkuOTk5NDQgMjMuMjVDOS40NDk4MyAyMy4yNSA4LjkxNzI2IDIzLjAyMyA4LjUyMDM0IDIyLjYwNjJDOC4yOTY0OSAyMi4zNzEyIDguMTI0NTcgMjIuMDcwOCA4LjAxNzY5IDIxLjc1SDExLjk4MTJDMTEuODc0MyAyMi4wNzA4IDExLjcwMjQgMjIuMzcxMiAxMS40Nzg1IDIyLjYwNjJDMTEuMDg1NiAyMy4wMTg4IDEwLjUxNDYgMjMuMjUgOS45OTk0NCAyMy4yNVpcIlxyXG4gICAgICAgICAgc3Ryb2tlPVwiIzAwQTNGRlwiIHN0cm9rZS13aWR0aD1cIjEuNVwiIC8+XHJcbiAgICAgIDwvc3ZnPlxyXG4gICAgPC9zcGFuPlxyXG4gICAgPHNwYW4gKm5nSWY9XCJub3RpZmljYXRpb24ubGVuZ3RoXCI+XHJcbiAgICAgIDxzdmcgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHdpZHRoPVwiMjBcIiBoZWlnaHQ9XCIyNFwiIHZpZXdCb3g9XCIwIDAgMjAgMjRcIiBmaWxsPVwibm9uZVwiPlxyXG4gICAgICAgIDxwYXRoXHJcbiAgICAgICAgICBkPVwiTTExLjQyNzkgMi40VjEuNUMxMS40Mjc5IDAuNjcxNzE5IDEwLjc4OTYgMCA5Ljk5OTQ0IDBDOS4yMDkzIDAgOC41NzA5NCAwLjY3MTcxOSA4LjU3MDk0IDEuNVYyLjRDNS4yNzIwMiAzLjA5NTE2IDIuODU2OTcgNi4xMjE4OCAyLjg1Njk3IDkuNzVWMTAuNjMxM0MyLjg1Njk3IDEyLjgzOTEgMi4wODY0OCAxNC45NjI1IDAuNjkxOTE1IDE2LjYxMjVMMC4zNjA4NjIgMTcuMDAxNkMtMC4wMTI4ODA1IDE3LjQ0NjkgLTAuMTA1MDUgMTguMDc1IDAuMTI1Mzg0IDE4LjYxNDFDMC4zNTU4MTggMTkuMTUzMSAwLjg2NjAxMyAxOS41IDEuNDI4NDggMTkuNUgxOC41NzA0QzE5LjEzMjkgMTkuNSAxOS42NDE4IDE5LjE1MzEgMTkuODczOSAxOC42MTQxQzIwLjEwNiAxOC4wNzUgMjAuMDEyMyAxNy40NDY5IDE5LjYzNzMgMTcuMDAxNkwxOS4zMDcgMTYuNjEyNUMxNy45MTQyIDE0Ljk2MjUgMTcuMTQxOSAxMi44MzkxIDE3LjE0MTkgMTAuNjMxM1Y5Ljc1QzE3LjE0MTkgOS4zOTk0NyAxNy4xMTkgOS4wNTQ1NSAxNy4wNzQ2IDguNzE2ODFDMTYuNTg0NSA4Ljg5OTkgMTYuMDU0IDkgMTUuNSA5QzEzLjAxNDcgOSAxMSA2Ljk4NTI4IDExIDQuNUMxMSAzLjc0ODc3IDExLjE4NDEgMy4wNDA1NCAxMS41MDk2IDIuNDE3OTVDMTEuNDgyNCAyLjQxMTggMTEuNDU1MiAyLjQwNTgyIDExLjQyNzkgMi40WlwiXHJcbiAgICAgICAgICBmaWxsPVwiIzAwQTNGRlwiIC8+XHJcbiAgICAgICAgPHBhdGhcclxuICAgICAgICAgIGQ9XCJNNy45NzcyMyAyMy4xMjM0QzguNTEyOTEgMjMuNjg1OSA5LjI0MDU1IDI0IDkuOTk5NDQgMjRDMTAuNzE4MSAyNCAxMS40ODYgMjMuNjg1OSAxMi4wMjE2IDIzLjEyMzRDMTIuNTU3MyAyMi41NjA5IDEyLjg1NjQgMjEuNzU0NyAxMi44NTY0IDIxSDcuMTQyNDVDNy4xNDI0NSAyMS43NTQ3IDcuNDQxNTQgMjIuNTYwOSA3Ljk3NzIzIDIzLjEyMzRaXCJcclxuICAgICAgICAgIGZpbGw9XCIjMDBBM0ZGXCIgLz5cclxuICAgICAgICA8Y2lyY2xlIGN4PVwiMTZcIiBjeT1cIjRcIiByPVwiNFwiIGZpbGw9XCIjRjA0NDM4XCIgLz5cclxuICAgICAgPC9zdmc+XHJcbiAgICA8L3NwYW4+XHJcbiAgICA8ZGl2IGNsYXNzPVwibWVudSBtZW51LXN1YiBtZW51LXN1Yi1kcm9wZG93biBtZW51LWNvbHVtbiB3LTQ1MHB4IHctbGctNDI1cHggbm90aWZpY2F0aW9uTWVudVwiICpuZ0lmPVwic2hvd0Ryb3Bkb3duXCI+XHJcbiAgICAgIDxkaXYgY2xhc3M9XCJjYXJkIHRvcGJhclwiPlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJjYXJkLWhlYWRlclwiPlxyXG4gICAgICAgICAgPGgzIGNsYXNzPVwidGl0bGUtbm90aWZ5IG10LTEwIG1iLTZcIj5cclxuICAgICAgICAgICAgTm90aWZpY2F0aW9uc1xyXG4gICAgICAgICAgPC9oMz5cclxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJjYXJkLXRvb2xiYXJcIj5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImQtZmxleCBtdC01XCI+XHJcbiAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImQtZmxleCBhbGlnbi1pdGVtcy1jZW50ZXIgcG9zaXRpb24tcmVsYXRpdmUgbXktMVwiPlxyXG4gICAgICAgICAgICAgICAgPGRpdiAoY2xpY2spPVwicmVkaXJlY3R0b25vdGlmaWNhdGlvbigpXCIgW3JvdXRlckxpbmtdPVwiWycvbm90aWZpY2F0aW9ucy9hbGVydHM/dGFiPWRvd25sb2FkJ11cIiBjbGFzcz1cInRleHQtcHJpbWFyeVwiPlZpZXcgQWxsIDxzcGFuPjxzdmcgd2lkdGg9XCIxOFwiIGhlaWdodD1cIjE4XCIgdmlld0JveD1cIjAgMCAxOCAxOFwiIGZpbGw9XCJub25lXCIgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiPlxyXG4gICAgICAgICAgICAgICAgICA8cGF0aCBkPVwiTTE0IDkuODMzMzNWMTQuODMzM0MxNCAxNS4yNzU0IDEzLjgyNDQgMTUuNjk5MyAxMy41MTE4IDE2LjAxMThDMTMuMTk5MyAxNi4zMjQ0IDEyLjc3NTQgMTYuNSAxMi4zMzMzIDE2LjVIMy4xNjY2N0MyLjcyNDY0IDE2LjUgMi4zMDA3MiAxNi4zMjQ0IDEuOTg4MTYgMTYuMDExOEMxLjY3NTU5IDE1LjY5OTMgMS41IDE1LjI3NTQgMS41IDE0LjgzMzNWNS42NjY2N0MxLjUgNS4yMjQ2NCAxLjY3NTU5IDQuODAwNzIgMS45ODgxNiA0LjQ4ODE2QzIuMzAwNzIgNC4xNzU1OSAyLjcyNDY0IDQgMy4xNjY2NyA0SDguMTY2NjdNMTEuNSAxLjVIMTYuNU0xNi41IDEuNVY2LjVNMTYuNSAxLjVMNy4zMzMzMyAxMC42NjY3XCIgc3Ryb2tlPVwiIzAwOUJGM1wiIHN0cm9rZS13aWR0aD1cIjEuNjdcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIi8+XHJcbiAgICAgICAgICAgICAgICAgIDwvc3ZnPlxyXG4gICAgICAgICAgICAgICAgICA8L3NwYW4+PC9kaXY+XHJcbiAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgICBcclxuICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwibG9hZGluZ1wiPlxyXG4gICAgICAgICAgPGRpdiBjbGFzcz1cInJvdyBsb2FkZXIgIGQtZmxleCBqdXN0aWZ5LWNvbnRlbnQtY2VudGVyIGFsaWduLWl0ZW1zLWNlbnRlclwiPlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwic2hpbW1lclwiPlxyXG4gICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ3cmFwcGVyXCI+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwic3Ryb2tlIGFuaW1hdGUgdGl0bGVcIj48L2Rpdj5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzdHJva2UgYW5pbWF0ZSBsaW5rXCI+PC9kaXY+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwic3Ryb2tlIGFuaW1hdGUgZGVzY3JpcHRpb25cIj48L2Rpdj5cclxuICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzaGltbWVyXCI+XHJcbiAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIndyYXBwZXJcIj5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzdHJva2UgYW5pbWF0ZSB0aXRsZVwiPjwvZGl2PlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInN0cm9rZSBhbmltYXRlIGxpbmtcIj48L2Rpdj5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzdHJva2UgYW5pbWF0ZSBkZXNjcmlwdGlvblwiPjwvZGl2PlxyXG4gICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuXHJcbiAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwibm9EYXRhICYmICFsb2FkaW5nXCI+XHJcbiAgICAgICAgICA8ZGl2IGNsYXNzPVwicm93XCI+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtbGctMTIgbWItM1wiPlxyXG4gICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjYXJkLWJvZHkgZC1mbGV4IGp1c3RpZnktY29udGVudC1jZW50ZXIgYWxpZ24taXRlbXMtY2VudGVyIGZsZXgtY29sdW1uXCI+XHJcbiAgICAgICAgICAgICAgICA8aW1nIGNsYXNzPVwiaW1nLXNyYyB3LTI1XCIgc3JjPVwiLi9hc3NldHMvdGFuZ28vSWNvbnMvbm9Ob3RpZmljYXRpb24uc3ZnXCIgYWx0PVwiXCI+XHJcbiAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cIm5vdGlmaWNhdGlvbkFsaWduIG10LTEwXCI+Tm8gTmV3IE5vdGlmaWNhdGlvbjwvc3Bhbj5cclxuICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwibm9Ob3RpZmljYXRpb24gbXQtMlwiPkFueSBuZXcgbm90aWZpY2F0aW9uIHdpbGwgYmUgc2hvd24gaGVyZS48L3NwYW4+XHJcbiAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPC9uZy1jb250YWluZXI+XHJcblxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJhbGVydHNjcm9sbFwiICpuZ0lmPVwibm90aWZpY2F0aW9uLmxlbmd0aFwiPlxyXG4gICAgICAgICAgPGRpdiAqbmdGb3I9XCJsZXQgaXRlbSBvZiBub3RpZmljYXRpb25cIiBjbGFzcz1cIm1oLTIwMHB4IG5nLXN0YXItaW5zZXJ0ZWRcIiBzdHlsZT1cIm92ZXJmbG93OiBhdXRvO1wiPlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZC1mbGV4IGZsZXgtc3RhY2sgcHktMyBteC00IG5nLXN0YXItaW5zZXJ0ZWRcIj5cclxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZC1mbGV4IGFsaWduLWl0ZW1zLWNlbnRlclwiPlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInN5bWJvbCBzeW1ib2wtMzVweCBtZS00XCI+PHNwYW4gY2xhc3M9XCJzeW1ib2wtbGFiZWwgYmctbGlnaHQtcHJpbWFyeVwiPjxzcGFuXHJcbiAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cInN2Zy1pY29uIHN2Zy1pY29uLTIgc3ZnLWljb24tcHJpbWFyeVwiPjwvc3Bhbj48c3BhblxyXG4gICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJzdmctaWNvbiBzdmctaWNvbi0yIHN2Zy1pY29uLXByaW1hcnlcIj48c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICB4bWxuczp4bGluaz1cImh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmtcIiB3aWR0aD1cIjI0cHhcIiBoZWlnaHQ9XCIyNHB4XCIgdmlld0JveD1cIjAgMCAyNCAyNFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHZlcnNpb249XCIxLjFcIiBjbGFzcz1cIm5nLXN0YXItaW5zZXJ0ZWRcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGcgc3Ryb2tlPVwibm9uZVwiIHN0cm9rZS13aWR0aD1cIjFcIiBmaWxsPVwibm9uZVwiIGZpbGwtcnVsZT1cImV2ZW5vZGRcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICA8cG9seWdvbiBwb2ludHM9XCIwIDAgMjQgMCAyNCAyNCAwIDI0XCI+PC9wb2x5Z29uPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkPVwiTTEyLDExIEM5Ljc5MDg2MSwxMSA4LDkuMjA5MTM5IDgsNyBDOCw0Ljc5MDg2MSA5Ljc5MDg2MSwzIDEyLDMgQzE0LjIwOTEzOSwzIDE2LDQuNzkwODYxIDE2LDcgQzE2LDkuMjA5MTM5IDE0LjIwOTEzOSwxMSAxMiwxMSBaXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZpbGw9XCIjMDA5RUY3XCIgZmlsbC1ydWxlPVwibm9uemVyb1wiIG9wYWNpdHk9XCIwLjNcIj48L3BhdGg+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGhcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGQ9XCJNMy4wMDA2NTE2OCwyMC4xOTkyMDU1IEMzLjM4ODI1ODUyLDE1LjQyNjUxNTkgNy4yNjE5MTIzNSwxMyAxMS45ODMzNDEzLDEzIEMxNi43NzEyMTY0LDEzIDIwLjcwNDg4MzcsMTUuMjkzMTkyOSAyMC45OTc5MTQzLDIwLjIgQzIxLjAwOTU4NzksMjAuMzk1NDc0MSAyMC45OTc5MTQzLDIxIDIwLjI0NjY5OTksMjEgQzE2LjU0MTEyNCwyMSAxMS4wMzQ3MjQ3LDIxIDMuNzI3NTAyMjMsMjEgQzMuNDc2NzEyMTUsMjEgMi45Nzk1MzgyNSwyMC40NTkxOCAzLjAwMDY1MTY4LDIwLjE5OTIwNTUgWlwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmaWxsPVwiIzAwOUVGN1wiIGZpbGwtcnVsZT1cIm5vbnplcm9cIj48L3BhdGg+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZz5cclxuICAgICAgICAgICAgICAgICAgICAgIDwvc3ZnPjwvc3Bhbj48L3NwYW4+PC9kaXY+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibWItMCBtZS0yXCIgc3R5bGU9XCJ0ZXh0LWFsaWduOiBsZWZ0O1wiPlxyXG4gICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiYWxlcnQtdGl0bGVcIj57eyBpdGVtLl9zb3VyY2UudGl0bGUgfX08L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImFsdC1kZXNjXCI+e3sgaXRlbS5fc291cmNlLmRlc2NyaXB0aW9uIH19PC9kaXY+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICA8L2Rpdj48c3BhbiBjbGFzcz1cImJhZGdlIGJhZGdlLWxpZ2h0IGZzLTlcIj57eyBpdGVtLl9zb3VyY2UuZGF0ZXxjdXN0b21EYXRlRm9ybWF0IH19PC9zcGFuPlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgPGRpdiBjbGFzcz1cInRleHQtY2VudGVyIGJvcmRlci10b3BcIj5cclxuICAgICAgICAgICAgPGEgKGNsaWNrKT1cInZpZXdBbGwoJ2FsZXJ0cycpXCIgY2xhc3M9XCJidG4gYnRuLWNvbG9yLWdyYXktNjAwIGJ0bi1hY3RpdmUtY29sb3ItcHJpbWFyeSBteS0yXCI+XHJcbiAgICAgICAgICAgICAgVmlldyBBbGxcclxuICAgICAgICAgICAgPC9hPlxyXG4gICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgPC9kaXY+XHJcbiAgPC9kaXY+XHJcbjwvZGl2PlxyXG5cclxuPGRpdiBjbGFzcz1cInctNDUwcHggcG9zaXRpb24tZml4ZWQgZW5kLTAgYm90dG9tLTAgdHJhbnNpdGlvblwiPlxyXG4gICAgPGRpdiBjbGFzcz1cIm1iLTRcIiAqbmdGb3I9XCJsZXQgaXRlbSBvZiBwdXNoTm90aWZpY2F0aW9uTGlzdDtsZXQgaSA9IGluZGV4XCI+XHJcbiAgICAgIDxkaXYgY2xhc3M9XCJhbGVydGJnIGNhcmRcIiAqbmdJZj1cIml0ZW0uX3Njb3JlXCIgQGZhZGVJbiBAZmFkZU91dD5cclxuICAgICAgPGRpdiBjbGFzcz1cInJvdyBtLTJcIj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwiY29sLTEgYWxpZ24taXRlbXMtc3RhcnQgbXQtMVwiPlxyXG4gICAgICAgICAgPHNwYW4+PHN2ZyB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgd2lkdGg9XCIyMFwiIGhlaWdodD1cIjIwXCIgdmlld0JveD1cIjAgMCAyMCAyMFwiIGZpbGw9XCJub25lXCI+XHJcbiAgICAgICAgICAgICAgPGcgY2xpcC1wYXRoPVwidXJsKCNjbGlwMF8xMjI1NF8xMTI2NTMpXCI+XHJcbiAgICAgICAgICAgICAgICA8cGF0aFxyXG4gICAgICAgICAgICAgICAgICBkPVwiTTkuOTk5MzUgMTMuMzMzNFYxME05Ljk5OTM1IDYuNjY2NjlIMTAuMDA3N00xOC4zMzI3IDEwQzE4LjMzMjcgMTQuNjAyNCAxNC42MDE3IDE4LjMzMzQgOS45OTkzNSAxOC4zMzM0QzUuMzk2OTggMTguMzMzNCAxLjY2NjAyIDE0LjYwMjQgMS42NjYwMiAxMEMxLjY2NjAyIDUuMzk3NjUgNS4zOTY5OCAxLjY2NjY5IDkuOTk5MzUgMS42NjY2OUMxNC42MDE3IDEuNjY2NjkgMTguMzMyNyA1LjM5NzY1IDE4LjMzMjcgMTBaXCJcclxuICAgICAgICAgICAgICAgICAgc3Ryb2tlPVwiIzY2NzA4NVwiIHN0cm9rZS13aWR0aD1cIjEuNjY2NjdcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIiAvPlxyXG4gICAgICAgICAgICAgIDwvZz5cclxuICAgICAgICAgICAgICA8ZGVmcz5cclxuICAgICAgICAgICAgICAgIDxjbGlwUGF0aCBpZD1cImNsaXAwXzEyMjU0XzExMjY1M1wiPlxyXG4gICAgICAgICAgICAgICAgICA8cmVjdCB3aWR0aD1cIjIwXCIgaGVpZ2h0PVwiMjBcIiBmaWxsPVwid2hpdGVcIiAvPlxyXG4gICAgICAgICAgICAgICAgPC9jbGlwUGF0aD5cclxuICAgICAgICAgICAgICA8L2RlZnM+XHJcbiAgICAgICAgICAgIDwvc3ZnPlxyXG4gICAgICAgICAgPC9zcGFuPlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtMTAgYWxpZ24taXRlbXMtc3RhcnRcIj5cclxuICAgICAgICAgIDxzcGFuIGNsYXNzPVwiYWxlcnQtdGl0bGVcIj5cclxuICAgICAgICAgICAgTm90aWZpY2F0aW9uXHJcbiAgICAgICAgICA8L3NwYW4+XHJcbiAgICAgICAgICA8ZGl2PlxyXG4gICAgICAgICAgICB7e2l0ZW0uX3NvdXJjZS5kZXNjcmlwdGlvbn19XHJcbiAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwiY29sLTEgYWxpZ24taXRlbXMtc3RhcnQgY3Vyc29yLXBvaW50ZXJcIiAoY2xpY2spPVwibm90aWZpY2F0aW9uUHVzaFVwZGF0ZShpdGVtLCcnKVwiPlxyXG4gICAgICAgICAgPHNwYW4+PHN2ZyB3aWR0aD1cIjIwXCIgaGVpZ2h0PVwiMjBcIiB2aWV3Qm94PVwiMCAwIDIwIDIwXCIgZmlsbD1cIm5vbmVcIiB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCI+XHJcbiAgICAgICAgICAgICAgPHBhdGggZD1cIk0xNSA1TDUgMTVNNSA1TDE1IDE1XCIgc3Ryb2tlPVwiIzY2NzA4NVwiIHN0cm9rZS13aWR0aD1cIjEuNjdcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCJcclxuICAgICAgICAgICAgICAgIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCIgLz5cclxuICAgICAgICAgICAgPC9zdmc+XHJcbiAgICAgICAgICA8L3NwYW4+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPCEtLSAgLS0+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cImQtZmxleCBteS0yIGp1c3RpZnktY29udGVudC1hcm91bmRcIiA+XHJcbiAgICAgICAgICA8ZGl2IFtuZ0NsYXNzXT1cIiFbJ3JlbWluZCcsJ2NhbmNlbCddLmluY2x1ZGVzKGJ1dHRvbi5yZWRpcmVjdGlvblVybCkgPyAnJyA6ICdtdC0yJ1wiICpuZ0Zvcj1cImxldCBidXR0b24gb2YgaXRlbS5fc291cmNlPy5hbGVydEN0YVwiPlxyXG4gICAgICAgICAgICA8YnV0dG9uICpuZ0lmPVwiIVsncmVtaW5kJywnY2FuY2VsJ10uaW5jbHVkZXMoYnV0dG9uLnJlZGlyZWN0aW9uVXJsKVwiIChjbGljayk9XCJub3RpZmljYXRpb25QdXNoVXBkYXRlKGl0ZW0sYnV0dG9uKVwiXHJcbiAgICAgICAgICAgICAgdHlwZT1cImJ1dHRvblwiIHRhYmluZGV4PVwiMFwiIGNsYXNzPVwiIG1zLTEwIGJ0biBidG4tc20gYnRuLXByaW1hcnkgbmctc3Rhci1pbnNlcnRlZFwiXHJcbiAgICAgICAgICAgICAgc3R5bGU9XCJ3aGl0ZS1zcGFjZTogbm93cmFwO1wiPjxzcGFuIGNsYXNzPVwic3VibWl0XCI+e3sgYnV0dG9uLmJ1dHRvbk5hbWUgfX0gPC9zcGFuPjwvYnV0dG9uPlxyXG4gICAgICAgICAgICA8c3BhbiAqbmdJZj1cIlsncmVtaW5kJywnY2FuY2VsJ10uaW5jbHVkZXMoYnV0dG9uLnJlZGlyZWN0aW9uVXJsKVwiIChjbGljayk9XCJub3RpZmljYXRpb25QdXNoVXBkYXRlKGl0ZW0sYnV0dG9uKVwiXHJcbiAgICAgICAgICAgICAgY2xhc3M9XCJ0ZXh0LXByaW1hcnkgbXgtNiByZW1pbmRsYXRlcnRleHQgY3Vyc29yLXBvaW50ZXJcIj57eyBidXR0b24uYnV0dG9uTmFtZSB9fSA8L3NwYW4+XHJcbiAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgPC9kaXY+XHJcbiAgICA8L2Rpdj5cclxuICA8L2Rpdj5cclxuPC9kaXY+XHJcbiJdfQ==
@@ -37,6 +37,7 @@ export class PageTitleComponent {
37
37
  this.unsubscribe.forEach((sb) => sb.unsubscribe());
38
38
  }
39
39
  redirectFunction(path) {
40
+ const user = JSON.parse(localStorage.getItem('user-info'));
40
41
  this.router.navigateByUrl(path);
41
42
  }
42
43
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: PageTitleComponent, deps: [{ token: i1.PageInfoService }, { token: i0.ChangeDetectorRef }, { token: i2.Router }], target: i0.ɵɵFactoryTarget.Component });
@@ -52,4 +53,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
52
53
  }], appPageTitleDescription: [{
53
54
  type: Input
54
55
  }] } });
55
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFnZS10aXRsZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90YW5nby1hcHAtc2hhcmVkL3NyYy9saWIvbW9kdWxlcy9sYXlvdXQvaGVhZGVyL3BhZ2UtdGl0bGUvcGFnZS10aXRsZS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90YW5nby1hcHAtc2hhcmVkL3NyYy9saWIvbW9kdWxlcy9sYXlvdXQvaGVhZGVyL3BhZ2UtdGl0bGUvcGFnZS10aXRsZS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQXFCLFNBQVMsRUFBRSxLQUFLLEVBQXFCLE1BQU0sZUFBZSxDQUFDOzs7OztBQVV2RixNQUFNLE9BQU8sa0JBQWtCO0lBV1Q7SUFBbUM7SUFBOEI7SUFWN0UsV0FBVyxHQUFtQixFQUFFLENBQUM7SUFFaEMscUJBQXFCLEdBQVcsRUFBRSxDQUFDO0lBQ25DLHNCQUFzQixDQUFVO0lBQ2hDLHVCQUF1QixDQUFVO0lBRTFDLE1BQU0sQ0FBcUI7SUFDM0IsWUFBWSxDQUFxQjtJQUNqQyxHQUFHLENBQThCO0lBRWpDLFlBQW9CLFFBQXlCLEVBQVUsRUFBb0IsRUFBVSxNQUFhO1FBQTlFLGFBQVEsR0FBUixRQUFRLENBQWlCO1FBQVUsT0FBRSxHQUFGLEVBQUUsQ0FBa0I7UUFBVSxXQUFNLEdBQU4sTUFBTSxDQUFPO0lBQUcsQ0FBQztJQUV0RyxRQUFRO1FBQ04sSUFBSSxDQUFDLE1BQU0sR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxZQUFZLEVBQUUsQ0FBQztRQUNqRCxJQUFJLENBQUMsWUFBWSxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsV0FBVyxDQUFDLFlBQVksRUFBRSxDQUFDO1FBQzdELElBQUksQ0FBQyxHQUFHLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxXQUFXLENBQUMsWUFBWSxFQUFFLENBQUM7UUFDcEQsSUFBSSxDQUFDLE1BQU0sQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLEVBQUMsRUFBRTtZQUN6QixJQUFJLENBQUMsRUFBRSxDQUFDLGFBQWEsRUFBRSxDQUFBO1FBQ3pCLENBQUMsQ0FBQyxDQUFBO1FBQ0YsSUFBSSxDQUFDLFlBQVksQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLEVBQUMsRUFBRTtZQUMvQixJQUFJLENBQUMsRUFBRSxDQUFDLGFBQWEsRUFBRSxDQUFBO1FBQ3pCLENBQUMsQ0FBQyxDQUFBO1FBQ0YsSUFBSSxDQUFDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLEVBQUMsRUFBRTtZQUN0QixJQUFJLENBQUMsRUFBRSxDQUFDLGFBQWEsRUFBRSxDQUFBO1FBQ3pCLENBQUMsQ0FBQyxDQUFBO0lBQ0osQ0FBQztJQUVELFdBQVc7UUFDVCxJQUFJLENBQUMsV0FBVyxDQUFDLE9BQU8sQ0FBQyxDQUFDLEVBQUUsRUFBRSxFQUFFLENBQUMsRUFBRSxDQUFDLFdBQVcsRUFBRSxDQUFDLENBQUM7SUFDckQsQ0FBQztJQUVELGdCQUFnQixDQUFDLElBQVE7UUFDdkIsSUFBSSxDQUFDLE1BQU0sQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDbEMsQ0FBQzt3R0FsQ1Usa0JBQWtCOzRGQUFsQixrQkFBa0Isd05DVi9CLHM4Q0FnQ0E7OzRGRHRCYSxrQkFBa0I7a0JBTDlCLFNBQVM7K0JBQ0UsZ0JBQWdCO3lJQU9qQixxQkFBcUI7c0JBQTdCLEtBQUs7Z0JBQ0csc0JBQXNCO3NCQUE5QixLQUFLO2dCQUNHLHVCQUF1QjtzQkFBL0IsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENoYW5nZURldGVjdG9yUmVmLCBDb21wb25lbnQsIElucHV0LCBPbkRlc3Ryb3ksIE9uSW5pdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBSb3V0ZXIgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xyXG5pbXBvcnQgeyBPYnNlcnZhYmxlLCBTdWJzY3JpcHRpb24gfSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHsgUGFnZUluZm9TZXJ2aWNlLCBQYWdlTGluayB9IGZyb20gJ3RhbmdvLWFwcC11aS1nbG9iYWwnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdsaWItcGFnZS10aXRsZScsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL3BhZ2UtdGl0bGUuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL3BhZ2UtdGl0bGUuY29tcG9uZW50LnNjc3MnXSxcclxufSlcclxuZXhwb3J0IGNsYXNzIFBhZ2VUaXRsZUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95IHtcclxuICBwcml2YXRlIHVuc3Vic2NyaWJlOiBTdWJzY3JpcHRpb25bXSA9IFtdO1xyXG5cclxuICBASW5wdXQoKSBhcHBQYWdlVGl0bGVEaXJlY3Rpb246IHN0cmluZyA9ICcnO1xyXG4gIEBJbnB1dCgpIGFwcFBhZ2VUaXRsZUJyZWFkY3J1bWI6IGJvb2xlYW47XHJcbiAgQElucHV0KCkgYXBwUGFnZVRpdGxlRGVzY3JpcHRpb246IGJvb2xlYW47XHJcblxyXG4gIHRpdGxlJDogT2JzZXJ2YWJsZTxzdHJpbmc+O1xyXG4gIGRlc2NyaXB0aW9uJDogT2JzZXJ2YWJsZTxzdHJpbmc+O1xyXG4gIGJjJDogT2JzZXJ2YWJsZTxBcnJheTxQYWdlTGluaz4+O1xyXG5cclxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIHBhZ2VJbmZvOiBQYWdlSW5mb1NlcnZpY2UsIHByaXZhdGUgY2Q6Q2hhbmdlRGV0ZWN0b3JSZWYsIHByaXZhdGUgcm91dGVyOlJvdXRlcikge31cclxuXHJcbiAgbmdPbkluaXQoKTogdm9pZCB7XHJcbiAgICB0aGlzLnRpdGxlJCA9IHRoaXMucGFnZUluZm8udGl0bGUuYXNPYnNlcnZhYmxlKCk7XHJcbiAgICB0aGlzLmRlc2NyaXB0aW9uJCA9IHRoaXMucGFnZUluZm8uZGVzY3JpcHRpb24uYXNPYnNlcnZhYmxlKCk7XHJcbiAgICB0aGlzLmJjJCA9IHRoaXMucGFnZUluZm8uYnJlYWRjcnVtYnMuYXNPYnNlcnZhYmxlKCk7XHJcbiAgICB0aGlzLnRpdGxlJC5zdWJzY3JpYmUoKGUpPT57XHJcbiAgICAgIHRoaXMuY2QuZGV0ZWN0Q2hhbmdlcygpXHJcbiAgICB9KVxyXG4gICAgdGhpcy5kZXNjcmlwdGlvbiQuc3Vic2NyaWJlKChlKT0+e1xyXG4gICAgICB0aGlzLmNkLmRldGVjdENoYW5nZXMoKVxyXG4gICAgfSlcclxuICAgIHRoaXMuYmMkLnN1YnNjcmliZSgoZSk9PntcclxuICAgICAgdGhpcy5jZC5kZXRlY3RDaGFuZ2VzKClcclxuICAgIH0pXHJcbiAgfVxyXG5cclxuICBuZ09uRGVzdHJveSgpIHtcclxuICAgIHRoaXMudW5zdWJzY3JpYmUuZm9yRWFjaCgoc2IpID0+IHNiLnVuc3Vic2NyaWJlKCkpO1xyXG4gIH1cclxuXHJcbiAgcmVkaXJlY3RGdW5jdGlvbihwYXRoOmFueSl7XHJcbiAgICB0aGlzLnJvdXRlci5uYXZpZ2F0ZUJ5VXJsKHBhdGgpO1xyXG4gIH1cclxufVxyXG4iLCI8bmctY29udGFpbmVyICpuZ0lmPVwidGl0bGUkIHwgYXN5bmMgYXMgdGl0bGVcIj5cclxuXHJcbiAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImFwcFBhZ2VUaXRsZUJyZWFkY3J1bWJcIj5cclxuICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJiYyQgfCBhc3luYyBhcyBfYmNcIj5cclxuICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIl9iYy5sZW5ndGggPiAwXCI+XHJcbiAgICAgICAgPCEtLSA8bmctY29udGFpbmVyICpuZ0lmPVwiYXBwUGFnZVRpdGxlRGlyZWN0aW9uID09PSAncm93J1wiPlxyXG4gICAgICAgICAgPHNwYW4gY2xhc3M9XCJoLTIwcHggYm9yZGVyLWdyYXktMzAwIGJvcmRlci1zdGFydCBteC00XCI+PC9zcGFuPlxyXG4gICAgICAgIDwvbmctY29udGFpbmVyPiAtLT5cclxuICAgICAgICA8IS0tYmVnaW46OkJyZWFkY3J1bWItLT5cclxuXHJcbiAgICAgICAgPHVsIGNsYXNzPVwiYnJlYWRjcnVtYiBicmVhZGNydW1iLXNlcGFyYXRvcmxlc3MgZnctc2VtaWJvbGQgZnMtNyBteS0wXCJcclxuICAgICAgICAgIFtuZ0NsYXNzXT1cInsncHQtMSc6IGFwcFBhZ2VUaXRsZURpcmVjdGlvbiA9PT0gJ2NvbHVtbid9XCI+XHJcbiAgICAgICAgICA8bGkgKm5nRm9yPVwibGV0IGJjIG9mIF9iY1wiIGNsYXNzPVwiYnJlYWRjcnVtYi1pdGVtXCJcclxuICAgICAgICAgICAgW25nQ2xhc3NdPVwiIWJjLmlzU2VwYXJhdG9yICYmIGJjLmlzQWN0aXZlID8gJ3RleHQtZ3JheS05MDAnIDogJydcIlxyXG4gICAgICAgICAgICBbbmdDbGFzc109XCIhYmMuaXNTZXBhcmF0b3IgJiYgIWJjLmlzQWN0aXZlID8gJ3RleHQtbXV0ZWQnIDogJydcIj5cclxuICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIiFiYy5pc1NlcGFyYXRvclwiPlxyXG4gICAgICAgICAgICAgIDxhIGNsYXNzPVwiaW5hY3RpdmUtYmMgdGV4dC1ob3Zlci1wcmltYXJ5IGN1cnNvci1wb2ludGVyXCIgKGNsaWNrKT1cInJlZGlyZWN0RnVuY3Rpb24oYmM/LnBhdGgpXCIgPlxyXG4gICAgICAgICAgICAgICAge3sgYmMudGl0bGUgfX1cclxuICAgICAgICAgICAgICA8L2E+XHJcbiAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiYmMuaXNTZXBhcmF0b3JcIj5cclxuICAgICAgICAgICAgICA8aW1nIHNyYz1cIi9hc3NldHMvdGFuZ28vbGF5b3V0L2JjLXNlcGVyYXRvci5zdmdcIiBhbHQ9XCJcIj5cclxuICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XHJcbiAgICAgICAgICA8L2xpPlxyXG4gICAgICAgICAgPGxpIGNsYXNzPVwiYnJlYWRjcnVtYi1pdGVtIGFjdGl2ZS1iY1wiPnt7IHRpdGxlIH19PC9saT5cclxuICAgICAgICA8L3VsPlxyXG4gICAgICAgIDwhLS1lbmQ6OkJyZWFkY3J1bWItLT5cclxuXHJcbiAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgPC9uZy1jb250YWluZXI+XHJcbiAgPC9uZy1jb250YWluZXI+XHJcbjwvbmctY29udGFpbmVyPlxyXG4iXX0=
56
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFnZS10aXRsZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90YW5nby1hcHAtc2hhcmVkL3NyYy9saWIvbW9kdWxlcy9sYXlvdXQvaGVhZGVyL3BhZ2UtdGl0bGUvcGFnZS10aXRsZS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90YW5nby1hcHAtc2hhcmVkL3NyYy9saWIvbW9kdWxlcy9sYXlvdXQvaGVhZGVyL3BhZ2UtdGl0bGUvcGFnZS10aXRsZS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQXFCLFNBQVMsRUFBRSxLQUFLLEVBQXFCLE1BQU0sZUFBZSxDQUFDOzs7OztBQVV2RixNQUFNLE9BQU8sa0JBQWtCO0lBV1Q7SUFBbUM7SUFBOEI7SUFWN0UsV0FBVyxHQUFtQixFQUFFLENBQUM7SUFFaEMscUJBQXFCLEdBQVcsRUFBRSxDQUFDO0lBQ25DLHNCQUFzQixDQUFVO0lBQ2hDLHVCQUF1QixDQUFVO0lBRTFDLE1BQU0sQ0FBcUI7SUFDM0IsWUFBWSxDQUFxQjtJQUNqQyxHQUFHLENBQThCO0lBRWpDLFlBQW9CLFFBQXlCLEVBQVUsRUFBb0IsRUFBVSxNQUFhO1FBQTlFLGFBQVEsR0FBUixRQUFRLENBQWlCO1FBQVUsT0FBRSxHQUFGLEVBQUUsQ0FBa0I7UUFBVSxXQUFNLEdBQU4sTUFBTSxDQUFPO0lBQUcsQ0FBQztJQUV0RyxRQUFRO1FBQ04sSUFBSSxDQUFDLE1BQU0sR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxZQUFZLEVBQUUsQ0FBQztRQUNqRCxJQUFJLENBQUMsWUFBWSxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsV0FBVyxDQUFDLFlBQVksRUFBRSxDQUFDO1FBQzdELElBQUksQ0FBQyxHQUFHLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxXQUFXLENBQUMsWUFBWSxFQUFFLENBQUM7UUFDcEQsSUFBSSxDQUFDLE1BQU0sQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLEVBQUMsRUFBRTtZQUN6QixJQUFJLENBQUMsRUFBRSxDQUFDLGFBQWEsRUFBRSxDQUFBO1FBQ3pCLENBQUMsQ0FBQyxDQUFBO1FBQ0YsSUFBSSxDQUFDLFlBQVksQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLEVBQUMsRUFBRTtZQUMvQixJQUFJLENBQUMsRUFBRSxDQUFDLGFBQWEsRUFBRSxDQUFBO1FBQ3pCLENBQUMsQ0FBQyxDQUFBO1FBQ0YsSUFBSSxDQUFDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLEVBQUMsRUFBRTtZQUN0QixJQUFJLENBQUMsRUFBRSxDQUFDLGFBQWEsRUFBRSxDQUFBO1FBQ3pCLENBQUMsQ0FBQyxDQUFBO0lBQ0osQ0FBQztJQUVELFdBQVc7UUFDVCxJQUFJLENBQUMsV0FBVyxDQUFDLE9BQU8sQ0FBQyxDQUFDLEVBQUUsRUFBRSxFQUFFLENBQUMsRUFBRSxDQUFDLFdBQVcsRUFBRSxDQUFDLENBQUM7SUFDckQsQ0FBQztJQUVELGdCQUFnQixDQUFDLElBQVE7UUFDdkIsTUFBTSxJQUFJLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxZQUFZLENBQUMsT0FBTyxDQUFDLFdBQVcsQ0FBUSxDQUFDLENBQUM7UUFDbEUsSUFBSSxDQUFDLE1BQU0sQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDbEMsQ0FBQzt3R0FuQ1Usa0JBQWtCOzRGQUFsQixrQkFBa0Isd05DVi9CLHM4Q0FnQ0E7OzRGRHRCYSxrQkFBa0I7a0JBTDlCLFNBQVM7K0JBQ0UsZ0JBQWdCO3lJQU9qQixxQkFBcUI7c0JBQTdCLEtBQUs7Z0JBQ0csc0JBQXNCO3NCQUE5QixLQUFLO2dCQUNHLHVCQUF1QjtzQkFBL0IsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENoYW5nZURldGVjdG9yUmVmLCBDb21wb25lbnQsIElucHV0LCBPbkRlc3Ryb3ksIE9uSW5pdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBSb3V0ZXIgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xyXG5pbXBvcnQgeyBPYnNlcnZhYmxlLCBTdWJzY3JpcHRpb24gfSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHsgUGFnZUluZm9TZXJ2aWNlLCBQYWdlTGluayB9IGZyb20gJ3RhbmdvLWFwcC11aS1nbG9iYWwnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdsaWItcGFnZS10aXRsZScsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL3BhZ2UtdGl0bGUuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL3BhZ2UtdGl0bGUuY29tcG9uZW50LnNjc3MnXSxcclxufSlcclxuZXhwb3J0IGNsYXNzIFBhZ2VUaXRsZUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95IHtcclxuICBwcml2YXRlIHVuc3Vic2NyaWJlOiBTdWJzY3JpcHRpb25bXSA9IFtdO1xyXG5cclxuICBASW5wdXQoKSBhcHBQYWdlVGl0bGVEaXJlY3Rpb246IHN0cmluZyA9ICcnO1xyXG4gIEBJbnB1dCgpIGFwcFBhZ2VUaXRsZUJyZWFkY3J1bWI6IGJvb2xlYW47XHJcbiAgQElucHV0KCkgYXBwUGFnZVRpdGxlRGVzY3JpcHRpb246IGJvb2xlYW47XHJcblxyXG4gIHRpdGxlJDogT2JzZXJ2YWJsZTxzdHJpbmc+O1xyXG4gIGRlc2NyaXB0aW9uJDogT2JzZXJ2YWJsZTxzdHJpbmc+O1xyXG4gIGJjJDogT2JzZXJ2YWJsZTxBcnJheTxQYWdlTGluaz4+O1xyXG5cclxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIHBhZ2VJbmZvOiBQYWdlSW5mb1NlcnZpY2UsIHByaXZhdGUgY2Q6Q2hhbmdlRGV0ZWN0b3JSZWYsIHByaXZhdGUgcm91dGVyOlJvdXRlcikge31cclxuXHJcbiAgbmdPbkluaXQoKTogdm9pZCB7XHJcbiAgICB0aGlzLnRpdGxlJCA9IHRoaXMucGFnZUluZm8udGl0bGUuYXNPYnNlcnZhYmxlKCk7XHJcbiAgICB0aGlzLmRlc2NyaXB0aW9uJCA9IHRoaXMucGFnZUluZm8uZGVzY3JpcHRpb24uYXNPYnNlcnZhYmxlKCk7XHJcbiAgICB0aGlzLmJjJCA9IHRoaXMucGFnZUluZm8uYnJlYWRjcnVtYnMuYXNPYnNlcnZhYmxlKCk7XHJcbiAgICB0aGlzLnRpdGxlJC5zdWJzY3JpYmUoKGUpPT57XHJcbiAgICAgIHRoaXMuY2QuZGV0ZWN0Q2hhbmdlcygpXHJcbiAgICB9KVxyXG4gICAgdGhpcy5kZXNjcmlwdGlvbiQuc3Vic2NyaWJlKChlKT0+e1xyXG4gICAgICB0aGlzLmNkLmRldGVjdENoYW5nZXMoKVxyXG4gICAgfSlcclxuICAgIHRoaXMuYmMkLnN1YnNjcmliZSgoZSk9PntcclxuICAgICAgdGhpcy5jZC5kZXRlY3RDaGFuZ2VzKClcclxuICAgIH0pXHJcbiAgfVxyXG5cclxuICBuZ09uRGVzdHJveSgpIHtcclxuICAgIHRoaXMudW5zdWJzY3JpYmUuZm9yRWFjaCgoc2IpID0+IHNiLnVuc3Vic2NyaWJlKCkpO1xyXG4gIH1cclxuXHJcbiAgcmVkaXJlY3RGdW5jdGlvbihwYXRoOmFueSl7XHJcbiAgICBjb25zdCB1c2VyID0gSlNPTi5wYXJzZShsb2NhbFN0b3JhZ2UuZ2V0SXRlbSgndXNlci1pbmZvJykgYXMgYW55KTtcclxuICAgIHRoaXMucm91dGVyLm5hdmlnYXRlQnlVcmwocGF0aCk7XHJcbiAgfVxyXG59XHJcbiIsIjxuZy1jb250YWluZXIgKm5nSWY9XCJ0aXRsZSQgfCBhc3luYyBhcyB0aXRsZVwiPlxyXG5cclxuICA8bmctY29udGFpbmVyICpuZ0lmPVwiYXBwUGFnZVRpdGxlQnJlYWRjcnVtYlwiPlxyXG4gICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImJjJCB8IGFzeW5jIGFzIF9iY1wiPlxyXG4gICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiX2JjLmxlbmd0aCA+IDBcIj5cclxuICAgICAgICA8IS0tIDxuZy1jb250YWluZXIgKm5nSWY9XCJhcHBQYWdlVGl0bGVEaXJlY3Rpb24gPT09ICdyb3cnXCI+XHJcbiAgICAgICAgICA8c3BhbiBjbGFzcz1cImgtMjBweCBib3JkZXItZ3JheS0zMDAgYm9yZGVyLXN0YXJ0IG14LTRcIj48L3NwYW4+XHJcbiAgICAgICAgPC9uZy1jb250YWluZXI+IC0tPlxyXG4gICAgICAgIDwhLS1iZWdpbjo6QnJlYWRjcnVtYi0tPlxyXG5cclxuICAgICAgICA8dWwgY2xhc3M9XCJicmVhZGNydW1iIGJyZWFkY3J1bWItc2VwYXJhdG9ybGVzcyBmdy1zZW1pYm9sZCBmcy03IG15LTBcIlxyXG4gICAgICAgICAgW25nQ2xhc3NdPVwieydwdC0xJzogYXBwUGFnZVRpdGxlRGlyZWN0aW9uID09PSAnY29sdW1uJ31cIj5cclxuICAgICAgICAgIDxsaSAqbmdGb3I9XCJsZXQgYmMgb2YgX2JjXCIgY2xhc3M9XCJicmVhZGNydW1iLWl0ZW1cIlxyXG4gICAgICAgICAgICBbbmdDbGFzc109XCIhYmMuaXNTZXBhcmF0b3IgJiYgYmMuaXNBY3RpdmUgPyAndGV4dC1ncmF5LTkwMCcgOiAnJ1wiXHJcbiAgICAgICAgICAgIFtuZ0NsYXNzXT1cIiFiYy5pc1NlcGFyYXRvciAmJiAhYmMuaXNBY3RpdmUgPyAndGV4dC1tdXRlZCcgOiAnJ1wiPlxyXG4gICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiIWJjLmlzU2VwYXJhdG9yXCI+XHJcbiAgICAgICAgICAgICAgPGEgY2xhc3M9XCJpbmFjdGl2ZS1iYyB0ZXh0LWhvdmVyLXByaW1hcnkgY3Vyc29yLXBvaW50ZXJcIiAoY2xpY2spPVwicmVkaXJlY3RGdW5jdGlvbihiYz8ucGF0aClcIiA+XHJcbiAgICAgICAgICAgICAgICB7eyBiYy50aXRsZSB9fVxyXG4gICAgICAgICAgICAgIDwvYT5cclxuICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XHJcbiAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJiYy5pc1NlcGFyYXRvclwiPlxyXG4gICAgICAgICAgICAgIDxpbWcgc3JjPVwiL2Fzc2V0cy90YW5nby9sYXlvdXQvYmMtc2VwZXJhdG9yLnN2Z1wiIGFsdD1cIlwiPlxyXG4gICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgICAgICAgIDwvbGk+XHJcbiAgICAgICAgICA8bGkgY2xhc3M9XCJicmVhZGNydW1iLWl0ZW0gYWN0aXZlLWJjXCI+e3sgdGl0bGUgfX08L2xpPlxyXG4gICAgICAgIDwvdWw+XHJcbiAgICAgICAgPCEtLWVuZDo6QnJlYWRjcnVtYi0tPlxyXG5cclxuICAgICAgPC9uZy1jb250YWluZXI+XHJcbiAgICA8L25nLWNvbnRhaW5lcj5cclxuICA8L25nLWNvbnRhaW5lcj5cclxuPC9uZy1jb250YWluZXI+XHJcbiJdfQ==