@litigiovirtual/ius-design-components 1.0.291 → 1.0.292

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 (31) hide show
  1. package/esm2022/lib/add-user-container/add-user-container.component.mjs +3 -3
  2. package/esm2022/lib/alert/alert.component.mjs +2 -2
  3. package/esm2022/lib/avatar-business/avatar-business.component.mjs +1 -1
  4. package/esm2022/lib/avatar-v2/avatar-v2.component.mjs +1 -1
  5. package/esm2022/lib/button-auth/button-auth.component.mjs +9 -3
  6. package/esm2022/lib/button-dynamic/button-dynamic.component.mjs +9 -3
  7. package/esm2022/lib/button-filter/button-filter.component.mjs +2 -2
  8. package/esm2022/lib/button-standard-outline/button-standard-outline.component.mjs +9 -3
  9. package/esm2022/lib/button-standard-primary/button-standard-primary.component.mjs +9 -3
  10. package/esm2022/lib/button-standard-tertiary/button-standard-tertiary.component.mjs +9 -3
  11. package/esm2022/lib/button-standard-tertiary-small/button-standard-tertiary-small.component.mjs +8 -5
  12. package/esm2022/lib/create-ticket/create-ticket.component.mjs +2 -2
  13. package/esm2022/lib/custom-dropdown/custom-dropdown.component.mjs +1 -1
  14. package/esm2022/lib/date-hour-picker/date-hour-picker.component.mjs +1 -1
  15. package/esm2022/lib/date-picker/date-picker.component.mjs +1 -1
  16. package/esm2022/lib/double-date-picker/double-date-picker.component.mjs +1 -1
  17. package/esm2022/lib/menu-item/menu-item.component.mjs +26 -3
  18. package/esm2022/lib/page-not-found/page-not-found.component.mjs +1 -1
  19. package/esm2022/lib/section-collapse-drawer-parent/section-collapse-drawer-parent.component.mjs +3 -3
  20. package/esm2022/lib/support-panel/support-panel.component.mjs +1 -1
  21. package/esm2022/lib/toolbar-user-menu/toolbar-user-menu.component.mjs +3 -3
  22. package/fesm2022/litigiovirtual-ius-design-components.mjs +87 -31
  23. package/fesm2022/litigiovirtual-ius-design-components.mjs.map +1 -1
  24. package/lib/button-auth/button-auth.component.d.ts +3 -1
  25. package/lib/button-dynamic/button-dynamic.component.d.ts +3 -1
  26. package/lib/button-standard-outline/button-standard-outline.component.d.ts +3 -1
  27. package/lib/button-standard-primary/button-standard-primary.component.d.ts +3 -1
  28. package/lib/button-standard-tertiary/button-standard-tertiary.component.d.ts +3 -1
  29. package/lib/button-standard-tertiary-small/button-standard-tertiary-small.component.d.ts +3 -2
  30. package/lib/menu-item/menu-item.component.d.ts +7 -1
  31. package/package.json +1 -1
@@ -83,11 +83,11 @@ export class ToolbarUserMenuComponent {
83
83
  return !!(this.detallesConsumo && this.detallesConsumo.length > 0);
84
84
  }
85
85
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: ToolbarUserMenuComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
86
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.12", type: ToolbarUserMenuComponent, isStandalone: true, selector: "ius-toolbar-user-menu", inputs: { object: "object", subscripcionDetalle: "subscripcionDetalle", detallesConsumo: "detallesConsumo", accountList: "accountList", showUsuariosGrupos: "showUsuariosGrupos", showConfiguracionCuenta: "showConfiguracionCuenta", showPagosFacturacion: "showPagosFacturacion", showSubscripcionesServicios: "showSubscripcionesServicios", showReferir: "showReferir" }, outputs: { clickPerfilPreferencias: "clickPerfilPreferencias", clickUsuariosRoles: "clickUsuariosRoles", clickConfiguracion: "clickConfiguracion", clickPagos: "clickPagos", clickSubsServicios: "clickSubsServicios", clickCambiarCuenta: "clickCambiarCuenta", clickCerrarSesion: "clickCerrarSesion", clickReferir: "clickReferir", requestClose: "requestClose", clickAccountSelected: "clickAccountSelected", clickAccountPredeterminada: "clickAccountPredeterminada", clickEditAccount: "clickEditAccount", clickDesvincularAccount: "clickDesvincularAccount", clickAgregarAccount: "clickAgregarAccount" }, ngImport: i0, template: "<div class=\"tbl-menu\">\r\n <div class=\"body-menu scrollable\">\r\n <div class=\"colum-mn-1 text-head-mn\">\r\n <span>Est\u00E1s navegando en</span>\r\n <div class=\"tx-row-1\">\r\n <ius-icon-sm iconName=\"icon-account-circle\" class=\"icon-acc-circle\"></ius-icon-sm>\r\n <span class=\"h4 tx-abog\">{{ object.nombreCompany }}</span>\r\n </div>\r\n <div class=\"tx-row-1 id-ct\">\r\n <span>ID Cuenta</span>\r\n <span class=\"tx-id-ct\">{{ object.cuentaID }}</span>\r\n </div>\r\n <div class=\"tx-row-1 tx-rol\">\r\n <span>Tu rol</span>\r\n <span class=\"tx-name-rl\">{{ object.rol }}</span>\r\n </div>\r\n <ius-simple-divider></ius-simple-divider>\r\n </div>\r\n @if (!showFormSwitchAccount) {\r\n <div class=\"colum-mn-1\">\r\n <div class=\"email-inf\">\r\n <ius-icon-xs iconName=\"icon-alternate-email\" class=\"icon-alt-email\"></ius-icon-xs>\r\n <span>{{ object.correo }}</span>\r\n </div>\r\n <ius-dropdown-option-item (click)=\"onClickPerfilPreferencias()\">Perfil, preferencias y\r\n seguridad</ius-dropdown-option-item>\r\n </div>\r\n <ius-simple-divider></ius-simple-divider>\r\n <div class=\"container-plan\" [ngClass]=\"{ 'show-more': showMore }\">\r\n <div class=\"inf-plan\">\r\n <div class=\"row-plan-1\">\r\n <div class=\"col-plan-1\">\r\n <span class=\"tx-small tx-tipo-plan\">{{\r\n subscripcionDetalle?.tipoServicio\r\n }}</span>\r\n <div class=\"tx-row-1\">\r\n <span class=\"tx-base tx-name-plan\">{{\r\n subscripcionDetalle?.namePlan\r\n }}</span>\r\n <ius-icon-md iconName=\"icon-help\" class=\"icon-help\"></ius-icon-md>\r\n </div>\r\n <div class=\"tx-row-2 tx-small\">\r\n <div class=\"tx-row-1\">\r\n <span class=\"tx-contador-1\">Total global</span>\r\n <span class=\"tx-contador-2\">{{\r\n subscripcionDetalle?.cantTotal\r\n }}</span>\r\n </div>\r\n <div class=\"tx-row-1\">\r\n <span class=\"tx-contador-1\">Disponible global</span>\r\n <span class=\"tx-contador-2\">{{\r\n subscripcionDetalle?.cantDisponible\r\n }}</span>\r\n </div>\r\n </div>\r\n <span class=\"tx-base tx-estado-plan\">{{\r\n subscripcionDetalle?.estado\r\n }}</span>\r\n @if (subscripcionDetalle?.esPlanGratuito) {\r\n <div class=\"tx-row-1 tx-small tx-prueba\">\r\n <ius-icon-xs iconName=\"icon-schedule\"></ius-icon-xs>\r\n <span>Plan de prueba activo</span>\r\n </div>\r\n }\r\n </div>\r\n <ius-button-circle-tertiary iconName=\"icon-discover-tune\"></ius-button-circle-tertiary>\r\n </div>\r\n <div style=\"width: 100%\">\r\n <ius-progress-bar [total]=\"subscripcionDetalle?.cantTotal ?? 0\" [titleV1]=\"'Judicial'\"\r\n [v1]=\"subscripcionDetalle?.cantJudicial ?? 0\" [titleV2]=\"'SuperSociedades'\"\r\n [v2]=\"subscripcionDetalle?.cantProcesos2 ?? 0\" [titleV3]=\"'Procuraduria'\"\r\n [v3]=\"subscripcionDetalle?.cantProcesos3 ?? 0\">\r\n </ius-progress-bar>\r\n </div>\r\n <div class=\"legend\">\r\n <div class=\"item-counter tx-small\">\r\n <ius-icon-xs iconName=\"icon-storage-set\" class=\"icon-storage-set\"></ius-icon-xs>\r\n <span>{{ subscripcionDetalle?.asignados ?? 0 }}</span>\r\n </div>\r\n <div class=\"item-counter tx-small\">\r\n <ius-icon-xs iconName=\"icon-storage-plus\" class=\"icon-storage-plus\"></ius-icon-xs>\r\n <span>{{\r\n subscripcionDetalle?.cantAsignadaDisponible ?? 0\r\n }}</span>\r\n </div>\r\n </div>\r\n </div>\r\n <ius-simple-divider></ius-simple-divider>\r\n @if (detallesConsumo) {\r\n @for (detail of detallesConsumo; track $index) {\r\n <div class=\"inf-plan\">\r\n <div class=\"row-plan-1\">\r\n <div class=\"col-plan-1\">\r\n <span class=\"tx-small tx-tipo-plan\">{{\r\n detail.tipoServicio\r\n }}</span>\r\n <div class=\"tx-row-1\">\r\n <span class=\"tx-base tx-name-plan\">Por consumo</span>\r\n <ius-icon-md iconName=\"icon-help\" class=\"icon-help\"></ius-icon-md>\r\n </div>\r\n <div class=\"tx-row-2 tx-small\">\r\n <div class=\"tx-row-1\">\r\n <span class=\"tx-contador-1\">Consumo este mes</span>\r\n <span class=\"tx-contador-2\">{{\r\n detail.cantConsumida\r\n }}</span>\r\n </div>\r\n </div>\r\n <span class=\"tx-base tx-estado-plan\">{{\r\n detail.estado\r\n }}</span>\r\n </div>\r\n <ius-button-circle-tertiary iconName=\"icon-discover-tune\"></ius-button-circle-tertiary>\r\n </div>\r\n </div>\r\n <ius-simple-divider></ius-simple-divider>\r\n }\r\n }\r\n </div>\r\n @if(hasMultipleServices) {\r\n <ius-button-standard-tertiary class=\"btn-list\" [iconName]=\"\r\n showMore ? 'icon-keyboard-arrow-up' : 'icon-keyboard-arrow-down'\r\n \" (buttonClicked)=\"clickShowMore()\">\r\n {{ showMore ? \"Mostrar menos\" : \"Mostrar m\u00E1s\" }}\r\n </ius-button-standard-tertiary>\r\n }\r\n <ius-simple-divider></ius-simple-divider>\r\n <div class=\"ctn-items\">\r\n @if (showUsuariosGrupos) {\r\n <ius-menu-item iconName=\"icon-groups\" (buttonClicked)=\"onClickUsuariosRoles()\">Usuarios y roles</ius-menu-item>\r\n }\r\n @if (showConfiguracionCuenta) {\r\n <ius-menu-item iconName=\"icon-build\" (buttonClicked)=\"onClickConfiguracion()\">Configuraci\u00F3n de la\r\n cuenta</ius-menu-item>\r\n }\r\n @if (showPagosFacturacion) {\r\n <ius-menu-item iconName=\"icon-finance-chip\" (buttonClicked)=\"onClickPagos()\">Pagos y facturaci\u00F3n</ius-menu-item>\r\n }\r\n @if (showSubscripcionesServicios) {\r\n <ius-menu-item iconName=\"icon-enterprise\" (buttonClicked)=\"onClickSubsServicios()\">Suscripciones y\r\n servicios</ius-menu-item>\r\n }\r\n @if (showReferir) {\r\n <ius-menu-item iconName=\"icon-stream\" (buttonClicked)=\"onClickReferir()\">Referir servicio</ius-menu-item>\r\n }\r\n </div>\r\n\r\n <ius-simple-divider></ius-simple-divider>\r\n } @else {\r\n <div class=\"container-bottom\">\r\n <span class=\"tx-cambiar\">Cambiar a</span>\r\n <div class=\"container-list\">\r\n @for (account of accountList; track account; let i = $index) {\r\n <ius-button-accounts (accountSelected)=\"onClickAccount(account)\" (onPressedPredeterminado)=\"\r\n clickAccountPredeterminada.emit(account)\r\n \"\r\n ,\r\n (onPressedEditar)=\"clickEditAccount.emit(account)\"\r\n ,\r\n (onPressedDesvincular)=\"clickDesvincularAccount.emit(account)\"\r\n [account]=\"account\"\r\n [showOptionsFlag]=\"false\"\r\n ></ius-button-accounts>\r\n }\r\n </div>\r\n <ius-button-standard-tertiary [iconName]=\"'icon-add'\" (buttonClicked)=\"addAccount()\">Agregar\r\n nueva cuenta</ius-button-standard-tertiary>\r\n </div>\r\n }\r\n </div>\r\n <div class=\"ctn-items mgt-8\">\r\n <ius-menu-item iconName=\"{{\r\n !showFormSwitchAccount ? 'icon-cases' : 'icon-arrow-left-alt'\r\n }}\" (buttonClicked)=\"onClickCambiarCuenta()\">{{\r\n !showFormSwitchAccount\r\n ? \"Cambiar de cuenta\"\r\n : \"Volver al menu de usuario\"\r\n }}</ius-menu-item>\r\n <ius-menu-item iconName=\"icon-exit-to-app\" (buttonClicked)=\"onClickCerrarSesion()\">Cerrar sesi\u00F3n</ius-menu-item>\r\n </div>\r\n</div>", styles: [".h1{font-family:Roboto,sans-serif;font-size:2.375rem;font-weight:500;line-height:46px}.h2{font-family:Roboto,sans-serif;font-size:1.875rem;font-weight:700;line-height:38px}.h3{font-family:Roboto,sans-serif;font-size:1.5rem;font-weight:500;line-height:32px}.h4{font-family:Roboto,sans-serif;font-size:1.25rem;font-weight:700;line-height:26px}.h5{font-family:Roboto,sans-serif;font-size:1.125rem;font-weight:500;line-height:24px;letter-spacing:.18px}.label-large{font-family:Roboto,sans-serif;font-size:1rem;font-weight:500;line-height:22px}.body-large{font-family:Rubik,sans-serif;font-size:1rem;font-weight:400;line-height:22px}.label-base{font-family:Rubik,sans-serif;font-size:.875rem;font-weight:500;line-height:20px;letter-spacing:.28px}.body-base{font-family:Rubik,sans-serif;font-size:.875rem;font-weight:400;line-height:20px;font-style:italic;letter-spacing:.28px}.body-base-1,.body-base-1-1{font-family:Rubik,sans-serif;font-size:.875rem;font-weight:400;line-height:20px;letter-spacing:.28px}.body-sm{font-family:Rubik,sans-serif;font-size:.75rem;font-weight:400;line-height:16px;letter-spacing:.28px}.body-sm-italic{font-family:Rubik,sans-serif;font-size:.75rem;font-weight:400;line-height:16px;font-style:italic;letter-spacing:.28px}.caption-sm{font-family:Rubik,sans-serif;font-size:.75rem;font-weight:500;line-height:16px;letter-spacing:.28px}.caption-sm-italic{font-family:Rubik,sans-serif;font-size:.75rem;font-weight:500;line-height:16px;font-style:italic;letter-spacing:.28px}.tbl-menu{display:flex;width:390px;height:85vh;padding:16px;flex-direction:column}.body-menu{display:flex;flex:1 0 0;flex-direction:column;padding-right:6px;gap:8px;font-family:Rubik,sans-serif;overflow-y:auto;min-height:0}.colum-mn-1{display:flex;flex-direction:column;align-items:flex-start;gap:4px}.text-head-mn{color:#8c8c8c;font-size:.75rem;line-height:16px;letter-spacing:.24px}.icon-acc-circle{color:#595959}.tx-row-1{display:flex;align-items:center;gap:4px}.tx-abog{color:#333;letter-spacing:.2px}.id-ct{padding:4px;border-radius:4px;border:1px solid #d9d9d9}.tx-id-ct{font-weight:500}.tx-rol{font-size:.875rem;color:#595959;line-height:20px}.tx-name-rl{color:#333;letter-spacing:.28px;font-weight:500}.email-inf{display:flex;padding:8px;align-items:center;gap:4px;color:#595959;font-size:.875rem;line-height:20px;letter-spacing:.28px}.icon-alt-email{color:#7caf25}ius-dropdown-option-item{width:100%}.container-plan{overflow:hidden;max-height:200px;transition:max-height .5s cubic-bezier(.4,0,.2,1);flex-shrink:0}.inf-plan{display:flex;padding:8px;flex-direction:column;align-items:flex-start;gap:8px}.show-more{max-height:10000px;transition:max-height .5s cubic-bezier(.4,0,.2,1)}.tx-small{font-size:.75rem;line-height:16px;letter-spacing:.24px}.tx-base{font-size:.875rem;line-height:20px;letter-spacing:.28px}.row-plan-1{display:flex;gap:12px;width:100%}.col-plan-1{display:flex;flex-direction:column;justify-content:center;align-items:flex-start;flex:1 0 0}.icon-help{color:#8c8c8c}.tx-tipo-plan{color:#595959;font-weight:500}.tx-name-plan{color:#333;font-weight:500}.tx-row-2{display:flex;align-items:center;gap:8px}.tx-contador-1{color:#8c8c8c;font-weight:500}.tx-contador-2{color:#333}.tx-estado-plan{color:#7caf25}.tx-cambiar{color:#8c8c8c;font-family:Rubik,sans-serif;font-size:.75rem;font-style:normal;font-weight:400;line-height:16px;letter-spacing:.24px}.mgt-8{margin-top:8px}.progress-container{width:100%;border-radius:100px;height:23px;overflow:hidden;background:#f0f0f0}.progress-bar{display:flex;height:100%}.segment{height:100%}.tipo-1-color-bar{background:#5892ff}.tipo-1-color{color:#5892ff}.tipo-2-color-bar{background:#103ab7}.tipo-2-color{color:#103ab7}.legend{display:flex;width:100%;align-items:center;gap:8px;flex-wrap:wrap}.legend .icon-storage-set{color:#103ab7}.legend .icon-storage-plus{color:#629219}.item-counter{display:flex;align-items:center;gap:4px;color:#333}.tx-name-serv{color:#595959;font-weight:500}.btn-list{margin-bottom:8px}.ctn-items{display:flex;flex-direction:column;gap:4px}.scrollable{overflow-y:auto;overflow-x:hidden}.scrollable::-webkit-scrollbar{-webkit-appearance:none}.scrollable::-webkit-scrollbar:vertical{width:7px}.scrollable::-webkit-scrollbar-thumb{background-color:#d8d6d6;border-radius:20px}.container-bottom{display:flex;flex-direction:column;gap:8px}.container-list{display:flex;flex-direction:column;gap:4px}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "component", type: IconSmComponent, selector: "ius-icon-sm", inputs: ["iconName", "color"] }, { kind: "component", type: IconXsComponent, selector: "ius-icon-xs", inputs: ["iconName", "color"] }, { kind: "component", type: DropdownOptionItemComponent, selector: "ius-dropdown-option-item", inputs: ["iconName", "route"], outputs: ["click"] }, { kind: "component", type: SimpleDividerComponent, selector: "ius-simple-divider" }, { kind: "component", type: IconMdComponent, selector: "ius-icon-md", inputs: ["iconName", "color"] }, { kind: "component", type: ButtonCircleTertiaryComponent, selector: "ius-button-circle-tertiary", inputs: ["disabled", "iconName"], outputs: ["buttonClicked"] }, { kind: "component", type: ButtonStandardTertiaryComponent, selector: "ius-button-standard-tertiary", inputs: ["disabled", "iconName"], outputs: ["buttonClicked"] }, { kind: "component", type: MenuItemComponent, selector: "ius-menu-item", inputs: ["isActive", "iconName", "numberAlerts"], outputs: ["buttonClicked"] }, { kind: "component", type: ProgressBarComponent, selector: "ius-progress-bar", inputs: ["total", "v1", "v2", "v3", "titleV1", "titleV2", "titleV3", "titleV4"] }, { kind: "component", type: ButtonAccountsComponent, selector: "ius-button-accounts", inputs: ["account", "showOptionsFlag"], outputs: ["accountSelected", "onPressedPredeterminado", "onPressedDesvincular", "onPressedEditar", "optionsOpened"] }] }); }
86
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.12", type: ToolbarUserMenuComponent, isStandalone: true, selector: "ius-toolbar-user-menu", inputs: { object: "object", subscripcionDetalle: "subscripcionDetalle", detallesConsumo: "detallesConsumo", accountList: "accountList", showUsuariosGrupos: "showUsuariosGrupos", showConfiguracionCuenta: "showConfiguracionCuenta", showPagosFacturacion: "showPagosFacturacion", showSubscripcionesServicios: "showSubscripcionesServicios", showReferir: "showReferir" }, outputs: { clickPerfilPreferencias: "clickPerfilPreferencias", clickUsuariosRoles: "clickUsuariosRoles", clickConfiguracion: "clickConfiguracion", clickPagos: "clickPagos", clickSubsServicios: "clickSubsServicios", clickCambiarCuenta: "clickCambiarCuenta", clickCerrarSesion: "clickCerrarSesion", clickReferir: "clickReferir", requestClose: "requestClose", clickAccountSelected: "clickAccountSelected", clickAccountPredeterminada: "clickAccountPredeterminada", clickEditAccount: "clickEditAccount", clickDesvincularAccount: "clickDesvincularAccount", clickAgregarAccount: "clickAgregarAccount" }, ngImport: i0, template: "<div class=\"tbl-menu\">\r\n <div class=\"body-menu scrollable\">\r\n <div class=\"colum-mn-1 text-head-mn\">\r\n <span>Est\u00E1s navegando en</span>\r\n <div class=\"tx-row-1\">\r\n <ius-icon-sm iconName=\"icon-account-circle\" class=\"icon-acc-circle\"></ius-icon-sm>\r\n <span class=\"h4 tx-abog\">{{ object.nombreCompany }}</span>\r\n </div>\r\n <div class=\"tx-row-1 id-ct\">\r\n <span>ID Cuenta</span>\r\n <span class=\"tx-id-ct\">{{ object.cuentaID }}</span>\r\n </div>\r\n <div class=\"tx-row-1 tx-rol\">\r\n <span>Tu rol</span>\r\n <span class=\"tx-name-rl\">{{ object.rol }}</span>\r\n </div>\r\n <ius-simple-divider></ius-simple-divider>\r\n </div>\r\n @if (!showFormSwitchAccount) {\r\n <div class=\"colum-mn-1\">\r\n <div class=\"email-inf\">\r\n <ius-icon-xs iconName=\"icon-alternate-email\" class=\"icon-alt-email\"></ius-icon-xs>\r\n <span>{{ object.correo }}</span>\r\n </div>\r\n <ius-dropdown-option-item (click)=\"onClickPerfilPreferencias()\">Perfil, preferencias y\r\n seguridad</ius-dropdown-option-item>\r\n </div>\r\n <ius-simple-divider></ius-simple-divider>\r\n <div class=\"container-plan\" [ngClass]=\"{ 'show-more': showMore }\">\r\n <div class=\"inf-plan\">\r\n <div class=\"row-plan-1\">\r\n <div class=\"col-plan-1\">\r\n <span class=\"tx-small tx-tipo-plan\">{{\r\n subscripcionDetalle?.tipoServicio\r\n }}</span>\r\n <div class=\"tx-row-1\">\r\n <span class=\"tx-base tx-name-plan\">{{\r\n subscripcionDetalle?.namePlan\r\n }}</span>\r\n <ius-icon-md iconName=\"icon-help\" class=\"icon-help\"></ius-icon-md>\r\n </div>\r\n <div class=\"tx-row-2 tx-small\">\r\n <div class=\"tx-row-1\">\r\n <span class=\"tx-contador-1\">Total global</span>\r\n <span class=\"tx-contador-2\">{{\r\n subscripcionDetalle?.cantTotal\r\n }}</span>\r\n </div>\r\n <div class=\"tx-row-1\">\r\n <span class=\"tx-contador-1\">Disponible global</span>\r\n <span class=\"tx-contador-2\">{{\r\n subscripcionDetalle?.cantDisponible\r\n }}</span>\r\n </div>\r\n </div>\r\n <span class=\"tx-base tx-estado-plan\">{{\r\n subscripcionDetalle?.estado\r\n }}</span>\r\n @if (subscripcionDetalle?.esPlanGratuito) {\r\n <div class=\"tx-row-1 tx-small tx-prueba\">\r\n <ius-icon-xs iconName=\"icon-schedule\"></ius-icon-xs>\r\n <span>Plan de prueba activo</span>\r\n </div>\r\n }\r\n </div>\r\n <ius-button-circle-tertiary iconName=\"icon-discover-tune\"></ius-button-circle-tertiary>\r\n </div>\r\n <div style=\"width: 100%\">\r\n <ius-progress-bar [total]=\"subscripcionDetalle?.cantTotal ?? 0\" [titleV1]=\"'Judicial'\"\r\n [v1]=\"subscripcionDetalle?.cantJudicial ?? 0\" [titleV2]=\"'SuperSociedades'\"\r\n [v2]=\"subscripcionDetalle?.cantProcesos2 ?? 0\" [titleV3]=\"'Procuraduria'\"\r\n [v3]=\"subscripcionDetalle?.cantProcesos3 ?? 0\">\r\n </ius-progress-bar>\r\n </div>\r\n <div class=\"legend\">\r\n <div class=\"item-counter tx-small\">\r\n <ius-icon-xs iconName=\"icon-storage-set\" class=\"icon-storage-set\"></ius-icon-xs>\r\n <span>{{ subscripcionDetalle?.asignados ?? 0 }}</span>\r\n </div>\r\n <div class=\"item-counter tx-small\">\r\n <ius-icon-xs iconName=\"icon-storage-plus\" class=\"icon-storage-plus\"></ius-icon-xs>\r\n <span>{{\r\n subscripcionDetalle?.cantAsignadaDisponible ?? 0\r\n }}</span>\r\n </div>\r\n </div>\r\n </div>\r\n <ius-simple-divider></ius-simple-divider>\r\n @if (detallesConsumo) {\r\n @for (detail of detallesConsumo; track $index) {\r\n <div class=\"inf-plan\">\r\n <div class=\"row-plan-1\">\r\n <div class=\"col-plan-1\">\r\n <span class=\"tx-small tx-tipo-plan\">{{\r\n detail.tipoServicio\r\n }}</span>\r\n <div class=\"tx-row-1\">\r\n <span class=\"tx-base tx-name-plan\">Por consumo</span>\r\n <ius-icon-md iconName=\"icon-help\" class=\"icon-help\"></ius-icon-md>\r\n </div>\r\n <div class=\"tx-row-2 tx-small\">\r\n <div class=\"tx-row-1\">\r\n <span class=\"tx-contador-1\">Consumo este mes</span>\r\n <span class=\"tx-contador-2\">{{\r\n detail.cantConsumida\r\n }}</span>\r\n </div>\r\n </div>\r\n <span class=\"tx-base tx-estado-plan\">{{\r\n detail.estado\r\n }}</span>\r\n </div>\r\n <ius-button-circle-tertiary iconName=\"icon-discover-tune\"></ius-button-circle-tertiary>\r\n </div>\r\n </div>\r\n <ius-simple-divider></ius-simple-divider>\r\n }\r\n }\r\n </div>\r\n @if(hasMultipleServices) {\r\n <ius-button-standard-tertiary class=\"btn-list\" [iconName]=\"\r\n showMore ? 'icon-keyboard-arrow-up' : 'icon-keyboard-arrow-down'\r\n \" (buttonClicked)=\"clickShowMore()\">\r\n {{ showMore ? \"Mostrar menos\" : \"Mostrar m\u00E1s\" }}\r\n </ius-button-standard-tertiary>\r\n }\r\n <ius-simple-divider></ius-simple-divider>\r\n <div class=\"ctn-items\">\r\n @if (showUsuariosGrupos) {\r\n <ius-menu-item iconName=\"icon-groups\" iconColorDefault=\"#595959\" iconColorHovered=\"#595959\" (buttonClicked)=\"onClickUsuariosRoles()\">Usuarios y roles</ius-menu-item>\r\n }\r\n @if (showConfiguracionCuenta) {\r\n <ius-menu-item iconName=\"icon-build\" iconColorDefault=\"#595959\" iconColorHovered=\"#595959\" (buttonClicked)=\"onClickConfiguracion()\">Configuraci\u00F3n de la\r\n cuenta</ius-menu-item>\r\n }\r\n @if (showPagosFacturacion) {\r\n <ius-menu-item iconName=\"icon-finance-chip\" iconColorDefault=\"#595959\" iconColorHovered=\"#595959\" (buttonClicked)=\"onClickPagos()\">Pagos y facturaci\u00F3n</ius-menu-item>\r\n }\r\n @if (showSubscripcionesServicios) {\r\n <ius-menu-item iconName=\"icon-enterprise\" iconColorDefault=\"#595959\" iconColorHovered=\"#595959\" (buttonClicked)=\"onClickSubsServicios()\">Suscripciones y\r\n servicios</ius-menu-item>\r\n }\r\n @if (showReferir) {\r\n <ius-menu-item iconName=\"icon-stream\" iconColorDefault=\"#595959\" iconColorHovered=\"#595959\" (buttonClicked)=\"onClickReferir()\">Referir servicio</ius-menu-item>\r\n }\r\n </div>\r\n\r\n <ius-simple-divider></ius-simple-divider>\r\n } @else {\r\n <div class=\"container-bottom\">\r\n <span class=\"tx-cambiar\">Cambiar a</span>\r\n <div class=\"container-list\">\r\n @for (account of accountList; track account; let i = $index) {\r\n <ius-button-accounts (accountSelected)=\"onClickAccount(account)\" (onPressedPredeterminado)=\"\r\n clickAccountPredeterminada.emit(account)\r\n \"\r\n ,\r\n (onPressedEditar)=\"clickEditAccount.emit(account)\"\r\n ,\r\n (onPressedDesvincular)=\"clickDesvincularAccount.emit(account)\"\r\n [account]=\"account\"\r\n [showOptionsFlag]=\"false\"\r\n ></ius-button-accounts>\r\n }\r\n </div>\r\n <ius-button-standard-tertiary [iconName]=\"'icon-add'\" (buttonClicked)=\"addAccount()\">Agregar\r\n nueva cuenta</ius-button-standard-tertiary>\r\n </div>\r\n }\r\n </div>\r\n <div class=\"ctn-items mgt-8\">\r\n <ius-menu-item iconName=\"{{\r\n !showFormSwitchAccount ? 'icon-cases' : 'icon-arrow-left-alt'\r\n }}\" (buttonClicked)=\"onClickCambiarCuenta()\">{{\r\n !showFormSwitchAccount\r\n ? \"Cambiar de cuenta\"\r\n : \"Volver al menu de usuario\"\r\n }}</ius-menu-item>\r\n <ius-menu-item iconName=\"icon-exit-to-app\" (buttonClicked)=\"onClickCerrarSesion()\">Cerrar sesi\u00F3n</ius-menu-item>\r\n </div>\r\n</div>", styles: [".h1{font-family:Roboto,sans-serif;font-size:2.375rem;font-weight:500;line-height:46px}.h2{font-family:Roboto,sans-serif;font-size:1.875rem;font-weight:700;line-height:38px}.h3{font-family:Roboto,sans-serif;font-size:1.5rem;font-weight:500;line-height:32px}.h4{font-family:Roboto,sans-serif;font-size:1.25rem;font-weight:700;line-height:26px}.h5{font-family:Roboto,sans-serif;font-size:1.125rem;font-weight:500;line-height:24px;letter-spacing:.18px}.label-large{font-family:Roboto,sans-serif;font-size:1rem;font-weight:500;line-height:22px}.body-large{font-family:Rubik,sans-serif;font-size:1rem;font-weight:400;line-height:22px}.label-base{font-family:Rubik,sans-serif;font-size:.875rem;font-weight:500;line-height:20px;letter-spacing:.28px}.body-base{font-family:Rubik,sans-serif;font-size:.875rem;font-weight:400;line-height:20px;font-style:italic;letter-spacing:.28px}.body-base-1,.body-base-1-1{font-family:Rubik,sans-serif;font-size:.875rem;font-weight:400;line-height:20px;letter-spacing:.28px}.body-sm{font-family:Rubik,sans-serif;font-size:.75rem;font-weight:400;line-height:16px;letter-spacing:.28px}.body-sm-italic{font-family:Rubik,sans-serif;font-size:.75rem;font-weight:400;line-height:16px;font-style:italic;letter-spacing:.28px}.caption-sm{font-family:Rubik,sans-serif;font-size:.75rem;font-weight:500;line-height:16px;letter-spacing:.28px}.caption-sm-italic{font-family:Rubik,sans-serif;font-size:.75rem;font-weight:500;line-height:16px;font-style:italic;letter-spacing:.28px}.tbl-menu{display:flex;width:390px;height:85vh;padding:16px;flex-direction:column}.body-menu{display:flex;flex:1 0 0;flex-direction:column;padding-right:6px;gap:8px;font-family:Rubik,sans-serif;overflow-y:auto;min-height:0}.colum-mn-1{display:flex;flex-direction:column;align-items:flex-start;gap:4px}.text-head-mn{color:#8c8c8c;font-size:.75rem;line-height:16px;letter-spacing:.24px}.icon-acc-circle{color:#595959}.tx-row-1{display:flex;align-items:center;gap:4px}.tx-abog{color:#333;letter-spacing:.2px}.id-ct{padding:4px;border-radius:4px;border:1px solid #d9d9d9}.tx-id-ct{font-weight:500}.tx-rol{font-size:.875rem;color:#595959;line-height:20px}.tx-name-rl{color:#333;letter-spacing:.28px;font-weight:500}.email-inf{display:flex;padding:8px;align-items:center;gap:4px;color:#595959;font-size:.875rem;line-height:20px;letter-spacing:.28px}.icon-alt-email{color:#7caf25}ius-dropdown-option-item{width:100%}.container-plan{overflow:hidden;max-height:200px;transition:max-height .5s cubic-bezier(.4,0,.2,1);flex-shrink:0}.inf-plan{display:flex;padding:8px;flex-direction:column;align-items:flex-start;gap:8px}.show-more{max-height:10000px;transition:max-height .5s cubic-bezier(.4,0,.2,1)}.tx-small{font-size:.75rem;line-height:16px;letter-spacing:.24px}.tx-base{font-size:.875rem;line-height:20px;letter-spacing:.28px}.row-plan-1{display:flex;gap:12px;width:100%}.col-plan-1{display:flex;flex-direction:column;justify-content:center;align-items:flex-start;flex:1 0 0}.icon-help{color:#8c8c8c}.tx-tipo-plan{color:#595959;font-weight:500}.tx-name-plan{color:#333;font-weight:500}.tx-row-2{display:flex;align-items:center;gap:8px}.tx-contador-1{color:#8c8c8c;font-weight:500}.tx-contador-2{color:#333}.tx-estado-plan{color:#7caf25}.tx-cambiar{color:#8c8c8c;font-family:Rubik,sans-serif;font-size:.75rem;font-style:normal;font-weight:400;line-height:16px;letter-spacing:.24px}.mgt-8{margin-top:8px}.progress-container{width:100%;border-radius:100px;height:23px;overflow:hidden;background:#f0f0f0}.progress-bar{display:flex;height:100%}.segment{height:100%}.tipo-1-color-bar{background:#5892ff}.tipo-1-color{color:#5892ff}.tipo-2-color-bar{background:#103ab7}.tipo-2-color{color:#103ab7}.legend{display:flex;width:100%;align-items:center;gap:8px;flex-wrap:wrap}.legend .icon-storage-set{color:#103ab7}.legend .icon-storage-plus{color:#629219}.item-counter{display:flex;align-items:center;gap:4px;color:#333}.tx-name-serv{color:#595959;font-weight:500}.btn-list{margin-bottom:8px}.ctn-items{display:flex;flex-direction:column;gap:4px}.scrollable{overflow-y:auto;overflow-x:hidden}.scrollable::-webkit-scrollbar{-webkit-appearance:none}.scrollable::-webkit-scrollbar:vertical{width:7px}.scrollable::-webkit-scrollbar-thumb{background-color:#d8d6d6;border-radius:20px}.container-bottom{display:flex;flex-direction:column;gap:8px}.container-list{display:flex;flex-direction:column;gap:4px}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "component", type: IconSmComponent, selector: "ius-icon-sm", inputs: ["iconName", "color"] }, { kind: "component", type: IconXsComponent, selector: "ius-icon-xs", inputs: ["iconName", "color"] }, { kind: "component", type: DropdownOptionItemComponent, selector: "ius-dropdown-option-item", inputs: ["iconName", "route"], outputs: ["click"] }, { kind: "component", type: SimpleDividerComponent, selector: "ius-simple-divider" }, { kind: "component", type: IconMdComponent, selector: "ius-icon-md", inputs: ["iconName", "color"] }, { kind: "component", type: ButtonCircleTertiaryComponent, selector: "ius-button-circle-tertiary", inputs: ["disabled", "iconName"], outputs: ["buttonClicked"] }, { kind: "component", type: ButtonStandardTertiaryComponent, selector: "ius-button-standard-tertiary", inputs: ["disabled", "iconName", "prefixIcon", "sufixIcon"], outputs: ["buttonClicked"] }, { kind: "component", type: MenuItemComponent, selector: "ius-menu-item", inputs: ["isActive", "iconName", "numberAlerts", "iconColorActive", "iconColorDefault", "iconColorHovered"], outputs: ["buttonClicked"] }, { kind: "component", type: ProgressBarComponent, selector: "ius-progress-bar", inputs: ["total", "v1", "v2", "v3", "titleV1", "titleV2", "titleV3", "titleV4"] }, { kind: "component", type: ButtonAccountsComponent, selector: "ius-button-accounts", inputs: ["account", "showOptionsFlag"], outputs: ["accountSelected", "onPressedPredeterminado", "onPressedDesvincular", "onPressedEditar", "optionsOpened"] }] }); }
87
87
  }
88
88
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: ToolbarUserMenuComponent, decorators: [{
89
89
  type: Component,
90
- args: [{ selector: 'ius-toolbar-user-menu', standalone: true, imports: [CommonModule, IconSmComponent, IconXsComponent, DropdownOptionItemComponent, SimpleDividerComponent, IconMdComponent, ButtonCircleTertiaryComponent, ButtonStandardTertiaryComponent, MenuItemComponent, ProgressBarComponent, ButtonAccountsComponent], template: "<div class=\"tbl-menu\">\r\n <div class=\"body-menu scrollable\">\r\n <div class=\"colum-mn-1 text-head-mn\">\r\n <span>Est\u00E1s navegando en</span>\r\n <div class=\"tx-row-1\">\r\n <ius-icon-sm iconName=\"icon-account-circle\" class=\"icon-acc-circle\"></ius-icon-sm>\r\n <span class=\"h4 tx-abog\">{{ object.nombreCompany }}</span>\r\n </div>\r\n <div class=\"tx-row-1 id-ct\">\r\n <span>ID Cuenta</span>\r\n <span class=\"tx-id-ct\">{{ object.cuentaID }}</span>\r\n </div>\r\n <div class=\"tx-row-1 tx-rol\">\r\n <span>Tu rol</span>\r\n <span class=\"tx-name-rl\">{{ object.rol }}</span>\r\n </div>\r\n <ius-simple-divider></ius-simple-divider>\r\n </div>\r\n @if (!showFormSwitchAccount) {\r\n <div class=\"colum-mn-1\">\r\n <div class=\"email-inf\">\r\n <ius-icon-xs iconName=\"icon-alternate-email\" class=\"icon-alt-email\"></ius-icon-xs>\r\n <span>{{ object.correo }}</span>\r\n </div>\r\n <ius-dropdown-option-item (click)=\"onClickPerfilPreferencias()\">Perfil, preferencias y\r\n seguridad</ius-dropdown-option-item>\r\n </div>\r\n <ius-simple-divider></ius-simple-divider>\r\n <div class=\"container-plan\" [ngClass]=\"{ 'show-more': showMore }\">\r\n <div class=\"inf-plan\">\r\n <div class=\"row-plan-1\">\r\n <div class=\"col-plan-1\">\r\n <span class=\"tx-small tx-tipo-plan\">{{\r\n subscripcionDetalle?.tipoServicio\r\n }}</span>\r\n <div class=\"tx-row-1\">\r\n <span class=\"tx-base tx-name-plan\">{{\r\n subscripcionDetalle?.namePlan\r\n }}</span>\r\n <ius-icon-md iconName=\"icon-help\" class=\"icon-help\"></ius-icon-md>\r\n </div>\r\n <div class=\"tx-row-2 tx-small\">\r\n <div class=\"tx-row-1\">\r\n <span class=\"tx-contador-1\">Total global</span>\r\n <span class=\"tx-contador-2\">{{\r\n subscripcionDetalle?.cantTotal\r\n }}</span>\r\n </div>\r\n <div class=\"tx-row-1\">\r\n <span class=\"tx-contador-1\">Disponible global</span>\r\n <span class=\"tx-contador-2\">{{\r\n subscripcionDetalle?.cantDisponible\r\n }}</span>\r\n </div>\r\n </div>\r\n <span class=\"tx-base tx-estado-plan\">{{\r\n subscripcionDetalle?.estado\r\n }}</span>\r\n @if (subscripcionDetalle?.esPlanGratuito) {\r\n <div class=\"tx-row-1 tx-small tx-prueba\">\r\n <ius-icon-xs iconName=\"icon-schedule\"></ius-icon-xs>\r\n <span>Plan de prueba activo</span>\r\n </div>\r\n }\r\n </div>\r\n <ius-button-circle-tertiary iconName=\"icon-discover-tune\"></ius-button-circle-tertiary>\r\n </div>\r\n <div style=\"width: 100%\">\r\n <ius-progress-bar [total]=\"subscripcionDetalle?.cantTotal ?? 0\" [titleV1]=\"'Judicial'\"\r\n [v1]=\"subscripcionDetalle?.cantJudicial ?? 0\" [titleV2]=\"'SuperSociedades'\"\r\n [v2]=\"subscripcionDetalle?.cantProcesos2 ?? 0\" [titleV3]=\"'Procuraduria'\"\r\n [v3]=\"subscripcionDetalle?.cantProcesos3 ?? 0\">\r\n </ius-progress-bar>\r\n </div>\r\n <div class=\"legend\">\r\n <div class=\"item-counter tx-small\">\r\n <ius-icon-xs iconName=\"icon-storage-set\" class=\"icon-storage-set\"></ius-icon-xs>\r\n <span>{{ subscripcionDetalle?.asignados ?? 0 }}</span>\r\n </div>\r\n <div class=\"item-counter tx-small\">\r\n <ius-icon-xs iconName=\"icon-storage-plus\" class=\"icon-storage-plus\"></ius-icon-xs>\r\n <span>{{\r\n subscripcionDetalle?.cantAsignadaDisponible ?? 0\r\n }}</span>\r\n </div>\r\n </div>\r\n </div>\r\n <ius-simple-divider></ius-simple-divider>\r\n @if (detallesConsumo) {\r\n @for (detail of detallesConsumo; track $index) {\r\n <div class=\"inf-plan\">\r\n <div class=\"row-plan-1\">\r\n <div class=\"col-plan-1\">\r\n <span class=\"tx-small tx-tipo-plan\">{{\r\n detail.tipoServicio\r\n }}</span>\r\n <div class=\"tx-row-1\">\r\n <span class=\"tx-base tx-name-plan\">Por consumo</span>\r\n <ius-icon-md iconName=\"icon-help\" class=\"icon-help\"></ius-icon-md>\r\n </div>\r\n <div class=\"tx-row-2 tx-small\">\r\n <div class=\"tx-row-1\">\r\n <span class=\"tx-contador-1\">Consumo este mes</span>\r\n <span class=\"tx-contador-2\">{{\r\n detail.cantConsumida\r\n }}</span>\r\n </div>\r\n </div>\r\n <span class=\"tx-base tx-estado-plan\">{{\r\n detail.estado\r\n }}</span>\r\n </div>\r\n <ius-button-circle-tertiary iconName=\"icon-discover-tune\"></ius-button-circle-tertiary>\r\n </div>\r\n </div>\r\n <ius-simple-divider></ius-simple-divider>\r\n }\r\n }\r\n </div>\r\n @if(hasMultipleServices) {\r\n <ius-button-standard-tertiary class=\"btn-list\" [iconName]=\"\r\n showMore ? 'icon-keyboard-arrow-up' : 'icon-keyboard-arrow-down'\r\n \" (buttonClicked)=\"clickShowMore()\">\r\n {{ showMore ? \"Mostrar menos\" : \"Mostrar m\u00E1s\" }}\r\n </ius-button-standard-tertiary>\r\n }\r\n <ius-simple-divider></ius-simple-divider>\r\n <div class=\"ctn-items\">\r\n @if (showUsuariosGrupos) {\r\n <ius-menu-item iconName=\"icon-groups\" (buttonClicked)=\"onClickUsuariosRoles()\">Usuarios y roles</ius-menu-item>\r\n }\r\n @if (showConfiguracionCuenta) {\r\n <ius-menu-item iconName=\"icon-build\" (buttonClicked)=\"onClickConfiguracion()\">Configuraci\u00F3n de la\r\n cuenta</ius-menu-item>\r\n }\r\n @if (showPagosFacturacion) {\r\n <ius-menu-item iconName=\"icon-finance-chip\" (buttonClicked)=\"onClickPagos()\">Pagos y facturaci\u00F3n</ius-menu-item>\r\n }\r\n @if (showSubscripcionesServicios) {\r\n <ius-menu-item iconName=\"icon-enterprise\" (buttonClicked)=\"onClickSubsServicios()\">Suscripciones y\r\n servicios</ius-menu-item>\r\n }\r\n @if (showReferir) {\r\n <ius-menu-item iconName=\"icon-stream\" (buttonClicked)=\"onClickReferir()\">Referir servicio</ius-menu-item>\r\n }\r\n </div>\r\n\r\n <ius-simple-divider></ius-simple-divider>\r\n } @else {\r\n <div class=\"container-bottom\">\r\n <span class=\"tx-cambiar\">Cambiar a</span>\r\n <div class=\"container-list\">\r\n @for (account of accountList; track account; let i = $index) {\r\n <ius-button-accounts (accountSelected)=\"onClickAccount(account)\" (onPressedPredeterminado)=\"\r\n clickAccountPredeterminada.emit(account)\r\n \"\r\n ,\r\n (onPressedEditar)=\"clickEditAccount.emit(account)\"\r\n ,\r\n (onPressedDesvincular)=\"clickDesvincularAccount.emit(account)\"\r\n [account]=\"account\"\r\n [showOptionsFlag]=\"false\"\r\n ></ius-button-accounts>\r\n }\r\n </div>\r\n <ius-button-standard-tertiary [iconName]=\"'icon-add'\" (buttonClicked)=\"addAccount()\">Agregar\r\n nueva cuenta</ius-button-standard-tertiary>\r\n </div>\r\n }\r\n </div>\r\n <div class=\"ctn-items mgt-8\">\r\n <ius-menu-item iconName=\"{{\r\n !showFormSwitchAccount ? 'icon-cases' : 'icon-arrow-left-alt'\r\n }}\" (buttonClicked)=\"onClickCambiarCuenta()\">{{\r\n !showFormSwitchAccount\r\n ? \"Cambiar de cuenta\"\r\n : \"Volver al menu de usuario\"\r\n }}</ius-menu-item>\r\n <ius-menu-item iconName=\"icon-exit-to-app\" (buttonClicked)=\"onClickCerrarSesion()\">Cerrar sesi\u00F3n</ius-menu-item>\r\n </div>\r\n</div>", styles: [".h1{font-family:Roboto,sans-serif;font-size:2.375rem;font-weight:500;line-height:46px}.h2{font-family:Roboto,sans-serif;font-size:1.875rem;font-weight:700;line-height:38px}.h3{font-family:Roboto,sans-serif;font-size:1.5rem;font-weight:500;line-height:32px}.h4{font-family:Roboto,sans-serif;font-size:1.25rem;font-weight:700;line-height:26px}.h5{font-family:Roboto,sans-serif;font-size:1.125rem;font-weight:500;line-height:24px;letter-spacing:.18px}.label-large{font-family:Roboto,sans-serif;font-size:1rem;font-weight:500;line-height:22px}.body-large{font-family:Rubik,sans-serif;font-size:1rem;font-weight:400;line-height:22px}.label-base{font-family:Rubik,sans-serif;font-size:.875rem;font-weight:500;line-height:20px;letter-spacing:.28px}.body-base{font-family:Rubik,sans-serif;font-size:.875rem;font-weight:400;line-height:20px;font-style:italic;letter-spacing:.28px}.body-base-1,.body-base-1-1{font-family:Rubik,sans-serif;font-size:.875rem;font-weight:400;line-height:20px;letter-spacing:.28px}.body-sm{font-family:Rubik,sans-serif;font-size:.75rem;font-weight:400;line-height:16px;letter-spacing:.28px}.body-sm-italic{font-family:Rubik,sans-serif;font-size:.75rem;font-weight:400;line-height:16px;font-style:italic;letter-spacing:.28px}.caption-sm{font-family:Rubik,sans-serif;font-size:.75rem;font-weight:500;line-height:16px;letter-spacing:.28px}.caption-sm-italic{font-family:Rubik,sans-serif;font-size:.75rem;font-weight:500;line-height:16px;font-style:italic;letter-spacing:.28px}.tbl-menu{display:flex;width:390px;height:85vh;padding:16px;flex-direction:column}.body-menu{display:flex;flex:1 0 0;flex-direction:column;padding-right:6px;gap:8px;font-family:Rubik,sans-serif;overflow-y:auto;min-height:0}.colum-mn-1{display:flex;flex-direction:column;align-items:flex-start;gap:4px}.text-head-mn{color:#8c8c8c;font-size:.75rem;line-height:16px;letter-spacing:.24px}.icon-acc-circle{color:#595959}.tx-row-1{display:flex;align-items:center;gap:4px}.tx-abog{color:#333;letter-spacing:.2px}.id-ct{padding:4px;border-radius:4px;border:1px solid #d9d9d9}.tx-id-ct{font-weight:500}.tx-rol{font-size:.875rem;color:#595959;line-height:20px}.tx-name-rl{color:#333;letter-spacing:.28px;font-weight:500}.email-inf{display:flex;padding:8px;align-items:center;gap:4px;color:#595959;font-size:.875rem;line-height:20px;letter-spacing:.28px}.icon-alt-email{color:#7caf25}ius-dropdown-option-item{width:100%}.container-plan{overflow:hidden;max-height:200px;transition:max-height .5s cubic-bezier(.4,0,.2,1);flex-shrink:0}.inf-plan{display:flex;padding:8px;flex-direction:column;align-items:flex-start;gap:8px}.show-more{max-height:10000px;transition:max-height .5s cubic-bezier(.4,0,.2,1)}.tx-small{font-size:.75rem;line-height:16px;letter-spacing:.24px}.tx-base{font-size:.875rem;line-height:20px;letter-spacing:.28px}.row-plan-1{display:flex;gap:12px;width:100%}.col-plan-1{display:flex;flex-direction:column;justify-content:center;align-items:flex-start;flex:1 0 0}.icon-help{color:#8c8c8c}.tx-tipo-plan{color:#595959;font-weight:500}.tx-name-plan{color:#333;font-weight:500}.tx-row-2{display:flex;align-items:center;gap:8px}.tx-contador-1{color:#8c8c8c;font-weight:500}.tx-contador-2{color:#333}.tx-estado-plan{color:#7caf25}.tx-cambiar{color:#8c8c8c;font-family:Rubik,sans-serif;font-size:.75rem;font-style:normal;font-weight:400;line-height:16px;letter-spacing:.24px}.mgt-8{margin-top:8px}.progress-container{width:100%;border-radius:100px;height:23px;overflow:hidden;background:#f0f0f0}.progress-bar{display:flex;height:100%}.segment{height:100%}.tipo-1-color-bar{background:#5892ff}.tipo-1-color{color:#5892ff}.tipo-2-color-bar{background:#103ab7}.tipo-2-color{color:#103ab7}.legend{display:flex;width:100%;align-items:center;gap:8px;flex-wrap:wrap}.legend .icon-storage-set{color:#103ab7}.legend .icon-storage-plus{color:#629219}.item-counter{display:flex;align-items:center;gap:4px;color:#333}.tx-name-serv{color:#595959;font-weight:500}.btn-list{margin-bottom:8px}.ctn-items{display:flex;flex-direction:column;gap:4px}.scrollable{overflow-y:auto;overflow-x:hidden}.scrollable::-webkit-scrollbar{-webkit-appearance:none}.scrollable::-webkit-scrollbar:vertical{width:7px}.scrollable::-webkit-scrollbar-thumb{background-color:#d8d6d6;border-radius:20px}.container-bottom{display:flex;flex-direction:column;gap:8px}.container-list{display:flex;flex-direction:column;gap:4px}\n"] }]
90
+ args: [{ selector: 'ius-toolbar-user-menu', standalone: true, imports: [CommonModule, IconSmComponent, IconXsComponent, DropdownOptionItemComponent, SimpleDividerComponent, IconMdComponent, ButtonCircleTertiaryComponent, ButtonStandardTertiaryComponent, MenuItemComponent, ProgressBarComponent, ButtonAccountsComponent], template: "<div class=\"tbl-menu\">\r\n <div class=\"body-menu scrollable\">\r\n <div class=\"colum-mn-1 text-head-mn\">\r\n <span>Est\u00E1s navegando en</span>\r\n <div class=\"tx-row-1\">\r\n <ius-icon-sm iconName=\"icon-account-circle\" class=\"icon-acc-circle\"></ius-icon-sm>\r\n <span class=\"h4 tx-abog\">{{ object.nombreCompany }}</span>\r\n </div>\r\n <div class=\"tx-row-1 id-ct\">\r\n <span>ID Cuenta</span>\r\n <span class=\"tx-id-ct\">{{ object.cuentaID }}</span>\r\n </div>\r\n <div class=\"tx-row-1 tx-rol\">\r\n <span>Tu rol</span>\r\n <span class=\"tx-name-rl\">{{ object.rol }}</span>\r\n </div>\r\n <ius-simple-divider></ius-simple-divider>\r\n </div>\r\n @if (!showFormSwitchAccount) {\r\n <div class=\"colum-mn-1\">\r\n <div class=\"email-inf\">\r\n <ius-icon-xs iconName=\"icon-alternate-email\" class=\"icon-alt-email\"></ius-icon-xs>\r\n <span>{{ object.correo }}</span>\r\n </div>\r\n <ius-dropdown-option-item (click)=\"onClickPerfilPreferencias()\">Perfil, preferencias y\r\n seguridad</ius-dropdown-option-item>\r\n </div>\r\n <ius-simple-divider></ius-simple-divider>\r\n <div class=\"container-plan\" [ngClass]=\"{ 'show-more': showMore }\">\r\n <div class=\"inf-plan\">\r\n <div class=\"row-plan-1\">\r\n <div class=\"col-plan-1\">\r\n <span class=\"tx-small tx-tipo-plan\">{{\r\n subscripcionDetalle?.tipoServicio\r\n }}</span>\r\n <div class=\"tx-row-1\">\r\n <span class=\"tx-base tx-name-plan\">{{\r\n subscripcionDetalle?.namePlan\r\n }}</span>\r\n <ius-icon-md iconName=\"icon-help\" class=\"icon-help\"></ius-icon-md>\r\n </div>\r\n <div class=\"tx-row-2 tx-small\">\r\n <div class=\"tx-row-1\">\r\n <span class=\"tx-contador-1\">Total global</span>\r\n <span class=\"tx-contador-2\">{{\r\n subscripcionDetalle?.cantTotal\r\n }}</span>\r\n </div>\r\n <div class=\"tx-row-1\">\r\n <span class=\"tx-contador-1\">Disponible global</span>\r\n <span class=\"tx-contador-2\">{{\r\n subscripcionDetalle?.cantDisponible\r\n }}</span>\r\n </div>\r\n </div>\r\n <span class=\"tx-base tx-estado-plan\">{{\r\n subscripcionDetalle?.estado\r\n }}</span>\r\n @if (subscripcionDetalle?.esPlanGratuito) {\r\n <div class=\"tx-row-1 tx-small tx-prueba\">\r\n <ius-icon-xs iconName=\"icon-schedule\"></ius-icon-xs>\r\n <span>Plan de prueba activo</span>\r\n </div>\r\n }\r\n </div>\r\n <ius-button-circle-tertiary iconName=\"icon-discover-tune\"></ius-button-circle-tertiary>\r\n </div>\r\n <div style=\"width: 100%\">\r\n <ius-progress-bar [total]=\"subscripcionDetalle?.cantTotal ?? 0\" [titleV1]=\"'Judicial'\"\r\n [v1]=\"subscripcionDetalle?.cantJudicial ?? 0\" [titleV2]=\"'SuperSociedades'\"\r\n [v2]=\"subscripcionDetalle?.cantProcesos2 ?? 0\" [titleV3]=\"'Procuraduria'\"\r\n [v3]=\"subscripcionDetalle?.cantProcesos3 ?? 0\">\r\n </ius-progress-bar>\r\n </div>\r\n <div class=\"legend\">\r\n <div class=\"item-counter tx-small\">\r\n <ius-icon-xs iconName=\"icon-storage-set\" class=\"icon-storage-set\"></ius-icon-xs>\r\n <span>{{ subscripcionDetalle?.asignados ?? 0 }}</span>\r\n </div>\r\n <div class=\"item-counter tx-small\">\r\n <ius-icon-xs iconName=\"icon-storage-plus\" class=\"icon-storage-plus\"></ius-icon-xs>\r\n <span>{{\r\n subscripcionDetalle?.cantAsignadaDisponible ?? 0\r\n }}</span>\r\n </div>\r\n </div>\r\n </div>\r\n <ius-simple-divider></ius-simple-divider>\r\n @if (detallesConsumo) {\r\n @for (detail of detallesConsumo; track $index) {\r\n <div class=\"inf-plan\">\r\n <div class=\"row-plan-1\">\r\n <div class=\"col-plan-1\">\r\n <span class=\"tx-small tx-tipo-plan\">{{\r\n detail.tipoServicio\r\n }}</span>\r\n <div class=\"tx-row-1\">\r\n <span class=\"tx-base tx-name-plan\">Por consumo</span>\r\n <ius-icon-md iconName=\"icon-help\" class=\"icon-help\"></ius-icon-md>\r\n </div>\r\n <div class=\"tx-row-2 tx-small\">\r\n <div class=\"tx-row-1\">\r\n <span class=\"tx-contador-1\">Consumo este mes</span>\r\n <span class=\"tx-contador-2\">{{\r\n detail.cantConsumida\r\n }}</span>\r\n </div>\r\n </div>\r\n <span class=\"tx-base tx-estado-plan\">{{\r\n detail.estado\r\n }}</span>\r\n </div>\r\n <ius-button-circle-tertiary iconName=\"icon-discover-tune\"></ius-button-circle-tertiary>\r\n </div>\r\n </div>\r\n <ius-simple-divider></ius-simple-divider>\r\n }\r\n }\r\n </div>\r\n @if(hasMultipleServices) {\r\n <ius-button-standard-tertiary class=\"btn-list\" [iconName]=\"\r\n showMore ? 'icon-keyboard-arrow-up' : 'icon-keyboard-arrow-down'\r\n \" (buttonClicked)=\"clickShowMore()\">\r\n {{ showMore ? \"Mostrar menos\" : \"Mostrar m\u00E1s\" }}\r\n </ius-button-standard-tertiary>\r\n }\r\n <ius-simple-divider></ius-simple-divider>\r\n <div class=\"ctn-items\">\r\n @if (showUsuariosGrupos) {\r\n <ius-menu-item iconName=\"icon-groups\" iconColorDefault=\"#595959\" iconColorHovered=\"#595959\" (buttonClicked)=\"onClickUsuariosRoles()\">Usuarios y roles</ius-menu-item>\r\n }\r\n @if (showConfiguracionCuenta) {\r\n <ius-menu-item iconName=\"icon-build\" iconColorDefault=\"#595959\" iconColorHovered=\"#595959\" (buttonClicked)=\"onClickConfiguracion()\">Configuraci\u00F3n de la\r\n cuenta</ius-menu-item>\r\n }\r\n @if (showPagosFacturacion) {\r\n <ius-menu-item iconName=\"icon-finance-chip\" iconColorDefault=\"#595959\" iconColorHovered=\"#595959\" (buttonClicked)=\"onClickPagos()\">Pagos y facturaci\u00F3n</ius-menu-item>\r\n }\r\n @if (showSubscripcionesServicios) {\r\n <ius-menu-item iconName=\"icon-enterprise\" iconColorDefault=\"#595959\" iconColorHovered=\"#595959\" (buttonClicked)=\"onClickSubsServicios()\">Suscripciones y\r\n servicios</ius-menu-item>\r\n }\r\n @if (showReferir) {\r\n <ius-menu-item iconName=\"icon-stream\" iconColorDefault=\"#595959\" iconColorHovered=\"#595959\" (buttonClicked)=\"onClickReferir()\">Referir servicio</ius-menu-item>\r\n }\r\n </div>\r\n\r\n <ius-simple-divider></ius-simple-divider>\r\n } @else {\r\n <div class=\"container-bottom\">\r\n <span class=\"tx-cambiar\">Cambiar a</span>\r\n <div class=\"container-list\">\r\n @for (account of accountList; track account; let i = $index) {\r\n <ius-button-accounts (accountSelected)=\"onClickAccount(account)\" (onPressedPredeterminado)=\"\r\n clickAccountPredeterminada.emit(account)\r\n \"\r\n ,\r\n (onPressedEditar)=\"clickEditAccount.emit(account)\"\r\n ,\r\n (onPressedDesvincular)=\"clickDesvincularAccount.emit(account)\"\r\n [account]=\"account\"\r\n [showOptionsFlag]=\"false\"\r\n ></ius-button-accounts>\r\n }\r\n </div>\r\n <ius-button-standard-tertiary [iconName]=\"'icon-add'\" (buttonClicked)=\"addAccount()\">Agregar\r\n nueva cuenta</ius-button-standard-tertiary>\r\n </div>\r\n }\r\n </div>\r\n <div class=\"ctn-items mgt-8\">\r\n <ius-menu-item iconName=\"{{\r\n !showFormSwitchAccount ? 'icon-cases' : 'icon-arrow-left-alt'\r\n }}\" (buttonClicked)=\"onClickCambiarCuenta()\">{{\r\n !showFormSwitchAccount\r\n ? \"Cambiar de cuenta\"\r\n : \"Volver al menu de usuario\"\r\n }}</ius-menu-item>\r\n <ius-menu-item iconName=\"icon-exit-to-app\" (buttonClicked)=\"onClickCerrarSesion()\">Cerrar sesi\u00F3n</ius-menu-item>\r\n </div>\r\n</div>", styles: [".h1{font-family:Roboto,sans-serif;font-size:2.375rem;font-weight:500;line-height:46px}.h2{font-family:Roboto,sans-serif;font-size:1.875rem;font-weight:700;line-height:38px}.h3{font-family:Roboto,sans-serif;font-size:1.5rem;font-weight:500;line-height:32px}.h4{font-family:Roboto,sans-serif;font-size:1.25rem;font-weight:700;line-height:26px}.h5{font-family:Roboto,sans-serif;font-size:1.125rem;font-weight:500;line-height:24px;letter-spacing:.18px}.label-large{font-family:Roboto,sans-serif;font-size:1rem;font-weight:500;line-height:22px}.body-large{font-family:Rubik,sans-serif;font-size:1rem;font-weight:400;line-height:22px}.label-base{font-family:Rubik,sans-serif;font-size:.875rem;font-weight:500;line-height:20px;letter-spacing:.28px}.body-base{font-family:Rubik,sans-serif;font-size:.875rem;font-weight:400;line-height:20px;font-style:italic;letter-spacing:.28px}.body-base-1,.body-base-1-1{font-family:Rubik,sans-serif;font-size:.875rem;font-weight:400;line-height:20px;letter-spacing:.28px}.body-sm{font-family:Rubik,sans-serif;font-size:.75rem;font-weight:400;line-height:16px;letter-spacing:.28px}.body-sm-italic{font-family:Rubik,sans-serif;font-size:.75rem;font-weight:400;line-height:16px;font-style:italic;letter-spacing:.28px}.caption-sm{font-family:Rubik,sans-serif;font-size:.75rem;font-weight:500;line-height:16px;letter-spacing:.28px}.caption-sm-italic{font-family:Rubik,sans-serif;font-size:.75rem;font-weight:500;line-height:16px;font-style:italic;letter-spacing:.28px}.tbl-menu{display:flex;width:390px;height:85vh;padding:16px;flex-direction:column}.body-menu{display:flex;flex:1 0 0;flex-direction:column;padding-right:6px;gap:8px;font-family:Rubik,sans-serif;overflow-y:auto;min-height:0}.colum-mn-1{display:flex;flex-direction:column;align-items:flex-start;gap:4px}.text-head-mn{color:#8c8c8c;font-size:.75rem;line-height:16px;letter-spacing:.24px}.icon-acc-circle{color:#595959}.tx-row-1{display:flex;align-items:center;gap:4px}.tx-abog{color:#333;letter-spacing:.2px}.id-ct{padding:4px;border-radius:4px;border:1px solid #d9d9d9}.tx-id-ct{font-weight:500}.tx-rol{font-size:.875rem;color:#595959;line-height:20px}.tx-name-rl{color:#333;letter-spacing:.28px;font-weight:500}.email-inf{display:flex;padding:8px;align-items:center;gap:4px;color:#595959;font-size:.875rem;line-height:20px;letter-spacing:.28px}.icon-alt-email{color:#7caf25}ius-dropdown-option-item{width:100%}.container-plan{overflow:hidden;max-height:200px;transition:max-height .5s cubic-bezier(.4,0,.2,1);flex-shrink:0}.inf-plan{display:flex;padding:8px;flex-direction:column;align-items:flex-start;gap:8px}.show-more{max-height:10000px;transition:max-height .5s cubic-bezier(.4,0,.2,1)}.tx-small{font-size:.75rem;line-height:16px;letter-spacing:.24px}.tx-base{font-size:.875rem;line-height:20px;letter-spacing:.28px}.row-plan-1{display:flex;gap:12px;width:100%}.col-plan-1{display:flex;flex-direction:column;justify-content:center;align-items:flex-start;flex:1 0 0}.icon-help{color:#8c8c8c}.tx-tipo-plan{color:#595959;font-weight:500}.tx-name-plan{color:#333;font-weight:500}.tx-row-2{display:flex;align-items:center;gap:8px}.tx-contador-1{color:#8c8c8c;font-weight:500}.tx-contador-2{color:#333}.tx-estado-plan{color:#7caf25}.tx-cambiar{color:#8c8c8c;font-family:Rubik,sans-serif;font-size:.75rem;font-style:normal;font-weight:400;line-height:16px;letter-spacing:.24px}.mgt-8{margin-top:8px}.progress-container{width:100%;border-radius:100px;height:23px;overflow:hidden;background:#f0f0f0}.progress-bar{display:flex;height:100%}.segment{height:100%}.tipo-1-color-bar{background:#5892ff}.tipo-1-color{color:#5892ff}.tipo-2-color-bar{background:#103ab7}.tipo-2-color{color:#103ab7}.legend{display:flex;width:100%;align-items:center;gap:8px;flex-wrap:wrap}.legend .icon-storage-set{color:#103ab7}.legend .icon-storage-plus{color:#629219}.item-counter{display:flex;align-items:center;gap:4px;color:#333}.tx-name-serv{color:#595959;font-weight:500}.btn-list{margin-bottom:8px}.ctn-items{display:flex;flex-direction:column;gap:4px}.scrollable{overflow-y:auto;overflow-x:hidden}.scrollable::-webkit-scrollbar{-webkit-appearance:none}.scrollable::-webkit-scrollbar:vertical{width:7px}.scrollable::-webkit-scrollbar-thumb{background-color:#d8d6d6;border-radius:20px}.container-bottom{display:flex;flex-direction:column;gap:8px}.container-list{display:flex;flex-direction:column;gap:4px}\n"] }]
91
91
  }], propDecorators: { object: [{
92
92
  type: Input,
93
93
  args: [{ required: true }]
@@ -136,4 +136,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
136
136
  }], clickAgregarAccount: [{
137
137
  type: Output
138
138
  }] } });
139
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9vbGJhci11c2VyLW1lbnUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvaXVzLWRlc2lnbi1jb21wb25lbnRzL3NyYy9saWIvdG9vbGJhci11c2VyLW1lbnUvdG9vbGJhci11c2VyLW1lbnUuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvaXVzLWRlc2lnbi1jb21wb25lbnRzL3NyYy9saWIvdG9vbGJhci11c2VyLW1lbnUvdG9vbGJhci11c2VyLW1lbnUuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN2RSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sWUFBWSxDQUFDO0FBQzdDLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxZQUFZLENBQUM7QUFDN0MsT0FBTyxFQUFFLDJCQUEyQixFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDdEUsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDM0QsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLFlBQVksQ0FBQztBQUM3QyxPQUFPLEVBQUUsNkJBQTZCLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUMxRSxPQUFPLEVBQUUsK0JBQStCLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUM5RSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFDakQsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLHdDQUF3QyxDQUFDO0FBQzlFLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLDhDQUE4QyxDQUFDOzs7QUFVdkYsTUFBTSxPQUFPLHdCQUF3QjtJQVByQztRQWNX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QVU7c0JBQW5CLE1BQU07Z0JBQ0csa0JBQWtCO3NCQUEzQixNQUFNO2dCQUNHLGtCQUFrQjtzQkFBM0IsTUFBTTtnQkFDRyxpQkFBaUI7c0JBQTFCLE1BQU07Z0JBQ0csWUFBWTtzQkFBckIsTUFBTTtnQkFDRyxZQUFZO3NCQUFyQixNQUFNO2dCQUVHLG9CQUFvQjtzQkFBN0IsTUFBTTtnQkFDRywwQkFBMEI7c0JBQW5DLE1BQU07Z0JBQ0csZ0JBQWdCO3NCQUF6QixNQUFNO2dCQUNHLHVCQUF1QjtzQkFBaEMsTUFBTTtnQkFDRyxtQkFBbUI7c0JBQTVCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE91dHB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBJY29uU21Db21wb25lbnQgfSBmcm9tIFwiLi4vaWNvbi1zbVwiO1xyXG5pbXBvcnQgeyBJY29uWHNDb21wb25lbnQgfSBmcm9tIFwiLi4vaWNvbi14c1wiO1xyXG5pbXBvcnQgeyBEcm9wZG93bk9wdGlvbkl0ZW1Db21wb25lbnQgfSBmcm9tIFwiLi4vZHJvcGRvd24tb3B0aW9uLWl0ZW1cIjtcclxuaW1wb3J0IHsgU2ltcGxlRGl2aWRlckNvbXBvbmVudCB9IGZyb20gXCIuLi9zaW1wbGUtZGl2aWRlclwiO1xyXG5pbXBvcnQgeyBJY29uTWRDb21wb25lbnQgfSBmcm9tIFwiLi4vaWNvbi1tZFwiO1xyXG5pbXBvcnQgeyBCdXR0b25DaXJjbGVUZXJ0aWFyeUNvbXBvbmVudCB9IGZyb20gXCIuLi9idXR0b24tY2lyY2xlLXRlcnRpYXJ5XCI7XHJcbmltcG9ydCB7IEJ1dHRvblN0YW5kYXJkVGVydGlhcnlDb21wb25lbnQgfSBmcm9tIFwiLi4vYnV0dG9uLXN0YW5kYXJkLXRlcnRpYXJ5XCI7XHJcbmltcG9ydCB7IE1lbnVJdGVtQ29tcG9uZW50IH0gZnJvbSBcIi4uL21lbnUtaXRlbVwiO1xyXG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xyXG5pbXBvcnQgeyBQcm9ncmVzc0JhckNvbXBvbmVudCB9IGZyb20gXCIuLi9wcm9ncmVzcy1iYXIvcHJvZ3Jlc3MtYmFyLmNvbXBvbmVudFwiO1xyXG5pbXBvcnQgeyBCdXR0b25BY2NvdW50c0NvbXBvbmVudCB9IGZyb20gXCIuLi9idXR0b24tYWNjb3VudHMvYnV0dG9uLWFjY291bnRzLmNvbXBvbmVudFwiO1xyXG5pbXBvcnQgeyBPYmpldG8sIEFjY291bnQsIFN1YnNjcmlwY2lvbkRldGFsbGUsIENvbnN1bW9EZXRhbGxlcyB9IGZyb20gXCIuLi90b29sYmFyL3Rvb2xiYXIuY29tcG9uZW50XCI7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2l1cy10b29sYmFyLXVzZXItbWVudScsXHJcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcclxuICBpbXBvcnRzOiBbQ29tbW9uTW9kdWxlLCBJY29uU21Db21wb25lbnQsIEljb25Yc0NvbXBvbmVudCwgRHJvcGRvd25PcHRpb25JdGVtQ29tcG9uZW50LCBTaW1wbGVEaXZpZGVyQ29tcG9uZW50LCBJY29uTWRDb21wb25lbnQsIEJ1dHRvbkNpcmNsZVRlcnRpYXJ5Q29tcG9uZW50LCBCdXR0b25TdGFuZGFyZFRlcnRpYXJ5Q29tcG9uZW50LCBNZW51SXRlbUNvbXBvbmVudCwgUHJvZ3Jlc3NCYXJDb21wb25lbnQsIEJ1dHRvbkFjY291bnRzQ29tcG9uZW50XSxcclxuICB0ZW1wbGF0ZVVybDogJy4vdG9vbGJhci11c2VyLW1lbnUuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsOiAnLi90b29sYmFyLXVzZXItbWVudS5jb21wb25lbnQuc2NzcydcclxufSlcclxuZXhwb3J0IGNsYXNzIFRvb2xiYXJVc2VyTWVudUNvbXBvbmVudCB7XHJcblxyXG4gIEBJbnB1dCh7IHJlcXVpcmVkOiB0cnVlIH0pIG9iamVjdCE6IE9iamV0bztcclxuICBASW5wdXQoKSBzdWJzY3JpcGNpb25EZXRhbGxlPzogU3Vic2NyaXBjaW9uRGV0YWxsZTtcclxuICBASW5wdXQoKSBkZXRhbGxlc0NvbnN1bW8/OiBDb25zdW1vRGV0YWxsZXNbXTtcclxuICBASW5wdXQoKSBhY2NvdW50TGlzdD86IEFjY291bnRbXTtcclxuXHJcbiAgQElucHV0KCkgc2hvd1VzdWFyaW9zR3J1cG9zPzogYm9vbGVhbiA9IHRydWU7XHJcbiAgQElucHV0KCkgc2hvd0NvbmZpZ3VyYWNpb25DdWVudGE/OiBib29sZWFuID0gdHJ1ZTtcclxuICBASW5wdXQoKSBzaG93UGFnb3NGYWN0dXJhY2lvbj86IGJvb2xlYW4gPSB0cnVlO1xyXG4gIEBJbnB1dCgpIHNob3dTdWJzY3JpcGNpb25lc1NlcnZpY2lvcz86IGJvb2xlYW4gPSB0cnVlO1xyXG4gIEBJbnB1dCgpIHNob3dSZWZlcmlyPzogYm9vbGVhbiA9IHRydWU7XHJcblxyXG4gIEBPdXRwdXQoKSBjbGlja1BlcmZpbFByZWZlcmVuY2lhczogRXZlbnRFbWl0dGVyPHZvaWQ+ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xyXG4gIEBPdXRwdXQoKSBjbGlja1VzdWFyaW9zUm9sZXM6IEV2ZW50RW1pdHRlcjx2b2lkPiA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcclxuICBAT3V0cHV0KCkgY2xpY2tDb25maWd1cmFjaW9uOiBFdmVudEVtaXR0ZXI8dm9pZD4gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XHJcbiAgQE91dHB1dCgpIGNsaWNrUGFnb3M6IEV2ZW50RW1pdHRlcjx2b2lkPiA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcclxuICBAT3V0cHV0KCkgY2xpY2tTdWJzU2VydmljaW9zOiBFdmVudEVtaXR0ZXI8dm9pZD4gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XHJcbiAgQE91dHB1dCgpIGNsaWNrQ2FtYmlhckN1ZW50YTogRXZlbnRFbWl0dGVyPHZvaWQ+ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xyXG4gIEBPdXRwdXQoKSBjbGlja0NlcnJhclNlc2lvbjogRXZlbnRFbWl0dGVyPHZvaWQ+ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xyXG4gIEBPdXRwdXQoKSBjbGlja1JlZmVyaXI6IEV2ZW50RW1pdHRlcjx2b2lkPiA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcclxuICBAT3V0cHV0KCkgcmVxdWVzdENsb3NlOiBFdmVudEVtaXR0ZXI8dm9pZD4gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XHJcblxyXG4gIEBPdXRwdXQoKSBjbGlja0FjY291bnRTZWxlY3RlZDogRXZlbnRFbWl0dGVyPGFueT4gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XHJcbiAgQE91dHB1dCgpIGNsaWNrQWNjb3VudFByZWRldGVybWluYWRhOiBFdmVudEVtaXR0ZXI8YW55PiA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcclxuICBAT3V0cHV0KCkgY2xpY2tFZGl0QWNjb3VudDogRXZlbnRFbWl0dGVyPGFueT4gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XHJcbiAgQE91dHB1dCgpIGNsaWNrRGVzdmluY3VsYXJBY2NvdW50OiBFdmVudEVtaXR0ZXI8YW55PiA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcclxuICBAT3V0cHV0KCkgY2xpY2tBZ3JlZ2FyQWNjb3VudDogRXZlbnRFbWl0dGVyPGFueT4gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XHJcblxyXG5cclxuICBzaG93TW9yZTogYm9vbGVhbiA9IGZhbHNlO1xyXG4gIHNob3dGb3JtU3dpdGNoQWNjb3VudDogYm9vbGVhbiA9IGZhbHNlO1xyXG4gIGlzT3BlbjogYm9vbGVhbiA9IGZhbHNlO1xyXG5cclxuICBjbGlja1Nob3dNb3JlKCkge1xyXG4gICAgdGhpcy5zaG93TW9yZSA9ICF0aGlzLnNob3dNb3JlO1xyXG4gIH1cclxuXHJcbiAgb25DbGlja1VzdWFyaW9zUm9sZXMoKSB7XHJcbiAgICB0aGlzLmNsaWNrVXN1YXJpb3NSb2xlcy5lbWl0KCk7XHJcbiAgICB0aGlzLnJlcXVlc3RDbG9zZS5lbWl0KCk7XHJcbiAgfVxyXG5cclxuICBvbkNsaWNrQ29uZmlndXJhY2lvbigpIHtcclxuICAgIHRoaXMuY2xpY2tDb25maWd1cmFjaW9uLmVtaXQoKTtcclxuICAgIHRoaXMucmVxdWVzdENsb3NlLmVtaXQoKTtcclxuICB9XHJcblxyXG4gIG9uQ2xpY2tQYWdvcygpIHtcclxuICAgIHRoaXMuY2xpY2tQYWdvcy5lbWl0KCk7XHJcbiAgICB0aGlzLnJlcXVlc3RDbG9zZS5lbWl0KCk7XHJcbiAgfVxyXG5cclxuICBvbkNsaWNrU3Vic1NlcnZpY2lvcygpIHtcclxuICAgIHRoaXMuY2xpY2tTdWJzU2VydmljaW9zLmVtaXQoKTtcclxuICAgIHRoaXMucmVxdWVzdENsb3NlLmVtaXQoKTtcclxuICB9XHJcblxyXG4gIG9uQ2xpY2tDYW1iaWFyQ3VlbnRhKCkge1xyXG4gICAgdGhpcy5jbGlja0NhbWJpYXJDdWVudGEuZW1pdCgpO1xyXG4gICAgdGhpcy5zaG93Rm9ybVN3aXRjaEFjY291bnQgPSAhdGhpcy5zaG93Rm9ybVN3aXRjaEFjY291bnQ7XHJcbiAgfVxyXG5cclxuICBvbkNsaWNrQ2VycmFyU2VzaW9uKCkge1xyXG4gICAgdGhpcy5jbGlja0NlcnJhclNlc2lvbi5lbWl0KCk7XHJcbiAgfVxyXG5cclxuICBvbkNsaWNrUGVyZmlsUHJlZmVyZW5jaWFzKCkge1xyXG4gICAgdGhpcy5jbGlja1BlcmZpbFByZWZlcmVuY2lhcy5lbWl0KCk7XHJcbiAgICB0aGlzLnJlcXVlc3RDbG9zZS5lbWl0KCk7XHJcbiAgfVxyXG5cclxuICBvbkNsaWNrUmVmZXJpcigpIHtcclxuICAgIHRoaXMuY2xpY2tSZWZlcmlyLmVtaXQoKTtcclxuICAgIHRoaXMucmVxdWVzdENsb3NlLmVtaXQoKTtcclxuICB9XHJcblxyXG4gIG9uQ2xpY2tBY2NvdW50KGFjY291bnQ6IEFjY291bnQpIHtcclxuICAgIHRoaXMuY2xpY2tBY2NvdW50U2VsZWN0ZWQuZW1pdChhY2NvdW50KTtcclxuICAgIHRoaXMuc2hvd0Zvcm1Td2l0Y2hBY2NvdW50ID0gZmFsc2U7XHJcbiAgfVxyXG5cclxuICBhZGRBY2NvdW50KCkge1xyXG4gICAgdGhpcy5jbGlja0FncmVnYXJBY2NvdW50LmVtaXQoKTtcclxuICAgIHRoaXMucmVxdWVzdENsb3NlLmVtaXQoKTtcclxuICB9XHJcblxyXG4gIGdldCBoYXNNdWx0aXBsZVNlcnZpY2VzKCk6IGJvb2xlYW4ge1xyXG4gIHJldHVybiAhISh0aGlzLmRldGFsbGVzQ29uc3VtbyAmJiB0aGlzLmRldGFsbGVzQ29uc3Vtby5sZW5ndGggPiAwKTtcclxufVxyXG59XHJcbiIsIjxkaXYgY2xhc3M9XCJ0YmwtbWVudVwiPlxyXG4gIDxkaXYgY2xhc3M9XCJib2R5LW1lbnUgc2Nyb2xsYWJsZVwiPlxyXG4gICAgPGRpdiBjbGFzcz1cImNvbHVtLW1uLTEgdGV4dC1oZWFkLW1uXCI+XHJcbiAgICAgIDxzcGFuPkVzdMOhcyBuYXZlZ2FuZG8gZW48L3NwYW4+XHJcbiAgICAgIDxkaXYgY2xhc3M9XCJ0eC1yb3ctMVwiPlxyXG4gICAgICAgIDxpdXMtaWNvbi1zbSBpY29uTmFtZT1cImljb24tYWNjb3VudC1jaXJjbGVcIiBjbGFzcz1cImljb24tYWNjLWNpcmNsZVwiPjwvaXVzLWljb24tc20+XHJcbiAgICAgICAgPHNwYW4gY2xhc3M9XCJoNCB0eC1hYm9nXCI+e3sgb2JqZWN0Lm5vbWJyZUNvbXBhbnkgfX08L3NwYW4+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgICA8ZGl2IGNsYXNzPVwidHgtcm93LTEgaWQtY3RcIj5cclxuICAgICAgICA8c3Bhbj5JRCBDdWVudGE8L3NwYW4+XHJcbiAgICAgICAgPHNwYW4gY2xhc3M9XCJ0eC1pZC1jdFwiPnt7IG9iamVjdC5jdWVudGFJRCB9fTwvc3Bhbj5cclxuICAgICAgPC9kaXY+XHJcbiAgICAgIDxkaXYgY2xhc3M9XCJ0eC1yb3ctMSB0eC1yb2xcIj5cclxuICAgICAgICA8c3Bhbj5UdSByb2w8L3NwYW4+XHJcbiAgICAgICAgPHNwYW4gY2xhc3M9XCJ0eC1uYW1lLXJsXCI+e3sgb2JqZWN0LnJvbCB9fTwvc3Bhbj5cclxuICAgICAgPC9kaXY+XHJcbiAgICAgIDxpdXMtc2ltcGxlLWRpdmlkZXI+PC9pdXMtc2ltcGxlLWRpdmlkZXI+XHJcbiAgICA8L2Rpdj5cclxuICAgIEBpZiAoIXNob3dGb3JtU3dpdGNoQWNjb3VudCkge1xyXG4gICAgPGRpdiBjbGFzcz1cImNvbHVtLW1uLTFcIj5cclxuICAgICAgPGRpdiBjbGFzcz1cImVtYWlsLWluZlwiPlxyXG4gICAgICAgIDxpdXMtaWNvbi14cyBpY29uTmFtZT1cImljb24tYWx0ZXJuYXRlLWVtYWlsXCIgY2xhc3M9XCJpY29uLWFsdC1lbWFpbFwiPjwvaXVzLWljb24teHM+XHJcbiAgICAgICAgPHNwYW4+e3sgb2JqZWN0LmNvcnJlbyB9fTwvc3Bhbj5cclxuICAgICAgPC9kaXY+XHJcbiAgICAgIDxpdXMtZHJvcGRvd24tb3B0aW9uLWl0ZW0gKGNsaWNrKT1cIm9uQ2xpY2tQZXJmaWxQcmVmZXJlbmNpYXMoKVwiPlBlcmZpbCwgcHJlZmVyZW5jaWFzIHlcclxuICAgICAgICBzZWd1cmlkYWQ8L2l1cy1kcm9wZG93bi1vcHRpb24taXRlbT5cclxuICAgIDwvZGl2PlxyXG4gICAgPGl1cy1zaW1wbGUtZGl2aWRlcj48L2l1cy1zaW1wbGUtZGl2aWRlcj5cclxuICAgIDxkaXYgY2xhc3M9XCJjb250YWluZXItcGxhblwiIFtuZ0NsYXNzXT1cInsgJ3Nob3ctbW9yZSc6IHNob3dNb3JlIH1cIj5cclxuICAgICAgPGRpdiBjbGFzcz1cImluZi1wbGFuXCI+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cInJvdy1wbGFuLTFcIj5cclxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtcGxhbi0xXCI+XHJcbiAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwidHgtc21hbGwgdHgtdGlwby1wbGFuXCI+e3tcclxuICAgICAgICAgICAgICBzdWJzY3JpcGNpb25EZXRhbGxlPy50aXBvU2VydmljaW9cclxuICAgICAgICAgICAgICB9fTwvc3Bhbj5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cInR4LXJvdy0xXCI+XHJcbiAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJ0eC1iYXNlIHR4LW5hbWUtcGxhblwiPnt7XHJcbiAgICAgICAgICAgICAgICBzdWJzY3JpcGNpb25EZXRhbGxlPy5uYW1lUGxhblxyXG4gICAgICAgICAgICAgICAgfX08L3NwYW4+XHJcbiAgICAgICAgICAgICAgPGl1cy1pY29uLW1kIGljb25OYW1lPVwiaWNvbi1oZWxwXCIgY2xhc3M9XCJpY29uLWhlbHBcIj48L2l1cy1pY29uLW1kPlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cInR4LXJvdy0yIHR4LXNtYWxsXCI+XHJcbiAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInR4LXJvdy0xXCI+XHJcbiAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cInR4LWNvbnRhZG9yLTFcIj5Ub3RhbCBnbG9iYWw8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cInR4LWNvbnRhZG9yLTJcIj57e1xyXG4gICAgICAgICAgICAgICAgICBzdWJzY3JpcGNpb25EZXRhbGxlPy5jYW50VG90YWxcclxuICAgICAgICAgICAgICAgICAgfX08L3NwYW4+XHJcbiAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInR4LXJvdy0xXCI+XHJcbiAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cInR4LWNvbnRhZG9yLTFcIj5EaXNwb25pYmxlIGdsb2JhbDwvc3Bhbj5cclxuICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwidHgtY29udGFkb3ItMlwiPnt7XHJcbiAgICAgICAgICAgICAgICAgIHN1YnNjcmlwY2lvbkRldGFsbGU/LmNhbnREaXNwb25pYmxlXHJcbiAgICAgICAgICAgICAgICAgIH19PC9zcGFuPlxyXG4gICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJ0eC1iYXNlIHR4LWVzdGFkby1wbGFuXCI+e3tcclxuICAgICAgICAgICAgICBzdWJzY3JpcGNpb25EZXRhbGxlPy5lc3RhZG9cclxuICAgICAgICAgICAgICB9fTwvc3Bhbj5cclxuICAgICAgICAgICAgQGlmIChzdWJzY3JpcGNpb25EZXRhbGxlPy5lc1BsYW5HcmF0dWl0bykge1xyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwidHgtcm93LTEgdHgtc21hbGwgdHgtcHJ1ZWJhXCI+XHJcbiAgICAgICAgICAgICAgPGl1cy1pY29uLXhzIGljb25OYW1lPVwiaWNvbi1zY2hlZHVsZVwiPjwvaXVzLWljb24teHM+XHJcbiAgICAgICAgICAgICAgPHNwYW4+UGxhbiBkZSBwcnVlYmEgYWN0aXZvPC9zcGFuPlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICA8aXVzLWJ1dHRvbi1jaXJjbGUtdGVydGlhcnkgaWNvbk5hbWU9XCJpY29uLWRpc2NvdmVyLXR1bmVcIj48L2l1cy1idXR0b24tY2lyY2xlLXRlcnRpYXJ5PlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDxkaXYgc3R5bGU9XCJ3aWR0aDogMTAwJVwiPlxyXG4gICAgICAgICAgPGl1cy1wcm9ncmVzcy1iYXIgW3RvdGFsXT1cInN1YnNjcmlwY2lvbkRldGFsbGU/LmNhbnRUb3RhbCA/PyAwXCIgW3RpdGxlVjFdPVwiJ0p1ZGljaWFsJ1wiXHJcbiAgICAgICAgICAgIFt2MV09XCJzdWJzY3JpcGNpb25EZXRhbGxlPy5jYW50SnVkaWNpYWwgPz8gMFwiIFt0aXRsZVYyXT1cIidTdXBlclNvY2llZGFkZXMnXCJcclxuICAgICAgICAgICAgW3YyXT1cInN1YnNjcmlwY2lvbkRldGFsbGU/LmNhbnRQcm9jZXNvczIgPz8gMFwiIFt0aXRsZVYzXT1cIidQcm9jdXJhZHVyaWEnXCJcclxuICAgICAgICAgICAgW3YzXT1cInN1YnNjcmlwY2lvbkRldGFsbGU/LmNhbnRQcm9jZXNvczMgPz8gMFwiPlxyXG4gICAgICAgICAgPC9pdXMtcHJvZ3Jlc3MtYmFyPlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJsZWdlbmRcIj5cclxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJpdGVtLWNvdW50ZXIgdHgtc21hbGxcIj5cclxuICAgICAgICAgICAgPGl1cy1pY29uLXhzIGljb25OYW1lPVwiaWNvbi1zdG9yYWdlLXNldFwiIGNsYXNzPVwiaWNvbi1zdG9yYWdlLXNldFwiPjwvaXVzLWljb24teHM+XHJcbiAgICAgICAgICAgIDxzcGFuPnt7IHN1YnNjcmlwY2lvbkRldGFsbGU/LmFzaWduYWRvcyA/PyAwIH19PC9zcGFuPlxyXG4gICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICA8ZGl2IGNsYXNzPVwiaXRlbS1jb3VudGVyIHR4LXNtYWxsXCI+XHJcbiAgICAgICAgICAgIDxpdXMtaWNvbi14cyBpY29uTmFtZT1cImljb24tc3RvcmFnZS1wbHVzXCIgY2xhc3M9XCJpY29uLXN0b3JhZ2UtcGx1c1wiPjwvaXVzLWljb24teHM+XHJcbiAgICAgICAgICAgIDxzcGFuPnt7XHJcbiAgICAgICAgICAgICAgc3Vic2NyaXBjaW9uRGV0YWxsZT8uY2FudEFzaWduYWRhRGlzcG9uaWJsZSA/PyAwXHJcbiAgICAgICAgICAgICAgfX08L3NwYW4+XHJcbiAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgPC9kaXY+XHJcbiAgICAgIDxpdXMtc2ltcGxlLWRpdmlkZXI+PC9pdXMtc2ltcGxlLWRpdmlkZXI+XHJcbiAgICAgIEBpZiAoZGV0YWxsZXNDb25zdW1vKSB7XHJcbiAgICAgIEBmb3IgKGRldGFpbCBvZiBkZXRhbGxlc0NvbnN1bW87IHRyYWNrICRpbmRleCkge1xyXG4gICAgICA8ZGl2IGNsYXNzPVwiaW5mLXBsYW5cIj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwicm93LXBsYW4tMVwiPlxyXG4gICAgICAgICAgPGRpdiBjbGFzcz1cImNvbC1wbGFuLTFcIj5cclxuICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJ0eC1zbWFsbCB0eC10aXBvLXBsYW5cIj57e1xyXG4gICAgICAgICAgICAgIGRldGFpbC50aXBvU2VydmljaW9cclxuICAgICAgICAgICAgICB9fTwvc3Bhbj5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cInR4LXJvdy0xXCI+XHJcbiAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJ0eC1iYXNlIHR4LW5hbWUtcGxhblwiPlBvciBjb25zdW1vPC9zcGFuPlxyXG4gICAgICAgICAgICAgIDxpdXMtaWNvbi1tZCBpY29uTmFtZT1cImljb24taGVscFwiIGNsYXNzPVwiaWNvbi1oZWxwXCI+PC9pdXMtaWNvbi1tZD5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ0eC1yb3ctMiB0eC1zbWFsbFwiPlxyXG4gICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ0eC1yb3ctMVwiPlxyXG4gICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJ0eC1jb250YWRvci0xXCI+Q29uc3VtbyBlc3RlIG1lczwvc3Bhbj5cclxuICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwidHgtY29udGFkb3ItMlwiPnt7XHJcbiAgICAgICAgICAgICAgICAgIGRldGFpbC5jYW50Q29uc3VtaWRhXHJcbiAgICAgICAgICAgICAgICAgIH19PC9zcGFuPlxyXG4gICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJ0eC1iYXNlIHR4LWVzdGFkby1wbGFuXCI+e3tcclxuICAgICAgICAgICAgICBkZXRhaWwuZXN0YWRvXHJcbiAgICAgICAgICAgICAgfX08L3NwYW4+XHJcbiAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgIDxpdXMtYnV0dG9uLWNpcmNsZS10ZXJ0aWFyeSBpY29uTmFtZT1cImljb24tZGlzY292ZXItdHVuZVwiPjwvaXVzLWJ1dHRvbi1jaXJjbGUtdGVydGlhcnk+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgICA8aXVzLXNpbXBsZS1kaXZpZGVyPjwvaXVzLXNpbXBsZS1kaXZpZGVyPlxyXG4gICAgICB9XHJcbiAgICAgIH1cclxuICAgIDwvZGl2PlxyXG4gICAgQGlmKGhhc011bHRpcGxlU2VydmljZXMpIHtcclxuICAgIDxpdXMtYnV0dG9uLXN0YW5kYXJkLXRlcnRpYXJ5IGNsYXNzPVwiYnRuLWxpc3RcIiBbaWNvbk5hbWVdPVwiXHJcbiAgICAgICAgICBzaG93TW9yZSA/ICdpY29uLWtleWJvYXJkLWFycm93LXVwJyA6ICdpY29uLWtleWJvYXJkLWFycm93LWRvd24nXHJcbiAgICAgICAgXCIgKGJ1dHRvbkNsaWNrZWQpPVwiY2xpY2tTaG93TW9yZSgpXCI+XHJcbiAgICAgIHt7IHNob3dNb3JlID8gXCJNb3N0cmFyIG1lbm9zXCIgOiBcIk1vc3RyYXIgbcOhc1wiIH19XHJcbiAgICA8L2l1cy1idXR0b24tc3RhbmRhcmQtdGVydGlhcnk+XHJcbiAgICB9XHJcbiAgICA8aXVzLXNpbXBsZS1kaXZpZGVyPjwvaXVzLXNpbXBsZS1kaXZpZGVyPlxyXG4gICAgPGRpdiBjbGFzcz1cImN0bi1pdGVtc1wiPlxyXG4gICAgICBAaWYgKHNob3dVc3Vhcmlvc0dydXBvcykge1xyXG4gICAgICAgIDxpdXMtbWVudS1pdGVtIGljb25OYW1lPVwiaWNvbi1ncm91cHNcIiAoYnV0dG9uQ2xpY2tlZCk9XCJvbkNsaWNrVXN1YXJpb3NSb2xlcygpXCI+VXN1YXJpb3MgeSByb2xlczwvaXVzLW1lbnUtaXRlbT5cclxuICAgICAgfVxyXG4gICAgICBAaWYgKHNob3dDb25maWd1cmFjaW9uQ3VlbnRhKSB7XHJcbiAgICAgICAgPGl1cy1tZW51LWl0ZW0gaWNvbk5hbWU9XCJpY29uLWJ1aWxkXCIgKGJ1dHRvbkNsaWNrZWQpPVwib25DbGlja0NvbmZpZ3VyYWNpb24oKVwiPkNvbmZpZ3VyYWNpw7NuIGRlIGxhXHJcbiAgICAgICAgICBjdWVudGE8L2l1cy1tZW51LWl0ZW0+XHJcbiAgICAgIH1cclxuICAgICAgQGlmIChzaG93UGFnb3NGYWN0dXJhY2lvbikge1xyXG4gICAgICAgIDxpdXMtbWVudS1pdGVtIGljb25OYW1lPVwiaWNvbi1maW5hbmNlLWNoaXBcIiAoYnV0dG9uQ2xpY2tlZCk9XCJvbkNsaWNrUGFnb3MoKVwiPlBhZ29zIHkgZmFjdHVyYWNpw7NuPC9pdXMtbWVudS1pdGVtPlxyXG4gICAgICB9XHJcbiAgICAgIEBpZiAoc2hvd1N1YnNjcmlwY2lvbmVzU2VydmljaW9zKSB7XHJcbiAgICAgICAgPGl1cy1tZW51LWl0ZW0gaWNvbk5hbWU9XCJpY29uLWVudGVycHJpc2VcIiAoYnV0dG9uQ2xpY2tlZCk9XCJvbkNsaWNrU3Vic1NlcnZpY2lvcygpXCI+U3VzY3JpcGNpb25lcyB5XHJcbiAgICAgICAgICBzZXJ2aWNpb3M8L2l1cy1tZW51LWl0ZW0+XHJcbiAgICAgIH1cclxuICAgICAgQGlmIChzaG93UmVmZXJpcikge1xyXG4gICAgICAgIDxpdXMtbWVudS1pdGVtIGljb25OYW1lPVwiaWNvbi1zdHJlYW1cIiAoYnV0dG9uQ2xpY2tlZCk9XCJvbkNsaWNrUmVmZXJpcigpXCI+UmVmZXJpciBzZXJ2aWNpbzwvaXVzLW1lbnUtaXRlbT5cclxuICAgICAgfVxyXG4gICAgPC9kaXY+XHJcblxyXG4gICAgPGl1cy1zaW1wbGUtZGl2aWRlcj48L2l1cy1zaW1wbGUtZGl2aWRlcj5cclxuICAgIH0gQGVsc2Uge1xyXG4gICAgPGRpdiBjbGFzcz1cImNvbnRhaW5lci1ib3R0b21cIj5cclxuICAgICAgPHNwYW4gY2xhc3M9XCJ0eC1jYW1iaWFyXCI+Q2FtYmlhciBhPC9zcGFuPlxyXG4gICAgICA8ZGl2IGNsYXNzPVwiY29udGFpbmVyLWxpc3RcIj5cclxuICAgICAgICBAZm9yIChhY2NvdW50IG9mIGFjY291bnRMaXN0OyB0cmFjayBhY2NvdW50OyBsZXQgaSA9ICRpbmRleCkge1xyXG4gICAgICAgIDxpdXMtYnV0dG9uLWFjY291bnRzIChhY2NvdW50U2VsZWN0ZWQpPVwib25DbGlja0FjY291bnQoYWNjb3VudClcIiAob25QcmVzc2VkUHJlZGV0ZXJtaW5hZG8pPVwiXHJcbiAgICAgICAgICAgICAgICBjbGlja0FjY291bnRQcmVkZXRlcm1pbmFkYS5lbWl0KGFjY291bnQpXHJcbiAgICAgICAgICAgICAgXCJcclxuICAgICAgICAgICAgICAsXHJcbiAgICAgICAgICAgICAgKG9uUHJlc3NlZEVkaXRhcik9XCJjbGlja0VkaXRBY2NvdW50LmVtaXQoYWNjb3VudClcIlxyXG4gICAgICAgICAgICAgICxcclxuICAgICAgICAgICAgICAob25QcmVzc2VkRGVzdmluY3VsYXIpPVwiY2xpY2tEZXN2aW5jdWxhckFjY291bnQuZW1pdChhY2NvdW50KVwiXHJcbiAgICAgICAgICAgICAgW2FjY291bnRdPVwiYWNjb3VudFwiXHJcbiAgICAgICAgICAgICAgW3Nob3dPcHRpb25zRmxhZ109XCJmYWxzZVwiXHJcbiAgICAgICAgICAgID48L2l1cy1idXR0b24tYWNjb3VudHM+XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPGl1cy1idXR0b24tc3RhbmRhcmQtdGVydGlhcnkgW2ljb25OYW1lXT1cIidpY29uLWFkZCdcIiAoYnV0dG9uQ2xpY2tlZCk9XCJhZGRBY2NvdW50KClcIj5BZ3JlZ2FyXHJcbiAgICAgICAgICAgICAgICBudWV2YSBjdWVudGE8L2l1cy1idXR0b24tc3RhbmRhcmQtdGVydGlhcnk+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgfVxyXG4gIDwvZGl2PlxyXG4gIDxkaXYgY2xhc3M9XCJjdG4taXRlbXMgbWd0LThcIj5cclxuICAgIDxpdXMtbWVudS1pdGVtIGljb25OYW1lPVwie3tcclxuICAgICAgICAhc2hvd0Zvcm1Td2l0Y2hBY2NvdW50ID8gJ2ljb24tY2FzZXMnIDogJ2ljb24tYXJyb3ctbGVmdC1hbHQnXHJcbiAgICAgIH19XCIgKGJ1dHRvbkNsaWNrZWQpPVwib25DbGlja0NhbWJpYXJDdWVudGEoKVwiPnt7XHJcbiAgICAgICFzaG93Rm9ybVN3aXRjaEFjY291bnRcclxuICAgICAgPyBcIkNhbWJpYXIgZGUgY3VlbnRhXCJcclxuICAgICAgOiBcIlZvbHZlciBhbCBtZW51IGRlIHVzdWFyaW9cIlxyXG4gICAgICB9fTwvaXVzLW1lbnUtaXRlbT5cclxuICAgIDxpdXMtbWVudS1pdGVtIGljb25OYW1lPVwiaWNvbi1leGl0LXRvLWFwcFwiIChidXR0b25DbGlja2VkKT1cIm9uQ2xpY2tDZXJyYXJTZXNpb24oKVwiPkNlcnJhciBzZXNpw7NuPC9pdXMtbWVudS1pdGVtPlxyXG4gIDwvZGl2PlxyXG48L2Rpdj4iXX0=
139
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9vbGJhci11c2VyLW1lbnUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvaXVzLWRlc2lnbi1jb21wb25lbnRzL3NyYy9saWIvdG9vbGJhci11c2VyLW1lbnUvdG9vbGJhci11c2VyLW1lbnUuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvaXVzLWRlc2lnbi1jb21wb25lbnRzL3NyYy9saWIvdG9vbGJhci11c2VyLW1lbnUvdG9vbGJhci11c2VyLW1lbnUuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN2RSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sWUFBWSxDQUFDO0FBQzdDLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxZQUFZLENBQUM7QUFDN0MsT0FBTyxFQUFFLDJCQUEyQixFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDdEUsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDM0QsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLFlBQVksQ0FBQztBQUM3QyxPQUFPLEVBQUUsNkJBQTZCLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUMxRSxPQUFPLEVBQUUsK0JBQStCLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUM5RSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFDakQsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLHdDQUF3QyxDQUFDO0FBQzlFLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLDhDQUE4QyxDQUFDOzs7QUFVdkYsTUFBTSxPQUFPLHdCQUF3QjtJQVByQztRQWNX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QVU7c0JBQW5CLE1BQU07Z0JBQ0csa0JBQWtCO3NCQUEzQixNQUFNO2dCQUNHLGtCQUFrQjtzQkFBM0IsTUFBTTtnQkFDRyxpQkFBaUI7c0JBQTFCLE1BQU07Z0JBQ0csWUFBWTtzQkFBckIsTUFBTTtnQkFDRyxZQUFZO3NCQUFyQixNQUFNO2dCQUVHLG9CQUFvQjtzQkFBN0IsTUFBTTtnQkFDRywwQkFBMEI7c0JBQW5DLE1BQU07Z0JBQ0csZ0JBQWdCO3NCQUF6QixNQUFNO2dCQUNHLHVCQUF1QjtzQkFBaEMsTUFBTTtnQkFDRyxtQkFBbUI7c0JBQTVCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE91dHB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBJY29uU21Db21wb25lbnQgfSBmcm9tIFwiLi4vaWNvbi1zbVwiO1xyXG5pbXBvcnQgeyBJY29uWHNDb21wb25lbnQgfSBmcm9tIFwiLi4vaWNvbi14c1wiO1xyXG5pbXBvcnQgeyBEcm9wZG93bk9wdGlvbkl0ZW1Db21wb25lbnQgfSBmcm9tIFwiLi4vZHJvcGRvd24tb3B0aW9uLWl0ZW1cIjtcclxuaW1wb3J0IHsgU2ltcGxlRGl2aWRlckNvbXBvbmVudCB9IGZyb20gXCIuLi9zaW1wbGUtZGl2aWRlclwiO1xyXG5pbXBvcnQgeyBJY29uTWRDb21wb25lbnQgfSBmcm9tIFwiLi4vaWNvbi1tZFwiO1xyXG5pbXBvcnQgeyBCdXR0b25DaXJjbGVUZXJ0aWFyeUNvbXBvbmVudCB9IGZyb20gXCIuLi9idXR0b24tY2lyY2xlLXRlcnRpYXJ5XCI7XHJcbmltcG9ydCB7IEJ1dHRvblN0YW5kYXJkVGVydGlhcnlDb21wb25lbnQgfSBmcm9tIFwiLi4vYnV0dG9uLXN0YW5kYXJkLXRlcnRpYXJ5XCI7XHJcbmltcG9ydCB7IE1lbnVJdGVtQ29tcG9uZW50IH0gZnJvbSBcIi4uL21lbnUtaXRlbVwiO1xyXG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xyXG5pbXBvcnQgeyBQcm9ncmVzc0JhckNvbXBvbmVudCB9IGZyb20gXCIuLi9wcm9ncmVzcy1iYXIvcHJvZ3Jlc3MtYmFyLmNvbXBvbmVudFwiO1xyXG5pbXBvcnQgeyBCdXR0b25BY2NvdW50c0NvbXBvbmVudCB9IGZyb20gXCIuLi9idXR0b24tYWNjb3VudHMvYnV0dG9uLWFjY291bnRzLmNvbXBvbmVudFwiO1xyXG5pbXBvcnQgeyBPYmpldG8sIEFjY291bnQsIFN1YnNjcmlwY2lvbkRldGFsbGUsIENvbnN1bW9EZXRhbGxlcyB9IGZyb20gXCIuLi90b29sYmFyL3Rvb2xiYXIuY29tcG9uZW50XCI7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2l1cy10b29sYmFyLXVzZXItbWVudScsXHJcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcclxuICBpbXBvcnRzOiBbQ29tbW9uTW9kdWxlLCBJY29uU21Db21wb25lbnQsIEljb25Yc0NvbXBvbmVudCwgRHJvcGRvd25PcHRpb25JdGVtQ29tcG9uZW50LCBTaW1wbGVEaXZpZGVyQ29tcG9uZW50LCBJY29uTWRDb21wb25lbnQsIEJ1dHRvbkNpcmNsZVRlcnRpYXJ5Q29tcG9uZW50LCBCdXR0b25TdGFuZGFyZFRlcnRpYXJ5Q29tcG9uZW50LCBNZW51SXRlbUNvbXBvbmVudCwgUHJvZ3Jlc3NCYXJDb21wb25lbnQsIEJ1dHRvbkFjY291bnRzQ29tcG9uZW50XSxcclxuICB0ZW1wbGF0ZVVybDogJy4vdG9vbGJhci11c2VyLW1lbnUuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsOiAnLi90b29sYmFyLXVzZXItbWVudS5jb21wb25lbnQuc2NzcydcclxufSlcclxuZXhwb3J0IGNsYXNzIFRvb2xiYXJVc2VyTWVudUNvbXBvbmVudCB7XHJcblxyXG4gIEBJbnB1dCh7IHJlcXVpcmVkOiB0cnVlIH0pIG9iamVjdCE6IE9iamV0bztcclxuICBASW5wdXQoKSBzdWJzY3JpcGNpb25EZXRhbGxlPzogU3Vic2NyaXBjaW9uRGV0YWxsZTtcclxuICBASW5wdXQoKSBkZXRhbGxlc0NvbnN1bW8/OiBDb25zdW1vRGV0YWxsZXNbXTtcclxuICBASW5wdXQoKSBhY2NvdW50TGlzdD86IEFjY291bnRbXTtcclxuXHJcbiAgQElucHV0KCkgc2hvd1VzdWFyaW9zR3J1cG9zPzogYm9vbGVhbiA9IHRydWU7XHJcbiAgQElucHV0KCkgc2hvd0NvbmZpZ3VyYWNpb25DdWVudGE/OiBib29sZWFuID0gdHJ1ZTtcclxuICBASW5wdXQoKSBzaG93UGFnb3NGYWN0dXJhY2lvbj86IGJvb2xlYW4gPSB0cnVlO1xyXG4gIEBJbnB1dCgpIHNob3dTdWJzY3JpcGNpb25lc1NlcnZpY2lvcz86IGJvb2xlYW4gPSB0cnVlO1xyXG4gIEBJbnB1dCgpIHNob3dSZWZlcmlyPzogYm9vbGVhbiA9IHRydWU7XHJcblxyXG4gIEBPdXRwdXQoKSBjbGlja1BlcmZpbFByZWZlcmVuY2lhczogRXZlbnRFbWl0dGVyPHZvaWQ+ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xyXG4gIEBPdXRwdXQoKSBjbGlja1VzdWFyaW9zUm9sZXM6IEV2ZW50RW1pdHRlcjx2b2lkPiA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcclxuICBAT3V0cHV0KCkgY2xpY2tDb25maWd1cmFjaW9uOiBFdmVudEVtaXR0ZXI8dm9pZD4gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XHJcbiAgQE91dHB1dCgpIGNsaWNrUGFnb3M6IEV2ZW50RW1pdHRlcjx2b2lkPiA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcclxuICBAT3V0cHV0KCkgY2xpY2tTdWJzU2VydmljaW9zOiBFdmVudEVtaXR0ZXI8dm9pZD4gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XHJcbiAgQE91dHB1dCgpIGNsaWNrQ2FtYmlhckN1ZW50YTogRXZlbnRFbWl0dGVyPHZvaWQ+ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xyXG4gIEBPdXRwdXQoKSBjbGlja0NlcnJhclNlc2lvbjogRXZlbnRFbWl0dGVyPHZvaWQ+ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xyXG4gIEBPdXRwdXQoKSBjbGlja1JlZmVyaXI6IEV2ZW50RW1pdHRlcjx2b2lkPiA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcclxuICBAT3V0cHV0KCkgcmVxdWVzdENsb3NlOiBFdmVudEVtaXR0ZXI8dm9pZD4gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XHJcblxyXG4gIEBPdXRwdXQoKSBjbGlja0FjY291bnRTZWxlY3RlZDogRXZlbnRFbWl0dGVyPGFueT4gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XHJcbiAgQE91dHB1dCgpIGNsaWNrQWNjb3VudFByZWRldGVybWluYWRhOiBFdmVudEVtaXR0ZXI8YW55PiA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcclxuICBAT3V0cHV0KCkgY2xpY2tFZGl0QWNjb3VudDogRXZlbnRFbWl0dGVyPGFueT4gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XHJcbiAgQE91dHB1dCgpIGNsaWNrRGVzdmluY3VsYXJBY2NvdW50OiBFdmVudEVtaXR0ZXI8YW55PiA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcclxuICBAT3V0cHV0KCkgY2xpY2tBZ3JlZ2FyQWNjb3VudDogRXZlbnRFbWl0dGVyPGFueT4gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XHJcblxyXG5cclxuICBzaG93TW9yZTogYm9vbGVhbiA9IGZhbHNlO1xyXG4gIHNob3dGb3JtU3dpdGNoQWNjb3VudDogYm9vbGVhbiA9IGZhbHNlO1xyXG4gIGlzT3BlbjogYm9vbGVhbiA9IGZhbHNlO1xyXG5cclxuICBjbGlja1Nob3dNb3JlKCkge1xyXG4gICAgdGhpcy5zaG93TW9yZSA9ICF0aGlzLnNob3dNb3JlO1xyXG4gIH1cclxuXHJcbiAgb25DbGlja1VzdWFyaW9zUm9sZXMoKSB7XHJcbiAgICB0aGlzLmNsaWNrVXN1YXJpb3NSb2xlcy5lbWl0KCk7XHJcbiAgICB0aGlzLnJlcXVlc3RDbG9zZS5lbWl0KCk7XHJcbiAgfVxyXG5cclxuICBvbkNsaWNrQ29uZmlndXJhY2lvbigpIHtcclxuICAgIHRoaXMuY2xpY2tDb25maWd1cmFjaW9uLmVtaXQoKTtcclxuICAgIHRoaXMucmVxdWVzdENsb3NlLmVtaXQoKTtcclxuICB9XHJcblxyXG4gIG9uQ2xpY2tQYWdvcygpIHtcclxuICAgIHRoaXMuY2xpY2tQYWdvcy5lbWl0KCk7XHJcbiAgICB0aGlzLnJlcXVlc3RDbG9zZS5lbWl0KCk7XHJcbiAgfVxyXG5cclxuICBvbkNsaWNrU3Vic1NlcnZpY2lvcygpIHtcclxuICAgIHRoaXMuY2xpY2tTdWJzU2VydmljaW9zLmVtaXQoKTtcclxuICAgIHRoaXMucmVxdWVzdENsb3NlLmVtaXQoKTtcclxuICB9XHJcblxyXG4gIG9uQ2xpY2tDYW1iaWFyQ3VlbnRhKCkge1xyXG4gICAgdGhpcy5jbGlja0NhbWJpYXJDdWVudGEuZW1pdCgpO1xyXG4gICAgdGhpcy5zaG93Rm9ybVN3aXRjaEFjY291bnQgPSAhdGhpcy5zaG93Rm9ybVN3aXRjaEFjY291bnQ7XHJcbiAgfVxyXG5cclxuICBvbkNsaWNrQ2VycmFyU2VzaW9uKCkge1xyXG4gICAgdGhpcy5jbGlja0NlcnJhclNlc2lvbi5lbWl0KCk7XHJcbiAgfVxyXG5cclxuICBvbkNsaWNrUGVyZmlsUHJlZmVyZW5jaWFzKCkge1xyXG4gICAgdGhpcy5jbGlja1BlcmZpbFByZWZlcmVuY2lhcy5lbWl0KCk7XHJcbiAgICB0aGlzLnJlcXVlc3RDbG9zZS5lbWl0KCk7XHJcbiAgfVxyXG5cclxuICBvbkNsaWNrUmVmZXJpcigpIHtcclxuICAgIHRoaXMuY2xpY2tSZWZlcmlyLmVtaXQoKTtcclxuICAgIHRoaXMucmVxdWVzdENsb3NlLmVtaXQoKTtcclxuICB9XHJcblxyXG4gIG9uQ2xpY2tBY2NvdW50KGFjY291bnQ6IEFjY291bnQpIHtcclxuICAgIHRoaXMuY2xpY2tBY2NvdW50U2VsZWN0ZWQuZW1pdChhY2NvdW50KTtcclxuICAgIHRoaXMuc2hvd0Zvcm1Td2l0Y2hBY2NvdW50ID0gZmFsc2U7XHJcbiAgfVxyXG5cclxuICBhZGRBY2NvdW50KCkge1xyXG4gICAgdGhpcy5jbGlja0FncmVnYXJBY2NvdW50LmVtaXQoKTtcclxuICAgIHRoaXMucmVxdWVzdENsb3NlLmVtaXQoKTtcclxuICB9XHJcblxyXG4gIGdldCBoYXNNdWx0aXBsZVNlcnZpY2VzKCk6IGJvb2xlYW4ge1xyXG4gIHJldHVybiAhISh0aGlzLmRldGFsbGVzQ29uc3VtbyAmJiB0aGlzLmRldGFsbGVzQ29uc3Vtby5sZW5ndGggPiAwKTtcclxufVxyXG59XHJcbiIsIjxkaXYgY2xhc3M9XCJ0YmwtbWVudVwiPlxyXG4gIDxkaXYgY2xhc3M9XCJib2R5LW1lbnUgc2Nyb2xsYWJsZVwiPlxyXG4gICAgPGRpdiBjbGFzcz1cImNvbHVtLW1uLTEgdGV4dC1oZWFkLW1uXCI+XHJcbiAgICAgIDxzcGFuPkVzdMOhcyBuYXZlZ2FuZG8gZW48L3NwYW4+XHJcbiAgICAgIDxkaXYgY2xhc3M9XCJ0eC1yb3ctMVwiPlxyXG4gICAgICAgIDxpdXMtaWNvbi1zbSBpY29uTmFtZT1cImljb24tYWNjb3VudC1jaXJjbGVcIiBjbGFzcz1cImljb24tYWNjLWNpcmNsZVwiPjwvaXVzLWljb24tc20+XHJcbiAgICAgICAgPHNwYW4gY2xhc3M9XCJoNCB0eC1hYm9nXCI+e3sgb2JqZWN0Lm5vbWJyZUNvbXBhbnkgfX08L3NwYW4+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgICA8ZGl2IGNsYXNzPVwidHgtcm93LTEgaWQtY3RcIj5cclxuICAgICAgICA8c3Bhbj5JRCBDdWVudGE8L3NwYW4+XHJcbiAgICAgICAgPHNwYW4gY2xhc3M9XCJ0eC1pZC1jdFwiPnt7IG9iamVjdC5jdWVudGFJRCB9fTwvc3Bhbj5cclxuICAgICAgPC9kaXY+XHJcbiAgICAgIDxkaXYgY2xhc3M9XCJ0eC1yb3ctMSB0eC1yb2xcIj5cclxuICAgICAgICA8c3Bhbj5UdSByb2w8L3NwYW4+XHJcbiAgICAgICAgPHNwYW4gY2xhc3M9XCJ0eC1uYW1lLXJsXCI+e3sgb2JqZWN0LnJvbCB9fTwvc3Bhbj5cclxuICAgICAgPC9kaXY+XHJcbiAgICAgIDxpdXMtc2ltcGxlLWRpdmlkZXI+PC9pdXMtc2ltcGxlLWRpdmlkZXI+XHJcbiAgICA8L2Rpdj5cclxuICAgIEBpZiAoIXNob3dGb3JtU3dpdGNoQWNjb3VudCkge1xyXG4gICAgPGRpdiBjbGFzcz1cImNvbHVtLW1uLTFcIj5cclxuICAgICAgPGRpdiBjbGFzcz1cImVtYWlsLWluZlwiPlxyXG4gICAgICAgIDxpdXMtaWNvbi14cyBpY29uTmFtZT1cImljb24tYWx0ZXJuYXRlLWVtYWlsXCIgY2xhc3M9XCJpY29uLWFsdC1lbWFpbFwiPjwvaXVzLWljb24teHM+XHJcbiAgICAgICAgPHNwYW4+e3sgb2JqZWN0LmNvcnJlbyB9fTwvc3Bhbj5cclxuICAgICAgPC9kaXY+XHJcbiAgICAgIDxpdXMtZHJvcGRvd24tb3B0aW9uLWl0ZW0gKGNsaWNrKT1cIm9uQ2xpY2tQZXJmaWxQcmVmZXJlbmNpYXMoKVwiPlBlcmZpbCwgcHJlZmVyZW5jaWFzIHlcclxuICAgICAgICBzZWd1cmlkYWQ8L2l1cy1kcm9wZG93bi1vcHRpb24taXRlbT5cclxuICAgIDwvZGl2PlxyXG4gICAgPGl1cy1zaW1wbGUtZGl2aWRlcj48L2l1cy1zaW1wbGUtZGl2aWRlcj5cclxuICAgIDxkaXYgY2xhc3M9XCJjb250YWluZXItcGxhblwiIFtuZ0NsYXNzXT1cInsgJ3Nob3ctbW9yZSc6IHNob3dNb3JlIH1cIj5cclxuICAgICAgPGRpdiBjbGFzcz1cImluZi1wbGFuXCI+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cInJvdy1wbGFuLTFcIj5cclxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtcGxhbi0xXCI+XHJcbiAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwidHgtc21hbGwgdHgtdGlwby1wbGFuXCI+e3tcclxuICAgICAgICAgICAgICBzdWJzY3JpcGNpb25EZXRhbGxlPy50aXBvU2VydmljaW9cclxuICAgICAgICAgICAgICB9fTwvc3Bhbj5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cInR4LXJvdy0xXCI+XHJcbiAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJ0eC1iYXNlIHR4LW5hbWUtcGxhblwiPnt7XHJcbiAgICAgICAgICAgICAgICBzdWJzY3JpcGNpb25EZXRhbGxlPy5uYW1lUGxhblxyXG4gICAgICAgICAgICAgICAgfX08L3NwYW4+XHJcbiAgICAgICAgICAgICAgPGl1cy1pY29uLW1kIGljb25OYW1lPVwiaWNvbi1oZWxwXCIgY2xhc3M9XCJpY29uLWhlbHBcIj48L2l1cy1pY29uLW1kPlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cInR4LXJvdy0yIHR4LXNtYWxsXCI+XHJcbiAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInR4LXJvdy0xXCI+XHJcbiAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cInR4LWNvbnRhZG9yLTFcIj5Ub3RhbCBnbG9iYWw8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cInR4LWNvbnRhZG9yLTJcIj57e1xyXG4gICAgICAgICAgICAgICAgICBzdWJzY3JpcGNpb25EZXRhbGxlPy5jYW50VG90YWxcclxuICAgICAgICAgICAgICAgICAgfX08L3NwYW4+XHJcbiAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInR4LXJvdy0xXCI+XHJcbiAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cInR4LWNvbnRhZG9yLTFcIj5EaXNwb25pYmxlIGdsb2JhbDwvc3Bhbj5cclxuICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwidHgtY29udGFkb3ItMlwiPnt7XHJcbiAgICAgICAgICAgICAgICAgIHN1YnNjcmlwY2lvbkRldGFsbGU/LmNhbnREaXNwb25pYmxlXHJcbiAgICAgICAgICAgICAgICAgIH19PC9zcGFuPlxyXG4gICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJ0eC1iYXNlIHR4LWVzdGFkby1wbGFuXCI+e3tcclxuICAgICAgICAgICAgICBzdWJzY3JpcGNpb25EZXRhbGxlPy5lc3RhZG9cclxuICAgICAgICAgICAgICB9fTwvc3Bhbj5cclxuICAgICAgICAgICAgQGlmIChzdWJzY3JpcGNpb25EZXRhbGxlPy5lc1BsYW5HcmF0dWl0bykge1xyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwidHgtcm93LTEgdHgtc21hbGwgdHgtcHJ1ZWJhXCI+XHJcbiAgICAgICAgICAgICAgPGl1cy1pY29uLXhzIGljb25OYW1lPVwiaWNvbi1zY2hlZHVsZVwiPjwvaXVzLWljb24teHM+XHJcbiAgICAgICAgICAgICAgPHNwYW4+UGxhbiBkZSBwcnVlYmEgYWN0aXZvPC9zcGFuPlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICA8aXVzLWJ1dHRvbi1jaXJjbGUtdGVydGlhcnkgaWNvbk5hbWU9XCJpY29uLWRpc2NvdmVyLXR1bmVcIj48L2l1cy1idXR0b24tY2lyY2xlLXRlcnRpYXJ5PlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDxkaXYgc3R5bGU9XCJ3aWR0aDogMTAwJVwiPlxyXG4gICAgICAgICAgPGl1cy1wcm9ncmVzcy1iYXIgW3RvdGFsXT1cInN1YnNjcmlwY2lvbkRldGFsbGU/LmNhbnRUb3RhbCA/PyAwXCIgW3RpdGxlVjFdPVwiJ0p1ZGljaWFsJ1wiXHJcbiAgICAgICAgICAgIFt2MV09XCJzdWJzY3JpcGNpb25EZXRhbGxlPy5jYW50SnVkaWNpYWwgPz8gMFwiIFt0aXRsZVYyXT1cIidTdXBlclNvY2llZGFkZXMnXCJcclxuICAgICAgICAgICAgW3YyXT1cInN1YnNjcmlwY2lvbkRldGFsbGU/LmNhbnRQcm9jZXNvczIgPz8gMFwiIFt0aXRsZVYzXT1cIidQcm9jdXJhZHVyaWEnXCJcclxuICAgICAgICAgICAgW3YzXT1cInN1YnNjcmlwY2lvbkRldGFsbGU/LmNhbnRQcm9jZXNvczMgPz8gMFwiPlxyXG4gICAgICAgICAgPC9pdXMtcHJvZ3Jlc3MtYmFyPlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJsZWdlbmRcIj5cclxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJpdGVtLWNvdW50ZXIgdHgtc21hbGxcIj5cclxuICAgICAgICAgICAgPGl1cy1pY29uLXhzIGljb25OYW1lPVwiaWNvbi1zdG9yYWdlLXNldFwiIGNsYXNzPVwiaWNvbi1zdG9yYWdlLXNldFwiPjwvaXVzLWljb24teHM+XHJcbiAgICAgICAgICAgIDxzcGFuPnt7IHN1YnNjcmlwY2lvbkRldGFsbGU/LmFzaWduYWRvcyA/PyAwIH19PC9zcGFuPlxyXG4gICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICA8ZGl2IGNsYXNzPVwiaXRlbS1jb3VudGVyIHR4LXNtYWxsXCI+XHJcbiAgICAgICAgICAgIDxpdXMtaWNvbi14cyBpY29uTmFtZT1cImljb24tc3RvcmFnZS1wbHVzXCIgY2xhc3M9XCJpY29uLXN0b3JhZ2UtcGx1c1wiPjwvaXVzLWljb24teHM+XHJcbiAgICAgICAgICAgIDxzcGFuPnt7XHJcbiAgICAgICAgICAgICAgc3Vic2NyaXBjaW9uRGV0YWxsZT8uY2FudEFzaWduYWRhRGlzcG9uaWJsZSA/PyAwXHJcbiAgICAgICAgICAgICAgfX08L3NwYW4+XHJcbiAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgPC9kaXY+XHJcbiAgICAgIDxpdXMtc2ltcGxlLWRpdmlkZXI+PC9pdXMtc2ltcGxlLWRpdmlkZXI+XHJcbiAgICAgIEBpZiAoZGV0YWxsZXNDb25zdW1vKSB7XHJcbiAgICAgIEBmb3IgKGRldGFpbCBvZiBkZXRhbGxlc0NvbnN1bW87IHRyYWNrICRpbmRleCkge1xyXG4gICAgICA8ZGl2IGNsYXNzPVwiaW5mLXBsYW5cIj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwicm93LXBsYW4tMVwiPlxyXG4gICAgICAgICAgPGRpdiBjbGFzcz1cImNvbC1wbGFuLTFcIj5cclxuICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJ0eC1zbWFsbCB0eC10aXBvLXBsYW5cIj57e1xyXG4gICAgICAgICAgICAgIGRldGFpbC50aXBvU2VydmljaW9cclxuICAgICAgICAgICAgICB9fTwvc3Bhbj5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cInR4LXJvdy0xXCI+XHJcbiAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJ0eC1iYXNlIHR4LW5hbWUtcGxhblwiPlBvciBjb25zdW1vPC9zcGFuPlxyXG4gICAgICAgICAgICAgIDxpdXMtaWNvbi1tZCBpY29uTmFtZT1cImljb24taGVscFwiIGNsYXNzPVwiaWNvbi1oZWxwXCI+PC9pdXMtaWNvbi1tZD5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ0eC1yb3ctMiB0eC1zbWFsbFwiPlxyXG4gICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ0eC1yb3ctMVwiPlxyXG4gICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJ0eC1jb250YWRvci0xXCI+Q29uc3VtbyBlc3RlIG1lczwvc3Bhbj5cclxuICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwidHgtY29udGFkb3ItMlwiPnt7XHJcbiAgICAgICAgICAgICAgICAgIGRldGFpbC5jYW50Q29uc3VtaWRhXHJcbiAgICAgICAgICAgICAgICAgIH19PC9zcGFuPlxyXG4gICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJ0eC1iYXNlIHR4LWVzdGFkby1wbGFuXCI+e3tcclxuICAgICAgICAgICAgICBkZXRhaWwuZXN0YWRvXHJcbiAgICAgICAgICAgICAgfX08L3NwYW4+XHJcbiAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgIDxpdXMtYnV0dG9uLWNpcmNsZS10ZXJ0aWFyeSBpY29uTmFtZT1cImljb24tZGlzY292ZXItdHVuZVwiPjwvaXVzLWJ1dHRvbi1jaXJjbGUtdGVydGlhcnk+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgICA8aXVzLXNpbXBsZS1kaXZpZGVyPjwvaXVzLXNpbXBsZS1kaXZpZGVyPlxyXG4gICAgICB9XHJcbiAgICAgIH1cclxuICAgIDwvZGl2PlxyXG4gICAgQGlmKGhhc011bHRpcGxlU2VydmljZXMpIHtcclxuICAgIDxpdXMtYnV0dG9uLXN0YW5kYXJkLXRlcnRpYXJ5IGNsYXNzPVwiYnRuLWxpc3RcIiBbaWNvbk5hbWVdPVwiXHJcbiAgICAgICAgICBzaG93TW9yZSA/ICdpY29uLWtleWJvYXJkLWFycm93LXVwJyA6ICdpY29uLWtleWJvYXJkLWFycm93LWRvd24nXHJcbiAgICAgICAgXCIgKGJ1dHRvbkNsaWNrZWQpPVwiY2xpY2tTaG93TW9yZSgpXCI+XHJcbiAgICAgIHt7IHNob3dNb3JlID8gXCJNb3N0cmFyIG1lbm9zXCIgOiBcIk1vc3RyYXIgbcOhc1wiIH19XHJcbiAgICA8L2l1cy1idXR0b24tc3RhbmRhcmQtdGVydGlhcnk+XHJcbiAgICB9XHJcbiAgICA8aXVzLXNpbXBsZS1kaXZpZGVyPjwvaXVzLXNpbXBsZS1kaXZpZGVyPlxyXG4gICAgPGRpdiBjbGFzcz1cImN0bi1pdGVtc1wiPlxyXG4gICAgICBAaWYgKHNob3dVc3Vhcmlvc0dydXBvcykge1xyXG4gICAgICAgIDxpdXMtbWVudS1pdGVtIGljb25OYW1lPVwiaWNvbi1ncm91cHNcIiBpY29uQ29sb3JEZWZhdWx0PVwiIzU5NTk1OVwiIGljb25Db2xvckhvdmVyZWQ9XCIjNTk1OTU5XCIgKGJ1dHRvbkNsaWNrZWQpPVwib25DbGlja1VzdWFyaW9zUm9sZXMoKVwiPlVzdWFyaW9zIHkgcm9sZXM8L2l1cy1tZW51LWl0ZW0+XHJcbiAgICAgIH1cclxuICAgICAgQGlmIChzaG93Q29uZmlndXJhY2lvbkN1ZW50YSkge1xyXG4gICAgICAgIDxpdXMtbWVudS1pdGVtIGljb25OYW1lPVwiaWNvbi1idWlsZFwiIGljb25Db2xvckRlZmF1bHQ9XCIjNTk1OTU5XCIgaWNvbkNvbG9ySG92ZXJlZD1cIiM1OTU5NTlcIiAoYnV0dG9uQ2xpY2tlZCk9XCJvbkNsaWNrQ29uZmlndXJhY2lvbigpXCI+Q29uZmlndXJhY2nDs24gZGUgbGFcclxuICAgICAgICAgIGN1ZW50YTwvaXVzLW1lbnUtaXRlbT5cclxuICAgICAgfVxyXG4gICAgICBAaWYgKHNob3dQYWdvc0ZhY3R1cmFjaW9uKSB7XHJcbiAgICAgICAgPGl1cy1tZW51LWl0ZW0gaWNvbk5hbWU9XCJpY29uLWZpbmFuY2UtY2hpcFwiIGljb25Db2xvckRlZmF1bHQ9XCIjNTk1OTU5XCIgaWNvbkNvbG9ySG92ZXJlZD1cIiM1OTU5NTlcIiAoYnV0dG9uQ2xpY2tlZCk9XCJvbkNsaWNrUGFnb3MoKVwiPlBhZ29zIHkgZmFjdHVyYWNpw7NuPC9pdXMtbWVudS1pdGVtPlxyXG4gICAgICB9XHJcbiAgICAgIEBpZiAoc2hvd1N1YnNjcmlwY2lvbmVzU2VydmljaW9zKSB7XHJcbiAgICAgICAgPGl1cy1tZW51LWl0ZW0gaWNvbk5hbWU9XCJpY29uLWVudGVycHJpc2VcIiBpY29uQ29sb3JEZWZhdWx0PVwiIzU5NTk1OVwiIGljb25Db2xvckhvdmVyZWQ9XCIjNTk1OTU5XCIgKGJ1dHRvbkNsaWNrZWQpPVwib25DbGlja1N1YnNTZXJ2aWNpb3MoKVwiPlN1c2NyaXBjaW9uZXMgeVxyXG4gICAgICAgICAgc2VydmljaW9zPC9pdXMtbWVudS1pdGVtPlxyXG4gICAgICB9XHJcbiAgICAgIEBpZiAoc2hvd1JlZmVyaXIpIHtcclxuICAgICAgICA8aXVzLW1lbnUtaXRlbSBpY29uTmFtZT1cImljb24tc3RyZWFtXCIgaWNvbkNvbG9yRGVmYXVsdD1cIiM1OTU5NTlcIiBpY29uQ29sb3JIb3ZlcmVkPVwiIzU5NTk1OVwiIChidXR0b25DbGlja2VkKT1cIm9uQ2xpY2tSZWZlcmlyKClcIj5SZWZlcmlyIHNlcnZpY2lvPC9pdXMtbWVudS1pdGVtPlxyXG4gICAgICB9XHJcbiAgICA8L2Rpdj5cclxuXHJcbiAgICA8aXVzLXNpbXBsZS1kaXZpZGVyPjwvaXVzLXNpbXBsZS1kaXZpZGVyPlxyXG4gICAgfSBAZWxzZSB7XHJcbiAgICA8ZGl2IGNsYXNzPVwiY29udGFpbmVyLWJvdHRvbVwiPlxyXG4gICAgICA8c3BhbiBjbGFzcz1cInR4LWNhbWJpYXJcIj5DYW1iaWFyIGE8L3NwYW4+XHJcbiAgICAgIDxkaXYgY2xhc3M9XCJjb250YWluZXItbGlzdFwiPlxyXG4gICAgICAgIEBmb3IgKGFjY291bnQgb2YgYWNjb3VudExpc3Q7IHRyYWNrIGFjY291bnQ7IGxldCBpID0gJGluZGV4KSB7XHJcbiAgICAgICAgPGl1cy1idXR0b24tYWNjb3VudHMgKGFjY291bnRTZWxlY3RlZCk9XCJvbkNsaWNrQWNjb3VudChhY2NvdW50KVwiIChvblByZXNzZWRQcmVkZXRlcm1pbmFkbyk9XCJcclxuICAgICAgICAgICAgICAgIGNsaWNrQWNjb3VudFByZWRldGVybWluYWRhLmVtaXQoYWNjb3VudClcclxuICAgICAgICAgICAgICBcIlxyXG4gICAgICAgICAgICAgICxcclxuICAgICAgICAgICAgICAob25QcmVzc2VkRWRpdGFyKT1cImNsaWNrRWRpdEFjY291bnQuZW1pdChhY2NvdW50KVwiXHJcbiAgICAgICAgICAgICAgLFxyXG4gICAgICAgICAgICAgIChvblByZXNzZWREZXN2aW5jdWxhcik9XCJjbGlja0Rlc3ZpbmN1bGFyQWNjb3VudC5lbWl0KGFjY291bnQpXCJcclxuICAgICAgICAgICAgICBbYWNjb3VudF09XCJhY2NvdW50XCJcclxuICAgICAgICAgICAgICBbc2hvd09wdGlvbnNGbGFnXT1cImZhbHNlXCJcclxuICAgICAgICAgICAgPjwvaXVzLWJ1dHRvbi1hY2NvdW50cz5cclxuICAgICAgICAgIH1cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8aXVzLWJ1dHRvbi1zdGFuZGFyZC10ZXJ0aWFyeSBbaWNvbk5hbWVdPVwiJ2ljb24tYWRkJ1wiIChidXR0b25DbGlja2VkKT1cImFkZEFjY291bnQoKVwiPkFncmVnYXJcclxuICAgICAgICAgICAgICAgIG51ZXZhIGN1ZW50YTwvaXVzLWJ1dHRvbi1zdGFuZGFyZC10ZXJ0aWFyeT5cclxuICAgICAgPC9kaXY+XHJcbiAgICB9XHJcbiAgPC9kaXY+XHJcbiAgPGRpdiBjbGFzcz1cImN0bi1pdGVtcyBtZ3QtOFwiPlxyXG4gICAgPGl1cy1tZW51LWl0ZW0gaWNvbk5hbWU9XCJ7e1xyXG4gICAgICAgICFzaG93Rm9ybVN3aXRjaEFjY291bnQgPyAnaWNvbi1jYXNlcycgOiAnaWNvbi1hcnJvdy1sZWZ0LWFsdCdcclxuICAgICAgfX1cIiAoYnV0dG9uQ2xpY2tlZCk9XCJvbkNsaWNrQ2FtYmlhckN1ZW50YSgpXCI+e3tcclxuICAgICAgIXNob3dGb3JtU3dpdGNoQWNjb3VudFxyXG4gICAgICA/IFwiQ2FtYmlhciBkZSBjdWVudGFcIlxyXG4gICAgICA6IFwiVm9sdmVyIGFsIG1lbnUgZGUgdXN1YXJpb1wiXHJcbiAgICAgIH19PC9pdXMtbWVudS1pdGVtPlxyXG4gICAgPGl1cy1tZW51LWl0ZW0gaWNvbk5hbWU9XCJpY29uLWV4aXQtdG8tYXBwXCIgKGJ1dHRvbkNsaWNrZWQpPVwib25DbGlja0NlcnJhclNlc2lvbigpXCI+Q2VycmFyIHNlc2nDs248L2l1cy1tZW51LWl0ZW0+XHJcbiAgPC9kaXY+XHJcbjwvZGl2PiJdfQ==