{"version":3,"sources":["webpack:///./src/pages/views/entregas/entregasUpdatePhase.vue?6ab2","webpack:///./src/pages/views/categoriaproducto/categoriaproductoAdd.vue?bb09","webpack:///src/pages/views/categoriaproducto/categoriaproductoAdd.vue","webpack:///./src/pages/views/categoriaproducto/categoriaproductoAdd.vue?f9ae","webpack:///./src/pages/views/categoriaproducto/categoriaproductoAdd.vue?e976","webpack:///./src/models/familiaProducto/FamiliaProducto.js","webpack:///./node_modules/core-js/internals/native-url.js","webpack:///./src/pages/views/motivoDeclinacion/motivoDeclinacion.vue?d521","webpack:///./src/pages/views/incidencia/incidenciaEdit.vue?a2d0","webpack:///src/pages/views/incidencia/incidenciaEdit.vue","webpack:///./src/pages/views/incidencia/incidenciaEdit.vue?81e4","webpack:///./src/pages/views/incidencia/incidenciaEdit.vue?9e4c","webpack:///./src/pages/views/perfilesEmpresariales/perfilEmpresarialAdd.vue?b802","webpack:///./src/pages/views/propiedadFamiliaProducto/propiedadFamiliaProducto.vue?31fb","webpack:///./src/pages/views/entregas/entregasUpdatePhase.vue?a975","webpack:///src/pages/views/entregas/entregasUpdatePhase.vue","webpack:///./src/pages/views/entregas/entregasUpdatePhase.vue?0b06","webpack:///./src/pages/views/entregas/entregasUpdatePhase.vue?65b5","webpack:///./src/pages/views/incidencia/incidencia.vue?8452","webpack:///src/pages/views/incidencia/incidencia.vue","webpack:///./src/pages/views/incidencia/incidencia.vue?4aec","webpack:///./src/pages/views/incidencia/incidencia.vue?6dbe","webpack:///./src/pages/views/propiedadFamiliaProducto/propiedadFamiliaProductoAdd.vue?289b","webpack:///./node_modules/vue-chartjs/es/mixins/index.js","webpack:///./node_modules/vue-chartjs/es/BaseCharts.js","webpack:///./src/pages/views/subcategoriaproducto/subcategoriaproducto.vue?5db9","webpack:///src/pages/views/subcategoriaproducto/subcategoriaproducto.vue","webpack:///./src/pages/views/subcategoriaproducto/subcategoriaproducto.vue?c172","webpack:///./src/pages/views/subcategoriaproducto/subcategoriaproducto.vue?7bfe","webpack:///./src/pages/views/motivosDevolucion/motivosDevolucion.vue?bb8a","webpack:///./src/pages/views/motivoDeclinacion/motivoDeclinacionEdit.vue?72fe","webpack:///./src/pages/views/organizaciones/organizaciones.vue?0343","webpack:///src/pages/views/organizaciones/organizaciones.vue","webpack:///./src/pages/views/organizaciones/organizaciones.vue?8388","webpack:///./src/pages/views/organizaciones/organizaciones.vue","webpack:///./src/pages/views/productocaracteristica/productocaracteristica.vue?0330","webpack:///src/pages/views/productocaracteristica/productocaracteristica.vue","webpack:///./src/pages/views/productocaracteristica/productocaracteristica.vue?8942","webpack:///./src/pages/views/productocaracteristica/productocaracteristica.vue?b8bf","webpack:///./src/pages/views/propiedadFamiliaProducto/propiedadFamiliaProducto.vue?5352","webpack:///./src/pages/views/desarrollador/desarrolladorIndex.vue?25ba","webpack:///./node_modules/core-js/modules/web.url.js","webpack:///./src/pages/views/incidencia/incidencia.vue?aa0a","webpack:///./src/models/Constants/ConstCategoriasIndex.js","webpack:///./node_modules/chart.js/dist/Chart.js","webpack:///./src/pages/views/perfilesEmpresariales/perfilEmpresarial.vue?f2cf","webpack:///src/pages/views/perfilesEmpresariales/perfilEmpresarial.vue","webpack:///./src/pages/views/perfilesEmpresariales/perfilEmpresarial.vue?d20f","webpack:///./src/pages/views/perfilesEmpresariales/perfilEmpresarial.vue","webpack:///./src/pages/views/subcategoriaproducto/subcategoriaproducto.vue?40a1","webpack:///./src/models/familiaProducto/FamiliaProductoPropiedad.js","webpack:///./src/models/familiaProducto/SubcategoriaProductoTraduccion.js","webpack:///./node_modules/@fullcalendar/core/main.esm.js","webpack:///./src/pages/views/monedas/monedasEdit.vue?8b6a","webpack:///./src/pages/Dashboard/Calendar/Calendar.vue?6d35","webpack:///./node_modules/@fullcalendar/daygrid/main.esm.js","webpack:///./node_modules/@fullcalendar/interaction/main.esm.js","webpack:///./node_modules/@fullcalendar/timegrid/main.esm.js","webpack:///src/pages/Dashboard/Calendar/Calendar.vue","webpack:///./src/pages/Dashboard/Calendar/Calendar.vue?dbee","webpack:///./src/pages/Dashboard/Calendar/Calendar.vue?ac49","webpack:///./src/models/familiaProducto/FamiliaProductoTraduccion.js","webpack:///./src/pages/views/usuarios/usuarioAddEdit.vue?2181","webpack:///src/pages/views/usuarios/usuarioAddEdit.vue","webpack:///./src/pages/views/usuarios/usuarioAddEdit.vue?c5e0","webpack:///./src/pages/views/usuarios/usuarioAddEdit.vue","webpack:///./src/pages/views/horarioIngreso/horarioIngresoAdd.vue?c1ee","webpack:///./src/pages/views/solicitudCambioInformacionCliente/verSolicitud.vue?9199","webpack:///src/pages/views/solicitudCambioInformacionCliente/verSolicitud.vue","webpack:///./src/pages/views/solicitudCambioInformacionCliente/verSolicitud.vue?13ee","webpack:///./src/pages/views/solicitudCambioInformacionCliente/verSolicitud.vue?279b","webpack:///./src/pages/views/pedidos/pedidosDocsAdd.vue?9b5d","webpack:///src/pages/views/pedidos/pedidosDocsAdd.vue","webpack:///./src/pages/views/pedidos/pedidosDocsAdd.vue?2649","webpack:///./src/pages/views/pedidos/pedidosDocsAdd.vue?fade","webpack:///./src/pages/Dashboard/Forms/Wizard.vue?fc8e","webpack:///./src/pages/Dashboard/Forms/Wizard/FirstStep.vue?c19b","webpack:///src/pages/Dashboard/Forms/Wizard/FirstStep.vue","webpack:///./src/pages/Dashboard/Forms/Wizard/FirstStep.vue?8a2d","webpack:///./src/pages/Dashboard/Forms/Wizard/FirstStep.vue","webpack:///./src/pages/Dashboard/Forms/Wizard/SecondStep.vue?7a27","webpack:///src/pages/Dashboard/Forms/Wizard/SecondStep.vue","webpack:///./src/pages/Dashboard/Forms/Wizard/SecondStep.vue?d64d","webpack:///./src/pages/Dashboard/Forms/Wizard/SecondStep.vue","webpack:///./src/pages/Dashboard/Forms/Wizard/ThirdStep.vue?97a7","webpack:///src/pages/Dashboard/Forms/Wizard/ThirdStep.vue","webpack:///./src/pages/Dashboard/Forms/Wizard/ThirdStep.vue?7b52","webpack:///./src/pages/Dashboard/Forms/Wizard/ThirdStep.vue","webpack:///src/pages/Dashboard/Forms/Wizard.vue","webpack:///./src/pages/Dashboard/Forms/Wizard.vue?c404","webpack:///./src/pages/Dashboard/Forms/Wizard.vue","webpack:///./src/pages/views/reclamaciones/reclamaciones.vue?e968","webpack:///./src/pages/views/perfiles/perfilesAddEdit.vue?bb41","webpack:///./src/models/role/RolesTraduccion.js","webpack:///./node_modules/core-js/internals/string-punycode-to-ascii.js","webpack:///./src/pages/views/consultaTrackingPedidos/consultaTrackingPedidos.vue?1825","webpack:///src/pages/views/consultaTrackingPedidos/consultaTrackingPedidos.vue","webpack:///./src/pages/views/consultaTrackingPedidos/consultaTrackingPedidos.vue?b6a0","webpack:///./src/pages/views/consultaTrackingPedidos/consultaTrackingPedidos.vue","webpack:///./node_modules/fuse.js/dist/fuse.esm.js","webpack:///./src/pages/views/notificaciones/notificacionesEdit.vue?64c0","webpack:///./src/pages/Dashboard/Forms/RegularForms.vue?e0e8","webpack:///src/pages/Dashboard/Forms/RegularForms.vue","webpack:///./src/pages/Dashboard/Forms/RegularForms.vue?8e4d","webpack:///./src/pages/Dashboard/Forms/RegularForms.vue","webpack:///./src/pages/views/monedas/monedasAdd.vue?5f08","webpack:///./src/pages/views/perfiles/perfilesAdd.vue?721a","webpack:///src/pages/views/perfiles/perfilesAdd.vue","webpack:///./src/pages/views/perfiles/perfilesAdd.vue?f49d","webpack:///./src/pages/views/perfiles/perfilesAdd.vue?4e41","webpack:///./node_modules/msal/lib-es6/utils/Constants.js","webpack:///./node_modules/msal/lib-es6/utils/CryptoUtils.js","webpack:///./node_modules/msal/lib-es6/error/AuthError.js","webpack:///./node_modules/msal/lib-es6/authority/Authority.js","webpack:///./node_modules/msal/lib-es6/utils/StringUtils.js","webpack:///./node_modules/msal/lib-es6/error/ClientAuthError.js","webpack:///./node_modules/msal/lib-es6/error/ClientConfigurationError.js","webpack:///./node_modules/msal/lib-es6/ScopeSet.js","webpack:///./node_modules/msal/lib-es6/utils/UrlUtils.js","webpack:///./node_modules/msal/lib-es6/cache/AccessTokenKey.js","webpack:///./node_modules/msal/lib-es6/cache/AccessTokenValue.js","webpack:///./node_modules/msal/lib-es6/ServerRequestParameters.js","webpack:///./node_modules/msal/lib-es6/XHRClient.js","webpack:///./node_modules/msal/lib-es6/authority/TrustedAuthority.js","webpack:///./node_modules/msal/lib-es6/Logger.js","webpack:///./node_modules/msal/lib-es6/ClientInfo.js","webpack:///./node_modules/msal/lib-es6/utils/TimeUtils.js","webpack:///./node_modules/msal/lib-es6/utils/TokenUtils.js","webpack:///./node_modules/msal/lib-es6/IdToken.js","webpack:///./node_modules/msal/lib-es6/cache/AccessTokenCacheItem.js","webpack:///./node_modules/msal/lib-es6/cache/BrowserStorage.js","webpack:///./node_modules/msal/lib-es6/utils/RequestUtils.js","webpack:///./node_modules/msal/lib-es6/cache/AuthCache.js","webpack:///./node_modules/msal/lib-es6/Account.js","webpack:///./node_modules/msal/lib-es6/utils/WindowUtils.js","webpack:///./node_modules/msal/lib-es6/utils/ResponseUtils.js","webpack:///./node_modules/msal/lib-es6/authority/AuthorityFactory.js","webpack:///./node_modules/msal/lib-es6/Configuration.js","webpack:///./node_modules/msal/lib-es6/error/ServerError.js","webpack:///./node_modules/msal/lib-es6/error/InteractionRequiredAuthError.js","webpack:///./node_modules/msal/lib-es6/AuthResponse.js","webpack:///./node_modules/msal/lib-es6/telemetry/TelemetryConstants.js","webpack:///./node_modules/msal/lib-es6/telemetry/ApiEvent.js","webpack:///./node_modules/msal/lib-es6/telemetry/TelemetryUtils.js","webpack:///./node_modules/msal/lib-es6/telemetry/TelemetryEvent.js","webpack:///./node_modules/msal/lib-es6/telemetry/DefaultEvent.js","webpack:///./node_modules/msal/lib-es6/telemetry/HttpEvent.js","webpack:///./node_modules/msal/lib-es6/telemetry/TelemetryManager.js","webpack:///./node_modules/msal/lib-es6/utils/AuthCacheUtils.js","webpack:///./node_modules/msal/lib-es6/UserAgentApplication.js","webpack:///./src/pages/views/subcategoriaproducto/subcategoriaproductoEdit.vue?8cae","webpack:///./src/pages/views/monedas/monedasEdit.vue?046d","webpack:///src/pages/views/monedas/monedasEdit.vue","webpack:///./src/pages/views/monedas/monedasEdit.vue?8923","webpack:///./src/pages/views/monedas/monedasEdit.vue?729b","webpack:///./src/pages/views/propiedadFamiliaProducto/propiedadFamiliaProducto.vue?4b60","webpack:///src/pages/views/propiedadFamiliaProducto/propiedadFamiliaProducto.vue","webpack:///./src/pages/views/propiedadFamiliaProducto/propiedadFamiliaProducto.vue?abc4","webpack:///./src/pages/views/propiedadFamiliaProducto/propiedadFamiliaProducto.vue?b074","webpack:///./src/pages/views/familiaproducto/familiaProductoAddEdit.vue?2d03","webpack:///./src/pages/views/perfiles/perfilesAddEdit.vue?68c6","webpack:///src/pages/views/perfiles/perfilesAddEdit.vue","webpack:///./src/pages/views/perfiles/perfilesAddEdit.vue?e3bc","webpack:///./src/pages/views/perfiles/perfilesAddEdit.vue?5623","webpack:///./src/pages/views/incidencia/incidenciaEdit.vue?f24f","webpack:///./src/models/familiaProducto/SubcategoriaProducto.js","webpack:///./src/pages/views/catalogos/unidadMedida/unidadMedidaAdd.vue?9e4f","webpack:///src/pages/views/catalogos/unidadMedida/unidadMedidaAdd.vue","webpack:///./src/pages/views/catalogos/unidadMedida/unidadMedidaAdd.vue?a6fb","webpack:///./src/pages/views/catalogos/unidadMedida/unidadMedidaAdd.vue?d60c","webpack:///./node_modules/@fullcalendar/vue/node_modules/fast-deep-equal/index.js","webpack:///./src/pages/views/categoriaproducto/categoriaproductoEdit.vue?5861","webpack:///src/pages/views/categoriaproducto/categoriaproductoEdit.vue","webpack:///./src/pages/views/categoriaproducto/categoriaproductoEdit.vue?0878","webpack:///./src/pages/views/categoriaproducto/categoriaproductoEdit.vue?2f95","webpack:///./src/pages/views/comunicados/comunicados.vue?0159","webpack:///src/pages/views/comunicados/comunicados.vue","webpack:///./src/pages/views/comunicados/comunicados.vue?65a9","webpack:///./src/pages/views/comunicados/comunicados.vue","webpack:///./src/pages/views/pedidos/pedidosDocs.vue?317d","webpack:///src/pages/views/pedidos/pedidosDocs.vue","webpack:///./src/pages/views/pedidos/pedidosDocs.vue?3c46","webpack:///./src/pages/views/pedidos/pedidosDocs.vue","webpack:///./src/pages/views/motivoDeclinacion/motivoDeclinacion.vue?7371","webpack:///src/pages/views/motivoDeclinacion/motivoDeclinacion.vue","webpack:///./src/pages/views/motivoDeclinacion/motivoDeclinacion.vue?8b05","webpack:///./src/pages/views/motivoDeclinacion/motivoDeclinacion.vue?9edc","webpack:///./src/pages/views/subcategoriaproducto/subcategoriaproductoAdd.vue?c944","webpack:///./src/pages/views/notificaciones/notificacionesAdd.vue?effc","webpack:///./src/models/familiaProducto/CategoriaProductoTraduccion.js","webpack:///./src/pages/views/productocaracteristica/productocaracteristica.vue?f98a","webpack:///./src/pages/views/subcategoriaproducto/subcategoriaproductoAdd.vue?af4e","webpack:///src/pages/views/subcategoriaproducto/subcategoriaproductoAdd.vue","webpack:///./src/pages/views/subcategoriaproducto/subcategoriaproductoAdd.vue?af0d","webpack:///./src/pages/views/subcategoriaproducto/subcategoriaproductoAdd.vue?5ee1","webpack:///./src/pages/views/subcategoriaproducto/subcategoriaproductoEdit.vue?52df","webpack:///./src/pages/views/solicitudCambioInformacionCliente/verSolicitud.vue?f3f0","webpack:///./src/pages/views/pedidos/pedidosDocsAdd.vue?0d59","webpack:///./node_modules/core-js/modules/web.url-search-params.js","webpack:///./node_modules/core-js/internals/get-iterator.js","webpack:///./src/pages/views/catalogos/unidadMedida/unidadMedidaEdit.vue?a9b5","webpack:///./src/pages/views/categoriaproducto/categoriaproductoEdit.vue?7eb4","webpack:///./src/pages/views/subcategoriaproducto/subcategoriaproductoAdd.vue?3c8c","webpack:///./src/pages/views/catalogos/unidadMedida/unidadMedidaAdd.vue?8793","webpack:///./src/pages/views/empresasTransportista/empresaTransportista.vue?6910","webpack:///./src/pages/views/categoriaproducto/categoriaproductoAdd.vue?fafd","webpack:///./src/pages/views/perfilesEmpresariales/perfilEmpresarialAdd.vue?802b","webpack:///src/pages/views/perfilesEmpresariales/perfilEmpresarialAdd.vue","webpack:///./src/pages/views/perfilesEmpresariales/perfilEmpresarialAdd.vue?4ef6","webpack:///./src/pages/views/perfilesEmpresariales/perfilEmpresarialAdd.vue?60f2","webpack:///./src/pages/views/perfiles/perfilesAdd.vue?df3d","webpack:///./src/models/role/Role.js","webpack:///./src/pages/views/notificaciones/notificacionesEdit.vue?0fab","webpack:///src/pages/views/notificaciones/notificacionesEdit.vue","webpack:///./src/pages/views/notificaciones/notificacionesEdit.vue?38e6","webpack:///./src/pages/views/notificaciones/notificacionesEdit.vue?7374","webpack:///./src/pages/views/clientes/estadoCuentaClientePDF.vue?a1a0","webpack:///src/pages/views/clientes/estadoCuentaClientePDF.vue","webpack:///./src/pages/views/clientes/estadoCuentaClientePDF.vue?f987","webpack:///./src/pages/views/clientes/estadoCuentaClientePDF.vue","webpack:///./src/models/familiaProducto/CategoriaProducto.js","webpack:///./src/pages/Dashboard/Calendar/Calendar.vue?fc82","webpack:///./src/pages/views/configuracionAsignacionesLogistica/configuracionAsignacionLogisticaAddEdit.vue?eb75","webpack:///src/pages/views/configuracionAsignacionesLogistica/configuracionAsignacionLogisticaAddEdit.vue","webpack:///./src/pages/views/configuracionAsignacionesLogistica/configuracionAsignacionLogisticaAddEdit.vue?91b7","webpack:///./src/pages/views/configuracionAsignacionesLogistica/configuracionAsignacionLogisticaAddEdit.vue","webpack:///./src/pages/views/catalogos/unidadMedida/unidadMedidaEdit.vue?4df8","webpack:///src/pages/views/catalogos/unidadMedida/unidadMedidaEdit.vue","webpack:///./src/pages/views/catalogos/unidadMedida/unidadMedidaEdit.vue?7d2d","webpack:///./src/pages/views/catalogos/unidadMedida/unidadMedidaEdit.vue?cb75","webpack:///./src/pages/views/FAQ/preguntasAdd.vue?f961","webpack:///src/pages/views/FAQ/preguntasAdd.vue","webpack:///./src/pages/views/FAQ/preguntasAdd.vue?37ac","webpack:///./src/pages/views/FAQ/preguntasAdd.vue","webpack:///./src/pages/views/reclamaciones/reclamaciones.vue?42fb","webpack:///src/pages/views/reclamaciones/reclamaciones.vue","webpack:///./src/pages/views/reclamaciones/reclamaciones.vue?5868","webpack:///./src/pages/views/reclamaciones/reclamaciones.vue?db76","webpack:///./src/pages/views/familiaproducto/familiaProductoAddEdit.vue?e9bf","webpack:///./src/pages/views/notificaciones/notificaciones.vue?fc1a","webpack:///src/pages/views/notificaciones/notificaciones.vue","webpack:///./src/pages/views/notificaciones/notificaciones.vue?6185","webpack:///./src/pages/views/notificaciones/notificaciones.vue?67bf","webpack:///./src/models/familiaProducto/GrupoPropiedadFamiliaProductoTraduccion.js","webpack:///./src/pages/views/desarrollador/desarrolladorIndex.vue?0ebf","webpack:///src/pages/views/desarrollador/desarrolladorIndex.vue","webpack:///./src/pages/views/desarrollador/desarrolladorIndex.vue?71dd","webpack:///./src/pages/views/desarrollador/desarrolladorIndex.vue?a536","webpack:///./src/pages/views/motivoDeclinacion/motivoDeclinacionEdit.vue?01c1","webpack:///src/pages/views/motivoDeclinacion/motivoDeclinacionEdit.vue","webpack:///./src/pages/views/motivoDeclinacion/motivoDeclinacionEdit.vue?3a56","webpack:///./src/pages/views/motivoDeclinacion/motivoDeclinacionEdit.vue?f1dd","webpack:///./src/pages/views/subcategoriaproducto/subcategoriaproductoEdit.vue?fa0b","webpack:///src/pages/views/subcategoriaproducto/subcategoriaproductoEdit.vue","webpack:///./src/pages/views/subcategoriaproducto/subcategoriaproductoEdit.vue?7e69","webpack:///./src/pages/views/subcategoriaproducto/subcategoriaproductoEdit.vue?168f","webpack:///./src/pages/views/horarioIngreso/horarioIngresoAdd.vue?2217","webpack:///src/pages/views/horarioIngreso/horarioIngresoAdd.vue","webpack:///./src/pages/views/horarioIngreso/horarioIngresoAdd.vue?98cc","webpack:///./src/pages/views/horarioIngreso/horarioIngresoAdd.vue?f5f0","webpack:///./src/pages/views/monedas/monedasAdd.vue?6061","webpack:///src/pages/views/monedas/monedasAdd.vue","webpack:///./src/pages/views/monedas/monedasAdd.vue?a8a3","webpack:///./src/pages/views/monedas/monedasAdd.vue?00c7","webpack:///./src/pages/views/empresasTransportista/empresaTransportista.vue?7a52","webpack:///src/pages/views/empresasTransportista/empresaTransportista.vue","webpack:///./src/pages/views/empresasTransportista/empresaTransportista.vue?4589","webpack:///./src/pages/views/empresasTransportista/empresaTransportista.vue?900c","webpack:///./src/pages/views/propiedadFamiliaProducto/propiedadFamiliaProductoAdd.vue?13d6","webpack:///./src/pages/views/grupoPropiedadFamiliaProducto/grupoPropiedadFamiliaProductoAdd.vue?eb5c","webpack:///src/pages/views/grupoPropiedadFamiliaProducto/grupoPropiedadFamiliaProductoAdd.vue","webpack:///./src/pages/views/grupoPropiedadFamiliaProducto/grupoPropiedadFamiliaProductoAdd.vue?7c4b","webpack:///./src/pages/views/grupoPropiedadFamiliaProducto/grupoPropiedadFamiliaProductoAdd.vue","webpack:///src/pages/views/propiedadFamiliaProducto/propiedadFamiliaProductoAdd.vue","webpack:///./src/pages/views/propiedadFamiliaProducto/propiedadFamiliaProductoAdd.vue?4fdd","webpack:///./src/pages/views/propiedadFamiliaProducto/propiedadFamiliaProductoAdd.vue?02b9","webpack:///./src/pages/views/familiaproducto/familiaProductoAddEdit.vue?75c3","webpack:///src/pages/views/familiaproducto/familiaProductoAddEdit.vue","webpack:///./src/pages/views/familiaproducto/familiaProductoAddEdit.vue?212e","webpack:///./src/pages/views/familiaproducto/familiaProductoAddEdit.vue?2ab0","webpack:///./node_modules/@fullcalendar/vue/main.esm.js","webpack:///./src/pages/views/propiedadFamiliaProducto/propiedadFamiliaProductoAdd.vue?73d0","webpack:///./src/pages/views/reclamaciones/reclamacionesAddEdit.vue?0b20","webpack:///src/pages/views/reclamaciones/reclamacionesAddEdit.vue","webpack:///./src/pages/views/reclamaciones/reclamacionesAddEdit.vue?7ed1","webpack:///./src/pages/views/reclamaciones/reclamacionesAddEdit.vue","webpack:///./src/pages/views/configuracionAsignacionesSAC/configuracionAsignacionesSACAddEdit.vue?2ec3","webpack:///src/pages/views/configuracionAsignacionesSAC/configuracionAsignacionesSACAddEdit.vue","webpack:///./src/pages/views/configuracionAsignacionesSAC/configuracionAsignacionesSACAddEdit.vue?d969","webpack:///./src/pages/views/configuracionAsignacionesSAC/configuracionAsignacionesSACAddEdit.vue","webpack:///./src/pages/views/notificaciones/notificaciones.vue?75dc","webpack:///./src/pages/views/motivosDevolucion/motivosDevolucion.vue?da6f","webpack:///src/pages/views/motivosDevolucion/motivosDevolucion.vue","webpack:///./src/pages/views/motivosDevolucion/motivosDevolucion.vue?e60c","webpack:///./src/pages/views/motivosDevolucion/motivosDevolucion.vue?c515","webpack:///./src/pages/views/notificaciones/notificacionesAdd.vue?9391","webpack:///src/pages/views/notificaciones/notificacionesAdd.vue","webpack:///./src/pages/views/notificaciones/notificacionesAdd.vue?90a5","webpack:///./src/pages/views/notificaciones/notificacionesAdd.vue?fe17","webpack:///./src/pages/views/comunicados/comunicadosAdd.vue?bb7c","webpack:///src/pages/views/comunicados/comunicadosAdd.vue","webpack:///./src/pages/views/comunicados/comunicadosAdd.vue?6e5b","webpack:///./src/pages/views/comunicados/comunicadosAdd.vue","webpack:///./src/models/familiaProducto/Idioma.js","webpack:///./src/models/familiaProducto/PropiedadFamiliaProductoTraduccion.js","webpack:///./src/pages/views/FAQ/preguntasDetails.vue?a059","webpack:///src/pages/views/FAQ/preguntasDetails.vue","webpack:///./src/pages/views/FAQ/preguntasDetails.vue?5fd3","webpack:///./src/pages/views/FAQ/preguntasDetails.vue"],"names":["render","_vm","this","_h","$createElement","_c","_self","attrs","modalOpen","on","$event","staticClass","slot","_v","_s","$t","ref","scopedSlots","_u","key","fn","handleSubmit","preventDefault","submitNewCatProd","_l","category","lang","idioma","model","value","callback","$$v","$set","expression","staticStyle","constCategoriaIndex","type","index","parseInt","nativeOn","cancelAdd","staticRenderFns","components","data","computed","created","claveIdioma","$store","state","usuario","usuarios_IdUsuario","user","idUsuario","traducciones","availableLangs","map","mounted","EventBus","$on","title","html","showConfirmButton","methods","nombreCategoria","activo","numIndex","component","FamiliaProducto","obj","undefined","Object","assign","module","exports","fails","wellKnownSymbol","IS_PURE","ITERATOR","url","URL","searchParams","result","pathname","forEach","toJSON","sort","href","get","String","URLSearchParams","username","host","hash","modals","classic","submitNewType","item","idioma_idIdioma","class","sizes","passed","failed","required_text","idTipoDocPedido","nombre","estatus","$refs","formAdd","reset","submitUpdatePhase","verificarEstatus","phase","tipoFase","fasesEntregaEnum","getValue","_e","changeSelect","partida","idDetallePedido","direccionEntrega","pickerOptions","minRows","maxRows","motivo","idTipoIncidencia","textoCampoUsuarioEntrega","docType","fileList","handleFile","disabledDate","time","getTime","Date","now","modalDocsAdd","file_formats","file_doc","fileEmpty","docsTypes","sin_adjunto_select","deshabilitarAdjunto","mostrarRazonRechazo","mostrarCampoUsuarioEntrega","selectedEmpty","partidasEntregas","phases","motivosRechazo","pedido","numeroRemision","idTracking","transportista","transporte","tipo_documento","fecha","comentario","enlace","personaEntrega","motivoRechazo","evidencias","deleteFileForm","getFileExtension1","exec","filename","upload","clearFiles","faseEntrega","Entregada","ubicacionAproximada","addNewTypeIncident","searchQuery","queriedData","scope","row","props","activeIncident","$index","editarTipo","from","to","total","pagination","perPage","IncidenciaAdd","IncidenciaEdit","slice","highBound","currentPage","searchedData","length","perPageOptions","tableData","fuseSearch","applyFilters","doClose","$emit","itemInci","watch","generateChart","chartId","chartType","createElement","style","styles","cssClasses","id","width","height","default","Number","plugins","Array","_chart","_plugins","addPlugin","plugin","$data","push","generateLegend","renderChart","options","destroy","canvas","Error","getContext","beforeDestroy","Bar","Line","openItemAdd","column","label","minWidth","prop","active","EditItem","NPagination","subcategoriaproductoAdd","subcategoriaproductoEdit","tableColumns","handleDelete","$swal","deleteRow","indexToDelete","splice","init","idOrganizacion","descripcion","openItemEdit","name","OrganizacionAddEdit","loadOrganizations","ProductocaracteristicaAdd","ProductocaracteristicaEdit","usuarios_idUsuario","EOF","$","DESCRIPTORS","USE_NATIVE_URL","global","defineProperties","redefine","anInstance","has","arrayFrom","codeAt","toASCII","setToStringTag","URLSearchParamsModule","InternalStateModule","NativeURL","getInternalSearchParamsState","getState","setInternalState","set","getInternalURLState","getterFor","floor","Math","pow","INVALID_AUTHORITY","INVALID_SCHEME","INVALID_HOST","INVALID_PORT","ALPHA","ALPHANUMERIC","DIGIT","HEX_START","OCT","DEC","HEX","FORBIDDEN_HOST_CODE_POINT","FORBIDDEN_HOST_CODE_POINT_EXCLUDING_PERCENT","LEADING_AND_TRAILING_C0_CONTROL_OR_SPACE","TAB_AND_NEW_LINE","parseHost","input","codePoints","charAt","parseIPv6","isSpecial","test","parseIPv4","percentEncode","C0ControlPercentEncodeSet","partsLength","numbers","part","radix","number","ipv4","parts","split","pop","numbersSeen","ipv4Piece","swaps","swap","address","pieceIndex","compress","pointer","char","findLongestZeroSequence","ipv6","maxIndex","maxLength","currStart","currLength","serializeHost","ignore0","unshift","join","toString","fragmentPercentEncodeSet","pathPercentEncodeSet","userinfoPercentEncodeSet","code","encodeURIComponent","specialSchemes","ftp","file","http","https","ws","wss","scheme","includesCredentials","password","cannotHaveUsernamePasswordPort","cannotBeABaseURL","isWindowsDriveLetter","string","normalized","second","startsWithWindowsDriveLetter","third","shortenURLsPath","path","pathSize","isSingleDot","segment","toLowerCase","isDoubleDot","SCHEME_START","SCHEME","NO_SCHEME","SPECIAL_RELATIVE_OR_AUTHORITY","PATH_OR_AUTHORITY","RELATIVE","RELATIVE_SLASH","SPECIAL_AUTHORITY_SLASHES","SPECIAL_AUTHORITY_IGNORE_SLASHES","AUTHORITY","HOST","HOSTNAME","PORT","FILE","FILE_SLASH","FILE_HOST","PATH_START","PATH","CANNOT_BE_A_BASE_URL_PATH","QUERY","FRAGMENT","parseURL","stateOverride","base","bufferCodePoints","failure","buffer","seenAt","seenBracket","seenPasswordToken","port","query","fragment","replace","i","codePoint","encodedCodePoints","shift","URLConstructor","baseState","that","arguments","urlString","TypeError","searchParamsState","updateSearchParams","updateURL","serializeURL","call","origin","getOrigin","protocol","getProtocol","getUsername","getPassword","getHost","hostname","getHostname","getPort","getPathname","search","getSearch","getSearchParams","getHash","URLPrototype","prototype","output","error","accessorDescriptor","getter","setter","configurable","enumerable","nativeCreateObjectURL","createObjectURL","nativeRevokeObjectURL","revokeObjectURL","blob","apply","forced","sham","ConstCategoriasIndex","1","2","tipo","vals","factory","e","moment","createCommonjsModule","getCjsExportFromNamespace","n","hasOwnProperty","colorName","conversions","reverseKeywords","convert","rgb","channels","labels","hsl","hsv","hwb","cmyk","xyz","lab","lch","hex","keyword","ansi16","ansi256","hcg","apple","gray","defineProperty","comparativeDistance","x","y","h","s","l","r","g","b","min","max","delta","rdif","gdif","bdif","v","diff","diffc","c","w","m","k","reversed","currentClosestKeyword","currentClosestDistance","Infinity","distance","z","a","t1","t2","t3","val","sv","smin","lmin","hi","f","p","q","t","sl","vmin","wh","bl","ratio","y2","x2","z2","hr","atan2","PI","sqrt","cos","sin","args","round","ansi","color","mult","rem","integer","toUpperCase","substring","match","colorString","grayscale","hue","chroma","pure","mg","buildGraph","graph","models","keys","len","parent","deriveBFS","fromModel","queue","current","adjacents","adjacent","node","link","wrapConversion","toModel","cur","conversion","route","wrapRaw","wrappedFn","wrapRounded","routes","routeModels","raw","colorConvert","colorName$1","getRgba","getHsla","getRgb","getHsl","getHwb","getAlpha","hexString","rgbString","rgbaString","percentString","percentaString","hslString","hslaString","hwbString","abbr","rgba","per","hexAlpha","parseFloat","scale","alpha","isNaN","hsla","hexDouble","reverseNames","num","str","Color","valid","values","setValues","red","lightness","whiteness","cyan","isValid","setSpace","rgbArray","hslArray","hsvArray","hwbArray","concat","cmykArray","rgbaArray","hslaArray","setChannel","green","blue","saturation","saturationv","blackness","magenta","yellow","black","rgbNumber","luminosity","lum","chan","contrast","color2","lum1","lum2","level","contrastRatio","dark","yiq","light","negate","lighten","darken","saturate","desaturate","whiten","blacken","greyscale","clearer","opaquer","rotate","degrees","mix","mixinColor","weight","color1","w1","w2","clone","source","target","console","spaces","maxes","getValues","space","capped","chans","sname","svalues","window","chartjsColor","isValidKey","indexOf","helpers","noop","uid","isNullOrUndef","isArray","substr","isObject","isFinite","valueOrDefault","defaultValue","valueAtIndexOrDefault","thisArg","each","loopable","reverse","arrayEquals","a0","a1","ilen","v0","v1","create","klen","_merger","tval","sval","merge","_mergerIf","mergeIf","sources","merger","extend","dst","src","inherits","extensions","me","ChartElement","constructor","Surrogate","__super__","_deprecated","previous","warn","helpers_core","callCallback","array","fromIndex","getValueOrDefault","getValueAtIndexOrDefault","effects","linear","easeInQuad","easeOutQuad","easeInOutQuad","easeInCubic","easeOutCubic","easeInOutCubic","easeInQuart","easeOutQuart","easeInOutQuart","easeInQuint","easeOutQuint","easeInOutQuint","easeInSine","easeOutSine","easeInOutSine","easeInExpo","easeOutExpo","easeInOutExpo","easeInCirc","easeOutCirc","easeInOutCirc","easeInElastic","asin","easeOutElastic","easeInOutElastic","easeInBack","easeOutBack","easeInOutBack","easeInBounce","easeOutBounce","easeInOutBounce","helpers_easing","easingEffects","RAD_PER_DEG","DOUBLE_PI","HALF_PI","QUARTER_PI","TWO_THIRDS_PI","exports$1","clear","chart","ctx","clearRect","roundedRect","radius","left","top","right","bottom","moveTo","arc","closePath","rect","drawPoint","rotation","xOffset","yOffset","size","cornerRadius","rad","save","translate","drawImage","restore","beginPath","lineTo","SQRT1_2","fill","stroke","_isPointInArea","point","area","epsilon","clipArea","clip","unclipArea","flip","stepped","steppedLine","midpoint","tension","bezierCurveTo","controlPointPreviousX","controlPointNextX","controlPointPreviousY","controlPointNextY","helpers_canvas","drawRoundedRectangle","defaults","_set","defaultColor","defaultFontColor","defaultFontFamily","defaultFontSize","defaultFontStyle","defaultLineHeight","showLines","core_defaults","toFontString","font","family","helpers_options","toLineHeight","matches","toPadding","_parseFont","globalDefaults","fontSize","fontFamily","lineHeight","fontStyle","resolve","inputs","context","info","cacheable","exports$2","_factorize","log10","exponent","log","LOG10E","powerOf10","isPowerOf10","helpers_math","getRtlAdapter","rectX","setWidth","textAlign","align","xPlus","leftForLtr","itemWidth","getLtrAdapter","_itemWidth","getAdapter","rtl","overrideTextDirection","direction","original","getPropertyValue","getPropertyPriority","setProperty","prevTextDirection","restoreTextDirection","helpers_rtl","helpers$1","easing","math","interpolate","start","view","ease","actual","c0","c1","Element","configuration","initialize","_type","hidden","pivot","_view","_model","_start","transition","tooltipPosition","hasValue","isNumber","core_element","exports$3","currentStep","numSteps","onAnimationProgress","onAnimationComplete","core_animation","animation","duration","onProgress","onComplete","core_animations","animations","request","addAnimation","lazy","startTime","animating","requestAnimationFrame","cancelAnimation","findIndex","requestAnimFrame","startDigest","advance","nextStep","arrayEvents","listenArrayEvents","listener","_chartjs","listeners","method","res","object","unlistenArrayEvents","stub","DatasetController","datasetIndex","datasetElementType","dataElementType","_datasetElementOptions","_dataElementOptions","linkScales","addElements","getMeta","updateIndex","meta","scales","dataset","getDataset","scalesOpts","xAxisID","xAxes","yAxisID","yAxes","datasets","getDatasetMeta","getScaleForId","scaleID","_getValueScaleId","_getIndexScaleId","_getValueScale","_getIndexScale","_update","_data","createMetaDataset","_datasetIndex","createMetaData","_index","metaData","addElementAndReset","element","updateElement","buildOrUpdateElements","isExtensible","resyncElements","_configure","_config","_cachedDataOpts","update","easingValue","elements","draw","getStyle","_resolveDatasetElementOptions","_resolveDataElementOptions","backgroundColor","borderColor","hover","readKey","datasetOpts","custom","elementOptions","cached","dataIndex","freeze","removeHoverStyle","$previousStyle","setHoverStyle","getHoverColor","borderWidth","hoverBackgroundColor","hoverBorderColor","hoverBorderWidth","_removeDatasetHoverStyle","_setDatasetHoverStyle","hoverOptions","prev","numMeta","numData","insertElements","count","onDataPush","onDataPop","onDataShift","onDataSplice","onDataUnshift","core_datasetController","TAU","clipArc","startAngle","endAngle","pixelMargin","angleMargin","outerRadius","innerRadius","drawFullCircleBorders","vm","inner","fullCircles","drawBorder","borderAlign","lineWidth","lineJoin","element_arc","inLabelRange","mouseX","hoverRadius","inRange","chartX","chartY","pointRelativePosition","getAngleFromPoint","angle","betweenAngles","withinRadius","getCenterPoint","halfAngle","halfRadius","getArea","centreAngle","rangeFromCentre","circumference","fillStyle","strokeStyle","valueOrDefault$1","line","borderCapStyle","borderDash","borderDashOffset","borderJoinStyle","capBezierPoints","element_line","currentVM","spanGaps","points","_children","globalOptionLineElements","lastDrawnIndex","_loop","previousItem","skip","lineCap","setLineDash","lineDashOffset","valueOrDefault$2","defaultColor$1","xRange","abs","hitRadius","yRange","mouseY","pointStyle","element_point","inXRange","inYRange","padding","chartArea","defaultColor$2","isVertical","getBarBounds","x1","y1","half","orig","v2","parseBorderSkipped","edge","borderSkipped","horizontal","parseBorderWidth","maxW","maxH","boundingRects","bounds","border","outer","skipX","skipY","rectangle","element_rectangle","rects","fillRect","Arc","Point","Rectangle","deprecated","valueOrDefault$3","computeMinSampleSize","pixels","curr","_length","getTicks","getPixelForTick","computeFitCategoryTraits","ruler","thickness","barThickness","stackCount","categoryPercentage","barPercentage","chunk","computeFlexCategoryTraits","next","percent","end","mode","offset","gridLines","offsetGridLines","bar","controller_bar","scaleOpts","stack","minBarLength","maxBarThickness","_ruler","getRuler","_xScale","_yScale","datasetLabel","_updateElementGeometry","vscale","getBasePixel","isHorizontal","vpixels","calculateBarValuePixels","ipixels","calculateBarIndexPixels","head","center","_getStacks","last","metasets","_getMatchingVisibleMetas","stacked","stacks","getStackCount","getStackIndex","getPixelForValue","_startPixel","_endPixel","imeta","ivalue","stackLength","_parseValue","range","stackIndex","indexOpts","valueOpts","valueOrDefault$4","resolve$1","position","tooltips","callbacks","dataPoint","xLabel","yLabel","controller_bubble","xScale","yScale","dsIndex","getPixelForDecimal","NaN","_options","valueOrDefault$5","PI$1","DOUBLE_PI$1","HALF_PI$1","animateRotate","animateScale","legendCallback","listItem","listItemSpan","list","document","setAttribute","appendChild","createTextNode","outerHTML","legend","generateLabels","controller","text","onClick","legendItem","cutoutPercentage","tooltipItem","dataLabel","controller_doughnut","getRingIndex","ringIndex","j","isDatasetVisible","maxWidth","maxHeight","opts","ratioX","ratioY","offsetX","offsetY","arcs","cutout","chartWeight","_getRingWeight","startX","startY","endX","endY","contains0","contains90","contains180","contains270","minX","minY","maxX","maxY","getMaxBorderWidth","radiusLength","_getVisibleDatasetWeightTotal","calculateTotal","_getRingWeightOffset","animationOpts","centerX","centerY","calculateCircumference","hoverWidth","ringWeightOffset","dataSetIndex","axis","horizontalBar","controller_horizontalBar","valueOrDefault$6","resolve$2","isPointInArea","scaleClip","halfBorderWidth","tickOpts","ticks","defaultClip","toClip","controller_line","config","showLine","_showLine","lineTension","_scale","updateBezierControlPoints","lineModel","calculatePointY","lineOptions","ds","dsMeta","stackedRightValue","rightValue","sumPos","sumNeg","getRightValue","_getSortedVisibleDatasetMetas","controlPoints","capControlPoint","pt","filter","cubicInterpolationMode","splineCurveMonotone","splineCurve","nextItem","resolve$3","angleLines","display","circular","pointLabels","beginAtZero","controller_polarArea","starts","_starts","angles","_angles","_updateRadius","countVisibleElements","_computeAngle","minSize","getVisibleDatasetCount","xCenter","yCenter","datasetStartAngle","getDistanceFromCenterForValue","resetRadius","doughnut","controller_pie","valueOrDefault$7","controller_radar","pointPosition","getPointPositionForValue","scatter","controller_scatter","controllers","bubble","polarArea","pie","radar","getRelativePosition","native","parseVisibleItems","handler","metadata","jlen","getIntersectItems","getNearestItems","intersect","distanceMetric","minDistance","POSITIVE_INFINITY","nearestItems","getDistanceMetricForAxis","useX","useY","pt1","pt2","deltaX","deltaY","indexMode","items","core_interaction","modes","single","nearest","intersectsItem","filterByPosition","where","pos","sortByWeight","wrapBoxes","boxes","box","layoutBoxes","setLayoutDims","layouts","params","layout","fullWidth","availableWidth","vBoxMaxWidth","hBoxMaxHeight","buildLayoutBoxes","leftAndTop","rightAndBottom","vertical","getCombinedMax","maxPadding","updateDims","newWidth","newHeight","getPadding","boxPadding","outerWidth","outerHeight","handleMaxPadding","updatePos","change","getMargins","marginForPositions","positions","margin","fitBoxes","refit","changed","refitBoxes","placeBoxes","userPadding","core_layouts","addBox","_layers","removeBox","layoutItem","configure","layoutOptions","availableHeight","verticalBoxes","horizontalBoxes","platform_basic","acquireContext","platform_dom","platform_dom$1","__proto__","stylesheet","EXPANDO_KEY","CSS_PREFIX","CSS_SIZE_MONITOR","CSS_RENDER_MONITOR","CSS_RENDER_ANIMATION","ANIMATION_START_EVENTS","EVENT_TYPES","touchstart","touchmove","touchend","pointerenter","pointerdown","pointermove","pointerup","pointerleave","pointerout","readUsedSize","property","initCanvas","renderHeight","getAttribute","renderWidth","initial","displayWidth","aspectRatio","displayHeight","supportsEventListenerOptions","supports","addEventListener","eventListenerOptions","passive","addListener","removeListener","removeEventListener","createEvent","nativeEvent","fromNativeEvent","event","throttled","ticking","createDiv","cls","el","className","createResizer","maxSize","resizer","expand","shrink","_reset","scrollLeft","scrollTop","onScroll","bind","watchForRender","expando","proxy","renderProxy","animationName","reflow","offsetParent","classList","add","unwatchForRender","remove","addResizeListener","container","maintainAspectRatio","parentNode","clientWidth","insertBefore","firstChild","removeResizeListener","removeChild","injectCSS","rootNode","css","containsStyles","platform_dom$2","disableCSSInjection","_enabled","_ensureLoaded","root","getRootNode","targetNode","getElementById","releaseContext","removeAttribute","proxies","addEvent","removeEvent","implementation","platform","core_plugins","_cacheId","register","unregister","idx","getAll","notify","hook","descriptor","descriptors","cache","$plugins","_invalidate","core_scaleService","constructors","registerScaleType","scaleConstructor","scaleDefaults","getScaleConstructor","getScaleDefaults","updateScaleDefaults","additions","addScalesToLayout","valueOrDefault$8","getRtlHelper","enabled","titleFontStyle","titleSpacing","titleMarginBottom","titleFontColor","titleAlign","bodySpacing","bodyFontColor","bodyAlign","footerFontStyle","footerSpacing","footerMarginTop","footerFontColor","footerAlign","yPadding","xPadding","caretPadding","caretSize","multiKeyBackground","displayColors","beforeTitle","tooltipItems","labelCount","afterTitle","beforeBody","beforeLabel","labelColor","activeElement","labelTextColor","afterLabel","afterBody","beforeFooter","footer","afterFooter","positioners","average","eventPosition","nearestElement","d","distanceBetweenPoints","tp","pushOrConcat","toPush","splitNewlines","createTooltipItem","indexScale","valueScale","getLabelForIndex","getBaseModel","tooltipOpts","xAlign","yAlign","textDirection","_bodyFontFamily","bodyFontFamily","_bodyFontStyle","bodyFontStyle","_bodyAlign","bodyFontSize","_titleFontFamily","titleFontFamily","_titleFontStyle","titleFontSize","_titleAlign","_footerFontFamily","footerFontFamily","_footerFontStyle","footerFontSize","_footerAlign","opacity","legendColorBackground","getTooltipSize","tooltip","body","combinedBodyLength","reduce","bodyItem","before","lines","after","titleLineCount","footerLineCount","widthPadding","maxLineWidth","measureText","fontString","determineAlignment","lf","rf","olf","orf","yf","midX","midY","getBackgroundPoint","alignment","paddingAndSize","radiusAndPadding","getAlignedX","getBeforeAfterBodyLines","exports$4","_lastActive","getTitle","getBeforeBody","getBody","bodyItems","getAfterBody","getFooter","existingModel","_active","backgroundPoint","tooltipSize","caretX","caretY","labelColors","labelTextColors","_eventPosition","itemSort","dataPoints","drawCaret","tooltipPoint","caretPosition","getCaretPosition","x3","y3","ptX","ptY","tmp","drawTitle","rtlHelper","textBaseline","fillText","drawBody","textColor","drawColorBoxes","xLinePadding","colorX","fillLineOfText","bodyAlignForCalculation","rtlColorX","strokeRect","drawFooter","drawBackground","quadraticCurveTo","hasTooltipContent","globalAlpha","handleEvent","getElementsAtEventForMode","positioners_1","core_tooltip","valueOrDefault$9","mergeScaleConfig","slen","mergeConfig","initConfig","updateConfig","newOptions","ensureScalesHaveIDs","buildOrUpdateScales","nextAvailableScaleId","axesOpts","prefix","hasId","positionIsHorizontal","compare2Level","l1","l2","events","onHover","animationDuration","responsive","responsiveAnimationDuration","Chart","construct","_bufferedRender","instances","retinaScale","devicePixelRatio","bindEvents","resize","initToolTip","stop","silent","getMaximumWidth","getMaximumHeight","newSize","onResize","scalesOptions","scaleOptions","xAxisOptions","yAxisOptions","updated","dtype","dposition","isDefault","scaleType","scaleClass","mergeTicksOptions","hasUpdated","buildOrUpdateControllers","newControllers","destroyDatasetMeta","order","ControllerClass","resetElements","updateLayout","updateDatasets","lastActive","_bufferedRequest","_idx","updateDataset","animationOptions","animationObject","easingFunction","stepDecimal","layers","drawDatasets","_drawTooltip","_getSortedDatasetMetas","filterVisible","drawDataset","getElementAtEvent","getElementsAtEvent","getElementsAtXAxis","getDatasetAtEvent","_meta","unbindEvents","toBase64Image","toDataURL","_chartInstance","_listeners","eventHandler","updateHoverStyle","bufferedRequest","core_controller","Controller","types","configMerge","scaleMerge","core_helpers","parseMaxStyle","styleValue","parentProperty","valueInPixels","isConstrainedValue","getConstraintDimension","domNode","maxStyle","percentageProperty","defaultView","_getParentNode","constrainedNode","getComputedStyle","constrainedContainer","hasCNode","hasCContainer","infinity","collection","filterCallback","filtered","findNextWhere","arrayToSearch","startIndex","currentItem","findPreviousWhere","almostEquals","almostWhole","rounded","NEGATIVE_INFINITY","sign","toRadians","toDegrees","radians","_decimalPlaces","centrePoint","anglePoint","distanceFromXCenter","distanceFromYCenter","radialDistanceFromCenter","aliasPixel","pixelWidth","_alignPixel","pixel","currentDevicePixelRatio","halfWidth","firstPoint","middlePoint","afterPoint","d01","d12","s01","s12","fa","fb","EPSILON","pointBefore","pointCurrent","pointAfter","alphaK","betaK","tauK","squaredMagnitude","pointsWithTangents","deltaK","mK","pointsLen","slopeDeltaX","loop","niceNum","niceFraction","fraction","webkitRequestAnimationFrame","mozRequestAnimationFrame","oRequestAnimationFrame","msRequestAnimationFrame","setTimeout","evt","originalEvent","srcElement","boundingRect","getBoundingClientRect","touches","clientX","clientY","paddingLeft","paddingTop","paddingRight","paddingBottom","getConstraintWidth","getConstraintHeight","_calculatePadding","parentDimension","cw","clientHeight","ch","currentStyle","forceRatio","pixelRatio","pixelSize","longestText","arrayOfThings","gc","garbageCollect","thing","nestedThing","longest","gcLen","textWidth","numberOfLabelLines","numberOfLines","CanvasGradient","colorValue","CanvasPattern","abstract","DateAdapter","formats","parse","format","startOf","endOf","_create","override","members","_date","core_adapters","core_ticks","formatters","tickValue","logDelta","tickString","maxTick","logTick","numExponential","toExponential","numDecimal","toFixed","logarithmic","remain","valueOrDefault$a","sample","arr","numItems","increment","getPixelForGridLine","validIndex","lineValue","caches","computeLabelSizes","tickFonts","tickFont","nestedLabel","widest","highest","widths","heights","offsets","widestLabelSize","highestLabelSize","major","minor","valueAt","first","getTickMarkLength","drawTicks","tickMarkLength","getScaleLabelHeight","parseFontOptions","nestedOpts","fontColor","parseTickFontOptions","nonSkipped","ticksToFilter","getEvenSpacing","calculateSpacing","majorIndices","axisLength","ticksLimit","factors","factor","evenMajorSpacing","spacing","getMajorIndices","skipMajors","tick","ceil","majorStart","majorEnd","drawOnChartArea","zeroLineWidth","zeroLineColor","zeroLineBorderDash","zeroLineBorderDashOffset","scaleLabel","labelString","minRotation","maxRotation","mirror","autoSkip","autoSkipPadding","labelOffset","Scale","zeroLineIndex","_ticks","_getLabels","xLabels","yLabels","beforeUpdate","margins","samplingEnabled","sampleSize","_labelSizes","_maxLabelLines","longestLabelWidth","longestTextCache","_gridLineItems","_labelItems","beforeSetDimensions","setDimensions","afterSetDimensions","beforeDataLimits","determineDataLimits","afterDataLimits","beforeBuildTicks","buildTicks","afterBuildTicks","_convertTicksToLabels","beforeCalculateTickRotation","calculateTickRotation","afterCalculateTickRotation","beforeFit","fit","afterFit","_ticksToDraw","_autoSkip","afterUpdate","startPixel","endPixel","reversePixels","_reversePixels","beforeTickToLabelConversion","convertTicksToLabels","userCallback","afterTickToLabelConversion","labelSizes","maxLabelWidth","maxLabelHeight","tickWidth","maxLabelDiagonal","numTicks","labelRotation","_isVisible","_getLabelSizes","scaleLabelOpts","gridLineOpts","isBottom","firstLabelSize","lastLabelSize","lineSpace","tickPadding","isRotated","angleRadians","cosRotation","sinRotation","labelHeight","offsetLeft","offsetRight","labelWidth","handleMargins","isFullWidth","rawValue","_getScaleLabel","getValueForPixel","decimal","getDecimalForPixel","getBaseValue","avgMajorSpacing","maxTicksLimit","_tickSize","numMajorIndices","optionTicks","rot","_computeGridLineItems","borderValue","alignedLineValue","tx1","ty1","tx2","ty2","lineColor","ticksLength","tl","axisWidth","axisHalfWidth","alignPixel","alignBorderValue","_computeLabelItems","lineCount","textOffset","isMirrored","fonts","_drawGrid","firstLineWidth","lastLineWidth","_drawLabels","_drawTitle","scaleLabelX","scaleLabelY","scaleLabelFontColor","scaleLabelFont","scaleLabelPadding","halfLineHeight","isLeft","tz","gz","_draw","core_scale","isNullOrUndef$1","defaultConfig","scale_category","ticksOpts","minIndex","_startValue","_valueRange","valueCategory","_defaults","isNullOrUndef$2","generateTicks","generationOptions","dataRange","niceMin","niceMax","numSpaces","MIN_SPACING","stepSize","unit","maxNumSpaces","maxTicks","precision","rmin","rmax","scale_linearbase","handleTickRangeOptions","minSign","maxSign","setMin","suggestedMin","setMax","suggestedMax","getTickLimit","_computeTickLimit","handleDirectionalChanges","numericGeneratorOptions","fixedStepSize","ticksAsNumbers","_endValue","defaultConfig$1","DEFAULT_MIN","DEFAULT_MAX","getOrCreateStack","neg","stackData","relativePoints","updateMinMax","scale_linear","hasStacks","stackValues","_defaults$1","valueOrDefault$b","generateTicks$1","exp","significand","tickVal","endExp","endSignificand","minNotZero","lastTick","defaultConfig$2","nonNegativeOrDefault","scale_logarithmic","IDMatches","valuesPerStack","valuesForType","minVal","maxVal","tickValues","_getFirstTickValue","_valueOffset","_defaults$2","valueOrDefault$c","valueAtIndexOrDefault$1","resolve$4","defaultConfig$3","animate","showLabelBackdrop","backdropColor","backdropPaddingY","backdropPaddingX","getTickBackdropHeight","measureLabelSize","determineLimits","fitWithPointLabels","textSize","plFont","furthestLimits","furthestAngles","_pointLabelSizes","valueCount","getPointPosition","drawingArea","getIndexAngle","hLimits","vLimits","setReductions","getTextAlignForAngle","adjustPointPositionForLabelHeight","drawPointLabels","pointLabelOpts","tickBackdropHeight","outerDistance","extra","pointLabelPosition","pointLabelFontColor","drawRadiusLine","numberOrZero","param","scale_radialLinear","setCenterPoint","largestPossibleRadius","radiusReductionLeft","radiusReductionRight","radiusReductionTop","radiusReductionBottom","leftMovement","rightMovement","topMovement","bottomMovement","maxRight","maxLeft","maxTop","maxBottom","angleMultiplier","scalingFactor","distanceFromCenter","thisAngle","getBasePosition","angleLineOpts","tickFontColor","_defaults$3","deprecated$1","resolve$5","valueOrDefault$d","MIN_INTEGER","MIN_SAFE_INTEGER","MAX_INTEGER","MAX_SAFE_INTEGER","INTERVALS","millisecond","common","steps","minute","hour","day","week","month","quarter","year","UNITS","sorter","arrayUnique","out","getMin","getMax","buildLookupTable","timestamps","distribution","table","lookup","mid","i0","i1","lo","interpolate$1","skey","tkey","span","toTimestamp","adapter","_adapter","parser","determineUnitForAutoTicks","minUnit","capacity","interval","determineUnitForFormatting","determineMajorUnit","generate","timeOpts","unitStepSize","weekday","isoWeekday","computeOffsets","setMajorTicks","majorUnit","ticksFromTimestamps","defaultConfig$4","adapters","displayFormat","displayFormats","scale_time","date","timestamp","labelsAdded","dataLabels","_table","_timestamps","getLabelCapacity","_unit","_majorUnit","_offsets","tooltipFormat","datetime","tickFormatFunction","minorFormat","majorFormat","nestedTickOpts","formatter","getPixelForOffset","_getLabelSize","tickLabelWidth","tickFontSize","getLabelWidth","exampleTime","exampleLabel","_defaults$4","radialLinear","FORMATS","_id","valueOf","amount","filler","propagate","mappers","visible","boundary","decodeFill","computeLinearBoundary","scaleBottom","scaleTop","scaleZero","computeCircularBoundary","cx","cy","computeBoundary","resolveTarget","visited","createMapper","isDrawable","drawArea","curve0","curve1","len0","len1","doFill","mapper","p0","p1","d0","d1","loopOffset","plugin_filler","afterDatasetsUpdate","$filler","beforeDatasetsDraw","getRtlHelper$1","noop$1","valueOrDefault$e","getBoxWidth","labelOpts","usePointStyle","boxWidth","ci","onLeave","lineDash","Legend","legendHitBoxes","_hoveredItem","doughnutMode","beforeBuildLabels","buildLabels","afterBuildLabels","legendItems","labelFont","hitboxes","lineWidths","totalHeight","vPadding","columnWidths","columnHeights","totalWidth","currentColWidth","currentColHeight","lineDefault","legendHeight","legendWidth","cursor","drawLegendBox","SQRT2","halfFontSize","xLeft","yMiddle","alignmentOffset","dimension","blockSize","itemHeight","realX","_getLegendItemAt","hitBox","lh","hoveredItem","createNewLegendAndAttach","legendOpts","plugin_legend","_element","beforeInit","afterEvent","noop$2","Title","titleX","titleY","fontOpts","createNewTitleBlockAndAttach","titleOpts","titleBlock","plugin_title","_adapters","Animation","animationService","Interaction","scaleService","Ticks","Tooltip","pluginService","PluginBase","canvasHelpers","layoutService","LinearScaleBase","klass","cfg","concurrencyStamp","$router","initRolesEmpresariales","FamiliaProductoPropiedad","SubcategoriaProductoTraduccion","elementPropHash","colSpan","rowSpan","containerTagHash","tagName","content","attrName","applyStyle","innerHTML","appendToElement","htmlToElement","trim","computeContainerTag","htmlToElements","htmlToNodeList","childNodes","normalizeContent","prependToElement","newEls","afterEl","insertAfterElement","refEl","nextSibling","els","Node","removeElement","matchesMethod","matchesSelector","msMatchesSelector","closestMethod","closest","selector","documentElement","contains","elementMatches","parentElement","nodeType","elementClosest","findElements","containers","HTMLElement","allMatches","querySelectorAll","findChildren","parents","children","childNode","PIXEL_PROP_RE","propName","applyStyleProp","pointInsideRect","intersectRects","rect1","rect2","constrainPoint","getRectCenter","diffPoints","point1","point2","isRtlScrollbarOnLeft","getIsRtlScrollbarOnLeft","computeIsRtlScrollbarOnLeft","outerEl","overflow","innerEl","sanitizeScrollbarWidth","computeEdges","computedStyle","borderLeft","borderLeftWidth","borderRight","borderRightWidth","borderTop","borderTopWidth","borderBottom","borderBottomWidth","scrollbarLeftRight","offsetWidth","scrollbarBottom","offsetHeight","scrollbarLeft","scrollbarRight","computeInnerRect","goWithinPadding","outerRect","computeRect","edges","pageXOffset","pageYOffset","computeViewportRect","computeHeightAndMargins","computeVMargins","marginTop","marginBottom","getClippingParents","overflowY","overflowX","computeClippingRect","rect0","ev","listenBySelector","eventType","realHandler","matchedChild","listenToHoverBySelector","onMouseEnter","onMouseLeave","currentMatchedChild","realOnMouseLeave_1","transitionEventNames","whenTransitionDone","realCallback","eventName","DAY_IDS","addWeeks","dateToUtcArray","arrayToUtcDate","addDays","addMs","diffWeeks","m0","m1","diffDays","diffHours","diffMinutes","diffSeconds","diffDayAndTime","m0day","startOfDay","m1day","years","months","days","milliseconds","diffWholeWeeks","diffWholeDays","timeAsMs","getUTCFullYear","getUTCMonth","getUTCDate","startOfHour","getUTCHours","startOfMinute","getUTCMinutes","startOfSecond","getUTCSeconds","weekOfYear","marker","dow","doy","weekOfGivenYear","nextW","firstWeekStart","firstWeekOffset","dayStart","fwd","fwdlw","getUTCDay","dateToLocalArray","getFullYear","getMonth","getDate","getHours","getMinutes","getSeconds","getMilliseconds","arrayToLocalDate","getUTCMilliseconds","UTC","isValidDate","INTERNAL_UNITS","PARSE_RE","createDuration","_a","parseString","normalizeObject","getWeeksFromInput","hours","minutes","seconds","ms","weeks","durationsEqual","addDurations","subtractDurations","multiplyDuration","asRoughYears","dur","asRoughDays","asRoughMonths","asRoughMs","wholeDivideDurations","numerator","denominator","localRes","isInt","greatestDurationDenominator","dontReturnWeeks","compensateScroll","rowEl","scrollbarWidths","marginLeft","marginRight","uncompensateScroll","disableCursor","enableCursor","distributeHeight","shouldRedistribute","minOffset1","minOffset2","flexEls","flexOffsets","flexHeights","usedHeight","undistributeHeight","minOffset","naturalHeight","naturalOffset","matchCellWidths","maxInnerWidth","innerWidth_1","subtractInnerElHeight","reflowStyleProps","resetStyleProps","preventSelection","allowSelection","preventContextMenu","allowContextMenu","parseFieldSpecs","token","specs","tokens","field","func","compareByFieldSpecs","obj0","obj1","fieldSpecs","cmp","compareByFieldSpec","fieldSpec","flexibleCompare","localeCompare","capitaliseFirstLetter","padStart","compareNumbers","applyAll","functions","thisObj","ret","firstDefined","_i","debounce","wait","timeout","later","refineProps","rawProps","processors","leftoverProps","refined","processor","Function","Boolean","computeAlignedDayRange","timedRange","dayCnt","computeVisibleDayRange","nextDayThreshold","startDay","endDay","endTimeMS","isMultiDayRange","visibleRange","diffDates","date0","date1","dateEnv","largeUnit","diffWholeYears","diffWholeMonths","extendStatics","setPrototypeOf","__extends","__","__assign","parseRecurring","eventInput","allDayDefault","recurringTypes","leftovers","localLeftovers","parsed","allDay","allDayGuess","typeData","typeId","expandRecurringRanges","eventDef","framingRange","typeDef","recurringDef","markers","subtract","mergeProps","propObjs","complexProps","complexObjs","dest","filterHash","mapHash","newHash","arrayToHash","a_1","hashValuesToArray","isPropsEqual","parseEvents","rawEvents","sourceId","calendar","allowOpenRange","eventStore","createEmptyEventStore","rawEvents_1","rawEvent","tuple","parseEvent","eventTupleToStore","defs","def","defId","instance","instanceId","expandRecurring","defaultAllDayEventDuration","defaultTimedEventDuration","pluginSystem","hooks","starts_1","createEventInstance","getRelevantEvents","def_1","newStore","filterEventStoreDefs","lookDef","isEventDefsGrouped","def0","def1","groupId","transformRawEvents","eventSource","calEachTransform","opt","sourceEachTransform","eventDataTransform","transformEachRawEvent","refinedEvents","rawEvents_2","refinedEvent","mergeEventStores","store0","store1","filterFunc","parseRange","createMarker","invertRanges","ranges","constraintRange","dateRange","invertedRanges","compareRanges","range0","range1","intersectRanges","newRange","rangesEqual","rangesIntersect","rangeContainsRange","outerRange","innerRange","rangeContainsMarker","constrainMarkerToRange","isArraysEqual","memoize","workerFunc","memoizeOutput","equalityFunc","cachedRes","newRes","EXTENDED_SETTINGS_AND_SEVERITIES","separator","omitZeroMinute","meridiem","omitCommas","STANDARD_DATE_PROP_SEVERITIES","timeZoneName","era","MERIDIEM_RE","COMMA_RE","MULTI_SPACE_RE","LTR_RE","UTC_RE","NativeFormatter","formatSettings","standardDateProps","extendedSettings","severity","name_1","buildFormattingFunc","formatRange","diffSeverity","computeMarkerDiffSeverity","calendarSystem","biggestUnitForPartial","full0","full1","partialDateProps","computePartialFormattingOptions","partialFormattingFunc","partial0","partial1","insertion","findCommonInsertion","getLargestUnit","standardDatePropCnt","formatTimeZoneOffset","timeZoneOffset","formatWeekNumber","computeWeekNumber","weekLabel","locale","buildNativeFormattingFunc","sanitizeSettings","timeZone","zeroFormat","normalFormat","Intl","DateTimeFormat","codes","zeroProps","postProcess","injectTzoStr","toLocaleLowerCase","tzoStr","replaced","simpleNumberFormat","isRtl","ca","getMarkerYear","getMarkerMonth","getMarkerDay","biggestUnit","partialOptions","name_2","found0","before0","after0","found1","before1","after1","CmdFormatter","cmdStr","cmdFormatter","createVerboseFormattingArg","FuncFormatter","createFormatter","defaultSeparator","buildIsoString","stripZeroTime","toISOString","formatIsoTimeString","doIso","mins","startInfo","expandZonedMarker","endInfo","localeCodes","dateInfo","markerToArray","EventSourceApi","internalEventSource","dispatch","refetch","sourceIds","publicId","EventApi","_calendar","_def","_instance","setProp","_b","DATE_PROPS","NON_DATE_PROPS","mutate","standardProps","UNSCOPED_EVENT_UI_PROPS","ui","startEditable","durationEditable","setExtendedProp","extendedProps","setStart","startInput","instanceRange","startDelta","granularity","maintainDuration","datesDelta","setEnd","endInput","endDelta","hasEnd","setDates","moveStart","deltaInput","moveEnd","moveDates","setAllDay","formatInput","forcedStartTzo","forcedEndTzo","forcedTzo","mutation","fromApi","eventSources","toDate","rendering","constraints","overlap","allows","classNames","sliceEventStore","eventUiBases","inverseBgByGroupId","inverseBgByDefId","defByGroupId","bgRanges","fgRanges","eventUis","compileEventUis","origRange","normalRange","slicedRange","isStart","isEnd","invertedRanges_1","invertedRange","invertedRanges_2","bg","fg","hasBgRendering","filterSegsViaEls","segs","isMirror","hasPublicHandlers","seg","publiclyTrigger","eventRange","segs_1","setElSeg","fcSeg","getElSeg","eventDefs","compileEventUi","uis","combineEventUis","triggerRenderedSegs","isMirrors","segs_2","publiclyTriggerAfterSizing","eventSourceLoadingLevel","afterSizingTriggers","_eventsPositioned","triggerWillRemoveSegs","segs_3","trigger","segs_4","computeEventDraggable","eventUi","transformers","isDraggableTransformers","transformers_1","transformer","computeEventStartResizable","eventResizableFromStart","computeEventEndResizable","applyMutationToEventStore","eventConfigBase","eventConfigs","applyMutationToEventDef","eventDefMutationAppliers","applyMutationToEventInstance","eventConfig","appliers","copy","appliers_1","applier","eventInstance","forceAllDay","clearEnd","getDefaultEventEnd","reduceEventStore","action","dateProfile","receiveRawEvents","fetchId","fetchRange","activeRange","rezoneDates","oldDateEnv","applyMutationToRelated","excludeInstances","excludeEventsBySourceId","latestFetchId","subset","expandRange","newDateEnv","canComputeOffset","relevant","removals","isInteractionValid","interaction","isNewPropsValid","eventDrag","isDateSelectionValid","dateSelection","newProps","businessHours","eventSelection","eventResize","isPropsValid","dateSpanMeta","filterConfig","isInteractionPropsValid","isDateSelectionPropsValid","subjectEventStore","mutatedEvents","subjectDefs","subjectInstances","subjectConfigs","isEvent","selectionConfig","otherEventStore","affectedEvents","otherDefs","otherInstances","otherConfigs","subjectInstanceId","subjectInstance","subjectRange","subjectConfig","subjectDef","allConstraintsPass","overlapFunc","otherInstanceId","otherInstance","otherOverlap","calendarEventStore","subjectAllow","subjectDateSpan","origDef","origInstance","eventApi","buildDateSpanApi","relevantEventStore","relevantDefs","relevantInstances","selection","selectionRange","relevantInstanceId","relevantInstance","selectionAllow","fullDateSpan","businessHoursUnexpanded","constraints_1","constraint","anyRangesContainRange","constraintToRanges","eventStoreToRanges","outerRanges","outerRanges_1","normalizeConstraint","htmlEscape","cssToStr","cssProps","statements","attrsToStr","parseClassName","editable","allow","processUnscopedUiProps","processScopedUiProps","rawScoped","rawUnscoped","wasFound","scopedKey","EMPTY_EVENT_UI","combineTwoEventUis","item0","item1","computeIsAllDayDefault","leftovers0","recurringRes","parseEventDef","leftovers1","singleRes","parseSingle","pluckNonDateProps","eventDefParsers","eventDefParser","newLeftovers","startMeta","endMeta","pluckDateProps","startMarker","endMarker","createMarkerMeta","isTimeUnspecified","preLeftovers","DEF_DEFAULTS","endTime","daysOfWeek","parseBusinessHours","refineInputs","rawDefs","rawDef","memoizeRendering","renderFunc","unrenderFunc","dependencies","thisContext","prevArgs","dependents","unrender","dependents_1","dependent","dependencies_1","dependency","EMPTY_EVENT_STORE","Splitter","getKeysForEventDefs","_getKeysForEventDefs","splitDateSelection","_splitDateSpan","splitEventStore","_splitEventStore","splitIndividualUi","_splitIndividualUi","splitEventDrag","_splitInteraction","splitEventResize","eventUiBuilders","splitProps","_this","keyInfos","getKeyInfo","defKeys","dateSelections","individualUi","eventStores","eventDrags","eventResizes","buildEventUiForKey","keyInfo","buildEventUi","dateSpan","dateSpans","getKeysForDateSpan","keys_1","getKeysForEventDef","splitStores","splitHashes","splitStates","affectedStores_1","mutatedKeysByDefId","mutatedStores_1","populate","origSeg","allUi","eventUiForKey","baseParts","stuff","buildGotoAnchorHtml","allOptions","gotoOptions","innerHtml","forceOff","finalOptions","formatIso","omitTime","navLinks","JSON","stringify","getAllDayHtml","allDayHtml","allDayText","getDayClasses","noThemeHighlight","todayStart","todayEnd","theme","classes","monthMode","currentRange","getNow","getClass","unpromisify","success","isResolved","wrappedSuccess","wrappedFailure","then","Mixin","mixInto","destClass","mixIntoObj","destObj","getOwnPropertyNames","mixOver","EmitterMixin","_super","addToHash","_handlers","one","_oneHandlers","off","removeFromHash","triggerWith","hasHandlers","PositionCache","originEl","build","originClientRect","buildElHorizontals","buildElVerticals","originClientLeft","lefts","rights","originClientTop","tops","bottoms","leftToIndex","leftPosition","topToIndex","topPosition","getWidth","leftIndex","getHeight","topIndex","ScrollController","getMaxScrollTop","getScrollHeight","getClientHeight","getMaxScrollLeft","getScrollWidth","getClientWidth","canScrollVertically","canScrollHorizontally","canScrollUp","getScrollTop","canScrollDown","canScrollLeft","getScrollLeft","canScrollRight","ElementScrollController","setScrollTop","setScrollLeft","scrollWidth","scrollHeight","WindowScrollController","scroll","ScrollComponent","applyOverflow","setHeight","lockOverflow","getScrollbarWidths","Theme","calendarOptions","processIconOverride","iconOverrideOption","setIconOverride","iconOverrideHash","iconClassesCopy","buttonName","iconClasses","applyIconOverridePrefix","iconOverridePrefix","getIconClass","baseIconClass","getCustomButtonIconClass","customButtonProps","iconOverrideCustomButtonOption","guid","ComponentContext","dir","eventOrderSpecs","eventOrder","Component","everRendered","addEqualityFuncs","newFuncs","equalityFuncs","receiveProps","receiveContext","recycleProps","anyChanges","comboProps","oldContext","firstContext","oldProps","DateComponent","buildPositionCaches","queryHit","positionLeft","positionTop","elWidth","elHeight","validRange","isValidSegDownEl","isPopover","isInPopover","isValidDateDownEl","segEl","fgSegSelector","bgSegSelector","uid$1","createPlugin","deps","reducers","eventDragMutationMassagers","dateSelectionTransformers","datePointTransforms","dateSpanTransforms","views","viewPropsTransformers","externalDefTransforms","eventResizeJoinTransforms","viewContainerModifiers","eventDropTransformers","componentInteractions","calendarInteractions","themeClasses","eventSourceDefs","namedTimeZonedImpl","elementDraggingImpl","optionChangeHandlers","PluginSystem","addedHash","dep","combineHooks","hooks0","hooks1","eventSourceDef","ignoreRange","parseMeta","fetch","arg","ArrayEventSourcePlugin","eventSourceDef$1","startStr","endStr","FuncEventSourcePlugin","requestJson","successCallback","failureCallback","injectQueryStringParams","encodeParams","xhr","XMLHttpRequest","open","setRequestHeader","onload","status","responseText","err","onerror","send","eventSourceDef$2","extraParams","startParam","endParam","timeZoneParam","requestParams","buildRequestParams","errorMessage","message","JsonFeedEventSourcePlugin","customRequestParams","recurring","startRecur","endRecur","anyValid","clippedFramingRange","expandRanges","SimpleRecurrencePlugin","dowHash","dayMarker","instanceStarts","instanceStart","DefaultOptionChangeHandlers","deepEqual","handleEventSources","handlePlugins","unfoundSources","newInputs","inputs_1","inputFound","_raw","unfoundSources_1","unfoundSource","newInputs_1","newInput","addEventSource","addPluginInputs","defaultRangeSeparator","titleRangeSeparator","forceEventDuration","columnHeader","header","weekends","weekNumbers","weekNumberCalculation","scrollTime","minTime","maxTime","showNonCurrentDates","lazyFetching","locales","timeGridEventMinHeight","themeSystem","dragRevertDuration","dragScroll","allDayMaintainDuration","unselectAuto","dropAccept","eventLimit","eventLimitClick","dayPopoverFormat","handleWindowResize","windowResizeDelay","longPressDelay","eventDragMinDistance","rtlDefaults","buttonIcons","prevYear","nextYear","complexOptions","mergeOptions","optionObjs","INTERNAL_PLUGINS","refinePluginDefs","pluginInputs","pluginInputs_1","pluginInput","globalName","RAW_EN_LOCALE","buttonText","today","eventLimitText","noEventsMessage","parseRawLocales","explicitRawLocales","defaultCode","globalArray","globalObject","allRawLocales","rawLocaleMap","en","allRawLocales_1","rawLocale","buildLocale","inputSingular","available","queryLocale","parseLocale","codeArg","queryRawLocale","simpleId","merged","NumberFormat","OptionsManager","overrides","dynamicOverrides","compute","updates","isDynamic","overrideHash","removals_1","localeDefaults","dirDefaults","calendarSystemClassMap","registerCalendarSystem","theClass","createCalendarSystem","GregorianCalendarSystem","arrayToMarker","ISO_RE","DateEnv","settings","isNamedTimeZone","namedTimeZoneImpl","weekDow","weekDoy","firstDay","weekNumberFunc","createNowMarker","timestampToMarker","getYear","addYears","addMonths","greatestWholeUnit","countDurationsBetween","startOfYear","startOfMonth","startOfWeek","dateOptions","offsetForMarker","isEndExclusive","extraOptions","omitTimeZoneOffset","timestampToArray","getTimezoneOffset","offsetForArray","SIMPLE_SOURCE_PROPS","uid$2","doesSourceNeedRange","sourceDefId","parseEventSource","parseEventSourceProps","isFetching","reduceEventSources","addSources","removeSource","fetchDirtySources","fetchSourcesByIds","excludeStaticSources","receiveResponse","uid$3","eventSourceHash","sources_1","sourceHash","isSourceDirty","prevSources","sourceIdHash","nextSources","fetchSource","sourceDef","calSuccessRes","sourceSuccessRes","calSuccess","callFailure","DateProfileGenerator","viewSpec","initHiddenDays","buildPrev","currentDateProfile","currentDate","prevDate","currentRangeUnit","dateIncrement","buildNext","nextDate","forceToValid","currentInfo","isRangeAllDay","renderRange","buildValidRange","trimHiddenDays","buildCurrentRangeInfo","buildRenderRange","adjustActiveRange","buildDateIncrement","getRangeOption","dayCount","durationUnit","buildRangeFromDuration","buildRangeFromDayCount","buildCustomVisibleRange","getFallbackDuration","usesMinMaxTime","dateIncrementInput","dateIncrementDuration","dateAlignment","computeRes","isHiddenDay","skipHiddenDays","customAlignment","runningCount","fallback","otherArgs","hiddenDays","isHiddenDayHash","inc","isExclusive","isDateProfilesEqual","viewType","reduceViewType","reduceDateProfile","nextState","reduceCurrentDate","reduceDateSelection","reduceSelectedEvent","reduceEventDrag","reduceEventResize","computeLoadingLevel","loadingLevel","reducerFunc","currentViewType","newDateProfile","dateProfileGenerators","dateMarker","generator","newDate","currentSelection","currentInstanceId","eventInstanceId","currentDrag","newDrag","currentResize","newResize","cnt","STANDARD_PROPS","parseDateSpan","defaultDuration","parseOpenDateSpan","isDateSpansEqual","span0","span1","isSpanPropsEqual","buildDatePointApi","dateStr","fabricateEventRange","compileViewDefs","defaultConfigs","overrideConfigs","ensureViewDef","viewDef","buildViewDef","overrideConfig","queryProp","superType","findViewNameBySubclass","superDef","viewSubclass","configs","superProto","getPrototypeOf","parseViewConfigs","parseViewConfig","VIEW_DEF_PROPS","buildViewSpecs","defaultInputs","optionsManager","viewDefs","buildViewSpec","durationInput","singleUnit","singleUnitOverrides","denom","queryButtonText","buttonTextMap","buttonTextKey","buttonTextOverride","buttonTextDefault","Toolbar","extraClassName","_renderLayout","renderLayout","unrenderLayout","_updateTitle","updateTitle","_updateActiveButton","updateActiveButton","_updateToday","updateToday","_updatePrev","updatePrev","_updateNext","updateNext","activeButton","isTodayEnabled","isPrevEnabled","isNextEnabled","viewsWithButtons","renderSection","buttonStr","viewSpecs","sectionEl","calendarCustomButtons","customButtons","calendarButtonTextOverrides","calendarButtonText","buttonGroupStr","groupEl","groupChildren","isOnlyButtons","buttonClick","buttonIcon","buttonInnerHtml","buttonClasses","buttonEl","buttonAriaAttr","click","changeView","buttonGroupClassName","toggleButtonEnabled","titleEl","innerText","bool","disabled","CalendarComponent","elClassNames","renderSkeleton","_renderSkeleton","_unrenderSkeleton","renderToolbars","_renderToolbars","_unrenderToolbars","buildComponentContext","buildViewPropTransformers","computeTitle","freezeHeight","renderView","updateSize","thawHeight","updateElClassNames","contentEl","modifyViewContainer","savedScroll","queryScroll","removeElClassNames","headerLayout","footerLayout","dateProfileGenerator","todayInfo","prevInfo","nextInfo","toolbarProps","addScroll","viewProps","transform","isResize","isHeightAuto","computeHeightVars","viewHeight","updateNowIndicator","popScroll","heightInput","contentHeightInput","queryToolbarsHeight","parentEl","viewOptions","titleFormat","computeTitleFormat","theClasses","parseInteractionSettings","useEventCenter","interactionSettingsToStore","interactionSettingsStore","EventClicking","handleSegClick","hasUrlContainer","querySelector","jsEvent","defaultPrevented","location","EventHovering","handleEventElRemove","currentSegEl","handleSegLeave","handleSegEnter","triggerEvent","removeHoverListeners","publicEvName","StandardTheme","widget","widgetHeader","widgetContent","buttonGroup","button","buttonActive","popoverHeader","popoverContent","headerRow","dayRow","listView","close","Calendar","buildComponentContext$1","buildDateEnv","buildTheme","buildEventUiSingleBase","_buildEventUiSingleBase","buildSelectionConfig","_buildSelectionConfig","buildEventUiBySource","buildEventUiBases","interactionsStore","actionQueue","isReducing","needsRerender","isRendering","renderingPauseDepth","buildDelayedRerender","isViewUpdated","isDatesUpdated","isEventsUpdated","handleOptions","hydrate","calendarInteractionClass","pluginDefs","pluginDefs_1","pluginDef","requestRerender","renderableEventStore","bindHandlers","executeRender","unbindHandlers","removeNavLinkListener","anchorEl","customAction","viewOpt","zoomTo","windowResizeProxy","windowResize","buildInitialState","rawSources","singleRawSource","rawSources_1","rawSource","batchRendering","getInitialDate","oldState","newState","delayedRerender","tryRerender","renderComponent","eventUiSingleBase","eventUiBySource","releaseAfterSizingTriggers","setOption","mutateOptions","getOption","viewOpts","changeHandlers","normalUpdates","specialUpdates","isTimeZoneDirty","isSizeDirty","anyDifficultOptions","name_3","pluginHooks","rerenderDelay","availableRawLocales","dateProfileGeneratorClass","getAvailableLocaleCodes","rawOpts","eventEditable","optHandler","name_4","isValidViewType","dateOrRange","unselect","spec","getUnitViewSpec","viewTypes","defaultDateInput","gotoDate","zonedDateInput","incrementDate","formatDate","isHandlingWindowResize","registerInteractiveComponent","settingsInput","DEFAULT_INTERACTIONS","interactionClasses","interactions","interactionClass","unregisterInteractiveComponent","select","dateOrObj","endDate","selectionInput","triggerDateSelect","pev","triggerDateUnselect","origEvent","triggerDateClick","dayEl","sourceInput","sourceApi","getEventSourceById","getEventById","getEvents","eventApis","removeAllEvents","rerenderEvents","getEventSources","sourceApis","internalId","removeAllEventSources","refetchEvents","scrollToTime","timeInput","scrollToDuration","themeClass","View","renderDatesMem","renderDatesWrap","unrenderDatesWrap","renderBusinessHoursMem","renderBusinessHours","unrenderBusinessHours","renderDateSelectionMem","renderDateSelectionWrap","unrenderDateSelectionWrap","renderEventsMem","renderEvents","unrenderEvents","renderEventSelectionMem","renderEventSelectionWrap","unrenderEventSelectionWrap","renderEventDragMem","renderEventDragWrap","unrenderEventDragWrap","renderEventResizeMem","renderEventResizeWrap","unrenderEventResizeWrap","isAuto","updateBaseSize","renderDates","stopNowIndicator","unrenderDates","renderDateSelection","unrenderDateSelection","sliceEvents","renderEventSelection","unrenderEventSelection","renderEventDrag","unrenderEventDrag","renderEventResize","unrenderEventResize","startNowIndicator","delay","nowIndicator","initialNowDate","getNowIndicatorUnit","initialNowQueriedMs","nowIndicatorTimeoutID","nowIndicatorIntervalID","setInterval","unrenderNowIndicator","renderNowIndicator","isNowIndicatorRendered","clearTimeout","clearInterval","isForced","queuedScroll","applyQueuedScroll","applyScroll","queryDateScroll","computeDateScroll","applyDateScroll","FgEventRenderer","renderSegs","mirrorInfo","rangeUpdated","renderSegEls","attachSegs","_segs","detachSegs","displayEventTime","displayEventEnd","eventTimeFormat","computeEventTimeFormat","computeDisplayEventTime","computeDisplayEventEnd","renderSegHtml","getSegClasses","isDraggable","isResizable","isDragging","isResizing","getTimeText","displayEnd","_getTimeText","getSkinCss","sortEventSegs","objs","buildSegCompareObj","_seg","computeSizes","force","computeSegSizes","assignSizes","assignSegSizes","hideByHash","visibility","showByHash","selectByInstanceId","unselectByInstanceId","FillRenderer","fillSegTag","dirtySizeFlags","containerElsByType","segsByType","getSegsByType","renderedSegs","containerEls","ElementDragging","NamedTimeZoneImpl","emitter","setMirrorIsVisible","setMirrorNeedsRevert","setAutoScrollEnabled","DRAG_META_PROPS","DRAG_META_DEFAULTS","parseDragMeta","computeFallbackHeaderFormat","datesRepDistinctDays","renderDateCell","colCnt","colHeadFormat","colspan","otherAttrs","isDateValid","columnHeaderHtml","columnHeaderText","DayHeader","dates","renderIntroHtml","columnHeaderFormat","dates_1","thead","DaySeries","indices","dayIndex","sliceRange","firstIndex","getDateDayIndex","lastIndex","clippedFirstIndex","clippedLastIndex","dayOffset","DayTable","daySeries","breakOnWeeks","daysPerRow","rowCnt","cells","buildCells","headerDates","buildHeaderDates","rows","col","buildCell","seriesSeg","nextIndex","firstCol","lastCol","Slicer","sliceBusinessHours","_sliceBusinessHours","sliceDateSelection","_sliceDateSpan","_sliceEventStore","sliceEventDrag","_sliceInteraction","sliceEventResize","sliceProps","extraArgs","eventSegs","dateSelectionSegs","businessHourSegs","fgEventSegs","bgEventSegs","sliceNowDate","computeActiveRange","rangeRes","sliceEventRanges","affectedInstances","sourceSeg","eventRanges","eventRanges_1","sliceEventRange","isComponentAllDay","calendarPlugins","dateClick","DayGridDateProfileGenerator","endOfWeek","fixedWeekCount","Popover","isHidden","documentMousedown","hide","show","autoHide","elDims","clippingRect","SimpleDayGridEventRenderer","timeText","titleHtml","isResizableFromStart","isResizableFromEnd","skinCss","timeHtml","DayGridEventRenderer","dayGrid","rowStructs","renderSegRows","rowEls","rowNode","tbodyEl","removeSegPopover","rowStruct","segRows","groupSegRows","renderSegRow","rowSegs","levelSegs","tr","td","segLevels","buildSegLevels","levelCnt","tbody","segMatrix","cellMatrix","loneCellMatrix","emptyCellsUntil","endCol","leftCol","rightCol","introHtml","renderProps","levels","isDaySegCollision","compareDaySegCols","otherSegs","otherSeg","DayGridMirrorRenderer","skeletonTopEl","skeletonTop","skeletonEl","EMPTY_CELL_HTML","DayGridFillRenderer","renderFillRow","trEl","startCol","getElementsByTagName","DayTile","eventRenderer","renderFrame","_renderFrame","renderFgEvents","fgSegs","eventDragInstances","eventResizeInstances","segContainerEl","layer","DayTileEventRenderer","dayTile","DayBgRow","renderHtml","cell","renderCellHtml","htmlAttrs","DAY_NUM_FORMAT","WEEK_NUM_FORMAT","DayGrid","bottomCoordPadding","isCellSizesDirty","fillRenderer","mirrorRenderer","renderCells","_renderCells","_unrenderCells","renderBgEvents","_renderEventDrag","_unrenderEventDrag","_renderEventResize","_unrenderEventResize","isRigid","segPopoverTile","updateSegPopoverTile","getCellRange","ownProps","renderDayRowHtml","cellEls","rowPositions","colPositions","getCellEl","bgRow","renderBgIntroHtml","getIsNumbersVisible","renderNumberTrHtml","getIsDayNumbersVisible","cellWeekNumbersVisible","colWeekNumbersVisible","intro","renderNumberIntroHtml","renderNumberCellsHtml","htmls","renderNumberCellHtml","weekCalcFirstDow","isDayNumberVisible","buildColPositions","buildRowPositions","positionToHit","relativeRect","segPopover","limitRows","levelLimit","rowLevelLimit","unlimitRow","computeRowLevelLimit","limitRow","rowBottom","trEls","limitedNodes","segsBelow","totalSegsBelow","colSegsBelow","segMoreNodes","moreTd","moreWrap","moreLink","moreNodes","getCellSegs","renderMoreLink","moreEls","limitedEls","limitedEl","hiddenSegs","getMoreLinkText","clickOption","_col","moreEl","currentTarget","allSegs","reslicedAllSegs","resliceDaySegs","reslicedHiddenSegs","showSegPopover","topEl","dayDate","dayEnd","dayRange","newSegs","startLevel","WEEK_NUM_FORMAT$1","AbstractDayGridView","processOptions","_processOptions","renderHeadIntroHtml","weekNumberStyleAttr","renderDayGridNumberIntroHtml","weekStart","renderDayGridBgIntroHtml","renderDayGridIntroHtml","weekNumbersWithinDays","renderSkeletonHtml","scroller","dayGridContainerEl","dayGridEl","weekNumberWidth","hasRigidRows","scrollerHeight","headRowEl","computeScrollerHeight","setGridHeight","SimpleDayGrid","slicer","DayGridSlicer","dayTable","rawHit","DayGridView","buildDayTable","simpleDayGrid","main","dayGridDay","dayGridWeek","dayGridMonth","touchMouseIgnoreWait","ignoreMouseDepth","listenerCnt","isWindowTouchMoveCancelled","PointerDragging","containerEl","subjectEl","downEl","handleSelector","shouldIgnoreMove","shouldWatchScroll","isTouchDragging","wasTouchScroll","handleMouseDown","shouldIgnoreMouse","isPrimaryMouseButton","tryStart","createEventFromMouse","initScrollWatch","handleMouseMove","handleMouseUp","recordCoords","cleanup","handleTouchStart","createEventFromTouch","handleTouchMove","handleTouchEnd","handleTouchScroll","startIgnoringMouse","handleScroll","pageX","prevScrollX","prevPageX","pageY","prevScrollY","prevPageY","isTouch","origPageX","origPageY","listenerCreated","listenerDestroyed","querySubjectEl","destroyScrollWatch","cancelTouchScroll","isFirst","ctrlKey","onWindowTouchMove","ElementMirror","isVisible","sourceEl","mirrorEl","sourceElRect","zIndex","revertDuration","origScreenX","origScreenY","updateElPosition","handleMove","setIsVisible","needsRevertAnimation","done","doRevertAnimation","finalSourceElRect","getMirrorEl","cloneNode","boxSizing","ScrollGeomCache","scrollController","doesListening","handleScrollChange","origScrollTop","origScrollLeft","clientRect","computeClientRect","getEventTarget","ElementScrollGeomCache","WindowScrollGeomCache","performance","AutoScroller","isEnabled","scrollQuery","edgeThreshold","maxVelocity","pointerScreenX","pointerScreenY","isAnimating","scrollCaches","everMovedUp","everMovedDown","everMovedLeft","everMovedRight","computeBestEdge","handleSide","msSinceRequest","requestAnimation","buildCaches","yDelta","xDelta","scrollCache","invDistance","velocity","bestSide","leftDist","rightDist","topDist","bottomDist","queryScrollEls","FeaturefulElementDragging","touchScrollAllowed","mirrorNeedsRevert","isInteracting","isDelayEnded","isDistanceSurpassed","delayTimeoutId","onPointerDown","startDelay","handleDistanceSurpassed","onPointerMove","distanceSq","autoScroller","onPointerUp","tryStopDrag","handleDelayEnd","tryStartDrag","stopDrag","setIgnoreMove","OffsetTracker","origRect","computeLeft","computeTop","isWithinClipping","isIgnoredClipping","HitDragging","dragging","droppableStore","useSubjectCenter","requireInitial","initialHit","movingHit","finalHit","handlePointerDown","prepareHits","processFirstCoord","handleDragStart","handleDragMove","handlePointerUp","releaseHits","handleDragEnd","subjectRect","origPoint","adjustedPoint","queryHitForOffset","slicedSubjectRect","coordAdjust","forceHandle","hit","isHitsEqual","offsetTrackers","interactionSettings","offsetTop","bestHit","offsetTracker","originLeft","originTop","hit0","hit1","DateClicking","hitDragging","DateSelecting","dragSelection","canSelect","selectable","getComponentTouchDelay","handleHitUpdate","isFinal","isInvalid","joinHitsIntoSelection","selectMinDistance","selectLongPressDelay","dateSpan0","dateSpan1","dateSelectionTransformers_1","EventDragging","subjectSeg","relevantEvents","receivingCalendar","validMutation","mutatedRelevantEvents","origTarget","initialCalendar","getComponentTouchDelay$1","receivingComponent","receivingOptions","droppable","computeEventMutation","displayDrag","initialCalendar_1","initialView","relevantEvents_1","clearDrag","transformed","eventDropArg","oldEvent","revert","draggedEl","dropArg","SELECTOR","nextCalendar","prevCalendar","massagers","massagers_1","massager","eventLongPressDelay","EventDragging$1","draggingSeg","querySeg","computeMutation","prevEvent","isFromStart","transforms","transforms_1","UnselectAuto","isRecentPointerDateSelect","onSelect","selectInfo","onDocumentPointerUp","documentPointer","unselectCancel","ExternalElementDragging","suppliedDragMeta","droppableEvent","dragMeta","buildDragMeta","canDropElOnCalendar","computeEventForDateSpan","finalView","getDragMetaFromEl","defProps","getEmbeddedElData","dataAttrPrefix","prefixedName","ExternalDraggable","itemSelector","appendTo","eventData","InferredElementDragging","mirrorSelector","currentMirrorEl","handlePointerMove","ThirdPartyDraggable","containerOrSettings","TimeGridEventRenderer","timeGrid","fullTimeFormat","segsByCol","groupSegsByCol","attachSegsByCol","fgContainerEls","computeSegVerticals","computeSegHorizontals","assignSegVerticals","assignSegCss","fullTimeText","startTimeText","unzonedStart","unzonedEnd","level0","buildSlotSegLevels","computeForwardSlotSegs","computeSlotSegPressures","computeSegForwardBack","seriesBackwardPressure","seriesBackwardCoord","forwardSegs","forwardCoord","sortForwardSegs","backwardCoord","buildTimeGridSegCompareObj","generateSegCss","shouldOverlap","slotEventOverlap","generateSegVerticalCss","forwardPressure","computeSlotSegCollisions","forwardSeg","results","isSlotSegCollision","seg1","seg2","TimeGridMirrorRenderer","mirrorContainerEls","sourceSegProps","TimeGridFillRenderer","bgContainerEls","businessContainerEls","highlightContainerEls","AGENDA_STOCK_SUB_DURATIONS","TimeGrid","isSlatSizesDirty","isColSizesDirty","renderSlats","_renderSlats","renderColumns","_renderColumns","_unrenderColumns","_renderDateSelection","_unrenderDateSelection","snapsPerSlot","slotDuration","snapDuration","slotLabelFormat","labelFormat","slotLabelInterval","labelInterval","computeLabelInterval","slotsPerLabel","buildSlatPositions","rootBgContainerEl","slatContainerEl","bottomRuleEl","renderSlatRowHtml","slatEls","slatPositions","slotDate","isLabeled","axisHtml","slotTime","slotIterator","colEls","renderContentSkeleton","unrenderContentSkeleton","contentSkeletonEl","colContainerEls","computeDateTop","nodes","lineEl","arrowEl","nowIndicatorEls","getTotalSlatHeight","when","startOfDayDate","computeTimeTop","slatIndex","slatRemainder","slatCoverage","eventMinHeight","colIndex","slatTop","slatHeight","partial","localSnapIndex","snapIndex","selectMirror","isSelecting","AllDaySplitter","timed","TIMEGRID_ALL_DAY_EVENT_LIMIT","WEEK_HEADER_FORMAT","AbstractTimeGridView","splitter","weekText","axisStyleAttr","renderTimeGridBgIntroHtml","renderTimeGridIntroHtml","timeGridWrapEl","timeGridEl","allDaySlot","dividerEl","noScrollRowEls","SimpleTimeGrid","buildDayRanges","dayRanges","TimeGridSlicer","segRange","TimeGridView","simpleTimeGrid","timeGridDay","timeGridWeek","FullCalendar","showCancelButton","confirmButtonClass","cancelButtonClass","buttonsStyling","eventTitle","calendarApi","FamiliaProductoTraduccion","openModal","submit","typeUsers","externo","rol","idRol","org","cancel","roles","organizations","correo","alias","accesoDatos","organizacion_idOrganizacion","roles_idRol","solicitud","telefono","rfc","calle","numExterior","numInterior","colonia","delegacionMunicipio","estado","pais","telefono1","telefono2","codigoPostal","tiposStatus","PENDIENTE","inProgress","rechazar","enviar","EN_PROGRESO","finalizar","email","idCliente","idSolicitudCambioCliente","fire","inputPlaceholder","confirmButtonText","cancelButtonText","inputValidator","attr","_class","deleteFile","selectedEmptyOption","extension","includes","notifyMessage","validateStep","onStepValidated","wizardComplete","validate","handlePreview","imageUrl","firstName","lastName","form","IconCheckbox","design","develop","Promise","streetName","streetNo","city","country","countryOptions","wizardModel","FirstStep","SecondStep","ThirdStep","SimpleWizard","WizardTab","RolesTraduccion","maxInt","tMin","tMax","skew","damp","initialBias","initialN","delimiter","regexNonASCII","regexSeparators","OVERFLOW_ERROR","baseMinusTMin","stringFromCharCode","fromCharCode","ucs2decode","counter","charCodeAt","digitToBasic","digit","adapt","numPoints","firstTime","encode","currentValue","inputLength","bias","basicLength","handledCPCount","handledCPCountPlusOne","RangeError","qMinusT","baseMinusT","encoded","filters","searchNumPedido","searchPosicionSAP","searchNumRemision","searchNumTransporte","iniCreateDate","endCreateDate","getTag","INFINITY","baseToString","isString","isBoolean","isObjectLike","isDefined","isBlank","INCORRECT_INDEX_TYPE","LOGICAL_SEARCH_INVALID_QUERY_FOR_KEY","PATTERN_LENGTH_TOO_LARGE","MISSING_KEY_PROPERTY","INVALID_KEY_WEIGHT_VALUE","hasOwn","KeyStore","_keys","_keyMap","totalWeight","createKey","keyId","createKeyPath","createKeyId","deepGet","MatchOptions","includeMatches","findAllMatches","minMatchCharLength","BasicOptions","isCaseSensitive","includeScore","shouldSort","sortFn","score","FuzzyOptions","threshold","AdvancedOptions","useExtendedSearch","getFn","ignoreLocation","ignoreFieldNorm","Config","SPACE","norm","mantissa","Map","numTokens","FuseIndex","isCreated","setIndexRecords","docs","records","_keysMap","doc","docIndex","_addString","_addObject","record","keyIndex","subRecords","nestedArrIndex","subRecord","createIndex","myIndex","setKeys","setSources","parseIndex","transformMatches","refIndex","transformScore","computeScore","pattern","errors","currentLocation","expectedLocation","accuracy","proximity","convertMaskToIndices","matchmask","MAX_BITS","patternAlphabet","patternLen","textLen","currentThreshold","bestLocation","computeMatches","matchMask","lastBitArr","finalScore","binMax","mask","binMin","binMid","finish","bitArr","charMatch","isMatch","createPatternAlphabet","BitapSearch","chunks","addChunk","alphabet","remainder","allIndices","totalScore","hasMatches","BaseMatch","getMatch","multiRegex","singleRegex","ExactMatch","super","InverseExactMatch","PrefixExactMatch","startsWith","InversePrefixExactMatch","SuffixExactMatch","endsWith","InverseSuffixExactMatch","FuzzyMatch","_bitapSearch","searchIn","IncludeMatch","searchers","searchersLen","SPACE_RE","OR_TOKEN","parseQuery","queryItem","found","searcher","isMultiMatch","isSingleMatch","MultiMatchSet","Set","ExtendedSearch","_","numMatches","qLen","pLen","registeredSearchers","createSearcher","searcherClass","condition","LogicalOperator","AND","OR","KeyType","PATTERN","isExpression","isPath","isLeaf","convertToExplicit","auto","isQueryPath","operator","Fuse","_keyStore","setCollection","_docs","_myIndex","predicate","removeAt","limit","_searchStringList","_searchObjectList","_searchLogical","computeScore$1","evaluate","_findMatches","getValueForItemAtKeyId","child","resultMap","expResults","version","checkboxes","radios","Checkbox","Radio","radio1","radio2","radio3","radioOn","radioOff","unchecked","checked","disabledUnchecked","disabledChecked","submitNewRole","idLenguaje","permiso","id_ClaimsModule","datatemp","claimsModule","selectIncompleto","idEmpresa","minLength","notifications","topCenter","notice","mini","langs","loadPermisos","createDate","selectEmpresaChange","ServerHashParamKeys","CryptoUtils","createNewGuid","cryptoObj","crypto","getRandomValues","Uint8Array","decimalToHex","guidHolder","guidResponse","random","isGuid","regexGuid","base64Encode","btoa","base64Decode","encodedString","decodeURIComponent","atob","deserialize","pl","decode","Constants","_popUpWidth","_popUpHeight","openidScope","profileScope","TemporaryCacheKeys","PersistentCacheKeys","ErrorCacheKeys","ResponseTypes","id_token","id_token_token","SSOTypes","DEFAULT_AUTHORITY","AAD_INSTANCE_DISCOVERY_ENDPOINT","WELL_KNOWN_SUFFIX","BlacklistedEQParams","SID","LOGIN_HINT","NetworkRequestType","GET","POST","PromptState","LOGIN","SELECT_ACCOUNT","CONSENT","NONE","FramePrefix","ID_TOKEN_FRAME","TOKEN_FRAME","libraryVersion","AuthorityType","AuthErrorMessage","unexpectedError","desc","noWindowObjectError","AuthError","errorCode","createUnexpectedError","errDesc","createNoWindowObjectError","StringUtils","isEmpty","validateAndParseJsonCacheKey","parsedKey","ClientAuthErrorMessage","multipleCacheAuthorities","endpointResolutionError","popUpWindowError","tokenRenewalError","invalidIdToken","invalidStateError","nonceMismatchError","loginProgressError","acquireTokenProgressError","userCancelledError","callbackError","userLoginRequiredError","userDoesNotExistError","clientInfoDecodingError","clientInfoNotPopulatedError","nullOrEmptyIdToken","idTokenNotParsed","tokenEncodingError","invalidInteractionType","cacheParseError","blockTokenRequestsInHiddenIframe","ClientAuthError","createEndpointResolutionError","errDetail","createMultipleAuthoritiesInCacheError","createPopupWindowError","createTokenRenewalTimeoutError","createInvalidIdTokenError","idToken","createInvalidStateError","invalidState","actualState","createNonceMismatchError","invalidNonce","actualNonce","createLoginInProgressError","createAcquireTokenInProgressError","createUserCancelledError","createErrorInCallbackFunction","errorDesc","createUserLoginRequiredError","createUserDoesNotExistError","createClientInfoDecodingError","caughtError","createClientInfoNotPopulatedError","createIdTokenNullOrEmptyError","invalidRawTokenString","createIdTokenParsingError","caughtParsingError","createTokenEncodingError","incorrectlyEncodedToken","createInvalidInteractionTypeError","createCacheParseError","createBlockTokenRequestsInHiddenIframeError","ClientConfigurationErrorMessage","configurationNotSet","storageNotSupported","noRedirectCallbacksSet","invalidCallbackObject","scopesRequired","emptyScopes","nonArrayScopes","invalidPrompt","invalidAuthorityType","authorityUriInsecure","authorityUriInvalidPath","unsupportedAuthorityValidation","untrustedAuthority","b2cAuthorityUriInvalidPath","b2cKnownAuthoritiesNotSet","claimsRequestParsingError","emptyRequestError","invalidCorrelationIdError","telemetryConfigError","ssoSilentError","invalidAuthorityMetadataError","ClientConfigurationError","createNoSetConfigurationError","createStorageNotSupportedError","givenCacheLocation","createRedirectCallbacksNotSetError","createInvalidCallbackObjectError","callbackObject","createEmptyScopesArrayError","scopesValue","createScopesNonArrayError","createScopesRequiredError","createInvalidPromptError","promptValue","createClaimsRequestParsingError","claimsRequestParseError","createEmptyRequestError","createInvalidCorrelationIdError","createKnownAuthoritiesNotSetError","createInvalidAuthorityTypeError","createUntrustedAuthorityError","createTelemetryConfigError","requiredKeys","applicationName","applicationVersion","telemetryEmitter","missingKeys","createSsoSilentError","createInvalidAuthorityMetadataError","ScopeSet","isIntersectingScopes","cachedScopes","scopes","convertedCachedScopes","trimAndConvertArrayToLowerCase","requestScopes","containsScope","every","trimAndConvertToLowerCase","trimScopes","scopeVal","parseScope","scopeList","validateInputScope","getScopeFromState","splitIndex","resourceDelimiter","appendScopes","reqScopes","reqExtraScopesToConsent","convertedExtraScopes","convertedReqScopes","onlyContainsOidcScopes","scopesCount","oidcScopesFound","containsAnyOidcScopes","containsOpenIdScope","containsProfileScope","onlyContainsClientId","clientId","appendDefaultScopes","extendedScopes","removeDefaultScopes","translateClientIdIfSingleScope","oidcScopes","UrlUtils","createNavigateUrl","serverRequestParams","createNavigationUrlString","authEndpoint","authorityInstance","AuthorizationEndpoint","requestUrl","responseType","redirectUri","nonce","xClientSku","xClientVer","claimsValue","queryParameters","extraQueryParameters","correlationId","getCurrentUrl","removeHashFromUrl","replaceTenantPath","tenantId","lowerCaseUrl","urlObject","GetUrlComponents","pathArray","PathSegments","ORGANIZATIONS","constructAuthorityUriFromObject","CanonicalizeUri","Protocol","HostNameAndPort","isCommonAuthority","authority","isOrganizationsAuthority","regEx","RegExp","urlComponents","AbsolutePath","pathSegments","Search","Hash","suffix","urlRemoveQueryStringParameter","regex","getHashFromUrl","urlStringOrFragment","hashIndex1","hashIndex2","urlContainsHash","parameters","deserializeHash","ERROR_DESCRIPTION","ERROR","ACCESS_TOKEN","ID_TOKEN","urlFragment","getHostFromUri","uri","extractedUri","AccessTokenKey","utid","homeAccountIdentifier","AccessTokenValue","accessToken","expiresIn","ServerRequestParameters","CanonicalAuthority","populateQueryParams","account","adalIdTokenObject","silentCall","prompt","claimsRequest","isSSOParam","constructUnifiedCacheQueryParameter","addHintParameters","eQParams","generateQueryParametersString","idTokenObject","ssoType","ssoData","serverReqParam","sid","userName","loginHint","upn","addSSOParameter","qParams","populateSID","populateLoginHint","ssoParam","paramsString","domain_hint","determineResponseType","accountsMatch","responseTypeForMatchingAccounts","XhrClient","sendRequestAsync","enableCaching","reject","jsonResponse","handleError","response","statusCode","TrustedAuthority","setTrustedAuthoritiesFromConfig","validateAuthority","knownAuthorities","getTrustedHostList","TrustedHostList","getAliases","authorityToVerify","telemetryManager","client","httpMethod","instanceDiscoveryEndpoint","httpEvent","createAndStartHttpEvent","httpResponseStatus","stopEvent","catch","serverErrorCode","setTrustedAuthoritiesFromNetwork","sent","entry","authorities","aliases","IsInTrustedHostList","LogLevel","Authority","authorityMetadata","IsValidationEnabled","validateAsUri","tenantDiscoveryResponse","isAdfs","authorityUrl","ADFS","canonicalAuthority","Adfs","Default","CanonicalAuthorityUrlComponents","validateResolved","Tenant","EndSessionEndpoint","Issuer","hasCachedMetadata","canonicalAuthorityUrlComponents","DiscoverEndpoints","openIdConfigurationEndpoint","authorization_endpoint","end_session_endpoint","issuer","resolveEndpointsAsync","openIdConfigurationEndpointResponse","GetOpenIdConfigurationEndpoint","DefaultOpenIdConfigurationEndpoint","ClientInfo","rawClientInfo","decodedClientInfo","clientInfo","stripPolicyFromUid","_uid","_utid","createClientInfoFromIdToken","subject","uidSegments","urlSegments","policy","encodeClientInfo","TimeUtils","parseExpiresIn","relativeNowMs","TokenUtils","decodeJwt","jwtToken","idTokenPartsRegex","crackedToken","JWSPayload","JWSSig","validateExpirationIsWithinOffset","expiration","tokenRenewalOffsetSeconds","extractIdToken","encodedIdToken","decodedToken","base64IdToken","base64Decoded","IdToken","rawIdToken","claims","objectId","preferredName","homeObjectId","cloudInstance","AccessTokenCacheItem","BrowserStorage","cacheLocation","storageSupported","setItem","enableCookieStorage","setItemCookie","getItem","getItemCookie","removeItem","cName","cValue","expires","cookieStr","expireTime","getCookieExpirationTime","cookie","clearItemCookie","cookieLifeDays","expr","toUTCString","RequestUtils","validateRequest","isLoginCall","interactionType","extraScopesToConsent","validatePromptParameter","validateEQParameters","validateClaimsRequest","validateAndGenerateState","validateAndGenerateCorrelationId","validatedRequest","userState","generateLibraryState","stateObject","ts","stateString","parseLibraryState","libraryState","interactionTypeRedirect","createRequestSignature","AuthCache","storeAuthStateInCookie","rollbackEnabled","migrateCacheEntries","idTokenKey","cachePrefix","IDTOKEN","clientInfoKey","CLIENT_INFO","errorKey","errorDescKey","ERROR_DESC","idTokenValue","clientInfoValue","errorValue","errorDescValue","keysToMigrate","cacheKey","duplicateCacheEntry","newKey","generateCacheKey","addInstanceId","adalIdToken","matchKeyForType","tokenType","accountMatches","tokenTypeMatches","resetCacheItems","storage","resetTempCacheItems","stateId","isTokenRenewalInProgress","tokenRenewalInProgress","INTERACTION_STATUS","REDIRECT_REQUEST","getAllTokensByType","matchedTokenKey","newAccessTokenCacheItem","getAllAccessTokens","getAllIdTokens","getAllTokens","accessTokens","idTokens","stateValue","renewStatus","generateTemporaryCacheKey","RENEW_STATUS","clearMsalCookie","NONCE_IDTOKEN","STATE_LOGIN","LOGIN_REQUEST","STATE_ACQ_TOKEN","cookies","cookieString","cookieName","generateAcquireTokenAccountKey","accountId","ACQUIRE_TOKEN_ACCOUNT","generateAuthorityKey","tempCacheKey","Account","accountIdentifier","idTokenClaims","environment","createAccount","compareAccounts","a2","WindowUtils","isInIframe","isInPopup","opener","generateFrameName","requestSignature","monitorIframeForHash","contentWindow","urlNavigate","logger","nowMark","timeoutMark","verbose","intervalId","errorPii","POLLING_INTERVAL_MS","monitorPopupForHash","closed","loadFrame","frameName","timeoutMs","infoPii","frameHandle","loadFrameSync","addHiddenIFrame","iframeId","adalFrame","navigator","userAgent","ifr","insertAdjacentHTML","frames","removeHiddenIframe","iframe","getIframeWithHash","iframes","iframeArray","getPopups","openedWindows","getPopUpWithHash","popup","trackPopup","closePopups","blockReloadInHiddenIframes","checkIfBackButtonIsPressed","cacheStorage","redirectCache","splitCache","clearUrlFragment","history","replaceState","ResponseUtils","setResponseIdToken","originalResponse","idTokenObj","expiresOn","uniqueId","buildAuthResponse","authResponse","serverAuthenticationRequest","accountState","AuthorityFactory","saveMetadataFromNetwork","metadataMap","getMetadata","saveMetadataFromConfig","authorityMetadataJson","parsedMetadata","CreateInstance","Logger","localCallback","Info","piiLoggingEnabled","logMessage","logLevel","containsPii","executeCallback","warning","Warning","warningPii","Verbose","verbosePii","isPiiLoggingEnabled","FRAME_TIMEOUT","OFFSET","NAVIGATE_FRAME_WAIT","DEFAULT_AUTH_OPTIONS","postLogoutRedirectUri","navigateToLoginRequestUrl","DEFAULT_CACHE_OPTIONS","DEFAULT_SYSTEM_OPTIONS","loadFrameTimeout","navigateFrameWait","DEFAULT_FRAMEWORK_OPTIONS","isAngular","unprotectedResources","protectedResourceMap","buildConfiguration","auth","system","_d","framework","overlayedConfig","ServerErrorMessage","serverUnavailable","unknownServerError","ServerError","createServerUnavailableError","createUnknownServerError","InteractionRequiredAuthErrorMessage","interactionRequired","consentRequired","loginRequired","InteractionRequiredAuthError","isInteractionRequiredError","errorString","interactionRequiredCodes","createLoginRequiredAuthError","createInteractionRequiredAuthError","createConsentRequiredAuthError","buildResponseStateOnly","fromCache","API_CODE","API_EVENT_IDENTIFIER","EVENT_NAME_PREFIX","EVENT_NAME_KEY","START_TIME_KEY","ELAPSED_TIME_KEY","TELEMETRY_BLOB_EVENT_NAMES","MsalCorrelationIdConstStrKey","ApiTelemIdConstStrKey","ApiIdConstStrKey","BrokerAppConstStrKey","CacheEventCountConstStrKey","HttpEventCountTelemetryBatchKey","IdpConstStrKey","IsSilentTelemetryBatchKey","IsSuccessfulConstStrKey","ResponseTimeConstStrKey","TenantIdConstStrKey","UiEventCountTelemetryBatchKey","TENANT_PLACEHOLDER","scrubTenantFromUri","pathParams","tenantPosition","hashPersonalIdentifier","valueToHash","prependEventNamePrefix","supportsBrowserPerformance","mark","measure","endBrowserPerformanceMeasurement","measureName","startMark","endMark","clearMeasures","clearMarks","startBrowserPerformanceMeasurement","TelemetryEvent","eventLabel","eventId","setElapsedTime","startTimestamp","displayName","perfStartMark","perfEndMark","telemetryCorrelationId","DefaultEvent","eventCount","sdk","sdkVersion","networkInformation","connectionSpeed","getEventCount","EVENT_KEYS","AUTHORITY_TYPE","PROMPT","TENANT_ID","USER_ID","WAS_SUCESSFUL","API_ERROR_CODE","mapEventIdentiferToCode","AcquireTokenSilent","AcquireTokenPopup","AcquireTokenRedirect","LoginPopup","LoginRedirect","Logout","ApiEvent","piiEnabled","apiEventIdentifier","apiCode","wasSuccessful","authorityType","promptType","HTTP_PATH","USER_AGENT","QUERY_PARAMETERS","API_VERSION","RESPONSE_CODE","O_AUTH_ERROR_CODE","HTTP_METHOD","REQUEST_ID_HEADER","SPE_INFO","SERVER_ERROR_CODE","SERVER_SUB_ERROR_CODE","HttpEvent","scrubbedUri","httpPath","queryParams","apiVersion","requestIdHeader","speInfo","subErrorCode","TelemetryManager","completedEvents","inProgressEvents","eventCountByCorrelationId","onlySendFailureTelemetry","telemetryPlatform","libraryName","connection","effectiveType","getTelemetrymanagerStub","telemetryManagerConfig","startEvent","incrementEventCount","flush","orphanedEvents","getOrphanedEvents","eventsToFlush","eventCountsToFlush","defaultEvent","eventsWithDefaultEvent","createAndStartApiEvent","apiEvent","stopAndFlushApiEvent","apiErrorCode","correlation","memo","eventKey","event_1","AuthCacheUtils","filterTokenCacheItemsByScope","tokenCacheItems","cacheItem","searchScopes","filterTokenCacheItemsByAuthority","filterTokenCacheItemsByDomain","requestDomain","cacheItemDomain","UserAgentApplication","authResponseCallback","tokenReceivedCallback","errorReceivedCallback","inCookie","getTelemetryManagerFromConfig","telemetry","activeRenewals","renewStates","callbackMappedToRenewStates","promiseMappedToRenewStates","msal","urlHash","stateInfo","getResponseState","handleRedirectAuthenticationResponse","getAuthorityInstance","handleRedirectCallback","authOrTokenCallback","redirectError","authErrorHandler","redirectResponse","authResponseHandler","interactionTypePopup","authErr","loginRedirect","userRequest","acquireTokenInteractive","acquireTokenRedirect","loginPopup","resp","acquireTokenPopup","interactionProgress","thrownError","stateOnlyResponse","getAccountState","getAccount","acquireTokenHelper","extractADALIdToken","tokenRequest","buildIDTokenRequest","silentLogin","acquireTokenSilent","acquireTokenAuthority","popUpWindow","loginStartPage","error_1","navigate","err_1","trys","getTokenType","redirectStartPage","getRedirectUri","updateCacheEntries","response_mode_fragment","requestType","login","renewToken","registerCallback","openPopup","popUpWidth","popUpHeight","handleAuthenticationResponse","broadcast","onRedirectNavigate","navigateWindow","ssoSilent","interactionTypeSilent","userContainedClaims","cacheResultResponse","err_2","forceRefresh","getCachedToken","renewIdToken","winLeft","screenLeft","screenX","winTop","screenTop","screenY","innerWidth","innerHeight","top_1","popupWindow","focus","loadIframeTimeout","expectedState","error_2","logout","logoutAsync","requestCorrelationId","correlationIdParam","postLogoutQueryParam","error_3","clearCache","getPostLogoutRedirectUri","clearCacheForScope","accessTokenItems","isCallback","processCallBack","parentCallback","saveTokenFromHash","locationHash","tokenResponseCallback","loginRequestUrl","currentUrl","finalRedirectUrl","loginRequestUrlComponents","stateResponse","STATE","parsedState","unknown","stateMatch","silentAuthenticationState","statesInParentContext","getCachedIdToken","getCachedAccessToken","getTokenCacheItemByAuthority","filteredAuthorityItems","accessTokenCacheItem","idTokenCacheItems","matchAuthority","idTokenCacheItem","idTokenIsStillValid","evaluateTokenExpiration","scopeFilteredTokenCacheItems","tokenIsStillValid","aState","authorityList","getUniqueAuthority","tokenCacheItem","accessTokenCacheItems","flags","prompt_none","saveToken","accessTokenKey","accessTokenValue","saveIdToken","idTokenResponse","saveAccessToken","accessTokenResponse","SCOPE","consentedScopes","EXPIRES_IN","hashParams","authorityKey","acquireTokenAccountKey","LOGIN_ERROR","no_account","hashErr","hashErrDesc","SESSION_STATE","populateAuthority","accountKey","acquireTokenAccountKey_noaccount","cachedAccount","acquireTokenAccount","cachedNonce","cachedAuthority","getAllAccounts","accounts","getUniqueAccounts","uniqueAccounts","CustomEvent","detail","dispatchEvent","getCachedTokenInternal","accountObject","newAuthority","getScopesForEndpoint","endpoint","getLoginInProgress","setInteractionInProgress","setloginInProgress","loginInProgress","getAcquireTokenInProgress","setAcquireTokenInProgress","acquireTokenInProgress","getLogger","setLogger","reqRedirectUri","getCurrentConfiguration","setAccountCache","getAccountId","setAuthorityCache","modalEdit","editRow","cancelEdit","idTipoMoneda","abreviatura","payload","switches","withIconsOn","formEdit","PropiedadFamiliaProductoAdd","role","groups","handleCheckAll","handleCheckRow","handleCheckPermission","group","checkedPermisos","permisos","multipleTable","toggleRowSelection","getPermisosActivos","activeGroups","SubcategoriaProducto","submitNewUnidadMedida","idUnidadMedida","abreviacion","keyList","hasProp","equal","arrA","arrB","dateA","dateB","regexpA","regexpB","typeSelected","statusSelected","iniDate","idTipoComunicado","fechaRegistro","nombreComunicacion","fechaInicio","fechaFin","activeMessage","EditMessage","DetailsMessage","ComunicadosAdd","ComunicadosEdit","ComunicadosDetails","datePickerModal","modalDocs","server","documento","promptDelete","cancelDocs","addNewReasonDeclining","editarRazon","DecliningReasonAdd","DecliningReasonEdit","CategoriaProductoTraduccion","submitNewItem","subcategory","idCategoriaProducto","categorias","getCategorias","nombreSubategoria","getBuiltIn","redefineAll","createIteratorConstructor","classof","anObject","createPropertyDescriptor","getIterator","getIteratorMethod","$fetch","Headers","URL_SEARCH_PARAMS","URL_SEARCH_PARAMS_ITERATOR","getInternalParamsState","getInternalIteratorState","plus","sequences","percentSequence","bytes","percentDecode","sequence","it","find","replacer","serialize","parseSearchParams","attribute","attributes","entries","validateArgumentsLength","required","URLSearchParamsIterator","kind","iterator","step","URLSearchParamsConstructor","iteratorMethod","entryIterator","entryNext","URLSearchParamsPrototype","append","entriesIndex","sliceIndex","boundFunction","headers","submitNewCorpRole","nombreRol","Role","idTipoNotificacion","tipoNotificacion","exportToPDF","hasStartedGeneration","hasGenerated","CategoriaProducto","idUsuarioLogistica","zone","idZonaComercial","nombreZonaComercial","idCentroDistribucion","idClaveTransporte","tipoEmpaquetado","zonasComerciales","usuarios","centros","claves","Activo","IsRetroactive","UsuariosAdicionales","confirmRetroactive","editUnidadMedida","submitNewMessage","idComunicacion","tipoUsuarioVisualizar","tipoComunicado_idTipoComunicado","files","currLang","currText","currLink","comunicacion_idComunicacion","imagenComunicacion","textoComunicacion","enlaceComunicacion","clickedElement","idEstadoReclamacion","estadoReclamacion","reclamacion_idEstadoReclamacion","enviarAcuse","ReclamacionesAddEdit","propsToSearch","estadosReclamaciones","NotificacionesAdd","NotificacionesEdit","GrupoPropiedadFamiliaProductoTraduccion","download","route_read_tracking","route_add_tracking","route_add_incidencias","empresa","generateToken","users","idSap","nombreEmpresa","getUsers","loadInfo","submitEditReason","accion","usuariosIdUsuario","categoria","horafin","idHorarioIngresoPedido","catProd_idCategoriaProducto","horaString","addDigit","digits_return","textDigit","submitNewMoneda","addNewCompany","EmpresaTransportistaAdd","execAction","idGrupoPropiedad","nombreGrupo","openGroupAdd","submitNewGroup","GrupoPropiedadFamiliaProductoAdd","idPropiedadFamiliaProducto","grupoPropiedadFamiliaProducto_idGrupoPropiedad","self","loadGroups","verifySave","product_family","selectCategory","subcategories","subcat","idSubcategoriaProducto","nombreSubcategoria","changeIconography","idFamiliaProductoTraduccion","removeProperty","addProperty","disabledButton","ItemTraduccion","ItemPropiedad","subcategorias","categories","getCategories","getGroupFamilies","$route","loadProductFamily","iconografia","propiedades","_typeof","Symbol","deepCopy","PROP_DEFS","bootstrapFontAwesome","contentHeight","listDayFormat","listDayAltFormat","defaultDate","navLinkDayClick","navLinkWeekClick","selectConstraint","selectOverlap","selectAllow","eventStartEditable","eventDurationEditable","eventConstraint","eventOverlap","eventAllow","eventClassName","eventClassNames","eventBackgroundColor","eventBorderColor","eventTextColor","eventColor","eventResourceEditable","eventSourceFailure","eventSourceSuccess","progressiveEventRendering","schedulerLicenseKey","resources","resourceLabelText","resourceOrder","filterResourcesWithEvents","resourceText","resourceGroupField","resourceGroupText","resourceAreaWidth","resourceColumns","resourcesInitiallyExpanded","slotWidth","datesAboveResources","googleCalendarApiKey","refetchResourcesOnNavigate","datesRender","datesDestroy","dayRender","eventRender","eventDestroy","viewSkeletonRender","viewSkeletonDestroy","resourceRender","PROP_IS_DEEP","EMISSION_NAMES","EMISSION_USE_PROP","FullCalendarComponent","renderId","deepCopies","warnDeprecatedListeners","$listeners","$options","$el","buildCalendarOptions","renderDirty","buildPropWatcher","_iteratorNormalCompletion","_didIteratorError","_iteratorError","_step","emissionName","_len","_key","_iterator","propVal","recordDirtyOption","optionName","newVal","dirtyOptions","getApi","propDef","deep","oldVal","listenerHash","GlobalVue","installed","install","Vue","use","sendMail","previewImage","idReclamacion","producto","lote","factura","odc","UsuarioVendedor","idusuariosServicioCliente","CategoriaProducto_idCategoriaProducto","ZonaComercial_idZonaComercial","Usuarios_idUsuario","addNewMotDev","MotivosDevolucionAdd","MotivosDevolucionEdit","itemMotivo","submitNewNotificacion","refInFor","Idioma","PropiedadFamiliaProductoTraduccion","comDetails","submitEditMessage","option","formEditCom"],"mappings":"2IAAA,W,2CCAA,IAAIA,EAAS,WAAa,IAAIC,EAAIC,KAASC,EAAGF,EAAIG,eAAmBC,EAAGJ,EAAIK,MAAMD,IAAIF,EAAG,OAAOE,EAAG,QAAQ,CAACE,MAAM,CAAC,KAAON,EAAIO,WAAWC,GAAG,CAAC,cAAc,SAASC,GAAQT,EAAIO,UAAUE,KAAU,CAACL,EAAG,KAAK,CAACM,YAAY,iBAAiBJ,MAAM,CAAC,KAAO,UAAUK,KAAK,UAAU,CAACX,EAAIY,GAAG,IAAIZ,EAAIa,GAAGb,EAAIc,GAAG,2CAA2C,OAAOV,EAAG,qBAAqB,CAACW,IAAI,UAAUC,YAAYhB,EAAIiB,GAAG,CAAC,CAACC,IAAI,UAAUC,GAAG,SAASJ,GACpb,IAAIK,EAAeL,EAAIK,aACvB,MAAO,CAAChB,EAAG,OAAO,CAACI,GAAG,CAAC,OAAS,SAASC,GAAgC,OAAxBA,EAAOY,iBAAwBD,EAAapB,EAAIsB,qBAAqB,CAACtB,EAAIuB,GAAIvB,EAAIwB,SAAqB,cAAE,SAASC,GAAM,OAAOrB,EAAG,MAAM,CAACA,EAAG,KAAK,CAACJ,EAAIY,GAAGZ,EAAIa,GAAGY,EAAKC,OAAOA,WAAWtB,EAAG,MAAM,CAACM,YAAY,OAAO,CAACN,EAAG,MAAM,CAACM,YAAY,UAAU,CAACN,EAAG,WAAW,CAACE,MAAM,CAAC,KAAO,OAAO,MAAQN,EAAIc,GAAG,8CAA8Ca,MAAM,CAACC,MAAOH,EAAoB,gBAAEI,SAAS,SAAUC,GAAM9B,EAAI+B,KAAKN,EAAM,kBAAmBK,IAAME,WAAW,2BAA2B,KAAK5B,EAAG,MAAM,CAACM,YAAY,kBAAiBN,EAAG,MAAM,CAACM,YAAY,OAAO,CAACN,EAAG,MAAM,CAACM,YAAY,iCAAiC,CAACN,EAAG,MAAM,CAACM,YAAY,OAAO,CAACN,EAAG,QAAQ,CAAC6B,YAAY,CAAC,cAAc,SAAS,CAACjC,EAAIY,GAAGZ,EAAIa,GAAGb,EAAIc,GAAG,4CAA4C,CAACV,EAAG,WAAW,CAACuB,MAAM,CAACC,MAAO5B,EAAIwB,SAAe,OAAEK,SAAS,SAAUC,GAAM9B,EAAI+B,KAAK/B,EAAIwB,SAAU,SAAUM,IAAME,WAAW,oBAAoB,CAAC5B,EAAG,IAAI,CAACM,YAAY,0BAA0BJ,MAAM,CAAC,KAAO,MAAMK,KAAK,OAAOP,EAAG,IAAI,CAACM,YAAY,kCAAkCJ,MAAM,CAAC,KAAO,OAAOK,KAAK,YAAY,KAAKP,EAAG,MAAM,CAACM,YAAY,OAAO,CAACN,EAAG,MAAM,CAACM,YAAY,iCAAiC,CAACN,EAAG,MAAM,CAACM,YAAY,OAAO,CAACN,EAAG,QAAQ,CAAC6B,YAAY,CAAC,cAAc,SAAS,CAACjC,EAAIY,GAAGZ,EAAIa,GAAGb,EAAIc,GAAG,mDAAmD,CAACV,EAAG,YAAY,CAACE,MAAM,CAAC,YAAcN,EAAIc,GAAG,6CAA6C,KAAO,SAASa,MAAM,CAACC,MAAO5B,EAAIwB,SAAiB,SAAEK,SAAS,SAAUC,GAAM9B,EAAI+B,KAAK/B,EAAIwB,SAAU,WAAYM,IAAME,WAAW,sBAAsB,CAAC5B,EAAG,YAAY,CAACc,IAAI,OAAOZ,MAAM,CAAC,MAAQN,EAAIc,GAAG,2CAA2C,MAAQ,KAAKd,EAAIuB,GAAIvB,EAAIkC,oBAAwB,MAAE,SAASC,EAAKC,GAAO,OAAOhC,EAAG,YAAY,CAACc,IAAI,MAAMkB,EAAM9B,MAAM,CAAC,MAAQN,EAAIc,GAAG,sCAAsCqB,GAAM,MAAQE,SAASD,UAAa,KAAK,KAAKhC,EAAG,MAAM,CAACM,YAAY,aAAauB,YAAY,CAAC,aAAa,OAAO,cAAc,OAAO,aAAa,UAAU3B,MAAM,CAAC,KAAO,UAAUK,KAAK,UAAU,CAACP,EAAG,WAAW,CAACM,YAAY,0BAA0B4B,SAAS,CAAC,MAAQ,SAAS7B,GAAQ,OAAOT,EAAIuC,UAAU9B,MAAW,CAACT,EAAIY,GAAGZ,EAAIa,GAAGb,EAAIc,GAAG,0BAA0BV,EAAG,oBAAoB,CAACE,MAAM,CAAC,WAAa,oBAAoB,OAAS,yBAAyB,CAACF,EAAG,WAAW,CAACE,MAAM,CAAC,cAAc,SAAS,KAAO,YAAY,CAACN,EAAIY,GAAGZ,EAAIa,GAAGb,EAAIc,GAAG,yBAAyB,IAAI,IAAI,WAAW,IAC75E0B,EAAkB,G,0LC0FtB,GACEC,WAAY,GACZC,KAFF,WAGI,MAAO,CACLlB,SAAU,IAAI,EAApB,EACMjB,WAAW,EACX2B,oBAAqB,IAAI,EAA/B,IAGES,SAAU,OAAZ,OAAY,CAAZ,GACA,2CAEEC,QAZF,WAaI3C,KAAKuB,SAASqB,YAAc5C,KAAK6C,OAAOC,MAAMtB,KAC9CxB,KAAKuB,SAASwB,QAAU/C,KAAKuB,SAASyB,mBAAqBhD,KAAKiD,KAAKC,UACrElD,KAAKuB,SAAS4B,aAAenD,KAAKoD,eAAeC,KAAI,SAAzD,mBACA,gCACA,mBACA,4BACA,gBACA,oBACA,gBACA,sBAIEC,QA1BF,WA0BA,WACIC,SAASC,IAAI,yBAAyB,WACpC,EAAN,YACQC,MAAO,EAAf,sBACQC,KACR,0IACQC,mBAAmB,IAErB,EAAN,cACM,EAAN,iBAGEC,QAAS,CACPtB,UADJ,WACA,uBACA,4BADA,IACA,0CACA,sBAFA,8BAIMtC,KAAKuB,SAASsC,gBAAkB,GAChC7D,KAAKuB,SAASuC,QAAS,EACvB9D,KAAKuB,SAASwC,SAAW,EACzB/D,KAAKM,WAAY,GAEnB,iBAVJ,WAUA,qKACA,cACA,8BACA,KACA,0IACA,uBACA,WANA,SAUA,6CACA,mHAXA,SAcA,cAdA,OAcA,EAdA,OAgBA,GACA,2DACA,+BACA,eAEA,mDArBA,mDAwBA,uCAxBA,yBA4BA,gBA5BA,+EA+BI,UAzCJ,WAyCA,8KACA,yEADA,cACA,EADA,yBAEA,kCAFA,gDC5K4X,I,wBCQxX0D,EAAY,eACd,EACAlE,EACAyC,GACA,EACA,KACA,KACA,MAIa,aAAAyB,E,4DCnBTC,E,wBAiBJ,aAAsB,IAAVC,EAAU,uDAAJ,GAAI,qCAfF,GAeE,+CAdkB,GAclB,qDAbwB,GAaxB,uBAZN,IAYM,iCAXI,IAWJ,sBAVR,GAUQ,oBATV,GASU,qBARR,IAQQ,4BAPD,GAOC,gCALFC,GAKE,mCAJCA,GAID,qBAHR,IAGQ,sBAFP,IAGbC,OAAOC,OAAOrE,KAAMkE,G,YAIxBI,EAAOC,QAAUN,G,gDCtBjB,IAAIO,EAAQ,EAAQ,QAChBC,EAAkB,EAAQ,QAC1BC,EAAU,EAAQ,QAElBC,EAAWF,EAAgB,YAE/BH,EAAOC,SAAWC,GAAM,WACtB,IAAII,EAAM,IAAIC,IAAI,gBAAiB,YAC/BC,EAAeF,EAAIE,aACnBC,EAAS,GAMb,OALAH,EAAII,SAAW,QACfF,EAAaG,SAAQ,SAAUtD,EAAOV,GACpC6D,EAAa,UAAU,KACvBC,GAAU9D,EAAMU,KAEV+C,IAAYE,EAAIM,SAClBJ,EAAaK,MACD,2BAAbP,EAAIQ,MACsB,MAA1BN,EAAaO,IAAI,MACuB,QAAxCC,OAAO,IAAIC,gBAAgB,WAC1BT,EAAaH,IAEsB,MAApC,IAAIE,IAAI,eAAeW,UACsC,MAA7D,IAAID,gBAAgB,IAAIA,gBAAgB,QAAQF,IAAI,MAEpB,eAAhC,IAAIR,IAAI,eAAeY,MAEQ,YAA/B,IAAIZ,IAAI,cAAca,MAEX,SAAXX,GAEwC,MAAxC,IAAIF,IAAI,gBAAYV,GAAWsB,S,6DC/BtC,W,2CCAA,IAAI3F,EAAS,WAAa,IAAIC,EAAIC,KAASC,EAAGF,EAAIG,eAAmBC,EAAGJ,EAAIK,MAAMD,IAAIF,EAAG,OAAOE,EAAG,QAAQ,CAACE,MAAM,CAAC,KAAON,EAAI4F,OAAOC,SAASrF,GAAG,CAAC,cAAc,SAASC,GAAQ,OAAOT,EAAI+B,KAAK/B,EAAI4F,OAAQ,UAAWnF,MAAW,CAACL,EAAG,KAAK,CAACM,YAAY,iBAAiBJ,MAAM,CAAC,KAAO,UAAUK,KAAK,UAAU,CAACX,EAAIY,GAAG,IAAIZ,EAAIa,GAAGb,EAAIc,GAAG,uCAAuC,OAAOV,EAAG,qBAAqB,CAACW,IAAI,UAAUC,YAAYhB,EAAIiB,GAAG,CAAC,CAACC,IAAI,UAAUC,GAAG,SAASJ,GAC/c,IAAIK,EAAeL,EAAIK,aACvB,MAAO,CAAChB,EAAG,OAAO,CAACI,GAAG,CAAC,OAAS,SAASC,GAAgC,OAAxBA,EAAOY,iBAAwBD,EAAapB,EAAI8F,kBAAkB,CAAC1F,EAAG,MAAM,CAACM,YAAY,iBAAiBV,EAAIuB,GAAIvB,EAAI+F,KAAiB,cAAE,SAAStE,GAAM,OAAOrB,EAAG,MAAM,CAACc,IAAIO,EAAKuE,gBAAgBC,MAAMjG,EAAIkG,OAAO,CAAC9F,EAAG,IAAI,CAACJ,EAAIY,GAAGZ,EAAIa,GAAGY,EAAKC,WAAWtB,EAAG,qBAAqB,CAACE,MAAM,CAAC,KAAOmB,EAAKuE,gBAAkBhG,EAAIc,GAAG,sCAAsC,MAAQ,YAAYE,YAAYhB,EAAIiB,GAAG,CAAC,CAACC,IAAI,UAAUC,GAAG,SAASJ,GACzd,IAAIoF,EAASpF,EAAIoF,OACbC,EAASrF,EAAIqF,OACjB,MAAO,CAAChG,EAAG,WAAW,CAACE,MAAM,CAAC,KAAO,OAAO,MAAQ8F,EAASpG,EAAIqG,cAAgB,KAAK,WAAaF,EAAO,YAAcnG,EAAIc,GAAG,sCAAsC,MAAQd,EAAIc,GAAG,uCAAuCa,MAAM,CAACC,MAAOH,EAAyB,qBAAEI,SAAS,SAAUC,GAAM9B,EAAI+B,KAAKN,EAAM,uBAAwBK,IAAME,WAAW,mCAAmC,MAAK,MAAS,MAAK,GAAG5B,EAAG,MAAM,CAACM,YAAY,iCAAiC,CAACN,EAAG,MAAM,CAAC6B,YAAY,CAAC,gBAAgB,OAAO,cAAc,UAAU,CAAC7B,EAAG,QAAQ,CAACJ,EAAIY,GAAGZ,EAAIa,GAAGb,EAAIc,GAAG,2BAA2B,CAACV,EAAG,WAAW,CAACuB,MAAM,CAACC,MAAO5B,EAAI+F,KAAY,QAAElE,SAAS,SAAUC,GAAM9B,EAAI+B,KAAK/B,EAAI+F,KAAM,UAAWjE,IAAME,WAAW,iBAAiB,CAAC5B,EAAG,IAAI,CAACM,YAAY,0BAA0BJ,MAAM,CAAC,KAAO,MAAMK,KAAK,OAAOP,EAAG,IAAI,CAACM,YAAY,kCAAkCJ,MAAM,CAAC,KAAO,OAAOK,KAAK,YAAY,GAAGP,EAAG,MAAM,CAACM,YAAY,aAAauB,YAAY,CAAC,aAAa,OAAO,cAAc,OAAO,aAAa,UAAU3B,MAAM,CAAC,KAAO,UAAUK,KAAK,UAAU,CAACP,EAAG,WAAW,CAACM,YAAY,0BAA0B4B,SAAS,CAAC,MAAQ,SAAS7B,GAAQ,OAAOT,EAAIuC,eAAe,CAACvC,EAAIY,GAAGZ,EAAIa,GAAGb,EAAIc,GAAG,0BAA0BV,EAAG,WAAW,CAACE,MAAM,CAAC,cAAc,SAAS,KAAO,YAAY,CAACN,EAAIY,GAAGZ,EAAIa,GAAGb,EAAIc,GAAG,yBAAyB,aAAa,IAClzC0B,EAAkB,G,0DC0DtB,GACEC,WAAY,GACZC,KAFF,WAGI,MAAO,CACL2D,cAAepG,KAAKa,GAAG,wBACvBoF,MAAO,qBACPH,KAAM,CACJO,gBAAiB,EACjBC,OAAQ,GACRC,SAAS,EACTpD,aAAc,IAEhBwC,OAAQ,CACNC,SAAS,KAIflD,SAAU,OAAZ,OAAY,CAAZ,kBACA,0BACA,oCAEE,QArBF,WAqBA,oLACEY,QAtBF,WAsBA,WACIC,SAASC,IAAI,kBAAjB,wJACA,cACA,8BACA,KACA,0IACA,uBAEA,mBACA,4BACA,gBACA,kBACA,sCAEA,gBACA,oBAdA,mGAiBEI,QAAS,CACP,cADJ,WACA,+JACA,oBADA,SAEA,QACA,4DACA,KAFA,yDAGA,+FACA,mBACA,2DACA,2CACA,eAEA,mDANA,2CAHA,uDAYA,YACA,iBACA,sDAGA,wBAnBA,8CAqBItB,UAtBJ,WAuBMtC,KAAK8F,KAAO,IAAI1B,OAAO,CACrBjB,aAAc,GACdmD,OAAQ,GACRC,SAAS,IAEXvG,KAAK2F,OAAOC,SAAU,EACtB5F,KAAKwG,MAAMC,QAAQC,WCrI6V,I,wBCQlX1C,EAAY,eACd,EACAlE,EACAyC,GACA,EACA,KACA,KACA,MAIa,aAAAyB,E,sECnBf,W,kCCAA,W,yCCAA,IAAIlE,EAAS,WAAa,IAAIC,EAAIC,KAASC,EAAGF,EAAIG,eAAmBC,EAAGJ,EAAIK,MAAMD,IAAIF,EAAG,OAAOE,EAAG,QAAQ,CAACE,MAAM,CAAC,KAAON,EAAI4F,OAAOC,SAASrF,GAAG,CAAC,cAAc,SAASC,GAAQ,OAAOT,EAAI+B,KAAK/B,EAAI4F,OAAQ,UAAWnF,MAAW,CAACL,EAAG,KAAK,CAACM,YAAY,iBAAiBJ,MAAM,CAAC,KAAO,UAAUK,KAAK,UAAU,CAACX,EAAIY,GAAG,IAAIZ,EAAIa,GAAGb,EAAIc,GAAG,qCAAqC,OAAOV,EAAG,qBAAqB,CAACW,IAAI,UAAUC,YAAYhB,EAAIiB,GAAG,CAAC,CAACC,IAAI,UAAUC,GAAG,SAASJ,GAC7c,IAAIK,EAAeL,EAAIK,aACvB,MAAO,CAAChB,EAAG,OAAO,CAACI,GAAG,CAAC,OAAS,SAASC,GAAgC,OAAxBA,EAAOY,iBAAwBD,EAAapB,EAAI4G,sBAAsB,CAACxG,EAAG,MAAM,CAACM,YAAY,iBAAiB,CAACN,EAAG,MAAM,CAAC6F,MAAMjG,EAAIkG,OAAO,CAAC9F,EAAG,MAAM,CAACM,YAAY,wBAAwBuB,YAAY,CAAC,gBAAgB,UAAU,CAAC7B,EAAG,QAAQ,CAACE,MAAM,CAAC,IAAM,KAAK,CAACN,EAAIY,GAAGZ,EAAIa,GAAGb,EAAIc,GAAG,yDAAyDV,EAAG,qBAAqB,CAACE,MAAM,CAAC,KAAO,eAAe,MAAQ,YAAYU,YAAYhB,EAAIiB,GAAG,CAAC,CAACC,IAAI,UAAUC,GAAG,SAASJ,GACxf,IAAIoF,EAASpF,EAAIoF,OACbC,EAASrF,EAAIqF,OACjB,MAAO,CAAChG,EAAG,YAAY,CAACM,YAAY,UAAUJ,MAAM,CAAC,KAAO,QAAQ,WAAa,GAAG,YAAcN,EAAIc,GAAG,oDAAoDN,GAAG,CAAC,OAASR,EAAI6G,kBAAkBlF,MAAM,CAACC,MAAO5B,EAAI+F,KAAgB,YAAElE,SAAS,SAAUC,GAAM9B,EAAI+B,KAAK/B,EAAI+F,KAAM,cAAejE,IAAME,WAAW,qBAAqBhC,EAAIuB,GAAIvB,EAAU,QAAE,SAAS8G,GAAO,OAAO1G,EAAG,YAAY,CAACc,IAAI4F,EAAMC,SAASzG,MAAM,CAAC,WAAa6F,EAAO,MAAQW,EAAMC,SAAS,MAAQ/G,EAAIc,GAC7b,wBACEd,EAAIgH,iBAAiBC,SAASH,EAAMC,iBACjC,GAAG,EAAS3G,EAAG,MAAM,CAACM,YAAY,+BAA+BuB,YAAY,CAAC,QAAU,UAAU,CAACjC,EAAIY,GAAG,IAAIZ,EAAIa,GAAGb,EAAIqG,eAAe,OAAOrG,EAAIkH,SAAS,MAAK,MAAS,GAAIlH,EAA8B,2BAAEI,EAAG,MAAM,CAAC6F,MAAMjG,EAAIkG,OAAO,CAAC9F,EAAG,OAAO,CAACM,YAAY,SAAS,CAACV,EAAIY,GAAGZ,EAAIa,GAAGb,EAAIc,GAAG,mDAAmDV,EAAG,qBAAqB,CAACE,MAAM,CAAC,KAAO,wBAAwB,MAAQ,wBAAwBU,YAAYhB,EAAIiB,GAAG,CAAC,CAACC,IAAI,UAAUC,GAAG,SAASJ,GACxe,IAAIoF,EAASpF,EAAIoF,OACbC,EAASrF,EAAIqF,OACnC,MAAO,CAAChG,EAAG,YAAY,CAACM,YAAY,UAAUJ,MAAM,CAAC,KAAO,QAAQ,YAAcN,EAAIc,GAAG,gDAAgDN,GAAG,CAAC,OAASR,EAAImH,cAAcxF,MAAM,CAACC,MAAO5B,EAAI+F,KAAY,QAAElE,SAAS,SAAUC,GAAM9B,EAAI+B,KAAK/B,EAAI+F,KAAM,UAAWjE,IAAME,WAAW,iBAAiBhC,EAAIuB,GAAIvB,EAAoB,kBAAE,SAASoH,GAAS,OAAOhH,EAAG,YAAY,CAACc,IAAIkG,EAAQC,gBAAgB/G,MAAM,CAAC,WAAa6F,EAAO,MAAQiB,EAAQC,gBAAgB,MAAQD,EAAQE,uBAAsB,GAAG,EAASlH,EAAG,MAAM,CAACM,YAAY,+BAA+BuB,YAAY,CAAC,QAAU,UAAU,CAACjC,EAAIY,GAAG,IAAIZ,EAAIa,GAAGb,EAAIqG,eAAe,OAAOrG,EAAIkH,SAAS,MAAK,MAAS,GAAGlH,EAAIkH,KAAK9G,EAAG,MAAM,CAAC6F,MAAMjG,EAAIkG,OAAO,CAAC9F,EAAG,qBAAqB,CAACE,MAAM,CAAC,KAAO,mBAAmB,MAAQ,YAAYU,YAAYhB,EAAIiB,GAAG,CAAC,CAACC,IAAI,UAAUC,GAAG,SAASJ,GAClyB,IAAIoF,EAASpF,EAAIoF,OACbC,EAASrF,EAAIqF,OACnC,MAAO,CAAChG,EAAG,OAAO,CAACM,YAAY,iBAAiB,CAACV,EAAIY,GAAGZ,EAAIa,GAAGb,EAAIc,GAAG,oDAAoDV,EAAG,iBAAiB,CAACE,MAAM,CAAC,WAAa6F,EAAO,iBAAiBnG,EAAIuH,cAAc,KAAO,WAAW,YAAcvH,EAAIc,GAAG,iDAAiDa,MAAM,CAACC,MAAO5B,EAAI+F,KAAU,MAAElE,SAAS,SAAUC,GAAM9B,EAAI+B,KAAK/B,EAAI+F,KAAM,QAASjE,IAAME,WAAW,gBAAgB,EAAS5B,EAAG,MAAM,CAACM,YAAY,+BAA+BuB,YAAY,CAAC,QAAU,UAAU,CAACjC,EAAIY,GAAG,IAAIZ,EAAIa,GAAGb,EAAIqG,eAAe,OAAOrG,EAAIkH,SAAS,MAAK,MAAS,GAAG9G,EAAG,MAAM,CAAC6F,MAAMjG,EAAIkG,OAAO,CAAC9F,EAAG,OAAO,CAACM,YAAY,iBAAiB,CAACV,EAAIY,GAAGZ,EAAIa,GAAGb,EAAIc,GAAG,kDAAkDV,EAAG,WAAW,CAACE,MAAM,CAAC,KAAO,WAAW,SAAW,CAAEkH,QAAS,EAAGC,QAAS,GAAI,KAAO,YAAY,YAAczH,EAAIc,GAAG,+CAA+Ca,MAAM,CAACC,MAAO5B,EAAI+F,KAAe,WAAElE,SAAS,SAAUC,GAAM9B,EAAI+B,KAAK/B,EAAI+F,KAAM,aAAcjE,IAAME,WAAW,sBAAsB,GAAG5B,EAAG,MAAM,CAAC6F,MAAMjG,EAAIkG,OAAO,CAAC9F,EAAG,OAAO,CAACM,YAAY,SAAS,CAACV,EAAIY,GAAGZ,EAAIa,GAAGb,EAAIc,GAAG,yDAAyDV,EAAG,WAAW,CAACE,MAAM,CAAC,KAAO,WAAW,SAAW,CAAEkH,QAAS,EAAGC,QAAS,GAAI,KAAO,YAAY,YAAczH,EAAIc,GAAG,sDAAsDa,MAAM,CAACC,MAAO5B,EAAI+F,KAAwB,oBAAElE,SAAS,SAAUC,GAAM9B,EAAI+B,KAAK/B,EAAI+F,KAAM,sBAAuBjE,IAAME,WAAW,+BAA+B,GAAIhC,EAAuB,oBAAEI,EAAG,MAAM,CAAC6F,MAAMjG,EAAIkG,OAAO,CAAC9F,EAAG,OAAO,CAACM,YAAY,SAAS,CAACV,EAAIY,GAAGZ,EAAIa,GAAGb,EAAIc,GAAG,wDAAwDV,EAAG,qBAAqB,CAACE,MAAM,CAAC,KAAO,sBAAsB,MAAQ,YAAYU,YAAYhB,EAAIiB,GAAG,CAAC,CAACC,IAAI,UAAUC,GAAG,SAASJ,GACtuD,IAAIoF,EAASpF,EAAIoF,OACbC,EAASrF,EAAIqF,OACnC,MAAO,CAAChG,EAAG,YAAY,CAACM,YAAY,UAAUJ,MAAM,CAAC,KAAO,QAAQ,YAAcN,EAAIc,GAAG,qDAAqDa,MAAM,CAACC,MAAO5B,EAAI+F,KAA0B,sBAAElE,SAAS,SAAUC,GAAM9B,EAAI+B,KAAK/B,EAAI+F,KAAM,wBAAyBjE,IAAME,WAAW,+BAA+BhC,EAAIuB,GAAIvB,EAAkB,gBAAE,SAAS0H,GAAQ,OAAOtH,EAAG,YAAY,CAACc,IAAIwG,EAAOC,iBAAiBrH,MAAM,CAAC,WAAa6F,EAAO,MAAQuB,EAAOC,iBAAiB,MAAQD,EAAOnB,aAAY,GAAG,EAASnG,EAAG,MAAM,CAACM,YAAY,+BAA+BuB,YAAY,CAAC,QAAU,UAAU,CAACjC,EAAIY,GAAG,IAAIZ,EAAIa,GAAGb,EAAIqG,eAAe,OAAOrG,EAAIkH,SAAS,MAAK,MAAS,GAAGlH,EAAIkH,KAAMlH,EAA8B,2BAAEI,EAAG,MAAM,CAAC6F,MAAMjG,EAAIkG,OAAO,CAAC9F,EAAG,qBAAqB,CAACE,MAAM,CAAC,KAAON,EAAI4H,yBAAyB,MAAQ,YAAY5G,YAAYhB,EAAIiB,GAAG,CAAC,CAACC,IAAI,UAAUC,GAAG,SAASJ,GAC/0B,IAAIoF,EAASpF,EAAIoF,OACbC,EAASrF,EAAIqF,OACnC,MAAO,CAAChG,EAAG,WAAW,CAACE,MAAM,CAAC,KAAO,OAAO,MAAQ8F,EAASpG,EAAIqG,cAAgB,KAAK,WAAaF,EAAO,YAAcnG,EAAI4H,yBAAyB,MAAQ5H,EAAI4H,0BAA0BjG,MAAM,CAACC,MAAO5B,EAAI+F,KAAmB,eAAElE,SAAS,SAAUC,GAAM9B,EAAI+B,KAAK/B,EAAI+F,KAAM,iBAAkBjE,IAAME,WAAW,6BAA6B,MAAK,MAAS,GAAGhC,EAAIkH,KAAMlH,EAA8B,2BAAEI,EAAG,MAAM,CAAC6F,MAAMjG,EAAIkG,OAAO,CAAC9F,EAAG,OAAO,CAACM,YAAY,SAAS,CAACV,EAAIY,GAAGZ,EAAIa,GAAGb,EAAIc,GAAG,wCAAwCV,EAAG,qBAAqB,CAACE,MAAM,CAAC,KAAO,kBAAkB,MAAQ,YAAYU,YAAYhB,EAAIiB,GAAG,CAAC,CAACC,IAAI,UAAUC,GAAG,SAASJ,GAC7mB,IAAIoF,EAASpF,EAAIoF,OACbC,EAASrF,EAAIqF,OACnC,MAAO,CAAChG,EAAG,YAAY,CAACM,YAAY,UAAUJ,MAAM,CAAC,KAAO,QAAQ,YAAcN,EAAIc,GAAG,qCAAqCN,GAAG,CAAC,OAASR,EAAImH,cAAcxF,MAAM,CAACC,MAAO5B,EAAI+F,KAAmB,eAAElE,SAAS,SAAUC,GAAM9B,EAAI+B,KAAK/B,EAAI+F,KAAM,iBAAkBjE,IAAME,WAAW,wBAAwBhC,EAAIuB,GAAIvB,EAAa,WAAE,SAAS6H,GAAS,OAAOzH,EAAG,YAAY,CAACc,IAAI2G,EAAQvB,gBAAgBhG,MAAM,CAAC,WAAa6F,EAAO,MAAQ0B,EAAQvB,gBAAgB,MAAQuB,EAAQtB,aAAY,GAAG,EAASnG,EAAG,MAAM,CAACM,YAAY,+BAA+BuB,YAAY,CAAC,QAAU,UAAU,CAACjC,EAAIY,GAAG,IAAIZ,EAAIa,GAAGb,EAAIqG,eAAe,OAAOrG,EAAIkH,SAAS,MAAK,MAAS,GAAGlH,EAAIkH,KAAMlH,EAA8B,2BAAEI,EAAG,MAAM,CAAC6F,MAAMjG,EAAIkG,OAAO,CAAC9F,EAAG,YAAY,CAACW,IAAI,SAASL,YAAY,cAAcJ,MAAM,CAAC,OAAS,IAAI,SAAW,GAAG,OAAS,UAAU,YAAYN,EAAI8H,SAAS,MAAQ,EAAE,eAAc,EAAM,YAAY9H,EAAI+H,WAAW,YAAY/H,EAAI+H,aAAa,CAAC3H,EAAG,WAAW,CAACE,MAAM,CAAC,KAAO,QAAQ,KAAO,YAAY,CAACN,EAAIY,GAAGZ,EAAIa,GAAGb,EAAIc,GAAG,8BAA8BV,EAAG,MAAM,CAACM,YAAY,iBAAiBJ,MAAM,CAAC,KAAO,OAAOK,KAAK,OAAO,CAACX,EAAIY,GAAG,IAAIZ,EAAIa,GAAGb,EAAIc,GAAG,gCAAgC,QAAQ,IAAI,GAAGd,EAAIkH,KAAMlH,EAAa,UAAEI,EAAG,MAAM,CAACM,YAAY,+BAA+BuB,YAAY,CAAC,QAAU,UAAU,CAACjC,EAAIY,GAAG,IAAIZ,EAAIa,GAAGb,EAAIqG,eAAe,OAAOrG,EAAIkH,OAAO9G,EAAG,MAAM,CAACM,YAAY,aAAaJ,MAAM,CAAC,KAAO,UAAUK,KAAK,UAAU,CAACP,EAAG,WAAW,CAACM,YAAY,0BAA0B4B,SAAS,CAAC,MAAQ,SAAS7B,GAAQ,OAAOT,EAAIuC,eAAe,CAACvC,EAAIY,GAAGZ,EAAIa,GAAGb,EAAIc,GAAG,0BAA0BV,EAAG,WAAW,CAACE,MAAM,CAAC,cAAc,SAAS,KAAO,YAAY,CAACN,EAAIY,GAAGZ,EAAIa,GAAGb,EAAIc,GAAG,yBAAyB,aAAa,IACtrD0B,EAAkB,G,uGC4PtB,GACEC,WAAY,GACZC,KAFF,WAGI,MAAO,CACLoF,SAAU,GACVP,cAAe,CACbS,aADR,SACA,GACU,OAAOC,EAAKC,UAAYC,KAAKC,QAIjCC,cAAc,EACdC,aAAc,CAAC,MAAO,MAAO,MAAO,OAAQ,QAC5CC,SAAU,GACVC,WAAW,EACXC,UAAW,GAEXC,mBAAoB,EACpBC,qBAAqB,EACrBC,qBAAqB,EACrBC,4BAA4B,EAC5BjB,yBAA0B,GAC1BZ,iBAAkB,IAAI,EAA5B,EACMX,cAAepG,KAAKa,GAAG,wBACvBoF,MAAO,iCACP4C,eAAe,EACfC,iBAAkB,GAClBC,OAAQ,GACRC,eAAgB,GAChBC,OAAQ,GACRnD,KAAM,CACJoD,eAAgB,EAChBC,WAAY,EACZhC,QAAS,EACTiC,cAAe,EACfC,WAAY,EACZC,eAAgB,EAChBC,MAAO,GACPC,WAAY,GACZC,OAAQ,GACRC,eAAgB,GAChBC,cAAe,GACfC,WAAY,IAEdjE,OAAQ,CACNC,SAAS,KAIflD,SAAU,OAAZ,OAAY,CAAZ,kBACA,0BACA,oCAEEC,QArDF,aAsDEW,QAtDF,WAsDA,WACIC,SAASC,IAAI,eAAjB,+JACA,WACA,iCACA,uCACA,mCACA,uCACA,uCACA,6BACA,qBACA,6DACA,uCACA,cACA,8BACA,KACA,0IACA,uBAfA,UAiBA,6BAjBA,yBAkBA,cAlBA,yBAmBA,mBAnBA,yBAoBA,qBApBA,QAqBA,gBACA,oBAtBA,oGAyBEI,QAAS,CACPkE,WADJ,SACA,KACM9H,KAAK8F,KAAK8D,WAAa,GAD7B,uBAEA,GAFA,IAEA,+CACA,2CACA,8BAJA,gCAiCI,WAlCJ,SAkCA,2JACA,cADA,8CAGI1C,aArCJ,SAqCA,GACUlH,KAAK8F,KAAKwD,gBAAkBtJ,KAAKyI,oBACnCzI,KAAK0I,qBAAsB,EAC3B1I,KAAK6J,kBAEL7J,KAAK0I,qBAAsB,GAG/BoB,kBA7CJ,SA6CA,GACM,MAAO,MAAMC,KAAKC,GAAY,SAASD,KAAKC,GAAU,QAAK7F,GAE7D0F,eAhDJ,WAiDM,IACE7J,KAAKwG,MAAMyD,OAAOC,aAC1B,UACMlK,KAAKsI,SAAW,GAChBtI,KAAKuI,WAAY,GAEnB,yBAvDJ,WAuDA,qKACA,GACA,KACA,gCACA,sCACA,4DALA,SAOA,QACA,KACA,gEACA,GAEA,KALA,yDAMA,+FACA,mBACA,gCACA,yBACA,kBACA,sBACA,kDAIA,mDAVA,2CANA,uDAmBA,YACA,eACA,sDAGA,wBA/BA,8CAmCI,eA1FJ,WA0FA,qKACA,GACA,KACA,gCACA,sCACA,cACA,gBANA,SAQA,QACA,4DACA,KAFA,yDAGA,+FACA,mBACA,uCACA,kBACA,kBACA,YACA,4DAIA,mDAVA,2CAHA,uDAgBA,YACA,eACA,sDAGA,wBA7BA,8CAiCI,iBA3HJ,WA2HA,qKACA,GACA,KACA,gCACA,sCACA,eALA,SAOA,QACA,6DACA,KAFA,yDAGA,+FACA,kBACA,qCAEA,mDAJA,2CAHA,uDAUA,YACA,eACA,sDAGA,wBAtBA,8CA2BI3B,iBAtJJ,SAsJA,GACM5G,KAAKsJ,eAAiB,EAClBtJ,KAAK8F,KAAKqE,aAAenK,KAAK+G,iBAAiBqD,WACjDpK,KAAK2I,qBAAsB,EAC3B3I,KAAK2H,yBAA2B3H,KAAKa,GAC7C,kDAEQb,KAAK4I,4BAA6B,GAC1C,wDACQ5I,KAAK2I,qBAAsB,EAC3B3I,KAAK2H,yBAA2B3H,KAAKa,GAC7C,2DAEQb,KAAK4I,4BAA6B,IAElC5I,KAAK2I,qBAAsB,EAC3B3I,KAAK4I,4BAA6B,IAGtC,UAzKJ,WAyKA,qKACA,GACA,KACA,gCACA,sCACA,uCACA,uCANA,SAQA,QACA,KACA,MACA,sEAEA,GAEA,KAPA,yDAQA,+FACA,kBACA,2BAgBA,mDAlBA,2CARA,uDA6BA,YACA,eACA,sDAGA,wBA1CA,8CA4CI,kBArNJ,WAqNA,6JAEA,4BACA,6CAHA,gBAKA,eALA,6BAOA,eACA,oBARA,SASA,iBATA,8CAYI,aAjOJ,WAiOA,0KA6CA,GA5CA,eACA,EACA,gBACA,KACA,gBACA,IACA,YACA,IACA,aACA,IACA,eACA,IACA,eACA,eAEA,oDACA,gDAEA,SACA,kBACA,iCAGA,yCACA,oBACA,iDACA,2CACA,yCACA,sDACA,iDACA,iDACA,SACA,4BACA,kCAEA,SACA,wBACA,6DAEA,SACA,sBACA,0DAGA,4BACA,IADA,iBAEA,mBAFA,IAEA,qCACA,qBACA,IAJA,+BA7CA,OAoDA,cACA,8BACA,KACA,0IACA,uBAxDA,UA0DA,QACA,4DACA,SACA,wCAGA,KANA,yDAOA,+FACA,eACA,kBACA,2DACA,cACA,mCAEA,mDAPA,2CAPA,uDAiBA,YACA,sDAGA,wBA/EA,QAgFA,gBAhFA,+CAkFItG,UAnTJ,WAoTMtC,KAAK8F,KAAO,IAAI1B,OAAO,CACrB8E,eAAgB,EAChBC,WAAY,EACZhC,QAAS,EACTiC,cAAe,EACfC,WAAY,EACZE,MAAO,GACPC,WAAY,GACZC,OAAQ,GACRC,eAAgB,GAChBC,cAAe,GACfL,eAAgB,EAChBe,oBAAqB,GACrBT,WAAY,KAEd5J,KAAK0I,qBAAsB,EAC3B1I,KAAK2I,qBAAsB,EAC3B3I,KAAK4I,4BAA6B,EAClC5I,KAAK6J,iBACL7J,KAAK2F,OAAOC,SAAU,EACtB5F,KAAKwG,MAAMC,QAAQC,SAErB,iBA1UJ,WA0UA,wJACA,cACA,8BACA,KACA,0IACA,uBAEA,gBAPA,gDC9qB2X,I,wBCQvX1C,EAAY,eACd,EACAlE,EACAyC,GACA,EACA,KACA,KACA,MAIa,aAAAyB,E,2ECnBf,IAAIlE,EAAS,WAAa,IAAIC,EAAIC,KAASC,EAAGF,EAAIG,eAAmBC,EAAGJ,EAAIK,MAAMD,IAAIF,EAAG,OAAOE,EAAG,MAAM,CAACM,YAAY,OAAO,CAACN,EAAG,MAAM,CAACM,YAAY,UAAU,CAACN,EAAG,MAAM,CAACM,YAAY,kBAAkB,CAACN,EAAG,WAAW,CAACE,MAAM,CAAC,KAAO,UAAU,MAAQ,IAAIgC,SAAS,CAAC,MAAQ,SAAS7B,GAAQ,OAAOT,EAAIuK,wBAAwB,CAACnK,EAAG,IAAI,CAACM,YAAY,+BAA+BJ,MAAM,CAAC,KAAO,SAASK,KAAK,UAAUX,EAAIY,GAAG,IAAIZ,EAAIa,GAAGb,EAAIc,GAAG,sCAAsC,QAAQ,GAAGV,EAAG,OAAO,CAACE,MAAM,CAAC,oBAAoB,mBAAmB,iBAAiB,KAAK,CAACF,EAAG,MAAM,CAACM,YAAY,aAAa,CAACN,EAAG,MAAM,CAACM,YAAY,6EAA6E,CAACN,EAAG,KAAK,CAACM,YAAY,0BAA0B,CAACV,EAAIY,GAAG,IAAIZ,EAAIa,GAAGb,EAAIc,GAAG,gCAAgC,OAAOV,EAAG,WAAW,CAACA,EAAG,WAAW,CAACM,YAAY,OAAOuB,YAAY,CAAC,MAAQ,SAAS3B,MAAM,CAAC,KAAO,SAAS,UAAY,GAAG,cAAc,kBAAkB,YAAcN,EAAIc,GAAG,sBAAsB,gBAAgB,cAAca,MAAM,CAACC,MAAO5B,EAAe,YAAE6B,SAAS,SAAUC,GAAM9B,EAAIwK,YAAY1I,GAAKE,WAAW,kBAAkB,IAAI,GAAG5B,EAAG,WAAW,CAAC6B,YAAY,CAAC,MAAQ,QAAQ3B,MAAM,CAAC,OAAS,GAAG,KAAON,EAAIyK,cAAc,CAACrK,EAAG,kBAAkB,CAACE,MAAM,CAAC,KAAO,SAAS,MAAQL,KAAKa,GAAG,sCAAsC,SAAW,GAAG,YAAY,SAASV,EAAG,kBAAkB,CAACE,MAAM,CAAC,MAAQN,EAAIc,GAAG,sBAAsB,YAAY,OAAOE,YAAYhB,EAAIiB,GAAG,CAAC,CAACC,IAAI,UAAUC,GAAG,SAASuJ,GAAO,MAAO,CAAC1K,EAAIY,GAAG,IAAIZ,EAAIa,GAAG6J,EAAMC,IAAInE,QAAUxG,EAAIc,GAAG,sBAAwBd,EAAIc,GAAG,yBAAyB,YAAYV,EAAG,kBAAkB,CAACE,MAAM,CAAC,MAAQN,EAAIc,GAAG,sBAAsB,YAAY,KAAKE,YAAYhB,EAAIiB,GAAG,CAAC,CAACC,IAAI,UAAUC,GAAG,SAASyJ,GAAO,MAAO,CAACxK,EAAG,WAAW,CAACE,MAAM,CAAC,MAAQ,SAASE,GAAG,CAAC,MAAQ,SAASC,GAAQ,OAAOT,EAAI6K,eAAeD,EAAMD,OAAOhJ,MAAM,CAACC,MAAOgJ,EAAMD,IAAW,QAAE9I,SAAS,SAAUC,GAAM9B,EAAI+B,KAAK6I,EAAMD,IAAK,UAAW7I,IAAME,WAAW,sBAAsB,CAAC5B,EAAG,IAAI,CAACM,YAAY,0BAA0BJ,MAAM,CAAC,KAAO,MAAMK,KAAK,OAAOP,EAAG,IAAI,CAACM,YAAY,kCAAkCJ,MAAM,CAAC,KAAO,OAAOK,KAAK,iBAAiBP,EAAG,kBAAkB,CAACE,MAAM,CAAC,YAAY,IAAI,MAAQN,EAAIc,GAAG,wBAAwBE,YAAYhB,EAAIiB,GAAG,CAAC,CAACC,IAAI,UAAUC,GAAG,SAASyJ,GAAO,OAAOxK,EAAG,MAAM,CAACM,YAAY,0BAA0B,CAACN,EAAG,aAAa,CAACW,IAAI,YAAc6J,EAAME,OAAOxK,MAAM,CAAC,UAAY,SAAS,MAAQ,MAAM,QAAU,UAAU,CAACF,EAAG,MAAM,CAACM,YAAY,OAAO,CAACN,EAAG,MAAM,CAACM,YAAY,kBAAkB,CAACN,EAAG,WAAW,CAACM,YAAY,iBAAiBJ,MAAM,CAAC,KAAO,UAAU,KAAO,KAAK,MAAQ,IAAIgC,SAAS,CAAC,MAAQ,SAAS7B,GAAQ,OAAOT,EAAI+K,WACnnFH,EAAME,OACNF,EAAMD,IACN,YAAcC,EAAME,WACjB,CAAC9K,EAAIY,GAAG,IAAIZ,EAAIa,GAAGb,EAAIc,GAAG,uCAAuC,QAAQ,KAAKV,EAAG,WAAW,CAACM,YAAY,uBAAuBJ,MAAM,CAAC,KAAO,YAAY,KAAO,KAAK,KAAO,IAAIK,KAAK,aAAa,CAACP,EAAG,IAAI,CAACM,YAAY,mBAAmBuB,YAAY,CAAC,MAAQ,cAAc,IAAI,UAAU,IAAI,GAAG7B,EAAG,MAAM,CAACM,YAAY,4EAA4EJ,MAAM,CAAC,KAAO,UAAUK,KAAK,UAAU,CAACP,EAAG,MAAM,GAAG,CAACA,EAAG,IAAI,CAACM,YAAY,iBAAiB,CAACV,EAAIY,GAAG,IAAIZ,EAAIa,GAAGb,EAAIc,GAAG,2BAA2B,IAAId,EAAIa,GAAGb,EAAIgL,KAAO,GAAG,IAAIhL,EAAIa,GAAGb,EAAIc,GAAG,sBAAsB,IAAId,EAAIa,GAAGb,EAAIiL,IAAI,IAAIjL,EAAIa,GAAGb,EAAIc,GAAG,sBAAsB,IAAId,EAAIa,GAAGb,EAAIkL,OAAO,IAAIlL,EAAIa,GAAGb,EAAIc,GAAG,2BAA2B,SAASV,EAAG,eAAe,CAACM,YAAY,uBAAuBJ,MAAM,CAAC,WAAWN,EAAImL,WAAWC,QAAQ,MAAQpL,EAAIkL,OAAOvJ,MAAM,CAACC,MAAO5B,EAAImL,WAAsB,YAAEtJ,SAAS,SAAUC,GAAM9B,EAAI+B,KAAK/B,EAAImL,WAAY,cAAerJ,IAAME,WAAW,6BAA6B,KAAK5B,EAAG,kBAAkBA,EAAG,oBAAoB,MACjjCoC,EAAkB,G,8GCgItB,GACEC,WAAY,CACV4I,cAAe,WAAnB,+CACIC,eAAgB,WAApB,yDAEE3I,SAAU,OAAZ,OAAY,CAAZ,kBACA,0BADA,IAEI8H,YAFJ,WAGM,IAAN,oCACM,OAAOzF,EAAOuG,MAAMtL,KAAK+K,KAAM/K,KAAKgL,KAEtCA,GANJ,WAOM,IAAN,oCAIM,OAHIhL,KAAKiL,MAAQM,IACfA,EAAYvL,KAAKiL,OAEZM,GAETR,KAbJ,WAcM,OAAO/K,KAAKkL,WAAWC,SAAWnL,KAAKkL,WAAWM,YAAc,IAElEP,MAhBJ,WAiBM,IAAN,oCACM,OAAOQ,EAAaC,OAAS,EACnC,SACA,yBAGEjJ,KA5BF,WA6BI,MAAO,CACLP,KAAM,CAAC,GAAI,OAAQ,UAAW,UAAW,UACzCgJ,WAAY,CACVC,QAAS,EACTK,YAAa,EACbG,eAAgB,CAAC,EAAG,GAAI,GAAI,IAC5BV,MAAO,GAETV,YAAa,GACbqB,UAAW,GACXH,aAAc,GACdI,WAAY,OAGhBjI,QAAS,CACPkI,aADJ,SACA,cASM,OAPA/G,EACN,0BACA,sBAAQ,OACR,gEAEA,EAEaA,GAET,eAZJ,SAYA,2KACA,QACA,yDACA,KAFA,yDAGA,+FACA,eACA,mBACA,2DACA,4CAEA,mDANA,2CAHA,uDAYA,YACA,sDAGA,wBAjBA,8CAmBI+F,WA/BJ,SA+BA,OACM9K,KAAKwG,MAAM1F,GAAKiL,UAChBxI,SAASyI,MAAM,kBAAmBC,IAEpC3B,mBAnCJ,WAoCM/G,SAASyI,MAAM,mBAEjB,gBAtCJ,WAsCA,qKACA,cACA,8BACA,KACA,0IACA,uBAEA,GACA,KACA,gCACA,uCAVA,SAYA,QACA,gDACA,KAFA,yDAGA,+FACA,eACA,kBACA,2BAEA,mDALA,2CAHA,uDAWA,YACA,eACA,sDAGA,wBA5BA,OA6BA,gBA7BA,+CAgCE,QAjHF,WAiHA,wKACA,oBADA,OAEA,oDACA,uBAHA,8CAMEE,MAAO,IC5PyW,I,wBCQ9WlI,EAAY,eACd,EACAlE,EACAyC,GACA,EACA,KACA,KACA,MAIa,aAAAyB,E,oECnBf,W,wGCoEO,I,qBCnEA,SAASmI,EAAcC,EAASC,GACrC,MAAO,CACLvM,OAAQ,SAAgBwM,GACtB,OAAOA,EAAc,MAAO,CAC1BC,MAAOvM,KAAKwM,OACZxG,MAAOhG,KAAKyM,YACX,CAACH,EAAc,SAAU,CAC1BjM,MAAO,CACLqM,GAAI1M,KAAKoM,QACTO,MAAO3M,KAAK2M,MACZC,OAAQ5M,KAAK4M,QAEf9L,IAAK,cAGT6J,MAAO,CACLyB,QAAS,CACPS,QAAST,EACTlK,KAAMoD,QAERqH,MAAO,CACLE,QAAS,IACT3K,KAAM4K,QAERF,OAAQ,CACNC,QAAS,IACT3K,KAAM4K,QAERL,WAAY,CACVvK,KAAMoD,OACNuH,QAAS,IAEXL,OAAQ,CACNtK,KAAMkC,QAER2I,QAAS,CACP7K,KAAM8K,MACNH,QAAS,WACP,MAAO,MAIbpK,KAAM,WACJ,MAAO,CACLwK,OAAQ,KACRC,SAAUlN,KAAK+M,UAGnBnJ,QAAS,CACPuJ,UAAW,SAAmBC,GAC5BpN,KAAKqN,MAAMH,SAASI,KAAKF,IAE3BG,eAAgB,WACd,GAAIvN,KAAKqN,MAAMJ,OACb,OAAOjN,KAAKqN,MAAMJ,OAAOM,kBAG7BC,YAAa,SAAqB/K,EAAMgL,GAEtC,GADIzN,KAAKqN,MAAMJ,QAAQjN,KAAKqN,MAAMJ,OAAOS,WACpC1N,KAAKwG,MAAMmH,OAAQ,MAAM,IAAIC,MAAM,yIACxC5N,KAAKqN,MAAMJ,OAAS,IAAI,IAAMjN,KAAKwG,MAAMmH,OAAOE,WAAW,MAAO,CAChE3L,KAAMmK,EACN5J,KAAMA,EACNgL,QAASA,EACTV,QAAS/M,KAAKqN,MAAMH,aAI1BY,cAAe,WACT9N,KAAKqN,MAAMJ,QACbjN,KAAKqN,MAAMJ,OAAOS,YAKnB,IAAIK,EAAM5B,EAAc,YAAa,OAGjC6B,GAFgB7B,EAAc,sBAAuB,iBAC1CA,EAAc,iBAAkB,YACpCA,EAAc,aAAc,SAC7BA,EAAc,YAAa,OACrBA,EAAc,cAAe,aACjCA,EAAc,cAAe,SAC5BA,EAAc,eAAgB,UAC7BA,EAAc,gBAAiB,Y,yCCpFpD,IAAIrM,EAAS,WAAa,IAAIC,EAAIC,KAASC,EAAGF,EAAIG,eAAmBC,EAAGJ,EAAIK,MAAMD,IAAIF,EAAG,OAAOE,EAAG,MAAM,CAACM,YAAY,OAAO,CAACN,EAAG,MAAM,CAACM,YAAY,UAAU,CAACN,EAAG,OAAO,CAACE,MAAM,CAAC,oBAAoB,mBAAmB,iBAAiB,KAAK,CAACF,EAAG,MAAM,CAACM,YAAY,mFAAmF,CAACN,EAAG,oBAAoB,CAACE,MAAM,CAAC,WAAa,eAAe,OAAS,oBAAoB,CAACF,EAAG,WAAW,CAACE,MAAM,CAAC,KAAO,UAAU,MAAQ,IAAIgC,SAAS,CAAC,MAAQ,SAAS7B,GAAQ,OAAOT,EAAIkO,iBAAiB,CAAC9N,EAAG,IAAI,CAACM,YAAY,+BAA+BJ,MAAM,CAAC,KAAO,SAASK,KAAK,UAAUX,EAAIY,GAAG,IAAIZ,EAAIa,GAAGb,EAAIc,GAAG,oBAAoB,QAAQ,IAAI,GAAGV,EAAG,MAAM,CAACA,EAAG,MAAM,CAACM,YAAY,6EAA6E,CAACN,EAAG,KAAK,CAACM,YAAY,0BAA0B,CAACV,EAAIY,GAAGZ,EAAIa,GAAGb,EAAIc,GAAG,6CAA6CV,EAAG,WAAW,CAACA,EAAG,WAAW,CAACM,YAAY,OAAOuB,YAAY,CAAC,MAAQ,SAAS3B,MAAM,CAAC,KAAO,SAAS,UAAY,GAAG,cAAc,kBAAkB,YAAcN,EAAIc,GAAG,sBAAsB,gBAAgB,cAAca,MAAM,CAACC,MAAO5B,EAAe,YAAE6B,SAAS,SAAUC,GAAM9B,EAAIwK,YAAY1I,GAAKE,WAAW,kBAAkB,IAAI,GAAG5B,EAAG,WAAW,CAAC6B,YAAY,CAAC,MAAQ,QAAQ3B,MAAM,CAAC,OAAS,GAAG,KAAON,EAAIyK,cAAc,CAACzK,EAAIuB,GAAIvB,EAAgB,cAAE,SAASmO,GAAQ,OAAO/N,EAAG,kBAAkB,CAACc,IAAIiN,EAAOC,MAAM9N,MAAM,CAAC,YAAY6N,EAAOE,SAAS,KAAOF,EAAOG,KAAK,MAAQH,EAAOC,MAAM,SAAW,SAAQhO,EAAG,kBAAkB,CAACE,MAAM,CAAC,UAAY,YAAY,eAAiB,YAAY,MAAQN,EAAIc,GAAG,sCAAsC,MAAQ,KAAKE,YAAYhB,EAAIiB,GAAG,CAAC,CAACC,IAAI,UAAUC,GAAG,SAASyJ,GAAO,MAAO,CAACxK,EAAG,WAAW,CAACE,MAAM,CAAC,MAAQ,SAASE,GAAG,CAAC,MAAQ,SAASC,GAAQ,OAAOT,EAAIuO,OAAO3D,EAAMD,OAAOhJ,MAAM,CAACC,MAAOgJ,EAAMD,IAAU,OAAE9I,SAAS,SAAUC,GAAM9B,EAAI+B,KAAK6I,EAAMD,IAAK,SAAU7I,IAAME,WAAW,qBAAqB,CAAC5B,EAAG,IAAI,CAACM,YAAY,0BAA0BJ,MAAM,CAAC,KAAO,MAAMK,KAAK,OAAOP,EAAG,IAAI,CAACM,YAAY,kCAAkCJ,MAAM,CAAC,KAAO,OAAOK,KAAK,iBAAiBP,EAAG,kBAAkB,CAACE,MAAM,CAAC,UAAY,YAAY,eAAiB,YAAY,MAAQ,KAAKU,YAAYhB,EAAIiB,GAAG,CAAC,CAACC,IAAI,UAAUC,GAAG,SAASyJ,GAAO,OAAOxK,EAAG,MAAM,CAACM,YAAY,0BAA0B,CAACN,EAAG,aAAa,CAACW,IAAI,YAAc6J,EAAME,OAAOxK,MAAM,CAAC,UAAY,SAAS,MAAQ,MAAM,QAAU,UAAU,CAACF,EAAG,MAAM,CAACM,YAAY,OAAO,CAACN,EAAG,MAAM,CAACM,YAAY,kBAAkB,CAACN,EAAG,oBAAoB,CAACE,MAAM,CAAC,WAAa,eAAe,OAAS,uBAAuB,CAACF,EAAG,WAAW,CAACM,YAAY,iBAAiBJ,MAAM,CAAC,KAAO,UAAU,KAAO,KAAK,MAAQ,IAAIgC,SAAS,CAAC,MAAQ,SAAS7B,GAAQ,OAAOT,EAAIwO,SAC1qF5D,EAAME,OACNF,EAAMD,QACH,CAAC3K,EAAIY,GAAG,IAAIZ,EAAIa,GAAGb,EAAIc,GAAG,4CAA4C,QAAQ,IAAI,KAAKV,EAAG,WAAW,CAACM,YAAY,uBAAuBJ,MAAM,CAAC,KAAO,YAAY,KAAO,KAAK,KAAO,IAAIK,KAAK,aAAa,CAACP,EAAG,IAAI,CAACM,YAAY,mBAAmBuB,YAAY,CAAC,MAAQ,cAAc,IAAI,UAAU,IAAI,GAAG7B,EAAG,MAAM,CAACM,YAAY,4EAA4EJ,MAAM,CAAC,KAAO,UAAUK,KAAK,UAAU,CAACP,EAAG,MAAM,GAAG,CAACA,EAAG,IAAI,CAACM,YAAY,iBAAiB,CAACV,EAAIY,GAAG,cAAcZ,EAAIa,GAAGb,EAAIgL,KAAO,GAAG,OAAOhL,EAAIa,GAAGb,EAAIiL,IAAI,OAAOjL,EAAIa,GAAGb,EAAIkL,OAAO,kBAAkB9K,EAAG,eAAe,CAACM,YAAY,uBAAuBJ,MAAM,CAAC,WAAWN,EAAImL,WAAWC,QAAQ,MAAQpL,EAAIkL,OAAOvJ,MAAM,CAACC,MAAO5B,EAAImL,WAAsB,YAAEtJ,SAAS,SAAUC,GAAM9B,EAAI+B,KAAK/B,EAAImL,WAAY,cAAerJ,IAAME,WAAW,6BAA6B,KAAK5B,EAAG,4BAA4BA,EAAG,8BAA8B,MAC77BoC,EAAkB,G,8GCsItB,GACEC,WAAY,CACVgM,YAAJ,OACIC,wBAAyB,WAA7B,wDACIC,yBAA0B,WAA9B,yDAEEhM,SAAU,CAIR8H,YAJJ,WAKM,IAAN,oCACM,OAAOzF,EAAOuG,MAAMtL,KAAK+K,KAAM/K,KAAKgL,KAOtCA,GAbJ,WAcM,IAAN,oCAIM,OAHIhL,KAAKiL,MAAQM,IACfA,EAAYvL,KAAKiL,OAEZM,GAETR,KApBJ,WAqBM,OAAO/K,KAAKkL,WAAWC,SAAWnL,KAAKkL,WAAWM,YAAc,IAElEP,MAvBJ,WAwBM,IAAN,oCACM,OAAOQ,EAAaC,OAAS,EACnC,SACA,wBAMEjJ,KAvCF,WAwCI,MAAO,CACLP,KAAM,CAAC,GAAI,OAAQ,UAAW,UAAW,UACzCgJ,WAAY,CACVC,QAAS,EACTK,YAAa,EACbG,eAAgB,CAAC,EAAG,GAAI,GAAI,IAC5BV,MAAO,GAETV,YAAa,GAEboE,aAAc,CACpB,CACQ,KAAR,yBACQ,MAAR,gBACQ,SAAR,KAEA,CACQ,KAAR,qBACQ,MAAR,SACQ,SAAR,KAEA,CACQ,KAAR,kBACQ,MAAR,YACQ,SAAR,MAGM/C,UAAW,CAAC,CACV,uBAAR,EACQ,mBAAR,qBACQ,QAAR,EACQ,oBAAR,IAEMH,aAAc,KAGlB7H,QAAS,CACP,KADJ,WACA,yKACA,cACA,8BACA,KACA,0IACA,uBACA,WAEA,GACA,KACA,gCACA,WAXA,SAcA,sDAdA,OAcA,EAdA,OAeA,mCAEA,QACA,mCAEA,mDAEA,gBAtBA,8CAwBI,OAzBJ,SAyBA,2KACA,QACA,0CACA,KAFA,yDAGA,+FACA,eACA,mBACA,2DACA,gCAEA,mDANA,2CAHA,uDAYA,WACA,sDAGA,wBAjBA,8CAmBIqK,YA5CJ,WA6CM1K,SAASyI,MAAM,6BAEjBuC,SA/CJ,SA+CA,KACA,+CAEIK,aAlDJ,SAkDA,gBACM5O,KAAK6O,MACX,MACQ,MAAR,gBACQ,KAAR,oCACQ,KAAR,UACQ,kBAAR,EACQ,mBAAR,2BACQ,kBAAR,0BACQ,kBAAR,kBACQ,gBAAR,IAEA,kBACA,UACU,EAAV,aACU,KAAV,MACY,MAAZ,WACY,KAAZ,8BACY,KAAZ,UACY,mBAAZ,2BACY,gBAAZ,SAKIC,UA3EJ,SA2EA,GACM,IAAN,4BACA,YAAQ,OAAR,eAEUC,GAAiB,GACnB/O,KAAK4L,UAAUoD,OAAOD,EAAe,IAmBzCjD,aAnGJ,SAmGA,GAGM,OADA/G,EAAS,OAAf,mBAAe,CAAf,yCACaA,IAGXzB,QArLF,WAqLA,WACItD,KAAKiP,OAEL1L,SAASC,IAAI,gBAAgB,WAC3B,EAAN,WAGE0I,MAAO,ICtUmX,I,wBCQxXlI,EAAY,eACd,EACAlE,EACAyC,GACA,EACA,KACA,KACA,MAIa,aAAAyB,E,6CCnBf,W,oCCAA,W,yCCAA,IAAIlE,EAAS,WAAa,IAAIC,EAAIC,KAASC,EAAGF,EAAIG,eAAmBC,EAAGJ,EAAIK,MAAMD,IAAIF,EAAG,OAAOE,EAAG,MAAM,CAACM,YAAY,OAAO,CAACN,EAAG,MAAM,CAACM,YAAY,UAAU,CAACN,EAAG,MAAM,CAACM,YAAY,kBAAkB,CAACN,EAAG,oBAAoB,CAACE,MAAM,CAAC,WAAa,iBAAiB,OAAS,oBAAoB,CAACF,EAAG,WAAW,CAACE,MAAM,CAAC,KAAO,UAAU,MAAQ,IAAIgC,SAAS,CAAC,MAAQ,SAAS7B,GAAQ,OAAOT,EAAIkO,YAAYzN,MAAW,CAACL,EAAG,IAAI,CAACM,YAAY,+BAA+BJ,MAAM,CAAC,KAAO,SAASK,KAAK,UAAUX,EAAIY,GAAG,IAAIZ,EAAIa,GAAGb,EAAIc,GAAG,oBAAoB,QAAQ,IAAI,GAAGV,EAAG,OAAO,CAACE,MAAM,CAAC,oBAAoB,mBAAmB,iBAAiB,KAAK,CAACF,EAAG,MAAM,CAACA,EAAG,MAAM,CAACM,YAAY,6EAA6E,CAACN,EAAG,KAAK,CAACM,YAAY,0BAA0B,CAACV,EAAIY,GAAGZ,EAAIa,GAAGb,EAAIc,GAAG,yCAAyCV,EAAG,WAAW,CAAC6B,YAAY,CAAC,MAAQ,QAAQ3B,MAAM,CAAC,OAAS,GAAG,KAAON,EAAIyK,cAAc,CAACrK,EAAG,kBAAkB,CAACE,MAAM,CAAC,MAAQN,EAAIc,GAAG,wCAAwC,YAAY,OAAOE,YAAYhB,EAAIiB,GAAG,CAAC,CAACC,IAAI,UAAUC,GAAG,SAASuJ,GAAO,MAAO,CAAC1K,EAAIY,GAAG,IAAIZ,EAAIa,GAAG6J,EAAMC,IAAIwE,gBAAgB,YAAY/O,EAAG,kBAAkB,CAACE,MAAM,CAAC,MAAQN,EAAIc,GAAG,0CAA0C,YAAY,OAAOE,YAAYhB,EAAIiB,GAAG,CAAC,CAACC,IAAI,UAAUC,GAAG,SAASuJ,GAAO,MAAO,CAAC1K,EAAIY,GAAG,IAAIZ,EAAIa,GAAG6J,EAAMC,IAAIpE,QAAQ,YAAYnG,EAAG,kBAAkB,CAACE,MAAM,CAAC,MAAQN,EAAIc,GAAG,iDAAiD,YAAY,OAAOE,YAAYhB,EAAIiB,GAAG,CAAC,CAACC,IAAI,UAAUC,GAAG,SAASuJ,GAAO,MAAO,CAAC1K,EAAIY,GAAG,IAAIZ,EAAIa,GAAG6J,EAAMC,IAAIyE,aAAa,YAAYhP,EAAG,kBAAkB,CAACE,MAAM,CAAC,SAAW,IAAI,UAAY,YAAY,eAAiB,aAAaU,YAAYhB,EAAIiB,GAAG,CAAC,CAACC,IAAI,UAAUC,GAAG,SAASuJ,GAAO,OAAOtK,EAAG,MAAM,CAACM,YAAY,0BAA0B,CAACN,EAAG,aAAa,CAACE,MAAM,CAAC,UAAY,SAAS,MAAQ,MAAM,QAAU,UAAU,CAACF,EAAG,MAAM,CAACM,YAAY,OAAO,CAACN,EAAG,MAAM,CAACM,YAAY,kBAAkB,CAACN,EAAG,oBAAoB,CAACE,MAAM,CAAC,WAAa,iBAAiB,OAAS,qBAAqB,CAACF,EAAG,WAAW,CAACM,YAAY,iBAAiBJ,MAAM,CAAC,KAAO,UAAU,KAAO,MAAMgC,SAAS,CAAC,MAAQ,SAAS7B,GAAQ,OAAOT,EAAIqP,aAAa3E,EAAMC,QAAQ,CAAC3K,EAAIY,GAAG,IAAIZ,EAAIa,GAAGb,EAAIc,GAAG,qBAAqB,QAAQ,IAAI,KAAKV,EAAG,WAAW,CAAC6B,YAAY,CAAC,mBAAmB,SAAS3B,MAAM,CAAC,KAAO,YAAY,KAAO,KAAK,KAAO,IAAIK,KAAK,aAAa,CAACP,EAAG,IAAI,CAACM,YAAY,mBAAmBuB,YAAY,CAAC,MAAQ,cAAc,IAAI,UAAU,IAAI,GAAG7B,EAAG,MAAM,CAACM,YAAY,4EAA4EJ,MAAM,CAAC,KAAO,UAAUK,KAAK,UAAU,CAACP,EAAG,MAAM,GAAG,CAACA,EAAG,IAAI,CAACM,YAAY,iBAAiB,CAACV,EAAIY,GAAG,IAAIZ,EAAIa,GAAGb,EAAIc,GAAG,2BAA2B,IAAId,EAAIa,GAAGb,EAAIgL,KAAO,GAAG,IAAIhL,EAAIa,GAAGb,EAAIc,GAAG,sBAAsB,IAAId,EAAIa,GAAGb,EAAIiL,IAAI,IAAIjL,EAAIa,GAAGb,EAAIc,GAAG,sBAAsB,IAAId,EAAIa,GAAGb,EAAIkL,OAAO,IAAIlL,EAAIa,GAAGb,EAAIc,GAAG,2BAA2B,SAASV,EAAG,eAAe,CAACM,YAAY,uBAAuBJ,MAAM,CAAC,WAAWN,EAAImL,WAAWC,QAAQ,MAAQpL,EAAIkL,OAAOvJ,MAAM,CAACC,MAAO5B,EAAImL,WAAsB,YAAEtJ,SAAS,SAAUC,GAAM9B,EAAI+B,KAAK/B,EAAImL,WAAY,cAAerJ,IAAME,WAAW,6BAA6B,MAAM,GAAG5B,EAAG,0BAA0B,IAC3qGoC,EAAkB,G,gFC0HtB,GACE8M,KAAM,iBACN7M,WAAY,CACV8M,oBAAqB,WAAzB,gDAEE5M,SAAU,OAAZ,OAAY,CAAZ,kBACA,6BADA,IAEI8H,YAFJ,WAGM,IAAN,iBACM,OAAOzF,EAAOuG,MAAMtL,KAAK+K,KAAM/K,KAAKgL,KAEtCA,GANJ,WAOM,IAAN,oCAIM,OAHIhL,KAAKiL,MAAQM,IACfA,EAAYvL,KAAKiL,OAEZM,GAETR,KAbJ,WAcM,OAAO/K,KAAKkL,WAAWC,SAAWnL,KAAKkL,WAAWM,YAAc,IAElEP,MAhBJ,WAiBM,OAAOjL,KAAKyL,aAAaC,OAAS,EACxC,yBACA,yBAGEjJ,KA3BF,WA4BI,MAAO,CACLmJ,UAAW,GACXrB,YAAa,GACbkB,aAAc,GACdP,WAAY,CACVC,QAAS,EACTK,YAAa,EACbG,eAAgB,CAAC,EAAG,GAAI,GAAI,IAC5BV,MAAO,KAIb3H,QAxCF,WAwCA,WACItD,KAAKuP,oBAELhM,SAASC,IAAI,oBAAoB,WAC/B,EAAN,wBAGEI,QAAS,CACP,kBADJ,WACA,uKACA,cACA,8BACA,KACA,0IACA,uBALA,SAQA,0DARA,OAQA,EARA,OASA,mCAEA,QACA,6BAEA,mDAEA,gBAhBA,8CAkBIqK,YAnBJ,WAoBM1K,SAASyI,MAAM,oBAEjBoD,aAtBJ,SAsBA,GACM7L,SAASyI,MAAM,mBAAoBlG,MCjM6U,I,YCOlX9B,EAAY,eACd,EACAlE,EACAyC,GACA,EACA,KACA,WACA,MAIa,aAAAyB,E,yEClBf,IAAIlE,EAAS,WAAa,IAAIC,EAAIC,KAASC,EAAGF,EAAIG,eAAmBC,EAAGJ,EAAIK,MAAMD,IAAIF,EAAG,OAAOE,EAAG,MAAM,CAACM,YAAY,OAAO,CAACN,EAAG,MAAM,CAACM,YAAY,UAAU,CAACN,EAAG,OAAO,CAACE,MAAM,CAAC,oBAAoB,mBAAmB,iBAAiB,KAAK,CAACF,EAAG,MAAM,CAACM,YAAY,mFAAmF,CAACN,EAAG,oBAAoB,CAACE,MAAM,CAAC,WAAa,0BAA0B,OAAS,iCAAiC,CAACF,EAAG,WAAW,CAACE,MAAM,CAAC,KAAO,UAAU,MAAQ,IAAIgC,SAAS,CAAC,MAAQ,SAAS7B,GAAQ,OAAOT,EAAIkO,iBAAiB,CAAC9N,EAAG,IAAI,CAACM,YAAY,+BAA+BJ,MAAM,CAAC,KAAO,SAASK,KAAK,UAAUX,EAAIY,GAAG,IAAIZ,EAAIa,GAAGb,EAAIc,GAAG,oBAAoB,QAAQ,IAAI,GAAGV,EAAG,MAAM,CAACA,EAAG,MAAM,CAACM,YAAY,6EAA6E,CAACN,EAAG,KAAK,CAACM,YAAY,0BAA0B,CAACV,EAAIY,GAAGZ,EAAIa,GAAGb,EAAIc,GAAG,yCAAyCV,EAAG,WAAW,CAACA,EAAG,WAAW,CAACM,YAAY,OAAOuB,YAAY,CAAC,MAAQ,SAAS3B,MAAM,CAAC,KAAO,SAAS,UAAY,GAAG,cAAc,kBAAkB,YAAcN,EAAIc,GAAG,sBAAsB,gBAAgB,cAAca,MAAM,CAACC,MAAO5B,EAAe,YAAE6B,SAAS,SAAUC,GAAM9B,EAAIwK,YAAY1I,GAAKE,WAAW,kBAAkB,IAAI,GAAG5B,EAAG,WAAW,CAAC6B,YAAY,CAAC,MAAQ,QAAQ3B,MAAM,CAAC,OAAS,GAAG,KAAON,EAAIyK,cAAc,CAACzK,EAAIuB,GAAIvB,EAAgB,cAAE,SAASmO,GAAQ,OAAO/N,EAAG,kBAAkB,CAACc,IAAIiN,EAAOC,MAAM9N,MAAM,CAAC,YAAY6N,EAAOE,SAAS,KAAOF,EAAOG,KAAK,MAAQtO,EAAIc,GAAGqN,EAAOC,OAAO,SAAW,SAAQhO,EAAG,kBAAkB,CAACE,MAAM,CAAC,UAAY,YAAY,eAAiB,YAAY,MAAQN,EAAIc,GAAG,sCAAsC,MAAQ,KAAKE,YAAYhB,EAAIiB,GAAG,CAAC,CAACC,IAAI,UAAUC,GAAG,SAASyJ,GAAO,MAAO,CAACxK,EAAG,WAAW,CAACE,MAAM,CAAC,MAAQ,SAASE,GAAG,CAAC,MAAQ,SAASC,GAAQ,OAAOT,EAAIuO,OAAO3D,EAAMD,OAAOhJ,MAAM,CAACC,MAAOgJ,EAAMD,IAAU,OAAE9I,SAAS,SAAUC,GAAM9B,EAAI+B,KAAK6I,EAAMD,IAAK,SAAU7I,IAAME,WAAW,qBAAqB,CAAC5B,EAAG,IAAI,CAACM,YAAY,0BAA0BJ,MAAM,CAAC,KAAO,MAAMK,KAAK,OAAOP,EAAG,IAAI,CAACM,YAAY,kCAAkCJ,MAAM,CAAC,KAAO,OAAOK,KAAK,iBAAiBP,EAAG,kBAAkB,CAACE,MAAM,CAAC,UAAY,YAAY,eAAiB,YAAY,MAAQ,KAAKU,YAAYhB,EAAIiB,GAAG,CAAC,CAACC,IAAI,UAAUC,GAAG,SAASyJ,GAAO,OAAOxK,EAAG,MAAM,CAACM,YAAY,0BAA0B,CAACN,EAAG,aAAa,CAACW,IAAI,YAAc6J,EAAME,OAAOxK,MAAM,CAAC,UAAY,SAAS,MAAQ,MAAM,QAAU,UAAU,CAACF,EAAG,MAAM,CAACM,YAAY,OAAO,CAACN,EAAG,MAAM,CAACM,YAAY,kBAAkB,CAACN,EAAG,oBAAoB,CAACE,MAAM,CAAC,WAAa,0BAA0B,OAAS,oCAAoC,CAACF,EAAG,WAAW,CAACM,YAAY,iBAAiBJ,MAAM,CAAC,KAAO,UAAU,KAAO,KAAK,MAAQ,IAAIgC,SAAS,CAAC,MAAQ,SAAS7B,GAAQ,OAAOT,EAAIwO,SAAS5D,EAAME,OAAQF,EAAMD,QAAQ,CAAC3K,EAAIY,GAAG,IAAIZ,EAAIa,GAAGb,EAAIc,GAAG,4CAA4C,QAAQ,IAAI,KAAKV,EAAG,WAAW,CAACM,YAAY,uBAAuBJ,MAAM,CAAC,KAAO,YAAY,KAAO,KAAK,KAAO,IAAIK,KAAK,aAAa,CAACP,EAAG,IAAI,CAACM,YAAY,mBAAmBuB,YAAY,CAAC,MAAQ,cAAc,IAAI,UAAU,IAAI,GAAG7B,EAAG,MAAM,CAACM,YAAY,4EAA4EJ,MAAM,CAAC,KAAO,UAAUK,KAAK,UAAU,CAACP,EAAG,MAAM,GAAG,CAACA,EAAG,IAAI,CAACM,YAAY,iBAAiB,CAACV,EAAIY,GAAG,IAAIZ,EAAIa,GAAGb,EAAIc,GAAG,2BAA2B,IAAId,EAAIa,GAAGb,EAAIgL,KAAO,GAAG,IAAIhL,EAAIa,GAAGb,EAAIc,GAAG,sBAAsB,IAAId,EAAIa,GAAGb,EAAIiL,IAAI,IAAIjL,EAAIa,GAAGb,EAAIc,GAAG,sBAAsB,IAAId,EAAIa,GAAGb,EAAIkL,OAAO,IAAIlL,EAAIa,GAAGb,EAAIc,GAAG,2BAA2B,SAASV,EAAG,eAAe,CAACM,YAAY,uBAAuBJ,MAAM,CAAC,WAAWN,EAAImL,WAAWC,QAAQ,MAAQpL,EAAIkL,OAAOvJ,MAAM,CAACC,MAAO5B,EAAImL,WAAsB,YAAEtJ,SAAS,SAAUC,GAAM9B,EAAI+B,KAAK/B,EAAImL,WAAY,cAAerJ,IAAME,WAAW,6BAA6B,KAAK5B,EAAG,8BAA8BA,EAAG,gCAAgC,MACl1HoC,EAAkB,G,8JC4JtB,GACEC,WAAY,CACVgM,YAAJ,OACIgB,0BAA2B,WAA/B,+CACIC,2BAA4B,WAAhC,gDAEE,QANF,WAOIzP,KAAK0P,mBAAqB1P,KAAKiD,KAAKC,WAEtCR,SAAU,OAAZ,OAAY,CAAZ,kBACA,iCADA,IAEI8H,YAFJ,WAGM,IAAN,oCACM,OAAOzF,EAAOuG,MAAMtL,KAAK+K,KAAM/K,KAAKgL,KAEtCA,GANJ,WAOM,IAAN,oCAIM,OAHIhL,KAAKiL,MAAQM,IACfA,EAAYvL,KAAKiL,OAEZM,GAETR,KAbJ,WAcM,OAAO/K,KAAKkL,WAAWC,SAAWnL,KAAKkL,WAAWM,YAAc,IAElEP,MAhBJ,WAiBM,IAAN,oCACM,OAAOQ,EAAaC,OAAS,EACnC,SACA,yBAGEjJ,KAhCF,WAiCI,MAAO,CACLiN,mBAAoB,EACpBxE,WAAY,CACVC,QAAS,EACTK,YAAa,EACbG,eAAgB,CAAC,EAAG,GAAI,GAAI,IAC5BV,MAAO,GAETV,YAAa,GAEboE,aAAc,CACpB,CACQ,KAAR,4BACQ,MAAR,yCACQ,SAAR,KAEA,CACQ,KAAR,iBACQ,MAAR,8CACQ,SAAR,MAGM/C,UAAW,GACXH,aAAc,KAGlB7H,QAAS,CACP,KADJ,WACA,qKACA,IACA,cACA,8BACA,KACA,0IACA,uBANA,SAQA,QACA,mEACA,KAFA,yDAGA,+GACA,sBACA,iCADA,iBAEA,GAFA,IAEA,6BACA,QACA,eAEA,yDAEA,SACA,qCACA,qCAGA,qCACA,oCAdA,8BAiBA,mBAEA,mDApBA,2CAHA,uDA0BA,YACA,sDAGA,wBAtCA,OAyCA,gBAzCA,8CA2CI,OA5CJ,SA4CA,kKACA,0CADA,SAEA,QACA,qDACA,KAFA,yDAGA,+FACA,mBACA,2DACA,gCAEA,mDALA,2CAHA,uDAWA,YACA,sDAGA,wBAjBA,8CAmBIqK,YA/DJ,WAgEM1K,SAASyI,MAAM,+BAEjBuC,SAlEJ,SAkEA,KACMhL,SAASyI,MAAM,8BAA+BtB,IAEhDkE,aArEJ,SAqEA,gBACM5O,KAAK6O,MACX,MACQ,MAAR,gBACQ,KAAR,oCACQ,KAAR,UACQ,kBAAR,EACQ,mBAAR,2BACQ,kBAAR,0BACQ,kBAAR,kBACQ,gBAAR,IAEA,kBACA,UACU,EAAV,aACU,KAAV,MACY,MAAZ,WACY,KAAZ,8BACY,KAAZ,UACY,mBAAZ,2BACY,gBAAZ,SAKIC,UA9FJ,SA8FA,GACM,IAAN,4BACA,YAAQ,OAAR,eAEUC,GAAiB,GACnB/O,KAAK4L,UAAUoD,OAAOD,EAAe,IAmBzCjD,aAtHJ,SAsHA,GAGM,OADA/G,EAAS,OAAf,mBAAe,CAAf,qCACaA,IAGXzB,QAvLF,WAuLA,WACItD,KAAKiP,OAEL1L,SAASC,IAAI,gBAAgB,WAC3B,EAAN,WAGE0I,MAAO,IC3VqX,I,wBCQ1XlI,EAAY,eACd,EACAlE,EACAyC,GACA,EACA,KACA,KACA,MAIa,aAAAyB,E,6CCnBf,W,6DCAA,W,oCCEA,EAAQ,QACR,IA4CI2L,EA5CAC,EAAI,EAAQ,QACZC,EAAc,EAAQ,QACtBC,EAAiB,EAAQ,QACzBC,EAAS,EAAQ,QACjBC,EAAmB,EAAQ,QAC3BC,EAAW,EAAQ,QACnBC,EAAa,EAAQ,QACrBC,EAAM,EAAQ,QACd9L,EAAS,EAAQ,QACjB+L,EAAY,EAAQ,QACpBC,EAAS,EAAQ,QAAiCA,OAClDC,EAAU,EAAQ,QAClBC,EAAiB,EAAQ,QACzBC,EAAwB,EAAQ,QAChCC,EAAsB,EAAQ,QAE9BC,EAAYX,EAAOlL,IACnBU,EAAkBiL,EAAsBjL,gBACxCoL,EAA+BH,EAAsBI,SACrDC,EAAmBJ,EAAoBK,IACvCC,EAAsBN,EAAoBO,UAAU,OACpDC,EAAQC,KAAKD,MACbE,EAAMD,KAAKC,IAEXC,EAAoB,oBACpBC,EAAiB,iBACjBC,EAAe,eACfC,EAAe,eAEfC,EAAQ,WACRC,EAAe,gBACfC,EAAQ,KACRC,EAAY,WACZC,EAAM,WACNC,EAAM,QACNC,EAAM,gBAENC,EAA4B,wCAE5BC,EAA8C,uCAE9CC,EAA2C,yCAE3CC,EAAmB,wBAGnBC,EAAY,SAAUvN,EAAKwN,GAC7B,IAAIrN,EAAQsN,EAAYlQ,EACxB,GAAuB,KAAnBiQ,EAAME,OAAO,GAAW,CAC1B,GAAsC,KAAlCF,EAAME,OAAOF,EAAM1G,OAAS,GAAW,OAAO4F,EAElD,GADAvM,EAASwN,EAAUH,EAAM9G,MAAM,GAAI,KAC9BvG,EAAQ,OAAOuM,EACpB1M,EAAIa,KAAOV,OAEN,GAAKyN,EAAU5N,GAQf,CAEL,GADAwN,EAAQ9B,EAAQ8B,GACZL,EAA0BU,KAAKL,GAAQ,OAAOd,EAElD,GADAvM,EAAS2N,EAAUN,GACJ,OAAXrN,EAAiB,OAAOuM,EAC5B1M,EAAIa,KAAOV,MAbe,CAC1B,GAAIiN,EAA4CS,KAAKL,GAAQ,OAAOd,EAGpE,IAFAvM,EAAS,GACTsN,EAAajC,EAAUgC,GAClBjQ,EAAQ,EAAGA,EAAQkQ,EAAW3G,OAAQvJ,IACzC4C,GAAU4N,EAAcN,EAAWlQ,GAAQyQ,GAE7ChO,EAAIa,KAAOV,IAUX2N,EAAY,SAAUN,GACxB,IACIS,EAAaC,EAAS3Q,EAAO4Q,EAAMC,EAAOC,EAAQC,EADlDC,EAAQf,EAAMgB,MAAM,KAMxB,GAJID,EAAMzH,QAAqC,IAA3ByH,EAAMA,EAAMzH,OAAS,IACvCyH,EAAME,MAERR,EAAcM,EAAMzH,OAChBmH,EAAc,EAAG,OAAOT,EAE5B,IADAU,EAAU,GACL3Q,EAAQ,EAAGA,EAAQ0Q,EAAa1Q,IAAS,CAE5C,GADA4Q,EAAOI,EAAMhR,GACD,IAAR4Q,EAAY,OAAOX,EAMvB,GALAY,EAAQ,GACJD,EAAKrH,OAAS,GAAuB,KAAlBqH,EAAKT,OAAO,KACjCU,EAAQrB,EAAUc,KAAKM,GAAQ,GAAK,EACpCA,EAAOA,EAAKzH,MAAe,GAAT0H,EAAa,EAAI,IAExB,KAATD,EACFE,EAAS,MACJ,CACL,KAAe,IAATD,EAAcnB,EAAe,GAATmB,EAAapB,EAAME,GAAKW,KAAKM,GAAO,OAAOX,EACrEa,EAAS7Q,SAAS2Q,EAAMC,GAE1BF,EAAQxF,KAAK2F,GAEf,IAAK9Q,EAAQ,EAAGA,EAAQ0Q,EAAa1Q,IAEnC,GADA8Q,EAASH,EAAQ3Q,GACbA,GAAS0Q,EAAc,GACzB,GAAII,GAAU9B,EAAI,IAAK,EAAI0B,GAAc,OAAO,UAC3C,GAAII,EAAS,IAAK,OAAO,KAGlC,IADAC,EAAOJ,EAAQO,MACVlR,EAAQ,EAAGA,EAAQ2Q,EAAQpH,OAAQvJ,IACtC+Q,GAAQJ,EAAQ3Q,GAASgP,EAAI,IAAK,EAAIhP,GAExC,OAAO+Q,GAILX,EAAY,SAAUH,GACxB,IAIIzQ,EAAO+J,EAAQ4H,EAAaC,EAAWN,EAAQO,EAAOC,EAJtDC,EAAU,CAAC,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,GAChCC,EAAa,EACbC,EAAW,KACXC,EAAU,EAGVC,EAAO,WACT,OAAO1B,EAAME,OAAOuB,IAGtB,GAAc,KAAVC,IAAe,CACjB,GAAuB,KAAnB1B,EAAME,OAAO,GAAW,OAC5BuB,GAAW,EACXF,IACAC,EAAWD,EAEb,MAAOG,IAAQ,CACb,GAAkB,GAAdH,EAAiB,OACrB,GAAc,KAAVG,IAAJ,CAOAnS,EAAQ+J,EAAS,EACjB,MAAOA,EAAS,GAAKoG,EAAIW,KAAKqB,KAC5BnS,EAAgB,GAARA,EAAaS,SAAS0R,IAAQ,IACtCD,IACAnI,IAEF,GAAc,KAAVoI,IAAe,CACjB,GAAc,GAAVpI,EAAa,OAEjB,GADAmI,GAAWnI,EACPiI,EAAa,EAAG,OACpBL,EAAc,EACd,MAAOQ,IAAQ,CAEb,GADAP,EAAY,KACRD,EAAc,EAAG,CACnB,KAAc,KAAVQ,KAAiBR,EAAc,GAC9B,OADiCO,IAGxC,IAAKnC,EAAMe,KAAKqB,KAAS,OACzB,MAAOpC,EAAMe,KAAKqB,KAAS,CAEzB,GADAb,EAAS7Q,SAAS0R,IAAQ,IACR,OAAdP,EAAoBA,EAAYN,MAC/B,IAAiB,GAAbM,EAAgB,OACpBA,EAAwB,GAAZA,EAAiBN,EAClC,GAAIM,EAAY,IAAK,OACrBM,IAEFH,EAAQC,GAAoC,IAAtBD,EAAQC,GAAoBJ,EAClDD,IACmB,GAAfA,GAAmC,GAAfA,GAAkBK,IAE5C,GAAmB,GAAfL,EAAkB,OACtB,MACK,GAAc,KAAVQ,KAET,GADAD,KACKC,IAAQ,YACR,GAAIA,IAAQ,OACnBJ,EAAQC,KAAgBhS,MA3CxB,CACE,GAAiB,OAAbiS,EAAmB,OACvBC,IACAF,IACAC,EAAWD,GAyCf,GAAiB,OAAbC,EAAmB,CACrBJ,EAAQG,EAAaC,EACrBD,EAAa,EACb,MAAqB,GAAdA,GAAmBH,EAAQ,EAChCC,EAAOC,EAAQC,GACfD,EAAQC,KAAgBD,EAAQE,EAAWJ,EAAQ,GACnDE,EAAQE,IAAaJ,GAASC,OAE3B,GAAkB,GAAdE,EAAiB,OAC5B,OAAOD,GAGLK,EAA0B,SAAUC,GAMtC,IALA,IAAIC,EAAW,KACXC,EAAY,EACZC,EAAY,KACZC,EAAa,EACbjS,EAAQ,EACLA,EAAQ,EAAGA,IACI,IAAhB6R,EAAK7R,IACHiS,EAAaF,IACfD,EAAWE,EACXD,EAAYE,GAEdD,EAAY,KACZC,EAAa,IAEK,OAAdD,IAAoBA,EAAYhS,KAClCiS,GAON,OAJIA,EAAaF,IACfD,EAAWE,EACXD,EAAYE,GAEPH,GAGLI,EAAgB,SAAU5O,GAC5B,IAAIV,EAAQ5C,EAAOyR,EAAUU,EAE7B,GAAmB,iBAAR7O,EAAkB,CAE3B,IADAV,EAAS,GACJ5C,EAAQ,EAAGA,EAAQ,EAAGA,IACzB4C,EAAOwP,QAAQ9O,EAAO,KACtBA,EAAOwL,EAAMxL,EAAO,KACpB,OAAOV,EAAOyP,KAAK,KAEhB,GAAmB,iBAAR/O,EAAkB,CAGlC,IAFAV,EAAS,GACT6O,EAAWG,EAAwBtO,GAC9BtD,EAAQ,EAAGA,EAAQ,EAAGA,IACrBmS,GAA2B,IAAhB7O,EAAKtD,KAChBmS,IAASA,GAAU,GACnBV,IAAazR,GACf4C,GAAU5C,EAAQ,IAAM,KACxBmS,GAAU,IAEVvP,GAAUU,EAAKtD,GAAOsS,SAAS,IAC3BtS,EAAQ,IAAG4C,GAAU,OAG7B,MAAO,IAAMA,EAAS,IACtB,OAAOU,GAGPmN,EAA4B,GAC5B8B,EAA2BrQ,EAAO,GAAIuO,EAA2B,CACnE,IAAK,EAAG,IAAK,EAAG,IAAK,EAAG,IAAK,EAAG,IAAK,IAEnC+B,EAAuBtQ,EAAO,GAAIqQ,EAA0B,CAC9D,IAAK,EAAG,IAAK,EAAG,IAAK,EAAG,IAAK,IAE3BE,EAA2BvQ,EAAO,GAAIsQ,EAAsB,CAC9D,IAAK,EAAG,IAAK,EAAG,IAAK,EAAG,IAAK,EAAG,IAAK,EAAG,IAAK,EAAG,KAAM,EAAG,IAAK,EAAG,IAAK,EAAG,IAAK,IAG5EhC,EAAgB,SAAUmB,EAAMhD,GAClC,IAAI+D,EAAOxE,EAAOyD,EAAM,GACxB,OAAOe,EAAO,IAAQA,EAAO,MAAS1E,EAAIW,EAAKgD,GAAQA,EAAOgB,mBAAmBhB,IAG/EiB,EAAiB,CACnBC,IAAK,GACLC,KAAM,KACNC,KAAM,GACNC,MAAO,IACPC,GAAI,GACJC,IAAK,KAGH7C,EAAY,SAAU5N,GACxB,OAAOuL,EAAI4E,EAAgBnQ,EAAI0Q,SAG7BC,EAAsB,SAAU3Q,GAClC,MAAuB,IAAhBA,EAAIY,UAAkC,IAAhBZ,EAAI4Q,UAG/BC,GAAiC,SAAU7Q,GAC7C,OAAQA,EAAIa,MAAQb,EAAI8Q,kBAAkC,QAAd9Q,EAAI0Q,QAG9CK,GAAuB,SAAUC,EAAQC,GAC3C,IAAIC,EACJ,OAAwB,GAAjBF,EAAOlK,QAAe8F,EAAMiB,KAAKmD,EAAOtD,OAAO,MACjB,MAA9BwD,EAASF,EAAOtD,OAAO,MAAgBuD,GAAwB,KAAVC,IAG1DC,GAA+B,SAAUH,GAC3C,IAAII,EACJ,OAAOJ,EAAOlK,OAAS,GAAKiK,GAAqBC,EAAOtK,MAAM,EAAG,MAC9C,GAAjBsK,EAAOlK,QACyB,OAA9BsK,EAAQJ,EAAOtD,OAAO,KAAyB,OAAV0D,GAA4B,MAAVA,GAA2B,MAAVA,IAI1EC,GAAkB,SAAUrR,GAC9B,IAAIsR,EAAOtR,EAAIsR,KACXC,EAAWD,EAAKxK,QAChByK,GAA2B,QAAdvR,EAAI0Q,QAAgC,GAAZa,GAAkBR,GAAqBO,EAAK,IAAI,IACvFA,EAAK7C,OAIL+C,GAAc,SAAUC,GAC1B,MAAmB,MAAZA,GAA6C,QAA1BA,EAAQC,eAGhCC,GAAc,SAAUF,GAE1B,OADAA,EAAUA,EAAQC,cACC,OAAZD,GAAgC,SAAZA,GAAkC,SAAZA,GAAkC,WAAZA,GAIrEG,GAAe,GACfC,GAAS,GACTC,GAAY,GACZC,GAAgC,GAChCC,GAAoB,GACpBC,GAAW,GACXC,GAAiB,GACjBC,GAA4B,GAC5BC,GAAmC,GACnCC,GAAY,GACZC,GAAO,GACPC,GAAW,GACXC,GAAO,GACPC,GAAO,GACPC,GAAa,GACbC,GAAY,GACZC,GAAa,GACbC,GAAO,GACPC,GAA4B,GAC5BC,GAAQ,GACRC,GAAW,GAGXC,GAAW,SAAUjT,EAAKwN,EAAO0F,EAAeC,GAClD,IAMI1F,EAAYyB,EAAMkE,EAAkBC,EANpCnV,EAAQgV,GAAiBtB,GACzB3C,EAAU,EACVqE,EAAS,GACTC,GAAS,EACTC,GAAc,EACdC,GAAoB,EAGnBP,IACHlT,EAAI0Q,OAAS,GACb1Q,EAAIY,SAAW,GACfZ,EAAI4Q,SAAW,GACf5Q,EAAIa,KAAO,KACXb,EAAI0T,KAAO,KACX1T,EAAIsR,KAAO,GACXtR,EAAI2T,MAAQ,KACZ3T,EAAI4T,SAAW,KACf5T,EAAI8Q,kBAAmB,EACvBtD,EAAQA,EAAMqG,QAAQxG,EAA0C,KAGlEG,EAAQA,EAAMqG,QAAQvG,EAAkB,IAExCG,EAAajC,EAAUgC,GAEvB,MAAOyB,GAAWxB,EAAW3G,OAAQ,CAEnC,OADAoI,EAAOzB,EAAWwB,GACV/Q,GACN,KAAK0T,GACH,IAAI1C,IAAQtC,EAAMiB,KAAKqB,GAGhB,IAAKgE,EAGL,OAAOzG,EAFZvO,EAAQ4T,GACR,SAJAwB,GAAUpE,EAAKwC,cACfxT,EAAQ2T,GAKV,MAEF,KAAKA,GACH,GAAI3C,IAASrC,EAAagB,KAAKqB,IAAiB,KAARA,GAAuB,KAARA,GAAuB,KAARA,GACpEoE,GAAUpE,EAAKwC,kBACV,IAAY,KAARxC,EA0BJ,IAAKgE,EAKL,OAAOzG,EAJZ6G,EAAS,GACTpV,EAAQ4T,GACR7C,EAAU,EACV,SA7BA,GAAIiE,IACDtF,EAAU5N,IAAQuL,EAAI4E,EAAgBmD,IAC5B,QAAVA,IAAqB3C,EAAoB3Q,IAAqB,OAAbA,EAAI0T,OACvC,QAAd1T,EAAI0Q,SAAqB1Q,EAAIa,MAC7B,OAEH,GADAb,EAAI0Q,OAAS4C,EACTJ,EAEF,YADItF,EAAU5N,IAAQmQ,EAAenQ,EAAI0Q,SAAW1Q,EAAI0T,OAAM1T,EAAI0T,KAAO,OAG3EJ,EAAS,GACS,QAAdtT,EAAI0Q,OACNxS,EAAQuU,GACC7E,EAAU5N,IAAQmT,GAAQA,EAAKzC,QAAU1Q,EAAI0Q,OACtDxS,EAAQ6T,GACCnE,EAAU5N,GACnB9B,EAAQiU,GAC4B,KAA3B1E,EAAWwB,EAAU,IAC9B/Q,EAAQ8T,GACR/C,MAEAjP,EAAI8Q,kBAAmB,EACvB9Q,EAAIsR,KAAK5I,KAAK,IACdxK,EAAQ4U,IAQZ,MAEF,KAAKhB,GACH,IAAKqB,GAASA,EAAKrC,kBAA4B,KAAR5B,EAAc,OAAOzC,EAC5D,GAAI0G,EAAKrC,kBAA4B,KAAR5B,EAAa,CACxClP,EAAI0Q,OAASyC,EAAKzC,OAClB1Q,EAAIsR,KAAO6B,EAAK7B,KAAK5K,QACrB1G,EAAI2T,MAAQR,EAAKQ,MACjB3T,EAAI4T,SAAW,GACf5T,EAAI8Q,kBAAmB,EACvB5S,EAAQ8U,GACR,MAEF9U,EAAuB,QAAfiV,EAAKzC,OAAmB+B,GAAOR,GACvC,SAEF,KAAKF,GACH,GAAY,KAAR7C,GAA0C,KAA3BzB,EAAWwB,EAAU,GAGjC,CACL/Q,EAAQ+T,GACR,SAJA/T,EAAQkU,GACRnD,IAIA,MAEJ,KAAK+C,GACH,GAAY,KAAR9C,EAAa,CACfhR,EAAQmU,GACR,MAEAnU,EAAQ2U,GACR,SAGJ,KAAKZ,GAEH,GADAjS,EAAI0Q,OAASyC,EAAKzC,OACdxB,GAAQnE,EACV/K,EAAIY,SAAWuS,EAAKvS,SACpBZ,EAAI4Q,SAAWuC,EAAKvC,SACpB5Q,EAAIa,KAAOsS,EAAKtS,KAChBb,EAAI0T,KAAOP,EAAKO,KAChB1T,EAAIsR,KAAO6B,EAAK7B,KAAK5K,QACrB1G,EAAI2T,MAAQR,EAAKQ,WACZ,GAAY,KAARzE,GAAwB,MAARA,GAAgBtB,EAAU5N,GACnD9B,EAAQgU,QACH,GAAY,KAARhD,EACTlP,EAAIY,SAAWuS,EAAKvS,SACpBZ,EAAI4Q,SAAWuC,EAAKvC,SACpB5Q,EAAIa,KAAOsS,EAAKtS,KAChBb,EAAI0T,KAAOP,EAAKO,KAChB1T,EAAIsR,KAAO6B,EAAK7B,KAAK5K,QACrB1G,EAAI2T,MAAQ,GACZzV,EAAQ6U,OACH,IAAY,KAAR7D,EASJ,CACLlP,EAAIY,SAAWuS,EAAKvS,SACpBZ,EAAI4Q,SAAWuC,EAAKvC,SACpB5Q,EAAIa,KAAOsS,EAAKtS,KAChBb,EAAI0T,KAAOP,EAAKO,KAChB1T,EAAIsR,KAAO6B,EAAK7B,KAAK5K,QACrB1G,EAAIsR,KAAK7C,MACTvQ,EAAQ2U,GACR,SAhBA7S,EAAIY,SAAWuS,EAAKvS,SACpBZ,EAAI4Q,SAAWuC,EAAKvC,SACpB5Q,EAAIa,KAAOsS,EAAKtS,KAChBb,EAAI0T,KAAOP,EAAKO,KAChB1T,EAAIsR,KAAO6B,EAAK7B,KAAK5K,QACrB1G,EAAI2T,MAAQR,EAAKQ,MACjB3T,EAAI4T,SAAW,GACf1V,EAAQ8U,GAUR,MAEJ,KAAKd,GACH,IAAItE,EAAU5N,IAAiB,KAARkP,GAAuB,MAARA,EAE/B,IAAY,KAARA,EAEJ,CACLlP,EAAIY,SAAWuS,EAAKvS,SACpBZ,EAAI4Q,SAAWuC,EAAKvC,SACpB5Q,EAAIa,KAAOsS,EAAKtS,KAChBb,EAAI0T,KAAOP,EAAKO,KAChBxV,EAAQ2U,GACR,SAPA3U,EAAQmU,QAFRnU,EAAQkU,GAUR,MAEJ,KAAKD,GAEH,GADAjU,EAAQkU,GACI,KAARlD,GAA6C,KAA9BoE,EAAO5F,OAAOuB,EAAU,GAAW,SACtDA,IACA,MAEF,KAAKmD,GACH,GAAY,KAARlD,GAAuB,MAARA,EAAc,CAC/BhR,EAAQmU,GACR,SACA,MAEJ,KAAKA,GACH,GAAY,KAARnD,EAAa,CACXqE,IAAQD,EAAS,MAAQA,GAC7BC,GAAS,EACTH,EAAmB5H,EAAU8H,GAC7B,IAAK,IAAIQ,EAAI,EAAGA,EAAIV,EAAiBtM,OAAQgN,IAAK,CAChD,IAAIC,EAAYX,EAAiBU,GACjC,GAAiB,KAAbC,GAAqBN,EAAzB,CAIA,IAAIO,EAAoBjG,EAAcgG,EAAW/D,GAC7CyD,EAAmBzT,EAAI4Q,UAAYoD,EAClChU,EAAIY,UAAYoT,OALnBP,GAAoB,EAOxBH,EAAS,QACJ,GACLpE,GAAQnE,GAAe,KAARmE,GAAuB,KAARA,GAAuB,KAARA,GACpC,MAARA,GAAgBtB,EAAU5N,GAC3B,CACA,GAAIuT,GAAoB,IAAVD,EAAc,OAAO9G,EACnCyC,GAAWzD,EAAU8H,GAAQxM,OAAS,EACtCwM,EAAS,GACTpV,EAAQoU,QACHgB,GAAUpE,EACjB,MAEF,KAAKoD,GACL,KAAKC,GACH,GAAIW,GAA+B,QAAdlT,EAAI0Q,OAAkB,CACzCxS,EAAQyU,GACR,SACK,GAAY,KAARzD,GAAgBsE,EAOpB,IACLtE,GAAQnE,GAAe,KAARmE,GAAuB,KAARA,GAAuB,KAARA,GACpC,MAARA,GAAgBtB,EAAU5N,GAC3B,CACA,GAAI4N,EAAU5N,IAAkB,IAAVsT,EAAc,OAAO5G,EAC3C,GAAIwG,GAA2B,IAAVI,IAAiB3C,EAAoB3Q,IAAqB,OAAbA,EAAI0T,MAAgB,OAEtF,GADAL,EAAU9F,EAAUvN,EAAKsT,GACrBD,EAAS,OAAOA,EAGpB,GAFAC,EAAS,GACTpV,EAAQ0U,GACJM,EAAe,OACnB,SAEY,KAARhE,EAAasE,GAAc,EACd,KAARtE,IAAasE,GAAc,GACpCF,GAAUpE,MAtB4B,CACtC,GAAc,IAAVoE,EAAc,OAAO5G,EAEzB,GADA2G,EAAU9F,EAAUvN,EAAKsT,GACrBD,EAAS,OAAOA,EAGpB,GAFAC,EAAS,GACTpV,EAAQsU,GACJU,GAAiBX,GAAU,OAiB/B,MAEJ,KAAKC,GACH,IAAI1F,EAAMe,KAAKqB,GAER,IACLA,GAAQnE,GAAe,KAARmE,GAAuB,KAARA,GAAuB,KAARA,GACpC,MAARA,GAAgBtB,EAAU5N,IAC3BkT,EACA,CACA,GAAc,IAAVI,EAAc,CAChB,IAAII,EAAOlW,SAAS8V,EAAQ,IAC5B,GAAII,EAAO,MAAQ,OAAO/G,EAC1B3M,EAAI0T,KAAQ9F,EAAU5N,IAAQ0T,IAASvD,EAAenQ,EAAI0Q,QAAW,KAAOgD,EAC5EJ,EAAS,GAEX,GAAIJ,EAAe,OACnBhV,EAAQ0U,GACR,SACK,OAAOjG,EAfZ2G,GAAUpE,EAgBZ,MAEF,KAAKuD,GAEH,GADAzS,EAAI0Q,OAAS,OACD,KAARxB,GAAuB,MAARA,EAAchR,EAAQwU,OACpC,KAAIS,GAAuB,QAAfA,EAAKzC,OAyBf,CACLxS,EAAQ2U,GACR,SA1BA,GAAI3D,GAAQnE,EACV/K,EAAIa,KAAOsS,EAAKtS,KAChBb,EAAIsR,KAAO6B,EAAK7B,KAAK5K,QACrB1G,EAAI2T,MAAQR,EAAKQ,WACZ,GAAY,KAARzE,EACTlP,EAAIa,KAAOsS,EAAKtS,KAChBb,EAAIsR,KAAO6B,EAAK7B,KAAK5K,QACrB1G,EAAI2T,MAAQ,GACZzV,EAAQ6U,OACH,IAAY,KAAR7D,EAMJ,CACAiC,GAA6B1D,EAAW/G,MAAMuI,GAASW,KAAK,OAC/D5P,EAAIa,KAAOsS,EAAKtS,KAChBb,EAAIsR,KAAO6B,EAAK7B,KAAK5K,QACrB2K,GAAgBrR,IAElB9B,EAAQ2U,GACR,SAZA7S,EAAIa,KAAOsS,EAAKtS,KAChBb,EAAIsR,KAAO6B,EAAK7B,KAAK5K,QACrB1G,EAAI2T,MAAQR,EAAKQ,MACjB3T,EAAI4T,SAAW,GACf1V,EAAQ8U,IAaV,MAEJ,KAAKN,GACH,GAAY,KAARxD,GAAuB,MAARA,EAAc,CAC/BhR,EAAQyU,GACR,MAEEQ,GAAuB,QAAfA,EAAKzC,SAAqBS,GAA6B1D,EAAW/G,MAAMuI,GAASW,KAAK,OAC5FmB,GAAqBoC,EAAK7B,KAAK,IAAI,GAAOtR,EAAIsR,KAAK5I,KAAKyK,EAAK7B,KAAK,IACjEtR,EAAIa,KAAOsS,EAAKtS,MAEvB3C,EAAQ2U,GACR,SAEF,KAAKF,GACH,GAAIzD,GAAQnE,GAAe,KAARmE,GAAuB,MAARA,GAAwB,KAARA,GAAuB,KAARA,EAAa,CAC5E,IAAKgE,GAAiBnC,GAAqBuC,GACzCpV,EAAQ2U,QACH,GAAc,IAAVS,EAAc,CAEvB,GADAtT,EAAIa,KAAO,GACPqS,EAAe,OACnBhV,EAAQ0U,OACH,CAEL,GADAS,EAAU9F,EAAUvN,EAAKsT,GACrBD,EAAS,OAAOA,EAEpB,GADgB,aAAZrT,EAAIa,OAAqBb,EAAIa,KAAO,IACpCqS,EAAe,OACnBI,EAAS,GACTpV,EAAQ0U,GACR,SACGU,GAAUpE,EACjB,MAEF,KAAK0D,GACH,GAAIhF,EAAU5N,IAEZ,GADA9B,EAAQ2U,GACI,KAAR3D,GAAuB,MAARA,EAAc,cAC5B,GAAKgE,GAAyB,KAARhE,EAGtB,GAAKgE,GAAyB,KAARhE,GAGtB,GAAIA,GAAQnE,IACjB7M,EAAQ2U,GACI,KAAR3D,GAAa,cAJjBlP,EAAI4T,SAAW,GACf1V,EAAQ8U,QAJRhT,EAAI2T,MAAQ,GACZzV,EAAQ6U,GAOR,MAEJ,KAAKF,GACH,GACE3D,GAAQnE,GAAe,KAARmE,GACN,MAARA,GAAgBtB,EAAU5N,KACzBkT,IAA0B,KAARhE,GAAuB,KAARA,GACnC,CAkBA,GAjBIyC,GAAY2B,IACdjC,GAAgBrR,GACJ,KAARkP,GAAyB,MAARA,GAAgBtB,EAAU5N,IAC7CA,EAAIsR,KAAK5I,KAAK,KAEP8I,GAAY8B,GACT,KAARpE,GAAyB,MAARA,GAAgBtB,EAAU5N,IAC7CA,EAAIsR,KAAK5I,KAAK,KAGE,QAAd1I,EAAI0Q,SAAqB1Q,EAAIsR,KAAKxK,QAAUiK,GAAqBuC,KAC/DtT,EAAIa,OAAMb,EAAIa,KAAO,IACzByS,EAASA,EAAO5F,OAAO,GAAK,KAE9B1N,EAAIsR,KAAK5I,KAAK4K,IAEhBA,EAAS,GACS,QAAdtT,EAAI0Q,SAAqBxB,GAAQnE,GAAe,KAARmE,GAAuB,KAARA,GACzD,MAAOlP,EAAIsR,KAAKxK,OAAS,GAAqB,KAAhB9G,EAAIsR,KAAK,GACrCtR,EAAIsR,KAAK2C,QAGD,KAAR/E,GACFlP,EAAI2T,MAAQ,GACZzV,EAAQ6U,IACS,KAAR7D,IACTlP,EAAI4T,SAAW,GACf1V,EAAQ8U,SAGVM,GAAUvF,EAAcmB,EAAMa,GAC9B,MAEJ,KAAK+C,GACS,KAAR5D,GACFlP,EAAI2T,MAAQ,GACZzV,EAAQ6U,IACS,KAAR7D,GACTlP,EAAI4T,SAAW,GACf1V,EAAQ8U,IACC9D,GAAQnE,IACjB/K,EAAIsR,KAAK,IAAMvD,EAAcmB,EAAMlB,IACnC,MAEJ,KAAK+E,GACEG,GAAyB,KAARhE,EAGXA,GAAQnE,IACL,KAARmE,GAAetB,EAAU5N,GAAMA,EAAI2T,OAAS,MAC1B3T,EAAI2T,OAAT,KAARzE,EAA0B,MACjBnB,EAAcmB,EAAMlB,KALtChO,EAAI4T,SAAW,GACf1V,EAAQ8U,IAKR,MAEJ,KAAKA,GACC9D,GAAQnE,IAAK/K,EAAI4T,UAAY7F,EAAcmB,EAAMY,IACrD,MAGJb,MAMAiF,GAAiB,SAAalU,GAChC,IAIImU,EAAWd,EAJXe,EAAO9I,EAAWlQ,KAAM8Y,GAAgB,OACxCf,EAAOkB,UAAUvN,OAAS,EAAIuN,UAAU,QAAK9U,EAC7C+U,EAAY5T,OAAOV,GACnB9B,EAAQ+N,EAAiBmI,EAAM,CAAE9W,KAAM,QAE3C,QAAaiC,IAAT4T,EACF,GAAIA,aAAgBe,GAAgBC,EAAYhI,EAAoBgH,QAGlE,GADAE,EAAUJ,GAASkB,EAAY,GAAIzT,OAAOyS,IACtCE,EAAS,MAAMkB,UAAUlB,GAIjC,GADAA,EAAUJ,GAAS/U,EAAOoW,EAAW,KAAMH,GACvCd,EAAS,MAAMkB,UAAUlB,GAC7B,IAAInT,EAAehC,EAAMgC,aAAe,IAAIS,EACxC6T,EAAoBzI,EAA6B7L,GACrDsU,EAAkBC,mBAAmBvW,EAAMyV,OAC3Ca,EAAkBE,UAAY,WAC5BxW,EAAMyV,MAAQjT,OAAOR,IAAiB,MAEnC+K,IACHmJ,EAAK5T,KAAOmU,GAAaC,KAAKR,GAC9BA,EAAKS,OAASC,GAAUF,KAAKR,GAC7BA,EAAKW,SAAWC,GAAYJ,KAAKR,GACjCA,EAAKxT,SAAWqU,GAAYL,KAAKR,GACjCA,EAAKxD,SAAWsE,GAAYN,KAAKR,GACjCA,EAAKvT,KAAOsU,GAAQP,KAAKR,GACzBA,EAAKgB,SAAWC,GAAYT,KAAKR,GACjCA,EAAKV,KAAO4B,GAAQV,KAAKR,GACzBA,EAAKhU,SAAWmV,GAAYX,KAAKR,GACjCA,EAAKoB,OAASC,GAAUb,KAAKR,GAC7BA,EAAKlU,aAAewV,GAAgBd,KAAKR,GACzCA,EAAKtT,KAAO6U,GAAQf,KAAKR,KAIzBwB,GAAe1B,GAAe2B,UAE9BlB,GAAe,WACjB,IAAI3U,EAAMmM,EAAoB/Q,MAC1BsV,EAAS1Q,EAAI0Q,OACb9P,EAAWZ,EAAIY,SACfgQ,EAAW5Q,EAAI4Q,SACf/P,EAAOb,EAAIa,KACX6S,EAAO1T,EAAI0T,KACXpC,EAAOtR,EAAIsR,KACXqC,EAAQ3T,EAAI2T,MACZC,EAAW5T,EAAI4T,SACfkC,EAASpF,EAAS,IAYtB,OAXa,OAAT7P,GACFiV,GAAU,KACNnF,EAAoB3Q,KACtB8V,GAAUlV,GAAYgQ,EAAW,IAAMA,EAAW,IAAM,KAE1DkF,GAAUrG,EAAc5O,GACX,OAAT6S,IAAeoC,GAAU,IAAMpC,IAChB,QAAVhD,IAAkBoF,GAAU,MACvCA,GAAU9V,EAAI8Q,iBAAmBQ,EAAK,GAAKA,EAAKxK,OAAS,IAAMwK,EAAK1B,KAAK,KAAO,GAClE,OAAV+D,IAAgBmC,GAAU,IAAMnC,GACnB,OAAbC,IAAmBkC,GAAU,IAAMlC,GAChCkC,GAGLhB,GAAY,WACd,IAAI9U,EAAMmM,EAAoB/Q,MAC1BsV,EAAS1Q,EAAI0Q,OACbgD,EAAO1T,EAAI0T,KACf,GAAc,QAAVhD,EAAkB,IACpB,OAAO,IAAIzQ,IAAIyQ,EAAOY,KAAK,IAAIuD,OAC/B,MAAOkB,GACP,MAAO,OAET,MAAc,QAAVrF,GAAqB9C,EAAU5N,GAC5B0Q,EAAS,MAAQjB,EAAczP,EAAIa,OAAkB,OAAT6S,EAAgB,IAAMA,EAAO,IADhC,QAI9CsB,GAAc,WAChB,OAAO7I,EAAoB/Q,MAAMsV,OAAS,KAGxCuE,GAAc,WAChB,OAAO9I,EAAoB/Q,MAAMwF,UAG/BsU,GAAc,WAChB,OAAO/I,EAAoB/Q,MAAMwV,UAG/BuE,GAAU,WACZ,IAAInV,EAAMmM,EAAoB/Q,MAC1ByF,EAAOb,EAAIa,KACX6S,EAAO1T,EAAI0T,KACf,OAAgB,OAAT7S,EAAgB,GACV,OAAT6S,EAAgBjE,EAAc5O,GAC9B4O,EAAc5O,GAAQ,IAAM6S,GAG9B2B,GAAc,WAChB,IAAIxU,EAAOsL,EAAoB/Q,MAAMyF,KACrC,OAAgB,OAATA,EAAgB,GAAK4O,EAAc5O,IAGxCyU,GAAU,WACZ,IAAI5B,EAAOvH,EAAoB/Q,MAAMsY,KACrC,OAAgB,OAATA,EAAgB,GAAKhT,OAAOgT,IAGjC6B,GAAc,WAChB,IAAIvV,EAAMmM,EAAoB/Q,MAC1BkW,EAAOtR,EAAIsR,KACf,OAAOtR,EAAI8Q,iBAAmBQ,EAAK,GAAKA,EAAKxK,OAAS,IAAMwK,EAAK1B,KAAK,KAAO,IAG3E6F,GAAY,WACd,IAAI9B,EAAQxH,EAAoB/Q,MAAMuY,MACtC,OAAOA,EAAQ,IAAMA,EAAQ,IAG3B+B,GAAkB,WACpB,OAAOvJ,EAAoB/Q,MAAM8E,cAG/ByV,GAAU,WACZ,IAAI/B,EAAWzH,EAAoB/Q,MAAMwY,SACzC,OAAOA,EAAW,IAAMA,EAAW,IAGjCoC,GAAqB,SAAUC,EAAQC,GACzC,MAAO,CAAEzV,IAAKwV,EAAQ/J,IAAKgK,EAAQC,cAAc,EAAMC,YAAY,IAyHrE,GAtHInL,GACFG,EAAiBwK,GAAc,CAG7BpV,KAAMwV,GAAmBrB,IAAc,SAAUnU,GAC/C,IAAIR,EAAMmM,EAAoB/Q,MAC1BkZ,EAAY5T,OAAOF,GACnB6S,EAAUJ,GAASjT,EAAKsU,GAC5B,GAAIjB,EAAS,MAAMkB,UAAUlB,GAC7BtH,EAA6B/L,EAAIE,cAAcuU,mBAAmBzU,EAAI2T,UAIxEkB,OAAQmB,GAAmBlB,IAG3BC,SAAUiB,GAAmBhB,IAAa,SAAUD,GAClD,IAAI/U,EAAMmM,EAAoB/Q,MAC9B6X,GAASjT,EAAKU,OAAOqU,GAAY,IAAKnD,OAIxChR,SAAUoV,GAAmBf,IAAa,SAAUrU,GAClD,IAAIZ,EAAMmM,EAAoB/Q,MAC1BqS,EAAajC,EAAU9K,OAAOE,IAClC,IAAIiQ,GAA+B7Q,GAAnC,CACAA,EAAIY,SAAW,GACf,IAAK,IAAIkT,EAAI,EAAGA,EAAIrG,EAAW3G,OAAQgN,IACrC9T,EAAIY,UAAYmN,EAAcN,EAAWqG,GAAI9D,OAKjDY,SAAUoF,GAAmBd,IAAa,SAAUtE,GAClD,IAAI5Q,EAAMmM,EAAoB/Q,MAC1BqS,EAAajC,EAAU9K,OAAOkQ,IAClC,IAAIC,GAA+B7Q,GAAnC,CACAA,EAAI4Q,SAAW,GACf,IAAK,IAAIkD,EAAI,EAAGA,EAAIrG,EAAW3G,OAAQgN,IACrC9T,EAAI4Q,UAAY7C,EAAcN,EAAWqG,GAAI9D,OAKjDnP,KAAMmV,GAAmBb,IAAS,SAAUtU,GAC1C,IAAIb,EAAMmM,EAAoB/Q,MAC1B4E,EAAI8Q,kBACRmC,GAASjT,EAAKU,OAAOG,GAAOyR,OAI9B8C,SAAUY,GAAmBX,IAAa,SAAUD,GAClD,IAAIpV,EAAMmM,EAAoB/Q,MAC1B4E,EAAI8Q,kBACRmC,GAASjT,EAAKU,OAAO0U,GAAW7C,OAIlCmB,KAAMsC,GAAmBV,IAAS,SAAU5B,GAC1C,IAAI1T,EAAMmM,EAAoB/Q,MAC1ByV,GAA+B7Q,KACnC0T,EAAOhT,OAAOgT,GACF,IAARA,EAAY1T,EAAI0T,KAAO,KACtBT,GAASjT,EAAK0T,EAAMlB,QAI3BpS,SAAU4V,GAAmBT,IAAa,SAAUnV,GAClD,IAAIJ,EAAMmM,EAAoB/Q,MAC1B4E,EAAI8Q,mBACR9Q,EAAIsR,KAAO,GACX2B,GAASjT,EAAKI,EAAW,GAAIwS,QAI/B4C,OAAQQ,GAAmBP,IAAW,SAAUD,GAC9C,IAAIxV,EAAMmM,EAAoB/Q,MAC9Boa,EAAS9U,OAAO8U,GACF,IAAVA,EACFxV,EAAI2T,MAAQ,MAER,KAAO6B,EAAO9H,OAAO,KAAI8H,EAASA,EAAO9O,MAAM,IACnD1G,EAAI2T,MAAQ,GACZV,GAASjT,EAAKwV,EAAQzC,KAExBhH,EAA6B/L,EAAIE,cAAcuU,mBAAmBzU,EAAI2T,UAIxEzT,aAAc8V,GAAmBN,IAGjC5U,KAAMkV,GAAmBL,IAAS,SAAU7U,GAC1C,IAAId,EAAMmM,EAAoB/Q,MAC9B0F,EAAOJ,OAAOI,GACF,IAARA,GAIA,KAAOA,EAAK4M,OAAO,KAAI5M,EAAOA,EAAK4F,MAAM,IAC7C1G,EAAI4T,SAAW,GACfX,GAASjT,EAAKc,EAAMkS,KALlBhT,EAAI4T,SAAW,UAYvBvI,EAASuK,GAAc,UAAU,WAC/B,OAAOjB,GAAaC,KAAKxZ,QACxB,CAAEgb,YAAY,IAIjB/K,EAASuK,GAAc,YAAY,WACjC,OAAOjB,GAAaC,KAAKxZ,QACxB,CAAEgb,YAAY,IAEbtK,EAAW,CACb,IAAIuK,GAAwBvK,EAAUwK,gBAClCC,GAAwBzK,EAAU0K,gBAIlCH,IAAuBhL,EAAS6I,GAAgB,mBAAmB,SAAyBuC,GAC9F,OAAOJ,GAAsBK,MAAM5K,EAAWuI,cAK5CkC,IAAuBlL,EAAS6I,GAAgB,mBAAmB,SAAyBlU,GAC9F,OAAOuW,GAAsBG,MAAM5K,EAAWuI,cAIlD1I,EAAeuI,GAAgB,OAE/BlJ,EAAE,CAAEG,QAAQ,EAAMwL,QAASzL,EAAgB0L,MAAO3L,GAAe,CAC/DhL,IAAKiU,M,oCC7+BP,W,+DCAM2C,E,wBAQJ,aAAsB,IAAVvX,EAAU,uDAAJ,GAAI,2BAPZ,GAOY,kBANX,GAMW,cAJf,CACLwX,EAAG,WACHC,EAAG,YAGHvX,OAAOC,OAAOrE,KAAMkE,G,2CAEb0X,GACP,OAAO5b,KAAK6b,KAAKD,O,KAKrBtX,EAAOC,QAAUkX,G;;;;;;;CCXhB,SAAU1L,EAAQ+L,GAC4CxX,EAAOC,QAAUuX,EAAQ,WAAa,IAAM,OAAO,EAAQ,QAAa,MAAMC,KAArD,KADxF,CAIE/b,GAAM,SAAWgc,GAAU,aAI7B,SAASC,EAAqB/a,EAAIoD,GACjC,OAAOA,EAAS,CAAEC,QAAS,IAAMrD,EAAGoD,EAAQA,EAAOC,SAAUD,EAAOC,QAGrE,SAAS2X,EAA2BC,GACnC,OAAOA,GAAKA,EAAE,YAAcA,EAP7BH,EAASA,GAAUA,EAAOI,eAAe,WAAaJ,EAAO,WAAaA,EAU1E,IAAIK,EAAY,CACf,UAAa,CAAC,IAAK,IAAK,KACxB,aAAgB,CAAC,IAAK,IAAK,KAC3B,KAAQ,CAAC,EAAG,IAAK,KACjB,WAAc,CAAC,IAAK,IAAK,KACzB,MAAS,CAAC,IAAK,IAAK,KACpB,MAAS,CAAC,IAAK,IAAK,KACpB,OAAU,CAAC,IAAK,IAAK,KACrB,MAAS,CAAC,EAAG,EAAG,GAChB,eAAkB,CAAC,IAAK,IAAK,KAC7B,KAAQ,CAAC,EAAG,EAAG,KACf,WAAc,CAAC,IAAK,GAAI,KACxB,MAAS,CAAC,IAAK,GAAI,IACnB,UAAa,CAAC,IAAK,IAAK,KACxB,UAAa,CAAC,GAAI,IAAK,KACvB,WAAc,CAAC,IAAK,IAAK,GACzB,UAAa,CAAC,IAAK,IAAK,IACxB,MAAS,CAAC,IAAK,IAAK,IACpB,eAAkB,CAAC,IAAK,IAAK,KAC7B,SAAY,CAAC,IAAK,IAAK,KACvB,QAAW,CAAC,IAAK,GAAI,IACrB,KAAQ,CAAC,EAAG,IAAK,KACjB,SAAY,CAAC,EAAG,EAAG,KACnB,SAAY,CAAC,EAAG,IAAK,KACrB,cAAiB,CAAC,IAAK,IAAK,IAC5B,SAAY,CAAC,IAAK,IAAK,KACvB,UAAa,CAAC,EAAG,IAAK,GACtB,SAAY,CAAC,IAAK,IAAK,KACvB,UAAa,CAAC,IAAK,IAAK,KACxB,YAAe,CAAC,IAAK,EAAG,KACxB,eAAkB,CAAC,GAAI,IAAK,IAC5B,WAAc,CAAC,IAAK,IAAK,GACzB,WAAc,CAAC,IAAK,GAAI,KACxB,QAAW,CAAC,IAAK,EAAG,GACpB,WAAc,CAAC,IAAK,IAAK,KACzB,aAAgB,CAAC,IAAK,IAAK,KAC3B,cAAiB,CAAC,GAAI,GAAI,KAC1B,cAAiB,CAAC,GAAI,GAAI,IAC1B,cAAiB,CAAC,GAAI,GAAI,IAC1B,cAAiB,CAAC,EAAG,IAAK,KAC1B,WAAc,CAAC,IAAK,EAAG,KACvB,SAAY,CAAC,IAAK,GAAI,KACtB,YAAe,CAAC,EAAG,IAAK,KACxB,QAAW,CAAC,IAAK,IAAK,KACtB,QAAW,CAAC,IAAK,IAAK,KACtB,WAAc,CAAC,GAAI,IAAK,KACxB,UAAa,CAAC,IAAK,GAAI,IACvB,YAAe,CAAC,IAAK,IAAK,KAC1B,YAAe,CAAC,GAAI,IAAK,IACzB,QAAW,CAAC,IAAK,EAAG,KACpB,UAAa,CAAC,IAAK,IAAK,KACxB,WAAc,CAAC,IAAK,IAAK,KACzB,KAAQ,CAAC,IAAK,IAAK,GACnB,UAAa,CAAC,IAAK,IAAK,IACxB,KAAQ,CAAC,IAAK,IAAK,KACnB,MAAS,CAAC,EAAG,IAAK,GAClB,YAAe,CAAC,IAAK,IAAK,IAC1B,KAAQ,CAAC,IAAK,IAAK,KACnB,SAAY,CAAC,IAAK,IAAK,KACvB,QAAW,CAAC,IAAK,IAAK,KACtB,UAAa,CAAC,IAAK,GAAI,IACvB,OAAU,CAAC,GAAI,EAAG,KAClB,MAAS,CAAC,IAAK,IAAK,KACpB,MAAS,CAAC,IAAK,IAAK,KACpB,SAAY,CAAC,IAAK,IAAK,KACvB,cAAiB,CAAC,IAAK,IAAK,KAC5B,UAAa,CAAC,IAAK,IAAK,GACxB,aAAgB,CAAC,IAAK,IAAK,KAC3B,UAAa,CAAC,IAAK,IAAK,KACxB,WAAc,CAAC,IAAK,IAAK,KACzB,UAAa,CAAC,IAAK,IAAK,KACxB,qBAAwB,CAAC,IAAK,IAAK,KACnC,UAAa,CAAC,IAAK,IAAK,KACxB,WAAc,CAAC,IAAK,IAAK,KACzB,UAAa,CAAC,IAAK,IAAK,KACxB,UAAa,CAAC,IAAK,IAAK,KACxB,YAAe,CAAC,IAAK,IAAK,KAC1B,cAAiB,CAAC,GAAI,IAAK,KAC3B,aAAgB,CAAC,IAAK,IAAK,KAC3B,eAAkB,CAAC,IAAK,IAAK,KAC7B,eAAkB,CAAC,IAAK,IAAK,KAC7B,eAAkB,CAAC,IAAK,IAAK,KAC7B,YAAe,CAAC,IAAK,IAAK,KAC1B,KAAQ,CAAC,EAAG,IAAK,GACjB,UAAa,CAAC,GAAI,IAAK,IACvB,MAAS,CAAC,IAAK,IAAK,KACpB,QAAW,CAAC,IAAK,EAAG,KACpB,OAAU,CAAC,IAAK,EAAG,GACnB,iBAAoB,CAAC,IAAK,IAAK,KAC/B,WAAc,CAAC,EAAG,EAAG,KACrB,aAAgB,CAAC,IAAK,GAAI,KAC1B,aAAgB,CAAC,IAAK,IAAK,KAC3B,eAAkB,CAAC,GAAI,IAAK,KAC5B,gBAAmB,CAAC,IAAK,IAAK,KAC9B,kBAAqB,CAAC,EAAG,IAAK,KAC9B,gBAAmB,CAAC,GAAI,IAAK,KAC7B,gBAAmB,CAAC,IAAK,GAAI,KAC7B,aAAgB,CAAC,GAAI,GAAI,KACzB,UAAa,CAAC,IAAK,IAAK,KACxB,UAAa,CAAC,IAAK,IAAK,KACxB,SAAY,CAAC,IAAK,IAAK,KACvB,YAAe,CAAC,IAAK,IAAK,KAC1B,KAAQ,CAAC,EAAG,EAAG,KACf,QAAW,CAAC,IAAK,IAAK,KACtB,MAAS,CAAC,IAAK,IAAK,GACpB,UAAa,CAAC,IAAK,IAAK,IACxB,OAAU,CAAC,IAAK,IAAK,GACrB,UAAa,CAAC,IAAK,GAAI,GACvB,OAAU,CAAC,IAAK,IAAK,KACrB,cAAiB,CAAC,IAAK,IAAK,KAC5B,UAAa,CAAC,IAAK,IAAK,KACxB,cAAiB,CAAC,IAAK,IAAK,KAC5B,cAAiB,CAAC,IAAK,IAAK,KAC5B,WAAc,CAAC,IAAK,IAAK,KACzB,UAAa,CAAC,IAAK,IAAK,KACxB,KAAQ,CAAC,IAAK,IAAK,IACnB,KAAQ,CAAC,IAAK,IAAK,KACnB,KAAQ,CAAC,IAAK,IAAK,KACnB,WAAc,CAAC,IAAK,IAAK,KACzB,OAAU,CAAC,IAAK,EAAG,KACnB,cAAiB,CAAC,IAAK,GAAI,KAC3B,IAAO,CAAC,IAAK,EAAG,GAChB,UAAa,CAAC,IAAK,IAAK,KACxB,UAAa,CAAC,GAAI,IAAK,KACvB,YAAe,CAAC,IAAK,GAAI,IACzB,OAAU,CAAC,IAAK,IAAK,KACrB,WAAc,CAAC,IAAK,IAAK,IACzB,SAAY,CAAC,GAAI,IAAK,IACtB,SAAY,CAAC,IAAK,IAAK,KACvB,OAAU,CAAC,IAAK,GAAI,IACpB,OAAU,CAAC,IAAK,IAAK,KACrB,QAAW,CAAC,IAAK,IAAK,KACtB,UAAa,CAAC,IAAK,GAAI,KACvB,UAAa,CAAC,IAAK,IAAK,KACxB,UAAa,CAAC,IAAK,IAAK,KACxB,KAAQ,CAAC,IAAK,IAAK,KACnB,YAAe,CAAC,EAAG,IAAK,KACxB,UAAa,CAAC,GAAI,IAAK,KACvB,IAAO,CAAC,IAAK,IAAK,KAClB,KAAQ,CAAC,EAAG,IAAK,KACjB,QAAW,CAAC,IAAK,IAAK,KACtB,OAAU,CAAC,IAAK,GAAI,IACpB,UAAa,CAAC,GAAI,IAAK,KACvB,OAAU,CAAC,IAAK,IAAK,KACrB,MAAS,CAAC,IAAK,IAAK,KACpB,MAAS,CAAC,IAAK,IAAK,KACpB,WAAc,CAAC,IAAK,IAAK,KACzB,OAAU,CAAC,IAAK,IAAK,GACrB,YAAe,CAAC,IAAK,IAAK,KAGvBC,EAAcL,GAAqB,SAAU3X,GAQjD,IAAIiY,EAAkB,GACtB,IAAK,IAAItb,KAAOob,EACXA,EAAUD,eAAenb,KAC5Bsb,EAAgBF,EAAUpb,IAAQA,GAIpC,IAAIub,EAAUlY,EAAOC,QAAU,CAC9BkY,IAAK,CAACC,SAAU,EAAGC,OAAQ,OAC3BC,IAAK,CAACF,SAAU,EAAGC,OAAQ,OAC3BE,IAAK,CAACH,SAAU,EAAGC,OAAQ,OAC3BG,IAAK,CAACJ,SAAU,EAAGC,OAAQ,OAC3BI,KAAM,CAACL,SAAU,EAAGC,OAAQ,QAC5BK,IAAK,CAACN,SAAU,EAAGC,OAAQ,OAC3BM,IAAK,CAACP,SAAU,EAAGC,OAAQ,OAC3BO,IAAK,CAACR,SAAU,EAAGC,OAAQ,OAC3BQ,IAAK,CAACT,SAAU,EAAGC,OAAQ,CAAC,QAC5BS,QAAS,CAACV,SAAU,EAAGC,OAAQ,CAAC,YAChCU,OAAQ,CAACX,SAAU,EAAGC,OAAQ,CAAC,WAC/BW,QAAS,CAACZ,SAAU,EAAGC,OAAQ,CAAC,YAChCY,IAAK,CAACb,SAAU,EAAGC,OAAQ,CAAC,IAAK,IAAK,MACtCa,MAAO,CAACd,SAAU,EAAGC,OAAQ,CAAC,MAAO,MAAO,QAC5Cc,KAAM,CAACf,SAAU,EAAGC,OAAQ,CAAC,UAI9B,IAAK,IAAIjb,KAAS8a,EACjB,GAAIA,EAAQJ,eAAe1a,GAAQ,CAClC,KAAM,aAAc8a,EAAQ9a,IAC3B,MAAM,IAAIkM,MAAM,8BAAgClM,GAGjD,KAAM,WAAY8a,EAAQ9a,IACzB,MAAM,IAAIkM,MAAM,oCAAsClM,GAGvD,GAAI8a,EAAQ9a,GAAOib,OAAOjR,SAAW8Q,EAAQ9a,GAAOgb,SACnD,MAAM,IAAI9O,MAAM,sCAAwClM,GAGzD,IAAIgb,EAAWF,EAAQ9a,GAAOgb,SAC1BC,EAASH,EAAQ9a,GAAOib,cACrBH,EAAQ9a,GAAOgb,gBACfF,EAAQ9a,GAAOib,OACtBvY,OAAOsZ,eAAelB,EAAQ9a,GAAQ,WAAY,CAACC,MAAO+a,IAC1DtY,OAAOsZ,eAAelB,EAAQ9a,GAAQ,SAAU,CAACC,MAAOgb,IAyH1D,SAASgB,EAAoBC,EAAGC,GAC/B,OACC3M,KAAKC,IAAIyM,EAAE,GAAKC,EAAE,GAAI,GACtB3M,KAAKC,IAAIyM,EAAE,GAAKC,EAAE,GAAI,GACtB3M,KAAKC,IAAIyM,EAAE,GAAKC,EAAE,GAAI,GAzHxBrB,EAAQC,IAAIG,IAAM,SAAUH,GAC3B,IAMIqB,EACAC,EACAC,EARAC,EAAIxB,EAAI,GAAK,IACbyB,EAAIzB,EAAI,GAAK,IACb0B,EAAI1B,EAAI,GAAK,IACb2B,EAAMlN,KAAKkN,IAAIH,EAAGC,EAAGC,GACrBE,EAAMnN,KAAKmN,IAAIJ,EAAGC,EAAGC,GACrBG,EAAQD,EAAMD,EA+BlB,OA1BIC,IAAQD,EACXN,EAAI,EACMG,IAAMI,EAChBP,GAAKI,EAAIC,GAAKG,EACJJ,IAAMG,EAChBP,EAAI,GAAKK,EAAIF,GAAKK,EACRH,IAAME,IAChBP,EAAI,GAAKG,EAAIC,GAAKI,GAGnBR,EAAI5M,KAAKkN,IAAQ,GAAJN,EAAQ,KAEjBA,EAAI,IACPA,GAAK,KAGNE,GAAKI,EAAMC,GAAO,EAGjBN,EADGM,IAAQD,EACP,EACMJ,GAAK,GACXM,GAASD,EAAMD,GAEfE,GAAS,EAAID,EAAMD,GAGjB,CAACN,EAAO,IAAJC,EAAa,IAAJC,IAGrBxB,EAAQC,IAAII,IAAM,SAAUJ,GAC3B,IAAI8B,EACAC,EACAC,EACAX,EACAC,EAEAE,EAAIxB,EAAI,GAAK,IACbyB,EAAIzB,EAAI,GAAK,IACb0B,EAAI1B,EAAI,GAAK,IACbiC,EAAIxN,KAAKmN,IAAIJ,EAAGC,EAAGC,GACnBQ,EAAOD,EAAIxN,KAAKkN,IAAIH,EAAGC,EAAGC,GAC1BS,EAAQ,SAAUC,GACrB,OAAQH,EAAIG,GAAK,EAAIF,EAAO,IAyB7B,OAtBa,IAATA,EACHb,EAAIC,EAAI,GAERA,EAAIY,EAAOD,EACXH,EAAOK,EAAMX,GACbO,EAAOI,EAAMV,GACbO,EAAOG,EAAMT,GAETF,IAAMS,EACTZ,EAAIW,EAAOD,EACDN,IAAMQ,EAChBZ,EAAK,EAAI,EAAKS,EAAOE,EACXN,IAAMO,IAChBZ,EAAK,EAAI,EAAKU,EAAOD,GAElBT,EAAI,EACPA,GAAK,EACKA,EAAI,IACdA,GAAK,IAIA,CACF,IAAJA,EACI,IAAJC,EACI,IAAJW,IAIFlC,EAAQC,IAAIK,IAAM,SAAUL,GAC3B,IAAIwB,EAAIxB,EAAI,GACRyB,EAAIzB,EAAI,GACR0B,EAAI1B,EAAI,GACRqB,EAAItB,EAAQC,IAAIG,IAAIH,GAAK,GACzBqC,EAAI,EAAI,IAAM5N,KAAKkN,IAAIH,EAAG/M,KAAKkN,IAAIF,EAAGC,IAI1C,OAFAA,EAAI,EAAI,EAAI,IAAMjN,KAAKmN,IAAIJ,EAAG/M,KAAKmN,IAAIH,EAAGC,IAEnC,CAACL,EAAO,IAAJgB,EAAa,IAAJX,IAGrB3B,EAAQC,IAAIM,KAAO,SAAUN,GAC5B,IAGIoC,EACAE,EACAlB,EACAmB,EANAf,EAAIxB,EAAI,GAAK,IACbyB,EAAIzB,EAAI,GAAK,IACb0B,EAAI1B,EAAI,GAAK,IAWjB,OALAuC,EAAI9N,KAAKkN,IAAI,EAAIH,EAAG,EAAIC,EAAG,EAAIC,GAC/BU,GAAK,EAAIZ,EAAIe,IAAM,EAAIA,IAAM,EAC7BD,GAAK,EAAIb,EAAIc,IAAM,EAAIA,IAAM,EAC7BnB,GAAK,EAAIM,EAAIa,IAAM,EAAIA,IAAM,EAEtB,CAAK,IAAJH,EAAa,IAAJE,EAAa,IAAJlB,EAAa,IAAJmB,IAcpCxC,EAAQC,IAAIW,QAAU,SAAUX,GAC/B,IAAIwC,EAAW1C,EAAgBE,GAC/B,GAAIwC,EACH,OAAOA,EAGR,IACIC,EADAC,EAAyBC,IAG7B,IAAK,IAAIhC,KAAWf,EACnB,GAAIA,EAAUD,eAAegB,GAAU,CACtC,IAAIzb,EAAQ0a,EAAUe,GAGlBiC,EAAW1B,EAAoBlB,EAAK9a,GAGpC0d,EAAWF,IACdA,EAAyBE,EACzBH,EAAwB9B,GAK3B,OAAO8B,GAGR1C,EAAQY,QAAQX,IAAM,SAAUW,GAC/B,OAAOf,EAAUe,IAGlBZ,EAAQC,IAAIO,IAAM,SAAUP,GAC3B,IAAIwB,EAAIxB,EAAI,GAAK,IACbyB,EAAIzB,EAAI,GAAK,IACb0B,EAAI1B,EAAI,GAAK,IAGjBwB,EAAIA,EAAI,OAAU/M,KAAKC,KAAM8M,EAAI,MAAS,MAAQ,KAAQA,EAAI,MAC9DC,EAAIA,EAAI,OAAUhN,KAAKC,KAAM+M,EAAI,MAAS,MAAQ,KAAQA,EAAI,MAC9DC,EAAIA,EAAI,OAAUjN,KAAKC,KAAMgN,EAAI,MAAS,MAAQ,KAAQA,EAAI,MAE9D,IAAIP,EAAS,MAAJK,EAAmB,MAAJC,EAAmB,MAAJC,EACnCN,EAAS,MAAJI,EAAmB,MAAJC,EAAmB,MAAJC,EACnCmB,EAAS,MAAJrB,EAAmB,MAAJC,EAAmB,MAAJC,EAEvC,MAAO,CAAK,IAAJP,EAAa,IAAJC,EAAa,IAAJyB,IAG3B9C,EAAQC,IAAIQ,IAAM,SAAUR,GAC3B,IAIIuB,EACAuB,EACApB,EANAnB,EAAMR,EAAQC,IAAIO,IAAIP,GACtBmB,EAAIZ,EAAI,GACRa,EAAIb,EAAI,GACRsC,EAAItC,EAAI,GAiBZ,OAZAY,GAAK,OACLC,GAAK,IACLyB,GAAK,QAEL1B,EAAIA,EAAI,QAAW1M,KAAKC,IAAIyM,EAAG,EAAI,GAAM,MAAQA,EAAM,GAAK,IAC5DC,EAAIA,EAAI,QAAW3M,KAAKC,IAAI0M,EAAG,EAAI,GAAM,MAAQA,EAAM,GAAK,IAC5DyB,EAAIA,EAAI,QAAWpO,KAAKC,IAAImO,EAAG,EAAI,GAAM,MAAQA,EAAM,GAAK,IAE5DtB,EAAK,IAAMH,EAAK,GAChB0B,EAAI,KAAO3B,EAAIC,GACfM,EAAI,KAAON,EAAIyB,GAER,CAACtB,EAAGuB,EAAGpB,IAGf3B,EAAQI,IAAIH,IAAM,SAAUG,GAC3B,IAGI4C,EACAC,EACAC,EACAjD,EACAkD,EAPA7B,EAAIlB,EAAI,GAAK,IACbmB,EAAInB,EAAI,GAAK,IACboB,EAAIpB,EAAI,GAAK,IAOjB,GAAU,IAANmB,EAEH,OADA4B,EAAU,IAAJ3B,EACC,CAAC2B,EAAKA,EAAKA,GAIlBF,EADGzB,EAAI,GACFA,GAAK,EAAID,GAETC,EAAID,EAAIC,EAAID,EAGlByB,EAAK,EAAIxB,EAAIyB,EAEbhD,EAAM,CAAC,EAAG,EAAG,GACb,IAAK,IAAI/D,EAAI,EAAGA,EAAI,EAAGA,IACtBgH,EAAK5B,EAAI,EAAI,IAAMpF,EAAI,GACnBgH,EAAK,GACRA,IAEGA,EAAK,GACRA,IAIAC,EADG,EAAID,EAAK,EACNF,EAAiB,GAAXC,EAAKD,GAAUE,EACjB,EAAIA,EAAK,EACbD,EACI,EAAIC,EAAK,EACbF,GAAMC,EAAKD,IAAO,EAAI,EAAIE,GAAM,EAEhCF,EAGP/C,EAAI/D,GAAW,IAANiH,EAGV,OAAOlD,GAGRD,EAAQI,IAAIC,IAAM,SAAUD,GAC3B,IAKIgD,EACAlB,EANAZ,EAAIlB,EAAI,GACRmB,EAAInB,EAAI,GAAK,IACboB,EAAIpB,EAAI,GAAK,IACbiD,EAAO9B,EACP+B,EAAO5O,KAAKmN,IAAIL,EAAG,KAUvB,OANAA,GAAK,EACLD,GAAMC,GAAK,EAAKA,EAAI,EAAIA,EACxB6B,GAAQC,GAAQ,EAAIA,EAAO,EAAIA,EAC/BpB,GAAKV,EAAID,GAAK,EACd6B,EAAW,IAAN5B,EAAW,EAAI6B,GAASC,EAAOD,GAAS,EAAI9B,GAAMC,EAAID,GAEpD,CAACD,EAAQ,IAAL8B,EAAc,IAAJlB,IAGtBlC,EAAQK,IAAIJ,IAAM,SAAUI,GAC3B,IAAIiB,EAAIjB,EAAI,GAAK,GACbkB,EAAIlB,EAAI,GAAK,IACb6B,EAAI7B,EAAI,GAAK,IACbkD,EAAK7O,KAAKD,MAAM6M,GAAK,EAErBkC,EAAIlC,EAAI5M,KAAKD,MAAM6M,GACnBmC,EAAI,IAAMvB,GAAK,EAAIX,GACnBmC,EAAI,IAAMxB,GAAK,EAAKX,EAAIiC,GACxBG,EAAI,IAAMzB,GAAK,EAAKX,GAAK,EAAIiC,IAGjC,OAFAtB,GAAK,IAEGqB,GACP,KAAK,EACJ,MAAO,CAACrB,EAAGyB,EAAGF,GACf,KAAK,EACJ,MAAO,CAACC,EAAGxB,EAAGuB,GACf,KAAK,EACJ,MAAO,CAACA,EAAGvB,EAAGyB,GACf,KAAK,EACJ,MAAO,CAACF,EAAGC,EAAGxB,GACf,KAAK,EACJ,MAAO,CAACyB,EAAGF,EAAGvB,GACf,KAAK,EACJ,MAAO,CAACA,EAAGuB,EAAGC,KAIjB1D,EAAQK,IAAID,IAAM,SAAUC,GAC3B,IAIIiD,EACAM,EACApC,EANAF,EAAIjB,EAAI,GACRkB,EAAIlB,EAAI,GAAK,IACb6B,EAAI7B,EAAI,GAAK,IACbwD,EAAOnP,KAAKmN,IAAIK,EAAG,KAYvB,OAPAV,GAAK,EAAID,GAAKW,EACdoB,GAAQ,EAAI/B,GAAKsC,EACjBD,EAAKrC,EAAIsC,EACTD,GAAON,GAAQ,EAAKA,EAAO,EAAIA,EAC/BM,EAAKA,GAAM,EACXpC,GAAK,EAEE,CAACF,EAAQ,IAALsC,EAAc,IAAJpC,IAItBxB,EAAQM,IAAIL,IAAM,SAAUK,GAC3B,IAIIpE,EACAgG,EACAsB,EACA7D,EAkBA8B,EACAC,EACAC,EA3BAL,EAAIhB,EAAI,GAAK,IACbwD,EAAKxD,EAAI,GAAK,IACdyD,EAAKzD,EAAI,GAAK,IACd0D,EAAQF,EAAKC,EAyBjB,OAlBIC,EAAQ,IACXF,GAAME,EACND,GAAMC,GAGP9H,EAAIxH,KAAKD,MAAM,EAAI6M,GACnBY,EAAI,EAAI6B,EACRP,EAAI,EAAIlC,EAAIpF,EAEO,KAAV,EAAJA,KACJsH,EAAI,EAAIA,GAGT7D,EAAImE,EAAKN,GAAKtB,EAAI4B,GAKV5H,GACP,QACA,KAAK,EACL,KAAK,EAAGuF,EAAIS,EAAGR,EAAI/B,EAAGgC,EAAImC,EAAI,MAC9B,KAAK,EAAGrC,EAAI9B,EAAG+B,EAAIQ,EAAGP,EAAImC,EAAI,MAC9B,KAAK,EAAGrC,EAAIqC,EAAIpC,EAAIQ,EAAGP,EAAIhC,EAAG,MAC9B,KAAK,EAAG8B,EAAIqC,EAAIpC,EAAI/B,EAAGgC,EAAIO,EAAG,MAC9B,KAAK,EAAGT,EAAI9B,EAAG+B,EAAIoC,EAAInC,EAAIO,EAAG,MAC9B,KAAK,EAAGT,EAAIS,EAAGR,EAAIoC,EAAInC,EAAIhC,EAAG,MAG/B,MAAO,CAAK,IAAJ8B,EAAa,IAAJC,EAAa,IAAJC,IAG3B3B,EAAQO,KAAKN,IAAM,SAAUM,GAC5B,IAIIkB,EACAC,EACAC,EANAU,EAAI9B,EAAK,GAAK,IACdgC,EAAIhC,EAAK,GAAK,IACdc,EAAId,EAAK,GAAK,IACdiC,EAAIjC,EAAK,GAAK,IASlB,OAJAkB,EAAI,EAAI/M,KAAKkN,IAAI,EAAGS,GAAK,EAAIG,GAAKA,GAClCd,EAAI,EAAIhN,KAAKkN,IAAI,EAAGW,GAAK,EAAIC,GAAKA,GAClCb,EAAI,EAAIjN,KAAKkN,IAAI,EAAGP,GAAK,EAAImB,GAAKA,GAE3B,CAAK,IAAJf,EAAa,IAAJC,EAAa,IAAJC,IAG3B3B,EAAQQ,IAAIP,IAAM,SAAUO,GAC3B,IAGIiB,EACAC,EACAC,EALAP,EAAIZ,EAAI,GAAK,IACba,EAAIb,EAAI,GAAK,IACbsC,EAAItC,EAAI,GAAK,IA0BjB,OArBAiB,EAAS,OAAJL,GAAoB,OAALC,GAAqB,MAALyB,EACpCpB,GAAU,MAALN,EAAoB,OAAJC,EAAmB,MAAJyB,EACpCnB,EAAS,MAAJP,GAAoB,KAALC,EAAoB,MAAJyB,EAGpCrB,EAAIA,EAAI,SACH,MAAQ/M,KAAKC,IAAI8M,EAAG,EAAM,KAAQ,KAChC,MAAJA,EAEHC,EAAIA,EAAI,SACH,MAAQhN,KAAKC,IAAI+M,EAAG,EAAM,KAAQ,KAChC,MAAJA,EAEHC,EAAIA,EAAI,SACH,MAAQjN,KAAKC,IAAIgN,EAAG,EAAM,KAAQ,KAChC,MAAJA,EAEHF,EAAI/M,KAAKkN,IAAIlN,KAAKmN,IAAI,EAAGJ,GAAI,GAC7BC,EAAIhN,KAAKkN,IAAIlN,KAAKmN,IAAI,EAAGH,GAAI,GAC7BC,EAAIjN,KAAKkN,IAAIlN,KAAKmN,IAAI,EAAGF,GAAI,GAEtB,CAAK,IAAJF,EAAa,IAAJC,EAAa,IAAJC,IAG3B3B,EAAQQ,IAAIC,IAAM,SAAUD,GAC3B,IAGIgB,EACAuB,EACApB,EALAP,EAAIZ,EAAI,GACRa,EAAIb,EAAI,GACRsC,EAAItC,EAAI,GAiBZ,OAZAY,GAAK,OACLC,GAAK,IACLyB,GAAK,QAEL1B,EAAIA,EAAI,QAAW1M,KAAKC,IAAIyM,EAAG,EAAI,GAAM,MAAQA,EAAM,GAAK,IAC5DC,EAAIA,EAAI,QAAW3M,KAAKC,IAAI0M,EAAG,EAAI,GAAM,MAAQA,EAAM,GAAK,IAC5DyB,EAAIA,EAAI,QAAWpO,KAAKC,IAAImO,EAAG,EAAI,GAAM,MAAQA,EAAM,GAAK,IAE5DtB,EAAK,IAAMH,EAAK,GAChB0B,EAAI,KAAO3B,EAAIC,GACfM,EAAI,KAAON,EAAIyB,GAER,CAACtB,EAAGuB,EAAGpB,IAGf3B,EAAQS,IAAID,IAAM,SAAUC,GAC3B,IAGIW,EACAC,EACAyB,EALAtB,EAAIf,EAAI,GACRsC,EAAItC,EAAI,GACRkB,EAAIlB,EAAI,GAKZY,GAAKG,EAAI,IAAM,IACfJ,EAAI2B,EAAI,IAAM1B,EACdyB,EAAIzB,EAAIM,EAAI,IAEZ,IAAIsC,EAAKvP,KAAKC,IAAI0M,EAAG,GACjB6C,EAAKxP,KAAKC,IAAIyM,EAAG,GACjB+C,EAAKzP,KAAKC,IAAImO,EAAG,GASrB,OARAzB,EAAI4C,EAAK,QAAWA,GAAM5C,EAAI,GAAK,KAAO,MAC1CD,EAAI8C,EAAK,QAAWA,GAAM9C,EAAI,GAAK,KAAO,MAC1C0B,EAAIqB,EAAK,QAAWA,GAAMrB,EAAI,GAAK,KAAO,MAE1C1B,GAAK,OACLC,GAAK,IACLyB,GAAK,QAEE,CAAC1B,EAAGC,EAAGyB,IAGf9C,EAAQS,IAAIC,IAAM,SAAUD,GAC3B,IAGI2D,EACA9C,EACAe,EALAb,EAAIf,EAAI,GACRsC,EAAItC,EAAI,GACRkB,EAAIlB,EAAI,GAcZ,OATA2D,EAAK1P,KAAK2P,MAAM1C,EAAGoB,GACnBzB,EAAS,IAAL8C,EAAW,EAAI1P,KAAK4P,GAEpBhD,EAAI,IACPA,GAAK,KAGNe,EAAI3N,KAAK6P,KAAKxB,EAAIA,EAAIpB,EAAIA,GAEnB,CAACH,EAAGa,EAAGf,IAGftB,EAAQU,IAAID,IAAM,SAAUC,GAC3B,IAGIqC,EACApB,EACAyC,EALA5C,EAAId,EAAI,GACR2B,EAAI3B,EAAI,GACRY,EAAIZ,EAAI,GASZ,OAJA0D,EAAK9C,EAAI,IAAM,EAAI5M,KAAK4P,GACxBvB,EAAIV,EAAI3N,KAAK8P,IAAIJ,GACjBzC,EAAIU,EAAI3N,KAAK+P,IAAIL,GAEV,CAAC5C,EAAGuB,EAAGpB,IAGf3B,EAAQC,IAAIY,OAAS,SAAU6D,GAC9B,IAAIjD,EAAIiD,EAAK,GACThD,EAAIgD,EAAK,GACT/C,EAAI+C,EAAK,GACTvf,EAAQ,KAAKsX,UAAYA,UAAU,GAAKuD,EAAQC,IAAII,IAAIqE,GAAM,GAIlE,GAFAvf,EAAQuP,KAAKiQ,MAAMxf,EAAQ,IAEb,IAAVA,EACH,OAAO,GAGR,IAAIyf,EAAO,IACNlQ,KAAKiQ,MAAMhD,EAAI,MAAQ,EACxBjN,KAAKiQ,MAAMjD,EAAI,MAAQ,EACxBhN,KAAKiQ,MAAMlD,EAAI,MAMlB,OAJc,IAAVtc,IACHyf,GAAQ,IAGFA,GAGR5E,EAAQK,IAAIQ,OAAS,SAAU6D,GAG9B,OAAO1E,EAAQC,IAAIY,OAAOb,EAAQK,IAAIJ,IAAIyE,GAAOA,EAAK,KAGvD1E,EAAQC,IAAIa,QAAU,SAAU4D,GAC/B,IAAIjD,EAAIiD,EAAK,GACThD,EAAIgD,EAAK,GACT/C,EAAI+C,EAAK,GAIb,GAAIjD,IAAMC,GAAKA,IAAMC,EACpB,OAAIF,EAAI,EACA,GAGJA,EAAI,IACA,IAGD/M,KAAKiQ,OAAQlD,EAAI,GAAK,IAAO,IAAM,IAG3C,IAAImD,EAAO,GACP,GAAKlQ,KAAKiQ,MAAMlD,EAAI,IAAM,GAC1B,EAAI/M,KAAKiQ,MAAMjD,EAAI,IAAM,GAC1BhN,KAAKiQ,MAAMhD,EAAI,IAAM,GAExB,OAAOiD,GAGR5E,EAAQa,OAAOZ,IAAM,SAAUyE,GAC9B,IAAIG,EAAQH,EAAO,GAGnB,GAAc,IAAVG,GAAyB,IAAVA,EAOlB,OANIH,EAAO,KACVG,GAAS,KAGVA,EAAQA,EAAQ,KAAO,IAEhB,CAACA,EAAOA,EAAOA,GAGvB,IAAIC,EAA6B,IAAL,KAAbJ,EAAO,KAClBjD,GAAc,EAARoD,GAAaC,EAAQ,IAC3BpD,GAAOmD,GAAS,EAAK,GAAKC,EAAQ,IAClCnD,GAAOkD,GAAS,EAAK,GAAKC,EAAQ,IAEtC,MAAO,CAACrD,EAAGC,EAAGC,IAGf3B,EAAQc,QAAQb,IAAM,SAAUyE,GAE/B,GAAIA,GAAQ,IAAK,CAChB,IAAIrC,EAAmB,IAAdqC,EAAO,KAAY,EAC5B,MAAO,CAACrC,EAAGA,EAAGA,GAKf,IAAI0C,EAFJL,GAAQ,GAGR,IAAIjD,EAAI/M,KAAKD,MAAMiQ,EAAO,IAAM,EAAI,IAChChD,EAAIhN,KAAKD,OAAOsQ,EAAML,EAAO,IAAM,GAAK,EAAI,IAC5C/C,EAAKoD,EAAM,EAAK,EAAI,IAExB,MAAO,CAACtD,EAAGC,EAAGC,IAGf3B,EAAQC,IAAIU,IAAM,SAAU+D,GAC3B,IAAIM,IAAkC,IAAtBtQ,KAAKiQ,MAAMD,EAAK,MAAe,MACpB,IAAtBhQ,KAAKiQ,MAAMD,EAAK,MAAe,IACV,IAAtBhQ,KAAKiQ,MAAMD,EAAK,KAEhBtL,EAAS4L,EAAQ/M,SAAS,IAAIgN,cAClC,MAAO,SAASC,UAAU9L,EAAOlK,QAAUkK,GAG5C4G,EAAQW,IAAIV,IAAM,SAAUyE,GAC3B,IAAIS,EAAQT,EAAKzM,SAAS,IAAIkN,MAAM,4BACpC,IAAKA,EACJ,MAAO,CAAC,EAAG,EAAG,GAGf,IAAIC,EAAcD,EAAM,GAEA,IAApBA,EAAM,GAAGjW,SACZkW,EAAcA,EAAYxO,MAAM,IAAI/P,KAAI,SAAUyQ,GACjD,OAAOA,EAAOA,KACZU,KAAK,KAGT,IAAIgN,EAAUpf,SAASwf,EAAa,IAChC3D,EAAKuD,GAAW,GAAM,IACtBtD,EAAKsD,GAAW,EAAK,IACrBrD,EAAc,IAAVqD,EAER,MAAO,CAACvD,EAAGC,EAAGC,IAGf3B,EAAQC,IAAIc,IAAM,SAAUd,GAC3B,IAMIoF,EACAC,EAPA7D,EAAIxB,EAAI,GAAK,IACbyB,EAAIzB,EAAI,GAAK,IACb0B,EAAI1B,EAAI,GAAK,IACb4B,EAAMnN,KAAKmN,IAAInN,KAAKmN,IAAIJ,EAAGC,GAAIC,GAC/BC,EAAMlN,KAAKkN,IAAIlN,KAAKkN,IAAIH,EAAGC,GAAIC,GAC/B4D,EAAU1D,EAAMD,EAyBpB,OApBCyD,EADGE,EAAS,EACA3D,GAAO,EAAI2D,GAEX,EAIZD,EADGC,GAAU,EACP,EAEH1D,IAAQJ,GACHC,EAAIC,GAAK4D,EAAU,EAExB1D,IAAQH,EACL,GAAKC,EAAIF,GAAK8D,EAEd,GAAK9D,EAAIC,GAAK6D,EAAS,EAG9BD,GAAO,EACPA,GAAO,EAEA,CAAO,IAANA,EAAoB,IAATC,EAA0B,IAAZF,IAGlCrF,EAAQI,IAAIW,IAAM,SAAUX,GAC3B,IAAImB,EAAInB,EAAI,GAAK,IACboB,EAAIpB,EAAI,GAAK,IACbiC,EAAI,EACJmB,EAAI,EAYR,OATCnB,EADGb,EAAI,GACH,EAAMD,EAAIC,EAEV,EAAMD,GAAK,EAAMC,GAGlBa,EAAI,IACPmB,GAAKhC,EAAI,GAAMa,IAAM,EAAMA,IAGrB,CAACjC,EAAI,GAAQ,IAAJiC,EAAa,IAAJmB,IAG1BxD,EAAQK,IAAIU,IAAM,SAAUV,GAC3B,IAAIkB,EAAIlB,EAAI,GAAK,IACb6B,EAAI7B,EAAI,GAAK,IAEbgC,EAAId,EAAIW,EACRsB,EAAI,EAMR,OAJInB,EAAI,IACPmB,GAAKtB,EAAIG,IAAM,EAAIA,IAGb,CAAChC,EAAI,GAAQ,IAAJgC,EAAa,IAAJmB,IAG1BxD,EAAQe,IAAId,IAAM,SAAUc,GAC3B,IAAIO,EAAIP,EAAI,GAAK,IACbsB,EAAItB,EAAI,GAAK,IACbW,EAAIX,EAAI,GAAK,IAEjB,GAAU,IAANsB,EACH,MAAO,CAAK,IAAJX,EAAa,IAAJA,EAAa,IAAJA,GAG3B,IAAI8D,EAAO,CAAC,EAAG,EAAG,GACdjC,EAAMjC,EAAI,EAAK,EACfY,EAAIqB,EAAK,EACTjB,EAAI,EAAIJ,EACRuD,EAAK,EAET,OAAQ/Q,KAAKD,MAAM8O,IAClB,KAAK,EACJiC,EAAK,GAAK,EAAGA,EAAK,GAAKtD,EAAGsD,EAAK,GAAK,EAAG,MACxC,KAAK,EACJA,EAAK,GAAKlD,EAAGkD,EAAK,GAAK,EAAGA,EAAK,GAAK,EAAG,MACxC,KAAK,EACJA,EAAK,GAAK,EAAGA,EAAK,GAAK,EAAGA,EAAK,GAAKtD,EAAG,MACxC,KAAK,EACJsD,EAAK,GAAK,EAAGA,EAAK,GAAKlD,EAAGkD,EAAK,GAAK,EAAG,MACxC,KAAK,EACJA,EAAK,GAAKtD,EAAGsD,EAAK,GAAK,EAAGA,EAAK,GAAK,EAAG,MACxC,QACCA,EAAK,GAAK,EAAGA,EAAK,GAAK,EAAGA,EAAK,GAAKlD,EAKtC,OAFAmD,GAAM,EAAMpD,GAAKX,EAEV,CACe,KAApBW,EAAImD,EAAK,GAAKC,GACM,KAApBpD,EAAImD,EAAK,GAAKC,GACM,KAApBpD,EAAImD,EAAK,GAAKC,KAIjBzF,EAAQe,IAAIV,IAAM,SAAUU,GAC3B,IAAIsB,EAAItB,EAAI,GAAK,IACbW,EAAIX,EAAI,GAAK,IAEbmB,EAAIG,EAAIX,GAAK,EAAMW,GACnBmB,EAAI,EAMR,OAJItB,EAAI,IACPsB,EAAInB,EAAIH,GAGF,CAACnB,EAAI,GAAQ,IAAJyC,EAAa,IAAJtB,IAG1BlC,EAAQe,IAAIX,IAAM,SAAUW,GAC3B,IAAIsB,EAAItB,EAAI,GAAK,IACbW,EAAIX,EAAI,GAAK,IAEbS,EAAIE,GAAK,EAAMW,GAAK,GAAMA,EAC1Bd,EAAI,EASR,OAPIC,EAAI,GAAOA,EAAI,GAClBD,EAAIc,GAAK,EAAIb,GAEVA,GAAK,IAAOA,EAAI,IACnBD,EAAIc,GAAK,GAAK,EAAIb,KAGZ,CAACT,EAAI,GAAQ,IAAJQ,EAAa,IAAJC,IAG1BxB,EAAQe,IAAIT,IAAM,SAAUS,GAC3B,IAAIsB,EAAItB,EAAI,GAAK,IACbW,EAAIX,EAAI,GAAK,IACbmB,EAAIG,EAAIX,GAAK,EAAMW,GACvB,MAAO,CAACtB,EAAI,GAAc,KAATmB,EAAIG,GAAoB,KAAT,EAAIH,KAGrClC,EAAQM,IAAIS,IAAM,SAAUT,GAC3B,IAAIgC,EAAIhC,EAAI,GAAK,IACbqB,EAAIrB,EAAI,GAAK,IACb4B,EAAI,EAAIP,EACRU,EAAIH,EAAII,EACRZ,EAAI,EAMR,OAJIW,EAAI,IACPX,GAAKQ,EAAIG,IAAM,EAAIA,IAGb,CAAC/B,EAAI,GAAQ,IAAJ+B,EAAa,IAAJX,IAG1B1B,EAAQgB,MAAMf,IAAM,SAAUe,GAC7B,MAAO,CAAEA,EAAM,GAAK,MAAS,IAAMA,EAAM,GAAK,MAAS,IAAMA,EAAM,GAAK,MAAS,MAGlFhB,EAAQC,IAAIe,MAAQ,SAAUf,GAC7B,MAAO,CAAEA,EAAI,GAAK,IAAO,MAAQA,EAAI,GAAK,IAAO,MAAQA,EAAI,GAAK,IAAO,QAG1ED,EAAQiB,KAAKhB,IAAM,SAAUyE,GAC5B,MAAO,CAACA,EAAK,GAAK,IAAM,IAAKA,EAAK,GAAK,IAAM,IAAKA,EAAK,GAAK,IAAM,MAGnE1E,EAAQiB,KAAKb,IAAMJ,EAAQiB,KAAKZ,IAAM,SAAUqE,GAC/C,MAAO,CAAC,EAAG,EAAGA,EAAK,KAGpB1E,EAAQiB,KAAKX,IAAM,SAAUW,GAC5B,MAAO,CAAC,EAAG,IAAKA,EAAK,KAGtBjB,EAAQiB,KAAKV,KAAO,SAAUU,GAC7B,MAAO,CAAC,EAAG,EAAG,EAAGA,EAAK,KAGvBjB,EAAQiB,KAAKR,IAAM,SAAUQ,GAC5B,MAAO,CAACA,EAAK,GAAI,EAAG,IAGrBjB,EAAQiB,KAAKN,IAAM,SAAUM,GAC5B,IAAIkC,EAAwC,IAAlCzO,KAAKiQ,MAAM1D,EAAK,GAAK,IAAM,KACjC+D,GAAW7B,GAAO,KAAOA,GAAO,GAAKA,EAErC/J,EAAS4L,EAAQ/M,SAAS,IAAIgN,cAClC,MAAO,SAASC,UAAU9L,EAAOlK,QAAUkK,GAG5C4G,EAAQC,IAAIgB,KAAO,SAAUhB,GAC5B,IAAIkD,GAAOlD,EAAI,GAAKA,EAAI,GAAKA,EAAI,IAAM,EACvC,MAAO,CAACkD,EAAM,IAAM,SAGDrD,EAAYG,IACZH,EAAYM,IACZN,EAAYO,IACZP,EAAYQ,IACZR,EAAYS,KACZT,EAAYU,IACZV,EAAYW,IACZX,EAAYY,IACZZ,EAAYa,IACXb,EAAYc,QACZd,EAAYe,OACZf,EAAYgB,QACZhB,EAAYiB,IACZjB,EAAYkB,MACZlB,EAAYmB,KAajC,SAASyE,IAKR,IAJA,IAAIC,EAAQ,GAERC,EAAShe,OAAOie,KAAK/F,GAEhBgG,EAAMF,EAAO1W,OAAQgN,EAAI,EAAGA,EAAI4J,EAAK5J,IAC7CyJ,EAAMC,EAAO1J,IAAM,CAGlB2G,UAAW,EACXkD,OAAQ,MAIV,OAAOJ,EAIR,SAASK,EAAUC,GAClB,IAAIN,EAAQD,IACRQ,EAAQ,CAACD,GAEbN,EAAMM,GAAWpD,SAAW,EAE5B,MAAOqD,EAAMhX,OAIZ,IAHA,IAAIiX,EAAUD,EAAMrP,MAChBuP,EAAYxe,OAAOie,KAAK/F,EAAYqG,IAE/BL,EAAMM,EAAUlX,OAAQgN,EAAI,EAAGA,EAAI4J,EAAK5J,IAAK,CACrD,IAAImK,EAAWD,EAAUlK,GACrBoK,EAAOX,EAAMU,IAEM,IAAnBC,EAAKzD,WACRyD,EAAKzD,SAAW8C,EAAMQ,GAAStD,SAAW,EAC1CyD,EAAKP,OAASI,EACdD,EAAMnO,QAAQsO,IAKjB,OAAOV,EAGR,SAASY,EAAKhY,EAAMC,GACnB,OAAO,SAAUkW,GAChB,OAAOlW,EAAGD,EAAKmW,KAIjB,SAAS8B,EAAeC,EAASd,GAChC,IAAIjM,EAAO,CAACiM,EAAMc,GAASV,OAAQU,GAC/B/hB,EAAKob,EAAY6F,EAAMc,GAASV,QAAQU,GAExCC,EAAMf,EAAMc,GAASV,OACzB,MAAOJ,EAAMe,GAAKX,OACjBrM,EAAK3B,QAAQ4N,EAAMe,GAAKX,QACxBrhB,EAAK6hB,EAAKzG,EAAY6F,EAAMe,GAAKX,QAAQW,GAAMhiB,GAC/CgiB,EAAMf,EAAMe,GAAKX,OAIlB,OADArhB,EAAGiiB,WAAajN,EACThV,EAGR,IAAIkiB,EAAQ,SAAUX,GAKrB,IAJA,IAAIN,EAAQK,EAAUC,GAClBU,EAAa,GAEbf,EAAShe,OAAOie,KAAKF,GAChBG,EAAMF,EAAO1W,OAAQgN,EAAI,EAAGA,EAAI4J,EAAK5J,IAAK,CAClD,IAAIuK,EAAUb,EAAO1J,GACjBoK,EAAOX,EAAMc,GAEG,OAAhBH,EAAKP,SAKTY,EAAWF,GAAWD,EAAeC,EAASd,IAG/C,OAAOgB,GAGJ3G,EAAU,GAEV4F,EAAShe,OAAOie,KAAK/F,GAEzB,SAAS+G,EAAQniB,GAChB,IAAIoiB,EAAY,SAAUpC,GACzB,YAAa/c,IAAT+c,GAA+B,OAATA,EAClBA,GAGJjI,UAAUvN,OAAS,IACtBwV,EAAOlU,MAAMyN,UAAUnP,MAAMkO,KAAKP,YAG5B/X,EAAGggB,KAQX,MAJI,eAAgBhgB,IACnBoiB,EAAUH,WAAajiB,EAAGiiB,YAGpBG,EAGR,SAASC,EAAYriB,GACpB,IAAIoiB,EAAY,SAAUpC,GACzB,QAAa/c,IAAT+c,GAA+B,OAATA,EACzB,OAAOA,EAGJjI,UAAUvN,OAAS,IACtBwV,EAAOlU,MAAMyN,UAAUnP,MAAMkO,KAAKP,YAGnC,IAAIlU,EAAS7D,EAAGggB,GAKhB,GAAsB,kBAAXnc,EACV,IAAK,IAAIud,EAAMvd,EAAO2G,OAAQgN,EAAI,EAAGA,EAAI4J,EAAK5J,IAC7C3T,EAAO2T,GAAKxH,KAAKiQ,MAAMpc,EAAO2T,IAIhC,OAAO3T,GAQR,MAJI,eAAgB7D,IACnBoiB,EAAUH,WAAajiB,EAAGiiB,YAGpBG,EAGRlB,EAAOnd,SAAQ,SAAUwd,GACxBjG,EAAQiG,GAAa,GAErBre,OAAOsZ,eAAelB,EAAQiG,GAAY,WAAY,CAAC9gB,MAAO2a,EAAYmG,GAAW/F,WACrFtY,OAAOsZ,eAAelB,EAAQiG,GAAY,SAAU,CAAC9gB,MAAO2a,EAAYmG,GAAW9F,SAEnF,IAAI6G,EAASJ,EAAMX,GACfgB,EAAcrf,OAAOie,KAAKmB,GAE9BC,EAAYxe,SAAQ,SAAUge,GAC7B,IAAI/hB,EAAKsiB,EAAOP,GAEhBzG,EAAQiG,GAAWQ,GAAWM,EAAYriB,GAC1Csb,EAAQiG,GAAWQ,GAASS,IAAML,EAAQniB,SAI5C,IAAIyiB,EAAenH,EAEfoH,EAAc,CACjB,UAAa,CAAC,IAAK,IAAK,KACxB,aAAgB,CAAC,IAAK,IAAK,KAC3B,KAAQ,CAAC,EAAG,IAAK,KACjB,WAAc,CAAC,IAAK,IAAK,KACzB,MAAS,CAAC,IAAK,IAAK,KACpB,MAAS,CAAC,IAAK,IAAK,KACpB,OAAU,CAAC,IAAK,IAAK,KACrB,MAAS,CAAC,EAAG,EAAG,GAChB,eAAkB,CAAC,IAAK,IAAK,KAC7B,KAAQ,CAAC,EAAG,EAAG,KACf,WAAc,CAAC,IAAK,GAAI,KACxB,MAAS,CAAC,IAAK,GAAI,IACnB,UAAa,CAAC,IAAK,IAAK,KACxB,UAAa,CAAC,GAAI,IAAK,KACvB,WAAc,CAAC,IAAK,IAAK,GACzB,UAAa,CAAC,IAAK,IAAK,IACxB,MAAS,CAAC,IAAK,IAAK,IACpB,eAAkB,CAAC,IAAK,IAAK,KAC7B,SAAY,CAAC,IAAK,IAAK,KACvB,QAAW,CAAC,IAAK,GAAI,IACrB,KAAQ,CAAC,EAAG,IAAK,KACjB,SAAY,CAAC,EAAG,EAAG,KACnB,SAAY,CAAC,EAAG,IAAK,KACrB,cAAiB,CAAC,IAAK,IAAK,IAC5B,SAAY,CAAC,IAAK,IAAK,KACvB,UAAa,CAAC,EAAG,IAAK,GACtB,SAAY,CAAC,IAAK,IAAK,KACvB,UAAa,CAAC,IAAK,IAAK,KACxB,YAAe,CAAC,IAAK,EAAG,KACxB,eAAkB,CAAC,GAAI,IAAK,IAC5B,WAAc,CAAC,IAAK,IAAK,GACzB,WAAc,CAAC,IAAK,GAAI,KACxB,QAAW,CAAC,IAAK,EAAG,GACpB,WAAc,CAAC,IAAK,IAAK,KACzB,aAAgB,CAAC,IAAK,IAAK,KAC3B,cAAiB,CAAC,GAAI,GAAI,KAC1B,cAAiB,CAAC,GAAI,GAAI,IAC1B,cAAiB,CAAC,GAAI,GAAI,IAC1B,cAAiB,CAAC,EAAG,IAAK,KAC1B,WAAc,CAAC,IAAK,EAAG,KACvB,SAAY,CAAC,IAAK,GAAI,KACtB,YAAe,CAAC,EAAG,IAAK,KACxB,QAAW,CAAC,IAAK,IAAK,KACtB,QAAW,CAAC,IAAK,IAAK,KACtB,WAAc,CAAC,GAAI,IAAK,KACxB,UAAa,CAAC,IAAK,GAAI,IACvB,YAAe,CAAC,IAAK,IAAK,KAC1B,YAAe,CAAC,GAAI,IAAK,IACzB,QAAW,CAAC,IAAK,EAAG,KACpB,UAAa,CAAC,IAAK,IAAK,KACxB,WAAc,CAAC,IAAK,IAAK,KACzB,KAAQ,CAAC,IAAK,IAAK,GACnB,UAAa,CAAC,IAAK,IAAK,IACxB,KAAQ,CAAC,IAAK,IAAK,KACnB,MAAS,CAAC,EAAG,IAAK,GAClB,YAAe,CAAC,IAAK,IAAK,IAC1B,KAAQ,CAAC,IAAK,IAAK,KACnB,SAAY,CAAC,IAAK,IAAK,KACvB,QAAW,CAAC,IAAK,IAAK,KACtB,UAAa,CAAC,IAAK,GAAI,IACvB,OAAU,CAAC,GAAI,EAAG,KAClB,MAAS,CAAC,IAAK,IAAK,KACpB,MAAS,CAAC,IAAK,IAAK,KACpB,SAAY,CAAC,IAAK,IAAK,KACvB,cAAiB,CAAC,IAAK,IAAK,KAC5B,UAAa,CAAC,IAAK,IAAK,GACxB,aAAgB,CAAC,IAAK,IAAK,KAC3B,UAAa,CAAC,IAAK,IAAK,KACxB,WAAc,CAAC,IAAK,IAAK,KACzB,UAAa,CAAC,IAAK,IAAK,KACxB,qBAAwB,CAAC,IAAK,IAAK,KACnC,UAAa,CAAC,IAAK,IAAK,KACxB,WAAc,CAAC,IAAK,IAAK,KACzB,UAAa,CAAC,IAAK,IAAK,KACxB,UAAa,CAAC,IAAK,IAAK,KACxB,YAAe,CAAC,IAAK,IAAK,KAC1B,cAAiB,CAAC,GAAI,IAAK,KAC3B,aAAgB,CAAC,IAAK,IAAK,KAC3B,eAAkB,CAAC,IAAK,IAAK,KAC7B,eAAkB,CAAC,IAAK,IAAK,KAC7B,eAAkB,CAAC,IAAK,IAAK,KAC7B,YAAe,CAAC,IAAK,IAAK,KAC1B,KAAQ,CAAC,EAAG,IAAK,GACjB,UAAa,CAAC,GAAI,IAAK,IACvB,MAAS,CAAC,IAAK,IAAK,KACpB,QAAW,CAAC,IAAK,EAAG,KACpB,OAAU,CAAC,IAAK,EAAG,GACnB,iBAAoB,CAAC,IAAK,IAAK,KAC/B,WAAc,CAAC,EAAG,EAAG,KACrB,aAAgB,CAAC,IAAK,GAAI,KAC1B,aAAgB,CAAC,IAAK,IAAK,KAC3B,eAAkB,CAAC,GAAI,IAAK,KAC5B,gBAAmB,CAAC,IAAK,IAAK,KAC9B,kBAAqB,CAAC,EAAG,IAAK,KAC9B,gBAAmB,CAAC,GAAI,IAAK,KAC7B,gBAAmB,CAAC,IAAK,GAAI,KAC7B,aAAgB,CAAC,GAAI,GAAI,KACzB,UAAa,CAAC,IAAK,IAAK,KACxB,UAAa,CAAC,IAAK,IAAK,KACxB,SAAY,CAAC,IAAK,IAAK,KACvB,YAAe,CAAC,IAAK,IAAK,KAC1B,KAAQ,CAAC,EAAG,EAAG,KACf,QAAW,CAAC,IAAK,IAAK,KACtB,MAAS,CAAC,IAAK,IAAK,GACpB,UAAa,CAAC,IAAK,IAAK,IACxB,OAAU,CAAC,IAAK,IAAK,GACrB,UAAa,CAAC,IAAK,GAAI,GACvB,OAAU,CAAC,IAAK,IAAK,KACrB,cAAiB,CAAC,IAAK,IAAK,KAC5B,UAAa,CAAC,IAAK,IAAK,KACxB,cAAiB,CAAC,IAAK,IAAK,KAC5B,cAAiB,CAAC,IAAK,IAAK,KAC5B,WAAc,CAAC,IAAK,IAAK,KACzB,UAAa,CAAC,IAAK,IAAK,KACxB,KAAQ,CAAC,IAAK,IAAK,IACnB,KAAQ,CAAC,IAAK,IAAK,KACnB,KAAQ,CAAC,IAAK,IAAK,KACnB,WAAc,CAAC,IAAK,IAAK,KACzB,OAAU,CAAC,IAAK,EAAG,KACnB,cAAiB,CAAC,IAAK,GAAI,KAC3B,IAAO,CAAC,IAAK,EAAG,GAChB,UAAa,CAAC,IAAK,IAAK,KACxB,UAAa,CAAC,GAAI,IAAK,KACvB,YAAe,CAAC,IAAK,GAAI,IACzB,OAAU,CAAC,IAAK,IAAK,KACrB,WAAc,CAAC,IAAK,IAAK,IACzB,SAAY,CAAC,GAAI,IAAK,IACtB,SAAY,CAAC,IAAK,IAAK,KACvB,OAAU,CAAC,IAAK,GAAI,IACpB,OAAU,CAAC,IAAK,IAAK,KACrB,QAAW,CAAC,IAAK,IAAK,KACtB,UAAa,CAAC,IAAK,GAAI,KACvB,UAAa,CAAC,IAAK,IAAK,KACxB,UAAa,CAAC,IAAK,IAAK,KACxB,KAAQ,CAAC,IAAK,IAAK,KACnB,YAAe,CAAC,EAAG,IAAK,KACxB,UAAa,CAAC,GAAI,IAAK,KACvB,IAAO,CAAC,IAAK,IAAK,KAClB,KAAQ,CAAC,EAAG,IAAK,KACjB,QAAW,CAAC,IAAK,IAAK,KACtB,OAAU,CAAC,IAAK,GAAI,IACpB,UAAa,CAAC,GAAI,IAAK,KACvB,OAAU,CAAC,IAAK,IAAK,KACrB,MAAS,CAAC,IAAK,IAAK,KACpB,MAAS,CAAC,IAAK,IAAK,KACpB,WAAc,CAAC,IAAK,IAAK,KACzB,OAAU,CAAC,IAAK,IAAK,GACrB,YAAe,CAAC,IAAK,IAAK,KAMvBhC,EAAc,CACfiC,QAASA,EACTC,QAASA,EACTC,OAAQA,EACRC,OAAQA,EACRC,OAAQA,EACRC,SAAUA,EAEVC,UAAWA,EACXC,UAAWA,EACXC,WAAYA,EACZC,cAAeA,EACfC,eAAgBA,EAChBC,UAAWA,EACXC,WAAYA,EACZC,UAAWA,EACXtH,QAASA,GAGZ,SAASyG,EAAQjO,GACd,GAAKA,EAAL,CAGA,IAAI+O,EAAQ,yBACRxH,EAAO,wCACPyH,EAAO,2FACPC,EAAM,6GACNzH,EAAU,QAEVX,EAAM,CAAC,EAAG,EAAG,GACb8C,EAAI,EACJoC,EAAQ/L,EAAO+L,MAAMgD,GACrBG,EAAW,GACf,GAAInD,EAAO,CACRA,EAAQA,EAAM,GACdmD,EAAWnD,EAAM,GACjB,IAAK,IAAIjJ,EAAI,EAAGA,EAAI+D,EAAI/Q,OAAQgN,IAC7B+D,EAAI/D,GAAKtW,SAASuf,EAAMjJ,GAAKiJ,EAAMjJ,GAAI,IAEtCoM,IACDvF,EAAIrO,KAAKiQ,MAAO/e,SAAS0iB,EAAWA,EAAU,IAAM,IAAO,KAAO,UAGnE,GAAInD,EAAQ/L,EAAO+L,MAAMxE,GAAM,CACjC2H,EAAWnD,EAAM,GACjBA,EAAQA,EAAM,GACd,IAASjJ,EAAI,EAAGA,EAAI+D,EAAI/Q,OAAQgN,IAC7B+D,EAAI/D,GAAKtW,SAASuf,EAAMrW,MAAU,EAAJoN,EAAW,EAAJA,EAAQ,GAAI,IAEhDoM,IACDvF,EAAIrO,KAAKiQ,MAAO/e,SAAS0iB,EAAU,IAAM,IAAO,KAAO,UAGxD,GAAInD,EAAQ/L,EAAO+L,MAAMiD,GAAO,CAClC,IAASlM,EAAI,EAAGA,EAAI+D,EAAI/Q,OAAQgN,IAC7B+D,EAAI/D,GAAKtW,SAASuf,EAAMjJ,EAAI,IAE/B6G,EAAIwF,WAAWpD,EAAM,SAEnB,GAAIA,EAAQ/L,EAAO+L,MAAMkD,GAAM,CACjC,IAASnM,EAAI,EAAGA,EAAI+D,EAAI/Q,OAAQgN,IAC7B+D,EAAI/D,GAAKxH,KAAKiQ,MAAiC,KAA3B4D,WAAWpD,EAAMjJ,EAAI,KAE5C6G,EAAIwF,WAAWpD,EAAM,SAEnB,GAAIA,EAAQ/L,EAAO+L,MAAMvE,GAAU,CACrC,GAAgB,eAAZuE,EAAM,GACP,MAAO,CAAC,EAAG,EAAG,EAAG,GAGpB,GADAlF,EAAMmH,EAAYjC,EAAM,KACnBlF,EACF,OAIN,IAAS/D,EAAI,EAAGA,EAAI+D,EAAI/Q,OAAQgN,IAC7B+D,EAAI/D,GAAKsM,EAAMvI,EAAI/D,GAAI,EAAG,KAS7B,OAHG6G,EAJEA,GAAU,GAALA,EAIHyF,EAAMzF,EAAG,EAAG,GAHZ,EAKP9C,EAAI,GAAK8C,EACF9C,GAGV,SAASqH,EAAQlO,GACd,GAAKA,EAAL,CAGA,IAAIgH,EAAM,2GACN+E,EAAQ/L,EAAO+L,MAAM/E,GACzB,GAAI+E,EAAO,CACR,IAAIsD,EAAQF,WAAWpD,EAAM,IACzB7D,EAAIkH,EAAM5iB,SAASuf,EAAM,IAAK,EAAG,KACjC5D,EAAIiH,EAAMD,WAAWpD,EAAM,IAAK,EAAG,KACnC3D,EAAIgH,EAAMD,WAAWpD,EAAM,IAAK,EAAG,KACnCpC,EAAIyF,EAAME,MAAMD,GAAS,EAAIA,EAAO,EAAG,GAC3C,MAAO,CAACnH,EAAGC,EAAGC,EAAGuB,KAIvB,SAAS0E,EAAOrO,GACb,GAAKA,EAAL,CAGA,IAAIkH,EAAM,yGACN6E,EAAQ/L,EAAO+L,MAAM7E,GACzB,GAAI6E,EAAO,CACV,IAAIsD,EAAQF,WAAWpD,EAAM,IACvB7D,EAAIkH,EAAM5iB,SAASuf,EAAM,IAAK,EAAG,KACjC7C,EAAIkG,EAAMD,WAAWpD,EAAM,IAAK,EAAG,KACnCxD,EAAI6G,EAAMD,WAAWpD,EAAM,IAAK,EAAG,KACnCpC,EAAIyF,EAAME,MAAMD,GAAS,EAAIA,EAAO,EAAG,GAC3C,MAAO,CAACnH,EAAGgB,EAAGX,EAAGoB,KAIvB,SAASwE,EAAOnO,GACb,IAAIgP,EAAOf,EAAQjO,GACnB,OAAOgP,GAAQA,EAAKtZ,MAAM,EAAG,GAGhC,SAAS0Y,EAAOpO,GACd,IAAIuP,EAAOrB,EAAQlO,GACnB,OAAOuP,GAAQA,EAAK7Z,MAAM,EAAG,GAG/B,SAAS4Y,EAAStO,GACf,IAAIiG,EAAOgI,EAAQjO,GACnB,OAAIiG,IAGKA,EAAOiI,EAAQlO,MAGfiG,EAAOoI,EAAOrO,IALbiG,EAAK,QAKV,EAMR,SAASsI,EAAUS,EAAMrF,GAClBA,OAAWpb,IAANob,GAAmC,IAAhBqF,EAAKlZ,OAAgB6T,EAAIqF,EAAK,GAC1D,MAAO,IAAMQ,EAAUR,EAAK,IACfQ,EAAUR,EAAK,IACfQ,EAAUR,EAAK,KAEbrF,GAAK,GAAKA,EAAI,EACb6F,EAAUlU,KAAKiQ,MAAU,IAAJ5B,IACrB,IAInB,SAAS6E,EAAUQ,EAAMK,GACtB,OAAIA,EAAQ,GAAML,EAAK,IAAMA,EAAK,GAAK,EAC7BP,EAAWO,EAAMK,GAEpB,OAASL,EAAK,GAAK,KAAOA,EAAK,GAAK,KAAOA,EAAK,GAAK,IAG/D,SAASP,EAAWO,EAAMK,GAIvB,YAHc9gB,IAAV8gB,IACDA,OAAqB9gB,IAAZygB,EAAK,GAAmBA,EAAK,GAAK,GAEvC,QAAUA,EAAK,GAAK,KAAOA,EAAK,GAAK,KAAOA,EAAK,GAC9C,KAAOK,EAAQ,IAG5B,SAASX,EAAcM,EAAMK,GAC1B,GAAIA,EAAQ,GAAML,EAAK,IAAMA,EAAK,GAAK,EACpC,OAAOL,EAAeK,EAAMK,GAE/B,IAAIhH,EAAI/M,KAAKiQ,MAAMyD,EAAK,GAAG,IAAM,KAC7B1G,EAAIhN,KAAKiQ,MAAMyD,EAAK,GAAG,IAAM,KAC7BzG,EAAIjN,KAAKiQ,MAAMyD,EAAK,GAAG,IAAM,KAEjC,MAAO,OAAS3G,EAAI,MAAQC,EAAI,MAAQC,EAAI,KAG/C,SAASoG,EAAeK,EAAMK,GAC3B,IAAIhH,EAAI/M,KAAKiQ,MAAMyD,EAAK,GAAG,IAAM,KAC7B1G,EAAIhN,KAAKiQ,MAAMyD,EAAK,GAAG,IAAM,KAC7BzG,EAAIjN,KAAKiQ,MAAMyD,EAAK,GAAG,IAAM,KACjC,MAAO,QAAU3G,EAAI,MAAQC,EAAI,MAAQC,EAAI,OAAS8G,GAASL,EAAK,IAAM,GAAK,IAGlF,SAASJ,EAAUW,EAAMF,GACtB,OAAIA,EAAQ,GAAME,EAAK,IAAMA,EAAK,GAAK,EAC7BV,EAAWU,EAAMF,GAEpB,OAASE,EAAK,GAAK,KAAOA,EAAK,GAAK,MAAQA,EAAK,GAAK,KAGhE,SAASV,EAAWU,EAAMF,GAIvB,YAHc9gB,IAAV8gB,IACDA,OAAqB9gB,IAAZghB,EAAK,GAAmBA,EAAK,GAAK,GAEvC,QAAUA,EAAK,GAAK,KAAOA,EAAK,GAAK,MAAQA,EAAK,GAAK,MACpDF,EAAQ,IAKrB,SAASP,EAAU5H,EAAKmI,GAIrB,YAHc9gB,IAAV8gB,IACDA,OAAoB9gB,IAAX2Y,EAAI,GAAmBA,EAAI,GAAK,GAErC,OAASA,EAAI,GAAK,KAAOA,EAAI,GAAK,MAAQA,EAAI,GAAK,UACrC3Y,IAAV8gB,GAAiC,IAAVA,EAAc,KAAOA,EAAQ,IAAM,IAGxE,SAAS7H,EAAQX,GACf,OAAO4I,EAAa5I,EAAInR,MAAM,EAAG,IAInC,SAAS0Z,EAAMM,EAAKlH,EAAKC,GACtB,OAAOnN,KAAKkN,IAAIlN,KAAKmN,IAAID,EAAKkH,GAAMjH,GAGvC,SAAS+G,EAAUE,GACjB,IAAIC,EAAMD,EAAI7Q,SAAS,IAAIgN,cAC3B,OAAQ8D,EAAI7Z,OAAS,EAAK,IAAM6Z,EAAMA,EAKxC,IAAIF,EAAe,GACnB,IAAK,IAAIhW,KAAQuU,EACdyB,EAAazB,EAAYvU,IAASA,EAOrC,IAAImW,EAAQ,SAAUthB,GACrB,OAAIA,aAAeshB,EACXthB,EAEFlE,gBAAgBwlB,GAItBxlB,KAAKylB,OAAQ,EACbzlB,KAAK0lB,OAAS,CACbjJ,IAAK,CAAC,EAAG,EAAG,GACZG,IAAK,CAAC,EAAG,EAAG,GACZC,IAAK,CAAC,EAAG,EAAG,GACZC,IAAK,CAAC,EAAG,EAAG,GACZC,KAAM,CAAC,EAAG,EAAG,EAAG,GAChBkI,MAAO,QAKW,kBAAR/gB,GACV2X,EAAO+F,EAAYiC,QAAQ3f,GACvB2X,EACH7b,KAAK2lB,UAAU,MAAO9J,IACZA,EAAO+F,EAAYkC,QAAQ5f,IACrClE,KAAK2lB,UAAU,MAAO9J,IACZA,EAAO+F,EAAYqC,OAAO/f,KACpClE,KAAK2lB,UAAU,MAAO9J,IAEE,kBAAR3X,IACjB2X,EAAO3X,OACQC,IAAX0X,EAAKoC,QAAgC9Z,IAAb0X,EAAK+J,IAChC5lB,KAAK2lB,UAAU,MAAO9J,QACD1X,IAAX0X,EAAKmC,QAAsC7Z,IAAnB0X,EAAKgK,UACvC7lB,KAAK2lB,UAAU,MAAO9J,QACD1X,IAAX0X,EAAK6C,QAAkCva,IAAf0X,EAAKla,MACvC3B,KAAK2lB,UAAU,MAAO9J,QACD1X,IAAX0X,EAAKiD,QAAsC3a,IAAnB0X,EAAKiK,UACvC9lB,KAAK2lB,UAAU,MAAO9J,QACD1X,IAAX0X,EAAKgD,QAAiC1a,IAAd0X,EAAKkK,MACvC/lB,KAAK2lB,UAAU,OAAQ9J,MAnCjB,IAAI2J,EAAMthB,GAclB,IAAI2X,GA0BL2J,EAAM/K,UAAY,CACjBuL,QAAS,WACR,OAAOhmB,KAAKylB,OAEbhJ,IAAK,WACJ,OAAOzc,KAAKimB,SAAS,MAAOhN,YAE7B2D,IAAK,WACJ,OAAO5c,KAAKimB,SAAS,MAAOhN,YAE7B4D,IAAK,WACJ,OAAO7c,KAAKimB,SAAS,MAAOhN,YAE7B6D,IAAK,WACJ,OAAO9c,KAAKimB,SAAS,MAAOhN,YAE7B8D,KAAM,WACL,OAAO/c,KAAKimB,SAAS,OAAQhN,YAG9BiN,SAAU,WACT,OAAOlmB,KAAK0lB,OAAOjJ,KAEpB0J,SAAU,WACT,OAAOnmB,KAAK0lB,OAAO9I,KAEpBwJ,SAAU,WACT,OAAOpmB,KAAK0lB,OAAO7I,KAEpBwJ,SAAU,WACT,IAAIX,EAAS1lB,KAAK0lB,OAClB,OAAqB,IAAjBA,EAAOT,MACHS,EAAO5I,IAAIwJ,OAAO,CAACZ,EAAOT,QAE3BS,EAAO5I,KAEfyJ,UAAW,WACV,OAAOvmB,KAAK0lB,OAAO3I,MAEpByJ,UAAW,WACV,IAAId,EAAS1lB,KAAK0lB,OAClB,OAAOA,EAAOjJ,IAAI6J,OAAO,CAACZ,EAAOT,SAElCwB,UAAW,WACV,IAAIf,EAAS1lB,KAAK0lB,OAClB,OAAOA,EAAO9I,IAAI0J,OAAO,CAACZ,EAAOT,SAElCA,MAAO,SAAUtF,GAChB,YAAYxb,IAARwb,EACI3f,KAAK0lB,OAAOT,OAEpBjlB,KAAK2lB,UAAU,QAAShG,GACjB3f,OAGR4lB,IAAK,SAAUjG,GACd,OAAO3f,KAAK0mB,WAAW,MAAO,EAAG/G,IAElCgH,MAAO,SAAUhH,GAChB,OAAO3f,KAAK0mB,WAAW,MAAO,EAAG/G,IAElCiH,KAAM,SAAUjH,GACf,OAAO3f,KAAK0mB,WAAW,MAAO,EAAG/G,IAElCmC,IAAK,SAAUnC,GAKd,OAJIA,IACHA,GAAO,IACPA,EAAMA,EAAM,EAAI,IAAMA,EAAMA,GAEtB3f,KAAK0mB,WAAW,MAAO,EAAG/G,IAElCkH,WAAY,SAAUlH,GACrB,OAAO3f,KAAK0mB,WAAW,MAAO,EAAG/G,IAElCkG,UAAW,SAAUlG,GACpB,OAAO3f,KAAK0mB,WAAW,MAAO,EAAG/G,IAElCmH,YAAa,SAAUnH,GACtB,OAAO3f,KAAK0mB,WAAW,MAAO,EAAG/G,IAElCmG,UAAW,SAAUnG,GACpB,OAAO3f,KAAK0mB,WAAW,MAAO,EAAG/G,IAElCoH,UAAW,SAAUpH,GACpB,OAAO3f,KAAK0mB,WAAW,MAAO,EAAG/G,IAElChe,MAAO,SAAUge,GAChB,OAAO3f,KAAK0mB,WAAW,MAAO,EAAG/G,IAElCoG,KAAM,SAAUpG,GACf,OAAO3f,KAAK0mB,WAAW,OAAQ,EAAG/G,IAEnCqH,QAAS,SAAUrH,GAClB,OAAO3f,KAAK0mB,WAAW,OAAQ,EAAG/G,IAEnCsH,OAAQ,SAAUtH,GACjB,OAAO3f,KAAK0mB,WAAW,OAAQ,EAAG/G,IAEnCuH,MAAO,SAAUvH,GAChB,OAAO3f,KAAK0mB,WAAW,OAAQ,EAAG/G,IAGnCwE,UAAW,WACV,OAAOvC,EAAYuC,UAAUnkB,KAAK0lB,OAAOjJ,MAE1C2H,UAAW,WACV,OAAOxC,EAAYwC,UAAUpkB,KAAK0lB,OAAOjJ,IAAKzc,KAAK0lB,OAAOT,QAE3DZ,WAAY,WACX,OAAOzC,EAAYyC,WAAWrkB,KAAK0lB,OAAOjJ,IAAKzc,KAAK0lB,OAAOT,QAE5DX,cAAe,WACd,OAAO1C,EAAY0C,cAActkB,KAAK0lB,OAAOjJ,IAAKzc,KAAK0lB,OAAOT,QAE/DT,UAAW,WACV,OAAO5C,EAAY4C,UAAUxkB,KAAK0lB,OAAO9I,IAAK5c,KAAK0lB,OAAOT,QAE3DR,WAAY,WACX,OAAO7C,EAAY6C,WAAWzkB,KAAK0lB,OAAO9I,IAAK5c,KAAK0lB,OAAOT,QAE5DP,UAAW,WACV,OAAO9C,EAAY8C,UAAU1kB,KAAK0lB,OAAO5I,IAAK9c,KAAK0lB,OAAOT,QAE3D7H,QAAS,WACR,OAAOwE,EAAYxE,QAAQpd,KAAK0lB,OAAOjJ,IAAKzc,KAAK0lB,OAAOT,QAGzDkC,UAAW,WACV,IAAI1K,EAAMzc,KAAK0lB,OAAOjJ,IACtB,OAAQA,EAAI,IAAM,GAAOA,EAAI,IAAM,EAAKA,EAAI,IAG7C2K,WAAY,WAIX,IAFA,IAAI3K,EAAMzc,KAAK0lB,OAAOjJ,IAClB4K,EAAM,GACD3O,EAAI,EAAGA,EAAI+D,EAAI/Q,OAAQgN,IAAK,CACpC,IAAI4O,EAAO7K,EAAI/D,GAAK,IACpB2O,EAAI3O,GAAM4O,GAAQ,OAAWA,EAAO,MAAQpW,KAAKC,KAAMmW,EAAO,MAAS,MAAQ,KAEhF,MAAO,MAASD,EAAI,GAAK,MAASA,EAAI,GAAK,MAASA,EAAI,IAGzDE,SAAU,SAAUC,GAEnB,IAAIC,EAAOznB,KAAKonB,aACZM,EAAOF,EAAOJ,aAClB,OAAIK,EAAOC,GACFD,EAAO,MAASC,EAAO,MAExBA,EAAO,MAASD,EAAO,MAGhCE,MAAO,SAAUH,GAChB,IAAII,EAAgB5nB,KAAKunB,SAASC,GAClC,OAAII,GAAiB,IACb,MAGAA,GAAiB,IAAO,KAAO,IAGxCC,KAAM,WAEL,IAAIpL,EAAMzc,KAAK0lB,OAAOjJ,IAClBqL,GAAgB,IAATrL,EAAI,GAAoB,IAATA,EAAI,GAAoB,IAATA,EAAI,IAAY,IACzD,OAAOqL,EAAM,KAGdC,MAAO,WACN,OAAQ/nB,KAAK6nB,QAGdG,OAAQ,WAEP,IADA,IAAIvL,EAAM,GACD/D,EAAI,EAAGA,EAAI,EAAGA,IACtB+D,EAAI/D,GAAK,IAAM1Y,KAAK0lB,OAAOjJ,IAAI/D,GAGhC,OADA1Y,KAAK2lB,UAAU,MAAOlJ,GACfzc,MAGRioB,QAAS,SAAUzH,GAClB,IAAI5D,EAAM5c,KAAK0lB,OAAO9I,IAGtB,OAFAA,EAAI,IAAMA,EAAI,GAAK4D,EACnBxgB,KAAK2lB,UAAU,MAAO/I,GACf5c,MAGRkoB,OAAQ,SAAU1H,GACjB,IAAI5D,EAAM5c,KAAK0lB,OAAO9I,IAGtB,OAFAA,EAAI,IAAMA,EAAI,GAAK4D,EACnBxgB,KAAK2lB,UAAU,MAAO/I,GACf5c,MAGRmoB,SAAU,SAAU3H,GACnB,IAAI5D,EAAM5c,KAAK0lB,OAAO9I,IAGtB,OAFAA,EAAI,IAAMA,EAAI,GAAK4D,EACnBxgB,KAAK2lB,UAAU,MAAO/I,GACf5c,MAGRooB,WAAY,SAAU5H,GACrB,IAAI5D,EAAM5c,KAAK0lB,OAAO9I,IAGtB,OAFAA,EAAI,IAAMA,EAAI,GAAK4D,EACnBxgB,KAAK2lB,UAAU,MAAO/I,GACf5c,MAGRqoB,OAAQ,SAAU7H,GACjB,IAAI1D,EAAM9c,KAAK0lB,OAAO5I,IAGtB,OAFAA,EAAI,IAAMA,EAAI,GAAK0D,EACnBxgB,KAAK2lB,UAAU,MAAO7I,GACf9c,MAGRsoB,QAAS,SAAU9H,GAClB,IAAI1D,EAAM9c,KAAK0lB,OAAO5I,IAGtB,OAFAA,EAAI,IAAMA,EAAI,GAAK0D,EACnBxgB,KAAK2lB,UAAU,MAAO7I,GACf9c,MAGRuoB,UAAW,WACV,IAAI9L,EAAMzc,KAAK0lB,OAAOjJ,IAElBkD,EAAe,GAATlD,EAAI,GAAoB,IAATA,EAAI,GAAqB,IAATA,EAAI,GAE7C,OADAzc,KAAK2lB,UAAU,MAAO,CAAChG,EAAKA,EAAKA,IAC1B3f,MAGRwoB,QAAS,SAAUhI,GAClB,IAAIyE,EAAQjlB,KAAK0lB,OAAOT,MAExB,OADAjlB,KAAK2lB,UAAU,QAASV,EAASA,EAAQzE,GAClCxgB,MAGRyoB,QAAS,SAAUjI,GAClB,IAAIyE,EAAQjlB,KAAK0lB,OAAOT,MAExB,OADAjlB,KAAK2lB,UAAU,QAASV,EAASA,EAAQzE,GAClCxgB,MAGR0oB,OAAQ,SAAUC,GACjB,IAAI/L,EAAM5c,KAAK0lB,OAAO9I,IAClBkF,GAAOlF,EAAI,GAAK+L,GAAW,IAG/B,OAFA/L,EAAI,GAAKkF,EAAM,EAAI,IAAMA,EAAMA,EAC/B9hB,KAAK2lB,UAAU,MAAO/I,GACf5c,MAOR4oB,IAAK,SAAUC,EAAYC,GAC1B,IAAIC,EAAS/oB,KACTwnB,EAASqB,EACT5I,OAAe9b,IAAX2kB,EAAuB,GAAMA,EAEjChK,EAAI,EAAImB,EAAI,EACZV,EAAIwJ,EAAO9D,QAAUuC,EAAOvC,QAE5B+D,IAAQlK,EAAIS,KAAO,EAAKT,GAAKA,EAAIS,IAAM,EAAIT,EAAIS,IAAM,GAAK,EAC1D0J,EAAK,EAAID,EAEb,OAAOhpB,KACLyc,IACAuM,EAAKD,EAAOnD,MAAQqD,EAAKzB,EAAO5B,MAChCoD,EAAKD,EAAOpC,QAAUsC,EAAKzB,EAAOb,QAClCqC,EAAKD,EAAOnC,OAASqC,EAAKzB,EAAOZ,QAEjC3B,MAAM8D,EAAO9D,QAAUhF,EAAIuH,EAAOvC,SAAW,EAAIhF,KAGpD/a,OAAQ,WACP,OAAOlF,KAAKyc,OAGbyM,MAAO,WAKN,IAGIvnB,EAAOO,EAHP6C,EAAS,IAAIygB,EACb2D,EAASnpB,KAAK0lB,OACd0D,EAASrkB,EAAO2gB,OAGpB,IAAK,IAAIrX,KAAQ8a,EACZA,EAAO/M,eAAe/N,KACzB1M,EAAQwnB,EAAO9a,GACfnM,EAAO,GAAKuS,SAAS+E,KAAK7X,GACb,mBAATO,EACHknB,EAAO/a,GAAQ1M,EAAM2J,MAAM,GACR,oBAATpJ,EACVknB,EAAO/a,GAAQ1M,EAEf0nB,QAAQ1O,MAAM,0BAA2BhZ,IAK5C,OAAOoD,IAITygB,EAAM/K,UAAU6O,OAAS,CACxB7M,IAAK,CAAC,MAAO,QAAS,QACtBG,IAAK,CAAC,MAAO,aAAc,aAC3BC,IAAK,CAAC,MAAO,aAAc,SAC3BC,IAAK,CAAC,MAAO,YAAa,aAC1BC,KAAM,CAAC,OAAQ,UAAW,SAAU,UAGrCyI,EAAM/K,UAAU8O,MAAQ,CACvB9M,IAAK,CAAC,IAAK,IAAK,KAChBG,IAAK,CAAC,IAAK,IAAK,KAChBC,IAAK,CAAC,IAAK,IAAK,KAChBC,IAAK,CAAC,IAAK,IAAK,KAChBC,KAAM,CAAC,IAAK,IAAK,IAAK,MAGvByI,EAAM/K,UAAU+O,UAAY,SAAUC,GAIrC,IAHA,IAAI/D,EAAS1lB,KAAK0lB,OACd7J,EAAO,GAEFnD,EAAI,EAAGA,EAAI+Q,EAAM/d,OAAQgN,IACjCmD,EAAK4N,EAAMnX,OAAOoG,IAAMgN,EAAO+D,GAAO/Q,GAQvC,OALqB,IAAjBgN,EAAOT,QACVpJ,EAAK0D,EAAImG,EAAOT,OAIVpJ,GAGR2J,EAAM/K,UAAUkL,UAAY,SAAU8D,EAAO5N,GAC5C,IAIInD,EAkCAgR,EAtCAhE,EAAS1lB,KAAK0lB,OACd4D,EAAStpB,KAAKspB,OACdC,EAAQvpB,KAAKupB,MACbtE,EAAQ,EAKZ,GAFAjlB,KAAKylB,OAAQ,EAEC,UAAVgE,EACHxE,EAAQpJ,OACF,GAAIA,EAAKnQ,OAEfga,EAAO+D,GAAS5N,EAAKvQ,MAAM,EAAGme,EAAM/d,QACpCuZ,EAAQpJ,EAAK4N,EAAM/d,aACb,QAA8BvH,IAA1B0X,EAAK4N,EAAMnX,OAAO,IAAmB,CAE/C,IAAKoG,EAAI,EAAGA,EAAI+Q,EAAM/d,OAAQgN,IAC7BgN,EAAO+D,GAAO/Q,GAAKmD,EAAK4N,EAAMnX,OAAOoG,IAGtCuM,EAAQpJ,EAAK0D,OACP,QAA+Bpb,IAA3B0X,EAAKyN,EAAOG,GAAO,IAAmB,CAEhD,IAAIE,EAAQL,EAAOG,GAEnB,IAAK/Q,EAAI,EAAGA,EAAI+Q,EAAM/d,OAAQgN,IAC7BgN,EAAO+D,GAAO/Q,GAAKmD,EAAK8N,EAAMjR,IAG/BuM,EAAQpJ,EAAKoJ,MAKd,GAFAS,EAAOT,MAAQ/T,KAAKmN,IAAI,EAAGnN,KAAKkN,IAAI,OAAcja,IAAV8gB,EAAsBS,EAAOT,MAAQA,IAE/D,UAAVwE,EACH,OAAO,EAMR,IAAK/Q,EAAI,EAAGA,EAAI+Q,EAAM/d,OAAQgN,IAC7BgR,EAASxY,KAAKmN,IAAI,EAAGnN,KAAKkN,IAAImL,EAAME,GAAO/Q,GAAIgN,EAAO+D,GAAO/Q,KAC7DgN,EAAO+D,GAAO/Q,GAAKxH,KAAKiQ,MAAMuI,GAI/B,IAAK,IAAIE,KAASN,EACbM,IAAUH,IACb/D,EAAOkE,GAASjG,EAAa8F,GAAOG,GAAOlE,EAAO+D,KAIpD,OAAO,GAGRjE,EAAM/K,UAAUwL,SAAW,SAAUwD,EAAOvI,GAC3C,IAAIrF,EAAOqF,EAAK,GAEhB,YAAa/c,IAAT0X,EAEI7b,KAAKwpB,UAAUC,IAIH,kBAAT5N,IACVA,EAAO7O,MAAMyN,UAAUnP,MAAMkO,KAAK0H,IAGnClhB,KAAK2lB,UAAU8D,EAAO5N,GACf7b,OAGRwlB,EAAM/K,UAAUiM,WAAa,SAAU+C,EAAOtnB,EAAOwd,GACpD,IAAIkK,EAAU7pB,KAAK0lB,OAAO+D,GAC1B,YAAYtlB,IAARwb,EAEIkK,EAAQ1nB,IACLwd,IAAQkK,EAAQ1nB,KAM3B0nB,EAAQ1nB,GAASwd,EACjB3f,KAAK2lB,UAAU8D,EAAOI,IALd7pB,OAUa,qBAAX8pB,SACVA,OAAOtE,MAAQA,GAGhB,IAAIuE,EAAevE,EAEnB,SAASwE,EAAW/oB,GACnB,OAAmE,IAA5D,CAAC,YAAa,YAAa,eAAegpB,QAAQhpB,GAM1D,IAAIipB,EAAU,CAIbC,KAAM,aAONC,IAAM,WACL,IAAI1d,EAAK,EACT,OAAO,WACN,OAAOA,KAHJ,GAaL2d,cAAe,SAAS1oB,GACvB,OAAiB,OAAVA,GAAmC,qBAAVA,GASjC2oB,QAAS,SAAS3oB,GACjB,GAAIqL,MAAMsd,SAAWtd,MAAMsd,QAAQ3oB,GAClC,OAAO,EAER,IAAIO,EAAOkC,OAAOqW,UAAUhG,SAAS+E,KAAK7X,GAC1C,MAA0B,YAAtBO,EAAKqoB,OAAO,EAAG,IAAwC,WAApBroB,EAAKqoB,QAAQ,IAYrDC,SAAU,SAAS7oB,GAClB,OAAiB,OAAVA,GAA4D,oBAA1CyC,OAAOqW,UAAUhG,SAAS+E,KAAK7X,IAQzD8oB,SAAU,SAAS9oB,GAClB,OAAyB,kBAAVA,GAAsBA,aAAiBmL,SAAW2d,SAAS9oB,IAS3E+oB,eAAgB,SAAS/oB,EAAOgpB,GAC/B,MAAwB,qBAAVhpB,EAAwBgpB,EAAehpB,GAUtDipB,sBAAuB,SAASjpB,EAAOQ,EAAOwoB,GAC7C,OAAOT,EAAQQ,eAAeR,EAAQI,QAAQ3oB,GAASA,EAAMQ,GAASR,EAAOgpB,IAW9E/oB,SAAU,SAASV,EAAIggB,EAAM2J,GAC5B,GAAI3pB,GAAyB,oBAAZA,EAAGsY,KACnB,OAAOtY,EAAGoa,MAAMuP,EAAS3J,IAa3B4J,KAAM,SAASC,EAAU7pB,EAAI2pB,EAASG,GACrC,IAAItS,EAAG4J,EAAKD,EACZ,GAAI6H,EAAQI,QAAQS,GAEnB,GADAzI,EAAMyI,EAASrf,OACXsf,EACH,IAAKtS,EAAI4J,EAAM,EAAG5J,GAAK,EAAGA,IACzBxX,EAAGsY,KAAKqR,EAASE,EAASrS,GAAIA,QAG/B,IAAKA,EAAI,EAAGA,EAAI4J,EAAK5J,IACpBxX,EAAGsY,KAAKqR,EAASE,EAASrS,GAAIA,QAG1B,GAAIwR,EAAQM,SAASO,GAG3B,IAFA1I,EAAOje,OAAOie,KAAK0I,GACnBzI,EAAMD,EAAK3W,OACNgN,EAAI,EAAGA,EAAI4J,EAAK5J,IACpBxX,EAAGsY,KAAKqR,EAASE,EAAS1I,EAAK3J,IAAK2J,EAAK3J,KAY5CuS,YAAa,SAASC,EAAIC,GACzB,IAAIzS,EAAG0S,EAAMC,EAAIC,EAEjB,IAAKJ,IAAOC,GAAMD,EAAGxf,SAAWyf,EAAGzf,OAClC,OAAO,EAGR,IAAKgN,EAAI,EAAG0S,EAAOF,EAAGxf,OAAQgN,EAAI0S,IAAQ1S,EAIzC,GAHA2S,EAAKH,EAAGxS,GACR4S,EAAKH,EAAGzS,GAEJ2S,aAAcre,OAASse,aAActe,OACxC,IAAKkd,EAAQe,YAAYI,EAAIC,GAC5B,OAAO,OAEF,GAAID,IAAOC,EAEjB,OAAO,EAIT,OAAO,GAQRpC,MAAO,SAASC,GACf,GAAIe,EAAQI,QAAQnB,GACnB,OAAOA,EAAO9lB,IAAI6mB,EAAQhB,OAG3B,GAAIgB,EAAQM,SAASrB,GAAS,CAM7B,IALA,IAAIC,EAAShlB,OAAOmnB,OAAOpC,GACvB9G,EAAOje,OAAOie,KAAK8G,GACnBqC,EAAOnJ,EAAK3W,OACZsT,EAAI,EAEDA,EAAIwM,IAAQxM,EAClBoK,EAAO/G,EAAKrD,IAAMkL,EAAQhB,MAAMC,EAAO9G,EAAKrD,KAG7C,OAAOoK,EAGR,OAAOD,GAQRsC,QAAS,SAASxqB,EAAKmoB,EAAQD,EAAQ1b,GACtC,GAAKuc,EAAW/oB,GAAhB,CAMA,IAAIyqB,EAAOtC,EAAOnoB,GACd0qB,EAAOxC,EAAOloB,GAEdipB,EAAQM,SAASkB,IAASxB,EAAQM,SAASmB,GAC9CzB,EAAQ0B,MAAMF,EAAMC,EAAMle,GAE1B2b,EAAOnoB,GAAOipB,EAAQhB,MAAMyC,KAQ9BE,UAAW,SAAS5qB,EAAKmoB,EAAQD,GAChC,GAAKa,EAAW/oB,GAAhB,CAMA,IAAIyqB,EAAOtC,EAAOnoB,GACd0qB,EAAOxC,EAAOloB,GAEdipB,EAAQM,SAASkB,IAASxB,EAAQM,SAASmB,GAC9CzB,EAAQ4B,QAAQJ,EAAMC,GACXvC,EAAOhN,eAAenb,KACjCmoB,EAAOnoB,GAAOipB,EAAQhB,MAAMyC,MAa9BC,MAAO,SAASxC,EAAQD,EAAQ1b,GAC/B,IAEIme,EAAOlT,EAAG2J,EAAMmJ,EAAMxM,EAFtB+M,EAAU7B,EAAQI,QAAQnB,GAAUA,EAAS,CAACA,GAC9CiC,EAAOW,EAAQrgB,OAGnB,IAAKwe,EAAQM,SAASpB,GACrB,OAAOA,EAMR,IAHA3b,EAAUA,GAAW,GACrBme,EAAQne,EAAQue,QAAU9B,EAAQuB,QAE7B/S,EAAI,EAAGA,EAAI0S,IAAQ1S,EAEvB,GADAyQ,EAAS4C,EAAQrT,GACZwR,EAAQM,SAASrB,GAKtB,IADA9G,EAAOje,OAAOie,KAAK8G,GACdnK,EAAI,EAAGwM,EAAOnJ,EAAK3W,OAAQsT,EAAIwM,IAAQxM,EAC3C4M,EAAMvJ,EAAKrD,GAAIoK,EAAQD,EAAQ1b,GAIjC,OAAO2b,GAUR0C,QAAS,SAAS1C,EAAQD,GACzB,OAAOe,EAAQ0B,MAAMxC,EAAQD,EAAQ,CAAC6C,OAAQ9B,EAAQ2B,aAUvDI,OAAQ7nB,OAAOC,QAAU,SAAS+kB,GACjC,OAAOc,EAAQ0B,MAAMxC,EAAQ,GAAG9d,MAAMkO,KAAKP,UAAW,GAAI,CACzD+S,OAAQ,SAAS/qB,EAAKirB,EAAKC,GAC1BD,EAAIjrB,GAAOkrB,EAAIlrB,OAQlBmrB,SAAU,SAASC,GAClB,IAAIC,EAAKtsB,KACLusB,EAAgBF,GAAcA,EAAWjQ,eAAe,eAAkBiQ,EAAWG,YAAc,WACtG,OAAOF,EAAGhR,MAAMtb,KAAMiZ,YAGnBwT,EAAY,WACfzsB,KAAKwsB,YAAcD,GAYpB,OATAE,EAAUhS,UAAY6R,EAAG7R,UACzB8R,EAAa9R,UAAY,IAAIgS,EAC7BF,EAAaN,OAAS/B,EAAQkC,SAE1BC,GACHnC,EAAQ+B,OAAOM,EAAa9R,UAAW4R,GAGxCE,EAAaG,UAAYJ,EAAG7R,UACrB8R,GAGRI,YAAa,SAASliB,EAAO9I,EAAOirB,EAAUjK,QAC/Bxe,IAAVxC,GACH0nB,QAAQwD,KAAKpiB,EAAQ,MAAQmiB,EAC5B,gCAAkCjK,EAAU,eAK5CmK,EAAe5C,EAWnBA,EAAQ6C,aAAe7C,EAAQtoB,SAU/BsoB,EAAQD,QAAU,SAAS+C,EAAOlnB,EAAMmnB,GACvC,OAAOjgB,MAAMyN,UAAUwP,QAAQzQ,KAAKwT,EAAOlnB,EAAMmnB,IAUlD/C,EAAQgD,kBAAoBhD,EAAQQ,eASpCR,EAAQiD,yBAA2BjD,EAAQU,sBAO3C,IAAIwC,EAAU,CACbC,OAAQ,SAASlN,GAChB,OAAOA,GAGRmN,WAAY,SAASnN,GACpB,OAAOA,EAAIA,GAGZoN,YAAa,SAASpN,GACrB,OAAQA,GAAKA,EAAI,IAGlBqN,cAAe,SAASrN,GACvB,OAAKA,GAAK,IAAO,EACT,GAAMA,EAAIA,GAEV,MAAUA,GAAMA,EAAI,GAAK,IAGlCsN,YAAa,SAAStN,GACrB,OAAOA,EAAIA,EAAIA,GAGhBuN,aAAc,SAASvN,GACtB,OAAQA,GAAQ,GAAKA,EAAIA,EAAI,GAG9BwN,eAAgB,SAASxN,GACxB,OAAKA,GAAK,IAAO,EACT,GAAMA,EAAIA,EAAIA,EAEf,KAAQA,GAAK,GAAKA,EAAIA,EAAI,IAGlCyN,YAAa,SAASzN,GACrB,OAAOA,EAAIA,EAAIA,EAAIA,GAGpB0N,aAAc,SAAS1N,GACtB,SAAUA,GAAQ,GAAKA,EAAIA,EAAIA,EAAI,IAGpC2N,eAAgB,SAAS3N,GACxB,OAAKA,GAAK,IAAO,EACT,GAAMA,EAAIA,EAAIA,EAAIA,GAElB,KAAQA,GAAK,GAAKA,EAAIA,EAAIA,EAAI,IAGvC4N,YAAa,SAAS5N,GACrB,OAAOA,EAAIA,EAAIA,EAAIA,EAAIA,GAGxB6N,aAAc,SAAS7N,GACtB,OAAQA,GAAQ,GAAKA,EAAIA,EAAIA,EAAIA,EAAI,GAGtC8N,eAAgB,SAAS9N,GACxB,OAAKA,GAAK,IAAO,EACT,GAAMA,EAAIA,EAAIA,EAAIA,EAAIA,EAEvB,KAAQA,GAAK,GAAKA,EAAIA,EAAIA,EAAIA,EAAI,IAG1C+N,WAAY,SAAS/N,GACpB,OAAsC,EAA9BjP,KAAK8P,IAAIb,GAAKjP,KAAK4P,GAAK,KAGjCqN,YAAa,SAAShO,GACrB,OAAOjP,KAAK+P,IAAId,GAAKjP,KAAK4P,GAAK,KAGhCsN,cAAe,SAASjO,GACvB,OAAQ,IAAOjP,KAAK8P,IAAI9P,KAAK4P,GAAKX,GAAK,IAGxCkO,WAAY,SAASlO,GACpB,OAAc,IAANA,EAAW,EAAIjP,KAAKC,IAAI,EAAG,IAAMgP,EAAI,KAG9CmO,YAAa,SAASnO,GACrB,OAAc,IAANA,EAAW,EAA4B,EAAvBjP,KAAKC,IAAI,GAAI,GAAKgP,IAG3CoO,cAAe,SAASpO,GACvB,OAAU,IAANA,EACI,EAEE,IAANA,EACI,GAEHA,GAAK,IAAO,EACT,GAAMjP,KAAKC,IAAI,EAAG,IAAMgP,EAAI,IAE7B,IAAiC,EAAzBjP,KAAKC,IAAI,GAAI,KAAOgP,KAGpCqO,WAAY,SAASrO,GACpB,OAAIA,GAAK,EACDA,IAECjP,KAAK6P,KAAK,EAAIZ,EAAIA,GAAK,IAGjCsO,YAAa,SAAStO,GACrB,OAAOjP,KAAK6P,KAAK,GAAKZ,GAAQ,GAAKA,IAGpCuO,cAAe,SAASvO,GACvB,OAAKA,GAAK,IAAO,GACR,IAAOjP,KAAK6P,KAAK,EAAIZ,EAAIA,GAAK,GAEhC,IAAOjP,KAAK6P,KAAK,GAAKZ,GAAK,GAAKA,GAAK,IAG7CwO,cAAe,SAASxO,GACvB,IAAIpC,EAAI,QACJkC,EAAI,EACJV,EAAI,EACR,OAAU,IAANY,EACI,EAEE,IAANA,EACI,GAEHF,IACJA,EAAI,IAEDV,EAAI,GACPA,EAAI,EACJxB,EAAIkC,EAAI,GAERlC,EAAIkC,GAAK,EAAI/O,KAAK4P,IAAM5P,KAAK0d,KAAK,EAAIrP,IAE9BA,EAAIrO,KAAKC,IAAI,EAAG,IAAMgP,GAAK,IAAMjP,KAAK+P,KAAKd,EAAIpC,IAAM,EAAI7M,KAAK4P,IAAMb,KAG9E4O,eAAgB,SAAS1O,GACxB,IAAIpC,EAAI,QACJkC,EAAI,EACJV,EAAI,EACR,OAAU,IAANY,EACI,EAEE,IAANA,EACI,GAEHF,IACJA,EAAI,IAEDV,EAAI,GACPA,EAAI,EACJxB,EAAIkC,EAAI,GAERlC,EAAIkC,GAAK,EAAI/O,KAAK4P,IAAM5P,KAAK0d,KAAK,EAAIrP,GAEhCA,EAAIrO,KAAKC,IAAI,GAAI,GAAKgP,GAAKjP,KAAK+P,KAAKd,EAAIpC,IAAM,EAAI7M,KAAK4P,IAAMb,GAAK,IAG3E6O,iBAAkB,SAAS3O,GAC1B,IAAIpC,EAAI,QACJkC,EAAI,EACJV,EAAI,EACR,OAAU,IAANY,EACI,EAEW,KAAdA,GAAK,IACF,GAEHF,IACJA,EAAI,KAEDV,EAAI,GACPA,EAAI,EACJxB,EAAIkC,EAAI,GAERlC,EAAIkC,GAAK,EAAI/O,KAAK4P,IAAM5P,KAAK0d,KAAK,EAAIrP,GAEnCY,EAAI,EACQZ,EAAIrO,KAAKC,IAAI,EAAG,IAAMgP,GAAK,IAAMjP,KAAK+P,KAAKd,EAAIpC,IAAM,EAAI7M,KAAK4P,IAAMb,IAA3E,GAEFV,EAAIrO,KAAKC,IAAI,GAAI,IAAMgP,GAAK,IAAMjP,KAAK+P,KAAKd,EAAIpC,IAAM,EAAI7M,KAAK4P,IAAMb,GAAK,GAAM,IAExF8O,WAAY,SAAS5O,GACpB,IAAIpC,EAAI,QACR,OAAOoC,EAAIA,IAAMpC,EAAI,GAAKoC,EAAIpC,IAG/BiR,YAAa,SAAS7O,GACrB,IAAIpC,EAAI,QACR,OAAQoC,GAAQ,GAAKA,IAAMpC,EAAI,GAAKoC,EAAIpC,GAAK,GAG9CkR,cAAe,SAAS9O,GACvB,IAAIpC,EAAI,QACR,OAAKoC,GAAK,IAAO,EACFA,EAAIA,IAAuB,GAAhBpC,GAAK,QAAgBoC,EAAIpC,GAA3C,GAED,KAAQoC,GAAK,GAAKA,IAAuB,GAAhBpC,GAAK,QAAgBoC,EAAIpC,GAAK,IAG/DmR,aAAc,SAAS/O,GACtB,OAAO,EAAIiN,EAAQ+B,cAAc,EAAIhP,IAGtCgP,cAAe,SAAShP,GACvB,OAAIA,EAAK,EAAI,KACL,OAASA,EAAIA,EAEjBA,EAAK,EAAI,KACL,QAAUA,GAAM,IAAM,MAASA,EAAI,IAEvCA,EAAK,IAAM,KACP,QAAUA,GAAM,KAAO,MAASA,EAAI,MAErC,QAAUA,GAAM,MAAQ,MAASA,EAAI,SAG7CiP,gBAAiB,SAASjP,GACzB,OAAIA,EAAI,GAC8B,GAA9BiN,EAAQ8B,aAAiB,EAAJ/O,GAEa,GAAnCiN,EAAQ+B,cAAkB,EAAJhP,EAAQ,GAAW,KAI9CkP,EAAiB,CACpBjC,QAASA,GAYVN,EAAawC,cAAgBlC,EAE7B,IAAItM,EAAK5P,KAAK4P,GACVyO,EAAczO,EAAK,IACnB0O,EAAiB,EAAL1O,EACZ2O,EAAU3O,EAAK,EACf4O,EAAa5O,EAAK,EAClB6O,EAAqB,EAAL7O,EAAS,EAKzB8O,EAAY,CAKfC,MAAO,SAASC,GACfA,EAAMC,IAAIC,UAAU,EAAG,EAAGF,EAAMnjB,MAAOmjB,EAAMljB,SAc9CqjB,YAAa,SAASF,EAAKnS,EAAGC,EAAGlR,EAAOC,EAAQsjB,GAC/C,GAAIA,EAAQ,CACX,IAAIjS,EAAI/M,KAAKkN,IAAI8R,EAAQtjB,EAAS,EAAGD,EAAQ,GACzCwjB,EAAOvS,EAAIK,EACXmS,EAAMvS,EAAII,EACVoS,EAAQzS,EAAIjR,EAAQsR,EACpBqS,EAASzS,EAAIjR,EAASqR,EAE1B8R,EAAIQ,OAAO3S,EAAGwS,GACVD,EAAOE,GAASD,EAAME,GACzBP,EAAIS,IAAIL,EAAMC,EAAKnS,GAAI6C,GAAK2O,GAC5BM,EAAIS,IAAIH,EAAOD,EAAKnS,GAAIwR,EAAS,GACjCM,EAAIS,IAAIH,EAAOC,EAAQrS,EAAG,EAAGwR,GAC7BM,EAAIS,IAAIL,EAAMG,EAAQrS,EAAGwR,EAAS3O,IACxBqP,EAAOE,GACjBN,EAAIQ,OAAOJ,EAAMtS,GACjBkS,EAAIS,IAAIH,EAAOD,EAAKnS,GAAIwR,EAASA,GACjCM,EAAIS,IAAIL,EAAMC,EAAKnS,EAAGwR,EAAS3O,EAAK2O,IAC1BW,EAAME,GAChBP,EAAIS,IAAIL,EAAMC,EAAKnS,GAAI6C,EAAI,GAC3BiP,EAAIS,IAAIL,EAAMG,EAAQrS,EAAG,EAAG6C,IAE5BiP,EAAIS,IAAIL,EAAMC,EAAKnS,GAAI6C,EAAIA,GAE5BiP,EAAIU,YACJV,EAAIQ,OAAO3S,EAAGC,QAEdkS,EAAIW,KAAK9S,EAAGC,EAAGlR,EAAOC,IAIxB+jB,UAAW,SAASZ,EAAKxjB,EAAO2jB,EAAQtS,EAAGC,EAAG+S,GAC7C,IAAI1uB,EAAM2uB,EAASC,EAASC,EAAMC,EAC9BC,GAAOL,GAAY,GAAKrB,EAE5B,GAAIhjB,GAA0B,kBAAVA,IACnBrK,EAAOqK,EAAMkI,WACA,8BAATvS,GAAiD,+BAATA,GAM3C,OALA6tB,EAAImB,OACJnB,EAAIoB,UAAUvT,EAAGC,GACjBkS,EAAIrH,OAAOuI,GACXlB,EAAIqB,UAAU7kB,GAAQA,EAAMI,MAAQ,GAAIJ,EAAMK,OAAS,EAAGL,EAAMI,MAAOJ,EAAMK,aAC7EmjB,EAAIsB,UAKN,KAAInM,MAAMgL,IAAWA,GAAU,GAA/B,CAMA,OAFAH,EAAIuB,YAEI/kB,GAER,QACCwjB,EAAIS,IAAI5S,EAAGC,EAAGqS,EAAQ,EAAGV,GACzBO,EAAIU,YACJ,MACD,IAAK,WACJV,EAAIQ,OAAO3S,EAAI1M,KAAK+P,IAAIgQ,GAAOf,EAAQrS,EAAI3M,KAAK8P,IAAIiQ,GAAOf,GAC3De,GAAOtB,EACPI,EAAIwB,OAAO3T,EAAI1M,KAAK+P,IAAIgQ,GAAOf,EAAQrS,EAAI3M,KAAK8P,IAAIiQ,GAAOf,GAC3De,GAAOtB,EACPI,EAAIwB,OAAO3T,EAAI1M,KAAK+P,IAAIgQ,GAAOf,EAAQrS,EAAI3M,KAAK8P,IAAIiQ,GAAOf,GAC3DH,EAAIU,YACJ,MACD,IAAK,cAQJO,EAAwB,KAATd,EACfa,EAAOb,EAASc,EAChBH,EAAU3f,KAAK8P,IAAIiQ,EAAMvB,GAAcqB,EACvCD,EAAU5f,KAAK+P,IAAIgQ,EAAMvB,GAAcqB,EACvChB,EAAIS,IAAI5S,EAAIiT,EAAShT,EAAIiT,EAASE,EAAcC,EAAMnQ,EAAImQ,EAAMxB,GAChEM,EAAIS,IAAI5S,EAAIkT,EAASjT,EAAIgT,EAASG,EAAcC,EAAMxB,EAASwB,GAC/DlB,EAAIS,IAAI5S,EAAIiT,EAAShT,EAAIiT,EAASE,EAAcC,EAAKA,EAAMxB,GAC3DM,EAAIS,IAAI5S,EAAIkT,EAASjT,EAAIgT,EAASG,EAAcC,EAAMxB,EAASwB,EAAMnQ,GACrEiP,EAAIU,YACJ,MACD,IAAK,OACJ,IAAKG,EAAU,CACdG,EAAO7f,KAAKsgB,QAAUtB,EACtBH,EAAIW,KAAK9S,EAAImT,EAAMlT,EAAIkT,EAAM,EAAIA,EAAM,EAAIA,GAC3C,MAEDE,GAAOvB,EAER,IAAK,UACJmB,EAAU3f,KAAK8P,IAAIiQ,GAAOf,EAC1BY,EAAU5f,KAAK+P,IAAIgQ,GAAOf,EAC1BH,EAAIQ,OAAO3S,EAAIiT,EAAShT,EAAIiT,GAC5Bf,EAAIwB,OAAO3T,EAAIkT,EAASjT,EAAIgT,GAC5Bd,EAAIwB,OAAO3T,EAAIiT,EAAShT,EAAIiT,GAC5Bf,EAAIwB,OAAO3T,EAAIkT,EAASjT,EAAIgT,GAC5Bd,EAAIU,YACJ,MACD,IAAK,WACJQ,GAAOvB,EAER,IAAK,QACJmB,EAAU3f,KAAK8P,IAAIiQ,GAAOf,EAC1BY,EAAU5f,KAAK+P,IAAIgQ,GAAOf,EAC1BH,EAAIQ,OAAO3S,EAAIiT,EAAShT,EAAIiT,GAC5Bf,EAAIwB,OAAO3T,EAAIiT,EAAShT,EAAIiT,GAC5Bf,EAAIQ,OAAO3S,EAAIkT,EAASjT,EAAIgT,GAC5Bd,EAAIwB,OAAO3T,EAAIkT,EAASjT,EAAIgT,GAC5B,MACD,IAAK,OACJA,EAAU3f,KAAK8P,IAAIiQ,GAAOf,EAC1BY,EAAU5f,KAAK+P,IAAIgQ,GAAOf,EAC1BH,EAAIQ,OAAO3S,EAAIiT,EAAShT,EAAIiT,GAC5Bf,EAAIwB,OAAO3T,EAAIiT,EAAShT,EAAIiT,GAC5Bf,EAAIQ,OAAO3S,EAAIkT,EAASjT,EAAIgT,GAC5Bd,EAAIwB,OAAO3T,EAAIkT,EAASjT,EAAIgT,GAC5BI,GAAOvB,EACPmB,EAAU3f,KAAK8P,IAAIiQ,GAAOf,EAC1BY,EAAU5f,KAAK+P,IAAIgQ,GAAOf,EAC1BH,EAAIQ,OAAO3S,EAAIiT,EAAShT,EAAIiT,GAC5Bf,EAAIwB,OAAO3T,EAAIiT,EAAShT,EAAIiT,GAC5Bf,EAAIQ,OAAO3S,EAAIkT,EAASjT,EAAIgT,GAC5Bd,EAAIwB,OAAO3T,EAAIkT,EAASjT,EAAIgT,GAC5B,MACD,IAAK,OACJA,EAAU3f,KAAK8P,IAAIiQ,GAAOf,EAC1BY,EAAU5f,KAAK+P,IAAIgQ,GAAOf,EAC1BH,EAAIQ,OAAO3S,EAAIiT,EAAShT,EAAIiT,GAC5Bf,EAAIwB,OAAO3T,EAAIiT,EAAShT,EAAIiT,GAC5B,MACD,IAAK,OACJf,EAAIQ,OAAO3S,EAAGC,GACdkS,EAAIwB,OAAO3T,EAAI1M,KAAK8P,IAAIiQ,GAAOf,EAAQrS,EAAI3M,KAAK+P,IAAIgQ,GAAOf,GAC3D,MAGDH,EAAI0B,OACJ1B,EAAI2B,WAULC,eAAgB,SAASC,EAAOC,GAC/B,IAAIC,EAAU,KAEd,OAAOF,EAAMhU,EAAIiU,EAAK1B,KAAO2B,GAAWF,EAAMhU,EAAIiU,EAAKxB,MAAQyB,GAC9DF,EAAM/T,EAAIgU,EAAKzB,IAAM0B,GAAWF,EAAM/T,EAAIgU,EAAKvB,OAASwB,GAG1DC,SAAU,SAAShC,EAAK8B,GACvB9B,EAAImB,OACJnB,EAAIuB,YACJvB,EAAIW,KAAKmB,EAAK1B,KAAM0B,EAAKzB,IAAKyB,EAAKxB,MAAQwB,EAAK1B,KAAM0B,EAAKvB,OAASuB,EAAKzB,KACzEL,EAAIiC,QAGLC,WAAY,SAASlC,GACpBA,EAAIsB,WAGLE,OAAQ,SAASxB,EAAKnD,EAAUxD,EAAQ8I,GACvC,IAAIC,EAAU/I,EAAOgJ,YACrB,GAAID,EAAJ,CACC,GAAgB,WAAZA,EAAsB,CACzB,IAAIE,GAAYzF,EAAShP,EAAIwL,EAAOxL,GAAK,EACzCmS,EAAIwB,OAAOc,EAAUH,EAAO9I,EAAOvL,EAAI+O,EAAS/O,GAChDkS,EAAIwB,OAAOc,EAAUH,EAAOtF,EAAS/O,EAAIuL,EAAOvL,OACzB,UAAZsU,IAAwBD,GAAsB,UAAZC,GAAuBD,EACpEnC,EAAIwB,OAAO3E,EAAShP,EAAGwL,EAAOvL,GAE9BkS,EAAIwB,OAAOnI,EAAOxL,EAAGgP,EAAS/O,GAE/BkS,EAAIwB,OAAOnI,EAAOxL,EAAGwL,EAAOvL,QAIxBuL,EAAOkJ,QAKZvC,EAAIwC,cACHL,EAAOtF,EAAS4F,sBAAwB5F,EAAS6F,kBACjDP,EAAOtF,EAAS8F,sBAAwB9F,EAAS+F,kBACjDT,EAAO9I,EAAOqJ,kBAAoBrJ,EAAOoJ,sBACzCN,EAAO9I,EAAOuJ,kBAAoBvJ,EAAOsJ,sBACzCtJ,EAAOxL,EACPwL,EAAOvL,GAVPkS,EAAIwB,OAAOnI,EAAOxL,EAAGwL,EAAOvL,KAc3B+U,EAAiBhD,EAWrB9C,EAAa+C,MAAQD,EAAUC,MAS/B/C,EAAa+F,qBAAuB,SAAS9C,GAC5CA,EAAIuB,YACJ1B,EAAUK,YAAY3U,MAAMsU,EAAW3W,YAGxC,IAAI6Z,EAAW,CAIdC,KAAM,SAAStoB,EAAOib,GACrB,OAAOoH,EAAalB,MAAM5rB,KAAKyK,KAAWzK,KAAKyK,GAAS,IAAKib,KAM/DoN,EAASC,KAAK,SAAU,CACvBC,aAAc,kBACdC,iBAAkB,OAClBC,kBAAmB,qDACnBC,gBAAiB,GACjBC,iBAAkB,SAClBC,kBAAmB,IACnBC,WAAW,IAGZ,IAAIC,EAAgBT,EAEhBpI,EAAiBoC,EAAapC,eAQlC,SAAS8I,GAAaC,GACrB,OAAKA,GAAQ3G,EAAazC,cAAcoJ,EAAK1C,OAASjE,EAAazC,cAAcoJ,EAAKC,QAC9E,MAGAD,EAAKlnB,MAAQknB,EAAKlnB,MAAQ,IAAM,KACpCknB,EAAK3K,OAAS2K,EAAK3K,OAAS,IAAM,IACnC2K,EAAK1C,KAAO,MACZ0C,EAAKC,OAOT,IAAIC,GAAkB,CASrBC,aAAc,SAASjyB,EAAOovB,GAC7B,IAAI8C,GAAW,GAAKlyB,GAAOggB,MAAM,wCACjC,IAAKkS,GAA0B,WAAfA,EAAQ,GACvB,OAAc,IAAP9C,EAKR,OAFApvB,GAASkyB,EAAQ,GAETA,EAAQ,IAChB,IAAK,KACJ,OAAOlyB,EACR,IAAK,IACJA,GAAS,IACT,MAGD,OAAOovB,EAAOpvB,GAUfmyB,UAAW,SAASnyB,GACnB,IAAIwe,EAAGlC,EAAGE,EAAGH,EAWb,OATI8O,EAAatC,SAAS7oB,IACzBwe,GAAKxe,EAAMyuB,KAAO,EAClBnS,GAAKtc,EAAM0uB,OAAS,EACpBlS,GAAKxc,EAAM2uB,QAAU,EACrBtS,GAAKrc,EAAMwuB,MAAQ,GAEnBhQ,EAAIlC,EAAIE,EAAIH,GAAKrc,GAAS,EAGpB,CACNyuB,IAAKjQ,EACLkQ,MAAOpS,EACPqS,OAAQnS,EACRgS,KAAMnS,EACNpR,OAAQuT,EAAIhC,EACZxR,MAAOqR,EAAIC,IAWb8V,WAAY,SAAStmB,GACpB,IAAIumB,EAAiBT,EAAcxjB,OAC/BghB,EAAOrG,EAAejd,EAAQwmB,SAAUD,EAAeb,iBACvDM,EAAO,CACVC,OAAQhJ,EAAejd,EAAQymB,WAAYF,EAAed,mBAC1DiB,WAAYrH,EAAarf,QAAQmmB,aAAalJ,EAAejd,EAAQ0mB,WAAYH,EAAeX,mBAAoBtC,GACpHA,KAAMA,EACNxkB,MAAOme,EAAejd,EAAQ2mB,UAAWJ,EAAeZ,kBACxDtK,OAAQ,KACRlT,OAAQ,IAIT,OADA6d,EAAK7d,OAAS4d,GAAaC,GACpBA,GAcRY,QAAS,SAASC,EAAQC,EAASpyB,EAAOqyB,GACzC,IACI9b,EAAG0S,EAAMzpB,EADT8yB,GAAY,EAGhB,IAAK/b,EAAI,EAAG0S,EAAOkJ,EAAO5oB,OAAQgN,EAAI0S,IAAQ1S,EAE7C,GADA/W,EAAQ2yB,EAAO5b,QACDvU,IAAVxC,SAGYwC,IAAZowB,GAA0C,oBAAV5yB,IACnCA,EAAQA,EAAM4yB,GACdE,GAAY,QAECtwB,IAAVhC,GAAuB2qB,EAAaxC,QAAQ3oB,KAC/CA,EAAQA,EAAMQ,GACdsyB,GAAY,QAECtwB,IAAVxC,GAIH,OAHI6yB,IAASC,IACZD,EAAKC,WAAY,GAEX9yB,IAUP+yB,GAAY,CAKfC,WAAY,SAAShzB,GACpB,IAEI+W,EAFA3T,EAAS,GACTgc,EAAO7P,KAAK6P,KAAKpf,GAGrB,IAAK+W,EAAI,EAAGA,EAAIqI,EAAMrI,IACjB/W,EAAQ+W,IAAM,IACjB3T,EAAOuI,KAAKoL,GACZ3T,EAAOuI,KAAK3L,EAAQ+W,IAUtB,OAPIqI,KAAiB,EAAPA,IACbhc,EAAOuI,KAAKyT,GAGbhc,EAAOI,MAAK,SAASoa,EAAGpB,GACvB,OAAOoB,EAAIpB,KACT9K,MACItO,GAGR6vB,MAAO1jB,KAAK0jB,OAAS,SAAShX,GAC7B,IAAIiX,EAAW3jB,KAAK4jB,IAAIlX,GAAK1M,KAAK6jB,OAG9BC,EAAY9jB,KAAKiQ,MAAM0T,GACvBI,EAAcrX,IAAM1M,KAAKC,IAAI,GAAI6jB,GAErC,OAAOC,EAAcD,EAAYH,IAI/BK,GAAeR,GAWnB5H,EAAa8H,MAAQF,GAAUE,MAE/B,IAAIO,GAAgB,SAASC,EAAOzoB,GACnC,MAAO,CACNiR,EAAG,SAASA,GACX,OAAOwX,EAAQA,EAAQzoB,EAAQiR,GAEhCyX,SAAU,SAASvW,GAClBnS,EAAQmS,GAETwW,UAAW,SAASC,GACnB,MAAc,WAAVA,EACIA,EAES,UAAVA,EAAoB,OAAS,SAErCC,MAAO,SAAS5X,EAAGjc,GAClB,OAAOic,EAAIjc,GAEZ8zB,WAAY,SAAS7X,EAAG8X,GACvB,OAAO9X,EAAI8X,KAKVC,GAAgB,WACnB,MAAO,CACN/X,EAAG,SAASA,GACX,OAAOA,GAERyX,SAAU,SAASvW,KAEnBwW,UAAW,SAASC,GACnB,OAAOA,GAERC,MAAO,SAAS5X,EAAGjc,GAClB,OAAOic,EAAIjc,GAEZ8zB,WAAY,SAAS7X,EAAGgY,GACvB,OAAOhY,KAKNiY,GAAa,SAASC,EAAKV,EAAOzoB,GACrC,OAAOmpB,EAAMX,GAAcC,EAAOzoB,GAASgpB,MAGxCI,GAAwB,SAAShG,EAAKiG,GACzC,IAAIzpB,EAAO0pB,EACO,QAAdD,GAAqC,QAAdA,IAC1BzpB,EAAQwjB,EAAIpiB,OAAOpB,MACnB0pB,EAAW,CACV1pB,EAAM2pB,iBAAiB,aACvB3pB,EAAM4pB,oBAAoB,cAG3B5pB,EAAM6pB,YAAY,YAAaJ,EAAW,aAC1CjG,EAAIsG,kBAAoBJ,IAItBK,GAAuB,SAASvG,GACnC,IAAIkG,EAAWlG,EAAIsG,uBACFlyB,IAAb8xB,WACIlG,EAAIsG,kBACXtG,EAAIpiB,OAAOpB,MAAM6pB,YAAY,YAAaH,EAAS,GAAIA,EAAS,MAI9DM,GAAc,CACjBpB,cAAeU,GACfE,sBAAuBA,GACvBO,qBAAsBA,IAGnBE,GAAY1J,EACZ2J,GAASpH,EACT1hB,GAASilB,EACTnlB,GAAUkmB,GACV+C,GAAOxB,GACPY,GAAMS,GAOV,SAASI,GAAYC,EAAOC,EAAMn1B,EAAOo1B,GACxC,IACIpe,EAAG0S,EAAMnqB,EAAK81B,EAAQtd,EAAQ2P,EAAQlnB,EAAM80B,EAAIC,EADhD5U,EAAOje,OAAOie,KAAK3gB,GAGvB,IAAKgX,EAAI,EAAG0S,EAAO/I,EAAK3W,OAAQgN,EAAI0S,IAAQ1S,EAa3C,GAZAzX,EAAMohB,EAAK3J,GAEX0Q,EAAS1nB,EAAMT,GAIV41B,EAAKza,eAAenb,KACxB41B,EAAK51B,GAAOmoB,GAGb2N,EAASF,EAAK51B,GAEV81B,IAAW3N,GAAqB,MAAXnoB,EAAI,GAA7B,CAYA,GARK21B,EAAMxa,eAAenb,KACzB21B,EAAM31B,GAAO81B,GAGdtd,EAASmd,EAAM31B,GAEfiB,SAAcknB,EAEVlnB,WAAgBuX,EACnB,GAAa,WAATvX,GAEH,GADA80B,EAAKjN,EAAatQ,GACdud,EAAGvR,QACNwR,EAAKlN,EAAaX,GACd6N,EAAGxR,OAAO,CACboR,EAAK51B,GAAOg2B,EAAGrO,IAAIoO,EAAIF,GAAM1S,YAC7B,eAGI,GAAIoS,GAAU/L,SAAShR,IAAW+c,GAAU/L,SAASrB,GAAS,CACpEyN,EAAK51B,GAAOwY,GAAU2P,EAAS3P,GAAUqd,EACzC,SAIFD,EAAK51B,GAAOmoB,GAnDdoN,GAAUC,OAASA,GACnBD,GAAU7oB,OAASA,GACnB6oB,GAAU/oB,QAAUA,GACpB+oB,GAAUE,KAAOA,GACjBF,GAAUV,IAAMA,GAmDhB,IAAIoB,GAAU,SAASC,GACtBX,GAAUvK,OAAOjsB,KAAMm3B,GACvBn3B,KAAKo3B,WAAW9b,MAAMtb,KAAMiZ,YAG7Bud,GAAUvK,OAAOiL,GAAQzc,UAAW,CACnC4c,WAAOlzB,EAEPizB,WAAY,WACXp3B,KAAKs3B,QAAS,GAGfC,MAAO,WACN,IAAIjL,EAAKtsB,KAKT,OAJKssB,EAAGkL,QACPlL,EAAGkL,MAAQhB,GAAUvK,OAAO,GAAIK,EAAGmL,SAEpCnL,EAAGoL,OAAS,GACLpL,GAGRqL,WAAY,SAASb,GACpB,IAAIxK,EAAKtsB,KACL0B,EAAQ4qB,EAAGmL,OACXb,EAAQtK,EAAGoL,OACXb,EAAOvK,EAAGkL,MAGd,OAAK91B,GAAkB,IAATo1B,GAMTD,IACJA,EAAOvK,EAAGkL,MAAQ,IAGdZ,IACJA,EAAQtK,EAAGoL,OAAS,IAGrBf,GAAYC,EAAOC,EAAMn1B,EAAOo1B,GAEzBxK,IAfNA,EAAGkL,MAAQhB,GAAUvK,OAAO,GAAIvqB,GAChC4qB,EAAGoL,OAAS,KACLpL,IAgBTsL,gBAAiB,WAChB,MAAO,CACNha,EAAG5d,KAAKy3B,OAAO7Z,EACfC,EAAG7d,KAAKy3B,OAAO5Z,IAIjBga,SAAU,WACT,OAAOrB,GAAUsB,SAAS93B,KAAKy3B,OAAO7Z,IAAM4Y,GAAUsB,SAAS93B,KAAKy3B,OAAO5Z,MAI7EqZ,GAAQjL,OAASuK,GAAUpK,SAE3B,IAAI2L,GAAeb,GAEfc,GAAYD,GAAa9L,OAAO,CACnC6D,MAAO,KACPmI,YAAa,EACbC,SAAU,GACVzB,OAAQ,GACR32B,OAAQ,KAERq4B,oBAAqB,KACrBC,oBAAqB,OAGlBC,GAAiBL,GAUrB5zB,OAAOsZ,eAAesa,GAAUvd,UAAW,kBAAmB,CAC7DpV,IAAK,WACJ,OAAOrF,QAUToE,OAAOsZ,eAAesa,GAAUvd,UAAW,gBAAiB,CAC3DpV,IAAK,WACJ,OAAOrF,KAAK8vB,OAEbhf,IAAK,SAASnP,GACb3B,KAAK8vB,MAAQnuB,KAIf4xB,EAAcR,KAAK,SAAU,CAC5BuF,UAAW,CACVC,SAAU,IACV9B,OAAQ,eACR+B,WAAYhC,GAAUrM,KACtBsO,WAAYjC,GAAUrM,QAIxB,IAAIuO,GAAkB,CACrBC,WAAY,GACZC,QAAS,KAQTC,aAAc,SAAS/I,EAAOwI,EAAWC,EAAUO,GAClD,IACIpgB,EAAG0S,EADHuN,EAAa34B,KAAK24B,WAWtB,IARAL,EAAUxI,MAAQA,EAClBwI,EAAUS,UAAY7wB,KAAKC,MAC3BmwB,EAAUC,SAAWA,EAEhBO,IACJhJ,EAAMkJ,WAAY,GAGdtgB,EAAI,EAAG0S,EAAOuN,EAAWjtB,OAAQgN,EAAI0S,IAAQ1S,EACjD,GAAIigB,EAAWjgB,GAAGoX,QAAUA,EAE3B,YADA6I,EAAWjgB,GAAK4f,GAKlBK,EAAWrrB,KAAKgrB,GAGU,IAAtBK,EAAWjtB,QACd1L,KAAKi5B,yBAIPC,gBAAiB,SAASpJ,GACzB,IAAI3tB,EAAQq0B,GAAU2C,UAAUn5B,KAAK24B,YAAY,SAASL,GACzD,OAAOA,EAAUxI,QAAUA,MAGb,IAAX3tB,IACHnC,KAAK24B,WAAW3pB,OAAO7M,EAAO,GAC9B2tB,EAAMkJ,WAAY,IAIpBC,sBAAuB,WACtB,IAAI3M,EAAKtsB,KACU,OAAfssB,EAAGsM,UAINtM,EAAGsM,QAAUpC,GAAU4C,iBAAiB5f,KAAKsQ,QAAQ,WACpDwC,EAAGsM,QAAU,KACbtM,EAAG+M,mBAQNA,YAAa,WACZ,IAAI/M,EAAKtsB,KAETssB,EAAGgN,UAGChN,EAAGqM,WAAWjtB,OAAS,GAC1B4gB,EAAG2M,yBAOLK,QAAS,WACR,IACIhB,EAAWxI,EAAOoI,EAAUqB,EAD5BZ,EAAa34B,KAAK24B,WAElBjgB,EAAI,EAGR,MAAOA,EAAIigB,EAAWjtB,OACrB4sB,EAAYK,EAAWjgB,GACvBoX,EAAQwI,EAAUxI,MAClBoI,EAAWI,EAAUJ,SAIrBqB,EAAWroB,KAAKD,OAAO/I,KAAKC,MAAQmwB,EAAUS,WAAaT,EAAUC,SAAWL,GAAY,EAC5FI,EAAUL,YAAc/mB,KAAKkN,IAAImb,EAAUrB,GAE3C1B,GAAU50B,SAAS02B,EAAUx4B,OAAQ,CAACgwB,EAAOwI,GAAYxI,GACzD0G,GAAU50B,SAAS02B,EAAUH,oBAAqB,CAACG,GAAYxI,GAE3DwI,EAAUL,aAAeC,GAC5B1B,GAAU50B,SAAS02B,EAAUF,oBAAqB,CAACE,GAAYxI,GAC/DA,EAAMkJ,WAAY,EAClBL,EAAW3pB,OAAO0J,EAAG,MAEnBA,IAMF2b,GAAUmC,GAAU/oB,QAAQ4mB,QAE5BmF,GAAc,CAAC,OAAQ,MAAO,QAAS,SAAU,WAOrD,SAASC,GAAkBzM,EAAO0M,GAC7B1M,EAAM2M,SACT3M,EAAM2M,SAASC,UAAUtsB,KAAKosB,IAI/Bt1B,OAAOsZ,eAAesP,EAAO,WAAY,CACxCjS,cAAc,EACdC,YAAY,EACZrZ,MAAO,CACNi4B,UAAW,CAACF,MAIdF,GAAYv0B,SAAQ,SAAShE,GAC5B,IAAI44B,EAAS,SAAW54B,EAAIqR,OAAO,GAAGmP,cAAgBxgB,EAAIqK,MAAM,GAC5DyM,EAAOiV,EAAM/rB,GAEjBmD,OAAOsZ,eAAesP,EAAO/rB,EAAK,CACjC8Z,cAAc,EACdC,YAAY,EACZrZ,MAAO,WACN,IAAIuf,EAAOlU,MAAMyN,UAAUnP,MAAMkO,KAAKP,WAClC6gB,EAAM/hB,EAAKuD,MAAMtb,KAAMkhB,GAQ3B,OANAsV,GAAU1L,KAAKkC,EAAM2M,SAASC,WAAW,SAASG,GACnB,oBAAnBA,EAAOF,IACjBE,EAAOF,GAAQve,MAAMye,EAAQ7Y,MAIxB4Y,SAUX,SAASE,GAAoBhN,EAAO0M,GACnC,IAAIO,EAAOjN,EAAM2M,SACjB,GAAKM,EAAL,CAIA,IAAIL,EAAYK,EAAKL,UACjBz3B,EAAQy3B,EAAU3P,QAAQyP,IACf,IAAXv3B,GACHy3B,EAAU5qB,OAAO7M,EAAO,GAGrBy3B,EAAUluB,OAAS,IAIvB8tB,GAAYv0B,SAAQ,SAAShE,UACrB+rB,EAAM/rB,aAGP+rB,EAAM2M,WAId,IAAIO,GAAoB,SAASpK,EAAOqK,GACvCn6B,KAAKo3B,WAAWtH,EAAOqK,IAGxB3D,GAAUvK,OAAOiO,GAAkBzf,UAAW,CAM7C2f,mBAAoB,KAMpBC,gBAAiB,KAQjBC,uBAAwB,CACvB,kBACA,iBACA,cACA,aACA,mBACA,kBACA,eASDC,oBAAqB,CACpB,kBACA,cACA,cACA,cAGDnD,WAAY,SAAStH,EAAOqK,GAC3B,IAAI7N,EAAKtsB,KACTssB,EAAGwD,MAAQA,EACXxD,EAAGnqB,MAAQg4B,EACX7N,EAAGkO,aACHlO,EAAGmO,cACHnO,EAAG+K,MAAQ/K,EAAGoO,UAAUx4B,MAGzBy4B,YAAa,SAASR,GACrBn6B,KAAKmC,MAAQg4B,GAGdK,WAAY,WACX,IAAIlO,EAAKtsB,KACL46B,EAAOtO,EAAGoO,UACV5K,EAAQxD,EAAGwD,MACX+K,EAAS/K,EAAM+K,OACfC,EAAUxO,EAAGyO,aACbC,EAAalL,EAAMriB,QAAQotB,OAEV,OAAjBD,EAAKK,SAAsBL,EAAKK,WAAWJ,IAAWC,EAAQG,UACjEL,EAAKK,QAAUH,EAAQG,SAAWD,EAAWE,MAAM,GAAGxuB,IAElC,OAAjBkuB,EAAKO,SAAsBP,EAAKO,WAAWN,IAAWC,EAAQK,UACjEP,EAAKO,QAAUL,EAAQK,SAAWH,EAAWI,MAAM,GAAG1uB,KAIxDquB,WAAY,WACX,OAAO/6B,KAAK8vB,MAAMrtB,KAAK44B,SAASr7B,KAAKmC,QAGtCu4B,QAAS,WACR,OAAO16B,KAAK8vB,MAAMwL,eAAet7B,KAAKmC,QAGvCo5B,cAAe,SAASC,GACvB,OAAOx7B,KAAK8vB,MAAM+K,OAAOW,IAM1BC,iBAAkB,WACjB,OAAOz7B,KAAK06B,UAAUS,SAMvBO,iBAAkB,WACjB,OAAO17B,KAAK06B,UAAUO,SAMvBU,eAAgB,WACf,OAAO37B,KAAKu7B,cAAcv7B,KAAKy7B,qBAMhCG,eAAgB,WACf,OAAO57B,KAAKu7B,cAAcv7B,KAAK07B,qBAGhCh1B,MAAO,WACN1G,KAAK67B,SAAQ,IAMdnuB,QAAS,WACJ1N,KAAK87B,OACR9B,GAAoBh6B,KAAK87B,MAAO97B,OAIlC+7B,kBAAmB,WAClB,IAAIzP,EAAKtsB,KACLkC,EAAOoqB,EAAG8N,mBACd,OAAOl4B,GAAQ,IAAIA,EAAK,CACvB+K,OAAQqf,EAAGwD,MACXkM,cAAe1P,EAAGnqB,SAIpB85B,eAAgB,SAAS95B,GACxB,IAAImqB,EAAKtsB,KACLkC,EAAOoqB,EAAG+N,gBACd,OAAOn4B,GAAQ,IAAIA,EAAK,CACvB+K,OAAQqf,EAAGwD,MACXkM,cAAe1P,EAAGnqB,MAClB+5B,OAAQ/5B,KAIVs4B,YAAa,WACZ,IAII/hB,EAAG0S,EAJHkB,EAAKtsB,KACL46B,EAAOtO,EAAGoO,UACVj4B,EAAO6pB,EAAGyO,aAAat4B,MAAQ,GAC/B05B,EAAWvB,EAAKn4B,KAGpB,IAAKiW,EAAI,EAAG0S,EAAO3oB,EAAKiJ,OAAQgN,EAAI0S,IAAQ1S,EAC3CyjB,EAASzjB,GAAKyjB,EAASzjB,IAAM4T,EAAG2P,eAAevjB,GAGhDkiB,EAAKE,QAAUF,EAAKE,SAAWxO,EAAGyP,qBAGnCK,mBAAoB,SAASj6B,GAC5B,IAAIk6B,EAAUr8B,KAAKi8B,eAAe95B,GAClCnC,KAAK06B,UAAUj4B,KAAKuM,OAAO7M,EAAO,EAAGk6B,GACrCr8B,KAAKs8B,cAAcD,EAASl6B,GAAO,IAGpCo6B,sBAAuB,WACtB,IAAIjQ,EAAKtsB,KACL86B,EAAUxO,EAAGyO,aACbt4B,EAAOq4B,EAAQr4B,OAASq4B,EAAQr4B,KAAO,IAKvC6pB,EAAGwP,QAAUr5B,IACZ6pB,EAAGwP,OAEN9B,GAAoB1N,EAAGwP,MAAOxP,GAG3B7pB,GAAQ2B,OAAOo4B,aAAa/5B,IAC/Bg3B,GAAkBh3B,EAAM6pB,GAEzBA,EAAGwP,MAAQr5B,GAKZ6pB,EAAGmQ,kBAOJC,WAAY,WACX,IAAIpQ,EAAKtsB,KACTssB,EAAGqQ,QAAUnG,GAAU5K,MAAMxnB,OAAOmnB,OAAO,MAAO,CACjDe,EAAGwD,MAAMriB,QAAQ4tB,SAAS/O,EAAG+K,OAC7B/K,EAAGyO,cACD,CACF/O,OAAQ,SAAS/qB,EAAKmoB,EAAQD,GACjB,UAARloB,GAA2B,SAARA,GACtBu1B,GAAU/K,QAAQxqB,EAAKmoB,EAAQD,OAMnC0S,QAAS,SAASn1B,GACjB,IAAI4lB,EAAKtsB,KACTssB,EAAGoQ,aACHpQ,EAAGsQ,gBAAkB,KACrBtQ,EAAGuQ,OAAOn2B,IAGXm2B,OAAQrG,GAAUrM,KAElBwN,WAAY,SAASmF,GAMpB,IALA,IAAIlC,EAAO56B,KAAK06B,UACZqC,EAAWnC,EAAKn4B,MAAQ,GACxB2oB,EAAO2R,EAASrxB,OAChBgN,EAAI,EAEDA,EAAI0S,IAAQ1S,EAClBqkB,EAASrkB,GAAGif,WAAWmF,GAGpBlC,EAAKE,SACRF,EAAKE,QAAQnD,WAAWmF,IAI1BE,KAAM,WACL,IAAIpC,EAAO56B,KAAK06B,UACZqC,EAAWnC,EAAKn4B,MAAQ,GACxB2oB,EAAO2R,EAASrxB,OAChBgN,EAAI,EAMR,IAJIkiB,EAAKE,SACRF,EAAKE,QAAQkC,OAGPtkB,EAAI0S,IAAQ1S,EAClBqkB,EAASrkB,GAAGskB,QAUdC,SAAU,SAAS96B,GAClB,IAGIoK,EAHA+f,EAAKtsB,KACL46B,EAAOtO,EAAGoO,UACVI,EAAUF,EAAKE,QAenB,OAZAxO,EAAGoQ,aACC5B,QAAqB32B,IAAVhC,EACdoK,EAAQ+f,EAAG4Q,8BAA8BpC,GAAW,KAEpD34B,EAAQA,GAAS,EACjBoK,EAAQ+f,EAAG6Q,2BAA2BvC,EAAKn4B,KAAKN,IAAU,GAAIA,KAG5C,IAAfoK,EAAMklB,MAAiC,OAAfllB,EAAMklB,OACjCllB,EAAM6wB,gBAAkB7wB,EAAM8wB,aAGxB9wB,GAMR2wB,8BAA+B,SAASb,EAASiB,GAChD,IAOI5kB,EAAG0S,EAAMnqB,EAAKs8B,EAPdjR,EAAKtsB,KACL8vB,EAAQxD,EAAGwD,MACX0N,EAAclR,EAAGqQ,QACjBc,EAASpB,EAAQoB,QAAU,GAC3BhwB,EAAUqiB,EAAMriB,QAAQsvB,SAASzQ,EAAG8N,mBAAmB3f,UAAU4c,QAAU,GAC3EqG,EAAiBpR,EAAGgO,uBACpB5U,EAAS,GAIT6O,EAAU,CACbzE,MAAOA,EACPgL,QAASxO,EAAGyO,aACZZ,aAAc7N,EAAGnqB,MACjBm7B,MAAOA,GAGR,IAAK5kB,EAAI,EAAG0S,EAAOsS,EAAehyB,OAAQgN,EAAI0S,IAAQ1S,EACrDzX,EAAMy8B,EAAehlB,GACrB6kB,EAAUD,EAAQ,QAAUr8B,EAAIqR,OAAO,GAAGmP,cAAgBxgB,EAAIqK,MAAM,GAAKrK,EACzEykB,EAAOzkB,GAAOozB,GAAQ,CACrBoJ,EAAOF,GACPC,EAAYD,GACZ9vB,EAAQ8vB,IACNhJ,GAGJ,OAAO7O,GAMRyX,2BAA4B,SAASd,EAASl6B,GAC7C,IAAImqB,EAAKtsB,KACLy9B,EAASpB,GAAWA,EAAQoB,OAC5BE,EAASrR,EAAGsQ,gBAChB,GAAIe,IAAWF,EACd,OAAOE,EAER,IAiBItb,EAAM3J,EAAG0S,EAAMnqB,EAjBf6uB,EAAQxD,EAAGwD,MACX0N,EAAclR,EAAGqQ,QACjBlvB,EAAUqiB,EAAMriB,QAAQsvB,SAASzQ,EAAG+N,gBAAgB5f,UAAU4c,QAAU,GACxEqG,EAAiBpR,EAAGiO,oBACpB7U,EAAS,GAGT6O,EAAU,CACbzE,MAAOA,EACP8N,UAAWz7B,EACX24B,QAASxO,EAAGyO,aACZZ,aAAc7N,EAAGnqB,OAIdqyB,EAAO,CAACC,WAAYgJ,GAMxB,GAFAA,EAASA,GAAU,GAEfjH,GAAUlM,QAAQoT,GACrB,IAAKhlB,EAAI,EAAG0S,EAAOsS,EAAehyB,OAAQgN,EAAI0S,IAAQ1S,EACrDzX,EAAMy8B,EAAehlB,GACrBgN,EAAOzkB,GAAOozB,GAAQ,CACrBoJ,EAAOx8B,GACPu8B,EAAYv8B,GACZwM,EAAQxM,IACNszB,EAASpyB,EAAOqyB,QAIpB,IADAnS,EAAOje,OAAOie,KAAKqb,GACdhlB,EAAI,EAAG0S,EAAO/I,EAAK3W,OAAQgN,EAAI0S,IAAQ1S,EAC3CzX,EAAMohB,EAAK3J,GACXgN,EAAOzkB,GAAOozB,GAAQ,CACrBoJ,EAAOx8B,GACPu8B,EAAYE,EAAez8B,IAC3Bu8B,EAAYv8B,GACZwM,EAAQxM,IACNszB,EAASpyB,EAAOqyB,GAQrB,OAJIA,EAAKC,YACRnI,EAAGsQ,gBAAkBx4B,OAAOy5B,OAAOnY,IAG7BA,GAGRoY,iBAAkB,SAASzB,GAC1B7F,GAAU5K,MAAMyQ,EAAQ5E,OAAQ4E,EAAQ0B,gBAAkB,WACnD1B,EAAQ0B,gBAGhBC,cAAe,SAAS3B,GACvB,IAAIvB,EAAU96B,KAAK8vB,MAAMrtB,KAAK44B,SAASgB,EAAQL,eAC3C75B,EAAQk6B,EAAQH,OAChBuB,EAASpB,EAAQoB,QAAU,GAC3B/7B,EAAQ26B,EAAQ5E,OAChBwG,EAAgBzH,GAAUyH,cAE9B5B,EAAQ0B,eAAiB,CACxBX,gBAAiB17B,EAAM07B,gBACvBC,YAAa37B,EAAM27B,YACnBa,YAAax8B,EAAMw8B,aAGpBx8B,EAAM07B,gBAAkB/I,GAAQ,CAACoJ,EAAOU,qBAAsBrD,EAAQqD,qBAAsBF,EAAcv8B,EAAM07B,uBAAmBj5B,EAAWhC,GAC9IT,EAAM27B,YAAchJ,GAAQ,CAACoJ,EAAOW,iBAAkBtD,EAAQsD,iBAAkBH,EAAcv8B,EAAM27B,mBAAel5B,EAAWhC,GAC9HT,EAAMw8B,YAAc7J,GAAQ,CAACoJ,EAAOY,iBAAkBvD,EAAQuD,iBAAkB38B,EAAMw8B,kBAAc/5B,EAAWhC,IAMhHm8B,yBAA0B,WACzB,IAAIjC,EAAUr8B,KAAK06B,UAAUI,QAEzBuB,GACHr8B,KAAK89B,iBAAiBzB,IAOxBkC,sBAAuB,WACtB,IAEI7lB,EAAG0S,EAAMnqB,EAAKohB,EAAMmc,EAAc98B,EAFlC26B,EAAUr8B,KAAK06B,UAAUI,QACzB2D,EAAO,GAGX,GAAKpC,EAAL,CAQA,IAJA36B,EAAQ26B,EAAQ5E,OAChB+G,EAAex+B,KAAKk9B,8BAA8Bb,GAAS,GAE3Dha,EAAOje,OAAOie,KAAKmc,GACd9lB,EAAI,EAAG0S,EAAO/I,EAAK3W,OAAQgN,EAAI0S,IAAQ1S,EAC3CzX,EAAMohB,EAAK3J,GACX+lB,EAAKx9B,GAAOS,EAAMT,GAClBS,EAAMT,GAAOu9B,EAAav9B,GAG3Bo7B,EAAQ0B,eAAiBU,IAM1BhC,eAAgB,WACf,IAAInQ,EAAKtsB,KACL46B,EAAOtO,EAAGoO,UACVj4B,EAAO6pB,EAAGyO,aAAat4B,KACvBi8B,EAAU9D,EAAKn4B,KAAKiJ,OACpBizB,EAAUl8B,EAAKiJ,OAEfizB,EAAUD,EACb9D,EAAKn4B,KAAKuM,OAAO2vB,EAASD,EAAUC,GAC1BA,EAAUD,GACpBpS,EAAGsS,eAAeF,EAASC,EAAUD,IAOvCE,eAAgB,SAAShI,EAAOiI,GAC/B,IAAK,IAAInmB,EAAI,EAAGA,EAAImmB,IAASnmB,EAC5B1Y,KAAKo8B,mBAAmBxF,EAAQle,IAOlComB,WAAY,WACX,IAAID,EAAQ5lB,UAAUvN,OACtB1L,KAAK4+B,eAAe5+B,KAAK+6B,aAAat4B,KAAKiJ,OAASmzB,EAAOA,IAM5DE,UAAW,WACV/+B,KAAK06B,UAAUj4B,KAAK4Q,OAMrB2rB,YAAa,WACZh/B,KAAK06B,UAAUj4B,KAAKoW,SAMrBomB,aAAc,SAASrI,EAAOiI,GAC7B7+B,KAAK06B,UAAUj4B,KAAKuM,OAAO4nB,EAAOiI,GAClC7+B,KAAK4+B,eAAehI,EAAO3d,UAAUvN,OAAS,IAM/CwzB,cAAe,WACdl/B,KAAK4+B,eAAe,EAAG3lB,UAAUvN,WAInCwuB,GAAkBjO,OAASuK,GAAUpK,SAErC,IAAI+S,GAAyBjF,GAEzBkF,GAAgB,EAAVluB,KAAK4P,GAaf,SAASue,GAAQtP,EAAKS,GACrB,IAAI8O,EAAa9O,EAAI8O,WACjBC,EAAW/O,EAAI+O,SACfC,EAAchP,EAAIgP,YAClBC,EAAcD,EAAchP,EAAIkP,YAChC9hB,EAAI4S,EAAI5S,EACRC,EAAI2S,EAAI3S,EAIZkS,EAAIuB,YACJvB,EAAIS,IAAI5S,EAAGC,EAAG2S,EAAIkP,YAAaJ,EAAaG,EAAaF,EAAWE,GAChEjP,EAAImP,YAAcH,GACrBC,EAAcD,EAAchP,EAAImP,YAChC5P,EAAIS,IAAI5S,EAAGC,EAAG2S,EAAImP,YAAcH,EAAaD,EAAWE,EAAaH,EAAaG,GAAa,IAE/F1P,EAAIS,IAAI5S,EAAGC,EAAG2hB,EAAaD,EAAWruB,KAAK4P,GAAK,EAAGwe,EAAapuB,KAAK4P,GAAK,GAE3EiP,EAAIU,YACJV,EAAIiC,OAGL,SAAS4N,GAAsB7P,EAAK8P,EAAIrP,EAAKsP,GAC5C,IACIpnB,EADA6mB,EAAW/O,EAAI+O,SAenB,IAZIO,IACHtP,EAAI+O,SAAW/O,EAAI8O,WAAaF,GAChCC,GAAQtP,EAAKS,GACbA,EAAI+O,SAAWA,EACX/O,EAAI+O,WAAa/O,EAAI8O,YAAc9O,EAAIuP,cAC1CvP,EAAI+O,UAAYH,GAChB5O,EAAIuP,gBAINhQ,EAAIuB,YACJvB,EAAIS,IAAIA,EAAI5S,EAAG4S,EAAI3S,EAAG2S,EAAImP,YAAanP,EAAI8O,WAAaF,GAAK5O,EAAI8O,YAAY,GACxE5mB,EAAI,EAAGA,EAAI8X,EAAIuP,cAAernB,EAClCqX,EAAI2B,SAKL,IAFA3B,EAAIuB,YACJvB,EAAIS,IAAIA,EAAI5S,EAAG4S,EAAI3S,EAAGgiB,EAAGH,YAAalP,EAAI8O,WAAY9O,EAAI8O,WAAaF,IAClE1mB,EAAI,EAAGA,EAAI8X,EAAIuP,cAAernB,EAClCqX,EAAI2B,SAIN,SAASsO,GAAWjQ,EAAK8P,EAAIrP,GAC5B,IAAIsP,EAA2B,UAAnBD,EAAGI,YAEXH,GACH/P,EAAImQ,UAA6B,EAAjBL,EAAG3B,YACnBnO,EAAIoQ,SAAW,UAEfpQ,EAAImQ,UAAYL,EAAG3B,YACnBnO,EAAIoQ,SAAW,SAGZ3P,EAAIuP,aACPH,GAAsB7P,EAAK8P,EAAIrP,EAAKsP,GAGjCA,GACHT,GAAQtP,EAAKS,GAGdT,EAAIuB,YACJvB,EAAIS,IAAIA,EAAI5S,EAAG4S,EAAI3S,EAAGgiB,EAAGH,YAAalP,EAAI8O,WAAY9O,EAAI+O,UAC1DxP,EAAIS,IAAIA,EAAI5S,EAAG4S,EAAI3S,EAAG2S,EAAImP,YAAanP,EAAI+O,SAAU/O,EAAI8O,YAAY,GACrEvP,EAAIU,YACJV,EAAI2B,SAnFL6B,EAAcR,KAAK,SAAU,CAC5BgK,SAAU,CACTvM,IAAK,CACJ4M,gBAAiB7J,EAAcxjB,OAAOijB,aACtCqK,YAAa,OACba,YAAa,EACb+B,YAAa,aAgFhB,IAAIG,GAAcrI,GAAa9L,OAAO,CACrCoL,MAAO,MAEPgJ,aAAc,SAASC,GACtB,IAAIT,EAAK7/B,KAAKw3B,MAEd,QAAIqI,GACK3uB,KAAKC,IAAImvB,EAAST,EAAGjiB,EAAG,GAAK1M,KAAKC,IAAI0uB,EAAG3P,OAAS2P,EAAGU,YAAa,IAK5EC,QAAS,SAASC,EAAQC,GACzB,IAAIb,EAAK7/B,KAAKw3B,MAEd,GAAIqI,EAAI,CACP,IAAIc,EAAwBnK,GAAUoK,kBAAkBf,EAAI,CAACjiB,EAAG6iB,EAAQ5iB,EAAG6iB,IACvEG,EAAQF,EAAsBE,MAC9BxhB,EAAWshB,EAAsBthB,SAGjCigB,EAAaO,EAAGP,WAChBC,EAAWM,EAAGN,SAClB,MAAOA,EAAWD,EACjBC,GAAYH,GAEb,MAAOyB,EAAQtB,EACdsB,GAASzB,GAEV,MAAOyB,EAAQvB,EACduB,GAASzB,GAIV,IAAI0B,EAAiBD,GAASvB,GAAcuB,GAAStB,EACjDwB,EAAgB1hB,GAAYwgB,EAAGF,aAAetgB,GAAYwgB,EAAGH,YAEjE,OAAQoB,GAAiBC,EAE1B,OAAO,GAGRC,eAAgB,WACf,IAAInB,EAAK7/B,KAAKw3B,MACVyJ,GAAapB,EAAGP,WAAaO,EAAGN,UAAY,EAC5C2B,GAAcrB,EAAGF,YAAcE,EAAGH,aAAe,EACrD,MAAO,CACN9hB,EAAGiiB,EAAGjiB,EAAI1M,KAAK8P,IAAIigB,GAAaC,EAChCrjB,EAAGgiB,EAAGhiB,EAAI3M,KAAK+P,IAAIggB,GAAaC,IAIlCC,QAAS,WACR,IAAItB,EAAK7/B,KAAKw3B,MACd,OAAOtmB,KAAK4P,KAAO+e,EAAGN,SAAWM,EAAGP,aAAe,EAAIpuB,KAAK4P,MAAQ5P,KAAKC,IAAI0uB,EAAGH,YAAa,GAAKxuB,KAAKC,IAAI0uB,EAAGF,YAAa,KAG5H/H,gBAAiB,WAChB,IAAIiI,EAAK7/B,KAAKw3B,MACV4J,EAAcvB,EAAGP,YAAeO,EAAGN,SAAWM,EAAGP,YAAc,EAC/D+B,GAAmBxB,EAAGH,YAAcG,EAAGF,aAAe,EAAIE,EAAGF,YAEjE,MAAO,CACN/hB,EAAGiiB,EAAGjiB,EAAK1M,KAAK8P,IAAIogB,GAAeC,EACnCxjB,EAAGgiB,EAAGhiB,EAAK3M,KAAK+P,IAAImgB,GAAeC,IAIrCrE,KAAM,WACL,IAaItkB,EAbAqX,EAAM/vB,KAAKiN,OAAO8iB,IAClB8P,EAAK7/B,KAAKw3B,MACVgI,EAAkC,UAAnBK,EAAGI,YAA2B,IAAO,EACpDzP,EAAM,CACT5S,EAAGiiB,EAAGjiB,EACNC,EAAGgiB,EAAGhiB,EACN8hB,YAAaE,EAAGF,YAChBD,YAAaxuB,KAAKmN,IAAIwhB,EAAGH,YAAcF,EAAa,GACpDA,YAAaA,EACbF,WAAYO,EAAGP,WACfC,SAAUM,EAAGN,SACbQ,YAAa7uB,KAAKD,MAAM4uB,EAAGyB,cAAgBlC,KAS5C,GALArP,EAAImB,OAEJnB,EAAIwR,UAAY1B,EAAGzC,gBACnBrN,EAAIyR,YAAc3B,EAAGxC,YAEjB7M,EAAIuP,YAAa,CAMpB,IALAvP,EAAI+O,SAAW/O,EAAI8O,WAAaF,GAChCrP,EAAIuB,YACJvB,EAAIS,IAAIA,EAAI5S,EAAG4S,EAAI3S,EAAG2S,EAAIkP,YAAalP,EAAI8O,WAAY9O,EAAI+O,UAC3DxP,EAAIS,IAAIA,EAAI5S,EAAG4S,EAAI3S,EAAG2S,EAAImP,YAAanP,EAAI+O,SAAU/O,EAAI8O,YAAY,GACrEvP,EAAIU,YACC/X,EAAI,EAAGA,EAAI8X,EAAIuP,cAAernB,EAClCqX,EAAI0B,OAELjB,EAAI+O,SAAW/O,EAAI8O,WAAaO,EAAGyB,cAAgBlC,GAGpDrP,EAAIuB,YACJvB,EAAIS,IAAIA,EAAI5S,EAAG4S,EAAI3S,EAAG2S,EAAIkP,YAAalP,EAAI8O,WAAY9O,EAAI+O,UAC3DxP,EAAIS,IAAIA,EAAI5S,EAAG4S,EAAI3S,EAAG2S,EAAImP,YAAanP,EAAI+O,SAAU/O,EAAI8O,YAAY,GACrEvP,EAAIU,YACJV,EAAI0B,OAEAoO,EAAG3B,aACN8B,GAAWjQ,EAAK8P,EAAIrP,GAGrBT,EAAIsB,aAIFoQ,GAAmBjL,GAAU9L,eAE7BsI,GAAeO,EAAcxjB,OAAOijB,aAExCO,EAAcR,KAAK,SAAU,CAC5BgK,SAAU,CACT2E,KAAM,CACLpP,QAAS,GACT8K,gBAAiBpK,GACjBkL,YAAa,EACbb,YAAarK,GACb2O,eAAgB,OAChBC,WAAY,GACZC,iBAAkB,EAClBC,gBAAiB,QACjBC,iBAAiB,EACjBtQ,MAAM,MAKT,IAAIuQ,GAAejK,GAAa9L,OAAO,CACtCoL,MAAO,OAEP2F,KAAM,WACL,IASI76B,EAAOyqB,EAAUqV,EATjB3V,EAAKtsB,KACL6/B,EAAKvT,EAAGkL,MACRzH,EAAMzD,EAAGrf,OAAO8iB,IAChBmS,EAAWrC,EAAGqC,SACdC,EAAS7V,EAAG8V,UAAU92B,QACtB0oB,EAAiBT,EAAcxjB,OAC/BsyB,EAA2BrO,EAAe+I,SAAS2E,KACnDY,GAAkB,EAClB7R,EAAYnE,EAAGiW,MAGnB,GAAKJ,EAAOz2B,OAAZ,CAIA,GAAI4gB,EAAGiW,MAAO,CACb,IAAKpgC,EAAQ,EAAGA,EAAQggC,EAAOz2B,SAAUvJ,EAGxC,GAFAyqB,EAAW4J,GAAUgM,aAAaL,EAAQhgC,IAErCggC,EAAOhgC,GAAOq1B,MAAMiL,MAAQ7V,EAAS4K,MAAMiL,KAAM,CACrDN,EAASA,EAAO72B,MAAMnJ,GAAOmkB,OAAO6b,EAAO72B,MAAM,EAAGnJ,IACpDsuB,EAAYyR,EACZ,MAIEzR,GACH0R,EAAO70B,KAAK60B,EAAO,IA6BrB,IAzBApS,EAAImB,OAGJnB,EAAI2S,QAAU7C,EAAG8B,gBAAkBU,EAAyBV,eAGxD5R,EAAI4S,aACP5S,EAAI4S,YAAY9C,EAAG+B,YAAcS,EAAyBT,YAG3D7R,EAAI6S,eAAiBnB,GAAiB5B,EAAGgC,iBAAkBQ,EAAyBR,kBACpF9R,EAAIoQ,SAAWN,EAAGiC,iBAAmBO,EAAyBP,gBAC9D/R,EAAImQ,UAAYuB,GAAiB5B,EAAG3B,YAAamE,EAAyBnE,aAC1EnO,EAAIyR,YAAc3B,EAAGxC,aAAerJ,EAAehB,aAGnDjD,EAAIuB,YAGJ2Q,EAAYE,EAAO,GAAG3K,MACjByK,EAAUQ,OACd1S,EAAIQ,OAAO0R,EAAUrkB,EAAGqkB,EAAUpkB,GAClCykB,EAAiB,GAGbngC,EAAQ,EAAGA,EAAQggC,EAAOz2B,SAAUvJ,EACxC8/B,EAAYE,EAAOhgC,GAAOq1B,MAC1B5K,GAA+B,IAApB0V,EAAwB9L,GAAUgM,aAAaL,EAAQhgC,GAASggC,EAAOG,GAE7EL,EAAUQ,OACTH,IAAoBngC,EAAQ,IAAO+/B,IAAiC,IAApBI,EAEpDvS,EAAIQ,OAAO0R,EAAUrkB,EAAGqkB,EAAUpkB,GAGlC2Y,GAAU7oB,OAAO4jB,OAAOxB,EAAKnD,EAAS4K,MAAOyK,GAE9CK,EAAiBngC,GAIfsuB,GACHV,EAAIU,YAGLV,EAAI2B,SACJ3B,EAAIsB,cAIFwR,GAAmBrM,GAAU9L,eAE7BoY,GAAiBvP,EAAcxjB,OAAOijB,aAkB1C,SAAS+P,GAAOzC,GACf,IAAIT,EAAK7/B,KAAKw3B,MACd,QAAOqI,GAAM3uB,KAAK8xB,IAAI1C,EAAST,EAAGjiB,GAAKiiB,EAAG3P,OAAS2P,EAAGoD,UAGvD,SAASC,GAAOC,GACf,IAAItD,EAAK7/B,KAAKw3B,MACd,QAAOqI,GAAM3uB,KAAK8xB,IAAIG,EAAStD,EAAGhiB,GAAKgiB,EAAG3P,OAAS2P,EAAGoD,UAvBvD1P,EAAcR,KAAK,SAAU,CAC5BgK,SAAU,CACTnL,MAAO,CACN1B,OAAQ,EACRkT,WAAY,SACZhG,gBAAiB0F,GACjBzF,YAAayF,GACb5E,YAAa,EAEb+E,UAAW,EACX1C,YAAa,EACblC,iBAAkB,MAerB,IAAIgF,GAAgBtL,GAAa9L,OAAO,CACvCoL,MAAO,QAEPmJ,QAAS,SAASF,EAAQ6C,GACzB,IAAItD,EAAK7/B,KAAKw3B,MACd,QAAOqI,GAAO3uB,KAAKC,IAAImvB,EAAST,EAAGjiB,EAAG,GAAK1M,KAAKC,IAAIgyB,EAAStD,EAAGhiB,EAAG,GAAM3M,KAAKC,IAAI0uB,EAAGoD,UAAYpD,EAAG3P,OAAQ,IAG7GmQ,aAAc0C,GACdO,SAAUP,GACVQ,SAAUL,GAEVlC,eAAgB,WACf,IAAInB,EAAK7/B,KAAKw3B,MACd,MAAO,CACN5Z,EAAGiiB,EAAGjiB,EACNC,EAAGgiB,EAAGhiB,IAIRsjB,QAAS,WACR,OAAOjwB,KAAK4P,GAAK5P,KAAKC,IAAInR,KAAKw3B,MAAMtH,OAAQ,IAG9C0H,gBAAiB,WAChB,IAAIiI,EAAK7/B,KAAKw3B,MACd,MAAO,CACN5Z,EAAGiiB,EAAGjiB,EACNC,EAAGgiB,EAAGhiB,EACN2lB,QAAS3D,EAAG3P,OAAS2P,EAAG3B,cAI1BlB,KAAM,SAASyG,GACd,IAAI5D,EAAK7/B,KAAKw3B,MACVzH,EAAM/vB,KAAKiN,OAAO8iB,IAClBqT,EAAavD,EAAGuD,WAChBxS,EAAWiP,EAAGjP,SACdV,EAAS2P,EAAG3P,OACZtS,EAAIiiB,EAAGjiB,EACPC,EAAIgiB,EAAGhiB,EACPmW,EAAiBT,EAAcxjB,OAC/BijB,EAAegB,EAAehB,aAE9B6M,EAAG4C,YAKWt+B,IAAds/B,GAA2BjN,GAAU7oB,OAAOgkB,eAAekO,EAAI4D,MAClE1T,EAAIyR,YAAc3B,EAAGxC,aAAerK,EACpCjD,EAAImQ,UAAY2C,GAAiBhD,EAAG3B,YAAalK,EAAe+I,SAASnL,MAAMsM,aAC/EnO,EAAIwR,UAAY1B,EAAGzC,iBAAmBpK,EACtCwD,GAAU7oB,OAAOgjB,UAAUZ,EAAKqT,EAAYlT,EAAQtS,EAAGC,EAAG+S,OAKzD8S,GAAiBnQ,EAAcxjB,OAAOijB,aAa1C,SAAS2Q,GAAW9D,GACnB,OAAOA,QAAmB17B,IAAb07B,EAAGlzB,MASjB,SAASi3B,GAAa/D,GACrB,IAAIgE,EAAInjB,EAAIojB,EAAIrjB,EAAIsjB,EAgBpB,OAdIJ,GAAW9D,IACdkE,EAAOlE,EAAGlzB,MAAQ,EAClBk3B,EAAKhE,EAAGjiB,EAAImmB,EACZrjB,EAAKmf,EAAGjiB,EAAImmB,EACZD,EAAK5yB,KAAKkN,IAAIyhB,EAAGhiB,EAAGgiB,EAAG9nB,MACvB0I,EAAKvP,KAAKmN,IAAIwhB,EAAGhiB,EAAGgiB,EAAG9nB,QAEvBgsB,EAAOlE,EAAGjzB,OAAS,EACnBi3B,EAAK3yB,KAAKkN,IAAIyhB,EAAGjiB,EAAGiiB,EAAG9nB,MACvB2I,EAAKxP,KAAKmN,IAAIwhB,EAAGjiB,EAAGiiB,EAAG9nB,MACvB+rB,EAAKjE,EAAGhiB,EAAIkmB,EACZtjB,EAAKof,EAAGhiB,EAAIkmB,GAGN,CACN5T,KAAM0T,EACNzT,IAAK0T,EACLzT,MAAO3P,EACP4P,OAAQ7P,GAIV,SAAShN,GAAKuwB,EAAM1Y,EAAI2Y,GACvB,OAAOD,IAAS1Y,EAAK2Y,EAAKD,IAASC,EAAK3Y,EAAK0Y,EAG9C,SAASE,GAAmBrE,GAC3B,IAAIsE,EAAOtE,EAAGuE,cACVtK,EAAM,GAEV,OAAKqK,GAIDtE,EAAGwE,WACFxE,EAAG9nB,KAAO8nB,EAAGjiB,IAChBumB,EAAO1wB,GAAK0wB,EAAM,OAAQ,UAEjBtE,EAAG9nB,KAAO8nB,EAAGhiB,IACvBsmB,EAAO1wB,GAAK0wB,EAAM,SAAU,QAG7BrK,EAAIqK,IAAQ,EACLrK,GAZCA,EAeT,SAASwK,GAAiBzE,EAAI0E,EAAMC,GACnC,IAEIrkB,EAAGlC,EAAGE,EAAGH,EAFTrc,EAAQk+B,EAAG3B,YACXuE,EAAOyB,GAAmBrE,GAY9B,OATIrJ,GAAUhM,SAAS7oB,IACtBwe,GAAKxe,EAAMyuB,KAAO,EAClBnS,GAAKtc,EAAM0uB,OAAS,EACpBlS,GAAKxc,EAAM2uB,QAAU,EACrBtS,GAAKrc,EAAMwuB,MAAQ,GAEnBhQ,EAAIlC,EAAIE,EAAIH,GAAKrc,GAAS,EAGpB,CACNwe,EAAGsiB,EAAKrS,KAAQjQ,EAAI,EAAK,EAAIA,EAAIqkB,EAAOA,EAAOrkB,EAC/ClC,EAAGwkB,EAAKpS,OAAUpS,EAAI,EAAK,EAAIA,EAAIsmB,EAAOA,EAAOtmB,EACjDE,EAAGskB,EAAKnS,QAAWnS,EAAI,EAAK,EAAIA,EAAIqmB,EAAOA,EAAOrmB,EAClDH,EAAGykB,EAAKtS,MAASnS,EAAI,EAAK,EAAIA,EAAIumB,EAAOA,EAAOvmB,GAIlD,SAASymB,GAAc5E,GACtB,IAAI6E,EAASd,GAAa/D,GACtBlzB,EAAQ+3B,EAAOrU,MAAQqU,EAAOvU,KAC9BvjB,EAAS83B,EAAOpU,OAASoU,EAAOtU,IAChCuU,EAASL,GAAiBzE,EAAIlzB,EAAQ,EAAGC,EAAS,GAEtD,MAAO,CACNg4B,MAAO,CACNhnB,EAAG8mB,EAAOvU,KACVtS,EAAG6mB,EAAOtU,IACVtR,EAAGnS,EACHmR,EAAGlR,GAEJkzB,MAAO,CACNliB,EAAG8mB,EAAOvU,KAAOwU,EAAO3mB,EACxBH,EAAG6mB,EAAOtU,IAAMuU,EAAOxkB,EACvBrB,EAAGnS,EAAQg4B,EAAO3mB,EAAI2mB,EAAO1mB,EAC7BH,EAAGlR,EAAS+3B,EAAOxkB,EAAIwkB,EAAOxmB,IAKjC,SAASqiB,GAAQX,EAAIjiB,EAAGC,GACvB,IAAIgnB,EAAc,OAANjnB,EACRknB,EAAc,OAANjnB,EACR6mB,KAAU7E,GAAOgF,GAASC,IAAiBlB,GAAa/D,GAE5D,OAAO6E,IACFG,GAASjnB,GAAK8mB,EAAOvU,MAAQvS,GAAK8mB,EAAOrU,SACzCyU,GAASjnB,GAAK6mB,EAAOtU,KAAOvS,GAAK6mB,EAAOpU,QAzH9CiD,EAAcR,KAAK,SAAU,CAC5BgK,SAAU,CACTgI,UAAW,CACV3H,gBAAiBsG,GACjBrG,YAAaqG,GACbU,cAAe,SACflG,YAAa,MAsHhB,IAAI8G,GAAoBjN,GAAa9L,OAAO,CAC3CoL,MAAO,YAEP2F,KAAM,WACL,IAAIjN,EAAM/vB,KAAKiN,OAAO8iB,IAClB8P,EAAK7/B,KAAKw3B,MACVyN,EAAQR,GAAc5E,GACtB+E,EAAQK,EAAML,MACd9E,EAAQmF,EAAMnF,MAElB/P,EAAIwR,UAAY1B,EAAGzC,gBACnBrN,EAAImV,SAASN,EAAMhnB,EAAGgnB,EAAM/mB,EAAG+mB,EAAM9lB,EAAG8lB,EAAM9mB,GAE1C8mB,EAAM9lB,IAAMghB,EAAMhhB,GAAK8lB,EAAM9mB,IAAMgiB,EAAMhiB,IAI7CiS,EAAImB,OACJnB,EAAIuB,YACJvB,EAAIW,KAAKkU,EAAMhnB,EAAGgnB,EAAM/mB,EAAG+mB,EAAM9lB,EAAG8lB,EAAM9mB,GAC1CiS,EAAIiC,OACJjC,EAAIwR,UAAY1B,EAAGxC,YACnBtN,EAAIW,KAAKoP,EAAMliB,EAAGkiB,EAAMjiB,EAAGiiB,EAAMhhB,EAAGghB,EAAMhiB,GAC1CiS,EAAI0B,KAAK,WACT1B,EAAIsB,YAGLzkB,OAAQ,WACP,IAAIizB,EAAK7/B,KAAKw3B,MACd,OAAOqI,EAAG9nB,KAAO8nB,EAAGhiB,GAGrB2iB,QAAS,SAASF,EAAQ6C,GACzB,OAAO3C,GAAQxgC,KAAKw3B,MAAO8I,EAAQ6C,IAGpC9C,aAAc,SAASC,EAAQ6C,GAC9B,IAAItD,EAAK7/B,KAAKw3B,MACd,OAAOmM,GAAW9D,GACfW,GAAQX,EAAIS,EAAQ,MACpBE,GAAQX,EAAI,KAAMsD,IAGtBG,SAAU,SAAShD,GAClB,OAAOE,GAAQxgC,KAAKw3B,MAAO8I,EAAQ,OAGpCiD,SAAU,SAASJ,GAClB,OAAO3C,GAAQxgC,KAAKw3B,MAAO,KAAM2L,IAGlCnC,eAAgB,WACf,IACIpjB,EAAGC,EADHgiB,EAAK7/B,KAAKw3B,MAUd,OARImM,GAAW9D,IACdjiB,EAAIiiB,EAAGjiB,EACPC,GAAKgiB,EAAGhiB,EAAIgiB,EAAG9nB,MAAQ,IAEvB6F,GAAKiiB,EAAGjiB,EAAIiiB,EAAG9nB,MAAQ,EACvB8F,EAAIgiB,EAAGhiB,GAGD,CAACD,EAAGA,EAAGC,EAAGA,IAGlBsjB,QAAS,WACR,IAAItB,EAAK7/B,KAAKw3B,MAEd,OAAOmM,GAAW9D,GACfA,EAAGlzB,MAAQuE,KAAK8xB,IAAInD,EAAGhiB,EAAIgiB,EAAG9nB,MAC9B8nB,EAAGjzB,OAASsE,KAAK8xB,IAAInD,EAAGjiB,EAAIiiB,EAAG9nB,OAGnC6f,gBAAiB,WAChB,IAAIiI,EAAK7/B,KAAKw3B,MACd,MAAO,CACN5Z,EAAGiiB,EAAGjiB,EACNC,EAAGgiB,EAAGhiB,MAKLkf,GAAW,GACXoI,GAAM/E,GACNpyB,GAAOg0B,GACPoD,GAAQ/B,GACRgC,GAAYL,GAChBjI,GAASoI,IAAMA,GACfpI,GAAS/uB,KAAOA,GAChB+uB,GAASqI,MAAQA,GACjBrI,GAASsI,UAAYA,GAErB,IAAIC,GAAa9O,GAAU7J,YACvB4Y,GAAmB/O,GAAU9L,eAmCjC,SAAS8a,GAAqBxgB,EAAOygB,GACpC,IACIhH,EAAMiH,EAAMhtB,EAAG0S,EADfhN,EAAM4G,EAAM2gB,QAGhB,IAAKjtB,EAAI,EAAG0S,EAAOqa,EAAO/5B,OAAQgN,EAAI0S,IAAQ1S,EAC7C0F,EAAMlN,KAAKkN,IAAIA,EAAKlN,KAAK8xB,IAAIyC,EAAO/sB,GAAK+sB,EAAO/sB,EAAI,KAGrD,IAAKA,EAAI,EAAG0S,EAAOpG,EAAM4gB,WAAWl6B,OAAQgN,EAAI0S,IAAQ1S,EACvDgtB,EAAO1gB,EAAM6gB,gBAAgBntB,GAC7B0F,EAAM1F,EAAI,EAAIxH,KAAKkN,IAAIA,EAAKlN,KAAK8xB,IAAI0C,EAAOjH,IAASrgB,EACrDqgB,EAAOiH,EAGR,OAAOtnB,EASR,SAAS0nB,GAAyB3jC,EAAO4jC,EAAOt4B,GAC/C,IAMIsjB,EAAMvQ,EANNwlB,EAAYv4B,EAAQw4B,aACpBpH,EAAQkH,EAAMG,WACdR,EAAOK,EAAMN,OAAOtjC,GACpBic,EAAMoY,GAAUnM,cAAc2b,GAC/BR,GAAqBO,EAAM/gB,MAAO+gB,EAAMN,SACvC,EAcJ,OAXIjP,GAAUnM,cAAc2b,IAC3BjV,EAAO3S,EAAM3Q,EAAQ04B,mBACrB3lB,EAAQ/S,EAAQ24B,gBAKhBrV,EAAOiV,EAAYnH,EACnBre,EAAQ,GAGF,CACN6lB,MAAOtV,EAAO8N,EACdre,MAAOA,EACPoW,MAAO8O,EAAQ3U,EAAO,GAUxB,SAASuV,GAA0BnkC,EAAO4jC,EAAOt4B,GAChD,IAKImpB,EAAO7F,EALP0U,EAASM,EAAMN,OACfC,EAAOD,EAAOtjC,GACds8B,EAAOt8B,EAAQ,EAAIsjC,EAAOtjC,EAAQ,GAAK,KACvCokC,EAAOpkC,EAAQsjC,EAAO/5B,OAAS,EAAI+5B,EAAOtjC,EAAQ,GAAK,KACvDqkC,EAAU/4B,EAAQ04B,mBAiBtB,OAda,OAAT1H,IAGHA,EAAOiH,GAAiB,OAATa,EAAgBR,EAAMU,IAAMV,EAAMnP,MAAQ2P,EAAOb,IAGpD,OAATa,IAEHA,EAAOb,EAAOA,EAAOjH,GAGtB7H,EAAQ8O,GAAQA,EAAOx0B,KAAKkN,IAAIqgB,EAAM8H,IAAS,EAAIC,EACnDzV,EAAO7f,KAAK8xB,IAAIuD,EAAO9H,GAAQ,EAAI+H,EAE5B,CACNH,MAAOtV,EAAOgV,EAAMG,WACpB1lB,MAAO/S,EAAQ24B,cACfxP,MAAOA,GAlHTrD,EAAcR,KAAK,MAAO,CACzBuK,MAAO,CACNoJ,KAAM,SAGP7L,OAAQ,CACPK,MAAO,CAAC,CACPh5B,KAAM,WACNykC,QAAQ,EACRC,UAAW,CACVC,iBAAiB,KAInBzL,MAAO,CAAC,CACPl5B,KAAM,cAKTqxB,EAAcR,KAAK,SAAU,CAC5BsI,SAAU,CACTyL,IAAK,CACJX,mBAAoB,GACpBC,cAAe,OA8FlB,IAAIW,GAAiB5H,GAAuBlT,OAAO,CAElDoO,gBAAiB0C,GAASsI,UAK1B9K,oBAAqB,CACpB,kBACA,cACA,gBACA,cACA,gBACA,eACA,qBACA,kBACA,gBAGDnD,WAAY,WACX,IACIwD,EAAMoM,EADN1a,EAAKtsB,KAGTm/B,GAAuB1kB,UAAU2c,WAAW9b,MAAMgR,EAAIrT,WAEtD2hB,EAAOtO,EAAGoO,UACVE,EAAKqM,MAAQ3a,EAAGyO,aAAakM,MAC7BrM,EAAKkM,KAAM,EAEXE,EAAY1a,EAAGsP,iBAAiBnuB,QAChC63B,GAAW,YAAa0B,EAAUZ,cAAe,iCAAkC,yBACnFd,GAAW,YAAa0B,EAAUf,aAAc,gCAAiC,wBACjFX,GAAW,YAAa0B,EAAUb,mBAAoB,sCAAuC,8BAC7Fb,GAAW,YAAahZ,EAAGqP,iBAAiBluB,QAAQy5B,aAAc,gCAAiC,wBACnG5B,GAAW,YAAa0B,EAAUG,gBAAiB,mCAAoC,4BAGxFtK,OAAQ,SAASn2B,GAChB,IAEIgS,EAAG0S,EAFHkB,EAAKtsB,KACLilC,EAAQ3Y,EAAGoO,UAAUj4B,KAKzB,IAFA6pB,EAAG8a,OAAS9a,EAAG+a,WAEV3uB,EAAI,EAAG0S,EAAO6Z,EAAMv5B,OAAQgN,EAAI0S,IAAQ1S,EAC5C4T,EAAGgQ,cAAc2I,EAAMvsB,GAAIA,EAAGhS,IAIhC41B,cAAe,SAASyI,EAAW5iC,EAAOuE,GACzC,IAAI4lB,EAAKtsB,KACL46B,EAAOtO,EAAGoO,UACVI,EAAUxO,EAAGyO,aACbttB,EAAU6e,EAAG6Q,2BAA2B4H,EAAW5iC,GAEvD4iC,EAAUuC,QAAUhb,EAAGiP,cAAcX,EAAKK,SAC1C8J,EAAUwC,QAAUjb,EAAGiP,cAAcX,EAAKO,SAC1C4J,EAAU/I,cAAgB1P,EAAGnqB,MAC7B4iC,EAAU7I,OAAS/5B,EACnB4iC,EAAUtN,OAAS,CAClB2F,gBAAiB3vB,EAAQ2vB,gBACzBC,YAAa5vB,EAAQ4vB,YACrB+G,cAAe32B,EAAQ22B,cACvBlG,YAAazwB,EAAQywB,YACrBsJ,aAAc1M,EAAQ3sB,MACtBA,MAAOme,EAAGwD,MAAMrtB,KAAKka,OAAOxa,IAGzBq0B,GAAUlM,QAAQwQ,EAAQr4B,KAAKN,MAClC4iC,EAAUtN,OAAO2M,cAAgB,MAGlC9X,EAAGmb,uBAAuB1C,EAAW5iC,EAAOuE,EAAO+G,GAEnDs3B,EAAUxN,SAMXkQ,uBAAwB,SAAS1C,EAAW5iC,EAAOuE,EAAO+G,GACzD,IAAI6e,EAAKtsB,KACL0B,EAAQqjC,EAAUtN,OAClBiQ,EAASpb,EAAGqP,iBACZ5jB,EAAO2vB,EAAOC,eACdtD,EAAaqD,EAAOE,eACpB7B,EAAQzZ,EAAG8a,QAAU9a,EAAG+a,WACxBQ,EAAUvb,EAAGwb,wBAAwBxb,EAAGnqB,MAAOA,EAAOsL,GACtDs6B,EAAUzb,EAAG0b,wBAAwB1b,EAAGnqB,MAAOA,EAAO4jC,EAAOt4B,GAEjE/L,EAAM2iC,WAAaA,EACnB3iC,EAAMqW,KAAOrR,EAAQqR,EAAO8vB,EAAQ9vB,KACpCrW,EAAMkc,EAAIymB,EAAa39B,EAAQqR,EAAO8vB,EAAQI,KAAOF,EAAQG,OAC7DxmC,EAAMmc,EAAIwmB,EAAa0D,EAAQG,OAASxhC,EAAQqR,EAAO8vB,EAAQI,KAC/DvmC,EAAMkL,OAASy3B,EAAa0D,EAAQhX,UAAO5sB,EAC3CzC,EAAMiL,MAAQ03B,OAAalgC,EAAY4jC,EAAQhX,MAShDoX,WAAY,SAASC,GACpB,IAMI1vB,EAAGkiB,EANHtO,EAAKtsB,KACLglB,EAAQsH,EAAGsP,iBACXyM,EAAWrjB,EAAMsjB,yBAAyBhc,EAAG+K,OAC7CkR,EAAUvjB,EAAMvX,QAAQ86B,QACxBnd,EAAOid,EAAS38B,OAChB88B,EAAS,GAGb,IAAK9vB,EAAI,EAAGA,EAAI0S,IAAQ1S,EAWvB,GAVAkiB,EAAOyN,EAAS3vB,KAMA,IAAZ6vB,IAAqD,IAAhCC,EAAOve,QAAQ2Q,EAAKqM,aAC/B9iC,IAAZokC,QAAwCpkC,IAAfy2B,EAAKqM,QAC/BuB,EAAOl7B,KAAKstB,EAAKqM,OAEdrM,EAAKz4B,QAAUimC,EAClB,MAIF,OAAOI,GAORC,cAAe,WACd,OAAOzoC,KAAKmoC,aAAaz8B,QAU1Bg9B,cAAe,SAASvO,EAAc9qB,GACrC,IAAIm5B,EAASxoC,KAAKmoC,WAAWhO,GACzBh4B,OAAkBgC,IAATkL,EACVm5B,EAAOve,QAAQ5a,IACd,EAEJ,OAAmB,IAAXlN,EACLqmC,EAAO98B,OAAS,EAChBvJ,GAMJklC,SAAU,WACT,IAGI3uB,EAAG0S,EAHHkB,EAAKtsB,KACLglB,EAAQsH,EAAGsP,iBACX6J,EAAS,GAGb,IAAK/sB,EAAI,EAAG0S,EAAOkB,EAAGoO,UAAUj4B,KAAKiJ,OAAQgN,EAAI0S,IAAQ1S,EACxD+sB,EAAOn4B,KAAK0X,EAAM2jB,iBAAiB,KAAMjwB,EAAG4T,EAAGnqB,QAGhD,MAAO,CACNsjC,OAAQA,EACR7O,MAAO5R,EAAM4jB,YACbnC,IAAKzhB,EAAM6jB,UACX3C,WAAY5Z,EAAGmc,gBACfzjB,MAAOA,IAQT8iB,wBAAyB,SAAS3N,EAAch4B,EAAOsL,GACtD,IAaIiL,EAAGowB,EAAOC,EAAQhxB,EAAMkwB,EAAMlX,EAAMiY,EAbpC1c,EAAKtsB,KACL8vB,EAAQxD,EAAGwD,MACX9K,EAAQsH,EAAGqP,iBACXiM,EAAe5iB,EAAM4iB,eACrBvM,EAAWvL,EAAMrtB,KAAK44B,SACtBgN,EAAWrjB,EAAMsjB,yBAAyBhc,EAAG+K,OAC7C11B,EAAQqjB,EAAMikB,YAAY5N,EAASlB,GAAc13B,KAAKN,IACtD+kC,EAAez5B,EAAQy5B,aACvBqB,EAAUvjB,EAAMvX,QAAQ86B,QACxBtB,EAAQ3a,EAAGoO,UAAUuM,MACrBrQ,OAAwBzyB,IAAhBxC,EAAMi1B,MAAsB,EAAIj1B,EAAM0c,KAAO,GAAK1c,EAAMyc,KAAO,EAAIzc,EAAMyc,IAAMzc,EAAM0c,IAC7F3S,OAAyBvH,IAAhBxC,EAAMi1B,MAAsBj1B,EAAM8kC,IAAM9kC,EAAM0c,KAAO,GAAK1c,EAAMyc,KAAO,EAAIzc,EAAM0c,IAAM1c,EAAMyc,IAAMzc,EAAMyc,IAAMzc,EAAM0c,IAC9H+M,EAAOid,EAAS38B,OAGpB,GAAI68B,QAAwBpkC,IAAZokC,QAAmCpkC,IAAV8iC,EACxC,IAAKvuB,EAAI,EAAGA,EAAI0S,IAAQ1S,EAAG,CAG1B,GAFAowB,EAAQT,EAAS3vB,GAEbowB,EAAM3mC,QAAUg4B,EACnB,MAGG2O,EAAM7B,QAAUA,IACnB+B,EAAchkB,EAAMikB,YAAY5N,EAASyN,EAAM3mC,OAAOM,KAAKN,IAC3D4mC,OAA+B5kC,IAAtB6kC,EAAYpS,MAAsBoS,EAAYvC,IAAMuC,EAAY5qB,KAAO,GAAK4qB,EAAY3qB,KAAO,EAAI2qB,EAAY3qB,IAAM2qB,EAAY5qB,KAErIzc,EAAMyc,IAAM,GAAK2qB,EAAS,GAAOpnC,EAAM0c,KAAO,GAAK0qB,EAAS,KAChEnS,GAASmS,IAmBb,OAbAhxB,EAAOiN,EAAM2jB,iBAAiB/R,GAC9BqR,EAAOjjB,EAAM2jB,iBAAiB/R,EAAQlrB,GACtCqlB,EAAOkX,EAAOlwB,OAEO5T,IAAjB+iC,GAA8Bh2B,KAAK8xB,IAAIjS,GAAQmW,IAClDnW,EAAOmW,EAENe,EADGv8B,GAAU,IAAMk8B,GAAgBl8B,EAAS,GAAKk8B,EAC1C7vB,EAAOmvB,EAEPnvB,EAAOmvB,GAIT,CACNnW,KAAMA,EACNhZ,KAAMA,EACNkwB,KAAMA,EACNC,OAAQD,EAAOlX,EAAO,IAOxBiX,wBAAyB,SAAS7N,EAAch4B,EAAO4jC,EAAOt4B,GAC7D,IAAI6e,EAAKtsB,KACLkpC,EAAiC,SAAzBz7B,EAAQw4B,aACjBK,GAA0BnkC,EAAO4jC,EAAOt4B,GACxCq4B,GAAyB3jC,EAAO4jC,EAAOt4B,GAEtC07B,EAAa7c,EAAGoc,cAAcvO,EAAc7N,EAAGoO,UAAUuM,OACzDiB,EAASgB,EAAMtS,MAASsS,EAAM7C,MAAQ8C,EAAeD,EAAM7C,MAAQ,EACnEtV,EAAO7f,KAAKkN,IACfmnB,GAAiB93B,EAAQ05B,gBAAiB/nB,KAC1C8pB,EAAM7C,MAAQ6C,EAAM1oB,OAErB,MAAO,CACNzI,KAAMmwB,EAASnX,EAAO,EACtBkX,KAAMC,EAASnX,EAAO,EACtBmX,OAAQA,EACRnX,KAAMA,IAIRiM,KAAM,WACL,IAAI1Q,EAAKtsB,KACL8vB,EAAQxD,EAAGwD,MACX9K,EAAQsH,EAAGqP,iBACXsJ,EAAQ3Y,EAAGoO,UAAUj4B,KACrBq4B,EAAUxO,EAAGyO,aACb3P,EAAO6Z,EAAMv5B,OACbgN,EAAI,EAIR,IAFA8d,GAAU7oB,OAAOokB,SAASjC,EAAMC,IAAKD,EAAM2T,WAEpC/qB,EAAI0S,IAAQ1S,EAAG,CACrB,IAAIiH,EAAMqF,EAAMikB,YAAYnO,EAAQr4B,KAAKiW,IACpCwM,MAAMvF,EAAIvB,MAAS8G,MAAMvF,EAAItB,MACjC4mB,EAAMvsB,GAAGskB,OAIXxG,GAAU7oB,OAAOskB,WAAWnC,EAAMC,MAMnCoN,2BAA4B,WAC3B,IAAI7Q,EAAKtsB,KACL0lB,EAAS8Q,GAAUvK,OAAO,GAAIkT,GAAuB1kB,UAAU0iB,2BAA2B7hB,MAAMgR,EAAIrT,YACpGmwB,EAAY9c,EAAGsP,iBAAiBnuB,QAChC47B,EAAY/c,EAAGqP,iBAAiBluB,QAQpC,OANAiY,EAAO0gB,cAAgBb,GAAiB6D,EAAUhD,cAAe1gB,EAAO0gB,eACxE1gB,EAAOugB,aAAeV,GAAiB6D,EAAUnD,aAAcvgB,EAAOugB,cACtEvgB,EAAOygB,mBAAqBZ,GAAiB6D,EAAUjD,mBAAoBzgB,EAAOygB,oBAClFzgB,EAAOyhB,gBAAkB5B,GAAiB6D,EAAUjC,gBAAiBzhB,EAAOyhB,iBAC5EzhB,EAAOwhB,aAAe3B,GAAiB8D,EAAUnC,aAAcxhB,EAAOwhB,cAE/DxhB,KAKL4jB,GAAmB9S,GAAU9L,eAC7B6e,GAAY/S,GAAU/oB,QAAQ4mB,QAElCd,EAAcR,KAAK,SAAU,CAC5BuK,MAAO,CACNoJ,KAAM,UAGP7L,OAAQ,CACPK,MAAO,CAAC,CACPh5B,KAAM,SACNsnC,SAAU,SACV98B,GAAI,aAEL0uB,MAAO,CAAC,CACPl5B,KAAM,SACNsnC,SAAU,OACV98B,GAAI,cAIN+8B,SAAU,CACTC,UAAW,CACVjmC,MAAO,WAEN,MAAO,IAER0K,MAAO,SAASrI,EAAMrD,GACrB,IAAI+kC,EAAe/kC,EAAK44B,SAASv1B,EAAKq0B,cAAchsB,OAAS,GACzDw7B,EAAYlnC,EAAK44B,SAASv1B,EAAKq0B,cAAc13B,KAAKqD,EAAK3D,OAC3D,OAAOqlC,EAAe,MAAQ1hC,EAAK8jC,OAAS,KAAO9jC,EAAK+jC,OAAS,KAAOF,EAAU1rB,EAAI,SAM1F,IAAI6rB,GAAoB3K,GAAuBlT,OAAO,CAIrDoO,gBAAiB0C,GAASqI,MAK1B7K,oBAAqB,CACpB,kBACA,cACA,cACA,uBACA,mBACA,mBACA,cACA,YACA,aACA,YAMDsC,OAAQ,SAASn2B,GAChB,IAAI4lB,EAAKtsB,KACL46B,EAAOtO,EAAGoO,UACVyH,EAASvH,EAAKn4B,KAGlB+zB,GAAU1L,KAAKqX,GAAQ,SAASvQ,EAAOzvB,GACtCmqB,EAAGgQ,cAAc1K,EAAOzvB,EAAOuE,OAOjC41B,cAAe,SAAS1K,EAAOzvB,EAAOuE,GACrC,IAAI4lB,EAAKtsB,KACL46B,EAAOtO,EAAGoO,UACV+C,EAAS7L,EAAM6L,QAAU,GACzBsM,EAASzd,EAAGiP,cAAcX,EAAKK,SAC/B+O,EAAS1d,EAAGiP,cAAcX,EAAKO,SAC/B1tB,EAAU6e,EAAG6Q,2BAA2BvL,EAAOzvB,GAC/CM,EAAO6pB,EAAGyO,aAAat4B,KAAKN,GAC5B8nC,EAAU3d,EAAGnqB,MAEbyb,EAAIlX,EAAQqjC,EAAOG,mBAAmB,IAAOH,EAAOpB,iBAAiC,kBAATlmC,EAAoBA,EAAO0nC,IAAKhoC,EAAO8nC,GACnHpsB,EAAInX,EAAQsjC,EAAOrC,eAAiBqC,EAAOrB,iBAAiBlmC,EAAMN,EAAO8nC,GAE7ErY,EAAM0V,QAAUyC,EAChBnY,EAAM2V,QAAUyC,EAChBpY,EAAMwY,SAAW38B,EACjBmkB,EAAMoK,cAAgBiO,EACtBrY,EAAMsK,OAAS/5B,EACfyvB,EAAM6F,OAAS,CACd2F,gBAAiB3vB,EAAQ2vB,gBACzBC,YAAa5vB,EAAQ4vB,YACrBa,YAAazwB,EAAQywB,YACrB+E,UAAWx1B,EAAQw1B,UACnBG,WAAY31B,EAAQ21B,WACpBxS,SAAUnjB,EAAQmjB,SAClBV,OAAQxpB,EAAQ,EAAI+G,EAAQyiB,OAC5BuS,KAAMhF,EAAOgF,MAAQvd,MAAMtH,IAAMsH,MAAMrH,GACvCD,EAAGA,EACHC,EAAGA,GAGJ+T,EAAM2F,SAMPyG,cAAe,SAASpM,GACvB,IAAIlwB,EAAQkwB,EAAM6F,OACdhqB,EAAUmkB,EAAMwY,SAChBnM,EAAgBzH,GAAUyH,cAE9BrM,EAAMmM,eAAiB,CACtBX,gBAAiB17B,EAAM07B,gBACvBC,YAAa37B,EAAM27B,YACnBa,YAAax8B,EAAMw8B,YACnBhO,OAAQxuB,EAAMwuB,QAGfxuB,EAAM07B,gBAAkBkM,GAAiB77B,EAAQ0wB,qBAAsBF,EAAcxwB,EAAQ2vB,kBAC7F17B,EAAM27B,YAAciM,GAAiB77B,EAAQ2wB,iBAAkBH,EAAcxwB,EAAQ4vB,cACrF37B,EAAMw8B,YAAcoL,GAAiB77B,EAAQ4wB,iBAAkB5wB,EAAQywB,aACvEx8B,EAAMwuB,OAASziB,EAAQyiB,OAASziB,EAAQ8yB,aAMzCpD,2BAA4B,SAASvL,EAAOzvB,GAC3C,IAAImqB,EAAKtsB,KACL8vB,EAAQxD,EAAGwD,MACXgL,EAAUxO,EAAGyO,aACb0C,EAAS7L,EAAM6L,QAAU,GACzBh7B,EAAOq4B,EAAQr4B,KAAKN,IAAU,GAC9BujB,EAASyZ,GAAuB1kB,UAAU0iB,2BAA2B7hB,MAAMgR,EAAIrT,WAG/Esb,EAAU,CACbzE,MAAOA,EACP8N,UAAWz7B,EACX24B,QAASA,EACTX,aAAc7N,EAAGnqB,OAgBlB,OAZImqB,EAAGsQ,kBAAoBlX,IAC1BA,EAAS8Q,GAAUvK,OAAO,GAAIvG,IAI/BA,EAAOwK,OAASqZ,GAAU,CACzB9L,EAAOvN,OACPztB,EAAKwb,EACLqO,EAAGqQ,QAAQzM,OACXJ,EAAMriB,QAAQsvB,SAASnL,MAAM1B,QAC3BqE,EAASpyB,GAELujB,KAIL2kB,GAAmB7T,GAAU9L,eAE7B4f,GAAOp5B,KAAK4P,GACZypB,GAAqB,EAAPD,GACdE,GAAYF,GAAO,EAEvB/W,EAAcR,KAAK,WAAY,CAC9BuF,UAAW,CAEVmS,eAAe,EAEfC,cAAc,GAEfpN,MAAO,CACNoJ,KAAM,UAEPiE,eAAgB,SAAS7a,GACxB,IAIIpX,EAAG0S,EAAMwf,EAAUC,EAJnBC,EAAOC,SAASz+B,cAAc,MAC9B7J,EAAOqtB,EAAMrtB,KACb44B,EAAW54B,EAAK44B,SAChB1e,EAASla,EAAKka,OAIlB,GADAmuB,EAAKE,aAAa,QAASlb,EAAMpjB,GAAK,WAClC2uB,EAAS3vB,OACZ,IAAKgN,EAAI,EAAG0S,EAAOiQ,EAAS,GAAG54B,KAAKiJ,OAAQgN,EAAI0S,IAAQ1S,EACvDkyB,EAAWE,EAAKG,YAAYF,SAASz+B,cAAc,OACnDu+B,EAAeD,EAASK,YAAYF,SAASz+B,cAAc,SAC3Du+B,EAAat+B,MAAM6wB,gBAAkB/B,EAAS,GAAG+B,gBAAgB1kB,GAC7DiE,EAAOjE,IACVkyB,EAASK,YAAYF,SAASG,eAAevuB,EAAOjE,KAKvD,OAAOoyB,EAAKK,WAEbC,OAAQ,CACPzuB,OAAQ,CACP0uB,eAAgB,SAASvb,GACxB,IAAIrtB,EAAOqtB,EAAMrtB,KACjB,OAAIA,EAAKka,OAAOjR,QAAUjJ,EAAK44B,SAAS3vB,OAChCjJ,EAAKka,OAAOtZ,KAAI,SAAS8K,EAAOuK,GACtC,IAAIkiB,EAAO9K,EAAMwL,eAAe,GAC5B/uB,EAAQquB,EAAK0Q,WAAWrO,SAASvkB,GAErC,MAAO,CACN6yB,KAAMp9B,EACNozB,UAAWh1B,EAAM6wB,gBACjBoE,YAAaj1B,EAAM8wB,YACnB6C,UAAW3zB,EAAM2xB,YACjB5G,OAAQpS,MAAMziB,EAAK44B,SAAS,GAAG54B,KAAKiW,KAAOkiB,EAAKn4B,KAAKiW,GAAG4e,OAGxDn1B,MAAOuW,MAIH,KAIT8yB,QAAS,SAASzvB,EAAG0vB,GACpB,IAEI/yB,EAAG0S,EAAMwP,EAFTz4B,EAAQspC,EAAWtpC,MACnB2tB,EAAQ9vB,KAAK8vB,MAGjB,IAAKpX,EAAI,EAAG0S,GAAQ0E,EAAMrtB,KAAK44B,UAAY,IAAI3vB,OAAQgN,EAAI0S,IAAQ1S,EAClEkiB,EAAO9K,EAAMwL,eAAe5iB,GAExBkiB,EAAKn4B,KAAKN,KACby4B,EAAKn4B,KAAKN,GAAOm1B,QAAUsD,EAAKn4B,KAAKN,GAAOm1B,QAI9CxH,EAAM+M,WAKR6O,iBAAkB,GAGlB9a,UAAW4Z,GAGXlJ,cAAeiJ,GAGfd,SAAU,CACTC,UAAW,CACVjmC,MAAO,WACN,MAAO,IAER0K,MAAO,SAASw9B,EAAalpC,GAC5B,IAAImpC,EAAYnpC,EAAKka,OAAOgvB,EAAYxpC,OACpCR,EAAQ,KAAOc,EAAK44B,SAASsQ,EAAYxR,cAAc13B,KAAKkpC,EAAYxpC,OAW5E,OATIq0B,GAAUlM,QAAQshB,IAGrBA,EAAYA,EAAUtgC,QACtBsgC,EAAU,IAAMjqC,GAEhBiqC,GAAajqC,EAGPiqC,OAMX,IAAIC,GAAsB1M,GAAuBlT,OAAO,CAEvDoO,gBAAiB0C,GAASoI,IAE1B3K,WAAYhE,GAAUrM,KAKtBoQ,oBAAqB,CACpB,kBACA,cACA,cACA,cACA,uBACA,mBACA,oBAIDuR,aAAc,SAAS3R,GAGtB,IAFA,IAAI4R,EAAY,EAEPC,EAAI,EAAGA,EAAI7R,IAAgB6R,EAC/BhsC,KAAK8vB,MAAMmc,iBAAiBD,MAC7BD,EAIJ,OAAOA,GAGRlP,OAAQ,SAASn2B,GAChB,IAaIwlC,EAAUC,EAAWzzB,EAAG0S,EAbxBkB,EAAKtsB,KACL8vB,EAAQxD,EAAGwD,MACX2T,EAAY3T,EAAM2T,UAClB2I,EAAOtc,EAAMriB,QACb4+B,EAAS,EACTC,EAAS,EACTC,EAAU,EACVC,EAAU,EACV5R,EAAOtO,EAAGoO,UACV+R,EAAO7R,EAAKn4B,KACZiqC,EAASN,EAAKV,iBAAmB,KAAO,EACxCpK,EAAgB8K,EAAK9K,cACrBqL,EAAcrgB,EAAGsgB,eAAetgB,EAAGnqB,OAIvC,GAAIm/B,EAAgBiJ,GAAa,CAChC,IAAIjL,EAAa8M,EAAKxb,SAAW2Z,GACjCjL,GAAcA,GAAcgL,IAAQC,GAAcjL,GAAcgL,GAAOC,GAAc,EACrF,IAAIhL,EAAWD,EAAagC,EACxBuL,EAAS37B,KAAK8P,IAAIse,GAClBwN,EAAS57B,KAAK+P,IAAIqe,GAClByN,EAAO77B,KAAK8P,IAAIue,GAChByN,EAAO97B,KAAK+P,IAAIse,GAChB0N,EAAa3N,GAAc,GAAKC,GAAY,GAAMA,GAAYgL,GAC9D2C,EAAc5N,GAAckL,IAAajL,GAAYiL,IAAcjL,GAAYgL,GAAcC,GAC7F2C,EAAc7N,KAAgBgL,IAAQ/K,GAAY+K,GAClD8C,EAAe9N,IAAekL,IAAajL,IAAaiL,IAAcjL,GAAY+K,GAAOE,GACzF6C,EAAOF,GAAe,EAAIj8B,KAAKkN,IAAIyuB,EAAQA,EAASH,EAAQK,EAAMA,EAAOL,GACzEY,EAAOF,GAAe,EAAIl8B,KAAKkN,IAAI0uB,EAAQA,EAASJ,EAAQM,EAAMA,EAAON,GACzEa,EAAON,EAAY,EAAI/7B,KAAKmN,IAAIwuB,EAAQA,EAASH,EAAQK,EAAMA,EAAOL,GACtEc,EAAON,EAAa,EAAIh8B,KAAKmN,IAAIyuB,EAAQA,EAASJ,EAAQM,EAAMA,EAAON,GAC3EL,GAAUkB,EAAOF,GAAQ,EACzBf,GAAUkB,EAAOF,GAAQ,EACzBf,IAAYgB,EAAOF,GAAQ,EAC3Bb,IAAYgB,EAAOF,GAAQ,EAG5B,IAAK50B,EAAI,EAAG0S,EAAOqhB,EAAK/gC,OAAQgN,EAAI0S,IAAQ1S,EAC3C+zB,EAAK/zB,GAAG0xB,SAAW9d,EAAG6Q,2BAA2BsP,EAAK/zB,GAAIA,GAiB3D,IAdAoX,EAAMoO,YAAc5R,EAAGmhB,oBACvBvB,GAAYzI,EAAUpT,MAAQoT,EAAUtT,KAAOL,EAAMoO,aAAemO,EACpEF,GAAa1I,EAAUnT,OAASmT,EAAUrT,IAAMN,EAAMoO,aAAeoO,EACrExc,EAAM4P,YAAcxuB,KAAKmN,IAAInN,KAAKkN,IAAI8tB,EAAUC,GAAa,EAAG,GAChErc,EAAM6P,YAAczuB,KAAKmN,IAAIyR,EAAM4P,YAAcgN,EAAQ,GACzD5c,EAAM4d,cAAgB5d,EAAM4P,YAAc5P,EAAM6P,cAAgBrT,EAAGqhB,iCAAmC,GACtG7d,EAAMyc,QAAUA,EAAUzc,EAAM4P,YAChC5P,EAAM0c,QAAUA,EAAU1c,EAAM4P,YAEhC9E,EAAK3vB,MAAQqhB,EAAGshB,iBAEhBthB,EAAGoT,YAAc5P,EAAM4P,YAAc5P,EAAM4d,aAAephB,EAAGuhB,qBAAqBvhB,EAAGnqB,OACrFmqB,EAAGqT,YAAczuB,KAAKmN,IAAIiO,EAAGoT,YAAc5P,EAAM4d,aAAef,EAAa,GAExEj0B,EAAI,EAAG0S,EAAOqhB,EAAK/gC,OAAQgN,EAAI0S,IAAQ1S,EAC3C4T,EAAGgQ,cAAcmQ,EAAK/zB,GAAIA,EAAGhS,IAI/B41B,cAAe,SAAS9L,EAAKruB,EAAOuE,GACnC,IAAI4lB,EAAKtsB,KACL8vB,EAAQxD,EAAGwD,MACX2T,EAAY3T,EAAM2T,UAClB2I,EAAOtc,EAAMriB,QACbqgC,EAAgB1B,EAAK9T,UACrByV,GAAWtK,EAAUtT,KAAOsT,EAAUpT,OAAS,EAC/C2d,GAAWvK,EAAUrT,IAAMqT,EAAUnT,QAAU,EAC/CgP,EAAa8M,EAAKxb,SAClB2O,EAAW6M,EAAKxb,SAChBkK,EAAUxO,EAAGyO,aACbuG,EAAgB56B,GAASonC,EAAcrD,eAAoBja,EAAI8G,OAAR,EAAqBhL,EAAG2hB,uBAAuBnT,EAAQr4B,KAAKN,KAAWiqC,EAAK9K,cAAgBiJ,IACnJ5K,EAAcj5B,GAASonC,EAAcpD,aAAe,EAAIpe,EAAGqT,YAC3DD,EAAch5B,GAASonC,EAAcpD,aAAe,EAAIpe,EAAGoT,YAC3DjyB,EAAU+iB,EAAI4Z,UAAY,GAE9B5T,GAAUvK,OAAOuE,EAAK,CAErBwL,cAAe1P,EAAGnqB,MAClB+5B,OAAQ/5B,EAGRs1B,OAAQ,CACP2F,gBAAiB3vB,EAAQ2vB,gBACzBC,YAAa5vB,EAAQ4vB,YACrBa,YAAazwB,EAAQywB,YACrB+B,YAAaxyB,EAAQwyB,YACrBriB,EAAGmwB,EAAUje,EAAMyc,QACnB1uB,EAAGmwB,EAAUle,EAAM0c,QACnBlN,WAAYA,EACZC,SAAUA,EACV+B,cAAeA,EACf5B,YAAaA,EACbC,YAAaA,EACbxxB,MAAOqoB,GAAU5L,sBAAsBkQ,EAAQ3sB,MAAOhM,EAAO2tB,EAAMrtB,KAAKka,OAAOxa,OAIjF,IAAIT,EAAQ8uB,EAAIiH,OAGX/wB,GAAUonC,EAAcrD,gBAE3B/oC,EAAM49B,WADO,IAAVn9B,EACgBiqC,EAAKxb,SAELtE,EAAGoO,UAAUj4B,KAAKN,EAAQ,GAAGs1B,OAAO8H,SAGxD79B,EAAM69B,SAAW79B,EAAM49B,WAAa59B,EAAM4/B,eAG3C9Q,EAAI+G,SAGLqW,eAAgB,WACf,IAGIjsC,EAHAm5B,EAAU96B,KAAK+6B,aACfH,EAAO56B,KAAK06B,UACZzvB,EAAQ,EAcZ,OAXAurB,GAAU1L,KAAK8P,EAAKn4B,MAAM,SAAS45B,EAASl6B,GAC3CR,EAAQm5B,EAAQr4B,KAAKN,GAChB+iB,MAAMvjB,IAAW06B,EAAQ/E,SAC7BrsB,GAASiG,KAAK8xB,IAAIrhC,OAQbsJ,GAGRgjC,uBAAwB,SAAStsC,GAChC,IAAIsJ,EAAQjL,KAAK06B,UAAUzvB,MAC3B,OAAIA,EAAQ,IAAMia,MAAMvjB,GAChB4oC,IAAer5B,KAAK8xB,IAAIrhC,GAASsJ,GAElC,GAIRwiC,kBAAmB,SAAShB,GAC3B,IAGI/zB,EAAG0S,EAAMwP,EAAMpK,EAAK8a,EAAY79B,EAASywB,EAAagQ,EAHtD5hB,EAAKtsB,KACLqe,EAAM,EACNyR,EAAQxD,EAAGwD,MAGf,IAAK2c,EAEJ,IAAK/zB,EAAI,EAAG0S,EAAO0E,EAAMrtB,KAAK44B,SAAS3vB,OAAQgN,EAAI0S,IAAQ1S,EAC1D,GAAIoX,EAAMmc,iBAAiBvzB,GAAI,CAC9BkiB,EAAO9K,EAAMwL,eAAe5iB,GAC5B+zB,EAAO7R,EAAKn4B,KACRiW,IAAM4T,EAAGnqB,QACZmpC,EAAa1Q,EAAK0Q,YAEnB,MAKH,IAAKmB,EACJ,OAAO,EAGR,IAAK/zB,EAAI,EAAG0S,EAAOqhB,EAAK/gC,OAAQgN,EAAI0S,IAAQ1S,EAC3C8X,EAAMic,EAAK/zB,GACP4yB,GACHA,EAAW5O,aACXjvB,EAAU69B,EAAWnO,2BAA2B3M,EAAK9X,IAErDjL,EAAU+iB,EAAI4Z,SAEa,UAAxB38B,EAAQwyB,cACX/B,EAAczwB,EAAQywB,YACtBgQ,EAAazgC,EAAQ4wB,iBAErBhgB,EAAM6f,EAAc7f,EAAM6f,EAAc7f,EACxCA,EAAM6vB,EAAa7vB,EAAM6vB,EAAa7vB,GAGxC,OAAOA,GAMR2f,cAAe,SAASxN,GACvB,IAAI9uB,EAAQ8uB,EAAIiH,OACZhqB,EAAU+iB,EAAI4Z,SACdnM,EAAgBzH,GAAUyH,cAE9BzN,EAAIuN,eAAiB,CACpBX,gBAAiB17B,EAAM07B,gBACvBC,YAAa37B,EAAM27B,YACnBa,YAAax8B,EAAMw8B,aAGpBx8B,EAAM07B,gBAAkBiN,GAAiB58B,EAAQ0wB,qBAAsBF,EAAcxwB,EAAQ2vB,kBAC7F17B,EAAM27B,YAAcgN,GAAiB58B,EAAQ2wB,iBAAkBH,EAAcxwB,EAAQ4vB,cACrF37B,EAAMw8B,YAAcmM,GAAiB58B,EAAQ4wB,iBAAkB5wB,EAAQywB,cAOxE2P,qBAAsB,SAAS1T,GAG9B,IAFA,IAAIgU,EAAmB,EAEdz1B,EAAI,EAAGA,EAAIyhB,IAAgBzhB,EAC/B1Y,KAAK8vB,MAAMmc,iBAAiBvzB,KAC/By1B,GAAoBnuC,KAAK4sC,eAAel0B,IAI1C,OAAOy1B,GAMRvB,eAAgB,SAASwB,GACxB,OAAOl9B,KAAKmN,IAAIgsB,GAAiBrqC,KAAK8vB,MAAMrtB,KAAK44B,SAAS+S,GAActlB,OAAQ,GAAI,IAOrF6kB,8BAA+B,WAC9B,OAAO3tC,KAAK6tC,qBAAqB7tC,KAAK8vB,MAAMrtB,KAAK44B,SAAS3vB,WAI5D6nB,EAAcR,KAAK,gBAAiB,CACnCuK,MAAO,CACNoJ,KAAM,QACN2H,KAAM,KAGPxT,OAAQ,CACPK,MAAO,CAAC,CACPh5B,KAAM,SACNsnC,SAAU,WAGXpO,MAAO,CAAC,CACPl5B,KAAM,WACNsnC,SAAU,OACV7C,QAAQ,EACRC,UAAW,CACVC,iBAAiB,MAKpB9J,SAAU,CACTgI,UAAW,CACVX,cAAe,SAIjBqF,SAAU,CACT/C,KAAM,QACN2H,KAAM,OAIR9a,EAAcR,KAAK,SAAU,CAC5BsI,SAAU,CACTiT,cAAe,CACdnI,mBAAoB,GACpBC,cAAe,OAKlB,IAAImI,GAA2BxH,GAAe9a,OAAO,CAIpDwP,iBAAkB,WACjB,OAAOz7B,KAAK06B,UAAUO,SAMvBS,iBAAkB,WACjB,OAAO17B,KAAK06B,UAAUS,WAIpBqT,GAAmBhY,GAAU9L,eAC7B+jB,GAAYjY,GAAU/oB,QAAQ4mB,QAC9Bqa,GAAgBlY,GAAU7oB,OAAOgkB,eAsBrC,SAASgd,GAAU3pB,EAAO4pB,GACzB,IAAIC,EAAW7pB,GAASA,EAAMvX,QAAQqhC,OAAS,GAC3C9jB,EAAU6jB,EAAS7jB,QACnB5M,OAAuBja,IAAjB0qC,EAASzwB,IAAoBwwB,EAAkB,EACrDvwB,OAAuBla,IAAjB0qC,EAASxwB,IAAoBuwB,EAAkB,EACzD,MAAO,CACNhY,MAAO5L,EAAU3M,EAAMD,EACvBqoB,IAAKzb,EAAU5M,EAAMC,GAIvB,SAAS0wB,GAAYhF,EAAQC,EAAQ9L,GACpC,IAAI0Q,EAAkB1Q,EAAc,EAChCtgB,EAAI+wB,GAAU5E,EAAQ6E,GACtB/wB,EAAI8wB,GAAU3E,EAAQ4E,GAE1B,MAAO,CACNxe,IAAKvS,EAAE4oB,IACPpW,MAAOzS,EAAE6oB,IACTnW,OAAQzS,EAAE+Y,MACVzG,KAAMvS,EAAEgZ,OAIV,SAASoY,GAAOrtC,GACf,IAAIwe,EAAGlC,EAAGE,EAAGH,EAWb,OATIwY,GAAUhM,SAAS7oB,IACtBwe,EAAIxe,EAAMyuB,IACVnS,EAAItc,EAAM0uB,MACVlS,EAAIxc,EAAM2uB,OACVtS,EAAIrc,EAAMwuB,MAEVhQ,EAAIlC,EAAIE,EAAIH,EAAIrc,EAGV,CACNyuB,IAAKjQ,EACLkQ,MAAOpS,EACPqS,OAAQnS,EACRgS,KAAMnS,GA5DRuV,EAAcR,KAAK,OAAQ,CAC1BO,WAAW,EACX4O,UAAU,EAEV5E,MAAO,CACNoJ,KAAM,SAGP7L,OAAQ,CACPK,MAAO,CAAC,CACPh5B,KAAM,WACNwK,GAAI,aAEL0uB,MAAO,CAAC,CACPl5B,KAAM,SACNwK,GAAI,gBAkDP,IAAIuiC,GAAkB9P,GAAuBlT,OAAO,CAEnDmO,mBAAoB2C,GAAS/uB,KAE7BqsB,gBAAiB0C,GAASqI,MAK1B9K,uBAAwB,CACvB,kBACA,iBACA,cACA,aACA,mBACA,kBACA,cACA,yBACA,QAMDC,oBAAqB,CACpB6C,gBAAiB,uBACjBC,YAAa,mBACba,YAAa,mBACb+E,UAAW,iBACX9E,qBAAsB,4BACtBC,iBAAkB,wBAClBC,iBAAkB,wBAClBkC,YAAa,mBACb6C,WAAY,aACZlT,OAAQ,cACRU,SAAU,iBAGXiM,OAAQ,SAASn2B,GAChB,IAOIgS,EAAG0S,EAPHkB,EAAKtsB,KACL46B,EAAOtO,EAAGoO,UACVgH,EAAO9G,EAAKE,QACZqH,EAASvH,EAAKn4B,MAAQ,GACtBgL,EAAU6e,EAAGwD,MAAMriB,QACnByhC,EAAS5iB,EAAGqQ,QACZwS,EAAW7iB,EAAG8iB,UAAYZ,GAAiBU,EAAOC,SAAU1hC,EAAQ6lB,WAyBxE,IAtBAhH,EAAGgb,QAAUhb,EAAGiP,cAAcX,EAAKK,SACnC3O,EAAGib,QAAUjb,EAAGiP,cAAcX,EAAKO,SAG/BgU,SAEoBhrC,IAAnB+qC,EAAO5c,cAAgDnuB,IAAvB+qC,EAAOG,cAC1CH,EAAOG,YAAcH,EAAO5c,SAI7BoP,EAAK4N,OAAShjB,EAAGib,QACjB7F,EAAK1F,cAAgB1P,EAAGnqB,MAExBu/B,EAAKU,UAAYD,EAEjBT,EAAKjK,OAASnL,EAAG4Q,8BAA8BwE,GAE/CA,EAAKnK,SAID7e,EAAI,EAAG0S,EAAO+W,EAAOz2B,OAAQgN,EAAI0S,IAAQ1S,EAC7C4T,EAAGgQ,cAAc6F,EAAOzpB,GAAIA,EAAGhS,GAQhC,IALIyoC,GAAoC,IAAxBzN,EAAKjK,OAAOnF,SAC3BhG,EAAGijB,4BAIC72B,EAAI,EAAG0S,EAAO+W,EAAOz2B,OAAQgN,EAAI0S,IAAQ1S,EAC7CypB,EAAOzpB,GAAG6e,SAIZ+E,cAAe,SAAS1K,EAAOzvB,EAAOuE,GACrC,IASIkX,EAAGC,EATHyO,EAAKtsB,KACL46B,EAAOtO,EAAGoO,UACV+C,EAAS7L,EAAM6L,QAAU,GACzB3C,EAAUxO,EAAGyO,aACbZ,EAAe7N,EAAGnqB,MAClBR,EAAQm5B,EAAQr4B,KAAKN,GACrB4nC,EAASzd,EAAGgb,QACZ0C,EAAS1d,EAAGib,QACZiI,EAAY5U,EAAKE,QAAQrD,OAGzBhqB,EAAU6e,EAAG6Q,2BAA2BvL,EAAOzvB,GAEnDyb,EAAImsB,EAAOpB,iBAAkC,kBAAVhnC,EAAqBA,EAAQwoC,IAAKhoC,EAAOg4B,GAC5Etc,EAAInX,EAAQsjC,EAAOrC,eAAiBrb,EAAGmjB,gBAAgB9tC,EAAOQ,EAAOg4B,GAGrEvI,EAAM0V,QAAUyC,EAChBnY,EAAM2V,QAAUyC,EAChBpY,EAAMwY,SAAW38B,EACjBmkB,EAAMoK,cAAgB7B,EACtBvI,EAAMsK,OAAS/5B,EAGfyvB,EAAM6F,OAAS,CACd7Z,EAAGA,EACHC,EAAGA,EACH4kB,KAAMhF,EAAOgF,MAAQvd,MAAMtH,IAAMsH,MAAMrH,GAEvCqS,OAAQziB,EAAQyiB,OAChBkT,WAAY31B,EAAQ21B,WACpBxS,SAAUnjB,EAAQmjB,SAClBwM,gBAAiB3vB,EAAQ2vB,gBACzBC,YAAa5vB,EAAQ4vB,YACrBa,YAAazwB,EAAQywB,YACrB5L,QAASkc,GAAiB/Q,EAAOnL,QAASkd,EAAYA,EAAUld,QAAU,GAC1EF,cAAaod,GAAYA,EAAUpd,YAEnC6Q,UAAWx1B,EAAQw1B,YAOrB/F,8BAA+B,SAASb,GACvC,IAAI/P,EAAKtsB,KACLkvC,EAAS5iB,EAAGqQ,QACZc,EAASpB,EAAQoB,QAAU,GAC3BhwB,EAAU6e,EAAGwD,MAAMriB,QACnBiiC,EAAcjiC,EAAQsvB,SAAS2E,KAC/Bhc,EAASyZ,GAAuB1kB,UAAUyiB,8BAA8B5hB,MAAMgR,EAAIrT,WAUtF,OALAyM,EAAOwc,SAAWsM,GAAiBU,EAAOhN,SAAUz0B,EAAQy0B,UAC5Dxc,EAAO4M,QAAUkc,GAAiBU,EAAOG,YAAaK,EAAYpd,SAClE5M,EAAO0M,YAAcqc,GAAU,CAAChR,EAAOrL,YAAa8c,EAAO9c,YAAasd,EAAYvd,UACpFzM,EAAOsM,KAAOgd,GAAOR,GAAiBU,EAAOld,KAAM+c,GAAYziB,EAAGgb,QAAShb,EAAGib,QAAS7hB,EAAOwY,eAEvFxY,GAGR+pB,gBAAiB,SAAS9tC,EAAOQ,EAAOg4B,GACvC,IAKIzhB,EAAGi3B,EAAIC,EAAQC,EAAmBC,EAAYzH,EAAUjd,EALxDkB,EAAKtsB,KACL8vB,EAAQxD,EAAGwD,MACXka,EAAS1d,EAAGib,QACZwI,EAAS,EACTC,EAAS,EAGb,GAAIhG,EAAOv8B,QAAQ86B,QAAS,CAK3B,IAJAuH,GAAc9F,EAAOiG,cAActuC,GACnC0mC,EAAWvY,EAAMogB,gCACjB9kB,EAAOid,EAAS38B,OAEXgN,EAAI,EAAGA,EAAI0S,IAAQ1S,EAAG,CAE1B,GADAk3B,EAASvH,EAAS3vB,GACdk3B,EAAOztC,QAAUg4B,EACpB,MAGDwV,EAAK7f,EAAMrtB,KAAK44B,SAASuU,EAAOztC,OACZ,SAAhBytC,EAAO1tC,MAAmB0tC,EAAOzU,UAAY6O,EAAOt9B,KACvDmjC,GAAqB7F,EAAOiG,cAAcN,EAAGltC,KAAKN,IAC9C0tC,EAAoB,EACvBG,GAAUH,GAAqB,EAE/BE,GAAUF,GAAqB,GAKlC,OAAIC,EAAa,EACT9F,EAAOrB,iBAAiBqH,EAASF,GAElC9F,EAAOrB,iBAAiBoH,EAASD,GAEzC,OAAO9F,EAAOrB,iBAAiBhnC,IAGhC4tC,0BAA2B,WAC1B,IAMI72B,EAAG0S,EAAM1pB,EAAOyuC,EANhB7jB,EAAKtsB,KACL8vB,EAAQxD,EAAGwD,MACX8K,EAAOtO,EAAGoO,UACV8U,EAAY5U,EAAKE,QAAQrD,OACzB5F,EAAO/B,EAAM2T,UACbtB,EAASvH,EAAKn4B,MAAQ,GAU1B,SAAS2tC,EAAgBC,EAAIjyB,EAAKC,GACjC,OAAOnN,KAAKmN,IAAInN,KAAKkN,IAAIiyB,EAAIhyB,GAAMD,GAGpC,GAVIoxB,EAAUtN,WACbC,EAASA,EAAOmO,QAAO,SAASD,GAC/B,OAAQA,EAAG5Y,OAAOgL,SAQqB,aAArC+M,EAAUe,uBACb/Z,GAAUga,oBAAoBrO,QAE9B,IAAKzpB,EAAI,EAAG0S,EAAO+W,EAAOz2B,OAAQgN,EAAI0S,IAAQ1S,EAC7ChX,EAAQygC,EAAOzpB,GAAG+e,OAClB0Y,EAAgB3Z,GAAUia,YACzBja,GAAUgM,aAAaL,EAAQzpB,GAAG+e,OAClC/1B,EACA80B,GAAUka,SAASvO,EAAQzpB,GAAG+e,OAC9B+X,EAAUld,SAEX5wB,EAAM8wB,sBAAwB2d,EAAcvjB,SAAShP,EACrDlc,EAAMgxB,sBAAwByd,EAAcvjB,SAAS/O,EACrDnc,EAAM+wB,kBAAoB0d,EAAc5J,KAAK3oB,EAC7Clc,EAAMixB,kBAAoBwd,EAAc5J,KAAK1oB,EAI/C,GAAIiS,EAAMriB,QAAQsvB,SAAS2E,KAAKK,gBAC/B,IAAKrpB,EAAI,EAAG0S,EAAO+W,EAAOz2B,OAAQgN,EAAI0S,IAAQ1S,EAC7ChX,EAAQygC,EAAOzpB,GAAG+e,OACdiX,GAAchtC,EAAOmwB,KACpBnZ,EAAI,GAAKg2B,GAAcvM,EAAOzpB,EAAI,GAAG+e,OAAQ5F,KAChDnwB,EAAM8wB,sBAAwB4d,EAAgB1uC,EAAM8wB,sBAAuBX,EAAK1B,KAAM0B,EAAKxB,OAC3F3uB,EAAMgxB,sBAAwB0d,EAAgB1uC,EAAMgxB,sBAAuBb,EAAKzB,IAAKyB,EAAKvB,SAEvF5X,EAAIypB,EAAOz2B,OAAS,GAAKgjC,GAAcvM,EAAOzpB,EAAI,GAAG+e,OAAQ5F,KAChEnwB,EAAM+wB,kBAAoB2d,EAAgB1uC,EAAM+wB,kBAAmBZ,EAAK1B,KAAM0B,EAAKxB,OACnF3uB,EAAMixB,kBAAoByd,EAAgB1uC,EAAMixB,kBAAmBd,EAAKzB,IAAKyB,EAAKvB,WAOvF0M,KAAM,WACL,IAQIhL,EARA1F,EAAKtsB,KACL8vB,EAAQxD,EAAGwD,MACX8K,EAAOtO,EAAGoO,UACVyH,EAASvH,EAAKn4B,MAAQ,GACtBovB,EAAO/B,EAAM2T,UACb91B,EAASmiB,EAAMniB,OACf+K,EAAI,EACJ0S,EAAO+W,EAAOz2B,OAmBlB,IAhBI4gB,EAAG8iB,YACNpd,EAAO4I,EAAKE,QAAQrD,OAAOzF,KAE3BwE,GAAU7oB,OAAOokB,SAASjC,EAAMC,IAAK,CACpCI,MAAoB,IAAd6B,EAAK7B,KAAiB,EAAI0B,EAAK1B,KAAO6B,EAAK7B,KACjDE,OAAsB,IAAf2B,EAAK3B,MAAkB1iB,EAAOhB,MAAQklB,EAAKxB,MAAQ2B,EAAK3B,MAC/DD,KAAkB,IAAb4B,EAAK5B,IAAgB,EAAIyB,EAAKzB,IAAM4B,EAAK5B,IAC9CE,QAAwB,IAAhB0B,EAAK1B,OAAmB3iB,EAAOf,OAASilB,EAAKvB,OAAS0B,EAAK1B,SAGpEsK,EAAKE,QAAQkC,OAEbxG,GAAU7oB,OAAOskB,WAAWnC,EAAMC,MAI5BrX,EAAI0S,IAAQ1S,EAClBypB,EAAOzpB,GAAGskB,KAAKnL,IAOjBmM,cAAe,SAASpM,GACvB,IAAIlwB,EAAQkwB,EAAM6F,OACdhqB,EAAUmkB,EAAMwY,SAChBnM,EAAgBzH,GAAUyH,cAE9BrM,EAAMmM,eAAiB,CACtBX,gBAAiB17B,EAAM07B,gBACvBC,YAAa37B,EAAM27B,YACnBa,YAAax8B,EAAMw8B,YACnBhO,OAAQxuB,EAAMwuB,QAGfxuB,EAAM07B,gBAAkBoR,GAAiB/gC,EAAQ0wB,qBAAsBF,EAAcxwB,EAAQ2vB,kBAC7F17B,EAAM27B,YAAcmR,GAAiB/gC,EAAQ2wB,iBAAkBH,EAAcxwB,EAAQ4vB,cACrF37B,EAAMw8B,YAAcsQ,GAAiB/gC,EAAQ4wB,iBAAkB5wB,EAAQywB,aACvEx8B,EAAMwuB,OAASse,GAAiB/gC,EAAQ8yB,YAAa9yB,EAAQyiB,WAI3DygB,GAAYna,GAAU/oB,QAAQ4mB,QAElCd,EAAcR,KAAK,YAAa,CAC/B/N,MAAO,CACN9iB,KAAM,eACN0uC,WAAY,CACXC,SAAS,GAEVjK,UAAW,CACVkK,UAAU,GAEXC,YAAa,CACZF,SAAS,GAEV/B,MAAO,CACNkC,aAAa,IAKf1Y,UAAW,CACVmS,eAAe,EACfC,cAAc,GAGfpL,YAAa,GAAMpuB,KAAK4P,GACxB6pB,eAAgB,SAAS7a,GACxB,IAIIpX,EAAG0S,EAAMwf,EAAUC,EAJnBC,EAAOC,SAASz+B,cAAc,MAC9B7J,EAAOqtB,EAAMrtB,KACb44B,EAAW54B,EAAK44B,SAChB1e,EAASla,EAAKka,OAIlB,GADAmuB,EAAKE,aAAa,QAASlb,EAAMpjB,GAAK,WAClC2uB,EAAS3vB,OACZ,IAAKgN,EAAI,EAAG0S,EAAOiQ,EAAS,GAAG54B,KAAKiJ,OAAQgN,EAAI0S,IAAQ1S,EACvDkyB,EAAWE,EAAKG,YAAYF,SAASz+B,cAAc,OACnDu+B,EAAeD,EAASK,YAAYF,SAASz+B,cAAc,SAC3Du+B,EAAat+B,MAAM6wB,gBAAkB/B,EAAS,GAAG+B,gBAAgB1kB,GAC7DiE,EAAOjE,IACVkyB,EAASK,YAAYF,SAASG,eAAevuB,EAAOjE,KAKvD,OAAOoyB,EAAKK,WAEbC,OAAQ,CACPzuB,OAAQ,CACP0uB,eAAgB,SAASvb,GACxB,IAAIrtB,EAAOqtB,EAAMrtB,KACjB,OAAIA,EAAKka,OAAOjR,QAAUjJ,EAAK44B,SAAS3vB,OAChCjJ,EAAKka,OAAOtZ,KAAI,SAAS8K,EAAOuK,GACtC,IAAIkiB,EAAO9K,EAAMwL,eAAe,GAC5B/uB,EAAQquB,EAAK0Q,WAAWrO,SAASvkB,GAErC,MAAO,CACN6yB,KAAMp9B,EACNozB,UAAWh1B,EAAM6wB,gBACjBoE,YAAaj1B,EAAM8wB,YACnB6C,UAAW3zB,EAAM2xB,YACjB5G,OAAQpS,MAAMziB,EAAK44B,SAAS,GAAG54B,KAAKiW,KAAOkiB,EAAKn4B,KAAKiW,GAAG4e,OAGxDn1B,MAAOuW,MAIH,KAIT8yB,QAAS,SAASzvB,EAAG0vB,GACpB,IAEI/yB,EAAG0S,EAAMwP,EAFTz4B,EAAQspC,EAAWtpC,MACnB2tB,EAAQ9vB,KAAK8vB,MAGjB,IAAKpX,EAAI,EAAG0S,GAAQ0E,EAAMrtB,KAAK44B,UAAY,IAAI3vB,OAAQgN,EAAI0S,IAAQ1S,EAClEkiB,EAAO9K,EAAMwL,eAAe5iB,GAC5BkiB,EAAKn4B,KAAKN,GAAOm1B,QAAUsD,EAAKn4B,KAAKN,GAAOm1B,OAG7CxH,EAAM+M,WAKR4M,SAAU,CACTC,UAAW,CACVjmC,MAAO,WACN,MAAO,IAER0K,MAAO,SAASrI,EAAMrD,GACrB,OAAOA,EAAKka,OAAO7W,EAAK3D,OAAS,KAAO2D,EAAK+jC,YAMjD,IAAIoH,GAAuB9R,GAAuBlT,OAAO,CAExDoO,gBAAiB0C,GAASoI,IAE1B3K,WAAYhE,GAAUrM,KAKtBoQ,oBAAqB,CACpB,kBACA,cACA,cACA,cACA,uBACA,mBACA,oBAMDmB,iBAAkB,WACjB,OAAO17B,KAAK8vB,MAAM9K,MAAMtY,IAMzB+uB,iBAAkB,WACjB,OAAOz7B,KAAK8vB,MAAM9K,MAAMtY,IAGzBmwB,OAAQ,SAASn2B,GAChB,IAOIgS,EAAG0S,EAAMyV,EAPTvU,EAAKtsB,KACL86B,EAAUxO,EAAGyO,aACbH,EAAOtO,EAAGoO,UACV9D,EAAQtK,EAAGwD,MAAMriB,QAAQ6xB,YAAc,EACvC4R,EAAS5kB,EAAG6kB,QAAU,GACtBC,EAAS9kB,EAAG+kB,QAAU,GACtB5E,EAAO7R,EAAKn4B,KAOhB,IAJA6pB,EAAGglB,gBAEH1W,EAAKiE,MAAQvS,EAAGilB,uBAEX74B,EAAI,EAAG0S,EAAO0P,EAAQr4B,KAAKiJ,OAAQgN,EAAI0S,EAAM1S,IACjDw4B,EAAOx4B,GAAKke,EACZiK,EAAQvU,EAAGklB,cAAc94B,GACzB04B,EAAO14B,GAAKmoB,EACZjK,GAASiK,EAGV,IAAKnoB,EAAI,EAAG0S,EAAOqhB,EAAK/gC,OAAQgN,EAAI0S,IAAQ1S,EAC3C+zB,EAAK/zB,GAAG0xB,SAAW9d,EAAG6Q,2BAA2BsP,EAAK/zB,GAAIA,GAC1D4T,EAAGgQ,cAAcmQ,EAAK/zB,GAAIA,EAAGhS,IAO/B4qC,cAAe,WACd,IAAIhlB,EAAKtsB,KACL8vB,EAAQxD,EAAGwD,MACX2T,EAAY3T,EAAM2T,UAClB2I,EAAOtc,EAAMriB,QACbgkC,EAAUvgC,KAAKkN,IAAIqlB,EAAUpT,MAAQoT,EAAUtT,KAAMsT,EAAUnT,OAASmT,EAAUrT,KAEtFN,EAAM4P,YAAcxuB,KAAKmN,IAAIozB,EAAU,EAAG,GAC1C3hB,EAAM6P,YAAczuB,KAAKmN,IAAI+tB,EAAKV,iBAAoB5b,EAAM4P,YAAc,IAAQ0M,EAAqB,iBAAI,EAAG,GAC9Gtc,EAAM4d,cAAgB5d,EAAM4P,YAAc5P,EAAM6P,aAAe7P,EAAM4hB,yBAErEplB,EAAGoT,YAAc5P,EAAM4P,YAAe5P,EAAM4d,aAAephB,EAAGnqB,MAC9DmqB,EAAGqT,YAAcrT,EAAGoT,YAAc5P,EAAM4d,cAGzCpR,cAAe,SAAS9L,EAAKruB,EAAOuE,GACnC,IAAI4lB,EAAKtsB,KACL8vB,EAAQxD,EAAGwD,MACXgL,EAAUxO,EAAGyO,aACbqR,EAAOtc,EAAMriB,QACbqgC,EAAgB1B,EAAK9T,UACrBtT,EAAQ8K,EAAM9K,MACdrI,EAASmT,EAAMrtB,KAAKka,OAEpBoxB,EAAU/oB,EAAM2sB,QAChB3D,EAAUhpB,EAAM4sB,QAGhBC,EAAoBzF,EAAK9M,WACzBjgB,EAAWmR,EAAI8G,OAAS,EAAItS,EAAM8sB,8BAA8BhX,EAAQr4B,KAAKN,IAC7Em9B,EAAahT,EAAG6kB,QAAQhvC,GACxBo9B,EAAWD,GAAc9O,EAAI8G,OAAS,EAAIhL,EAAG+kB,QAAQlvC,IAErD4vC,EAAcjE,EAAcpD,aAAe,EAAI1lB,EAAM8sB,8BAA8BhX,EAAQr4B,KAAKN,IAChGsL,EAAU+iB,EAAI4Z,UAAY,GAE9B5T,GAAUvK,OAAOuE,EAAK,CAErBwL,cAAe1P,EAAGnqB,MAClB+5B,OAAQ/5B,EACRmtC,OAAQtqB,EAGRyS,OAAQ,CACP2F,gBAAiB3vB,EAAQ2vB,gBACzBC,YAAa5vB,EAAQ4vB,YACrBa,YAAazwB,EAAQywB,YACrB+B,YAAaxyB,EAAQwyB,YACrBriB,EAAGmwB,EACHlwB,EAAGmwB,EACHrO,YAAa,EACbD,YAAah5B,EAAQqrC,EAAc1yB,EACnCigB,WAAY54B,GAASonC,EAAcrD,cAAgBoH,EAAoBvS,EACvEC,SAAU74B,GAASonC,EAAcrD,cAAgBoH,EAAoBtS,EACrEpxB,MAAOqoB,GAAU5L,sBAAsBjO,EAAQxa,EAAOwa,EAAOxa,OAI/DquB,EAAI+G,SAGLga,qBAAsB,WACrB,IAAIzW,EAAU96B,KAAK+6B,aACfH,EAAO56B,KAAK06B,UACZmE,EAAQ,EAQZ,OANArI,GAAU1L,KAAK8P,EAAKn4B,MAAM,SAAS45B,EAASl6B,GACtC+iB,MAAM4V,EAAQr4B,KAAKN,KAAYk6B,EAAQ/E,QAC3CuH,OAIKA,GAMRb,cAAe,SAASxN,GACvB,IAAI9uB,EAAQ8uB,EAAIiH,OACZhqB,EAAU+iB,EAAI4Z,SACdnM,EAAgBzH,GAAUyH,cAC1BvT,EAAiB8L,GAAU9L,eAE/B8F,EAAIuN,eAAiB,CACpBX,gBAAiB17B,EAAM07B,gBACvBC,YAAa37B,EAAM27B,YACnBa,YAAax8B,EAAMw8B,aAGpBx8B,EAAM07B,gBAAkB1S,EAAejd,EAAQ0wB,qBAAsBF,EAAcxwB,EAAQ2vB,kBAC3F17B,EAAM27B,YAAc3S,EAAejd,EAAQ2wB,iBAAkBH,EAAcxwB,EAAQ4vB,cACnF37B,EAAMw8B,YAAcxT,EAAejd,EAAQ4wB,iBAAkB5wB,EAAQywB,cAMtEsT,cAAe,SAASrvC,GACvB,IAAImqB,EAAKtsB,KACL6+B,EAAQ7+B,KAAK06B,UAAUmE,MACvB/D,EAAUxO,EAAGyO,aACbH,EAAOtO,EAAGoO,UAEd,GAAIxV,MAAM4V,EAAQr4B,KAAKN,KAAWy4B,EAAKn4B,KAAKN,GAAOm1B,OAClD,OAAO,EAIR,IAAI/C,EAAU,CACbzE,MAAOxD,EAAGwD,MACV8N,UAAWz7B,EACX24B,QAASA,EACTX,aAAc7N,EAAGnqB,OAGlB,OAAOwuC,GAAU,CAChBrkB,EAAGwD,MAAMriB,QAAQsvB,SAASvM,IAAIqQ,MAC7B,EAAI3vB,KAAK4P,GAAM+d,GACdtK,EAASpyB,MAIdoxB,EAAcR,KAAK,MAAOyD,GAAUtN,MAAMqK,EAAcye,WACxDze,EAAcR,KAAK,MAAO,CACzB2Y,iBAAkB,IAInB,IAAIuG,GAAiBpG,GAEjBqG,GAAmB1b,GAAU9L,eAEjC6I,EAAcR,KAAK,QAAS,CAC3BmP,UAAU,EACVld,MAAO,CACN9iB,KAAM,gBAEP66B,SAAU,CACT2E,KAAM,CACLjQ,KAAM,QACNa,QAAS,MAKZ,IAAI6f,GAAmBhT,GAAuBlT,OAAO,CACpDmO,mBAAoB2C,GAAS/uB,KAE7BqsB,gBAAiB0C,GAASqI,MAE1B5K,WAAYhE,GAAUrM,KAKtBmQ,uBAAwB,CACvB,kBACA,cACA,cACA,iBACA,aACA,mBACA,kBACA,QAMDC,oBAAqB,CACpB6C,gBAAiB,uBACjBC,YAAa,mBACba,YAAa,mBACb+E,UAAW,iBACX9E,qBAAsB,4BACtBC,iBAAkB,wBAClBC,iBAAkB,wBAClBkC,YAAa,mBACb6C,WAAY,aACZlT,OAAQ,cACRU,SAAU,iBAMX8K,iBAAkB,WACjB,OAAO17B,KAAK8vB,MAAM9K,MAAMtY,IAMzB+uB,iBAAkB,WACjB,OAAOz7B,KAAK8vB,MAAM9K,MAAMtY,IAGzBmwB,OAAQ,SAASn2B,GAChB,IAMIgS,EAAG0S,EANHkB,EAAKtsB,KACL46B,EAAOtO,EAAGoO,UACVgH,EAAO9G,EAAKE,QACZqH,EAASvH,EAAKn4B,MAAQ,GACtBuiB,EAAQsH,EAAGwD,MAAM9K,MACjBkqB,EAAS5iB,EAAGqQ,QAoBhB,SAhBuBx4B,IAAnB+qC,EAAO5c,cAAgDnuB,IAAvB+qC,EAAOG,cAC1CH,EAAOG,YAAcH,EAAO5c,SAI7BoP,EAAK4N,OAAStqB,EACd0c,EAAK1F,cAAgB1P,EAAGnqB,MAExBu/B,EAAKU,UAAYD,EACjBT,EAAKa,OAAQ,EAEbb,EAAKjK,OAASnL,EAAG4Q,8BAA8BwE,GAE/CA,EAAKnK,QAGA7e,EAAI,EAAG0S,EAAO+W,EAAOz2B,OAAQgN,EAAI0S,IAAQ1S,EAC7C4T,EAAGgQ,cAAc6F,EAAOzpB,GAAIA,EAAGhS,GAOhC,IAHA4lB,EAAGijB,4BAGE72B,EAAI,EAAG0S,EAAO+W,EAAOz2B,OAAQgN,EAAI0S,IAAQ1S,EAC7CypB,EAAOzpB,GAAG6e,SAIZ+E,cAAe,SAAS1K,EAAOzvB,EAAOuE,GACrC,IAAI4lB,EAAKtsB,KACLy9B,EAAS7L,EAAM6L,QAAU,GACzB3C,EAAUxO,EAAGyO,aACb/V,EAAQsH,EAAGwD,MAAM9K,MACjBotB,EAAgBptB,EAAMqtB,yBAAyBlwC,EAAO24B,EAAQr4B,KAAKN,IACnEsL,EAAU6e,EAAG6Q,2BAA2BvL,EAAOzvB,GAC/CqtC,EAAYljB,EAAGoO,UAAUI,QAAQrD,OACjC7Z,EAAIlX,EAAQse,EAAM2sB,QAAUS,EAAcx0B,EAC1CC,EAAInX,EAAQse,EAAM4sB,QAAUQ,EAAcv0B,EAG9C+T,EAAM0d,OAAStqB,EACf4M,EAAMwY,SAAW38B,EACjBmkB,EAAMoK,cAAgB1P,EAAGnqB,MACzByvB,EAAMsK,OAAS/5B,EAGfyvB,EAAM6F,OAAS,CACd7Z,EAAGA,EACHC,EAAGA,EACH4kB,KAAMhF,EAAOgF,MAAQvd,MAAMtH,IAAMsH,MAAMrH,GAEvCqS,OAAQziB,EAAQyiB,OAChBkT,WAAY31B,EAAQ21B,WACpBxS,SAAUnjB,EAAQmjB,SAClBwM,gBAAiB3vB,EAAQ2vB,gBACzBC,YAAa5vB,EAAQ4vB,YACrBa,YAAazwB,EAAQywB,YACrB5L,QAAS4f,GAAiBzU,EAAOnL,QAASkd,EAAYA,EAAUld,QAAU,GAG1E2Q,UAAWx1B,EAAQw1B,YAOrB/F,8BAA+B,WAC9B,IAAI5Q,EAAKtsB,KACLkvC,EAAS5iB,EAAGqQ,QACZlvB,EAAU6e,EAAGwD,MAAMriB,QACnBiY,EAASyZ,GAAuB1kB,UAAUyiB,8BAA8B5hB,MAAMgR,EAAIrT,WAKtF,OAHAyM,EAAOwc,SAAWgQ,GAAiBhD,EAAOhN,SAAUz0B,EAAQy0B,UAC5Dxc,EAAO4M,QAAU4f,GAAiBhD,EAAOG,YAAa5hC,EAAQsvB,SAAS2E,KAAKpP,SAErE5M,GAGR6pB,0BAA2B,WAC1B,IAII72B,EAAG0S,EAAM1pB,EAAOyuC,EAJhB7jB,EAAKtsB,KACL46B,EAAOtO,EAAGoO,UACV7I,EAAOvF,EAAGwD,MAAM2T,UAChBtB,EAASvH,EAAKn4B,MAAQ,GAU1B,SAAS2tC,EAAgBC,EAAIjyB,EAAKC,GACjC,OAAOnN,KAAKmN,IAAInN,KAAKkN,IAAIiyB,EAAIhyB,GAAMD,GAGpC,IAVIwc,EAAKE,QAAQrD,OAAOyK,WACvBC,EAASA,EAAOmO,QAAO,SAASD,GAC/B,OAAQA,EAAG5Y,OAAOgL,SAQf/pB,EAAI,EAAG0S,EAAO+W,EAAOz2B,OAAQgN,EAAI0S,IAAQ1S,EAC7ChX,EAAQygC,EAAOzpB,GAAG+e,OAClB0Y,EAAgB3Z,GAAUia,YACzBja,GAAUgM,aAAaL,EAAQzpB,GAAG,GAAM+e,OACxC/1B,EACA80B,GAAUka,SAASvO,EAAQzpB,GAAG,GAAM+e,OACpC/1B,EAAM4wB,SAIP5wB,EAAM8wB,sBAAwB4d,EAAgBD,EAAcvjB,SAAShP,EAAGiU,EAAK1B,KAAM0B,EAAKxB,OACxF3uB,EAAMgxB,sBAAwB0d,EAAgBD,EAAcvjB,SAAS/O,EAAGgU,EAAKzB,IAAKyB,EAAKvB,QACvF5uB,EAAM+wB,kBAAoB2d,EAAgBD,EAAc5J,KAAK3oB,EAAGiU,EAAK1B,KAAM0B,EAAKxB,OAChF3uB,EAAMixB,kBAAoByd,EAAgBD,EAAc5J,KAAK1oB,EAAGgU,EAAKzB,IAAKyB,EAAKvB,SAIjF0N,cAAe,SAASpM,GACvB,IAAIlwB,EAAQkwB,EAAM6F,OACdhqB,EAAUmkB,EAAMwY,SAChBnM,EAAgBzH,GAAUyH,cAE9BrM,EAAMmM,eAAiB,CACtBX,gBAAiB17B,EAAM07B,gBACvBC,YAAa37B,EAAM27B,YACnBa,YAAax8B,EAAMw8B,YACnBhO,OAAQxuB,EAAMwuB,QAGfxuB,EAAM07B,gBAAkB8U,GAAiBzkC,EAAQ0wB,qBAAsBF,EAAcxwB,EAAQ2vB,kBAC7F17B,EAAM27B,YAAc6U,GAAiBzkC,EAAQ2wB,iBAAkBH,EAAcxwB,EAAQ4vB,cACrF37B,EAAMw8B,YAAcgU,GAAiBzkC,EAAQ4wB,iBAAkB5wB,EAAQywB,aACvEx8B,EAAMwuB,OAASgiB,GAAiBzkC,EAAQ8yB,YAAa9yB,EAAQyiB,WAI/DqD,EAAcR,KAAK,UAAW,CAC7BuK,MAAO,CACNoJ,KAAM,UAGP7L,OAAQ,CACPK,MAAO,CAAC,CACPxuB,GAAI,WACJxK,KAAM,SACNsnC,SAAU,WAEXpO,MAAO,CAAC,CACP1uB,GAAI,WACJxK,KAAM,SACNsnC,SAAU,UAIZC,SAAU,CACTC,UAAW,CACVjmC,MAAO,WACN,MAAO,IAER0K,MAAO,SAASrI,GACf,MAAO,IAAMA,EAAK8jC,OAAS,KAAO9jC,EAAK+jC,OAAS,SAMpDtW,EAAcR,KAAK,SAAU,CAC5BsI,SAAU,CACTiX,QAAS,CACRnD,UAAU,MAMb,IAAIoD,GAAqBtD,GAMrBuD,GAAc,CACjB1L,IAAKC,GACL0L,OAAQ3I,GACRkI,SAAUnG,GACVyC,cAAeC,GACf7M,KAAMuN,GACNyD,UAAWzB,GACX0B,IAAKV,GACLW,MAAOT,GACPG,QAASC,IASV,SAASM,GAAoB92B,EAAG+T,GAC/B,OAAI/T,EAAE+2B,OACE,CACNl1B,EAAG7B,EAAE6B,EACLC,EAAG9B,EAAE8B,GAIA2Y,GAAUqc,oBAAoB92B,EAAG+T,GAQzC,SAASijB,GAAkBjjB,EAAOkjB,GACjC,IACIC,EAAUv6B,EAAGszB,EAAG5gB,EAAM8nB,EAAM7W,EAD5BgM,EAAWvY,EAAMogB,gCAGrB,IAAKx3B,EAAI,EAAG0S,EAAOid,EAAS38B,OAAQgN,EAAI0S,IAAQ1S,EAE/C,IADAu6B,EAAW5K,EAAS3vB,GAAGjW,KAClBupC,EAAI,EAAGkH,EAAOD,EAASvnC,OAAQsgC,EAAIkH,IAAQlH,EAC/C3P,EAAU4W,EAASjH,GACd3P,EAAQ7E,MAAMiL,MAClBuQ,EAAQ3W,GAYZ,SAAS8W,GAAkBrjB,EAAO0Z,GACjC,IAAIzM,EAAW,GAQf,OANAgW,GAAkBjjB,GAAO,SAASuM,GAC7BA,EAAQmE,QAAQgJ,EAAS5rB,EAAG4rB,EAAS3rB,IACxCkf,EAASzvB,KAAK+uB,MAITU,EAWR,SAASqW,GAAgBtjB,EAAO0Z,EAAU6J,EAAWC,GACpD,IAAIC,EAAczmC,OAAO0mC,kBACrBC,EAAe,GAkBnB,OAhBAV,GAAkBjjB,GAAO,SAASuM,GACjC,IAAIgX,GAAchX,EAAQmE,QAAQgJ,EAAS5rB,EAAG4rB,EAAS3rB,GAAvD,CAIA,IAAIqqB,EAAS7L,EAAQ2E,iBACjB3hB,EAAWi0B,EAAe9J,EAAUtB,GACpC7oB,EAAWk0B,GACdE,EAAe,CAACpX,GAChBkX,EAAcl0B,GACJA,IAAak0B,GAEvBE,EAAanmC,KAAK+uB,OAIboX,EAQR,SAASC,GAAyBrF,GACjC,IAAIsF,GAA8B,IAAvBtF,EAAKpkB,QAAQ,KACpB2pB,GAA8B,IAAvBvF,EAAKpkB,QAAQ,KAExB,OAAO,SAAS4pB,EAAKC,GACpB,IAAIC,EAASJ,EAAOziC,KAAK8xB,IAAI6Q,EAAIj2B,EAAIk2B,EAAIl2B,GAAK,EAC1Co2B,EAASJ,EAAO1iC,KAAK8xB,IAAI6Q,EAAIh2B,EAAIi2B,EAAIj2B,GAAK,EAC9C,OAAO3M,KAAK6P,KAAK7P,KAAKC,IAAI4iC,EAAQ,GAAK7iC,KAAKC,IAAI6iC,EAAQ,KAI1D,SAASC,GAAUnkB,EAAO/T,EAAGtO,GAC5B,IAAI+7B,EAAWqJ,GAAoB92B,EAAG+T,GAEtCriB,EAAQ4gC,KAAO5gC,EAAQ4gC,MAAQ,IAC/B,IAAIiF,EAAiBI,GAAyBjmC,EAAQ4gC,MAClD6F,EAAQzmC,EAAQ4lC,UAAYF,GAAkBrjB,EAAO0Z,GAAY4J,GAAgBtjB,EAAO0Z,GAAU,EAAO8J,GACzGvW,EAAW,GAEf,OAAKmX,EAAMxoC,QAIXokB,EAAMogB,gCAAgCjrC,SAAQ,SAAS21B,GACtD,IAAIyB,EAAUzB,EAAKn4B,KAAKyxC,EAAM,GAAGhY,QAG7BG,IAAYA,EAAQ7E,MAAMiL,MAC7B1F,EAASzvB,KAAK+uB,MAITU,GAZC,GA4BT,IAAIoX,GAAmB,CAEtBC,MAAO,CACNC,OAAQ,SAASvkB,EAAO/T,GACvB,IAAIytB,EAAWqJ,GAAoB92B,EAAG+T,GAClCiN,EAAW,GASf,OAPAgW,GAAkBjjB,GAAO,SAASuM,GACjC,GAAIA,EAAQmE,QAAQgJ,EAAS5rB,EAAG4rB,EAAS3rB,GAExC,OADAkf,EAASzvB,KAAK+uB,GACPU,KAIFA,EAASzxB,MAAM,EAAG,IAS1B6C,MAAO8lC,GAYP9xC,MAAO8xC,GAWPnZ,QAAS,SAAShL,EAAO/T,EAAGtO,GAC3B,IAAI+7B,EAAWqJ,GAAoB92B,EAAG+T,GACtCriB,EAAQ4gC,KAAO5gC,EAAQ4gC,MAAQ,KAC/B,IAAIiF,EAAiBI,GAAyBjmC,EAAQ4gC,MAClD6F,EAAQzmC,EAAQ4lC,UAAYF,GAAkBrjB,EAAO0Z,GAAY4J,GAAgBtjB,EAAO0Z,GAAU,EAAO8J,GAM7G,OAJIY,EAAMxoC,OAAS,IAClBwoC,EAAQpkB,EAAMwL,eAAe4Y,EAAM,GAAGlY,eAAev5B,MAG/CyxC,GASR,SAAU,SAASpkB,EAAO/T,GACzB,OAAOk4B,GAAUnkB,EAAO/T,EAAG,CAACs3B,WAAW,KAWxCzhB,MAAO,SAAS9B,EAAO/T,GACtB,IAAIytB,EAAWqJ,GAAoB92B,EAAG+T,GACtC,OAAOqjB,GAAkBrjB,EAAO0Z,IAWjC8K,QAAS,SAASxkB,EAAO/T,EAAGtO,GAC3B,IAAI+7B,EAAWqJ,GAAoB92B,EAAG+T,GACtCriB,EAAQ4gC,KAAO5gC,EAAQ4gC,MAAQ,KAC/B,IAAIiF,EAAiBI,GAAyBjmC,EAAQ4gC,MACtD,OAAO+E,GAAgBtjB,EAAO0Z,EAAU/7B,EAAQ4lC,UAAWC,IAW5D11B,EAAG,SAASkS,EAAO/T,EAAGtO,GACrB,IAAI+7B,EAAWqJ,GAAoB92B,EAAG+T,GAClCokB,EAAQ,GACRK,GAAiB,EAiBrB,OAfAxB,GAAkBjjB,GAAO,SAASuM,GAC7BA,EAAQiH,SAASkG,EAAS5rB,IAC7Bs2B,EAAM5mC,KAAK+uB,GAGRA,EAAQmE,QAAQgJ,EAAS5rB,EAAG4rB,EAAS3rB,KACxC02B,GAAiB,MAMf9mC,EAAQ4lC,YAAckB,IACzBL,EAAQ,IAEFA,GAWRr2B,EAAG,SAASiS,EAAO/T,EAAGtO,GACrB,IAAI+7B,EAAWqJ,GAAoB92B,EAAG+T,GAClCokB,EAAQ,GACRK,GAAiB,EAiBrB,OAfAxB,GAAkBjjB,GAAO,SAASuM,GAC7BA,EAAQkH,SAASiG,EAAS3rB,IAC7Bq2B,EAAM5mC,KAAK+uB,GAGRA,EAAQmE,QAAQgJ,EAAS5rB,EAAG4rB,EAAS3rB,KACxC02B,GAAiB,MAMf9mC,EAAQ4lC,YAAckB,IACzBL,EAAQ,IAEFA,KAKNjoB,GAASuK,GAAUvK,OAEvB,SAASuoB,GAAiBxnB,EAAOwc,GAChC,OAAOhT,GAAUie,MAAMznB,GAAO,SAAStO,GACtC,OAAOA,EAAEg2B,MAAQlL,KAInB,SAASmL,GAAa3nB,EAAOhC,GAC5B,OAAOgC,EAAM7nB,MAAK,SAASoa,EAAGpB,GAC7B,IAAIkN,EAAKL,EAAU7M,EAAIoB,EACnB+L,EAAKN,EAAUzL,EAAIpB,EACvB,OAAOkN,EAAGvC,SAAWwC,EAAGxC,OACvBuC,EAAGlpB,MAAQmpB,EAAGnpB,MACdkpB,EAAGvC,OAASwC,EAAGxC,UAIlB,SAAS8rB,GAAUC,GAClB,IACIn8B,EAAG0S,EAAM0pB,EADTC,EAAc,GAGlB,IAAKr8B,EAAI,EAAG0S,GAAQypB,GAAS,IAAInpC,OAAQgN,EAAI0S,IAAQ1S,EACpDo8B,EAAMD,EAAMn8B,GACZq8B,EAAYznC,KAAK,CAChBnL,MAAOuW,EACPo8B,IAAKA,EACLJ,IAAKI,EAAItL,SACTnF,WAAYyQ,EAAIlN,eAChB9e,OAAQgsB,EAAIhsB,SAGd,OAAOisB,EAGR,SAASC,GAAcC,EAASC,GAC/B,IAAIx8B,EAAG0S,EAAM+pB,EACb,IAAKz8B,EAAI,EAAG0S,EAAO6pB,EAAQvpC,OAAQgN,EAAI0S,IAAQ1S,EAC9Cy8B,EAASF,EAAQv8B,GAEjBy8B,EAAOxoC,MAAQwoC,EAAO9Q,WACnB8Q,EAAOL,IAAIM,WAAaF,EAAOG,eAC/BH,EAAOI,aAEVH,EAAOvoC,OAASuoC,EAAO9Q,YAAc6Q,EAAOK,cAI9C,SAASC,GAAiBX,GACzB,IAAIE,EAAcH,GAAUC,GACxB1kB,EAAOwkB,GAAaH,GAAiBO,EAAa,SAAS,GAC3D1kB,EAAQskB,GAAaH,GAAiBO,EAAa,UACnD3kB,EAAMukB,GAAaH,GAAiBO,EAAa,QAAQ,GACzDzkB,EAASqkB,GAAaH,GAAiBO,EAAa,WAExD,MAAO,CACNU,WAAYtlB,EAAK7J,OAAO8J,GACxBslB,eAAgBrlB,EAAM/J,OAAOgK,GAC7BmT,UAAW+Q,GAAiBO,EAAa,aACzCY,SAAUxlB,EAAK7J,OAAO+J,GACtBgU,WAAYjU,EAAI9J,OAAOgK,IAIzB,SAASslB,GAAeC,EAAYpS,EAAWlkB,EAAGpB,GACjD,OAAOjN,KAAKmN,IAAIw3B,EAAWt2B,GAAIkkB,EAAUlkB,IAAMrO,KAAKmN,IAAIw3B,EAAW13B,GAAIslB,EAAUtlB,IAGlF,SAAS23B,GAAWrS,EAAWyR,EAAQC,GACtC,IAEIY,EAAUC,EAFVlB,EAAMK,EAAOL,IACbe,EAAapS,EAAUoS,WAU3B,GAPIV,EAAOpkB,OAEV0S,EAAU0R,EAAOT,MAAQS,EAAOpkB,MAEjCokB,EAAOpkB,KAAOokB,EAAO9Q,WAAayQ,EAAIloC,OAASkoC,EAAInoC,MACnD82B,EAAU0R,EAAOT,MAAQS,EAAOpkB,KAE5B+jB,EAAImB,WAAY,CACnB,IAAIC,EAAapB,EAAImB,aACrBJ,EAAWzlB,IAAMlf,KAAKmN,IAAIw3B,EAAWzlB,IAAK8lB,EAAW9lB,KACrDylB,EAAW1lB,KAAOjf,KAAKmN,IAAIw3B,EAAW1lB,KAAM+lB,EAAW/lB,MACvD0lB,EAAWvlB,OAASpf,KAAKmN,IAAIw3B,EAAWvlB,OAAQ4lB,EAAW5lB,QAC3DulB,EAAWxlB,MAAQnf,KAAKmN,IAAIw3B,EAAWxlB,MAAO6lB,EAAW7lB,OAM1D,GAHA0lB,EAAWb,EAAOiB,WAAaP,GAAeC,EAAYpS,EAAW,OAAQ,SAC7EuS,EAAYd,EAAOkB,YAAcR,GAAeC,EAAYpS,EAAW,MAAO,UAE1EsS,IAAatS,EAAU3kB,GAAKk3B,IAAcvS,EAAU3lB,EAAG,CAC1D2lB,EAAU3kB,EAAIi3B,EACdtS,EAAU3lB,EAAIk4B,EAGd,IAAI/vC,EAAQkvC,EAAO9Q,WAAa,CAAC0R,EAAUtS,EAAU3kB,GAAK,CAACk3B,EAAWvS,EAAU3lB,GAChF,OAAO7X,EAAM,KAAOA,EAAM,MAAQif,MAAMjf,EAAM,MAAQif,MAAMjf,EAAM,MAIpE,SAASowC,GAAiB5S,GACzB,IAAIoS,EAAapS,EAAUoS,WAE3B,SAASS,EAAU5B,GAClB,IAAI6B,EAASrlC,KAAKmN,IAAIw3B,EAAWnB,GAAOjR,EAAUiR,GAAM,GAExD,OADAjR,EAAUiR,IAAQ6B,EACXA,EAER9S,EAAU5lB,GAAKy4B,EAAU,OACzB7S,EAAU7lB,GAAK04B,EAAU,QACzBA,EAAU,SACVA,EAAU,UAGX,SAASE,GAAWnS,EAAYZ,GAC/B,IAAIoS,EAAapS,EAAUoS,WAE3B,SAASY,EAAmBC,GAC3B,IAAIC,EAAS,CAACxmB,KAAM,EAAGC,IAAK,EAAGC,MAAO,EAAGC,OAAQ,GAIjD,OAHAomB,EAAUzxC,SAAQ,SAASyvC,GAC1BiC,EAAOjC,GAAOxjC,KAAKmN,IAAIolB,EAAUiR,GAAMmB,EAAWnB,OAE5CiC,EAGR,OACGF,EADIpS,EACe,CAAC,OAAQ,SACT,CAAC,MAAO,WAG/B,SAASuS,GAAS/B,EAAOpR,EAAWyR,GACnC,IACIx8B,EAAG0S,EAAM+pB,EAAQL,EAAK+B,EAAOC,EAD7BC,EAAa,GAGjB,IAAKr+B,EAAI,EAAG0S,EAAOypB,EAAMnpC,OAAQgN,EAAI0S,IAAQ1S,EAC5Cy8B,EAASN,EAAMn8B,GACfo8B,EAAMK,EAAOL,IAEbA,EAAIjY,OACHsY,EAAOxoC,OAAS82B,EAAU3kB,EAC1Bq2B,EAAOvoC,QAAU62B,EAAU3lB,EAC3B04B,GAAWrB,EAAO9Q,WAAYZ,IAE3BqS,GAAWrS,EAAWyR,EAAQC,KACjC2B,GAAU,EACNC,EAAWrrC,SAGdmrC,GAAQ,IAGL/B,EAAIM,WACR2B,EAAWzpC,KAAK6nC,GAIlB,OAAO0B,GAAQD,GAASG,EAAYtT,EAAWyR,IAAqB4B,EAGrE,SAASE,GAAWnC,EAAOpR,EAAWyR,GACrC,IAGIx8B,EAAG0S,EAAM+pB,EAAQL,EAHjBmC,EAAc/B,EAAO1R,QACrB5lB,EAAI6lB,EAAU7lB,EACdC,EAAI4lB,EAAU5lB,EAGlB,IAAKnF,EAAI,EAAG0S,EAAOypB,EAAMnpC,OAAQgN,EAAI0S,IAAQ1S,EAC5Cy8B,EAASN,EAAMn8B,GACfo8B,EAAMK,EAAOL,IACTK,EAAO9Q,YACVyQ,EAAI3kB,KAAO2kB,EAAIM,UAAY6B,EAAY9mB,KAAOsT,EAAUtT,KACxD2kB,EAAIzkB,MAAQykB,EAAIM,UAAYF,EAAOiB,WAAac,EAAY5mB,MAAQoT,EAAUtT,KAAOsT,EAAU3kB,EAC/Fg2B,EAAI1kB,IAAMvS,EACVi3B,EAAIxkB,OAASzS,EAAIi3B,EAAIloC,OACrBkoC,EAAInoC,MAAQmoC,EAAIzkB,MAAQykB,EAAI3kB,KAC5BtS,EAAIi3B,EAAIxkB,SAERwkB,EAAI3kB,KAAOvS,EACXk3B,EAAIzkB,MAAQzS,EAAIk3B,EAAInoC,MACpBmoC,EAAI1kB,IAAMqT,EAAUrT,IACpB0kB,EAAIxkB,OAASmT,EAAUrT,IAAMqT,EAAU3lB,EACvCg3B,EAAIloC,OAASkoC,EAAIxkB,OAASwkB,EAAI1kB,IAC9BxS,EAAIk3B,EAAIzkB,OAIVoT,EAAU7lB,EAAIA,EACd6lB,EAAU5lB,EAAIA,EAGf0V,EAAcR,KAAK,SAAU,CAC5BoiB,OAAQ,CACP3R,QAAS,CACRpT,IAAK,EACLC,MAAO,EACPC,OAAQ,EACRH,KAAM,MAyBT,IAAI+mB,GAAe,CAClBpkB,SAAU,GAQVqkB,OAAQ,SAASrnB,EAAOhqB,GAClBgqB,EAAM+kB,QACV/kB,EAAM+kB,MAAQ,IAIf/uC,EAAKsvC,UAAYtvC,EAAKsvC,YAAa,EACnCtvC,EAAK0jC,SAAW1jC,EAAK0jC,UAAY,MACjC1jC,EAAKgjB,OAAShjB,EAAKgjB,QAAU,EAC7BhjB,EAAKsxC,QAAUtxC,EAAKsxC,SAAW,WAC9B,MAAO,CAAC,CACP93B,EAAG,EACH0d,KAAM,WACLl3B,EAAKk3B,KAAK1hB,MAAMxV,EAAMmT,eAKzB6W,EAAM+kB,MAAMvnC,KAAKxH,IAQlBuxC,UAAW,SAASvnB,EAAOwnB,GAC1B,IAAIn1C,EAAQ2tB,EAAM+kB,MAAQ/kB,EAAM+kB,MAAM5qB,QAAQqtB,IAAe,GAC9C,IAAXn1C,GACH2tB,EAAM+kB,MAAM7lC,OAAO7M,EAAO,IAU5Bo1C,UAAW,SAASznB,EAAOhqB,EAAM2H,GAMhC,IALA,IAGIY,EAHA1D,EAAQ,CAAC,YAAa,WAAY,UAClCygB,EAAOzgB,EAAMe,OACbgN,EAAI,EAGDA,EAAI0S,IAAQ1S,EAClBrK,EAAO1D,EAAM+N,GACTjL,EAAQ2O,eAAe/N,KAC1BvI,EAAKuI,GAAQZ,EAAQY,KAYxBwuB,OAAQ,SAAS/M,EAAOnjB,EAAOC,GAC9B,GAAKkjB,EAAL,CAIA,IAAI0nB,EAAgB1nB,EAAMriB,QAAQ0nC,QAAU,GACxC3R,EAAUhN,GAAU/oB,QAAQqmB,UAAU0jB,EAAchU,SAEpD6R,EAAiB1oC,EAAQ62B,EAAQ72B,MACjC8qC,EAAkB7qC,EAAS42B,EAAQ52B,OACnCioC,EAAQW,GAAiB1lB,EAAM+kB,OAC/B6C,EAAgB7C,EAAMc,SACtBgC,EAAkB9C,EAAMxQ,WA6BxB6Q,EAAS9wC,OAAOy5B,OAAO,CAC1BsY,WAAYxpC,EACZypC,YAAaxpC,EACb42B,QAASA,EACT6R,eAAgBA,EAChBC,aAAcD,EAAiB,EAAIqC,EAAchsC,OACjD6pC,cAAekC,EAAkB,IAE9BhU,EAAYxX,GAAO,CACtB4pB,WAAY5pB,GAAO,GAAIuX,GACvB1kB,EAAGu2B,EACHv3B,EAAG25B,EACH75B,EAAG4lB,EAAQrT,KACXtS,EAAG2lB,EAAQpT,KACToT,GAEHwR,GAAc0C,EAAcpxB,OAAOqxB,GAAkBzC,GAGrD0B,GAASc,EAAejU,EAAWyR,GAG/B0B,GAASe,EAAiBlU,EAAWyR,IAExC0B,GAASc,EAAejU,EAAWyR,GAGpCmB,GAAiB5S,GAGjBuT,GAAWnC,EAAMY,WAAYhS,EAAWyR,GAGxCzR,EAAU7lB,GAAK6lB,EAAU3kB,EACzB2kB,EAAU5lB,GAAK4lB,EAAU3lB,EAEzBk5B,GAAWnC,EAAMa,eAAgBjS,EAAWyR,GAE5CplB,EAAM2T,UAAY,CACjBtT,KAAMsT,EAAUtT,KAChBC,IAAKqT,EAAUrT,IACfC,MAAOoT,EAAUtT,KAAOsT,EAAU3kB,EAClCwR,OAAQmT,EAAUrT,IAAMqT,EAAU3lB,GAInC0Y,GAAU1L,KAAK+pB,EAAMpR,WAAW,SAAS0R,GACxC,IAAIL,EAAMK,EAAOL,IACjB7oB,GAAO6oB,EAAKhlB,EAAM2T,WAClBqR,EAAIjY,OAAO4G,EAAU3kB,EAAG2kB,EAAU3lB,SAUjC85B,GAAiB,CACpBC,eAAgB,SAAS/xC,GAMxB,OALIA,GAAQA,EAAK6H,SAEhB7H,EAAOA,EAAK6H,QAGN7H,GAAQA,EAAK+H,WAAW,OAAS,OAItCiqC,GAAe,k9BAEfC,GAA8B3zC,OAAOy5B,OAAO,CAChDma,UAAW,KACX,QAAWF,KAGPG,GAAa/7B,EAA0B67B,IAEvCG,GAAc,WACdC,GAAa,WACbC,GAAmBD,GAAa,eAChCE,GAAqBF,GAAa,iBAClCG,GAAuBH,GAAa,mBACpCI,GAAyB,CAAC,iBAAkB,wBAO5CC,GAAc,CACjBC,WAAY,YACZC,UAAW,YACXC,SAAU,UACVC,aAAc,aACdC,YAAa,YACbC,YAAa,YACbC,UAAW,UACXC,aAAc,WACdC,WAAY,YAYb,SAASC,GAAa7c,EAAS8c,GAC9B,IAAIx3C,EAAQ60B,GAAUyG,SAASZ,EAAS8c,GACpCtlB,EAAUlyB,GAASA,EAAMggB,MAAM,qBACnC,OAAOkS,EAAU/mB,OAAO+mB,EAAQ,SAAM1vB,EAQvC,SAASi1C,GAAWzrC,EAAQuhC,GAC3B,IAAI3iC,EAAQoB,EAAOpB,MAIf8sC,EAAe1rC,EAAO2rC,aAAa,UACnCC,EAAc5rC,EAAO2rC,aAAa,SAoBtC,GAjBA3rC,EAAOuqC,IAAe,CACrBsB,QAAS,CACR5sC,OAAQysC,EACR1sC,MAAO4sC,EACPhtC,MAAO,CACNskC,QAAStkC,EAAMskC,QACfjkC,OAAQL,EAAMK,OACdD,MAAOJ,EAAMI,SAQhBJ,EAAMskC,QAAUtkC,EAAMskC,SAAW,QAEb,OAAhB0I,GAAwC,KAAhBA,EAAoB,CAC/C,IAAIE,EAAeP,GAAavrC,EAAQ,cACnBxJ,IAAjBs1C,IACH9rC,EAAOhB,MAAQ8sC,GAIjB,GAAqB,OAAjBJ,GAA0C,KAAjBA,EAC5B,GAA4B,KAAxB1rC,EAAOpB,MAAMK,OAIhBe,EAAOf,OAASe,EAAOhB,OAASuiC,EAAOzhC,QAAQisC,aAAe,OACxD,CACN,IAAIC,EAAgBT,GAAavrC,EAAQ,eACpBxJ,IAAjBs1C,IACH9rC,EAAOf,OAAS+sC,GAKnB,OAAOhsC,EAQR,IAAIisC,GAAgC,WACnC,IAAIC,GAAW,EACf,IACC,IAAIpsC,EAAUrJ,OAAOsZ,eAAe,GAAI,UAAW,CAElDrY,IAAK,WACJw0C,GAAW,KAGb/vB,OAAOgwB,iBAAiB,IAAK,KAAMrsC,GAClC,MAAOsO,IAGT,OAAO89B,EAb2B,GAkB/BE,KAAuBH,IAA+B,CAACI,SAAS,GAEpE,SAASC,GAAYn3B,EAAM5gB,EAAMw3B,GAChC5W,EAAKg3B,iBAAiB53C,EAAMw3B,EAAUqgB,IAGvC,SAASG,GAAep3B,EAAM5gB,EAAMw3B,GACnC5W,EAAKq3B,oBAAoBj4C,EAAMw3B,EAAUqgB,IAG1C,SAASK,GAAYl4C,EAAM4tB,EAAOlS,EAAGC,EAAGw8B,GACvC,MAAO,CACNn4C,KAAMA,EACN4tB,MAAOA,EACPgjB,OAAQuH,GAAe,KACvBz8B,OAASzZ,IAANyZ,EAAkBA,EAAI,KACzBC,OAAS1Z,IAAN0Z,EAAkBA,EAAI,MAI3B,SAASy8B,GAAgBC,EAAOzqB,GAC/B,IAAI5tB,EAAOs2C,GAAY+B,EAAMr4C,OAASq4C,EAAMr4C,KACxCwyC,EAAMle,GAAUqc,oBAAoB0H,EAAOzqB,GAC/C,OAAOsqB,GAAYl4C,EAAM4tB,EAAO4kB,EAAI92B,EAAG82B,EAAI72B,EAAG08B,GAG/C,SAASC,GAAUt5C,EAAI2pB,GACtB,IAAI4vB,GAAU,EACVv5B,EAAO,GAEX,OAAO,WACNA,EAAOlU,MAAMyN,UAAUnP,MAAMkO,KAAKP,WAClC4R,EAAUA,GAAW7qB,KAEhBy6C,IACJA,GAAU,EACVjkB,GAAU4C,iBAAiB5f,KAAKsQ,QAAQ,WACvC2wB,GAAU,EACVv5C,EAAGoa,MAAMuP,EAAS3J,QAMtB,SAASw5B,GAAUC,GAClB,IAAIC,EAAK7P,SAASz+B,cAAc,OAEhC,OADAsuC,EAAGC,UAAYF,GAAO,GACfC,EAIR,SAASE,GAAc9H,GACtB,IAAI+H,EAAU,IAIVC,EAAUN,GAAUtC,IACpB6C,EAASP,GAAUtC,GAAmB,WACtC8C,EAASR,GAAUtC,GAAmB,WAE1C6C,EAAOhQ,YAAYyP,MACnBQ,EAAOjQ,YAAYyP,MAEnBM,EAAQ/P,YAAYgQ,GACpBD,EAAQ/P,YAAYiQ,GACpBF,EAAQG,OAAS,WAChBF,EAAOG,WAAaL,EACpBE,EAAOI,UAAYN,EACnBG,EAAOE,WAAaL,EACpBG,EAAOG,UAAYN,GAGpB,IAAIO,EAAW,WACdN,EAAQG,SACRnI,KAMD,OAHAiH,GAAYgB,EAAQ,SAAUK,EAASC,KAAKN,EAAQ,WACpDhB,GAAYiB,EAAQ,SAAUI,EAASC,KAAKL,EAAQ,WAE7CF,EAIR,SAASQ,GAAe14B,EAAMkwB,GAC7B,IAAIyI,EAAU34B,EAAKo1B,MAAiBp1B,EAAKo1B,IAAe,IACpDwD,EAAQD,EAAQE,YAAc,SAAS5/B,GACtCA,EAAE6/B,gBAAkBtD,IACvBtF,KAIFxc,GAAU1L,KAAKytB,IAAwB,SAASr2C,GAC/C+3C,GAAYn3B,EAAM5gB,EAAMw5C,MAQzBD,EAAQI,SAAW/4B,EAAKg5B,aAExBh5B,EAAKi5B,UAAUC,IAAI3D,IAGpB,SAAS4D,GAAiBn5B,GACzB,IAAI24B,EAAU34B,EAAKo1B,KAAgB,GAC/BwD,EAAQD,EAAQE,YAEhBD,IACHllB,GAAU1L,KAAKytB,IAAwB,SAASr2C,GAC/Cg4C,GAAep3B,EAAM5gB,EAAMw5C,aAGrBD,EAAQE,aAGhB74B,EAAKi5B,UAAUG,OAAO7D,IAGvB,SAAS8D,GAAkBr5B,EAAM4W,EAAU5J,GAC1C,IAAI2rB,EAAU34B,EAAKo1B,MAAiBp1B,EAAKo1B,IAAe,IAGpD8C,EAAUS,EAAQT,QAAUF,GAAcN,IAAU,WACvD,GAAIiB,EAAQT,QAAS,CACpB,IAAIoB,EAAYtsB,EAAMriB,QAAQ4uC,qBAAuBv5B,EAAKw5B,WACtDx9B,EAAIs9B,EAAYA,EAAUG,YAAc,EAC5C7iB,EAAS0gB,GAAY,SAAUtqB,IAC3BssB,GAAaA,EAAUG,YAAcz9B,GAAKgR,EAAMniB,QAQnD+rB,EAAS0gB,GAAY,SAAUtqB,SAOlC0rB,GAAe14B,GAAM,WACpB,GAAI24B,EAAQT,QAAS,CACpB,IAAIoB,EAAYt5B,EAAKw5B,WACjBF,GAAaA,IAAcpB,EAAQsB,YACtCF,EAAUI,aAAaxB,EAASoB,EAAUK,YAI3CzB,EAAQG,aAKX,SAASuB,GAAqB55B,GAC7B,IAAI24B,EAAU34B,EAAKo1B,KAAgB,GAC/B8C,EAAUS,EAAQT,eAEfS,EAAQT,QACfiB,GAAiBn5B,GAEbk4B,GAAWA,EAAQsB,YACtBtB,EAAQsB,WAAWK,YAAY3B,GASjC,SAAS4B,GAAUC,EAAUC,GAE5B,IAAIrB,EAAUoB,EAAS3E,MAAiB2E,EAAS3E,IAAe,IAChE,IAAKuD,EAAQsB,eAAgB,CAC5BtB,EAAQsB,gBAAiB,EACzBD,EAAM,mBAAqBA,EAC3B,IAAIvwC,EAAQw+B,SAASz+B,cAAc,SACnCC,EAAMy+B,aAAa,OAAQ,YAC3Bz+B,EAAM0+B,YAAYF,SAASG,eAAe4R,IAC1CD,EAAS5R,YAAY1+B,IAIvB,IAAIywC,GAAiB,CAQpBC,qBAAqB,EAOrBC,SAA4B,qBAAXpzB,QAA8C,qBAAbihB,SAOlDoS,cAAe,SAASxvC,GACvB,IAAK3N,KAAKi9C,oBAAqB,CAI9B,IAAIG,EAAOzvC,EAAO0vC,YAAc1vC,EAAO0vC,cAAgBtS,SACnDuS,EAAaF,EAAK33C,KAAO23C,EAAOrS,SAAS9C,KAC7C2U,GAAUU,EAAYrF,MAIxBJ,eAAgB,SAAS/xC,EAAMopC,GACV,kBAATppC,EACVA,EAAOilC,SAASwS,eAAez3C,GACrBA,EAAK4F,SAEf5F,EAAOA,EAAK,IAGTA,GAAQA,EAAK6H,SAEhB7H,EAAOA,EAAK6H,QAMb,IAAI4mB,EAAUzuB,GAAQA,EAAK+H,YAAc/H,EAAK+H,WAAW,MASzD,OAAI0mB,GAAWA,EAAQ5mB,SAAW7H,GAGjC9F,KAAKm9C,cAAcr3C,GACnBszC,GAAWtzC,EAAMopC,GACV3a,GAGD,MAGRipB,eAAgB,SAASjpB,GACxB,IAAI5mB,EAAS4mB,EAAQ5mB,OACrB,GAAKA,EAAOuqC,IAAZ,CAIA,IAAIsB,EAAU7rC,EAAOuqC,IAAasB,QAClC,CAAC,SAAU,SAASv0C,SAAQ,SAASoJ,GACpC,IAAI1M,EAAQ63C,EAAQnrC,GAChBmoB,GAAUnM,cAAc1oB,GAC3BgM,EAAO8vC,gBAAgBpvC,GAEvBV,EAAOq9B,aAAa38B,EAAM1M,MAI5B60B,GAAU1L,KAAK0uB,EAAQjtC,OAAS,IAAI,SAAS5K,EAAOV,GACnD0M,EAAOpB,MAAMtL,GAAOU,KAQrBgM,EAAOhB,MAAQgB,EAAOhB,aAEfgB,EAAOuqC,MAGf4B,iBAAkB,SAAShqB,EAAO5tB,EAAMw3B,GACvC,IAAI/rB,EAASmiB,EAAMniB,OACnB,GAAa,WAATzL,EAAJ,CAMA,IAAIu5C,EAAU/hB,EAASwe,MAAiBxe,EAASwe,IAAe,IAC5DwF,EAAUjC,EAAQiC,UAAYjC,EAAQiC,QAAU,IAChDhC,EAAQgC,EAAQ5tB,EAAMpjB,GAAK,IAAMxK,GAAQ,SAASq4C,GACrD7gB,EAAS4gB,GAAgBC,EAAOzqB,KAGjCmqB,GAAYtsC,EAAQzL,EAAMw5C,QAVzBS,GAAkBxuC,EAAQ+rB,EAAU5J,IAatCqqB,oBAAqB,SAASrqB,EAAO5tB,EAAMw3B,GAC1C,IAAI/rB,EAASmiB,EAAMniB,OACnB,GAAa,WAATzL,EAAJ,CAMA,IAAIu5C,EAAU/hB,EAASwe,KAAgB,GACnCwF,EAAUjC,EAAQiC,SAAW,GAC7BhC,EAAQgC,EAAQ5tB,EAAMpjB,GAAK,IAAMxK,GAChCw5C,GAILxB,GAAevsC,EAAQzL,EAAMw5C,QAX5BgB,GAAqB/uC,KA0BxB6oB,GAAUmnB,SAAW1D,GAWrBzjB,GAAUonB,YAAc1D,GAGxB,IAAI2D,GAAiBb,GAAeE,SAAWF,GAAiBpF,GAO5DkG,GAAWtnB,GAAUvK,OAAO,CAI/BmL,WAAY,aASZygB,eAAgB,aAQhB2F,eAAgB,aAShB1D,iBAAkB,aAQlBK,oBAAqB,cAEnB0D,IAEHtqB,EAAcR,KAAK,SAAU,CAC5BhmB,QAAS,KAQV,IAAIgxC,GAAe,CAKlB7wC,SAAU,GAQV8wC,SAAU,EAMVC,SAAU,SAASlxC,GAClB,IAAIkT,EAAIjgB,KAAKkN,SACb,GAAKoZ,OAAOvZ,GAAS9H,SAAQ,SAASmI,IACV,IAAvB6S,EAAEgK,QAAQ7c,IACb6S,EAAE3S,KAAKF,MAITpN,KAAKg+C,YAONE,WAAY,SAASnxC,GACpB,IAAIkT,EAAIjgB,KAAKkN,SACb,GAAKoZ,OAAOvZ,GAAS9H,SAAQ,SAASmI,GACrC,IAAI+wC,EAAMl+B,EAAEgK,QAAQ7c,IACP,IAAT+wC,GACHl+B,EAAEjR,OAAOmvC,EAAK,MAIhBn+C,KAAKg+C,YAONnuB,MAAO,WACN7vB,KAAKkN,SAAW,GAChBlN,KAAKg+C,YAQNnf,MAAO,WACN,OAAO7+B,KAAKkN,SAASxB,QAQtB0yC,OAAQ,WACP,OAAOp+C,KAAKkN,UAYbmxC,OAAQ,SAASvuB,EAAOwuB,EAAMp9B,GAC7B,IAEIxI,EAAG6lC,EAAYnxC,EAAQ8nC,EAAQrb,EAF/B2kB,EAAcx+C,KAAKw+C,YAAY1uB,GAC/B1E,EAAOozB,EAAY9yC,OAGvB,IAAKgN,EAAI,EAAGA,EAAI0S,IAAQ1S,EAIvB,GAHA6lC,EAAaC,EAAY9lC,GACzBtL,EAASmxC,EAAWnxC,OACpBysB,EAASzsB,EAAOkxC,GACM,oBAAXzkB,IACVqb,EAAS,CAACplB,GAAOxJ,OAAOpF,GAAQ,IAChCg0B,EAAO5nC,KAAKixC,EAAW9wC,UACc,IAAjCosB,EAAOve,MAAMlO,EAAQ8nC,IACxB,OAAO,EAKV,OAAO,GAQRsJ,YAAa,SAAS1uB,GACrB,IAAI2uB,EAAQ3uB,EAAM4uB,WAAa5uB,EAAM4uB,SAAW,IAChD,GAAID,EAAM/xC,KAAO1M,KAAKg+C,SACrB,OAAOS,EAAMD,YAGd,IAAIzxC,EAAU,GACVyxC,EAAc,GACdtP,EAAUpf,GAASA,EAAMof,QAAW,GACpCzhC,EAAWyhC,EAAOzhC,SAAWyhC,EAAOzhC,QAAQV,SAAY,GA2B5D,OAzBA/M,KAAKkN,SAASoZ,OAAO4oB,EAAOniC,SAAW,IAAI9H,SAAQ,SAASmI,GAC3D,IAAI+wC,EAAMpxC,EAAQkd,QAAQ7c,GAC1B,IAAa,IAAT+wC,EAAJ,CAIA,IAAIzxC,EAAKU,EAAOV,GACZ0/B,EAAO3+B,EAAQf,IACN,IAAT0/B,KAIS,IAATA,IACHA,EAAO5V,GAAUtN,MAAMqK,EAAcxjB,OAAOhD,QAAQL,KAGrDK,EAAQO,KAAKF,GACboxC,EAAYlxC,KAAK,CAChBF,OAAQA,EACRK,QAAS2+B,GAAQ,UAInBqS,EAAMD,YAAcA,EACpBC,EAAM/xC,GAAK1M,KAAKg+C,SACTQ,GASRG,YAAa,SAAS7uB,UACdA,EAAM4uB,WAIXE,GAAoB,CAGvBC,aAAc,GAKd/rB,SAAU,GACVgsB,kBAAmB,SAAS58C,EAAM68C,EAAkBC,GACnDh/C,KAAK6+C,aAAa38C,GAAQ68C,EAC1B/+C,KAAK8yB,SAAS5wB,GAAQs0B,GAAUtN,MAAM81B,IAEvCC,oBAAqB,SAAS/8C,GAC7B,OAAOlC,KAAK6+C,aAAaziC,eAAela,GAAQlC,KAAK6+C,aAAa38C,QAAQiC,GAE3E+6C,iBAAkB,SAASh9C,GAE1B,OAAOlC,KAAK8yB,SAAS1W,eAAela,GAAQs0B,GAAU5K,MAAMxnB,OAAOmnB,OAAO,MAAO,CAACgI,EAAcvO,MAAOhlB,KAAK8yB,SAAS5wB,KAAU,IAEhIi9C,oBAAqB,SAASj9C,EAAMk9C,GACnC,IAAI9yB,EAAKtsB,KACLssB,EAAGwG,SAAS1W,eAAela,KAC9BoqB,EAAGwG,SAAS5wB,GAAQs0B,GAAUvK,OAAOK,EAAGwG,SAAS5wB,GAAOk9C,KAG1DC,kBAAmB,SAASvvB,GAE3B0G,GAAU1L,KAAKgF,EAAM+K,QAAQ,SAAS7V,GAErCA,EAAMowB,UAAYpwB,EAAMvX,QAAQ2nC,UAChCpwB,EAAMwkB,SAAWxkB,EAAMvX,QAAQ+7B,SAC/BxkB,EAAM8D,OAAS9D,EAAMvX,QAAQqb,OAC7BouB,GAAaC,OAAOrnB,EAAO9K,QAK1Bs6B,GAAmB9oB,GAAU9L,eAC7B60B,GAAe/oB,GAAUV,IAAIX,cAEjC5B,EAAcR,KAAK,SAAU,CAC5B0W,SAAU,CACT+V,SAAS,EACT/hB,OAAQ,KACRiJ,KAAM,UACN8C,SAAU,UACV6J,WAAW,EACXjW,gBAAiB,kBACjBqiB,eAAgB,OAChBC,aAAc,EACdC,kBAAmB,EACnBC,eAAgB,OAChBC,WAAY,OACZC,YAAa,EACbC,cAAe,OACfC,UAAW,OACXC,gBAAiB,OACjBC,cAAe,EACfC,gBAAiB,EACjBC,gBAAiB,OACjBC,YAAa,OACbC,SAAU,EACVC,SAAU,EACVC,aAAc,EACdC,UAAW,EACXzvB,aAAc,EACd0vB,mBAAoB,OACpBC,eAAe,EACftjB,YAAa,gBACba,YAAa,EACbwL,UAAW,CAEVkX,YAAapqB,GAAUrM,KACvB1mB,MAAO,SAASo9C,EAAcp+C,GAC7B,IAAIgB,EAAQ,GACRkZ,EAASla,EAAKka,OACdmkC,EAAankC,EAASA,EAAOjR,OAAS,EAE1C,GAAIm1C,EAAan1C,OAAS,EAAG,CAC5B,IAAI5F,EAAO+6C,EAAa,GACpB/6C,EAAKqI,MACR1K,EAAQqC,EAAKqI,MACHrI,EAAK8jC,OACfnmC,EAAQqC,EAAK8jC,OACHkX,EAAa,GAAKh7C,EAAK3D,MAAQ2+C,IACzCr9C,EAAQkZ,EAAO7W,EAAK3D,QAItB,OAAOsB,GAERs9C,WAAYvqB,GAAUrM,KAGtB62B,WAAYxqB,GAAUrM,KAGtB82B,YAAazqB,GAAUrM,KACvBhc,MAAO,SAASw9B,EAAalpC,GAC5B,IAAI0L,EAAQ1L,EAAK44B,SAASsQ,EAAYxR,cAAchsB,OAAS,GAU7D,OARIA,IACHA,GAAS,MAELqoB,GAAUnM,cAAcshB,EAAYhqC,OAGxCwM,GAASw9B,EAAY9B,OAFrB17B,GAASw9B,EAAYhqC,MAIfwM,GAER+yC,WAAY,SAASvV,EAAa7b,GACjC,IAAI8K,EAAO9K,EAAMwL,eAAeqQ,EAAYxR,cACxCgnB,EAAgBvmB,EAAKn4B,KAAKkpC,EAAYxpC,OACtC00B,EAAOsqB,EAAc3pB,MACzB,MAAO,CACN6F,YAAaxG,EAAKwG,YAClBD,gBAAiBvG,EAAKuG,kBAGxBgkB,eAAgB,WACf,OAAOphD,KAAKoqC,SAAS2V,eAEtBsB,WAAY7qB,GAAUrM,KAGtBm3B,UAAW9qB,GAAUrM,KAGrBo3B,aAAc/qB,GAAUrM,KACxBq3B,OAAQhrB,GAAUrM,KAClBs3B,YAAajrB,GAAUrM,SAK1B,IAAIu3B,GAAc,CAOjBC,QAAS,SAAS5kB,GACjB,IAAKA,EAASrxB,OACb,OAAO,EAGR,IAAIgN,EAAG4J,EACH1E,EAAI,EACJC,EAAI,EACJghB,EAAQ,EAEZ,IAAKnmB,EAAI,EAAG4J,EAAMya,EAASrxB,OAAQgN,EAAI4J,IAAO5J,EAAG,CAChD,IAAIkiC,EAAK7d,EAASrkB,GAClB,GAAIkiC,GAAMA,EAAG/iB,WAAY,CACxB,IAAI6c,EAAMkG,EAAGhjB,kBACbha,GAAK82B,EAAI92B,EACTC,GAAK62B,EAAI72B,IACPghB,GAIJ,MAAO,CACNjhB,EAAGA,EAAIihB,EACPhhB,EAAGA,EAAIghB,IAWTyV,QAAS,SAASvX,EAAU6kB,GAC3B,IAGIlpC,EAAG4J,EAAKu/B,EAHRjkC,EAAIgkC,EAAchkC,EAClBC,EAAI+jC,EAAc/jC,EAClB01B,EAAczmC,OAAO0mC,kBAGzB,IAAK96B,EAAI,EAAG4J,EAAMya,EAASrxB,OAAQgN,EAAI4J,IAAO5J,EAAG,CAChD,IAAIkiC,EAAK7d,EAASrkB,GAClB,GAAIkiC,GAAMA,EAAG/iB,WAAY,CACxB,IAAIqQ,EAAS0S,EAAG5Z,iBACZ8gB,EAAItrB,GAAUurB,sBAAsBH,EAAe1Z,GAEnD4Z,EAAIvO,IACPA,EAAcuO,EACdD,EAAiBjH,IAKpB,GAAIiH,EAAgB,CACnB,IAAIG,EAAKH,EAAejqB,kBACxBha,EAAIokC,EAAGpkC,EACPC,EAAImkC,EAAGnkC,EAGR,MAAO,CACND,EAAGA,EACHC,EAAGA,KAMN,SAASokC,GAAalqC,EAAMmqC,GAU3B,OATIA,IACC1rB,GAAUlM,QAAQ43B,GAErBl1C,MAAMyN,UAAUnN,KAAKgO,MAAMvD,EAAMmqC,GAEjCnqC,EAAKzK,KAAK40C,IAILnqC,EASR,SAASoqC,GAAc58B,GACtB,OAAoB,kBAARA,GAAoBA,aAAejgB,SAAWigB,EAAI0E,QAAQ,OAAS,EACvE1E,EAAInS,MAAM,MAEXmS,EASR,SAAS68B,GAAkB/lB,GAC1B,IAAI0N,EAAS1N,EAAQiL,QACjB0C,EAAS3N,EAAQkL,SAAWlL,EAAQiT,OACpCntC,EAAQk6B,EAAQH,OAChB/B,EAAekC,EAAQL,cACvBsP,EAAajP,EAAQpvB,OAAOquB,eAAenB,GAAcmR,WACzD+W,EAAa/W,EAAW1P,iBACxB0mB,EAAahX,EAAW3P,iBAE5B,MAAO,CACNiO,OAAQG,EAASA,EAAOwY,iBAAiBpgD,EAAOg4B,GAAgB,GAChE0P,OAAQG,EAASA,EAAOuY,iBAAiBpgD,EAAOg4B,GAAgB,GAChEhsB,MAAOk0C,EAAa,GAAKA,EAAWE,iBAAiBpgD,EAAOg4B,GAAgB,GAC5Ex4B,MAAO2gD,EAAa,GAAKA,EAAWC,iBAAiBpgD,EAAOg4B,GAAgB,GAC5Eh4B,MAAOA,EACPg4B,aAAcA,EACdvc,EAAGye,EAAQ5E,OAAO7Z,EAClBC,EAAGwe,EAAQ5E,OAAO5Z,GAQpB,SAAS2kC,GAAaC,GACrB,IAAIzuB,EAAiBT,EAAcxjB,OAEnC,MAAO,CAENwwC,SAAUkC,EAAYlC,SACtBD,SAAUmC,EAAYnC,SACtBoC,OAAQD,EAAYC,OACpBC,OAAQF,EAAYE,OAGpB7sB,IAAK2sB,EAAY3sB,IACjB8sB,cAAeH,EAAYG,cAG3B7C,cAAe0C,EAAY1C,cAC3B8C,gBAAiBvD,GAAiBmD,EAAYK,eAAgB9uB,EAAed,mBAC7E6vB,eAAgBzD,GAAiBmD,EAAYO,cAAehvB,EAAeZ,kBAC3E6vB,WAAYR,EAAYzC,UACxBkD,aAAc5D,GAAiBmD,EAAYS,aAAclvB,EAAeb,iBACxE2sB,YAAa2C,EAAY3C,YAGzBF,eAAgB6C,EAAY7C,eAC5BuD,iBAAkB7D,GAAiBmD,EAAYW,gBAAiBpvB,EAAed,mBAC/EmwB,gBAAiB/D,GAAiBmD,EAAYhD,eAAgBzrB,EAAeZ,kBAC7EkwB,cAAehE,GAAiBmD,EAAYa,cAAetvB,EAAeb,iBAC1EowB,YAAad,EAAY5C,WACzBH,aAAc+C,EAAY/C,aAC1BC,kBAAmB8C,EAAY9C,kBAG/BS,gBAAiBqC,EAAYrC,gBAC7BoD,kBAAmBlE,GAAiBmD,EAAYgB,iBAAkBzvB,EAAed,mBACjFwwB,iBAAkBpE,GAAiBmD,EAAYxC,gBAAiBjsB,EAAeZ,kBAC/EuwB,eAAgBrE,GAAiBmD,EAAYkB,eAAgB3vB,EAAeb,iBAC5EywB,aAAcnB,EAAYpC,YAC1BH,cAAeuC,EAAYvC,cAC3BC,gBAAiBsC,EAAYtC,gBAG7BM,UAAWgC,EAAYhC,UACvBzvB,aAAcyxB,EAAYzxB,aAC1BoM,gBAAiBqlB,EAAYrlB,gBAC7BymB,QAAS,EACTC,sBAAuBrB,EAAY/B,mBACnCC,cAAe8B,EAAY9B,cAC3BtjB,YAAaolB,EAAYplB,YACzBa,YAAaukB,EAAYvkB,aAO3B,SAAS6lB,GAAeC,EAAStiD,GAChC,IAAIquB,EAAMi0B,EAAQ/2C,OAAO8iB,IAErBnjB,EAA0B,EAAjBlL,EAAM4+C,SACf3zC,EAAQ,EAGRs3C,EAAOviD,EAAMuiD,KACbC,EAAqBD,EAAKE,QAAO,SAAStlB,EAAOulB,GACpD,OAAOvlB,EAAQulB,EAASC,OAAO34C,OAAS04C,EAASE,MAAM54C,OAAS04C,EAASG,MAAM74C,SAC7E,GACHw4C,GAAsBxiD,EAAMs/C,WAAWt1C,OAAShK,EAAM4/C,UAAU51C,OAEhE,IAAI84C,EAAiB9iD,EAAM+B,MAAMiI,OAC7B+4C,EAAkB/iD,EAAM8/C,OAAO91C,OAC/B43C,EAAgB5hD,EAAM4hD,cACtBJ,EAAexhD,EAAMwhD,aACrBS,EAAiBjiD,EAAMiiD,eAE3B/2C,GAAU43C,EAAiBlB,EAC3B12C,GAAU43C,GAAkBA,EAAiB,GAAK9iD,EAAMg+C,aAAe,EACvE9yC,GAAU43C,EAAiB9iD,EAAMi+C,kBAAoB,EACrD/yC,GAAUs3C,EAAqBhB,EAC/Bt2C,GAAUs3C,GAAsBA,EAAqB,GAAKxiD,EAAMo+C,YAAc,EAC9ElzC,GAAU63C,EAAkB/iD,EAAMy+C,gBAAkB,EACpDvzC,GAAU63C,EAAkB,EAC5B73C,GAAU63C,GAAmBA,EAAkB,GAAK/iD,EAAMw+C,cAAgB,EAG1E,IAAIwE,EAAe,EACfC,EAAe,SAASjjB,GAC3B/0B,EAAQuE,KAAKmN,IAAI1R,EAAOojB,EAAI60B,YAAYljB,GAAM/0B,MAAQ+3C,IA4BvD,OAzBA30B,EAAI0D,KAAO+C,GAAUquB,WAAWvB,EAAe5hD,EAAM2hD,gBAAiB3hD,EAAMyhD,kBAC5E3sB,GAAU1L,KAAKppB,EAAM+B,MAAOkhD,GAG5B50B,EAAI0D,KAAO+C,GAAUquB,WAAW3B,EAAcxhD,EAAMqhD,eAAgBrhD,EAAMmhD,iBAC1ErsB,GAAU1L,KAAKppB,EAAMs/C,WAAW16B,OAAO5kB,EAAM4/C,WAAYqD,GAGzDD,EAAehjD,EAAMi/C,cAAiBuC,EAAe,EAAK,EAC1D1sB,GAAU1L,KAAKm5B,GAAM,SAASG,GAC7B5tB,GAAU1L,KAAKs5B,EAASC,OAAQM,GAChCnuB,GAAU1L,KAAKs5B,EAASE,MAAOK,GAC/BnuB,GAAU1L,KAAKs5B,EAASG,MAAOI,MAIhCD,EAAe,EAGf30B,EAAI0D,KAAO+C,GAAUquB,WAAWlB,EAAgBjiD,EAAMgiD,iBAAkBhiD,EAAM8hD,mBAC9EhtB,GAAU1L,KAAKppB,EAAM8/C,OAAQmD,GAG7Bh4C,GAAS,EAAIjL,EAAM6+C,SAEZ,CACN5zC,MAAOA,EACPC,OAAQA,GAOV,SAASk4C,GAAmBd,EAASjzB,GACpC,IAYIg0B,EAAIC,EACJC,EAAKC,EACLC,EAdAzjD,EAAQsiD,EAAQvsB,OAChB3H,EAAQk0B,EAAQ/2C,OAChBw2B,EAAYugB,EAAQ/2C,OAAOw2B,UAC3Bif,EAAS,SACTC,EAAS,SAETjhD,EAAMmc,EAAIkT,EAAKnkB,OAClB+1C,EAAS,MACCjhD,EAAMmc,EAAKiS,EAAMljB,OAASmkB,EAAKnkB,SACzC+1C,EAAS,UAMV,IAAIyC,GAAQ3hB,EAAUtT,KAAOsT,EAAUpT,OAAS,EAC5Cg1B,GAAQ5hB,EAAUrT,IAAMqT,EAAUnT,QAAU,EAEjC,WAAXqyB,GACHoC,EAAK,SAASnnC,GACb,OAAOA,GAAKwnC,GAEbJ,EAAK,SAASpnC,GACb,OAAOA,EAAIwnC,KAGZL,EAAK,SAASnnC,GACb,OAAOA,GAAMmT,EAAKpkB,MAAQ,GAE3Bq4C,EAAK,SAASpnC,GACb,OAAOA,GAAMkS,EAAMnjB,MAASokB,EAAKpkB,MAAQ,IAI3Cs4C,EAAM,SAASrnC,GACd,OAAOA,EAAImT,EAAKpkB,MAAQjL,EAAM++C,UAAY/+C,EAAM8+C,aAAe1wB,EAAMnjB,OAEtEu4C,EAAM,SAAStnC,GACd,OAAOA,EAAImT,EAAKpkB,MAAQjL,EAAM++C,UAAY/+C,EAAM8+C,aAAe,GAEhE2E,EAAK,SAAStnC,GACb,OAAOA,GAAKwnC,EAAO,MAAQ,UAGxBN,EAAGrjD,EAAMkc,IACZ8kC,EAAS,OAGLuC,EAAIvjD,EAAMkc,KACb8kC,EAAS,SACTC,EAASwC,EAAGzjD,EAAMmc,KAETmnC,EAAGtjD,EAAMkc,KACnB8kC,EAAS,QAGLwC,EAAIxjD,EAAMkc,KACb8kC,EAAS,SACTC,EAASwC,EAAGzjD,EAAMmc,KAIpB,IAAIuuB,EAAO4X,EAAQ5Z,SACnB,MAAO,CACNsY,OAAQtW,EAAKsW,OAAStW,EAAKsW,OAASA,EACpCC,OAAQvW,EAAKuW,OAASvW,EAAKuW,OAASA,GAOtC,SAAS2C,GAAmBzlB,EAAI9O,EAAMw0B,EAAWz1B,GAEhD,IAAIlS,EAAIiiB,EAAGjiB,EACPC,EAAIgiB,EAAGhiB,EAEP4iC,EAAY5gB,EAAG4gB,UACfD,EAAe3gB,EAAG2gB,aAClBxvB,EAAe6O,EAAG7O,aAClB0xB,EAAS6C,EAAU7C,OACnBC,EAAS4C,EAAU5C,OACnB6C,EAAiB/E,EAAYD,EAC7BiF,EAAmBz0B,EAAewvB,EAkCtC,MAhCe,UAAXkC,EACH9kC,GAAKmT,EAAKpkB,MACW,WAAX+1C,IACV9kC,GAAMmT,EAAKpkB,MAAQ,EACfiR,EAAImT,EAAKpkB,MAAQmjB,EAAMnjB,QAC1BiR,EAAIkS,EAAMnjB,MAAQokB,EAAKpkB,OAEpBiR,EAAI,IACPA,EAAI,IAIS,QAAX+kC,EACH9kC,GAAK2nC,EAEL3nC,GADqB,WAAX8kC,EACL5xB,EAAKnkB,OAAS44C,EAEbz0B,EAAKnkB,OAAS,EAGN,WAAX+1C,EACY,SAAXD,EACH9kC,GAAK4nC,EACgB,UAAX9C,IACV9kC,GAAK4nC,GAEe,SAAX9C,EACV9kC,GAAK6nC,EACgB,UAAX/C,IACV9kC,GAAK6nC,GAGC,CACN7nC,EAAGA,EACHC,EAAGA,GAIL,SAAS6nC,GAAY7lB,EAAItK,GACxB,MAAiB,WAAVA,EACJsK,EAAGjiB,EAAIiiB,EAAGlzB,MAAQ,EACR,UAAV4oB,EACCsK,EAAGjiB,EAAIiiB,EAAGlzB,MAAQkzB,EAAG0gB,SACrB1gB,EAAGjiB,EAAIiiB,EAAG0gB,SAMf,SAASoF,GAAwB/jD,GAChC,OAAOqgD,GAAa,GAAIE,GAAcvgD,IAGvC,IAAIgkD,GAAY7tB,GAAa9L,OAAO,CACnCmL,WAAY,WACXp3B,KAAKy3B,OAAS+qB,GAAaxiD,KAAKoqC,UAChCpqC,KAAK6lD,YAAc,IAKpBC,SAAU,WACT,IAAIx5B,EAAKtsB,KACLosC,EAAO9f,EAAG8d,SACVV,EAAY0C,EAAK1C,UAEjBkX,EAAclX,EAAUkX,YAAYtlC,MAAMgR,EAAIrT,WAC9CxV,EAAQimC,EAAUjmC,MAAM6X,MAAMgR,EAAIrT,WAClC8nC,EAAarX,EAAUqX,WAAWzlC,MAAMgR,EAAIrT,WAE5CqrC,EAAQ,GAKZ,OAJAA,EAAQrC,GAAaqC,EAAOnC,GAAcvB,IAC1C0D,EAAQrC,GAAaqC,EAAOnC,GAAc1+C,IAC1C6gD,EAAQrC,GAAaqC,EAAOnC,GAAcpB,IAEnCuD,GAIRyB,cAAe,WACd,OAAOJ,GAAwB3lD,KAAKoqC,SAASV,UAAUsX,WAAW1lC,MAAMtb,KAAMiZ,aAI/E+sC,QAAS,SAASnF,EAAcp+C,GAC/B,IAAI6pB,EAAKtsB,KACL0pC,EAAYpd,EAAG8d,SAASV,UACxBuc,EAAY,GAehB,OAbAzvB,GAAU1L,KAAK+1B,GAAc,SAASlV,GACrC,IAAIyY,EAAW,CACdC,OAAQ,GACRC,MAAO,GACPC,MAAO,IAERtC,GAAamC,EAASC,OAAQlC,GAAczY,EAAUuX,YAAYznC,KAAK8S,EAAIqf,EAAalpC,KACxFw/C,GAAamC,EAASE,MAAO5a,EAAUv7B,MAAMqL,KAAK8S,EAAIqf,EAAalpC,IACnEw/C,GAAamC,EAASG,MAAOpC,GAAczY,EAAU2X,WAAW7nC,KAAK8S,EAAIqf,EAAalpC,KAEtFwjD,EAAU34C,KAAK82C,MAGT6B,GAIRC,aAAc,WACb,OAAOP,GAAwB3lD,KAAKoqC,SAASV,UAAU4X,UAAUhmC,MAAMtb,KAAMiZ,aAK9EktC,UAAW,WACV,IAAI75B,EAAKtsB,KACL0pC,EAAYpd,EAAG8d,SAASV,UAExB6X,EAAe7X,EAAU6X,aAAajmC,MAAMgR,EAAIrT,WAChDuoC,EAAS9X,EAAU8X,OAAOlmC,MAAMgR,EAAIrT,WACpCwoC,EAAc/X,EAAU+X,YAAYnmC,MAAMgR,EAAIrT,WAE9CqrC,EAAQ,GAKZ,OAJAA,EAAQrC,GAAaqC,EAAOnC,GAAcZ,IAC1C+C,EAAQrC,GAAaqC,EAAOnC,GAAcX,IAC1C8C,EAAQrC,GAAaqC,EAAOnC,GAAcV,IAEnC6C,GAGRznB,OAAQ,SAASia,GAChB,IA8BIp+B,EAAG4J,EA9BHgK,EAAKtsB,KACLosC,EAAO9f,EAAG8d,SAKVgc,EAAgB95B,EAAGmL,OACnB/1B,EAAQ4qB,EAAGmL,OAAS+qB,GAAapW,GACjC99B,EAASge,EAAG+5B,QAEZ5jD,EAAO6pB,EAAGwP,MAGVypB,EAAY,CACf7C,OAAQ0D,EAAc1D,OACtBC,OAAQyD,EAAczD,QAEnB2D,EAAkB,CACrB1oC,EAAGwoC,EAAcxoC,EACjBC,EAAGuoC,EAAcvoC,GAEd0oC,EAAc,CACjB55C,MAAOy5C,EAAcz5C,MACrBC,OAAQw5C,EAAcx5C,QAEnBgrB,EAAkB,CACrBha,EAAGwoC,EAAcI,OACjB3oC,EAAGuoC,EAAcK,QAKlB,GAAIn4C,EAAO5C,OAAQ,CAClBhK,EAAMmiD,QAAU,EAEhB,IAAI6C,EAAc,GACdC,EAAkB,GACtB/uB,EAAkB8pB,GAAYtV,EAAK5C,UAAUhwB,KAAK8S,EAAIhe,EAAQge,EAAGs6B,gBAEjE,IAAI/F,EAAe,GACnB,IAAKnoC,EAAI,EAAG4J,EAAMhU,EAAO5C,OAAQgN,EAAI4J,IAAO5J,EAC3CmoC,EAAavzC,KAAK80C,GAAkB9zC,EAAOoK,KAIxC0zB,EAAKkE,SACRuQ,EAAeA,EAAavQ,QAAO,SAAS/wB,GAC3C,OAAO6sB,EAAKkE,OAAO/wB,EAAG9c,OAKpB2pC,EAAKya,WACRhG,EAAeA,EAAa17C,MAAK,SAASoa,EAAGpB,GAC5C,OAAOiuB,EAAKya,SAAStnC,EAAGpB,EAAG1b,OAK7B+zB,GAAU1L,KAAK+1B,GAAc,SAASlV,GACrC+a,EAAYp5C,KAAK8+B,EAAK1C,UAAUwX,WAAW1nC,KAAK8S,EAAIqf,EAAarf,EAAGrf,SACpE05C,EAAgBr5C,KAAK8+B,EAAK1C,UAAU0X,eAAe5nC,KAAK8S,EAAIqf,EAAarf,EAAGrf,YAK7EvL,EAAM+B,MAAQ6oB,EAAGw5B,SAASjF,EAAcp+C,GACxCf,EAAMs/C,WAAa10B,EAAGy5B,cAAclF,EAAcp+C,GAClDf,EAAMuiD,KAAO33B,EAAG05B,QAAQnF,EAAcp+C,GACtCf,EAAM4/C,UAAYh1B,EAAG45B,aAAarF,EAAcp+C,GAChDf,EAAM8/C,OAASl1B,EAAG65B,UAAUtF,EAAcp+C,GAG1Cf,EAAMkc,EAAIga,EAAgBha,EAC1Blc,EAAMmc,EAAI+Z,EAAgB/Z,EAC1Bnc,EAAM8+C,aAAepU,EAAKoU,aAC1B9+C,EAAMglD,YAAcA,EACpBhlD,EAAMilD,gBAAkBA,EAGxBjlD,EAAMolD,WAAajG,EAGnB0F,EAAcxC,GAAe/jD,KAAM0B,GACnC6jD,EAAYT,GAAmB9kD,KAAMumD,GAErCD,EAAkBhB,GAAmB5jD,EAAO6kD,EAAahB,EAAWj5B,EAAGrf,aAEvEvL,EAAMmiD,QAAU,EAoBjB,OAjBAniD,EAAMghD,OAAS6C,EAAU7C,OACzBhhD,EAAMihD,OAAS4C,EAAU5C,OACzBjhD,EAAMkc,EAAI0oC,EAAgB1oC,EAC1Blc,EAAMmc,EAAIyoC,EAAgBzoC,EAC1Bnc,EAAMiL,MAAQ45C,EAAY55C,MAC1BjL,EAAMkL,OAAS25C,EAAY35C,OAG3BlL,EAAM8kD,OAAS5uB,EAAgBha,EAC/Blc,EAAM+kD,OAAS7uB,EAAgB/Z,EAE/ByO,EAAGmL,OAAS/1B,EAERo1C,GAAW1K,EAAK3O,QACnB2O,EAAK3O,OAAOjkB,KAAK8S,EAAI5qB,GAGf4qB,GAGRy6B,UAAW,SAASC,EAAcj2B,GACjC,IAAIhB,EAAM/vB,KAAKiN,OAAO8iB,IAClB8P,EAAK7/B,KAAKw3B,MACVyvB,EAAgBjnD,KAAKknD,iBAAiBF,EAAcj2B,EAAM8O,GAE9D9P,EAAIwB,OAAO01B,EAAcpjB,GAAIojB,EAAcnjB,IAC3C/T,EAAIwB,OAAO01B,EAAcvmC,GAAIumC,EAAcxmC,IAC3CsP,EAAIwB,OAAO01B,EAAcE,GAAIF,EAAcG,KAE5CF,iBAAkB,SAASF,EAAcj2B,EAAM8O,GAC9C,IAAIgE,EAAInjB,EAAIymC,EAAIrjB,EAAIrjB,EAAI2mC,EACpB3G,EAAY5gB,EAAG4gB,UACfzvB,EAAe6O,EAAG7O,aAClB0xB,EAAS7iB,EAAG6iB,OACZC,EAAS9iB,EAAG8iB,OACZ0E,EAAML,EAAappC,EACnB0pC,EAAMN,EAAanpC,EACnBlR,EAAQokB,EAAKpkB,MACbC,EAASmkB,EAAKnkB,OAElB,GAAe,WAAX+1C,EACHliC,EAAK6mC,EAAO16C,EAAS,EAEN,SAAX81C,GACH7e,EAAKwjB,EACL3mC,EAAKmjB,EAAK4c,EACV0G,EAAKtjB,EAELC,EAAKrjB,EAAKggC,EACV2G,EAAK3mC,EAAKggC,IAEV5c,EAAKwjB,EAAM16C,EACX+T,EAAKmjB,EAAK4c,EACV0G,EAAKtjB,EAELC,EAAKrjB,EAAKggC,EACV2G,EAAK3mC,EAAKggC,QAgBX,GAbe,SAAXiC,GACHhiC,EAAK2mC,EAAMr2B,EAAe,EAC1B6S,EAAKnjB,EAAK+/B,EACV0G,EAAKzmC,EAAK+/B,GACW,UAAXiC,GACVhiC,EAAK2mC,EAAM16C,EAAQqkB,EAAeyvB,EAClC5c,EAAKnjB,EAAK+/B,EACV0G,EAAKzmC,EAAK+/B,IAEV//B,EAAKmf,EAAG2mB,OACR3iB,EAAKnjB,EAAK+/B,EACV0G,EAAKzmC,EAAK+/B,GAEI,QAAXkC,EACH7e,EAAKwjB,EACL7mC,EAAKqjB,EAAK2c,EACV2G,EAAKtjB,MACC,CACNA,EAAKwjB,EAAM16C,EACX6T,EAAKqjB,EAAK2c,EACV2G,EAAKtjB,EAEL,IAAIyjB,EAAMJ,EACVA,EAAKtjB,EACLA,EAAK0jB,EAGP,MAAO,CAAC1jB,GAAIA,EAAInjB,GAAIA,EAAIymC,GAAIA,EAAIrjB,GAAIA,EAAIrjB,GAAIA,EAAI2mC,GAAIA,IAGrDI,UAAW,SAASnX,EAAIxQ,EAAI9P,GAC3B,IAEIuzB,EAAe5D,EAAchnC,EAF7BjV,EAAQo8B,EAAGp8B,MACXiI,EAASjI,EAAMiI,OAGnB,GAAIA,EAAQ,CACX,IAAI+7C,EAAYlI,GAAa1f,EAAG/J,IAAK+J,EAAGjiB,EAAGiiB,EAAGlzB,OAa9C,IAXA0jC,EAAGzyB,EAAI8nC,GAAY7lB,EAAIA,EAAG0jB,aAE1BxzB,EAAIuF,UAAYmyB,EAAUnyB,UAAUuK,EAAG0jB,aACvCxzB,EAAI23B,aAAe,SAEnBpE,EAAgBzjB,EAAGyjB,cACnB5D,EAAe7f,EAAG6f,aAElB3vB,EAAIwR,UAAY1B,EAAG+f,eACnB7vB,EAAI0D,KAAO+C,GAAUquB,WAAWvB,EAAezjB,EAAGwjB,gBAAiBxjB,EAAGsjB,kBAEjEzqC,EAAI,EAAGA,EAAIhN,IAAUgN,EACzBqX,EAAI43B,SAASlkD,EAAMiV,GAAI+uC,EAAU7pC,EAAEyyB,EAAGzyB,GAAIyyB,EAAGxyB,EAAIylC,EAAgB,GACjEjT,EAAGxyB,GAAKylC,EAAgB5D,EAEpBhnC,EAAI,IAAMhN,IACb2kC,EAAGxyB,GAAKgiB,EAAG8f,kBAAoBD,KAMnCkI,SAAU,SAASvX,EAAIxQ,EAAI9P,GAC1B,IAeIq0B,EAAUyD,EAAWnB,EAAapC,EAAO5rC,EAAGszB,EAAG5gB,EAAM8nB,EAfrDgQ,EAAerjB,EAAGqjB,aAClBpD,EAAcjgB,EAAGigB,YACjBE,EAAYngB,EAAGojB,WACfgB,EAAOpkB,EAAGokB,KACV6D,EAAiBjoB,EAAG8gB,cACpBoH,EAAe,EACfC,EAASF,EAAiBpC,GAAY7lB,EAAI,QAAU,EAEpD4nB,EAAYlI,GAAa1f,EAAG/J,IAAK+J,EAAGjiB,EAAGiiB,EAAGlzB,OAE1Cs7C,EAAiB,SAASvmB,GAC7B3R,EAAI43B,SAASjmB,EAAM+lB,EAAU7pC,EAAEyyB,EAAGzyB,EAAImqC,GAAe1X,EAAGxyB,EAAIqlC,EAAe,GAC3E7S,EAAGxyB,GAAKqlC,EAAepD,GAIpBoI,EAA0BT,EAAUnyB,UAAU0qB,GAiBlD,IAfAjwB,EAAIuF,UAAY0qB,EAChBjwB,EAAI23B,aAAe,SACnB33B,EAAI0D,KAAO+C,GAAUquB,WAAW3B,EAAcrjB,EAAGkjB,eAAgBljB,EAAGgjB,iBAEpExS,EAAGzyB,EAAI8nC,GAAY7lB,EAAIqoB,GAGvBn4B,EAAIwR,UAAY1B,EAAGkgB,cACnBvpB,GAAU1L,KAAK+U,EAAGmhB,WAAYiH,GAE9BF,EAAeD,GAA8C,UAA5BI,EAChB,WAAdlI,EAA0BkD,EAAe,EAAI,EAAMA,EAAe,EAClE,EAGExqC,EAAI,EAAG0S,EAAO64B,EAAKv4C,OAAQgN,EAAI0S,IAAQ1S,EAAG,CAS9C,IARA0rC,EAAWH,EAAKvrC,GAChBmvC,EAAYhoB,EAAG8mB,gBAAgBjuC,GAC/BguC,EAAc7mB,EAAG6mB,YAAYhuC,GAE7BqX,EAAIwR,UAAYsmB,EAChBrxB,GAAU1L,KAAKs5B,EAASC,OAAQ4D,GAEhC3D,EAAQF,EAASE,MACZtY,EAAI,EAAGkH,EAAOoR,EAAM54C,OAAQsgC,EAAIkH,IAAQlH,EAAG,CAE/C,GAAI8b,EAAgB,CACnB,IAAIK,EAAYV,EAAU7pC,EAAEoqC,GAG5Bj4B,EAAIwR,UAAY1B,EAAGikB,sBACnB/zB,EAAImV,SAASuiB,EAAUhyB,WAAW0yB,EAAWjF,GAAe7S,EAAGxyB,EAAGqlC,EAAcA,GAGhFnzB,EAAImQ,UAAY,EAChBnQ,EAAIyR,YAAcklB,EAAYrpB,YAC9BtN,EAAIq4B,WAAWX,EAAUhyB,WAAW0yB,EAAWjF,GAAe7S,EAAGxyB,EAAGqlC,EAAcA,GAGlFnzB,EAAIwR,UAAYmlB,EAAYtpB,gBAC5BrN,EAAImV,SAASuiB,EAAUhyB,WAAWgyB,EAAUjyB,MAAM2yB,EAAW,GAAIjF,EAAe,GAAI7S,EAAGxyB,EAAI,EAAGqlC,EAAe,EAAGA,EAAe,GAC/HnzB,EAAIwR,UAAYsmB,EAGjBI,EAAe3D,EAAMtY,IAGtBxV,GAAU1L,KAAKs5B,EAASG,MAAO0D,GAIhCF,EAAe,EAGfvxB,GAAU1L,KAAK+U,EAAGyhB,UAAW2G,GAC7B5X,EAAGxyB,GAAKiiC,GAGTuI,WAAY,SAAShY,EAAIxQ,EAAI9P,GAC5B,IAEI4zB,EAAgBjrC,EAFhB8oC,EAAS3hB,EAAG2hB,OACZ91C,EAAS81C,EAAO91C,OAGpB,GAAIA,EAAQ,CACX,IAAI+7C,EAAYlI,GAAa1f,EAAG/J,IAAK+J,EAAGjiB,EAAGiiB,EAAGlzB,OAa9C,IAXA0jC,EAAGzyB,EAAI8nC,GAAY7lB,EAAIA,EAAG+jB,cAC1BvT,EAAGxyB,GAAKgiB,EAAGsgB,gBAEXpwB,EAAIuF,UAAYmyB,EAAUnyB,UAAUuK,EAAG+jB,cACvC7zB,EAAI23B,aAAe,SAEnB/D,EAAiB9jB,EAAG8jB,eAEpB5zB,EAAIwR,UAAY1B,EAAGugB,gBACnBrwB,EAAI0D,KAAO+C,GAAUquB,WAAWlB,EAAgB9jB,EAAG6jB,iBAAkB7jB,EAAG2jB,mBAEnE9qC,EAAI,EAAGA,EAAIhN,IAAUgN,EACzBqX,EAAI43B,SAASnG,EAAO9oC,GAAI+uC,EAAU7pC,EAAEyyB,EAAGzyB,GAAIyyB,EAAGxyB,EAAI8lC,EAAiB,GACnEtT,EAAGxyB,GAAK8lC,EAAiB9jB,EAAGqgB,gBAK/BoI,eAAgB,SAASjY,EAAIxQ,EAAI9P,EAAKw2B,GACrCx2B,EAAIwR,UAAY1B,EAAGzC,gBACnBrN,EAAIyR,YAAc3B,EAAGxC,YACrBtN,EAAImQ,UAAYL,EAAG3B,YACnB,IAAIwkB,EAAS7iB,EAAG6iB,OACZC,EAAS9iB,EAAG8iB,OACZ/kC,EAAIyyB,EAAGzyB,EACPC,EAAIwyB,EAAGxyB,EACPlR,EAAQ45C,EAAY55C,MACpBC,EAAS25C,EAAY35C,OACrBsjB,EAAS2P,EAAG7O,aAEhBjB,EAAIuB,YACJvB,EAAIQ,OAAO3S,EAAIsS,EAAQrS,GACR,QAAX8kC,GACH3iD,KAAK+mD,UAAU1W,EAAIkW,GAEpBx2B,EAAIwB,OAAO3T,EAAIjR,EAAQujB,EAAQrS,GAC/BkS,EAAIw4B,iBAAiB3qC,EAAIjR,EAAOkR,EAAGD,EAAIjR,EAAOkR,EAAIqS,GACnC,WAAXyyB,GAAkC,UAAXD,GAC1B1iD,KAAK+mD,UAAU1W,EAAIkW,GAEpBx2B,EAAIwB,OAAO3T,EAAIjR,EAAOkR,EAAIjR,EAASsjB,GACnCH,EAAIw4B,iBAAiB3qC,EAAIjR,EAAOkR,EAAIjR,EAAQgR,EAAIjR,EAAQujB,EAAQrS,EAAIjR,GACrD,WAAX+1C,GACH3iD,KAAK+mD,UAAU1W,EAAIkW,GAEpBx2B,EAAIwB,OAAO3T,EAAIsS,EAAQrS,EAAIjR,GAC3BmjB,EAAIw4B,iBAAiB3qC,EAAGC,EAAIjR,EAAQgR,EAAGC,EAAIjR,EAASsjB,GACrC,WAAXyyB,GAAkC,SAAXD,GAC1B1iD,KAAK+mD,UAAU1W,EAAIkW,GAEpBx2B,EAAIwB,OAAO3T,EAAGC,EAAIqS,GAClBH,EAAIw4B,iBAAiB3qC,EAAGC,EAAGD,EAAIsS,EAAQrS,GACvCkS,EAAIU,YAEJV,EAAI0B,OAEAoO,EAAG3B,YAAc,GACpBnO,EAAI2B,UAINsL,KAAM,WACL,IAAIjN,EAAM/vB,KAAKiN,OAAO8iB,IAClB8P,EAAK7/B,KAAKw3B,MAEd,GAAmB,IAAfqI,EAAGgkB,QAAP,CAIA,IAAI0C,EAAc,CACjB55C,MAAOkzB,EAAGlzB,MACVC,OAAQizB,EAAGjzB,QAERyjC,EAAK,CACRzyB,EAAGiiB,EAAGjiB,EACNC,EAAGgiB,EAAGhiB,GAIHgmC,EAAU3yC,KAAK8xB,IAAInD,EAAGgkB,QAAU,MAAQ,EAAIhkB,EAAGgkB,QAG/C2E,EAAoB3oB,EAAGp8B,MAAMiI,QAAUm0B,EAAGmhB,WAAWt1C,QAAUm0B,EAAGokB,KAAKv4C,QAAUm0B,EAAGyhB,UAAU51C,QAAUm0B,EAAG2hB,OAAO91C,OAElH1L,KAAKoqC,SAASoV,SAAWgJ,IAC5Bz4B,EAAImB,OACJnB,EAAI04B,YAAc5E,EAGlB7jD,KAAKsoD,eAAejY,EAAIxQ,EAAI9P,EAAKw2B,GAGjClW,EAAGxyB,GAAKgiB,EAAGygB,SAEX9pB,GAAUV,IAAIC,sBAAsBhG,EAAK8P,EAAG+iB,eAG5C5iD,KAAKwnD,UAAUnX,EAAIxQ,EAAI9P,GAGvB/vB,KAAK4nD,SAASvX,EAAIxQ,EAAI9P,GAGtB/vB,KAAKqoD,WAAWhY,EAAIxQ,EAAI9P,GAExByG,GAAUV,IAAIQ,qBAAqBvG,EAAK8P,EAAG+iB,eAE3C7yB,EAAIsB,aAUNq3B,YAAa,SAAS3sC,GACrB,IAAIuQ,EAAKtsB,KACLyN,EAAU6e,EAAG8d,SACb0M,GAAU,EAgCd,OA9BAxqB,EAAGu5B,YAAcv5B,EAAGu5B,aAAe,GAGpB,aAAX9pC,EAAE7Z,KACLoqB,EAAG+5B,QAAU,IAEb/5B,EAAG+5B,QAAU/5B,EAAGrf,OAAO07C,0BAA0B5sC,EAAGtO,EAAQi5B,KAAMj5B,GAC9DA,EAAQud,SACXsB,EAAG+5B,QAAQr7B,WAKb8rB,GAAWtgB,GAAUvL,YAAYqB,EAAG+5B,QAAS/5B,EAAGu5B,aAG5C/O,IACHxqB,EAAGu5B,YAAcv5B,EAAG+5B,SAEhB54C,EAAQ+xC,SAAW/xC,EAAQgwB,UAC9BnR,EAAGs6B,eAAiB,CACnBhpC,EAAG7B,EAAE6B,EACLC,EAAG9B,EAAE8B,GAGNyO,EAAGuQ,QAAO,GACVvQ,EAAGiL,UAIEuf,KAOL8R,GAAgBlH,GAEhBmH,GAAejD,GACnBiD,GAAanH,YAAckH,GAE3B,IAAIE,GAAmBtyB,GAAU9L,eA4BjC,SAASq+B,KACR,OAAOvyB,GAAU5K,MAAMxnB,OAAOmnB,OAAO,MAAO,GAAGjgB,MAAMkO,KAAKP,WAAY,CACrE+S,OAAQ,SAAS/qB,EAAKmoB,EAAQD,EAAQ1b,GACrC,GAAY,UAARxM,GAA2B,UAARA,EAAiB,CACvC,IACIyX,EAAGxW,EAAM8iB,EADTgkC,EAAO7/B,EAAOloB,GAAKyK,OAOvB,IAJK0d,EAAOnoB,KACXmoB,EAAOnoB,GAAO,IAGVyX,EAAI,EAAGA,EAAIswC,IAAQtwC,EACvBsM,EAAQmE,EAAOloB,GAAKyX,GACpBxW,EAAO4mD,GAAiB9jC,EAAM9iB,KAAc,UAARjB,EAAkB,WAAa,UAE/DyX,GAAK0Q,EAAOnoB,GAAKyK,QACpB0d,EAAOnoB,GAAKqM,KAAK,KAGb8b,EAAOnoB,GAAKyX,GAAGxW,MAAS8iB,EAAM9iB,MAAQ8iB,EAAM9iB,OAASknB,EAAOnoB,GAAKyX,GAAGxW,KAGxEs0B,GAAU5K,MAAMxC,EAAOnoB,GAAKyX,GAAI,CAACkmC,GAAkBM,iBAAiBh9C,GAAO8iB,IAG3EwR,GAAU5K,MAAMxC,EAAOnoB,GAAKyX,GAAIsM,QAIlCwR,GAAU/K,QAAQxqB,EAAKmoB,EAAQD,EAAQ1b,MAW3C,SAASw7C,KACR,OAAOzyB,GAAU5K,MAAMxnB,OAAOmnB,OAAO,MAAO,GAAGjgB,MAAMkO,KAAKP,WAAY,CACrE+S,OAAQ,SAAS/qB,EAAKmoB,EAAQD,EAAQ1b,GACrC,IAAIie,EAAOtC,EAAOnoB,IAAQmD,OAAOmnB,OAAO,MACpCI,EAAOxC,EAAOloB,GAEN,WAARA,EAEHmoB,EAAOnoB,GAAO8nD,GAAiBr9B,EAAMC,GACnB,UAAR1qB,EAEVmoB,EAAOnoB,GAAOu1B,GAAU5K,MAAMF,EAAM,CAACkzB,GAAkBM,iBAAiBvzB,EAAKzpB,MAAOypB,IAEpF6K,GAAU/K,QAAQxqB,EAAKmoB,EAAQD,EAAQ1b,MAM3C,SAASy7C,GAAWha,GACnBA,EAASA,GAAU9qC,OAAOmnB,OAAO,MAIjC,IAAI9oB,EAAOysC,EAAOzsC,KAAOysC,EAAOzsC,MAAQ,GASxC,OARAA,EAAK44B,SAAW54B,EAAK44B,UAAY,GACjC54B,EAAKka,OAASla,EAAKka,QAAU,GAE7BuyB,EAAOzhC,QAAUw7C,GAChB11B,EAAcxjB,OACdwjB,EAAc2b,EAAOhtC,MACrBgtC,EAAOzhC,SAAW,IAEZyhC,EAGR,SAASia,GAAar5B,GACrB,IAAIs5B,EAAat5B,EAAMriB,QAEvB+oB,GAAU1L,KAAKgF,EAAM+K,QAAQ,SAAS7V,GACrCkyB,GAAaG,UAAUvnB,EAAO9K,MAG/BokC,EAAaH,GACZ11B,EAAcxjB,OACdwjB,EAAczD,EAAMof,OAAOhtC,MAC3BknD,GAEDt5B,EAAMriB,QAAUqiB,EAAMof,OAAOzhC,QAAU27C,EACvCt5B,EAAMu5B,sBACNv5B,EAAMw5B,sBAGNx5B,EAAMk0B,QAAQ5Z,SAAWgf,EAAW3f,SACpC3Z,EAAMk0B,QAAQ5sB,aAGf,SAASmyB,GAAqBC,EAAUC,EAAQtnD,GAC/C,IAAIuK,EACAg9C,EAAQ,SAASxlD,GACpB,OAAOA,EAAIwI,KAAOA,GAGnB,GACCA,EAAK+8C,EAAStnD,UACNq0B,GAAU2C,UAAUqwB,EAAUE,IAAU,GAEjD,OAAOh9C,EAGR,SAASi9C,GAAqBngB,GAC7B,MAAoB,QAAbA,GAAmC,WAAbA,EAG9B,SAASogB,GAAcC,EAAIC,GAC1B,OAAO,SAASvqC,EAAGpB,GAClB,OAAOoB,EAAEsqC,KAAQ1rC,EAAE0rC,GAChBtqC,EAAEuqC,GAAM3rC,EAAE2rC,GACVvqC,EAAEsqC,GAAM1rC,EAAE0rC,IAhJft2B,EAAcR,KAAK,SAAU,CAC5BgK,SAAU,GACVgtB,OAAQ,CACP,YACA,WACA,QACA,aACA,aAEDzsB,MAAO,CACN0sB,QAAS,KACTtjB,KAAM,UACN2M,WAAW,EACX4W,kBAAmB,KAEpBze,QAAS,KACT6Q,qBAAqB,EACrB6N,YAAY,EACZC,4BAA6B,IAkI9B,IAAIC,GAAQ,SAAStkD,EAAMopC,GAE1B,OADAlvC,KAAKqqD,UAAUvkD,EAAMopC,GACdlvC,MAGRw2B,GAAUvK,OAAOm+B,GAAM3vC,UAA+B,CAIrD4vC,UAAW,SAASvkD,EAAMopC,GACzB,IAAI5iB,EAAKtsB,KAETkvC,EAASga,GAAWha,GAEpB,IAAI3a,EAAUupB,GAASjG,eAAe/xC,EAAMopC,GACxCvhC,EAAS4mB,GAAWA,EAAQ5mB,OAC5Bf,EAASe,GAAUA,EAAOf,OAC1BD,EAAQgB,GAAUA,EAAOhB,MAE7B2f,EAAG5f,GAAK8pB,GAAUpM,MAClBkC,EAAGyD,IAAMwE,EACTjI,EAAG3e,OAASA,EACZ2e,EAAG4iB,OAASA,EACZ5iB,EAAG3f,MAAQA,EACX2f,EAAG1f,OAASA,EACZ0f,EAAGotB,YAAc9sC,EAASD,EAAQC,EAAS,KAC3C0f,EAAG7e,QAAUyhC,EAAOzhC,QACpB6e,EAAGg+B,iBAAkB,EACrBh+B,EAAG8qB,QAAU,GAUb9qB,EAAGwD,MAAQxD,EACXA,EAAGgf,WAAahf,EAGhB89B,GAAMG,UAAUj+B,EAAG5f,IAAM4f,EAGzBloB,OAAOsZ,eAAe4O,EAAI,OAAQ,CACjCjnB,IAAK,WACJ,OAAOinB,EAAG4iB,OAAOzsC,MAElBqO,IAAK,SAASnP,GACb2qB,EAAG4iB,OAAOzsC,KAAOd,KAId4yB,GAAY5mB,GASjB2e,EAAG8K,aACH9K,EAAGuQ,UALFxT,QAAQ1O,MAAM,sEAWhByc,WAAY,WACX,IAAI9K,EAAKtsB,KAmBT,OAhBA+9C,GAAaM,OAAO/xB,EAAI,cAExBkK,GAAUg0B,YAAYl+B,EAAIA,EAAG7e,QAAQg9C,kBAErCn+B,EAAGo+B,aAECp+B,EAAG7e,QAAQy8C,YAEd59B,EAAGq+B,QAAO,GAGXr+B,EAAGs+B,cAGH7M,GAAaM,OAAO/xB,EAAI,aAEjBA,GAGRuD,MAAO,WAEN,OADA2G,GAAU7oB,OAAOkiB,MAAM7vB,MAChBA,MAGR6qD,KAAM,WAGL,OADAnyB,GAAgBQ,gBAAgBl5B,MACzBA,MAGR2qD,OAAQ,SAASG,GAChB,IAAIx+B,EAAKtsB,KACLyN,EAAU6e,EAAG7e,QACbE,EAAS2e,EAAG3e,OACZ+rC,EAAejsC,EAAQ4uC,qBAAuB/vB,EAAGotB,aAAgB,KAMjE3D,EAAW7kC,KAAKmN,IAAI,EAAGnN,KAAKD,MAAMulB,GAAUu0B,gBAAgBp9C,KAC5DqoC,EAAY9kC,KAAKmN,IAAI,EAAGnN,KAAKD,MAAMyoC,EAAc3D,EAAW2D,EAAcljB,GAAUw0B,iBAAiBr9C,KAEzG,IAAI2e,EAAG3f,QAAUopC,GAAYzpB,EAAG1f,SAAWopC,KAI3CroC,EAAOhB,MAAQ2f,EAAG3f,MAAQopC,EAC1BpoC,EAAOf,OAAS0f,EAAG1f,OAASopC,EAC5BroC,EAAOpB,MAAMI,MAAQopC,EAAW,KAChCpoC,EAAOpB,MAAMK,OAASopC,EAAY,KAElCxf,GAAUg0B,YAAYl+B,EAAI7e,EAAQg9C,mBAE7BK,GAAQ,CAEZ,IAAIG,EAAU,CAACt+C,MAAOopC,EAAUnpC,OAAQopC,GACxC+H,GAAaM,OAAO/xB,EAAI,SAAU,CAAC2+B,IAG/Bx9C,EAAQy9C,UACXz9C,EAAQy9C,SAAS5+B,EAAI2+B,GAGtB3+B,EAAGu+B,OACHv+B,EAAGuQ,OAAO,CACTtE,SAAU9qB,EAAQ08C,gCAKrBd,oBAAqB,WACpB,IAAI57C,EAAUzN,KAAKyN,QACf09C,EAAgB19C,EAAQotB,QAAU,GAClCuwB,EAAe39C,EAAQuX,MAE3BwR,GAAU1L,KAAKqgC,EAAcjwB,OAAO,SAASmwB,EAAclpD,GACrDkpD,EAAa3+C,KACjB2+C,EAAa3+C,GAAK68C,GAAqB4B,EAAcjwB,MAAO,UAAW/4B,OAIzEq0B,GAAU1L,KAAKqgC,EAAc/vB,OAAO,SAASkwB,EAAcnpD,GACrDmpD,EAAa5+C,KACjB4+C,EAAa5+C,GAAK68C,GAAqB4B,EAAc/vB,MAAO,UAAWj5B,OAIrEipD,IACHA,EAAa1+C,GAAK0+C,EAAa1+C,IAAM,UAOvC48C,oBAAqB,WACpB,IAAIh9B,EAAKtsB,KACLyN,EAAU6e,EAAG7e,QACbotB,EAASvO,EAAGuO,QAAU,GACtBqZ,EAAQ,GACRqX,EAAUnnD,OAAOie,KAAKwY,GAAQspB,QAAO,SAASjgD,EAAKwI,GAEtD,OADAxI,EAAIwI,IAAM,EACHxI,IACL,IAECuJ,EAAQotB,SACXqZ,EAAQA,EAAM5tB,QACZ7Y,EAAQotB,OAAOK,OAAS,IAAI73B,KAAI,SAASgoD,GACzC,MAAO,CAAC59C,QAAS49C,EAAcG,MAAO,WAAYC,UAAW,cAE7Dh+C,EAAQotB,OAAOO,OAAS,IAAI/3B,KAAI,SAASioD,GACzC,MAAO,CAAC79C,QAAS69C,EAAcE,MAAO,SAAUC,UAAW,aAK1Dh+C,EAAQuX,OACXkvB,EAAM5mC,KAAK,CACVG,QAASA,EAAQuX,MACjBwmC,MAAO,eACPE,WAAW,EACXD,UAAW,cAIbj1B,GAAU1L,KAAKopB,GAAO,SAASpuC,GAC9B,IAAIslD,EAAetlD,EAAK2H,QACpBf,EAAK0+C,EAAa1+C,GAClBi/C,EAAY7C,GAAiBsC,EAAalpD,KAAM4D,EAAK0lD,OAErD7B,GAAqByB,EAAa5hB,YAAcmgB,GAAqB7jD,EAAK2lD,aAC7EL,EAAa5hB,SAAW1jC,EAAK2lD,WAG9BF,EAAQ7+C,IAAM,EACd,IAAIsY,EAAQ,KACZ,GAAItY,KAAMmuB,GAAUA,EAAOnuB,GAAIxK,OAASypD,EACvC3mC,EAAQ6V,EAAOnuB,GACfsY,EAAMvX,QAAU29C,EAChBpmC,EAAM+K,IAAMzD,EAAGyD,IACf/K,EAAM8K,MAAQxD,MACR,CACN,IAAIs/B,EAAahN,GAAkBK,oBAAoB0M,GACvD,IAAKC,EACJ,OAED5mC,EAAQ,IAAI4mC,EAAW,CACtBl/C,GAAIA,EACJxK,KAAMypD,EACNl+C,QAAS29C,EACTr7B,IAAKzD,EAAGyD,IACRD,MAAOxD,IAERuO,EAAO7V,EAAMtY,IAAMsY,EAGpBA,EAAM6mC,oBAKF/lD,EAAK4lD,YACRp/B,EAAGtH,MAAQA,MAIbwR,GAAU1L,KAAKygC,GAAS,SAASO,EAAYp/C,GACvCo/C,UACGjxB,EAAOnuB,MAIhB4f,EAAGuO,OAASA,EAEZ+jB,GAAkBS,kBAAkBr/C,OAGrC+rD,yBAA0B,WACzB,IAGIrzC,EAAG0S,EAHHkB,EAAKtsB,KACLgsD,EAAiB,GACjB3wB,EAAW/O,EAAG7pB,KAAK44B,SAGvB,IAAK3iB,EAAI,EAAG0S,EAAOiQ,EAAS3vB,OAAQgN,EAAI0S,EAAM1S,IAAK,CAClD,IAAIoiB,EAAUO,EAAS3iB,GACnBkiB,EAAOtO,EAAGgP,eAAe5iB,GACzBxW,EAAO44B,EAAQ54B,MAAQoqB,EAAG4iB,OAAOhtC,KAUrC,GARI04B,EAAK14B,MAAQ04B,EAAK14B,OAASA,IAC9BoqB,EAAG2/B,mBAAmBvzC,GACtBkiB,EAAOtO,EAAGgP,eAAe5iB,IAE1BkiB,EAAK14B,KAAOA,EACZ04B,EAAKsxB,MAAQpxB,EAAQoxB,OAAS,EAC9BtxB,EAAKz4B,MAAQuW,EAETkiB,EAAK0Q,WACR1Q,EAAK0Q,WAAW3Q,YAAYjiB,GAC5BkiB,EAAK0Q,WAAW9Q,iBACV,CACN,IAAI2xB,EAAkB3Z,GAAY5X,EAAK14B,MACvC,QAAwBiC,IAApBgoD,EACH,MAAM,IAAIv+C,MAAM,IAAMgtB,EAAK14B,KAAO,0BAGnC04B,EAAK0Q,WAAa,IAAI6gB,EAAgB7/B,EAAI5T,GAC1CszC,EAAe1+C,KAAKstB,EAAK0Q,aAI3B,OAAO0gB,GAORI,cAAe,WACd,IAAI9/B,EAAKtsB,KACTw2B,GAAU1L,KAAKwB,EAAG7pB,KAAK44B,UAAU,SAASP,EAASX,GAClD7N,EAAGgP,eAAenB,GAAcmR,WAAW5kC,UACzC4lB,IAMJ5lB,MAAO,WACN1G,KAAKosD,gBACLpsD,KAAKgkD,QAAQ5sB,cAGdyF,OAAQ,SAASqS,GAChB,IACIx2B,EAAG0S,EADHkB,EAAKtsB,KAiBT,GAdKkvC,GAA4B,kBAAXA,IAErBA,EAAS,CACR3W,SAAU2W,EACVpW,KAAM7f,UAAU,KAIlBkwC,GAAa78B,GAIbyxB,GAAaY,YAAYryB,IAEuB,IAA5CyxB,GAAaM,OAAO/xB,EAAI,gBAA5B,CAKAA,EAAG03B,QAAQloB,MAAQxP,EAAG7pB,KAGtB,IAAIupD,EAAiB1/B,EAAGy/B,2BAGxB,IAAKrzC,EAAI,EAAG0S,EAAOkB,EAAG7pB,KAAK44B,SAAS3vB,OAAQgN,EAAI0S,EAAM1S,IACrD4T,EAAGgP,eAAe5iB,GAAG4yB,WAAW/O,wBAGjCjQ,EAAG+/B,eAGC//B,EAAG7e,QAAQ6qB,WAAahM,EAAG7e,QAAQ6qB,UAAUC,UAChD/B,GAAU1L,KAAKkhC,GAAgB,SAAS1gB,GACvCA,EAAW5kC,WAIb4lB,EAAGggC,iBAIHhgC,EAAG03B,QAAQ5sB,aAIX9K,EAAGigC,WAAa,GAGhBxO,GAAaM,OAAO/xB,EAAI,eAExBA,EAAG8qB,QAAQjyC,KAAKykD,GAAc,IAAK,SAE/Bt9B,EAAGg+B,gBACNh+B,EAAGkgC,iBAAmB,CACrBj0B,SAAU2W,EAAO3W,SACjB9B,OAAQyY,EAAOzY,OACfqC,KAAMoW,EAAOpW,MAGdxM,EAAGxsB,OAAOovC,KASZmd,aAAc,WACb,IAAI//B,EAAKtsB,MAEuC,IAA5C+9C,GAAaM,OAAO/xB,EAAI,kBAI5B4qB,GAAara,OAAO78B,KAAMA,KAAK2M,MAAO3M,KAAK4M,QAE3C0f,EAAG8qB,QAAU,GACb5gB,GAAU1L,KAAKwB,EAAGuoB,OAAO,SAASC,GAG7BA,EAAIpY,YACPoY,EAAIpY,aAELpQ,EAAG8qB,QAAQ9pC,KAAKgO,MAAMgR,EAAG8qB,QAAStC,EAAIsC,aACpC9qB,GAEHA,EAAG8qB,QAAQnyC,SAAQ,SAASa,EAAM3D,GACjC2D,EAAK2mD,KAAOtqD,KAUb47C,GAAaM,OAAO/xB,EAAI,oBACxByxB,GAAaM,OAAO/xB,EAAI,iBAQzBggC,eAAgB,WACf,IAAIhgC,EAAKtsB,KAET,IAAwD,IAApD+9C,GAAaM,OAAO/xB,EAAI,wBAA5B,CAIA,IAAK,IAAI5T,EAAI,EAAG0S,EAAOkB,EAAG7pB,KAAK44B,SAAS3vB,OAAQgN,EAAI0S,IAAQ1S,EAC3D4T,EAAGogC,cAAch0C,GAGlBqlC,GAAaM,OAAO/xB,EAAI,yBAQzBogC,cAAe,SAASvqD,GACvB,IAAImqB,EAAKtsB,KACL46B,EAAOtO,EAAGgP,eAAen5B,GACzB+e,EAAO,CACV0Z,KAAMA,EACNz4B,MAAOA,IAGuD,IAA3D47C,GAAaM,OAAO/xB,EAAI,sBAAuB,CAACpL,MAIpD0Z,EAAK0Q,WAAWzP,UAEhBkiB,GAAaM,OAAO/xB,EAAI,qBAAsB,CAACpL,MAGhDphB,OAAQ,SAASovC,GAChB,IAAI5iB,EAAKtsB,KAEJkvC,GAA4B,kBAAXA,IAErBA,EAAS,CACR3W,SAAU2W,EACVpW,KAAM7f,UAAU,KAIlB,IAAI0zC,EAAmBrgC,EAAG7e,QAAQ6qB,UAC9BC,EAAWuwB,GAAiB5Z,EAAO3W,SAAUo0B,GAAoBA,EAAiBp0B,UAClFO,EAAOoW,EAAOpW,KAElB,IAAgD,IAA5CilB,GAAaM,OAAO/xB,EAAI,gBAA5B,CAIA,IAAImM,EAAa,SAASH,GACzBylB,GAAaM,OAAO/xB,EAAI,eACxBkK,GAAU50B,SAAS+qD,GAAoBA,EAAiBl0B,WAAY,CAACH,GAAYhM,IAGlF,GAAIqgC,GAAoBp0B,EAAU,CACjC,IAAID,EAAY,IAAID,GAAe,CAClCH,SAAUK,EAAW,MACrB9B,OAAQyY,EAAOzY,QAAUk2B,EAAiBl2B,OAE1C32B,OAAQ,SAASgwB,EAAO88B,GACvB,IAAIC,EAAiBr2B,GAAUC,OAAOrJ,QAAQw/B,EAAgBn2B,QAC1DwB,EAAc20B,EAAgB30B,YAC9B60B,EAAc70B,EAAc20B,EAAgB10B,SAEhDpI,EAAMkN,KAAK6vB,EAAeC,GAAcA,EAAa70B,IAGtDE,oBAAqBw0B,EAAiBn0B,WACtCJ,oBAAqBK,IAGtBC,GAAgBG,aAAavM,EAAIgM,EAAWC,EAAUO,QAEtDxM,EAAG0Q,OAGHvE,EAAW,IAAIJ,GAAe,CAACH,SAAU,EAAGpI,MAAOxD,KAGpD,OAAOA,IAGR0Q,KAAM,SAASF,GACd,IACIpkB,EAAGq0C,EADHzgC,EAAKtsB,KAWT,GARAssB,EAAGuD,QAEC2G,GAAUnM,cAAcyS,KAC3BA,EAAc,GAGfxQ,EAAGqL,WAAWmF,KAEVxQ,EAAG3f,OAAS,GAAK2f,EAAG1f,QAAU,KAI2B,IAAzDmxC,GAAaM,OAAO/xB,EAAI,aAAc,CAACwQ,IAA3C,CAQA,IADAiwB,EAASzgC,EAAG8qB,QACP1+B,EAAI,EAAGA,EAAIq0C,EAAOrhD,QAAUqhD,EAAOr0C,GAAG4G,GAAK,IAAK5G,EACpDq0C,EAAOr0C,GAAGskB,KAAK1Q,EAAGmX,WAMnB,IAHAnX,EAAG0gC,aAAalwB,GAGTpkB,EAAIq0C,EAAOrhD,SAAUgN,EAC3Bq0C,EAAOr0C,GAAGskB,KAAK1Q,EAAGmX,WAGnBnX,EAAG2gC,aAAanwB,GAEhBihB,GAAaM,OAAO/xB,EAAI,YAAa,CAACwQ,MAMvCnF,WAAY,SAASmF,GAGpB,IAFA,IAAIxQ,EAAKtsB,KAEA0Y,EAAI,EAAG0S,GAAQkB,EAAG7pB,KAAK44B,UAAY,IAAI3vB,OAAQgN,EAAI0S,IAAQ1S,EAC/D4T,EAAG2f,iBAAiBvzB,IACvB4T,EAAGgP,eAAe5iB,GAAG4yB,WAAW3T,WAAWmF,GAI7CxQ,EAAG03B,QAAQrsB,WAAWmF,IAMvBowB,uBAAwB,SAASC,GAChC,IAGIz0C,EAAG0S,EAHHkB,EAAKtsB,KACLq7B,EAAW/O,EAAG7pB,KAAK44B,UAAY,GAC/Bt2B,EAAS,GAGb,IAAK2T,EAAI,EAAG0S,EAAOiQ,EAAS3vB,OAAQgN,EAAI0S,IAAQ1S,EAC1Cy0C,IAAiB7gC,EAAG2f,iBAAiBvzB,IACzC3T,EAAOuI,KAAKgf,EAAGgP,eAAe5iB,IAMhC,OAFA3T,EAAOI,KAAKykD,GAAc,QAAS,UAE5B7kD,GAMRmrC,8BAA+B,WAC9B,OAAOlwC,KAAKktD,wBAAuB,IAQpCF,aAAc,SAASlwB,GACtB,IACIuL,EAAU3vB,EADV4T,EAAKtsB,KAGT,IAAqE,IAAjE+9C,GAAaM,OAAO/xB,EAAI,qBAAsB,CAACwQ,IAAnD,CAKA,IADAuL,EAAW/b,EAAG4jB,gCACTx3B,EAAI2vB,EAAS38B,OAAS,EAAGgN,GAAK,IAAKA,EACvC4T,EAAG8gC,YAAY/kB,EAAS3vB,GAAIokB,GAG7BihB,GAAaM,OAAO/xB,EAAI,oBAAqB,CAACwQ,MAQ/CswB,YAAa,SAASxyB,EAAMkC,GAC3B,IAAIxQ,EAAKtsB,KACLkhB,EAAO,CACV0Z,KAAMA,EACNz4B,MAAOy4B,EAAKz4B,MACZ26B,YAAaA,IAG+C,IAAzDihB,GAAaM,OAAO/xB,EAAI,oBAAqB,CAACpL,MAIlD0Z,EAAK0Q,WAAWtO,KAAKF,GAErBihB,GAAaM,OAAO/xB,EAAI,mBAAoB,CAACpL,MAQ9C+rC,aAAc,SAASnwB,GACtB,IAAIxQ,EAAKtsB,KACLgkD,EAAU13B,EAAG03B,QACb9iC,EAAO,CACV8iC,QAASA,EACTlnB,YAAaA,IAG+C,IAAzDihB,GAAaM,OAAO/xB,EAAI,oBAAqB,CAACpL,MAIlD8iC,EAAQhnB,OAER+gB,GAAaM,OAAO/xB,EAAI,mBAAoB,CAACpL,MAO9CmsC,kBAAmB,SAAStxC,GAC3B,OAAOo4B,GAAiBC,MAAMC,OAAOr0C,KAAM+b,IAG5CuxC,mBAAoB,SAASvxC,GAC5B,OAAOo4B,GAAiBC,MAAMjmC,MAAMnO,KAAM+b,EAAG,CAACs3B,WAAW,KAG1Dka,mBAAoB,SAASxxC,GAC5B,OAAOo4B,GAAiBC,MAAM,UAAUp0C,KAAM+b,EAAG,CAACs3B,WAAW,KAG9DsV,0BAA2B,SAAS5sC,EAAG2qB,EAAMj5B,GAC5C,IAAIosB,EAASsa,GAAiBC,MAAM1N,GACpC,MAAsB,oBAAX7M,EACHA,EAAO75B,KAAM+b,EAAGtO,GAGjB,IAGR+/C,kBAAmB,SAASzxC,GAC3B,OAAOo4B,GAAiBC,MAAMtZ,QAAQ96B,KAAM+b,EAAG,CAACs3B,WAAW,KAG5D/X,eAAgB,SAASnB,GACxB,IAAI7N,EAAKtsB,KACL86B,EAAUxO,EAAG7pB,KAAK44B,SAASlB,GAC1BW,EAAQ2yB,QACZ3yB,EAAQ2yB,MAAQ,IAGjB,IAAI7yB,EAAOE,EAAQ2yB,MAAMnhC,EAAG5f,IAe5B,OAdKkuB,IACJA,EAAOE,EAAQ2yB,MAAMnhC,EAAG5f,IAAM,CAC7BxK,KAAM,KACNO,KAAM,GACNq4B,QAAS,KACTwQ,WAAY,KACZhU,OAAQ,KACR2D,QAAS,KACTE,QAAS,KACT+wB,MAAOpxB,EAAQoxB,OAAS,EACxB/pD,MAAOg4B,IAIFS,GAGR8W,uBAAwB,WAEvB,IADA,IAAI7S,EAAQ,EACHnmB,EAAI,EAAG0S,EAAOprB,KAAKyC,KAAK44B,SAAS3vB,OAAQgN,EAAI0S,IAAQ1S,EACzD1Y,KAAKisC,iBAAiBvzB,IACzBmmB,IAGF,OAAOA,GAGRoN,iBAAkB,SAAS9R,GAC1B,IAAIS,EAAO56B,KAAKs7B,eAAenB,GAI/B,MAA8B,mBAAhBS,EAAKtD,QAAwBsD,EAAKtD,QAAUt3B,KAAKyC,KAAK44B,SAASlB,GAAc7C,QAG5F/pB,eAAgB,WACf,OAAOvN,KAAKyN,QAAQk9B,eAAe3qC,OAMpCisD,mBAAoB,SAAS9xB,GAC5B,IAAIztB,EAAK1M,KAAK0M,GACVouB,EAAU96B,KAAKyC,KAAK44B,SAASlB,GAC7BS,EAAOE,EAAQ2yB,OAAS3yB,EAAQ2yB,MAAM/gD,GAEtCkuB,IACHA,EAAK0Q,WAAW59B,iBACTotB,EAAQ2yB,MAAM/gD,KAIvBgB,QAAS,WACR,IAEIgL,EAAG0S,EAFHkB,EAAKtsB,KACL2N,EAAS2e,EAAG3e,OAMhB,IAHA2e,EAAGu+B,OAGEnyC,EAAI,EAAG0S,EAAOkB,EAAG7pB,KAAK44B,SAAS3vB,OAAQgN,EAAI0S,IAAQ1S,EACvD4T,EAAG2/B,mBAAmBvzC,GAGnB/K,IACH2e,EAAGohC,eACHl3B,GAAU7oB,OAAOkiB,MAAMvD,GACvBwxB,GAASN,eAAelxB,EAAGyD,KAC3BzD,EAAG3e,OAAS,KACZ2e,EAAGyD,IAAM,MAGVguB,GAAaM,OAAO/xB,EAAI,kBAEjB89B,GAAMG,UAAUj+B,EAAG5f,KAG3BihD,cAAe,WACd,OAAO3tD,KAAK2N,OAAOigD,UAAUtyC,MAAMtb,KAAK2N,OAAQsL,YAGjD2xC,YAAa,WACZ,IAAIt+B,EAAKtsB,KACTssB,EAAG03B,QAAU,IAAI6E,GAAa,CAC7B57C,OAAQqf,EACRuhC,eAAgBvhC,EAChBwP,MAAOxP,EAAG7pB,KACV2nC,SAAU9d,EAAG7e,QAAQg8B,UACnBnd,IAMJo+B,WAAY,WACX,IAAIp+B,EAAKtsB,KACL45B,EAAYtN,EAAGwhC,WAAa,GAC5Bp0B,EAAW,WACdpN,EAAGyhC,aAAazyC,MAAMgR,EAAIrT,YAG3Bud,GAAU1L,KAAKwB,EAAG7e,QAAQs8C,QAAQ,SAAS7nD,GAC1C47C,GAAShE,iBAAiBxtB,EAAIpqB,EAAMw3B,GACpCE,EAAU13B,GAAQw3B,KAKfpN,EAAG7e,QAAQy8C,aACdxwB,EAAW,WACVpN,EAAGq+B,UAGJ7M,GAAShE,iBAAiBxtB,EAAI,SAAUoN,GACxCE,EAAU+wB,OAASjxB,IAOrBg0B,aAAc,WACb,IAAIphC,EAAKtsB,KACL45B,EAAYtN,EAAGwhC,WACdl0B,WAIEtN,EAAGwhC,WACVt3B,GAAU1L,KAAK8O,GAAW,SAASF,EAAUx3B,GAC5C47C,GAAS3D,oBAAoB7tB,EAAIpqB,EAAMw3B,QAIzCs0B,iBAAkB,SAASjxB,EAAU2J,EAAM8Y,GAC1C,IACInjB,EAAS3jB,EAAG0S,EADZq+B,EAASjK,EAAU,MAAQ,SAG/B,IAAK9mC,EAAI,EAAG0S,EAAO2R,EAASrxB,OAAQgN,EAAI0S,IAAQ1S,EAC/C2jB,EAAUU,EAASrkB,GACf2jB,GACHr8B,KAAKs7B,eAAee,EAAQL,eAAesP,WAAWme,EAAS,cAAcptB,GAIlE,YAATqK,GACH1mC,KAAKs7B,eAAeyB,EAAS,GAAGf,eAAesP,WAAW,IAAMme,EAAS,wBAO3EsE,aAAc,SAAShyC,GACtB,IAAIuQ,EAAKtsB,KACLgkD,EAAU13B,EAAG03B,QAEjB,IAAoD,IAAhDjG,GAAaM,OAAO/xB,EAAI,cAAe,CAACvQ,IAA5C,CAKAuQ,EAAGg+B,iBAAkB,EACrBh+B,EAAGkgC,iBAAmB,KAEtB,IAAI1V,EAAUxqB,EAAGo8B,YAAY3sC,GAKzBioC,IACHlN,EAAUkN,EAAQtsB,OACfssB,EAAQ0E,YAAY3sC,GACpB+6B,EAAUkN,EAAQ0E,YAAY3sC,IAGlCgiC,GAAaM,OAAO/xB,EAAI,aAAc,CAACvQ,IAEvC,IAAIkyC,EAAkB3hC,EAAGkgC,iBAmBzB,OAlBIyB,EAEH3hC,EAAGxsB,OAAOmuD,GACAnX,IAAYxqB,EAAG0M,YAEzB1M,EAAGu+B,OAIHv+B,EAAGxsB,OAAO,CACTy4B,SAAUjM,EAAG7e,QAAQ6vB,MAAM2sB,kBAC3BnxB,MAAM,KAIRxM,EAAGg+B,iBAAkB,EACrBh+B,EAAGkgC,iBAAmB,KAEflgC,IASRo8B,YAAa,SAAS3sC,GACrB,IAAIuQ,EAAKtsB,KACLyN,EAAU6e,EAAG7e,SAAW,GACxB+wB,EAAe/wB,EAAQ6vB,MACvBwZ,GAAU,EAqCd,OAnCAxqB,EAAGigC,WAAajgC,EAAGigC,YAAc,GAGlB,aAAXxwC,EAAE7Z,KACLoqB,EAAGhe,OAAS,GAEZge,EAAGhe,OAASge,EAAGq8B,0BAA0B5sC,EAAGyiB,EAAakI,KAAMlI,GAKhEhI,GAAU50B,SAAS6L,EAAQu8C,SAAWv8C,EAAQ6vB,MAAM0sB,QAAS,CAACjuC,EAAE+2B,OAAQxmB,EAAGhe,QAASge,GAErE,YAAXvQ,EAAE7Z,MAAiC,UAAX6Z,EAAE7Z,MACzBuL,EAAQ+9B,SAEX/9B,EAAQ+9B,QAAQhyB,KAAK8S,EAAIvQ,EAAE+2B,OAAQxmB,EAAGhe,QAKpCge,EAAGigC,WAAW7gD,QACjB4gB,EAAG0hC,iBAAiB1hC,EAAGigC,WAAY/tB,EAAakI,MAAM,GAInDpa,EAAGhe,OAAO5C,QAAU8yB,EAAakI,MACpCpa,EAAG0hC,iBAAiB1hC,EAAGhe,OAAQkwB,EAAakI,MAAM,GAGnDoQ,GAAWtgB,GAAUvL,YAAYqB,EAAGhe,OAAQge,EAAGigC,YAG/CjgC,EAAGigC,WAAajgC,EAAGhe,OAEZwoC,KASTsT,GAAMG,UAAY,GAElB,IAAI2D,GAAkB9D,GAWtBA,GAAM+D,WAAa/D,GASnBA,GAAMgE,MAAQ,GASd53B,GAAU63B,YAAcpF,GASxBzyB,GAAU83B,WAAavF,GAEvB,IAAIwF,GAAe,WAoYlB,SAASC,EAAcC,EAAY3rC,EAAM4rC,GACxC,IAAIC,EAYJ,MAX0B,kBAAfF,GACVE,EAAgBvsD,SAASqsD,EAAY,KAEJ,IAA7BA,EAAWxkC,QAAQ,OAEtB0kC,EAAgBA,EAAgB,IAAM7rC,EAAKw5B,WAAWoS,KAGvDC,EAAgBF,EAGVE,EAOR,SAASC,EAAmBjtD,GAC3B,YAAiBwC,IAAVxC,GAAiC,OAAVA,GAA4B,SAAVA,EAUjD,SAASktD,EAAuBC,EAASC,EAAUC,GAClD,IAAIn4B,EAAOkU,SAASkkB,YAChB3S,EAAa9lB,GAAU04B,eAAeJ,GACtCK,EAAkBt4B,EAAKu4B,iBAAiBN,GAASC,GACjDM,EAAuBx4B,EAAKu4B,iBAAiB9S,GAAYyS,GACzDO,EAAWV,EAAmBO,GAC9BI,EAAgBX,EAAmBS,GACnCG,EAAW1iD,OAAO0mC,kBAEtB,OAAI8b,GAAYC,EACRr+C,KAAKkN,IACXkxC,EAAWd,EAAcW,EAAiBL,EAASE,GAAsBQ,EACzED,EAAgBf,EAAca,EAAsB/S,EAAY0S,GAAsBQ,GAGjF,OA9aRh5B,GAAUie,MAAQ,SAASgb,EAAYC,GACtC,GAAIl5B,GAAUlM,QAAQmlC,IAAeziD,MAAMyN,UAAU61B,OACpD,OAAOmf,EAAWnf,OAAOof,GAE1B,IAAIC,EAAW,GAQf,OANAn5B,GAAU1L,KAAK2kC,GAAY,SAAS3pD,GAC/B4pD,EAAe5pD,IAClB6pD,EAASriD,KAAKxH,MAIT6pD,GAERn5B,GAAU2C,UAAYnsB,MAAMyN,UAAU0e,UACrC,SAASnM,EAAOprB,EAAU6I,GACzB,OAAOuiB,EAAMmM,UAAUv3B,EAAU6I,IAElC,SAASuiB,EAAOprB,EAAU6I,GACzBA,OAAkBtG,IAAVsG,EAAsBuiB,EAAQviB,EACtC,IAAK,IAAIiO,EAAI,EAAG0S,EAAO4B,EAAMthB,OAAQgN,EAAI0S,IAAQ1S,EAChD,GAAI9W,EAAS4X,KAAK/O,EAAOuiB,EAAMtU,GAAIA,EAAGsU,GACrC,OAAOtU,EAGT,OAAQ,GAEV8d,GAAUo5B,cAAgB,SAASC,EAAeH,EAAgBI,GAE7Dt5B,GAAUnM,cAAcylC,KAC3BA,GAAc,GAEf,IAAK,IAAIp3C,EAAIo3C,EAAa,EAAGp3C,EAAIm3C,EAAcnkD,OAAQgN,IAAK,CAC3D,IAAIq3C,EAAcF,EAAcn3C,GAChC,GAAIg3C,EAAeK,GAClB,OAAOA,IAIVv5B,GAAUw5B,kBAAoB,SAASH,EAAeH,EAAgBI,GAEjEt5B,GAAUnM,cAAcylC,KAC3BA,EAAaD,EAAcnkD,QAE5B,IAAK,IAAIgN,EAAIo3C,EAAa,EAAGp3C,GAAK,EAAGA,IAAK,CACzC,IAAIq3C,EAAcF,EAAcn3C,GAChC,GAAIg3C,EAAeK,GAClB,OAAOA,IAMVv5B,GAAUsB,SAAW,SAAS3b,GAC7B,OAAQ+I,MAAMH,WAAW5I,KAAOsO,SAAStO,IAE1Cqa,GAAUy5B,aAAe,SAASryC,EAAGC,EAAGiU,GACvC,OAAO5gB,KAAK8xB,IAAIplB,EAAIC,GAAKiU,GAE1B0E,GAAU05B,YAAc,SAAStyC,EAAGkU,GACnC,IAAIq+B,EAAUj/C,KAAKiQ,MAAMvD,GACzB,OAASuyC,EAAUr+B,GAAYlU,GAAQuyC,EAAUr+B,GAAYlU,GAE9D4Y,GAAUnY,IAAM,SAAS2O,GACxB,OAAOA,EAAMm3B,QAAO,SAAS9lC,EAAK1c,GACjC,OAAKujB,MAAMvjB,GAGJ0c,EAFCnN,KAAKmN,IAAIA,EAAK1c,KAGpBmL,OAAOsjD,oBAEX55B,GAAUpY,IAAM,SAAS4O,GACxB,OAAOA,EAAMm3B,QAAO,SAAS/lC,EAAKzc,GACjC,OAAKujB,MAAMvjB,GAGJyc,EAFClN,KAAKkN,IAAIA,EAAKzc,KAGpBmL,OAAO0mC,oBAEXhd,GAAU65B,KAAOn/C,KAAKm/C,KACrB,SAASzyC,GACR,OAAO1M,KAAKm/C,KAAKzyC,IAElB,SAASA,GAER,OADAA,GAAKA,EACK,IAANA,GAAWsH,MAAMtH,GACbA,EAEDA,EAAI,EAAI,GAAK,GAEtB4Y,GAAU85B,UAAY,SAAS3nC,GAC9B,OAAOA,GAAWzX,KAAK4P,GAAK,MAE7B0V,GAAU+5B,UAAY,SAASC,GAC9B,OAAOA,GAAW,IAAMt/C,KAAK4P,KAU9B0V,GAAUi6B,eAAiB,SAAS7yC,GACnC,GAAK4Y,GAAU/L,SAAS7M,GAAxB,CAGA,IAAI7B,EAAI,EACJkE,EAAI,EACR,MAAO/O,KAAKiQ,MAAMvD,EAAI7B,GAAKA,IAAM6B,EAChC7B,GAAK,GACLkE,IAED,OAAOA,IAIRuW,GAAUoK,kBAAoB,SAAS8vB,EAAaC,GACnD,IAAIC,EAAsBD,EAAW/yC,EAAI8yC,EAAY9yC,EACjDizC,EAAsBF,EAAW9yC,EAAI6yC,EAAY7yC,EACjDizC,EAA2B5/C,KAAK6P,KAAK6vC,EAAsBA,EAAsBC,EAAsBA,GAEvGhwB,EAAQ3vB,KAAK2P,MAAMgwC,EAAqBD,GAM5C,OAJI/vB,GAAU,GAAM3vB,KAAK4P,KACxB+f,GAAS,EAAM3vB,KAAK4P,IAGd,CACN+f,MAAOA,EACPxhB,SAAUyxC,IAGZt6B,GAAUurB,sBAAwB,SAASlO,EAAKC,GAC/C,OAAO5iC,KAAK6P,KAAK7P,KAAKC,IAAI2iC,EAAIl2B,EAAIi2B,EAAIj2B,EAAG,GAAK1M,KAAKC,IAAI2iC,EAAIj2B,EAAIg2B,EAAIh2B,EAAG,KASvE2Y,GAAUu6B,WAAa,SAASC,GAC/B,OAAQA,EAAa,IAAM,EAAK,EAAI,IAWrCx6B,GAAUy6B,YAAc,SAASnhC,EAAOohC,EAAOvkD,GAC9C,IAAI89C,EAAmB36B,EAAMqhC,wBACzBC,EAAYzkD,EAAQ,EACxB,OAAOuE,KAAKiQ,OAAO+vC,EAAQE,GAAa3G,GAAoBA,EAAmB2G,GAGhF56B,GAAUia,YAAc,SAAS4gB,EAAYC,EAAaC,EAAYpxC,GAMrE,IAAIyM,EAAWykC,EAAW5uB,KAAO6uB,EAAcD,EAC3C1uC,EAAU2uC,EACV/qB,EAAOgrB,EAAW9uB,KAAO6uB,EAAcC,EAEvCC,EAAMtgD,KAAK6P,KAAK7P,KAAKC,IAAIwR,EAAQ/E,EAAIgP,EAAShP,EAAG,GAAK1M,KAAKC,IAAIwR,EAAQ9E,EAAI+O,EAAS/O,EAAG,IACvF4zC,EAAMvgD,KAAK6P,KAAK7P,KAAKC,IAAIo1B,EAAK3oB,EAAI+E,EAAQ/E,EAAG,GAAK1M,KAAKC,IAAIo1B,EAAK1oB,EAAI8E,EAAQ9E,EAAG,IAE/E6zC,EAAMF,GAAOA,EAAMC,GACnBE,EAAMF,GAAOD,EAAMC,GAGvBC,EAAMxsC,MAAMwsC,GAAO,EAAIA,EACvBC,EAAMzsC,MAAMysC,GAAO,EAAIA,EAEvB,IAAIC,EAAKzxC,EAAIuxC,EACTG,EAAK1xC,EAAIwxC,EAEb,MAAO,CACN/kC,SAAU,CACThP,EAAG+E,EAAQ/E,EAAIg0C,GAAMrrB,EAAK3oB,EAAIgP,EAAShP,GACvCC,EAAG8E,EAAQ9E,EAAI+zC,GAAMrrB,EAAK1oB,EAAI+O,EAAS/O,IAExC0oB,KAAM,CACL3oB,EAAG+E,EAAQ/E,EAAIi0C,GAAMtrB,EAAK3oB,EAAIgP,EAAShP,GACvCC,EAAG8E,EAAQ9E,EAAIg0C,GAAMtrB,EAAK1oB,EAAI+O,EAAS/O,MAI1C2Y,GAAUs7B,QAAUhlD,OAAOglD,SAAW,MACtCt7B,GAAUga,oBAAsB,SAASrO,GAMxC,IAUIzpB,EAAGq5C,EAAaC,EAAcC,EA4B9BC,EAAQC,EAAOC,EAAMC,EA0BrBte,EAhEAue,GAAsBnwB,GAAU,IAAI9+B,KAAI,SAASuuB,GACpD,MAAO,CACNlwB,MAAOkwB,EAAM6F,OACb86B,OAAQ,EACRC,GAAI,MAKFC,EAAYH,EAAmB5mD,OAEnC,IAAKgN,EAAI,EAAGA,EAAI+5C,IAAa/5C,EAE5B,GADAs5C,EAAeM,EAAmB55C,IAC9Bs5C,EAAatwD,MAAM+gC,KAAvB,CAMA,GAFAsvB,EAAcr5C,EAAI,EAAI45C,EAAmB55C,EAAI,GAAK,KAClDu5C,EAAav5C,EAAI+5C,EAAY,EAAIH,EAAmB55C,EAAI,GAAK,KACzDu5C,IAAeA,EAAWvwD,MAAM+gC,KAAM,CACzC,IAAIiwB,EAAeT,EAAWvwD,MAAMkc,EAAIo0C,EAAatwD,MAAMkc,EAG3Do0C,EAAaO,OAAyB,IAAhBG,GAAqBT,EAAWvwD,MAAMmc,EAAIm0C,EAAatwD,MAAMmc,GAAK60C,EAAc,GAGlGX,GAAeA,EAAYrwD,MAAM+gC,KACrCuvB,EAAaQ,GAAKR,EAAaO,QACpBN,GAAcA,EAAWvwD,MAAM+gC,KAC1CuvB,EAAaQ,GAAKT,EAAYQ,OACpBvyD,KAAKqwD,KAAK0B,EAAYQ,UAAYvyD,KAAKqwD,KAAK2B,EAAaO,QACnEP,EAAaQ,GAAK,EAElBR,EAAaQ,IAAMT,EAAYQ,OAASP,EAAaO,QAAU,EAMjE,IAAK75C,EAAI,EAAGA,EAAI+5C,EAAY,IAAK/5C,EAChCs5C,EAAeM,EAAmB55C,GAClCu5C,EAAaK,EAAmB55C,EAAI,GAChCs5C,EAAatwD,MAAM+gC,MAAQwvB,EAAWvwD,MAAM+gC,OAI5CjM,GAAUy5B,aAAa+B,EAAaO,OAAQ,EAAGvyD,KAAK8xD,SACvDE,EAAaQ,GAAKP,EAAWO,GAAK,GAInCN,EAASF,EAAaQ,GAAKR,EAAaO,OACxCJ,EAAQF,EAAWO,GAAKR,EAAaO,OACrCF,EAAmBnhD,KAAKC,IAAI+gD,EAAQ,GAAKhhD,KAAKC,IAAIghD,EAAO,GACrDE,GAAoB,IAIxBD,EAAO,EAAIlhD,KAAK6P,KAAKsxC,GACrBL,EAAaQ,GAAKN,EAASE,EAAOJ,EAAaO,OAC/CN,EAAWO,GAAKL,EAAQC,EAAOJ,EAAaO,UAK7C,IAAK75C,EAAI,EAAGA,EAAI+5C,IAAa/5C,EAC5Bs5C,EAAeM,EAAmB55C,GAC9Bs5C,EAAatwD,MAAM+gC,OAIvBsvB,EAAcr5C,EAAI,EAAI45C,EAAmB55C,EAAI,GAAK,KAClDu5C,EAAav5C,EAAI+5C,EAAY,EAAIH,EAAmB55C,EAAI,GAAK,KACzDq5C,IAAgBA,EAAYrwD,MAAM+gC,OACrCsR,GAAUie,EAAatwD,MAAMkc,EAAIm0C,EAAYrwD,MAAMkc,GAAK,EACxDo0C,EAAatwD,MAAM8wB,sBAAwBw/B,EAAatwD,MAAMkc,EAAIm2B,EAClEie,EAAatwD,MAAMgxB,sBAAwBs/B,EAAatwD,MAAMmc,EAAIk2B,EAASie,EAAaQ,IAErFP,IAAeA,EAAWvwD,MAAM+gC,OACnCsR,GAAUke,EAAWvwD,MAAMkc,EAAIo0C,EAAatwD,MAAMkc,GAAK,EACvDo0C,EAAatwD,MAAM+wB,kBAAoBu/B,EAAatwD,MAAMkc,EAAIm2B,EAC9Die,EAAatwD,MAAMixB,kBAAoBq/B,EAAatwD,MAAMmc,EAAIk2B,EAASie,EAAaQ,MAIvFh8B,GAAUka,SAAW,SAAS+e,EAAYttD,EAAOwwD,GAChD,OAAIA,EACIxwD,GAASstD,EAAW/jD,OAAS,EAAI+jD,EAAW,GAAKA,EAAWttD,EAAQ,GAErEA,GAASstD,EAAW/jD,OAAS,EAAI+jD,EAAWA,EAAW/jD,OAAS,GAAK+jD,EAAWttD,EAAQ,IAEhGq0B,GAAUgM,aAAe,SAASitB,EAAYttD,EAAOwwD,GACpD,OAAIA,EACIxwD,GAAS,EAAIstD,EAAWA,EAAW/jD,OAAS,GAAK+jD,EAAWttD,EAAQ,GAErEA,GAAS,EAAIstD,EAAW,GAAKA,EAAWttD,EAAQ,IAGxDq0B,GAAUo8B,QAAU,SAAS1pB,EAAO/nB,GACnC,IAEI0xC,EAFAh+B,EAAW3jB,KAAKD,MAAMulB,GAAU5B,MAAMsU,IACtC4pB,EAAW5pB,EAAQh4B,KAAKC,IAAI,GAAI0jB,GAuBpC,OAlBEg+B,EAFE1xC,EACC2xC,EAAW,IACC,EACLA,EAAW,EACN,EACLA,EAAW,EACN,EAEA,GAENA,GAAY,EACP,EACLA,GAAY,EACP,EACLA,GAAY,EACP,EAEA,GAGTD,EAAe3hD,KAAKC,IAAI,GAAI0jB,IAGpC2B,GAAU4C,iBAAoB,WAC7B,MAAsB,qBAAXtP,OACH,SAASloB,GACfA,KAGKkoB,OAAOmP,uBACbnP,OAAOipC,6BACPjpC,OAAOkpC,0BACPlpC,OAAOmpC,wBACPnpC,OAAOopC,yBACP,SAAStxD,GACR,OAAOkoB,OAAOqpC,WAAWvxD,EAAU,IAAO,KAZhB,GAgB7B40B,GAAUqc,oBAAsB,SAASugB,EAAKtjC,GAC7C,IAAIwQ,EAAQ6C,EACRpnB,EAAIq3C,EAAIC,eAAiBD,EACzBzlD,EAASylD,EAAIhqC,QAAUgqC,EAAIE,WAC3BC,EAAe5lD,EAAO6lD,wBAEtBC,EAAU13C,EAAE03C,QACZA,GAAWA,EAAQ/nD,OAAS,GAC/B40B,EAASmzB,EAAQ,GAAGC,QACpBvwB,EAASswB,EAAQ,GAAGE,UAGpBrzB,EAASvkB,EAAE23C,QACXvwB,EAASpnB,EAAE43C,SAMZ,IAAIC,EAAc7uC,WAAWyR,GAAUyG,SAAStvB,EAAQ,iBACpDkmD,EAAa9uC,WAAWyR,GAAUyG,SAAStvB,EAAQ,gBACnDmmD,EAAe/uC,WAAWyR,GAAUyG,SAAStvB,EAAQ,kBACrDomD,EAAgBhvC,WAAWyR,GAAUyG,SAAStvB,EAAQ,mBACtDhB,EAAQ4mD,EAAaljC,MAAQkjC,EAAapjC,KAAOyjC,EAAcE,EAC/DlnD,EAAS2mD,EAAajjC,OAASijC,EAAanjC,IAAMyjC,EAAaE,EAOnE,OAHAzzB,EAASpvB,KAAKiQ,OAAOmf,EAASizB,EAAapjC,KAAOyjC,GAAe,EAAUjmD,EAAOhB,MAAQmjB,EAAMqhC,yBAChGhuB,EAASjyB,KAAKiQ,OAAOgiB,EAASowB,EAAanjC,IAAMyjC,GAAc,EAAWlmD,EAAOf,OAASkjB,EAAMqhC,yBAEzF,CACNvzC,EAAG0iB,EACHziB,EAAGslB,IAuDL3M,GAAUw9B,mBAAqB,SAASlF,GACvC,OAAOD,EAAuBC,EAAS,YAAa,gBAGrDt4B,GAAUy9B,oBAAsB,SAASnF,GACxC,OAAOD,EAAuBC,EAAS,aAAc,iBAKtDt4B,GAAU09B,kBAAoB,SAAS9X,EAAW5Y,EAAS2wB,GAG1D,OAFA3wB,EAAUhN,GAAUyG,SAASmf,EAAW5Y,GAEjCA,EAAQvZ,QAAQ,MAAQ,EAAIkqC,EAAkB/xD,SAASohC,EAAS,IAAM,IAAMphC,SAASohC,EAAS,KAKtGhN,GAAU04B,eAAiB,SAASJ,GACnC,IAAIvsC,EAASusC,EAAQxS,WAIrB,OAHI/5B,GAAgC,wBAAtBA,EAAO9N,aACpB8N,EAASA,EAAO9c,MAEV8c,GAERiU,GAAUu0B,gBAAkB,SAAS+D,GACpC,IAAI1S,EAAY5lB,GAAU04B,eAAeJ,GACzC,IAAK1S,EACJ,OAAO0S,EAAQvS,YAGhB,IAAIA,EAAcH,EAAUG,YACxBqX,EAAcp9B,GAAU09B,kBAAkB9X,EAAW,eAAgBG,GACrEuX,EAAet9B,GAAU09B,kBAAkB9X,EAAW,gBAAiBG,GAEvEz9B,EAAIy9B,EAAcqX,EAAcE,EAChCM,EAAK59B,GAAUw9B,mBAAmBlF,GACtC,OAAO5pC,MAAMkvC,GAAMt1C,EAAI5N,KAAKkN,IAAIU,EAAGs1C,IAEpC59B,GAAUw0B,iBAAmB,SAAS8D,GACrC,IAAI1S,EAAY5lB,GAAU04B,eAAeJ,GACzC,IAAK1S,EACJ,OAAO0S,EAAQuF,aAGhB,IAAIA,EAAejY,EAAUiY,aACzBR,EAAar9B,GAAU09B,kBAAkB9X,EAAW,cAAeiY,GACnEN,EAAgBv9B,GAAU09B,kBAAkB9X,EAAW,iBAAkBiY,GAEzEv2C,EAAIu2C,EAAeR,EAAaE,EAChCO,EAAK99B,GAAUy9B,oBAAoBnF,GACvC,OAAO5pC,MAAMovC,GAAMx2C,EAAI5M,KAAKkN,IAAIN,EAAGw2C,IAEpC99B,GAAUyG,SAAW,SAAS2d,EAAIzB,GACjC,OAAOyB,EAAG2Z,aACT3Z,EAAG2Z,aAAapb,GAChBpO,SAASkkB,YAAYG,iBAAiBxU,EAAI,MAAM1kB,iBAAiBijB,IAEnE3iB,GAAUg0B,YAAc,SAAS16B,EAAO0kC,GACvC,IAAIC,EAAa3kC,EAAMqhC,wBAA0BqD,GAAiC,qBAAX1qC,QAA0BA,OAAO2gC,kBAAqB,EAC7H,GAAmB,IAAfgK,EAAJ,CAIA,IAAI9mD,EAASmiB,EAAMniB,OACff,EAASkjB,EAAMljB,OACfD,EAAQmjB,EAAMnjB,MAElBgB,EAAOf,OAASA,EAAS6nD,EACzB9mD,EAAOhB,MAAQA,EAAQ8nD,EACvB3kC,EAAMC,IAAI/K,MAAMyvC,EAAYA,GAKvB9mD,EAAOpB,MAAMK,QAAWe,EAAOpB,MAAMI,QACzCgB,EAAOpB,MAAMK,OAASA,EAAS,KAC/Be,EAAOpB,MAAMI,MAAQA,EAAQ,QAI/B6pB,GAAUquB,WAAa,SAAS6P,EAAWtgC,EAAWF,GACrD,OAAOE,EAAY,IAAMsgC,EAAY,MAAQxgC,GAE9CsC,GAAUm+B,YAAc,SAAS5kC,EAAK0D,EAAMmhC,EAAenW,GAC1DA,EAAQA,GAAS,GACjB,IAAIh8C,EAAOg8C,EAAMh8C,KAAOg8C,EAAMh8C,MAAQ,GAClCoyD,EAAKpW,EAAMqW,eAAiBrW,EAAMqW,gBAAkB,GAEpDrW,EAAMhrB,OAASA,IAClBhxB,EAAOg8C,EAAMh8C,KAAO,GACpBoyD,EAAKpW,EAAMqW,eAAiB,GAC5BrW,EAAMhrB,KAAOA,GAGd1D,EAAI0D,KAAOA,EACX,IAEI/a,EAAGszB,EAAGkH,EAAM6hB,EAAOC,EAFnBC,EAAU,EACV7pC,EAAOwpC,EAAclpD,OAEzB,IAAKgN,EAAI,EAAGA,EAAI0S,EAAM1S,IAIrB,GAHAq8C,EAAQH,EAAcl8C,QAGRvU,IAAV4wD,GAAiC,OAAVA,IAA+C,IAA7Bv+B,GAAUlM,QAAQyqC,GAC9DE,EAAUz+B,GAAUouB,YAAY70B,EAAKttB,EAAMoyD,EAAII,EAASF,QAClD,GAAIv+B,GAAUlM,QAAQyqC,GAG5B,IAAK/oB,EAAI,EAAGkH,EAAO6hB,EAAMrpD,OAAQsgC,EAAIkH,EAAMlH,IAC1CgpB,EAAcD,EAAM/oB,QAEA7nC,IAAhB6wD,GAA6C,OAAhBA,GAAyBx+B,GAAUlM,QAAQ0qC,KAC3EC,EAAUz+B,GAAUouB,YAAY70B,EAAKttB,EAAMoyD,EAAII,EAASD,IAM5D,IAAIE,EAAQL,EAAGnpD,OAAS,EACxB,GAAIwpD,EAAQN,EAAclpD,OAAQ,CACjC,IAAKgN,EAAI,EAAGA,EAAIw8C,EAAOx8C,WACfjW,EAAKoyD,EAAGn8C,IAEhBm8C,EAAG7lD,OAAO,EAAGkmD,GAEd,OAAOD,GAERz+B,GAAUouB,YAAc,SAAS70B,EAAKttB,EAAMoyD,EAAII,EAASr/C,GACxD,IAAIu/C,EAAY1yD,EAAKmT,GAQrB,OAPKu/C,IACJA,EAAY1yD,EAAKmT,GAAUma,EAAI60B,YAAYhvC,GAAQjJ,MACnDkoD,EAAGvnD,KAAKsI,IAELu/C,EAAYF,IACfA,EAAUE,GAEJF,GAMRz+B,GAAU4+B,mBAAqB,SAASR,GACvC,IAAIS,EAAgB,EAQpB,OAPA7+B,GAAU1L,KAAK8pC,GAAe,SAASG,GAClCv+B,GAAUlM,QAAQyqC,IACjBA,EAAMrpD,OAAS2pD,IAClBA,EAAgBN,EAAMrpD,WAIlB2pD,GAGR7+B,GAAUnV,MAAS0I,EAKlB,SAASpoB,GAMR,OAJIA,aAAiB2zD,iBACpB3zD,EAAQ4xB,EAAcxjB,OAAOijB,cAGvBjJ,EAAapoB,IAVrB,SAASA,GAER,OADA0nB,QAAQ1O,MAAM,uBACPhZ,GAWT60B,GAAUyH,cAAgB,SAASs3B,GAElC,OAAQA,aAAsBC,eAAiBD,aAAsBD,eACpEC,EACA/+B,GAAUnV,MAAMk0C,GAAYptC,SAAS,IAAKD,OAAO,IAAK9D,cAIzD,SAASqxC,KACR,MAAM,IAAI7nD,MACT,6GAsBF,SAAS8nD,GAAYjoD,GACpBzN,KAAKyN,QAAUA,GAAW,GAG3B+oB,GAAUvK,OAAOypC,GAAYj7C,UAAqC,CAMjEk7C,QAASF,GASTG,MAAOH,GASPI,OAAQJ,GAURzZ,IAAKyZ,GAUL92C,KAAM82C,GAUNK,QAASL,GAQTM,MAAON,GAWPO,QAAS,SAASr0D,GACjB,OAAOA,KAIT+zD,GAAYO,SAAW,SAASC,GAC/B1/B,GAAUvK,OAAOypC,GAAYj7C,UAAWy7C,IAGzC,IAAIC,GAAQT,GAERU,GAAgB,CACnBD,MAAOA,IAOJE,GAAa,CAKhBC,WAAY,CAOX5wC,OAAQ,SAAS/jB,GAChB,OAAO60B,GAAUlM,QAAQ3oB,GAASA,EAAQ,GAAKA,GAWhD0rB,OAAQ,SAASkpC,EAAWp0D,EAAO2sC,GAElC,IAAIxwB,EAAQwwB,EAAMpjC,OAAS,EAAIojC,EAAM,GAAKA,EAAM,GAAKA,EAAM,GAAKA,EAAM,GAGlE59B,KAAK8xB,IAAI1kB,GAAS,GACjBi4C,IAAcrlD,KAAKD,MAAMslD,KAE5Bj4C,EAAQi4C,EAAYrlD,KAAKD,MAAMslD,IAIjC,IAAIC,EAAWhgC,GAAU5B,MAAM1jB,KAAK8xB,IAAI1kB,IACpCm4C,EAAa,GAEjB,GAAkB,IAAdF,EAAiB,CACpB,IAAIG,EAAUxlD,KAAKmN,IAAInN,KAAK8xB,IAAI8L,EAAM,IAAK59B,KAAK8xB,IAAI8L,EAAMA,EAAMpjC,OAAS,KACzE,GAAIgrD,EAAU,KAAM,CACnB,IAAIC,EAAUngC,GAAU5B,MAAM1jB,KAAK8xB,IAAIuzB,IACnCK,EAAiB1lD,KAAKD,MAAM0lD,GAAWzlD,KAAKD,MAAMulD,GACtDI,EAAiB1lD,KAAKmN,IAAInN,KAAKkN,IAAIw4C,EAAgB,IAAK,GACxDH,EAAaF,EAAUM,cAAcD,OAC/B,CACN,IAAIE,GAAc,EAAI5lD,KAAKD,MAAMulD,GACjCM,EAAa5lD,KAAKmN,IAAInN,KAAKkN,IAAI04C,EAAY,IAAK,GAChDL,EAAaF,EAAUQ,QAAQD,SAGhCL,EAAa,IAGd,OAAOA,GAGRO,YAAa,SAAST,EAAWp0D,EAAO2sC,GACvC,IAAImoB,EAASV,EAAarlD,KAAKC,IAAI,GAAID,KAAKD,MAAMulB,GAAU5B,MAAM2hC,KAElE,OAAkB,IAAdA,EACI,IACc,IAAXU,GAA2B,IAAXA,GAA2B,IAAXA,GAA0B,IAAV90D,GAAeA,IAAU2sC,EAAMpjC,OAAS,EAC3F6qD,EAAUM,gBAEX,MAKNvsC,GAAUkM,GAAUlM,QACpBD,GAAgBmM,GAAUnM,cAC1B6sC,GAAmB1gC,GAAU9L,eAC7BE,GAAwB4L,GAAU5L,sBA4DtC,SAASusC,GAAOC,EAAKC,GAMpB,IALA,IAAItyD,EAAS,GACTuyD,EAAYF,EAAI1rD,OAAS2rD,EACzB3+C,EAAI,EACJ4J,EAAM80C,EAAI1rD,OAEPgN,EAAI4J,EAAK5J,GAAK4+C,EACpBvyD,EAAOuI,KAAK8pD,EAAIlmD,KAAKD,MAAMyH,KAE5B,OAAO3T,EAGR,SAASwyD,GAAoBvyC,EAAO7iB,EAAO0kC,GAC1C,IAMIF,EANAj7B,EAASsZ,EAAM4gB,WAAWl6B,OAC1B8rD,EAAatmD,KAAKkN,IAAIjc,EAAOuJ,EAAS,GACtC+rD,EAAYzyC,EAAM6gB,gBAAgB2xB,GAClC5gC,EAAQ5R,EAAM4jB,YACdnC,EAAMzhB,EAAM6jB,UACZ/W,EAAU,KAGd,KAAI+U,IAEFF,EADc,IAAXj7B,EACMwF,KAAKmN,IAAIo5C,EAAY7gC,EAAO6P,EAAMgxB,GACvB,IAAVt1D,GACA6iB,EAAM6gB,gBAAgB,GAAK4xB,GAAa,GAExCA,EAAYzyC,EAAM6gB,gBAAgB2xB,EAAa,IAAM,EAEhEC,GAAaD,EAAar1D,EAAQwkC,GAAUA,EAGxC8wB,EAAY7gC,EAAQ9E,GAAW2lC,EAAYhxB,EAAM3U,IAItD,OAAO2lC,EAGR,SAAS3C,GAAe4C,EAAQhsD,GAC/B8qB,GAAU1L,KAAK4sC,GAAQ,SAASjZ,GAC/B,IAEI/lC,EAFAm8C,EAAKpW,EAAMoW,GACXK,EAAQL,EAAGnpD,OAAS,EAExB,GAAIwpD,EAAQxpD,EAAQ,CACnB,IAAKgN,EAAI,EAAGA,EAAIw8C,IAASx8C,SACjB+lC,EAAMh8C,KAAKoyD,EAAGn8C,IAEtBm8C,EAAG7lD,OAAO,EAAGkmD,OAShB,SAASyC,GAAkB5nC,EAAK6nC,EAAW9oB,EAAO4oB,GACjD,IAMIh/C,EAAGszB,EAAGkH,EAAM/kC,EAAO0pD,EAAUhT,EAAYpG,EAAOtqB,EAAYxnB,EAAOC,EAAQkrD,EAAaC,EAAQC,EANhGtsD,EAASojC,EAAMpjC,OACfusD,EAAS,GACTC,EAAU,GACVC,EAAU,GACVC,EAAkB,EAClBC,EAAmB,EAGvB,IAAK3/C,EAAI,EAAGA,EAAIhN,IAAUgN,EAAG,CAQ5B,GAPAvK,EAAQ2gC,EAAMp2B,GAAGvK,MACjB0pD,EAAW/oB,EAAMp2B,GAAG4/C,MAAQV,EAAUU,MAAQV,EAAUW,MACxDxoC,EAAI0D,KAAOoxB,EAAagT,EAASjiD,OACjC6oC,EAAQiZ,EAAO7S,GAAc6S,EAAO7S,IAAe,CAACpiD,KAAM,GAAIoyD,GAAI,IAClE1gC,EAAa0jC,EAAS1jC,WACtBxnB,EAAQC,EAAS,EAEZyd,GAAclc,IAAWmc,GAAQnc,IAG/B,GAAImc,GAAQnc,GAElB,IAAK69B,EAAI,EAAGkH,EAAO/kC,EAAMzC,OAAQsgC,EAAIkH,IAAQlH,EAC5C8rB,EAAc3pD,EAAM69B,GAEf3hB,GAAcytC,IAAiBxtC,GAAQwtC,KAC3CnrD,EAAQ6pB,GAAUouB,YAAY70B,EAAK0uB,EAAMh8C,KAAMg8C,EAAMoW,GAAIloD,EAAOmrD,GAChElrD,GAAUunB,QATZxnB,EAAQ6pB,GAAUouB,YAAY70B,EAAK0uB,EAAMh8C,KAAMg8C,EAAMoW,GAAIloD,EAAOwB,GAChEvB,EAASunB,EAYV8jC,EAAO3qD,KAAKX,GACZurD,EAAQ5qD,KAAKV,GACburD,EAAQ7qD,KAAK6mB,EAAa,GAC1BikC,EAAkBlnD,KAAKmN,IAAI1R,EAAOyrD,GAClCC,EAAmBnnD,KAAKmN,IAAIzR,EAAQyrD,GAOrC,SAASG,EAAQra,GAChB,MAAO,CACNxxC,MAAOsrD,EAAO9Z,IAAQ,EACtBvxC,OAAQsrD,EAAQ/Z,IAAQ,EACxBxX,OAAQwxB,EAAQha,IAAQ,GAI1B,OAbA2W,GAAe4C,EAAQhsD,GAEvBqsD,EAASE,EAAOhuC,QAAQmuC,GACxBJ,EAAUE,EAAQjuC,QAAQouC,GAUnB,CACNI,MAAOD,EAAQ,GACfpwB,KAAMowB,EAAQ9sD,EAAS,GACvBqsD,OAAQS,EAAQT,GAChBC,QAASQ,EAAQR,IAInB,SAASU,GAAkBjrD,GAC1B,OAAOA,EAAQkrD,UAAYlrD,EAAQmrD,eAAiB,EAGrD,SAASC,GAAoBprD,GAC5B,IAAIgmB,EAAM+P,EAEV,OAAK/1B,EAAQojC,SAIbpd,EAAO+C,GAAU/oB,QAAQsmB,WAAWtmB,GACpC+1B,EAAUhN,GAAU/oB,QAAQqmB,UAAUrmB,EAAQ+1B,SAEvC/P,EAAKU,WAAaqP,EAAQ52B,QANzB,EAST,SAASksD,GAAiBrrD,EAASsrD,GAClC,OAAOviC,GAAUvK,OAAOuK,GAAU/oB,QAAQsmB,WAAW,CACpDG,WAAYgjC,GAAiB6B,EAAW7kC,WAAYzmB,EAAQymB,YAC5DD,SAAUijC,GAAiB6B,EAAW9kC,SAAUxmB,EAAQwmB,UACxDG,UAAW8iC,GAAiB6B,EAAW3kC,UAAW3mB,EAAQ2mB,WAC1DD,WAAY+iC,GAAiB6B,EAAW5kC,WAAY1mB,EAAQ0mB,cACzD,CACH9S,MAAOmV,GAAU/oB,QAAQ4mB,QAAQ,CAAC0kC,EAAWC,UAAWvrD,EAAQurD,UAAWzlC,EAAcxjB,OAAOkjB,qBAIlG,SAASgmC,GAAqBxrD,GAC7B,IAAI8qD,EAAQO,GAAiBrrD,EAASA,EAAQ8qD,OAC1CD,EAAQ7qD,EAAQ6qD,MAAM9Y,QAAUsZ,GAAiBrrD,EAASA,EAAQ6qD,OAASC,EAE/E,MAAO,CAACA,MAAOA,EAAOD,MAAOA,GAG9B,SAASY,GAAWC,GACnB,IACIrzD,EAAM3D,EAAOmgB,EADbqtC,EAAW,GAEf,IAAKxtD,EAAQ,EAAGmgB,EAAM62C,EAAcztD,OAAQvJ,EAAQmgB,IAAOngB,EAC1D2D,EAAOqzD,EAAch3D,GACM,qBAAhB2D,EAAKo2B,QACfyzB,EAASriD,KAAKxH,GAGhB,OAAO6pD,EAGR,SAASyJ,GAAehC,GACvB,IACI1+C,EAAGiG,EADH2D,EAAM80C,EAAI1rD,OAGd,GAAI4W,EAAM,EACT,OAAO,EAGR,IAAK3D,EAAOy4C,EAAI,GAAI1+C,EAAI,EAAGA,EAAI4J,IAAO5J,EACrC,GAAI0+C,EAAI1+C,GAAK0+C,EAAI1+C,EAAI,KAAOiG,EAC3B,OAAO,EAGT,OAAOA,EAGR,SAAS06C,GAAiBC,EAAcxqB,EAAOyqB,EAAYC,GAC1D,IAEIC,EAASC,EAAQhhD,EAAG0S,EAFpBuuC,EAAmBP,GAAeE,GAClCM,GAAW9qB,EAAMpjC,OAAS,GAAK8tD,EAKnC,IAAKG,EACJ,OAAOzoD,KAAKmN,IAAIu7C,EAAS,GAI1B,IADAH,EAAUjjC,GAAUE,KAAK/B,WAAWglC,GAC/BjhD,EAAI,EAAG0S,EAAOquC,EAAQ/tD,OAAS,EAAGgN,EAAI0S,EAAM1S,IAEhD,GADAghD,EAASD,EAAQ/gD,GACbghD,EAASE,EACZ,OAAOF,EAGT,OAAOxoD,KAAKmN,IAAIu7C,EAAS,GAG1B,SAASC,GAAgB/qB,GACxB,IACIp2B,EAAG0S,EADHrmB,EAAS,GAEb,IAAK2T,EAAI,EAAG0S,EAAO0jB,EAAMpjC,OAAQgN,EAAI0S,EAAM1S,IACtCo2B,EAAMp2B,GAAG4/C,OACZvzD,EAAOuI,KAAKoL,GAGd,OAAO3T,EAGR,SAAS+0D,GAAWhrB,EAAOwqB,EAAcM,GACxC,IAEIlhD,EAAGqhD,EAFHl7B,EAAQ,EACR0H,EAAO+yB,EAAa,GAIxB,IADAM,EAAU1oD,KAAK8oD,KAAKJ,GACflhD,EAAI,EAAGA,EAAIo2B,EAAMpjC,OAAQgN,IAC7BqhD,EAAOjrB,EAAMp2B,GACTA,IAAM6tB,GACTwzB,EAAK79B,OAASxjB,EACdmmB,IACA0H,EAAO+yB,EAAaz6B,EAAQ+6B,WAErBG,EAAK5rD,MAKf,SAASs0B,GAAKqM,EAAO8qB,EAASK,EAAYC,GACzC,IAGIxuD,EAAQgN,EAAGqhD,EAAMxzB,EAHjB3P,EAAQsgC,GAAiB+C,EAAY,GACrCxzB,EAAMv1B,KAAKkN,IAAI84C,GAAiBgD,EAAUprB,EAAMpjC,QAASojC,EAAMpjC,QAC/DmzB,EAAQ,EAGZ+6B,EAAU1oD,KAAK8oD,KAAKJ,GAChBM,IACHxuD,EAASwuD,EAAWD,EACpBL,EAAUluD,EAASwF,KAAKD,MAAMvF,EAASkuD,IAGxCrzB,EAAO3P,EAEP,MAAO2P,EAAO,EACb1H,IACA0H,EAAOr1B,KAAKiQ,MAAMyV,EAAQiI,EAAQ+6B,GAGnC,IAAKlhD,EAAIxH,KAAKmN,IAAIuY,EAAO,GAAIle,EAAI+tB,EAAK/tB,IACrCqhD,EAAOjrB,EAAMp2B,GACTA,IAAM6tB,GACTwzB,EAAK79B,OAASxjB,EACdmmB,IACA0H,EAAOr1B,KAAKiQ,MAAMyV,EAAQiI,EAAQ+6B,WAE3BG,EAAK5rD,MAxTfolB,EAAcR,KAAK,QAAS,CAC3B8d,SAAS,EACTrH,SAAU,OACV7C,QAAQ,EAGRC,UAAW,CACViK,SAAS,EACTxvB,MAAO,kBACP6e,UAAW,EACXF,YAAY,EACZm6B,iBAAiB,EACjBxB,WAAW,EACXC,eAAgB,GAChBwB,cAAe,EACfC,cAAe,mBACfC,mBAAoB,GACpBC,yBAA0B,EAC1B1zB,iBAAiB,EACjBjF,WAAY,GACZC,iBAAkB,GAInB24B,WAAY,CAEX3pB,SAAS,EAGT4pB,YAAa,GAGbj3B,QAAS,CACRpT,IAAK,EACLE,OAAQ,IAKVwe,MAAO,CACNkC,aAAa,EACb0pB,YAAa,EACbC,YAAa,GACbC,QAAQ,EACRp3B,QAAS,EACTxY,SAAS,EACT6lB,SAAS,EACTgqB,UAAU,EACVC,gBAAiB,EACjBC,YAAa,EAEbn5D,SAAUy0D,GAAWC,WAAW5wC,OAChC6yC,MAAO,GACPD,MAAO,MAwQT,IAAI0C,GAAQjjC,GAAa9L,OAAO,CAE/BgvC,cAAe,EAQfhlB,WAAY,WACX,IAAI3pB,EAAKtsB,KACT,MAAO,CACNmwB,KAAM7D,EAAGsnC,aAAe,EACxBxjC,IAAK9D,EAAGunC,YAAc,EACtBxjC,MAAO/D,EAAGwnC,cAAgB,EAC1BxjC,OAAQhE,EAAGynC,eAAiB,IAQ9BnuB,SAAU,WACT,OAAO5lC,KAAKk7D,QAMbC,WAAY,WACX,IAAI14D,EAAOzC,KAAK8vB,MAAMrtB,KACtB,OAAOzC,KAAKyN,QAAQkP,SAAW3c,KAAK4nC,eAAiBnlC,EAAK24D,QAAU34D,EAAK44D,UAAY54D,EAAKka,QAAU,IAarGkvC,kBAAmB,aAInByP,aAAc,WACb9kC,GAAU50B,SAAS5B,KAAKyN,QAAQ6tD,aAAc,CAACt7D,QAWhD68B,OAAQ,SAASqP,EAAUC,EAAWovB,GACrC,IAGI7iD,EAAG0S,EAAMzO,EAAQmyB,EAAO0sB,EAHxBlvC,EAAKtsB,KACL6uC,EAAWviB,EAAG7e,QAAQqhC,MACtB2sB,EAAa5sB,EAAS4sB,WAoD1B,GAhDAnvC,EAAGgvC,eAGHhvC,EAAG4f,SAAWA,EACd5f,EAAG6f,UAAYA,EACf7f,EAAGivC,QAAU/kC,GAAUvK,OAAO,CAC7BkE,KAAM,EACNE,MAAO,EACPD,IAAK,EACLE,OAAQ,GACNirC,GAEHjvC,EAAG4uC,OAAS,KACZ5uC,EAAGwiB,MAAQ,KACXxiB,EAAGovC,YAAc,KACjBpvC,EAAGqvC,eAAiB,EACpBrvC,EAAGsvC,kBAAoB,EACvBtvC,EAAGuvC,iBAAmBvvC,EAAGuvC,kBAAoB,GAC7CvvC,EAAGwvC,eAAiB,KACpBxvC,EAAGyvC,YAAc,KAGjBzvC,EAAG0vC,sBACH1vC,EAAG2vC,gBACH3vC,EAAG4vC,qBAGH5vC,EAAG6vC,mBACH7vC,EAAG8vC,sBACH9vC,EAAG+vC,kBASH/vC,EAAGgwC,mBAIHxtB,EAAQxiB,EAAGiwC,cAAgB,GAG3BztB,EAAQxiB,EAAGkwC,gBAAgB1tB,IAAUA,IAG/BA,IAAUA,EAAMpjC,SAAW4gB,EAAGwiB,MAEnC,IADAA,EAAQ,GACHp2B,EAAI,EAAG0S,EAAOkB,EAAGwiB,MAAMpjC,OAAQgN,EAAI0S,IAAQ1S,EAC/Co2B,EAAMxhC,KAAK,CACV3L,MAAO2qB,EAAGwiB,MAAMp2B,GAChB4/C,OAAO,IA2CV,OAtCAhsC,EAAG4uC,OAASpsB,EAIZ0sB,EAAkBC,EAAa3sB,EAAMpjC,OACrCiR,EAAS2P,EAAGmwC,sBAAsBjB,EAAkBrE,GAAOroB,EAAO2sB,GAAc3sB,GAMhFxiB,EAAGoQ,aAGHpQ,EAAGowC,8BACHpwC,EAAGqwC,wBACHrwC,EAAGswC,6BAEHtwC,EAAGuwC,YACHvwC,EAAGwwC,MACHxwC,EAAGywC,WAGHzwC,EAAG0wC,aAAenuB,EAASgC,UAAYhC,EAASgsB,UAAgC,SAApBhsB,EAAS1lB,QAAqBmD,EAAG2wC,UAAUnuB,GAASA,EAE5G0sB,IAEH7+C,EAAS2P,EAAGmwC,sBAAsBnwC,EAAG0wC,eAGtC1wC,EAAGwiB,MAAQnyB,EAIX2P,EAAG4wC,cAII5wC,EAAGmlB,SAMX/U,WAAY,WACX,IAEIygC,EAAYC,EAFZ9wC,EAAKtsB,KACLq9D,EAAgB/wC,EAAG7e,QAAQqhC,MAAM9jB,QAGjCsB,EAAGsb,gBACNu1B,EAAa7wC,EAAG6D,KAChBitC,EAAW9wC,EAAG+D,QAEd8sC,EAAa7wC,EAAG8D,IAChBgtC,EAAW9wC,EAAGgE,OAEd+sC,GAAiBA,GAElB/wC,EAAGsc,YAAcu0B,EACjB7wC,EAAGuc,UAAYu0B,EACf9wC,EAAGgxC,eAAiBD,EACpB/wC,EAAGqZ,QAAUy3B,EAAWD,GAGzBD,YAAa,WACZ1mC,GAAU50B,SAAS5B,KAAKyN,QAAQyvD,YAAa,CAACl9D,QAK/Cg8D,oBAAqB,WACpBxlC,GAAU50B,SAAS5B,KAAKyN,QAAQuuD,oBAAqB,CAACh8D,QAEvDi8D,cAAe,WACd,IAAI3vC,EAAKtsB,KAELssB,EAAGsb,gBAENtb,EAAG3f,MAAQ2f,EAAG4f,SACd5f,EAAG6D,KAAO,EACV7D,EAAG+D,MAAQ/D,EAAG3f,QAEd2f,EAAG1f,OAAS0f,EAAG6f,UAGf7f,EAAG8D,IAAM,EACT9D,EAAGgE,OAAShE,EAAG1f,QAIhB0f,EAAGsnC,YAAc,EACjBtnC,EAAGunC,WAAa,EAChBvnC,EAAGwnC,aAAe,EAClBxnC,EAAGynC,cAAgB,GAEpBmI,mBAAoB,WACnB1lC,GAAU50B,SAAS5B,KAAKyN,QAAQyuD,mBAAoB,CAACl8D,QAItDm8D,iBAAkB,WACjB3lC,GAAU50B,SAAS5B,KAAKyN,QAAQ0uD,iBAAkB,CAACn8D,QAEpDo8D,oBAAqB5lC,GAAUrM,KAC/BkyC,gBAAiB,WAChB7lC,GAAU50B,SAAS5B,KAAKyN,QAAQ4uD,gBAAiB,CAACr8D,QAInDs8D,iBAAkB,WACjB9lC,GAAU50B,SAAS5B,KAAKyN,QAAQ6uD,iBAAkB,CAACt8D,QAEpDu8D,WAAY/lC,GAAUrM,KACtBqyC,gBAAiB,SAAS1tB,GACzB,IAAIxiB,EAAKtsB,KAET,OAAIsqB,GAAQwkB,IAAUA,EAAMpjC,OACpB8qB,GAAU50B,SAAS0qB,EAAG7e,QAAQ+uD,gBAAiB,CAAClwC,EAAIwiB,KAG5DxiB,EAAGwiB,MAAQtY,GAAU50B,SAAS0qB,EAAG7e,QAAQ+uD,gBAAiB,CAAClwC,EAAIA,EAAGwiB,SAAWxiB,EAAGwiB,MACzEA,IAGRyuB,4BAA6B,WAC5B/mC,GAAU50B,SAAS5B,KAAKyN,QAAQ8vD,4BAA6B,CAACv9D,QAE/Dw9D,qBAAsB,WACrB,IAAIlxC,EAAKtsB,KAEL6uC,EAAWviB,EAAG7e,QAAQqhC,MAC1BxiB,EAAGwiB,MAAQxiB,EAAGwiB,MAAMzrC,IAAIwrC,EAAS4uB,cAAgB5uB,EAASjtC,SAAU5B,OAErE09D,2BAA4B,WAC3BlnC,GAAU50B,SAAS5B,KAAKyN,QAAQiwD,2BAA4B,CAAC19D,QAK9D08D,4BAA6B,WAC5BlmC,GAAU50B,SAAS5B,KAAKyN,QAAQivD,4BAA6B,CAAC18D,QAE/D28D,sBAAuB,WACtB,IAOIgB,EAAYC,EAAeC,EAAgB3xB,EAAU4xB,EAAW3xB,EAAW4xB,EAP3EzxC,EAAKtsB,KACLyN,EAAU6e,EAAG7e,QACbohC,EAAWphC,EAAQqhC,MACnBkvB,EAAW1xC,EAAGsZ,WAAWl6B,OACzBgvD,EAAc7rB,EAAS6rB,aAAe,EACtCC,EAAc9rB,EAAS8rB,YACvBsD,EAAgBvD,GAGfpuC,EAAG4xC,eAAiBrvB,EAASgC,SAAW6pB,GAAeC,GAAeqD,GAAY,IAAM1xC,EAAGsb,eAC/Ftb,EAAG2xC,cAAgBvD,GAIpBiD,EAAarxC,EAAG6xC,iBAChBP,EAAgBD,EAAW5F,OAAOprD,MAClCkxD,EAAiBF,EAAW3F,QAAQprD,OAAS+wD,EAAW3F,QAAQrxB,OAIhEuF,EAAWh7B,KAAKkN,IAAIkO,EAAG4f,SAAU5f,EAAGwD,MAAMnjB,MAAQixD,GAClDE,EAAYrwD,EAAQk5B,OAASra,EAAG4f,SAAW8xB,EAAW9xB,GAAY8xB,EAAW,GAGzEJ,EAAgB,EAAIE,IACvBA,EAAY5xB,GAAY8xB,GAAYvwD,EAAQk5B,OAAS,GAAM,IAC3DwF,EAAY7f,EAAG6f,UAAYusB,GAAkBjrD,EAAQm5B,WAClDiI,EAASrL,QAAUq1B,GAAoBprD,EAAQ+sD,YAClDuD,EAAmB7sD,KAAK6P,KAAK68C,EAAgBA,EAAgBC,EAAiBA,GAC9EI,EAAgBznC,GAAU+5B,UAAUr/C,KAAKkN,IACxClN,KAAK0d,KAAK1d,KAAKkN,KAAKu/C,EAAW3F,QAAQprD,OAAS,GAAKkxD,EAAW,IAChE5sD,KAAK0d,KAAK1d,KAAKkN,IAAI+tB,EAAY4xB,EAAkB,IAAM7sD,KAAK0d,KAAKivC,EAAiBE,KAEnFE,EAAgB/sD,KAAKmN,IAAIq8C,EAAaxpD,KAAKkN,IAAIu8C,EAAasD,KAG7D3xC,EAAG2xC,cAAgBA,IAEpBrB,2BAA4B,WAC3BpmC,GAAU50B,SAAS5B,KAAKyN,QAAQmvD,2BAA4B,CAAC58D,QAK9D68D,UAAW,WACVrmC,GAAU50B,SAAS5B,KAAKyN,QAAQovD,UAAW,CAAC78D,QAE7C88D,IAAK,WACJ,IAAIxwC,EAAKtsB,KAELyxC,EAAUnlB,EAAGmlB,QAAU,CAC1B9kC,MAAO,EACPC,OAAQ,GAGLkjB,EAAQxD,EAAGwD,MACXsc,EAAO9f,EAAG7e,QACVohC,EAAWzC,EAAK0C,MAChBsvB,EAAiBhyB,EAAKouB,WACtB6D,EAAejyB,EAAKxF,UACpBiK,EAAUvkB,EAAG4xC,aACbI,EAA6B,WAAlBlyB,EAAK5C,SAChB5B,EAAetb,EAAGsb,eAiBtB,GAdIA,EACH6J,EAAQ9kC,MAAQ2f,EAAG4f,SACT2E,IACVY,EAAQ9kC,MAAQ+rD,GAAkB2F,GAAgBxF,GAAoBuF,IAIlEx2B,EAEMiJ,IACVY,EAAQ7kC,OAAS8rD,GAAkB2F,GAAgBxF,GAAoBuF,IAFvE3sB,EAAQ7kC,OAAS0f,EAAG6f,UAMjB0C,EAASgC,SAAWA,EAAS,CAChC,IAAI+mB,EAAYqB,GAAqBpqB,GACjC8uB,EAAarxC,EAAG6xC,iBAChBI,EAAiBZ,EAAWlF,MAC5B+F,EAAgBb,EAAWv1B,KAC3BgwB,EAAkBuF,EAAW5F,OAC7BM,EAAmBsF,EAAW3F,QAC9ByG,EAAyC,GAA7B7G,EAAUW,MAAMpkC,WAC5BuqC,EAAc7vB,EAASrL,QAE3B,GAAIoE,EAAc,CAEjB,IAAI+2B,EAAiC,IAArBryC,EAAG2xC,cACfW,EAAepoC,GAAU85B,UAAUhkC,EAAG2xC,eACtCY,EAAc3tD,KAAK8P,IAAI49C,GACvBE,EAAc5tD,KAAK+P,IAAI29C,GAEvBG,EAAcD,EAAc1G,EAAgBzrD,MAC7CkyD,GAAexG,EAAiBzrD,QAAU+xD,EAAYtG,EAAiB1xB,OAAS,KAC/Eg4B,EAAY,EAAIF,GAEpBhtB,EAAQ7kC,OAASsE,KAAKkN,IAAIkO,EAAG6f,UAAWsF,EAAQ7kC,OAASmyD,EAAcL,GAEvE,IAEI9K,EAAaE,EAFbkL,EAAa1yC,EAAGuZ,gBAAgB,GAAKvZ,EAAG6D,KACxC8uC,EAAc3yC,EAAG+D,MAAQ/D,EAAGuZ,gBAAgBvZ,EAAGsZ,WAAWl6B,OAAS,GAKnEizD,GACH/K,EAAc0K,EACbO,EAAcN,EAAe5xD,MAAQmyD,EAAcP,EAAe53B,OAClEm4B,GAAeP,EAAe3xD,OAAS2xD,EAAe53B,QACvDmtB,EAAewK,EACdQ,GAAeN,EAAc5xD,OAAS4xD,EAAc73B,QACpDk4B,EAAcL,EAAc7xD,MAAQmyD,EAAcN,EAAc73B,SAEjEitB,EAAc2K,EAAe5xD,MAAQ,EACrCmnD,EAAe0K,EAAc7xD,MAAQ,GAKtC2f,EAAGsnC,YAAc1iD,KAAKmN,KAAKu1C,EAAcoL,GAAc1yC,EAAG3f,OAAS2f,EAAG3f,MAAQqyD,GAAa,GAAK,EAChG1yC,EAAGwnC,aAAe5iD,KAAKmN,KAAKy1C,EAAemL,GAAe3yC,EAAG3f,OAAS2f,EAAG3f,MAAQsyD,GAAc,GAAK,MAC9F,CAGN,IAAIC,EAAarwB,EAAS+rB,OAAS,EAGlCxC,EAAgBzrD,MAAQ+xD,EAAcD,EAEvChtB,EAAQ9kC,MAAQuE,KAAKkN,IAAIkO,EAAG4f,SAAUuF,EAAQ9kC,MAAQuyD,GAEtD5yC,EAAGunC,WAAa0K,EAAe3xD,OAAS,EACxC0f,EAAGynC,cAAgByK,EAAc5xD,OAAS,GAI5C0f,EAAG6yC,gBAECv3B,GACHtb,EAAG3f,MAAQ2f,EAAGqZ,QAAU7V,EAAMnjB,MAAQ2f,EAAGivC,QAAQprC,KAAO7D,EAAGivC,QAAQlrC,MACnE/D,EAAG1f,OAAS6kC,EAAQ7kC,SAEpB0f,EAAG3f,MAAQ8kC,EAAQ9kC,MACnB2f,EAAG1f,OAAS0f,EAAGqZ,QAAU7V,EAAMljB,OAAS0f,EAAGivC,QAAQnrC,IAAM9D,EAAGivC,QAAQjrC,SAQtE6uC,cAAe,WACd,IAAI7yC,EAAKtsB,KACLssB,EAAGivC,UACNjvC,EAAGivC,QAAQprC,KAAOjf,KAAKmN,IAAIiO,EAAGsnC,YAAatnC,EAAGivC,QAAQprC,MACtD7D,EAAGivC,QAAQnrC,IAAMlf,KAAKmN,IAAIiO,EAAGunC,WAAYvnC,EAAGivC,QAAQnrC,KACpD9D,EAAGivC,QAAQlrC,MAAQnf,KAAKmN,IAAIiO,EAAGwnC,aAAcxnC,EAAGivC,QAAQlrC,OACxD/D,EAAGivC,QAAQjrC,OAASpf,KAAKmN,IAAIiO,EAAGynC,cAAeznC,EAAGivC,QAAQjrC,UAI5DysC,SAAU,WACTvmC,GAAU50B,SAAS5B,KAAKyN,QAAQsvD,SAAU,CAAC/8D,QAI5C4nC,aAAc,WACb,IAAI8M,EAAM10C,KAAKyN,QAAQ+7B,SACvB,MAAe,QAARkL,GAAyB,WAARA,GAEzB0qB,YAAa,WACZ,OAAOp/D,KAAKyN,QAAQ2nC,WAIrBnF,cAAe,SAASovB,GAEvB,GAAIh1C,GAAcg1C,GACjB,OAAOl1B,IAGR,IAAyB,kBAAbk1B,GAAyBA,aAAoBvyD,UAAY2d,SAAS40C,GAC7E,OAAOl1B,IAIR,GAAIk1B,EACH,GAAIr/D,KAAK4nC,gBACR,QAAmBzjC,IAAfk7D,EAASzhD,EACZ,OAAO5d,KAAKiwC,cAAcovB,EAASzhD,QAE9B,QAAmBzZ,IAAfk7D,EAASxhD,EACnB,OAAO7d,KAAKiwC,cAAcovB,EAASxhD,GAKrC,OAAOwhD,GAGR5C,sBAAuB,SAAS3tB,GAC/B,IACInyB,EAAQjE,EAAG0S,EADXkB,EAAKtsB,KAiBT,IAdAssB,EAAGwiB,MAAQA,EAAMzrC,KAAI,SAAS02D,GAC7B,OAAOA,EAAKp4D,SAGb2qB,EAAGixC,8BAKH5gD,EAAS2P,EAAGkxC,qBAAqB1uB,IAAUxiB,EAAGwiB,MAE9CxiB,EAAGoxC,6BAGEhlD,EAAI,EAAG0S,EAAO0jB,EAAMpjC,OAAQgN,EAAI0S,IAAQ1S,EAC5Co2B,EAAMp2B,GAAGvK,MAAQwO,EAAOjE,GAGzB,OAAOiE,GAMRwhD,eAAgB,WACf,IAAI7xC,EAAKtsB,KACL29D,EAAarxC,EAAGovC,YAOpB,OALKiC,IACJrxC,EAAGovC,YAAciC,EAAahG,GAAkBrrC,EAAGyD,IAAKkpC,GAAqB3sC,EAAG7e,QAAQqhC,OAAQxiB,EAAGsZ,WAAYtZ,EAAGuvC,kBAClHvvC,EAAGsvC,kBAAoB+B,EAAW5F,OAAOprD,OAGnCgxD,GAMR10B,YAAa,SAAStnC,GACrB,IAAIi1B,EAAO6P,EAAKroB,EAAKC,EAerB,OAbIiM,GAAQ3oB,IACXi1B,GAAS52B,KAAKiwC,cAActuC,EAAM,IAClC8kC,GAAOzmC,KAAKiwC,cAActuC,EAAM,IAChCyc,EAAMlN,KAAKkN,IAAIwY,EAAO6P,GACtBpoB,EAAMnN,KAAKmN,IAAIuY,EAAO6P,KAEtB9kC,GAAS3B,KAAKiwC,cAActuC,GAC5Bi1B,OAAQzyB,EACRsiC,EAAM9kC,EACNyc,EAAMzc,EACN0c,EAAM1c,GAGA,CACNyc,IAAKA,EACLC,IAAKA,EACLuY,MAAOA,EACP6P,IAAKA,IAOP64B,eAAgB,SAASD,GACxB,IAAI3gD,EAAI1e,KAAKipC,YAAYo2B,GACzB,YAAgBl7D,IAAZua,EAAEkY,MACE,IAAMlY,EAAEkY,MAAQ,KAAOlY,EAAE+nB,IAAM,KAG/BzmC,KAAKiwC,cAAcovB,IAQ5B9c,iBAAkB/rB,GAAUrM,KAS5Bwe,iBAAkBnS,GAAUrM,KAO5Bo1C,iBAAkB/oC,GAAUrM,KAM5B0b,gBAAiB,SAAS1jC,GACzB,IAAImqB,EAAKtsB,KACL2mC,EAASra,EAAG7e,QAAQk5B,OACpBq3B,EAAW1xC,EAAG4uC,OAAOxvD,OACrBoyD,EAAY,EAAI5sD,KAAKmN,IAAI2/C,GAAYr3B,EAAS,EAAI,GAAI,GAE1D,OAAOxkC,EAAQ,GAAKA,EAAQ67D,EAAW,EACpC,KACA1xC,EAAG4d,mBAAmB/nC,EAAQ27D,GAAan3B,EAASm3B,EAAY,EAAI,KAOxE5zB,mBAAoB,SAASs1B,GAC5B,IAAIlzC,EAAKtsB,KAMT,OAJIssB,EAAGgxC,iBACNkC,EAAU,EAAIA,GAGRlzC,EAAGsc,YAAc42B,EAAUlzC,EAAGqZ,SAGtC85B,mBAAoB,SAASvO,GAC5B,IAAIsO,GAAWtO,EAAQlxD,KAAK4oC,aAAe5oC,KAAK2lC,QAChD,OAAO3lC,KAAKs9D,eAAiB,EAAIkC,EAAUA,GAO5C73B,aAAc,WACb,OAAO3nC,KAAK2oC,iBAAiB3oC,KAAK0/D,iBAGnCA,aAAc,WACb,IAAIpzC,EAAKtsB,KACLoe,EAAMkO,EAAGlO,IACTC,EAAMiO,EAAGjO,IAEb,OAAOiO,EAAG0kB,YAAc,EACvB5yB,EAAM,GAAKC,EAAM,EAAIA,EACrBD,EAAM,GAAKC,EAAM,EAAID,EACrB,GAOF6+C,UAAW,SAASnuB,GACnB,IAQIp2B,EAAG0S,EAAMwuC,EAAS+F,EARlBrzC,EAAKtsB,KACL6uC,EAAWviB,EAAG7e,QAAQqhC,MACtByqB,EAAajtC,EAAGqZ,QAChB6zB,EAAa3qB,EAAS+wB,eAAiBrG,EAAajtC,EAAGuzC,YAAc,EACrEvG,EAAezqB,EAASypB,MAAM9Y,QAAUqa,GAAgB/qB,GAAS,GACjEgxB,EAAkBxG,EAAa5tD,OAC/B+sD,EAAQa,EAAa,GACrBlxB,EAAOkxB,EAAawG,EAAkB,GAI1C,GAAIA,EAAkBtG,EAErB,OADAM,GAAWhrB,EAAOwqB,EAAcwG,EAAkBtG,GAC3CN,GAAWpqB,GAKnB,GAFA8qB,EAAUP,GAAiBC,EAAcxqB,EAAOyqB,EAAYC,GAExDsG,EAAkB,EAAG,CACxB,IAAKpnD,EAAI,EAAG0S,EAAO00C,EAAkB,EAAGpnD,EAAI0S,EAAM1S,IACjD+pB,GAAKqM,EAAO8qB,EAASN,EAAa5gD,GAAI4gD,EAAa5gD,EAAI,IAKxD,OAHAinD,EAAkBG,EAAkB,GAAK13B,EAAOqwB,IAAUqH,EAAkB,GAAK,KACjFr9B,GAAKqM,EAAO8qB,EAASpjC,GAAUnM,cAAcs1C,GAAmB,EAAIlH,EAAQkH,EAAiBlH,GAC7Fh2B,GAAKqM,EAAO8qB,EAASxxB,EAAM5R,GAAUnM,cAAcs1C,GAAmB7wB,EAAMpjC,OAAS08B,EAAOu3B,GACrFzG,GAAWpqB,GAGnB,OADArM,GAAKqM,EAAO8qB,GACLV,GAAWpqB,IAMnB+wB,UAAW,WACV,IAAIvzC,EAAKtsB,KACL+/D,EAAczzC,EAAG7e,QAAQqhC,MAGzBkxB,EAAMxpC,GAAU85B,UAAUhkC,EAAG2xC,eAC7Bj9C,EAAM9P,KAAK8xB,IAAI9xB,KAAK8P,IAAIg/C,IACxB/+C,EAAM/P,KAAK8xB,IAAI9xB,KAAK+P,IAAI++C,IAExBrC,EAAarxC,EAAG6xC,iBAChB36B,EAAUu8B,EAAYjF,iBAAmB,EACzCh8C,EAAI6+C,EAAaA,EAAW5F,OAAOprD,MAAQ62B,EAAU,EACrD1lB,EAAI6/C,EAAaA,EAAW3F,QAAQprD,OAAS42B,EAAU,EAG3D,OAAOlX,EAAGsb,eACP9pB,EAAIkD,EAAMlC,EAAImC,EAAMnC,EAAIkC,EAAMlD,EAAImD,EAClCnD,EAAImD,EAAMnC,EAAIkC,EAAMlD,EAAIkD,EAAMlC,EAAImC,GAMtCi9C,WAAY,WACX,IAGIxlD,EAAG0S,EAAMwP,EAHTtO,EAAKtsB,KACL8vB,EAAQxD,EAAGwD,MACX+gB,EAAUvkB,EAAG7e,QAAQojC,QAGzB,GAAgB,SAAZA,EACH,QAASA,EAIV,IAAKn4B,EAAI,EAAG0S,EAAO0E,EAAMrtB,KAAK44B,SAAS3vB,OAAQgN,EAAI0S,IAAQ1S,EAC1D,GAAIoX,EAAMmc,iBAAiBvzB,KAC1BkiB,EAAO9K,EAAMwL,eAAe5iB,GACxBkiB,EAAKK,UAAY3O,EAAG5f,IAAMkuB,EAAKO,UAAY7O,EAAG5f,IACjD,OAAO,EAKV,OAAO,GAMRuzD,sBAAuB,SAASx8B,GAC/B,IAkBIy8B,EAAaxnD,EAAGqhD,EAAMtC,EAAW0I,EACjCC,EAAKC,EAAKC,EAAKC,EAAK18B,EAAIC,EAAIpjB,EAAID,EAAIyf,EAAWsgC,EAAW5+B,EAAYC,EAnBtEvV,EAAKtsB,KACL8vB,EAAQxD,EAAGwD,MACXriB,EAAU6e,EAAG7e,QACbm5B,EAAYn5B,EAAQm5B,UACpB4C,EAAW/7B,EAAQ+7B,SACnB3C,EAAkBD,EAAUC,gBAC5Be,EAAetb,EAAGsb,eAClBkH,EAAQxiB,EAAG0wC,aACXyD,EAAc3xB,EAAMpjC,QAAUm7B,EAAkB,EAAI,GAEpD65B,EAAKhI,GAAkB9xB,GACvBsN,EAAQ,GACRysB,EAAY/5B,EAAU5G,WAAapV,GAAsBgc,EAAU1G,UAAW,EAAG,GAAK,EACtF0gC,EAAgBD,EAAY,EAC5BE,EAAarqC,GAAUy6B,YACvB6P,EAAmB,SAAS5P,GAC/B,OAAO2P,EAAW/wC,EAAOohC,EAAOyP,IA+BjC,IA1BiB,QAAbn3B,GACH02B,EAAcY,EAAiBx0C,EAAGgE,QAClC+vC,EAAM/zC,EAAGgE,OAASowC,EAClBH,EAAML,EAAcU,EACpB98B,EAAKg9B,EAAiBr9B,EAAUrT,KAAOwwC,EACvCngD,EAAKgjB,EAAUnT,QACQ,WAAbkZ,GACV02B,EAAcY,EAAiBx0C,EAAG8D,KAClC0T,EAAKL,EAAUrT,IACf3P,EAAKqgD,EAAiBr9B,EAAUnT,QAAUswC,EAC1CP,EAAMH,EAAcU,EACpBL,EAAMj0C,EAAG8D,IAAMswC,GACQ,SAAbl3B,GACV02B,EAAcY,EAAiBx0C,EAAG+D,OAClC+vC,EAAM9zC,EAAG+D,MAAQqwC,EACjBJ,EAAMJ,EAAcU,EACpB/8B,EAAKi9B,EAAiBr9B,EAAUtT,MAAQywC,EACxClgD,EAAK+iB,EAAUpT,QAEf6vC,EAAcY,EAAiBx0C,EAAG6D,MAClC0T,EAAKJ,EAAUtT,KACfzP,EAAKogD,EAAiBr9B,EAAUpT,OAASuwC,EACzCR,EAAMF,EAAcU,EACpBN,EAAMh0C,EAAG6D,KAAOuwC,GAGZhoD,EAAI,EAAGA,EAAI+nD,IAAe/nD,EAC9BqhD,EAAOjrB,EAAMp2B,IAAM,GAGf2R,GAAc0vC,EAAK5rD,QAAUuK,EAAIo2B,EAAMpjC,SAIvCgN,IAAM4T,EAAG2uC,eAAiBxtD,EAAQk5B,SAAWE,GAEhD3G,EAAY0G,EAAUwzB,cACtBoG,EAAY55B,EAAUyzB,cACtBz4B,EAAagF,EAAU0zB,oBAAsB,GAC7Cz4B,EAAmB+E,EAAU2zB,0BAA4B,IAEzDr6B,EAAYtV,GAAsBgc,EAAU1G,UAAWxnB,EAAG,GAC1D8nD,EAAY51C,GAAsBgc,EAAUvlB,MAAO3I,EAAG,mBACtDkpB,EAAagF,EAAUhF,YAAc,GACrCC,EAAmB+E,EAAU/E,kBAAoB,GAGlD41B,EAAYF,GAAoBjrC,EAAIytC,EAAK79B,QAAUxjB,EAAGmuB,QAGpC1iC,IAAdszD,IAIJ0I,EAAmBU,EAAW/wC,EAAO2nC,EAAWv3B,GAE5C0H,EACHw4B,EAAME,EAAMz8B,EAAKnjB,EAAKy/C,EAEtBE,EAAME,EAAMz8B,EAAKrjB,EAAK0/C,EAGvBjsB,EAAM5mC,KAAK,CACV8yD,IAAKA,EACLC,IAAKA,EACLC,IAAKA,EACLC,IAAKA,EACL18B,GAAIA,EACJC,GAAIA,EACJpjB,GAAIA,EACJD,GAAIA,EACJ9T,MAAOuzB,EACP7e,MAAOm/C,EACP5+B,WAAYA,EACZC,iBAAkBA,MAOpB,OAHAqS,EAAMusB,YAAcA,EACpBvsB,EAAMgsB,YAAcA,EAEbhsB,GAMR6sB,mBAAoB,WACnB,IAYIroD,EAAG0S,EAAM2uC,EAAM5rD,EAAOyP,EAAGC,EAAGyX,EAAW47B,EAAOz9B,EAAMU,EAAY6sC,EAAWC,EAZ3E30C,EAAKtsB,KACLyN,EAAU6e,EAAG7e,QACbsyD,EAActyD,EAAQqhC,MACtBtF,EAAW/7B,EAAQ+7B,SACnB03B,EAAanB,EAAYnF,OACzBhzB,EAAetb,EAAGsb,eAClBkH,EAAQxiB,EAAG0wC,aACXmE,EAAQlI,GAAqB8G,GAC7BrB,EAAcqB,EAAYv8B,QAC1Bk9B,EAAKhI,GAAkBjrD,EAAQm5B,WAC/BhW,GAAY4F,GAAU85B,UAAUhkC,EAAG2xC,eACnC/pB,EAAQ,GAiBZ,IAdiB,QAAb1K,GACH3rB,EAAIyO,EAAGgE,OAASowC,EAAKhC,EACrBppC,EAAa1E,EAAsB,OAAX,UACD,WAAb4Y,GACV3rB,EAAIyO,EAAG8D,IAAMswC,EAAKhC,EAClBppC,EAAa1E,EAAsB,QAAX,UACD,SAAb4Y,GACV5rB,EAAI0O,EAAG+D,OAAS6wC,EAAa,EAAIR,GAAMhC,EACvCppC,EAAY4rC,EAAa,OAAS,UAElCtjD,EAAI0O,EAAG6D,MAAQ+wC,EAAa,EAAIR,GAAMhC,EACtCppC,EAAY4rC,EAAa,QAAU,QAG/BxoD,EAAI,EAAG0S,EAAO0jB,EAAMpjC,OAAQgN,EAAI0S,IAAQ1S,EAC5CqhD,EAAOjrB,EAAMp2B,GACbvK,EAAQ4rD,EAAK5rD,MAGTkc,GAAclc,KAIlB+iD,EAAQ5kC,EAAGuZ,gBAAgBk0B,EAAK79B,QAAUxjB,GAAKqnD,EAAYhF,YAC3DtnC,EAAOsmC,EAAKzB,MAAQ6I,EAAM7I,MAAQ6I,EAAM5I,MACxCpkC,EAAaV,EAAKU,WAClB6sC,EAAY12C,GAAQnc,GAASA,EAAMzC,OAAS,EAExCk8B,GACHhqB,EAAIszC,EACJ+P,EAA0B,QAAbz3B,IACP5Y,EAAiB,EAAN,IAAWowC,GAAa7sC,GACpCvD,EAAiB,EAAN,IAAWuD,IAE3BtW,EAAIqzC,EACJ+P,GAAc,EAAID,GAAa7sC,EAAa,GAG7C+f,EAAM5mC,KAAK,CACVsQ,EAAGA,EACHC,EAAGA,EACH+S,SAAUA,EACVziB,MAAOA,EACPslB,KAAMA,EACNwtC,WAAYA,EACZ3rC,UAAWA,KAIb,OAAO4e,GAMRktB,UAAW,SAAS39B,GACnB,IAAInX,EAAKtsB,KACL4mC,EAAYta,EAAG7e,QAAQm5B,UAE3B,GAAKA,EAAUiK,QAAf,CAIA,IAKIlkC,EAAO0U,EAAO3I,EAAG0S,EAAMtlB,EALvBiqB,EAAMzD,EAAGyD,IACTD,EAAQxD,EAAGwD,MACX+wC,EAAarqC,GAAUy6B,YACvB0P,EAAY/5B,EAAU5G,WAAapV,GAAsBgc,EAAU1G,UAAW,EAAG,GAAK,EACtFgU,EAAQ5nB,EAAGwvC,iBAAmBxvC,EAAGwvC,eAAiBxvC,EAAG2zC,sBAAsBx8B,IAG/E,IAAK/qB,EAAI,EAAG0S,EAAO8oB,EAAMxoC,OAAQgN,EAAI0S,IAAQ1S,EAC5C5S,EAAOouC,EAAMx7B,GACb/L,EAAQ7G,EAAK6G,MACb0U,EAAQvb,EAAKub,MAET1U,GAAS0U,IACZ0O,EAAImB,OACJnB,EAAImQ,UAAYvzB,EAChBojB,EAAIyR,YAAcngB,EACd0O,EAAI4S,cACP5S,EAAI4S,YAAY78B,EAAK87B,YACrB7R,EAAI6S,eAAiB98B,EAAK+7B,kBAG3B9R,EAAIuB,YAEAsV,EAAU+xB,YACb5oC,EAAIQ,OAAOzqB,EAAKs6D,IAAKt6D,EAAKu6D,KAC1BtwC,EAAIwB,OAAOzrB,EAAKw6D,IAAKx6D,EAAKy6D,MAGvB35B,EAAUuzB,kBACbpqC,EAAIQ,OAAOzqB,EAAK+9B,GAAI/9B,EAAKg+B,IACzB/T,EAAIwB,OAAOzrB,EAAK4a,GAAI5a,EAAK2a,KAG1BsP,EAAI2B,SACJ3B,EAAIsB,WAIN,GAAIsvC,EAAW,CAEd,IAGI98B,EAAInjB,EAAIojB,EAAIrjB,EAHZ4gD,EAAiBV,EACjBW,EAAgB12C,GAAsBgc,EAAU1G,UAAWgU,EAAMusB,YAAc,EAAG,GAClFP,EAAchsB,EAAMgsB,YAGpB5zC,EAAGsb,gBACN/D,EAAKg9B,EAAW/wC,EAAOxD,EAAG6D,KAAMkxC,GAAkBA,EAAiB,EACnE3gD,EAAKmgD,EAAW/wC,EAAOxD,EAAG+D,MAAOixC,GAAiBA,EAAgB,EAClEx9B,EAAKrjB,EAAKy/C,IAEVp8B,EAAK+8B,EAAW/wC,EAAOxD,EAAG8D,IAAKixC,GAAkBA,EAAiB,EAClE5gD,EAAKogD,EAAW/wC,EAAOxD,EAAGgE,OAAQgxC,GAAiBA,EAAgB,EACnEz9B,EAAKnjB,EAAKw/C,GAGXnwC,EAAImQ,UAAYygC,EAChB5wC,EAAIyR,YAAc5W,GAAsBgc,EAAUvlB,MAAO,GACzD0O,EAAIuB,YACJvB,EAAIQ,OAAOsT,EAAIC,GACf/T,EAAIwB,OAAO7Q,EAAID,GACfsP,EAAI2B,YAON6vC,YAAa,WACZ,IAAIj1C,EAAKtsB,KACL+/D,EAAczzC,EAAG7e,QAAQqhC,MAE7B,GAAKixB,EAAYlvB,QAAjB,CAIA,IAEIn4B,EAAGszB,EAAG5gB,EAAM8nB,EAAMptC,EAAM+xD,EAAU1pD,EAAO0P,EAFzCkS,EAAMzD,EAAGyD,IACTmkB,EAAQ5nB,EAAGyvC,cAAgBzvC,EAAGyvC,YAAczvC,EAAGy0C,sBAGnD,IAAKroD,EAAI,EAAG0S,EAAO8oB,EAAMxoC,OAAQgN,EAAI0S,IAAQ1S,EAAG,CAe/C,GAdA5S,EAAOouC,EAAMx7B,GACbm/C,EAAW/xD,EAAK2tB,KAGhB1D,EAAImB,OACJnB,EAAIoB,UAAUrrB,EAAK8X,EAAG9X,EAAK+X,GAC3BkS,EAAIrH,OAAO5iB,EAAK8qB,UAChBb,EAAI0D,KAAOokC,EAASjiD,OACpBma,EAAIwR,UAAYs2B,EAASx2C,MACzB0O,EAAI23B,aAAe,SACnB33B,EAAIuF,UAAYxvB,EAAKwvB,UAErBnnB,EAAQrI,EAAKqI,MACb0P,EAAI/X,EAAKm7D,WACL32C,GAAQnc,GACX,IAAK69B,EAAI,EAAGkH,EAAO/kC,EAAMzC,OAAQsgC,EAAIkH,IAAQlH,EAE5Cjc,EAAI43B,SAAS,GAAKx5C,EAAM69B,GAAI,EAAGnuB,GAC/BA,GAAKg6C,EAAS1jC,gBAGfpE,EAAI43B,SAASx5C,EAAO,EAAG0P,GAExBkS,EAAIsB,aAONmwC,WAAY,WACX,IAAIl1C,EAAKtsB,KACL+vB,EAAMzD,EAAGyD,IACTtiB,EAAU6e,EAAG7e,QACb+sD,EAAa/sD,EAAQ+sD,WAEzB,GAAKA,EAAW3pB,QAAhB,CAIA,IAMI4wB,EAAaC,EANbC,EAAsBzK,GAAiBsD,EAAWxB,UAAWzlC,EAAcxjB,OAAOkjB,kBAClF2uC,EAAiBprC,GAAU/oB,QAAQsmB,WAAWymC,GAC9CqH,EAAoBrrC,GAAU/oB,QAAQqmB,UAAU0mC,EAAWh3B,SAC3Ds+B,EAAiBF,EAAeztC,WAAa,EAC7CqV,EAAW/7B,EAAQ+7B,SACnB5Y,EAAW,EAGf,GAAItE,EAAGsb,eACN65B,EAAcn1C,EAAG6D,KAAO7D,EAAG3f,MAAQ,EACnC+0D,EAA2B,WAAbl4B,EACXld,EAAGgE,OAASwxC,EAAiBD,EAAkBvxC,OAC/ChE,EAAG8D,IAAM0xC,EAAiBD,EAAkBzxC,QACzC,CACN,IAAI2xC,EAAsB,SAAbv4B,EACbi4B,EAAcM,EACXz1C,EAAG6D,KAAO2xC,EAAiBD,EAAkBzxC,IAC7C9D,EAAG+D,MAAQyxC,EAAiBD,EAAkBzxC,IACjDsxC,EAAcp1C,EAAG8D,IAAM9D,EAAG1f,OAAS,EACnCgkB,EAAWmxC,GAAU,GAAM7wD,KAAK4P,GAAK,GAAM5P,KAAK4P,GAGjDiP,EAAImB,OACJnB,EAAIoB,UAAUswC,EAAaC,GAC3B3xC,EAAIrH,OAAOkI,GACXb,EAAIuF,UAAY,SAChBvF,EAAI23B,aAAe,SACnB33B,EAAIwR,UAAYogC,EAChB5xC,EAAI0D,KAAOmuC,EAAehsD,OAC1Bma,EAAI43B,SAAS6S,EAAWC,YAAa,EAAG,GACxC1qC,EAAIsB,YAGL2L,KAAM,SAASyG,GACd,IAAInX,EAAKtsB,KAEJssB,EAAG4xC,eAIR5xC,EAAG80C,UAAU39B,GACbnX,EAAGk1C,aACHl1C,EAAGi1C,gBAMJnqB,QAAS,WACR,IAAI9qB,EAAKtsB,KACLosC,EAAO9f,EAAG7e,QACVu0D,EAAK51B,EAAK0C,OAAS1C,EAAK0C,MAAMxvB,GAAK,EACnC2iD,EAAK71B,EAAKxF,WAAawF,EAAKxF,UAAUtnB,GAAK,EAE/C,OAAKgN,EAAG4xC,cAAgB8D,IAAOC,GAAM31C,EAAG0Q,OAAS1Q,EAAG41C,MAU7C,CAAC,CACP5iD,EAAG2iD,EACHjlC,KAAM,WACL1Q,EAAG80C,UAAU9lD,MAAMgR,EAAIrT,WACvBqT,EAAGk1C,WAAWlmD,MAAMgR,EAAIrT,aAEvB,CACFqG,EAAG0iD,EACHhlC,KAAM,WACL1Q,EAAGi1C,YAAYjmD,MAAMgR,EAAIrT,cAjBnB,CAAC,CACPqG,EAAG0iD,EACHhlC,KAAM,WACL1Q,EAAG0Q,KAAK1hB,MAAMgR,EAAIrT,eAsBtBqvB,yBAA0B,SAASpmC,GAClC,IAAIoqB,EAAKtsB,KACL4nC,EAAetb,EAAGsb,eACtB,OAAOtb,EAAGwD,MAAMogB,gCACdI,QAAO,SAAS1V,GAChB,QAAS14B,GAAQ04B,EAAK14B,OAASA,KAC1B0lC,EAAehN,EAAKK,UAAY3O,EAAG5f,GAAKkuB,EAAKO,UAAY7O,EAAG5f,UAKrEsuD,GAAMvgD,UAAUynD,MAAQlH,GAAMvgD,UAAUuiB,KAExC,IAAImlC,GAAanH,GAEboH,GAAkB5rC,GAAUnM,cAE5Bg4C,GAAgB,CACnB74B,SAAU,UAGP84B,GAAiBH,GAAWl2C,OAAO,CACtCmwC,oBAAqB,WACpB,IAOIjjC,EAPA7M,EAAKtsB,KACL2c,EAAS2P,EAAG6uC,aACZoH,EAAYj2C,EAAG7e,QAAQqhC,MACvB1wB,EAAMmkD,EAAUnkD,IAChBC,EAAMkkD,EAAUlkD,IAChBmkD,EAAW,EACXvuD,EAAW0I,EAAOjR,OAAS,OAGnBvH,IAARia,IAEH+a,EAAYxc,EAAOsN,QAAQ7L,GACvB+a,GAAa,IAChBqpC,EAAWrpC,SAIDh1B,IAARka,IAEH8a,EAAYxc,EAAOsN,QAAQ5L,GACvB8a,GAAa,IAChBllB,EAAWklB,IAIb7M,EAAGk2C,SAAWA,EACdl2C,EAAGrY,SAAWA,EACdqY,EAAGlO,IAAMzB,EAAO6lD,GAChBl2C,EAAGjO,IAAM1B,EAAO1I,IAGjBsoD,WAAY,WACX,IAAIjwC,EAAKtsB,KACL2c,EAAS2P,EAAG6uC,aACZqH,EAAWl2C,EAAGk2C,SACdvuD,EAAWqY,EAAGrY,SAGlBqY,EAAGwiB,MAAsB,IAAb0zB,GAAkBvuD,IAAa0I,EAAOjR,OAAS,EAAKiR,EAASA,EAAOrR,MAAMk3D,EAAUvuD,EAAW,IAG5GsuC,iBAAkB,SAASpgD,EAAOg4B,GACjC,IAAI7N,EAAKtsB,KACL8vB,EAAQxD,EAAGwD,MAEf,OAAIA,EAAMwL,eAAenB,GAAcmR,WAAW7P,qBAAuBnP,EAAG5f,GACpE4f,EAAG2jB,cAAcngB,EAAMrtB,KAAK44B,SAASlB,GAAc13B,KAAKN,IAGzDmqB,EAAG6uC,aAAah5D,IAGxBu6B,WAAY,WACX,IAAIpQ,EAAKtsB,KACL2mC,EAASra,EAAG7e,QAAQk5B,OACpBmI,EAAQxiB,EAAGwiB,MAEfqzB,GAAW1nD,UAAUiiB,WAAWljB,KAAK8S,GAEhCA,EAAGsb,iBAEPtb,EAAGgxC,gBAAkBhxC,EAAGgxC,gBAGpBxuB,IAILxiB,EAAGm2C,YAAcn2C,EAAGk2C,UAAY77B,EAAS,GAAM,GAC/Cra,EAAGo2C,YAAcxxD,KAAKmN,IAAIywB,EAAMpjC,QAAUi7B,EAAS,EAAI,GAAI,KAI5DgC,iBAAkB,SAAShnC,EAAOQ,EAAOg4B,GACxC,IACIwoC,EAAehmD,EAAQwhC,EADvB7xB,EAAKtsB,KAqBT,OAlBKoiE,GAAgBjgE,IAAWigE,GAAgBjoC,KAC/Cx4B,EAAQ2qB,EAAGwD,MAAMrtB,KAAK44B,SAASlB,GAAc13B,KAAKN,IAK9CigE,GAAgBzgE,KACpBghE,EAAgBr2C,EAAGsb,eAAiBjmC,EAAMic,EAAIjc,EAAMkc,SAE/B1Z,IAAlBw+D,QAA0Cx+D,IAAVxC,GAAuBujB,MAAM/iB,MAChEwa,EAAS2P,EAAG6uC,aACZx5D,EAAQ60B,GAAU9L,eAAei4C,EAAehhE,GAChDw8C,EAAMxhC,EAAOsN,QAAQtoB,GACrBQ,GAAiB,IAATg8C,EAAaA,EAAMh8C,EACvB+iB,MAAM/iB,KACTA,EAAQR,IAGH2qB,EAAG4d,oBAAoB/nC,EAAQmqB,EAAGm2C,aAAen2C,EAAGo2C,cAG5D78B,gBAAiB,SAAS1jC,GACzB,IAAI2sC,EAAQ9uC,KAAK8uC,MACjB,OAAO3sC,EAAQ,GAAKA,EAAQ2sC,EAAMpjC,OAAS,EACxC,KACA1L,KAAK2oC,iBAAiBmG,EAAM3sC,GAAQA,EAAQnC,KAAKwiE,WAGrDjD,iBAAkB,SAASrO,GAC1B,IAAI5kC,EAAKtsB,KACL2B,EAAQuP,KAAKiQ,MAAMmL,EAAGm2C,YAAcn2C,EAAGmzC,mBAAmBvO,GAAS5kC,EAAGo2C,aAC1E,OAAOxxD,KAAKkN,IAAIlN,KAAKmN,IAAI1c,EAAO,GAAI2qB,EAAGwiB,MAAMpjC,OAAS,IAGvDi8B,aAAc,WACb,OAAO3nC,KAAKswB,UAKVsyC,GAAYP,GAChBC,GAAeM,UAAYA,GAE3B,IAAIz4C,GAAOqM,GAAUrM,KACjB04C,GAAkBrsC,GAAUnM,cAQhC,SAASy4C,GAAcC,EAAmBC,GACzC,IAeItJ,EAAQuJ,EAASC,EAASC,EAf1Br0B,EAAQ,GAKRs0B,EAAc,MACdC,EAAWN,EAAkBM,SAC7BC,EAAOD,GAAY,EACnBE,EAAeR,EAAkBS,SAAW,EAC5CplD,EAAM2kD,EAAkB3kD,IACxBC,EAAM0kD,EAAkB1kD,IACxBolD,EAAYV,EAAkBU,UAC9BC,EAAOV,EAAU5kD,IACjBulD,EAAOX,EAAU3kD,IACjBu7C,EAAUpjC,GAAUo8B,SAAS+Q,EAAOD,GAAQH,EAAeD,GAAQA,EAKvE,GAAI1J,EAAUwJ,GAAeP,GAAgBzkD,IAAQykD,GAAgBxkD,GACpE,MAAO,CAACqlD,EAAMC,GAGfR,EAAYjyD,KAAK8oD,KAAK2J,EAAO/J,GAAW1oD,KAAKD,MAAMyyD,EAAO9J,GACtDuJ,EAAYI,IAEf3J,EAAUpjC,GAAUo8B,QAAQuQ,EAAYvJ,EAAU2J,EAAeD,GAAQA,GAGtED,GAAYR,GAAgBY,GAE/B/J,EAASxoD,KAAKC,IAAI,GAAIqlB,GAAUi6B,eAAemJ,KAG/CF,EAASxoD,KAAKC,IAAI,GAAIsyD,GACtB7J,EAAU1oD,KAAK8oD,KAAKJ,EAAUF,GAAUA,GAGzCuJ,EAAU/xD,KAAKD,MAAMyyD,EAAO9J,GAAWA,EACvCsJ,EAAUhyD,KAAK8oD,KAAK2J,EAAO/J,GAAWA,EAGlCyJ,KAEER,GAAgBzkD,IAAQoY,GAAU05B,YAAY9xC,EAAMw7C,EAASA,EAAU,OAC3EqJ,EAAU7kD,IAENykD,GAAgBxkD,IAAQmY,GAAU05B,YAAY7xC,EAAMu7C,EAASA,EAAU,OAC3EsJ,EAAU7kD,IAIZ8kD,GAAaD,EAAUD,GAAWrJ,EAGjCuJ,EADG3sC,GAAUy5B,aAAakT,EAAWjyD,KAAKiQ,MAAMgiD,GAAYvJ,EAAU,KAC1D1oD,KAAKiQ,MAAMgiD,GAEXjyD,KAAK8oD,KAAKmJ,GAGvBF,EAAU/xD,KAAKiQ,MAAM8hD,EAAUvJ,GAAUA,EACzCwJ,EAAUhyD,KAAKiQ,MAAM+hD,EAAUxJ,GAAUA,EACzC5qB,EAAMxhC,KAAKu1D,GAAgBzkD,GAAO6kD,EAAU7kD,GAC5C,IAAK,IAAI4tB,EAAI,EAAGA,EAAIm3B,IAAan3B,EAChC8C,EAAMxhC,KAAK4D,KAAKiQ,OAAO8hD,EAAUj3B,EAAI4tB,GAAWF,GAAUA,GAI3D,OAFA5qB,EAAMxhC,KAAKu1D,GAAgBxkD,GAAO6kD,EAAU7kD,GAErCywB,EAGR,IAAI80B,GAAmBzB,GAAWl2C,OAAO,CACxCgkB,cAAe,SAAStuC,GACvB,MAAqB,kBAAVA,GACFA,EAEFwgE,GAAW1nD,UAAUw1B,cAAcz2B,KAAKxZ,KAAM2B,IAGtDkiE,uBAAwB,WACvB,IAAIv3C,EAAKtsB,KACLosC,EAAO9f,EAAG7e,QACVohC,EAAWzC,EAAK0C,MAKpB,GAAID,EAASmC,YAAa,CACzB,IAAI8yB,EAAUttC,GAAU65B,KAAK/jC,EAAGlO,KAC5B2lD,EAAUvtC,GAAU65B,KAAK/jC,EAAGjO,KAE5BylD,EAAU,GAAKC,EAAU,EAE5Bz3C,EAAGjO,IAAM,EACCylD,EAAU,GAAKC,EAAU,IAEnCz3C,EAAGlO,IAAM,GAIX,IAAI4lD,OAA0B7/D,IAAjB0qC,EAASzwB,UAA+Cja,IAA1B0qC,EAASo1B,aAChDC,OAA0B//D,IAAjB0qC,EAASxwB,UAA+Cla,IAA1B0qC,EAASs1B,kBAE/BhgE,IAAjB0qC,EAASzwB,IACZkO,EAAGlO,IAAMywB,EAASzwB,SACkBja,IAA1B0qC,EAASo1B,eACJ,OAAX33C,EAAGlO,IACNkO,EAAGlO,IAAMywB,EAASo1B,aAElB33C,EAAGlO,IAAMlN,KAAKkN,IAAIkO,EAAGlO,IAAKywB,EAASo1B,oBAIhB9/D,IAAjB0qC,EAASxwB,IACZiO,EAAGjO,IAAMwwB,EAASxwB,SACkBla,IAA1B0qC,EAASs1B,eACJ,OAAX73C,EAAGjO,IACNiO,EAAGjO,IAAMwwB,EAASs1B,aAElB73C,EAAGjO,IAAMnN,KAAKmN,IAAIiO,EAAGjO,IAAKwwB,EAASs1B,eAIjCH,IAAWE,GAKV53C,EAAGlO,KAAOkO,EAAGjO,MACZ2lD,EACH13C,EAAGjO,IAAMiO,EAAGlO,IAAM,EAElBkO,EAAGlO,IAAMkO,EAAGjO,IAAM,GAKjBiO,EAAGlO,MAAQkO,EAAGjO,MACjBiO,EAAGjO,MAEEwwB,EAASmC,aACb1kB,EAAGlO,QAKNgmD,aAAc,WACb,IAIIZ,EAJAl3C,EAAKtsB,KACL6uC,EAAWviB,EAAG7e,QAAQqhC,MACtBu0B,EAAWx0B,EAASw0B,SACpBzD,EAAgB/wB,EAAS+wB,cAc7B,OAXIyD,EACHG,EAAWtyD,KAAK8oD,KAAK1tC,EAAGjO,IAAMglD,GAAYnyD,KAAKD,MAAMqb,EAAGlO,IAAMilD,GAAY,GAE1EG,EAAWl3C,EAAG+3C,oBACdzE,EAAgBA,GAAiB,IAG9BA,IACH4D,EAAWtyD,KAAKkN,IAAIwhD,EAAe4D,IAG7BA,GAGRa,kBAAmB,WAClB,OAAOv3D,OAAO0mC,mBAGf8wB,yBAA0Bn6C,GAE1BoyC,WAAY,WACX,IAAIjwC,EAAKtsB,KACLosC,EAAO9f,EAAG7e,QACVohC,EAAWzC,EAAK0C,MAMhB00B,EAAWl3C,EAAG83C,eAClBZ,EAAWtyD,KAAKmN,IAAI,EAAGmlD,GAEvB,IAAIe,EAA0B,CAC7Bf,SAAUA,EACVplD,IAAKywB,EAASzwB,IACdC,IAAKwwB,EAASxwB,IACdolD,UAAW50B,EAAS40B,UACpBJ,SAAU7sC,GAAU9L,eAAemkB,EAAS21B,cAAe31B,EAASw0B,WAEjEv0B,EAAQxiB,EAAGwiB,MAAQg0B,GAAcyB,EAAyBj4C,GAE9DA,EAAGg4C,2BAIHh4C,EAAGjO,IAAMmY,GAAUnY,IAAIywB,GACvBxiB,EAAGlO,IAAMoY,GAAUpY,IAAI0wB,GAEnBD,EAAS7jB,SACZ8jB,EAAM9jB,UAENsB,EAAGsK,MAAQtK,EAAGjO,IACdiO,EAAGma,IAAMna,EAAGlO,MAEZkO,EAAGsK,MAAQtK,EAAGlO,IACdkO,EAAGma,IAAMna,EAAGjO,MAIdm/C,qBAAsB,WACrB,IAAIlxC,EAAKtsB,KACTssB,EAAGm4C,eAAiBn4C,EAAGwiB,MAAMxjC,QAC7BghB,EAAG2uC,cAAgB3uC,EAAGwiB,MAAM7kB,QAAQ,GAEpCk4C,GAAW1nD,UAAU+iD,qBAAqBhkD,KAAK8S,IAGhDoQ,WAAY,WACX,IAIIiK,EAJAra,EAAKtsB,KACL8uC,EAAQxiB,EAAGsZ,WACXhP,EAAQtK,EAAGlO,IACXqoB,EAAMna,EAAGjO,IAGb8jD,GAAW1nD,UAAUiiB,WAAWljB,KAAK8S,GAEjCA,EAAG7e,QAAQk5B,QAAUmI,EAAMpjC,SAC9Bi7B,GAAUF,EAAM7P,GAAS1lB,KAAKmN,IAAIywB,EAAMpjC,OAAS,EAAG,GAAK,EACzDkrB,GAAS+P,EACTF,GAAOE,GAERra,EAAGm2C,YAAc7rC,EACjBtK,EAAGo4C,UAAYj+B,EACfna,EAAGo2C,YAAcj8B,EAAM7P,KAIrB+tC,GAAkB,CACrBn7B,SAAU,OACVsF,MAAO,CACNltC,SAAUy0D,GAAWC,WAAWjpC,SAI9Bu3C,GAAc,EACdC,GAAc,EAElB,SAASC,GAAiBt8B,EAAQD,EAAS3N,GAC1C,IAAI35B,EAAM,CACT25B,EAAK14B,UAEOiC,IAAZokC,QAAwCpkC,IAAfy2B,EAAKqM,MAAsBrM,EAAKz4B,MAAQ,GACjEy4B,EAAKqM,OACJzyB,KAAK,KASP,YAPoBrQ,IAAhBqkC,EAAOvnC,KACVunC,EAAOvnC,GAAO,CACbyzC,IAAK,GACLqwB,IAAK,KAIAv8B,EAAOvnC,GAGf,SAAS+jE,GAAUhgD,EAAOwjB,EAAQ5N,EAAMn4B,GACvC,IAMIiW,EAAG/W,EANHyqC,EAAOpnB,EAAMvX,QACb86B,EAAU6D,EAAK7D,QACftB,EAAQ69B,GAAiBt8B,EAAQD,EAAS3N,GAC1C8Z,EAAMzN,EAAMyN,IACZqwB,EAAM99B,EAAM89B,IACZ35C,EAAO3oB,EAAKiJ,OAGhB,IAAKgN,EAAI,EAAGA,EAAI0S,IAAQ1S,EACvB/W,EAAQqjB,EAAMikB,YAAYxmC,EAAKiW,IAC3BwM,MAAMvjB,EAAMyc,MAAQ8G,MAAMvjB,EAAM0c,MAAQuc,EAAKn4B,KAAKiW,GAAG4e,SAIzDod,EAAIh8B,GAAKg8B,EAAIh8B,IAAM,EACnBqsD,EAAIrsD,GAAKqsD,EAAIrsD,IAAM,EAEf0zB,EAAK64B,eACRvwB,EAAIh8B,GAAK,IACC/W,EAAMyc,IAAM,GAAKzc,EAAM0c,IAAM,EACvC0mD,EAAIrsD,IAAM/W,EAAMyc,IAEhBs2B,EAAIh8B,IAAM/W,EAAM0c,KAKnB,SAAS6mD,GAAalgD,EAAO4V,EAAMn4B,GAClC,IACIiW,EAAG/W,EADHypB,EAAO3oB,EAAKiJ,OAGhB,IAAKgN,EAAI,EAAGA,EAAI0S,IAAQ1S,EACvB/W,EAAQqjB,EAAMikB,YAAYxmC,EAAKiW,IAC3BwM,MAAMvjB,EAAMyc,MAAQ8G,MAAMvjB,EAAM0c,MAAQuc,EAAKn4B,KAAKiW,GAAG4e,SAIzDtS,EAAM5G,IAAMlN,KAAKkN,IAAI4G,EAAM5G,IAAKzc,EAAMyc,KACtC4G,EAAM3G,IAAMnN,KAAKmN,IAAI2G,EAAM3G,IAAK1c,EAAM0c,MAIxC,IAAI8mD,GAAevB,GAAiB33C,OAAO,CAC1CmwC,oBAAqB,WACpB,IAQI1jD,EAAGkiB,EAAMn4B,EAAMijB,EARf4G,EAAKtsB,KACLosC,EAAO9f,EAAG7e,QACVqiB,EAAQxD,EAAGwD,MACXuL,EAAWvL,EAAMrtB,KAAK44B,SACtBgN,EAAW/b,EAAGgc,2BACd88B,EAAYh5B,EAAK7D,QACjBC,EAAS,GACTpd,EAAOid,EAAS38B,OAMpB,GAHA4gB,EAAGlO,IAAMtR,OAAO0mC,kBAChBlnB,EAAGjO,IAAMvR,OAAOsjD,uBAEEjsD,IAAdihE,EACH,IAAK1sD,EAAI,GAAI0sD,GAAa1sD,EAAI0S,IAAQ1S,EACrCkiB,EAAOyN,EAAS3vB,GAChB0sD,OAA2BjhE,IAAfy2B,EAAKqM,MAInB,IAAKvuB,EAAI,EAAGA,EAAI0S,IAAQ1S,EACvBkiB,EAAOyN,EAAS3vB,GAChBjW,EAAO44B,EAAST,EAAKz4B,OAAOM,KACxB2iE,EACHJ,GAAU14C,EAAIkc,EAAQ5N,EAAMn4B,GAE5ByiE,GAAa54C,EAAIsO,EAAMn4B,GAIzB+zB,GAAU1L,KAAK0d,GAAQ,SAAS68B,GAC/B3/C,EAAS2/C,EAAY3wB,IAAIpuB,OAAO++C,EAAYN,KAC5Cz4C,EAAGlO,IAAMlN,KAAKkN,IAAIkO,EAAGlO,IAAKoY,GAAUpY,IAAIsH,IACxC4G,EAAGjO,IAAMnN,KAAKmN,IAAIiO,EAAGjO,IAAKmY,GAAUnY,IAAIqH,OAGzC4G,EAAGlO,IAAMoY,GAAU/L,SAAS6B,EAAGlO,OAAS8G,MAAMoH,EAAGlO,KAAOkO,EAAGlO,IAAMwmD,GACjEt4C,EAAGjO,IAAMmY,GAAU/L,SAAS6B,EAAGjO,OAAS6G,MAAMoH,EAAGjO,KAAOiO,EAAGjO,IAAMwmD,GAGjEv4C,EAAGu3C,0BAIJQ,kBAAmB,WAClB,IACIxM,EADAvrC,EAAKtsB,KAGT,OAAIssB,EAAGsb,eACC12B,KAAK8oD,KAAK1tC,EAAG3f,MAAQ,KAE7BkrD,EAAWrhC,GAAU/oB,QAAQsmB,WAAWzH,EAAG7e,QAAQqhC,OAC5C59B,KAAK8oD,KAAK1tC,EAAG1f,OAASirD,EAAS1jC,cAIvCmwC,yBAA0B,WACpBtkE,KAAK4nC,gBAET5nC,KAAK8uC,MAAM9jB,WAIbu3B,iBAAkB,SAASpgD,EAAOg4B,GACjC,OAAOn6B,KAAKs/D,eAAet/D,KAAK8vB,MAAMrtB,KAAK44B,SAASlB,GAAc13B,KAAKN,KAIxEwmC,iBAAkB,SAAShnC,GAC1B,IAAI2qB,EAAKtsB,KACT,OAAOssB,EAAG4d,qBAAqB5d,EAAG2jB,cAActuC,GAAS2qB,EAAGm2C,aAAen2C,EAAGo2C,cAG/EnD,iBAAkB,SAASrO,GAC1B,OAAOlxD,KAAKyiE,YAAcziE,KAAKy/D,mBAAmBvO,GAASlxD,KAAK0iE,aAGjE78B,gBAAiB,SAAS1jC,GACzB,IAAI2sC,EAAQ9uC,KAAKykE,eACjB,OAAItiE,EAAQ,GAAKA,EAAQ2sC,EAAMpjC,OAAS,EAChC,KAED1L,KAAK2oC,iBAAiBmG,EAAM3sC,OAKjCmjE,GAAcX,GAClBQ,GAAavC,UAAY0C,GAEzB,IAAIC,GAAmB/uC,GAAU9L,eAC7BkK,GAAQ4B,GAAUE,KAAK9B,MAQ3B,SAAS4wC,GAAgBzC,EAAmBC,GAC3C,IAMIyC,EAAKC,EANL52B,EAAQ,GAER62B,EAAUJ,GAAiBxC,EAAkB3kD,IAAKlN,KAAKC,IAAI,GAAID,KAAKD,MAAM2jB,GAAMouC,EAAU5kD,QAE1FwnD,EAAS10D,KAAKD,MAAM2jB,GAAMouC,EAAU3kD,MACpCwnD,EAAiB30D,KAAK8oD,KAAKgJ,EAAU3kD,IAAMnN,KAAKC,IAAI,GAAIy0D,IAG5C,IAAZD,GACHF,EAAMv0D,KAAKD,MAAM2jB,GAAMouC,EAAU8C,aACjCJ,EAAcx0D,KAAKD,MAAM+xD,EAAU8C,WAAa50D,KAAKC,IAAI,GAAIs0D,IAE7D32B,EAAMxhC,KAAKq4D,GACXA,EAAUD,EAAcx0D,KAAKC,IAAI,GAAIs0D,KAErCA,EAAMv0D,KAAKD,MAAM2jB,GAAM+wC,IACvBD,EAAcx0D,KAAKD,MAAM00D,EAAUz0D,KAAKC,IAAI,GAAIs0D,KAEjD,IAAIhC,EAAYgC,EAAM,EAAIv0D,KAAKC,IAAI,GAAID,KAAK8xB,IAAIyiC,IAAQ,EAExD,GACC32B,EAAMxhC,KAAKq4D,KAETD,EACkB,KAAhBA,IACHA,EAAc,IACZD,EACFhC,EAAYgC,GAAO,EAAI,EAAIhC,GAG5BkC,EAAUz0D,KAAKiQ,MAAMukD,EAAcx0D,KAAKC,IAAI,GAAIs0D,GAAOhC,GAAaA,QAC5DgC,EAAMG,GAAWH,IAAQG,GAAUF,EAAcG,GAE1D,IAAIE,EAAWR,GAAiBxC,EAAkB1kD,IAAKsnD,GAGvD,OAFA72B,EAAMxhC,KAAKy4D,GAEJj3B,EAGR,IAAIk3B,GAAkB,CACrBx8B,SAAU,OAGVsF,MAAO,CACNltC,SAAUy0D,GAAWC,WAAWU,cAKlC,SAASiP,GAAqBtkE,EAAOgpB,GACpC,OAAO6L,GAAU/L,SAAS9oB,IAAUA,GAAS,EAAIA,EAAQgpB,EAG1D,IAAIu7C,GAAoB/D,GAAWl2C,OAAO,CACzCmwC,oBAAqB,WACpB,IAQIjiC,EAAcS,EAAMj5B,EAAOc,EAAMiW,EAAG0S,EARpCkB,EAAKtsB,KACLosC,EAAO9f,EAAG7e,QACVqiB,EAAQxD,EAAGwD,MACXuL,EAAWvL,EAAMrtB,KAAK44B,SACtBuM,EAAetb,EAAGsb,eACtB,SAASu+B,EAAUvrC,GAClB,OAAOgN,EAAehN,EAAKK,UAAY3O,EAAG5f,GAAKkuB,EAAKO,UAAY7O,EAAG5f,GAKpE4f,EAAGlO,IAAMtR,OAAO0mC,kBAChBlnB,EAAGjO,IAAMvR,OAAOsjD,kBAChB9jC,EAAGw5C,WAAah5D,OAAO0mC,kBAEvB,IAAI4xB,EAAYh5B,EAAK7D,QACrB,QAAkBpkC,IAAdihE,EACH,IAAKjrC,EAAe,EAAGA,EAAekB,EAAS3vB,OAAQyuB,IAEtD,GADAS,EAAO9K,EAAMwL,eAAenB,GACxBrK,EAAMmc,iBAAiB9R,IAAiBgsC,EAAUvrC,SACtCz2B,IAAfy2B,EAAKqM,MAAqB,CAC1Bm+B,GAAY,EACZ,MAKH,GAAIh5B,EAAK7D,SAAW68B,EAAW,CAC9B,IAAIgB,EAAiB,GAErB,IAAKjsC,EAAe,EAAGA,EAAekB,EAAS3vB,OAAQyuB,IAAgB,CACtES,EAAO9K,EAAMwL,eAAenB,GAC5B,IAAIl5B,EAAM,CACT25B,EAAK14B,UAEciC,IAAjBioC,EAAK7D,cAAwCpkC,IAAfy2B,EAAKqM,MAAuB9M,EAAe,GAC3ES,EAAKqM,OACJzyB,KAAK,KAEP,GAAIsb,EAAMmc,iBAAiB9R,IAAiBgsC,EAAUvrC,GAMrD,SAL4Bz2B,IAAxBiiE,EAAenlE,KAClBmlE,EAAenlE,GAAO,IAGvBwB,EAAO44B,EAASlB,GAAc13B,KACzBiW,EAAI,EAAG0S,EAAO3oB,EAAKiJ,OAAQgN,EAAI0S,EAAM1S,IAAK,CAC9C,IAAIgN,EAAS0gD,EAAenlE,GAC5BU,EAAQ2qB,EAAG2c,YAAYxmC,EAAKiW,IAExBwM,MAAMvjB,EAAMyc,MAAQ8G,MAAMvjB,EAAM0c,MAAQuc,EAAKn4B,KAAKiW,GAAG4e,QAAU31B,EAAMyc,IAAM,GAAKzc,EAAM0c,IAAM,IAGhGqH,EAAOhN,GAAKgN,EAAOhN,IAAM,EACzBgN,EAAOhN,IAAM/W,EAAM0c,MAKtBmY,GAAU1L,KAAKs7C,GAAgB,SAASC,GACvC,GAAIA,EAAc36D,OAAS,EAAG,CAC7B,IAAI46D,EAAS9vC,GAAUpY,IAAIioD,GACvBE,EAAS/vC,GAAUnY,IAAIgoD,GAC3B/5C,EAAGlO,IAAMlN,KAAKkN,IAAIkO,EAAGlO,IAAKkoD,GAC1Bh6C,EAAGjO,IAAMnN,KAAKmN,IAAIiO,EAAGjO,IAAKkoD,YAK5B,IAAKpsC,EAAe,EAAGA,EAAekB,EAAS3vB,OAAQyuB,IAEtD,GADAS,EAAO9K,EAAMwL,eAAenB,GACxBrK,EAAMmc,iBAAiB9R,IAAiBgsC,EAAUvrC,GAErD,IADAn4B,EAAO44B,EAASlB,GAAc13B,KACzBiW,EAAI,EAAG0S,EAAO3oB,EAAKiJ,OAAQgN,EAAI0S,EAAM1S,IACzC/W,EAAQ2qB,EAAG2c,YAAYxmC,EAAKiW,IAExBwM,MAAMvjB,EAAMyc,MAAQ8G,MAAMvjB,EAAM0c,MAAQuc,EAAKn4B,KAAKiW,GAAG4e,QAAU31B,EAAMyc,IAAM,GAAKzc,EAAM0c,IAAM,IAIhGiO,EAAGlO,IAAMlN,KAAKkN,IAAIzc,EAAMyc,IAAKkO,EAAGlO,KAChCkO,EAAGjO,IAAMnN,KAAKmN,IAAI1c,EAAM0c,IAAKiO,EAAGjO,KAEd,IAAd1c,EAAMyc,MACTkO,EAAGw5C,WAAa50D,KAAKkN,IAAIzc,EAAMyc,IAAKkO,EAAGw5C,cAO5Cx5C,EAAGlO,IAAMoY,GAAU/L,SAAS6B,EAAGlO,KAAOkO,EAAGlO,IAAM,KAC/CkO,EAAGjO,IAAMmY,GAAU/L,SAAS6B,EAAGjO,KAAOiO,EAAGjO,IAAM,KAC/CiO,EAAGw5C,WAAatvC,GAAU/L,SAAS6B,EAAGw5C,YAAcx5C,EAAGw5C,WAAa,KAGpE9lE,KAAK6jE,0BAGNA,uBAAwB,WACvB,IAAIv3C,EAAKtsB,KACL6uC,EAAWviB,EAAG7e,QAAQqhC,MACtB81B,EAAc,EACdC,EAAc,GAElBv4C,EAAGlO,IAAM6nD,GAAqBp3B,EAASzwB,IAAKkO,EAAGlO,KAC/CkO,EAAGjO,IAAM4nD,GAAqBp3B,EAASxwB,IAAKiO,EAAGjO,KAE3CiO,EAAGlO,MAAQkO,EAAGjO,MACF,IAAXiO,EAAGlO,KAAwB,OAAXkO,EAAGlO,KACtBkO,EAAGlO,IAAMlN,KAAKC,IAAI,GAAID,KAAKD,MAAM2jB,GAAMtI,EAAGlO,MAAQ,GAClDkO,EAAGjO,IAAMnN,KAAKC,IAAI,GAAID,KAAKD,MAAM2jB,GAAMtI,EAAGjO,MAAQ,KAElDiO,EAAGlO,IAAMwmD,EACTt4C,EAAGjO,IAAMwmD,IAGI,OAAXv4C,EAAGlO,MACNkO,EAAGlO,IAAMlN,KAAKC,IAAI,GAAID,KAAKD,MAAM2jB,GAAMtI,EAAGjO,MAAQ,IAEpC,OAAXiO,EAAGjO,MACNiO,EAAGjO,IAAiB,IAAXiO,EAAGlO,IACTlN,KAAKC,IAAI,GAAID,KAAKD,MAAM2jB,GAAMtI,EAAGlO,MAAQ,GACzCymD,GAEkB,OAAlBv4C,EAAGw5C,aACFx5C,EAAGlO,IAAM,EACZkO,EAAGw5C,WAAax5C,EAAGlO,IACTkO,EAAGjO,IAAM,EACnBiO,EAAGw5C,WAAa50D,KAAKC,IAAI,GAAID,KAAKD,MAAM2jB,GAAMtI,EAAGjO,OAEjDiO,EAAGw5C,WAAalB,IAKnBrI,WAAY,WACX,IAAIjwC,EAAKtsB,KACL6uC,EAAWviB,EAAG7e,QAAQqhC,MACtB9jB,GAAWsB,EAAGsb,eAEdm7B,EAAoB,CACvB3kD,IAAK6nD,GAAqBp3B,EAASzwB,KACnCC,IAAK4nD,GAAqBp3B,EAASxwB,MAEhCywB,EAAQxiB,EAAGwiB,MAAQ02B,GAAgBzC,EAAmBz2C,GAI1DA,EAAGjO,IAAMmY,GAAUnY,IAAIywB,GACvBxiB,EAAGlO,IAAMoY,GAAUpY,IAAI0wB,GAEnBD,EAAS7jB,SACZA,GAAWA,EACXsB,EAAGsK,MAAQtK,EAAGjO,IACdiO,EAAGma,IAAMna,EAAGlO,MAEZkO,EAAGsK,MAAQtK,EAAGlO,IACdkO,EAAGma,IAAMna,EAAGjO,KAET2M,GACH8jB,EAAM9jB,WAIRwyC,qBAAsB,WACrBx9D,KAAKwmE,WAAaxmE,KAAK8uC,MAAMxjC,QAE7B62D,GAAW1nD,UAAU+iD,qBAAqBhkD,KAAKxZ,OAIhDuiD,iBAAkB,SAASpgD,EAAOg4B,GACjC,OAAOn6B,KAAKs/D,eAAet/D,KAAK8vB,MAAMrtB,KAAK44B,SAASlB,GAAc13B,KAAKN,KAGxE0jC,gBAAiB,SAAS1jC,GACzB,IAAI2sC,EAAQ9uC,KAAKwmE,WACjB,OAAIrkE,EAAQ,GAAKA,EAAQ2sC,EAAMpjC,OAAS,EAChC,KAED1L,KAAK2oC,iBAAiBmG,EAAM3sC,KASpCskE,mBAAoB,SAAS9kE,GAC5B,IAAI8jE,EAAMv0D,KAAKD,MAAM2jB,GAAMjzB,IACvB+jE,EAAcx0D,KAAKD,MAAMtP,EAAQuP,KAAKC,IAAI,GAAIs0D,IAElD,OAAOC,EAAcx0D,KAAKC,IAAI,GAAIs0D,IAGnC/oC,WAAY,WACX,IAAIpQ,EAAKtsB,KACL42B,EAAQtK,EAAGlO,IACXuoB,EAAS,EAEbw7B,GAAW1nD,UAAUiiB,WAAWljB,KAAK8S,GAEvB,IAAVsK,IACHA,EAAQtK,EAAGm6C,mBAAmBn6C,EAAGw5C,YACjCn/B,EAAS4+B,GAAiBj5C,EAAG7e,QAAQqhC,MAAM7a,SAAUV,EAAcxjB,OAAOojB,iBAAmB7G,EAAGqZ,SAGjGrZ,EAAGm2C,YAAc7tC,GAAMgC,GACvBtK,EAAGo6C,aAAe//B,EAClBra,EAAGo2C,aAAe9tC,GAAMtI,EAAGjO,KAAOuW,GAAMgC,KAAW,EAAI+P,IAGxDgC,iBAAkB,SAAShnC,GAC1B,IAAI2qB,EAAKtsB,KACLw/D,EAAU,EAOd,OALA79D,GAAS2qB,EAAG2jB,cAActuC,GAEtBA,EAAQ2qB,EAAGlO,KAAOzc,EAAQ,IAC7B69D,GAAW5qC,GAAMjzB,GAAS2qB,EAAGm2C,aAAen2C,EAAGo2C,YAAcp2C,EAAGo6C,cAE1Dp6C,EAAG4d,mBAAmBs1B,IAG9BD,iBAAkB,SAASrO,GAC1B,IAAI5kC,EAAKtsB,KACLw/D,EAAUlzC,EAAGmzC,mBAAmBvO,GACpC,OAAmB,IAAZsO,GAA4B,IAAXlzC,EAAGlO,IACxB,EACAlN,KAAKC,IAAI,GAAImb,EAAGm2C,aAAejD,EAAUlzC,EAAGo6C,cAAgBp6C,EAAGo2C,gBAKhEiE,GAAcX,GAClBE,GAAkBtD,UAAY+D,GAE9B,IAAIC,GAAmBpwC,GAAU9L,eAC7Bm8C,GAA0BrwC,GAAU5L,sBACpCk8C,GAAYtwC,GAAU/oB,QAAQ4mB,QAE9B0yC,GAAkB,CACrBl2B,SAAS,EAGTm2B,SAAS,EACTx9B,SAAU,YAEVoH,WAAY,CACXC,SAAS,EACTxvB,MAAO,kBACP6e,UAAW,EACX0B,WAAY,GACZC,iBAAkB,GAGnB+E,UAAW,CACVkK,UAAU,GAIXhC,MAAO,CAENm4B,mBAAmB,EAGnBC,cAAe,yBAGfC,iBAAkB,EAGlBC,iBAAkB,EAElBxlE,SAAUy0D,GAAWC,WAAWjpC,QAGjC0jB,YAAa,CAEZF,SAAS,EAGT5c,SAAU,GAGVryB,SAAU,SAASuM,GAClB,OAAOA,KAKV,SAASk5D,GAAsBj7B,GAC9B,IAAIyC,EAAWzC,EAAK0C,MAEpB,OAAID,EAASgC,SAAWzE,EAAKyE,QACrB+1B,GAAiB/3B,EAAS5a,SAAUV,EAAcxjB,OAAOojB,iBAA+C,EAA5B0b,EAASs4B,iBAEtF,EAGR,SAASG,GAAiBv3C,EAAKoE,EAAYhmB,GAC1C,OAAIqoB,GAAUlM,QAAQnc,GACd,CACN2Q,EAAG0X,GAAUm+B,YAAY5kC,EAAKA,EAAI0D,KAAMtlB,GACxC2P,EAAG3P,EAAMzC,OAASyoB,GAIb,CACNrV,EAAGiR,EAAI60B,YAAYz2C,GAAOxB,MAC1BmR,EAAGqW,GAIL,SAASozC,GAAgB1mC,EAAO6T,EAAK3jB,EAAM3S,EAAKC,GAC/C,OAAIwiB,IAAUziB,GAAOyiB,IAAUxiB,EACvB,CACNuY,MAAO8d,EAAO3jB,EAAO,EACrB0V,IAAKiO,EAAO3jB,EAAO,GAEV8P,EAAQziB,GAAOyiB,EAAQxiB,EAC1B,CACNuY,MAAO8d,EAAM3jB,EACb0V,IAAKiO,GAIA,CACN9d,MAAO8d,EACPjO,IAAKiO,EAAM3jB,GAOb,SAASy2C,GAAmBxiD,GA4B3B,IAWItM,EAAG+uD,EAAUr1B,EAXbs1B,EAASlxC,GAAU/oB,QAAQsmB,WAAW/O,EAAMvX,QAAQsjC,aAIpD42B,EAAiB,CACpB3pD,EAAG,EACHC,EAAG+G,EAAMrY,MACTwT,EAAG,EACHhC,EAAG6G,EAAMpY,OAASoY,EAAM6uC,YAErB+T,EAAiB,GAGrB5iD,EAAM+K,IAAI0D,KAAOi0C,EAAO9xD,OACxBoP,EAAM6iD,iBAAmB,GAEzB,IAAIC,EAAa9iD,EAAM8K,MAAMrtB,KAAKka,OAAOjR,OACzC,IAAKgN,EAAI,EAAGA,EAAIovD,EAAYpvD,IAAK,CAChC05B,EAAgBptB,EAAM+iD,iBAAiBrvD,EAAGsM,EAAMgjD,YAAc,GAC9DP,EAAWH,GAAiBtiD,EAAM+K,IAAK23C,EAAOvzC,WAAYnP,EAAM+rB,YAAYr4B,IAC5EsM,EAAM6iD,iBAAiBnvD,GAAK+uD,EAG5B,IAAI7I,EAAe55C,EAAMijD,cAAcvvD,GACnCmoB,EAAQrK,GAAU+5B,UAAUqO,GAAgB,IAC5CsJ,EAAUX,GAAgB1mC,EAAOuR,EAAcx0B,EAAG6pD,EAAS3oD,EAAG,EAAG,KACjEqpD,EAAUZ,GAAgB1mC,EAAOuR,EAAcv0B,EAAG4pD,EAAS3pD,EAAG,GAAI,KAElEoqD,EAAQtxC,MAAQ+wC,EAAe3pD,IAClC2pD,EAAe3pD,EAAIkqD,EAAQtxC,MAC3BgxC,EAAe5pD,EAAI4gD,GAGhBsJ,EAAQzhC,IAAMkhC,EAAe1pD,IAChC0pD,EAAe1pD,EAAIiqD,EAAQzhC,IAC3BmhC,EAAe3pD,EAAI2gD,GAGhBuJ,EAAQvxC,MAAQ+wC,EAAexnD,IAClCwnD,EAAexnD,EAAIgoD,EAAQvxC,MAC3BgxC,EAAeznD,EAAIy+C,GAGhBuJ,EAAQ1hC,IAAMkhC,EAAexpD,IAChCwpD,EAAexpD,EAAIgqD,EAAQ1hC,IAC3BmhC,EAAezpD,EAAIygD,GAIrB55C,EAAMojD,cAAcpjD,EAAMgjD,YAAaL,EAAgBC,GAGxD,SAASS,GAAqBxnC,GAC7B,OAAc,IAAVA,GAAyB,MAAVA,EACX,SACGA,EAAQ,IACX,OAGD,QAGR,SAAS8mB,GAAS53B,EAAKwb,EAAM/B,EAAUrV,GACtC,IACIzb,EAAG0S,EADHvN,EAAI2rB,EAAS3rB,EAAIsW,EAAa,EAGlC,GAAIqC,GAAUlM,QAAQihB,GACrB,IAAK7yB,EAAI,EAAG0S,EAAOmgB,EAAK7/B,OAAQgN,EAAI0S,IAAQ1S,EAC3CqX,EAAI43B,SAASpc,EAAK7yB,GAAI8wB,EAAS5rB,EAAGC,GAClCA,GAAKsW,OAGNpE,EAAI43B,SAASpc,EAAM/B,EAAS5rB,EAAGC,GAIjC,SAASyqD,GAAkCznC,EAAO4mC,EAAUj+B,GAC7C,KAAV3I,GAA0B,MAAVA,EACnB2I,EAAS3rB,GAAM4pD,EAAS3pD,EAAI,GAClB+iB,EAAQ,KAAOA,EAAQ,MACjC2I,EAAS3rB,GAAK4pD,EAAS3pD,GAIzB,SAASyqD,GAAgBvjD,GACxB,IAAI+K,EAAM/K,EAAM+K,IACZqc,EAAOpnB,EAAMvX,QACb+6D,EAAiBp8B,EAAK2E,YACtB03B,EAAqBpB,GAAsBj7B,GAC3Cs8B,EAAgB1jD,EAAM8sB,8BAA8B1F,EAAK0C,MAAM9jB,QAAUhG,EAAM5G,IAAM4G,EAAM3G,KAC3FqpD,EAASlxC,GAAU/oB,QAAQsmB,WAAWy0C,GAE1Cz4C,EAAImB,OAEJnB,EAAI0D,KAAOi0C,EAAO9xD,OAClBma,EAAI23B,aAAe,SAEnB,IAAK,IAAIhvC,EAAIsM,EAAM8K,MAAMrtB,KAAKka,OAAOjR,OAAS,EAAGgN,GAAK,EAAGA,IAAK,CAE7D,IAAIiwD,EAAe,IAANjwD,EAAU+vD,EAAqB,EAAI,EAC5CG,EAAqB5jD,EAAM+iD,iBAAiBrvD,EAAGgwD,EAAgBC,EAAQ,GAGvEE,EAAsBhC,GAAwB2B,EAAexP,UAAWtgD,EAAG6a,EAAcxjB,OAAOkjB,kBACpGlD,EAAIwR,UAAYsnC,EAEhB,IAAIjK,EAAe55C,EAAMijD,cAAcvvD,GACnCmoB,EAAQrK,GAAU+5B,UAAUqO,GAChC7uC,EAAIuF,UAAY+yC,GAAqBxnC,GACrCynC,GAAkCznC,EAAO7b,EAAM6iD,iBAAiBnvD,GAAIkwD,GACpEjhB,GAAS53B,EAAK/K,EAAM+rB,YAAYr4B,GAAIkwD,EAAoBlB,EAAOvzC,YAEhEpE,EAAIsB,UAGL,SAASy3C,GAAe9jD,EAAOq5C,EAAcnuC,EAAQ/tB,GACpD,IAKIiwC,EALAriB,EAAM/K,EAAM+K,IACZ+gB,EAAWutB,EAAavtB,SACxBg3B,EAAa9iD,EAAM8K,MAAMrtB,KAAKka,OAAOjR,OACrC80D,EAAYqG,GAAwBxI,EAAah9C,MAAOlf,EAAQ,GAChE+9B,EAAY2mC,GAAwBxI,EAAan+B,UAAW/9B,EAAQ,GAGxE,IAAM2uC,GAAag3B,IAAgBtH,GAActgC,EAAjD,CAaA,GATAnQ,EAAImB,OACJnB,EAAIyR,YAAcg/B,EAClBzwC,EAAImQ,UAAYA,EACZnQ,EAAI4S,cACP5S,EAAI4S,YAAY07B,EAAaz8B,YAAc,IAC3C7R,EAAI6S,eAAiBy7B,EAAax8B,kBAAoB,GAGvD9R,EAAIuB,YACAwf,EAEH/gB,EAAIS,IAAIxL,EAAM2sB,QAAS3sB,EAAM4sB,QAAS1hB,EAAQ,EAAa,EAAVhf,KAAK4P,QAChD,CAENsxB,EAAgBptB,EAAM+iD,iBAAiB,EAAG73C,GAC1CH,EAAIQ,OAAO6hB,EAAcx0B,EAAGw0B,EAAcv0B,GAE1C,IAAK,IAAInF,EAAI,EAAGA,EAAIovD,EAAYpvD,IAC/B05B,EAAgBptB,EAAM+iD,iBAAiBrvD,EAAGwX,GAC1CH,EAAIwB,OAAO6gB,EAAcx0B,EAAGw0B,EAAcv0B,GAG5CkS,EAAIU,YACJV,EAAI2B,SACJ3B,EAAIsB,WAGL,SAAS03C,GAAaC,GACrB,OAAOxyC,GAAUsB,SAASkxC,GAASA,EAAQ,EAG5C,IAAIC,GAAqBrF,GAAiB33C,OAAO,CAChDgwC,cAAe,WACd,IAAI3vC,EAAKtsB,KAGTssB,EAAG3f,MAAQ2f,EAAG4f,SACd5f,EAAG1f,OAAS0f,EAAG6f,UACf7f,EAAGunC,WAAawT,GAAsB/6C,EAAG7e,SAAW,EACpD6e,EAAGqlB,QAAUzgC,KAAKD,MAAMqb,EAAG3f,MAAQ,GACnC2f,EAAGslB,QAAU1gC,KAAKD,OAAOqb,EAAG1f,OAAS0f,EAAGunC,YAAc,GACtDvnC,EAAG07C,YAAc92D,KAAKkN,IAAIkO,EAAG1f,OAAS0f,EAAGunC,WAAYvnC,EAAG3f,OAAS,GAGlEyvD,oBAAqB,WACpB,IAAI9vC,EAAKtsB,KACL8vB,EAAQxD,EAAGwD,MACX1R,EAAMtR,OAAO0mC,kBACbn1B,EAAMvR,OAAOsjD,kBAEjB55B,GAAU1L,KAAKgF,EAAMrtB,KAAK44B,UAAU,SAASP,EAASX,GACrD,GAAIrK,EAAMmc,iBAAiB9R,GAAe,CACzC,IAAIS,EAAO9K,EAAMwL,eAAenB,GAEhC3D,GAAU1L,KAAKgQ,EAAQr4B,MAAM,SAAS48D,EAAUl9D,GAC/C,IAAIR,GAAS2qB,EAAG2jB,cAAcovB,GAC1Bn6C,MAAMvjB,IAAUi5B,EAAKn4B,KAAKN,GAAOm1B,SAIrClZ,EAAMlN,KAAKkN,IAAIzc,EAAOyc,GACtBC,EAAMnN,KAAKmN,IAAI1c,EAAO0c,WAKzBiO,EAAGlO,IAAOA,IAAQtR,OAAO0mC,kBAAoB,EAAIp1B,EACjDkO,EAAGjO,IAAOA,IAAQvR,OAAOsjD,kBAAoB,EAAI/xC,EAGjDiO,EAAGu3C,0BAIJQ,kBAAmB,WAClB,OAAOnzD,KAAK8oD,KAAKh6D,KAAKgoE,YAAcX,GAAsBrnE,KAAKyN,WAGhE+vD,qBAAsB,WACrB,IAAIlxC,EAAKtsB,KAET4jE,GAAiBnpD,UAAU+iD,qBAAqBhkD,KAAK8S,GAGrDA,EAAGykB,YAAczkB,EAAGwD,MAAMrtB,KAAKka,OAAOtZ,KAAI,WACzC,IAAI8K,EAAQqoB,GAAU50B,SAAS0qB,EAAG7e,QAAQsjC,YAAYnvC,SAAUqX,UAAWqT,GAC3E,OAAOne,GAAmB,IAAVA,EAAcA,EAAQ,OAIxCo0C,iBAAkB,SAASpgD,EAAOg4B,GACjC,OAAQn6B,KAAKiwC,cAAcjwC,KAAK8vB,MAAMrtB,KAAK44B,SAASlB,GAAc13B,KAAKN,KAGxE26D,IAAK,WACJ,IAAIxwC,EAAKtsB,KACLosC,EAAO9f,EAAG7e,QAEV2+B,EAAKyE,SAAWzE,EAAK2E,YAAYF,QACpC22B,GAAmBl7C,GAEnBA,EAAG48C,eAAe,EAAG,EAAG,EAAG,IAQ7Bd,cAAe,SAASe,EAAuBxB,EAAgBC,GAC9D,IAAIt7C,EAAKtsB,KACLopE,EAAsBzB,EAAe3pD,EAAI9M,KAAK+P,IAAI2mD,EAAe5pD,GACjEqrD,EAAuBn4D,KAAKmN,IAAIspD,EAAe1pD,EAAIqO,EAAG3f,MAAO,GAAKuE,KAAK+P,IAAI2mD,EAAe3pD,GAC1FqrD,GAAsB3B,EAAexnD,EAAIjP,KAAK8P,IAAI4mD,EAAeznD,GACjEopD,GAAyBr4D,KAAKmN,IAAIspD,EAAexpD,GAAKmO,EAAG1f,OAAS0f,EAAGunC,YAAa,GAAK3iD,KAAK8P,IAAI4mD,EAAezpD,GAEnHirD,EAAsBL,GAAaK,GACnCC,EAAuBN,GAAaM,GACpCC,EAAqBP,GAAaO,GAClCC,EAAwBR,GAAaQ,GAErCj9C,EAAG07C,YAAc92D,KAAKkN,IACrBlN,KAAKD,MAAMk4D,GAAyBC,EAAsBC,GAAwB,GAClFn4D,KAAKD,MAAMk4D,GAAyBG,EAAqBC,GAAyB,IACnFj9C,EAAG48C,eAAeE,EAAqBC,EAAsBC,EAAoBC,IAGlFL,eAAgB,SAASM,EAAcC,EAAeC,EAAaC,GAClE,IAAIr9C,EAAKtsB,KACL4pE,EAAWt9C,EAAG3f,MAAQ88D,EAAgBn9C,EAAG07C,YACzC6B,EAAUL,EAAel9C,EAAG07C,YAC5B8B,EAASJ,EAAcp9C,EAAG07C,YAC1B+B,EAAaz9C,EAAG1f,OAAS0f,EAAGunC,WAAc8V,EAAiBr9C,EAAG07C,YAElE17C,EAAGqlB,QAAUzgC,KAAKD,OAAQ44D,EAAUD,GAAY,EAAKt9C,EAAG6D,MACxD7D,EAAGslB,QAAU1gC,KAAKD,OAAQ64D,EAASC,GAAa,EAAKz9C,EAAG8D,IAAM9D,EAAGunC,aAGlEoU,cAAe,SAAS9lE,GACvB,IAAI2tB,EAAQ9vB,KAAK8vB,MACbk6C,EAAkB,IAAMl6C,EAAMrtB,KAAKka,OAAOjR,OAC1C+B,EAAUqiB,EAAMriB,SAAW,GAC3B6xB,EAAa7xB,EAAQ6xB,YAAc,EAGnCuB,GAAS1+B,EAAQ6nE,EAAkB1qC,GAAc,IAErD,OAAQuB,EAAQ,EAAIA,EAAQ,IAAMA,GAAS3vB,KAAK4P,GAAK,EAAI,KAG1DgxB,8BAA+B,SAASnwC,GACvC,IAAI2qB,EAAKtsB,KAET,GAAIw2B,GAAUnM,cAAc1oB,GAC3B,OAAOwoC,IAIR,IAAI8/B,EAAgB39C,EAAG07C,aAAe17C,EAAGjO,IAAMiO,EAAGlO,KAClD,OAAIkO,EAAG7e,QAAQqhC,MAAM9jB,SACZsB,EAAGjO,IAAM1c,GAASsoE,GAEnBtoE,EAAQ2qB,EAAGlO,KAAO6rD,GAG3BlC,iBAAkB,SAAS5lE,EAAO+nE,GACjC,IAAI59C,EAAKtsB,KACLmqE,EAAY79C,EAAG27C,cAAc9lE,GAAU+O,KAAK4P,GAAK,EACrD,MAAO,CACNlD,EAAG1M,KAAK8P,IAAImpD,GAAaD,EAAqB59C,EAAGqlB,QACjD9zB,EAAG3M,KAAK+P,IAAIkpD,GAAaD,EAAqB59C,EAAGslB,UAInDS,yBAA0B,SAASlwC,EAAOR,GACzC,OAAO3B,KAAK+nE,iBAAiB5lE,EAAOnC,KAAK8xC,8BAA8BnwC,KAGxEyoE,gBAAiB,SAASjoE,GACzB,IAAImqB,EAAKtsB,KACLoe,EAAMkO,EAAGlO,IACTC,EAAMiO,EAAGjO,IAEb,OAAOiO,EAAG+lB,yBAAyBlwC,GAAS,EAC3CmqB,EAAG0kB,YAAc,EACjB5yB,EAAM,GAAKC,EAAM,EAAIA,EACrBD,EAAM,GAAKC,EAAM,EAAID,EACrB,IAMFgjD,UAAW,WACV,IAOI1oD,EAAGiuB,EAAQ6C,EAPXld,EAAKtsB,KACL+vB,EAAMzD,EAAGyD,IACTqc,EAAO9f,EAAG7e,QACV4wD,EAAejyB,EAAKxF,UACpByjC,EAAgBj+B,EAAKwE,WACrB1Q,EAAY0mC,GAAiByD,EAAcnqC,UAAWm+B,EAAan+B,WACnEsgC,EAAYoG,GAAiByD,EAAchpD,MAAOg9C,EAAah9C,OAgBnE,GAbI+qB,EAAK2E,YAAYF,SACpB03B,GAAgBj8C,GAGb+xC,EAAaxtB,SAChBra,GAAU1L,KAAKwB,EAAGwiB,OAAO,SAAS3gC,EAAOhM,GAC1B,IAAVA,IACHwkC,EAASra,EAAGwlB,8BAA8BxlB,EAAGm4C,eAAetiE,IAC5D2mE,GAAex8C,EAAI+xC,EAAc13B,EAAQxkC,OAKxCkoE,EAAcx5B,SAAW3Q,GAAasgC,EAAW,CASpD,IARAzwC,EAAImB,OACJnB,EAAImQ,UAAYA,EAChBnQ,EAAIyR,YAAcg/B,EACdzwC,EAAI4S,cACP5S,EAAI4S,YAAYmkC,GAAU,CAACuD,EAAczoC,WAAYy8B,EAAaz8B,WAAY,MAC9E7R,EAAI6S,eAAiBkkC,GAAU,CAACuD,EAAcxoC,iBAAkBw8B,EAAax8B,iBAAkB,KAG3FnpB,EAAI4T,EAAGwD,MAAMrtB,KAAKka,OAAOjR,OAAS,EAAGgN,GAAK,EAAGA,IACjDiuB,EAASra,EAAGwlB,8BAA8B1F,EAAK0C,MAAM9jB,QAAUsB,EAAGlO,IAAMkO,EAAGjO,KAC3EmrB,EAAWld,EAAGy7C,iBAAiBrvD,EAAGiuB,GAClC5W,EAAIuB,YACJvB,EAAIQ,OAAOjE,EAAGqlB,QAASrlB,EAAGslB,SAC1B7hB,EAAIwB,OAAOiY,EAAS5rB,EAAG4rB,EAAS3rB,GAChCkS,EAAI2B,SAGL3B,EAAIsB,YAONkwC,YAAa,WACZ,IAAIj1C,EAAKtsB,KACL+vB,EAAMzD,EAAGyD,IACTqc,EAAO9f,EAAG7e,QACVohC,EAAWzC,EAAK0C,MAEpB,GAAKD,EAASgC,QAAd,CAIA,IAGIlK,EAAQh6B,EAHR2yB,EAAahT,EAAG27C,cAAc,GAC9BpQ,EAAWrhC,GAAU/oB,QAAQsmB,WAAW8a,GACxCy7B,EAAgB1D,GAAiB/3B,EAASmqB,UAAWzlC,EAAcxjB,OAAOkjB,kBAG9ElD,EAAImB,OACJnB,EAAI0D,KAAOokC,EAASjiD,OACpBma,EAAIoB,UAAU7E,EAAGqlB,QAASrlB,EAAGslB,SAC7B7hB,EAAIrH,OAAO4W,GACXvP,EAAIuF,UAAY,SAChBvF,EAAI23B,aAAe,SAEnBlxB,GAAU1L,KAAKwB,EAAGwiB,OAAO,SAAS3gC,EAAOhM,IAC1B,IAAVA,GAAgB0sC,EAAS7jB,WAI7B2b,EAASra,EAAGwlB,8BAA8BxlB,EAAGm4C,eAAetiE,IAExD0sC,EAASo4B,oBACZt6D,EAAQojB,EAAI60B,YAAYz2C,GAAOxB,MAC/BojB,EAAIwR,UAAYsN,EAASq4B,cAEzBn3C,EAAImV,UACFv4B,EAAQ,EAAIkiC,EAASu4B,kBACrBzgC,EAASkxB,EAAS9mC,KAAO,EAAI8d,EAASs4B,iBACvCx6D,EAAoC,EAA5BkiC,EAASu4B,iBACjBvP,EAAS9mC,KAAmC,EAA5B8d,EAASs4B,mBAI3Bp3C,EAAIwR,UAAY+oC,EAChBv6C,EAAI43B,SAASx5C,EAAO,GAAIw4B,OAGzB5W,EAAIsB,YAMLmwC,WAAYhrC,GAAUrM,OAInBogD,GAAcxD,GAClBkC,GAAmBrG,UAAY2H,GAE/B,IAAIC,GAAeh0C,GAAU7J,YACzB89C,GAAYj0C,GAAU/oB,QAAQ4mB,QAC9Bq2C,GAAmBl0C,GAAU9L,eAG7BigD,GAAc79D,OAAO89D,mBAAqB,iBAC1CC,GAAc/9D,OAAOg+D,kBAAoB,iBAEzCC,GAAY,CACfC,YAAa,CACZC,QAAQ,EACRl6C,KAAM,EACNm6C,MAAO,KAERp1D,OAAQ,CACPm1D,QAAQ,EACRl6C,KAAM,IACNm6C,MAAO,IAERC,OAAQ,CACPF,QAAQ,EACRl6C,KAAM,IACNm6C,MAAO,IAERE,KAAM,CACLH,QAAQ,EACRl6C,KAAM,KACNm6C,MAAO,IAERG,IAAK,CACJJ,QAAQ,EACRl6C,KAAM,MACNm6C,MAAO,IAERI,KAAM,CACLL,QAAQ,EACRl6C,KAAM,OACNm6C,MAAO,GAERK,MAAO,CACNN,QAAQ,EACRl6C,KAAM,OACNm6C,MAAO,IAERM,QAAS,CACRP,QAAQ,EACRl6C,KAAM,OACNm6C,MAAO,GAERO,KAAM,CACLR,QAAQ,EACRl6C,KAAM,SAIJ26C,GAAQtnE,OAAOie,KAAK0oD,IAExB,SAASY,GAAOpsD,EAAGpB,GAClB,OAAOoB,EAAIpB,EAGZ,SAASytD,GAAY13B,GACpB,IAEIx7B,EAAG0S,EAAMtlB,EAFTJ,EAAO,GACPmmE,EAAM,GAGV,IAAKnzD,EAAI,EAAG0S,EAAO8oB,EAAMxoC,OAAQgN,EAAI0S,IAAQ1S,EAC5C5S,EAAOouC,EAAMx7B,GACRhT,EAAKI,KACTJ,EAAKI,IAAQ,EACb+lE,EAAIv+D,KAAKxH,IAIX,OAAO+lE,EAGR,SAASC,GAAOr+D,GACf,OAAO+oB,GAAU9L,eAAejd,EAAQzF,KAAKoW,IAAK3Q,EAAQqhC,MAAM1wB,KAGjE,SAAS2tD,GAAOt+D,GACf,OAAO+oB,GAAU9L,eAAejd,EAAQzF,KAAKqW,IAAK5Q,EAAQqhC,MAAMzwB,KAkBjE,SAAS2tD,GAAiBC,EAAY7tD,EAAKC,EAAK6tD,GAC/C,GAAqB,WAAjBA,IAA8BD,EAAWvgE,OAC5C,MAAO,CACN,CAAC1D,KAAMoW,EAAKs2B,IAAK,GACjB,CAAC1sC,KAAMqW,EAAKq2B,IAAK,IAInB,IAEIh8B,EAAG0S,EAAMqT,EAAMiH,EAAMa,EAFrB4lC,EAAQ,GACRj4B,EAAQ,CAAC91B,GAGb,IAAK1F,EAAI,EAAG0S,EAAO6gD,EAAWvgE,OAAQgN,EAAI0S,IAAQ1S,EACjDgtB,EAAOumC,EAAWvzD,GACdgtB,EAAOtnB,GAAOsnB,EAAOrnB,GACxB61B,EAAM5mC,KAAKo4B,GAMb,IAFAwO,EAAM5mC,KAAK+Q,GAEN3F,EAAI,EAAG0S,EAAO8oB,EAAMxoC,OAAQgN,EAAI0S,IAAQ1S,EAC5C6tB,EAAO2N,EAAMx7B,EAAI,GACjB+lB,EAAOyV,EAAMx7B,EAAI,GACjBgtB,EAAOwO,EAAMx7B,QAGAvU,IAATs6B,QAA+Bt6B,IAAToiC,GAAsBr1B,KAAKiQ,OAAOolB,EAAO9H,GAAQ,KAAOiH,GACjFymC,EAAM7+D,KAAK,CAACtF,KAAM09B,EAAMgP,IAAKh8B,GAAK0S,EAAO,KAI3C,OAAO+gD,EAIR,SAASC,GAAOD,EAAOlrE,EAAKU,GAC3B,IAEI0qE,EAAKC,EAAIC,EAFTC,EAAK,EACLzsD,EAAKosD,EAAMzgE,OAAS,EAGxB,MAAO8gE,GAAM,GAAKA,GAAMzsD,EAAI,CAK3B,GAJAssD,EAAOG,EAAKzsD,GAAO,EACnBusD,EAAKH,EAAME,EAAM,IAAM,KACvBE,EAAKJ,EAAME,IAENC,EAEJ,MAAO,CAACE,GAAI,KAAMzsD,GAAIwsD,GAChB,GAAIA,EAAGtrE,GAAOU,EACpB6qE,EAAKH,EAAM,MACL,MAAIC,EAAGrrE,GAAOU,GAGpB,MAAO,CAAC6qE,GAAIF,EAAIvsD,GAAIwsD,GAFpBxsD,EAAKssD,EAAM,GAOb,MAAO,CAACG,GAAID,EAAIxsD,GAAI,MASrB,SAAS0sD,GAAcN,EAAOO,EAAM/gD,EAAMghD,GACzC,IAAIzjC,EAAQkjC,GAAOD,EAAOO,EAAM/gD,GAG5B8S,EAAQyK,EAAMsjC,GAAiBtjC,EAAMnpB,GAA+BmpB,EAAMsjC,GAAhCL,EAAMA,EAAMzgE,OAAS,GAA5CygE,EAAM,GACzB5lC,EAAQ2C,EAAMsjC,GAAiBtjC,EAAMnpB,GAA+BmpB,EAAMnpB,GAAhCosD,EAAMA,EAAMzgE,OAAS,GAA5CygE,EAAM,GAEzBS,EAAOrmC,EAAKmmC,GAAQjuC,EAAKiuC,GACzBlsD,EAAQosD,GAAQjhD,EAAO8S,EAAKiuC,IAASE,EAAO,EAC5CjmC,GAAUJ,EAAKomC,GAAQluC,EAAKkuC,IAASnsD,EAEzC,OAAOie,EAAKkuC,GAAQhmC,EAGrB,SAASkmC,GAAY7nD,EAAO5S,GAC3B,IAAI06D,EAAU9nD,EAAM+nD,SAChBt/D,EAAUuX,EAAMvX,QAAQzF,KACxBglE,EAASv/D,EAAQu/D,OACjBnX,EAASmX,GAAUv/D,EAAQooD,OAC3Bl0D,EAAQyQ,EAaZ,MAXsB,oBAAX46D,IACVrrE,EAAQqrE,EAAOrrE,IAIX60B,GAAU/L,SAAS9oB,KACvBA,EAA0B,kBAAXk0D,EACZiX,EAAQlX,MAAMj0D,EAAOk0D,GACrBiX,EAAQlX,MAAMj0D,IAGJ,OAAVA,GACKA,GAKJqrE,GAA4B,oBAAXnX,IACrBl0D,EAAQk0D,EAAOzjD,GAGVokB,GAAU/L,SAAS9oB,KACvBA,EAAQmrE,EAAQlX,MAAMj0D,KAIjBA,GAGR,SAASi0D,GAAM5wC,EAAO5S,GACrB,GAAIokB,GAAUnM,cAAcjY,GAC3B,OAAO,KAGR,IAAI3E,EAAUuX,EAAMvX,QAAQzF,KACxBrG,EAAQkrE,GAAY7nD,EAAOA,EAAMirB,cAAc79B,IACnD,OAAc,OAAVzQ,GAIA8L,EAAQ0T,QACXxf,GAASqjB,EAAM+nD,SAASjX,QAAQn0D,EAAO8L,EAAQ0T,QAJxCxf,EAaT,SAASsrE,GAA0BC,EAAS9uD,EAAKC,EAAK8uD,GACrD,IACIz0D,EAAG00D,EAAU1T,EADbtuC,EAAOsgD,GAAMhgE,OAGjB,IAAKgN,EAAIgzD,GAAMzhD,QAAQijD,GAAUx0D,EAAI0S,EAAO,IAAK1S,EAIhD,GAHA00D,EAAWrC,GAAUW,GAAMhzD,IAC3BghD,EAAS0T,EAASlC,MAAQkC,EAASlC,MAAQL,GAEvCuC,EAASnC,QAAU/5D,KAAK8oD,MAAM37C,EAAMD,IAAQs7C,EAAS0T,EAASr8C,QAAUo8C,EAC3E,OAAOzB,GAAMhzD,GAIf,OAAOgzD,GAAMtgD,EAAO,GAMrB,SAASiiD,GAA2BroD,EAAOg5C,EAAUkP,EAAS9uD,EAAKC,GAClE,IAAI3F,EAAG4qD,EAEP,IAAK5qD,EAAIgzD,GAAMhgE,OAAS,EAAGgN,GAAKgzD,GAAMzhD,QAAQijD,GAAUx0D,IAEvD,GADA4qD,EAAOoI,GAAMhzD,GACTqyD,GAAUzH,GAAM2H,QAAUjmD,EAAM+nD,SAASpuD,KAAKN,EAAKD,EAAKklD,IAAStF,EAAW,EAC/E,OAAOsF,EAIT,OAAOoI,GAAMwB,EAAUxB,GAAMzhD,QAAQijD,GAAW,GAGjD,SAASI,GAAmBhK,GAC3B,IAAK,IAAI5qD,EAAIgzD,GAAMzhD,QAAQq5C,GAAQ,EAAGl4C,EAAOsgD,GAAMhgE,OAAQgN,EAAI0S,IAAQ1S,EACtE,GAAIqyD,GAAUW,GAAMhzD,IAAIuyD,OACvB,OAAOS,GAAMhzD,GAWhB,SAAS60D,GAASvoD,EAAO5G,EAAKC,EAAK8uD,GAClC,IAQInlE,EARA8kE,EAAU9nD,EAAM+nD,SAChBt/D,EAAUuX,EAAMvX,QAChB+/D,EAAW//D,EAAQzF,KACnBuwD,EAAQiV,EAASlK,MAAQ2J,GAA0BO,EAASN,QAAS9uD,EAAKC,EAAK8uD,GAC/E9J,EAAWoH,GAAU,CAAC+C,EAASnK,SAAUmK,EAASC,aAAc,IAChEC,EAAoB,SAAVnV,GAAmBiV,EAASG,WACtClV,EAAQr6C,EACR0wB,EAAQ,GAYZ,GARI4+B,IACHjV,GAASqU,EAAQhX,QAAQ2C,EAAO,UAAWiV,IAI5CjV,GAASqU,EAAQhX,QAAQ2C,EAAOiV,EAAU,MAAQnV,GAG9CuU,EAAQnuD,KAAKN,EAAKD,EAAKm6C,GAAS,IAAS8K,EAC5C,MAAMjlD,EAAM,QAAUC,EAAM,uCAAyCglD,EAAW,IAAM9K,EAGvF,IAAKvwD,EAAOywD,EAAOzwD,EAAOqW,EAAKrW,GAAQ8kE,EAAQ9wB,IAAIh0C,EAAMq7D,EAAU9K,GAClEzpB,EAAMxhC,KAAKtF,GAOZ,OAJIA,IAASqW,GAA0B,UAAnB5Q,EAAQi3B,QAC3BoK,EAAMxhC,KAAKtF,GAGL8mC,EASR,SAAS8+B,GAAezB,EAAOr9B,EAAO1wB,EAAKC,EAAK5Q,GAC/C,IAEIgrD,EAAOrwB,EAFPxR,EAAQ,EACR6P,EAAM,EAkBV,OAfIh5B,EAAQk5B,QAAUmI,EAAMpjC,SAC3B+sD,EAAQgU,GAAcN,EAAO,OAAQr9B,EAAM,GAAI,OAE9ClY,EADoB,IAAjBkY,EAAMpjC,OACD,EAAI+sD,GAEHgU,GAAcN,EAAO,OAAQr9B,EAAM,GAAI,OAAS2pB,GAAS,EAEnErwB,EAAOqkC,GAAcN,EAAO,OAAQr9B,EAAMA,EAAMpjC,OAAS,GAAI,OAE5D+6B,EADoB,IAAjBqI,EAAMpjC,OACH08B,GAECA,EAAOqkC,GAAcN,EAAO,OAAQr9B,EAAMA,EAAMpjC,OAAS,GAAI,QAAU,GAIzE,CAACkrB,MAAOA,EAAO6P,IAAKA,EAAKizB,OAAQ,GAAK9iC,EAAQ,EAAI6P,IAG1D,SAASonC,GAAc7oD,EAAO8pB,EAAOzrC,EAAKyqE,GACzC,IAGIxV,EAAOn2D,EAHP2qE,EAAU9nD,EAAM+nD,SAChBtU,GAASqU,EAAQhX,QAAQhnB,EAAM,GAAGntC,MAAOmsE,GACzC1lC,EAAO0G,EAAMA,EAAMpjC,OAAS,GAAG/J,MAGnC,IAAK22D,EAAQG,EAAOH,GAASlwB,EAAMkwB,GAASwU,EAAQ9wB,IAAIsc,EAAO,EAAGwV,GACjE3rE,EAAQkB,EAAIi1D,GACRn2D,GAAS,IACZ2sC,EAAM3sC,GAAOm2D,OAAQ,GAGvB,OAAOxpB,EAGR,SAASi/B,GAAoB/oD,EAAOU,EAAQooD,GAC3C,IAGIp1D,EAAG/W,EAHHmtC,EAAQ,GACRzrC,EAAM,GACN+nB,EAAO1F,EAAOha,OAGlB,IAAKgN,EAAI,EAAGA,EAAI0S,IAAQ1S,EACvB/W,EAAQ+jB,EAAOhN,GACfrV,EAAI1B,GAAS+W,EAEbo2B,EAAMxhC,KAAK,CACV3L,MAAOA,EACP22D,OAAO,IAMT,OAAiB,IAATltC,GAAe0iD,EAAqBD,GAAc7oD,EAAO8pB,EAAOzrC,EAAKyqE,GAAzCh/B,EAGrC,IAAIk/B,GAAkB,CACrBxkC,SAAU,SASV0iC,aAAc,SASdxnC,OAAQ,OAERupC,SAAU,GACVjmE,KAAM,CACLglE,QAAQ,EACR1J,MAAM,EACNniD,OAAO,EACP+sD,eAAe,EACfP,YAAY,EACZT,QAAS,cACTiB,eAAgB,IAEjBr/B,MAAO,CACN+rB,UAAU,EAUV1xC,OAAQ,OAERmvC,MAAO,CACN9Y,SAAS,KAKR4uB,GAAajM,GAAWl2C,OAAO,CAClCmL,WAAY,WACXp3B,KAAK6rD,oBACLsW,GAAW1nD,UAAU2c,WAAW5d,KAAKxZ,OAGtC68B,OAAQ,WACP,IAAIvQ,EAAKtsB,KACLyN,EAAU6e,EAAG7e,QACbzF,EAAOyF,EAAQzF,OAASyF,EAAQzF,KAAO,IACvC8kE,EAAUxgD,EAAGygD,SAAW,IAAI3W,GAAcD,MAAM1oD,EAAQwgE,SAASI,MAarE,OAVA7D,GAAa,aAAcxiE,EAAK6tD,OAAQ,cAAe,eACvD2U,GAAa,aAAcxiE,EAAKoW,IAAK,WAAY,aACjDosD,GAAa,aAAcxiE,EAAKqW,IAAK,WAAY,aAMjDmY,GAAU1K,QAAQ9jB,EAAKmmE,eAAgBrB,EAAQnX,WAExCwM,GAAW1nD,UAAUoiB,OAAOvhB,MAAMgR,EAAIrT,YAM9Cg3B,cAAe,SAASovB,GAIvB,OAHIA,QAA2Bl7D,IAAfk7D,EAASl/C,IACxBk/C,EAAWA,EAASl/C,GAEdgiD,GAAW1nD,UAAUw1B,cAAcz2B,KAAKxZ,KAAMq/D,IAGtDjD,oBAAqB,WACpB,IAUI1jD,EAAGszB,EAAG5gB,EAAM8nB,EAAMzwC,EAAM6rE,EAAWC,EAVnCjiD,EAAKtsB,KACL8vB,EAAQxD,EAAGwD,MACXg9C,EAAUxgD,EAAGygD,SACbt/D,EAAU6e,EAAG7e,QACb61D,EAAO71D,EAAQzF,KAAKs7D,MAAQ,MAC5BllD,EAAMysD,GACNxsD,EAAMssD,GACNsB,EAAa,GACb5wC,EAAW,GACX1e,EAAS,GAET6xD,EAAaliD,EAAG6uC,aAEpB,IAAKziD,EAAI,EAAG0S,EAAOojD,EAAW9iE,OAAQgN,EAAI0S,IAAQ1S,EACjDiE,EAAOrP,KAAKsoD,GAAMtpC,EAAIkiD,EAAW91D,KAGlC,IAAKA,EAAI,EAAG0S,GAAQ0E,EAAMrtB,KAAK44B,UAAY,IAAI3vB,OAAQgN,EAAI0S,IAAQ1S,EAClE,GAAIoX,EAAMmc,iBAAiBvzB,GAI1B,GAHAjW,EAAOqtB,EAAMrtB,KAAK44B,SAAS3iB,GAAGjW,KAG1B+zB,GAAUhM,SAAS/nB,EAAK,IAG3B,IAFA44B,EAAS3iB,GAAK,GAETszB,EAAI,EAAGkH,EAAOzwC,EAAKiJ,OAAQsgC,EAAIkH,IAAQlH,EAC3CsiC,EAAY1Y,GAAMtpC,EAAI7pB,EAAKupC,IAC3BigC,EAAW3+D,KAAKghE,GAChBjzC,EAAS3iB,GAAGszB,GAAKsiC,OAGlBjzC,EAAS3iB,GAAKiE,EAAOrR,MAAM,GACtBijE,IACJtC,EAAaA,EAAW3lD,OAAO3J,GAC/B4xD,GAAc,QAIhBlzC,EAAS3iB,GAAK,GAIZiE,EAAOjR,SACV0S,EAAMlN,KAAKkN,IAAIA,EAAKzB,EAAO,IAC3B0B,EAAMnN,KAAKmN,IAAIA,EAAK1B,EAAOA,EAAOjR,OAAS,KAGxCugE,EAAWvgE,SACdugE,EAAa7gD,EAAO,EAAIwgD,GAAYK,GAAY9mE,KAAKwmE,IAAUM,EAAW9mE,KAAKwmE,IAC/EvtD,EAAMlN,KAAKkN,IAAIA,EAAK6tD,EAAW,IAC/B5tD,EAAMnN,KAAKmN,IAAIA,EAAK4tD,EAAWA,EAAWvgE,OAAS,KAGpD0S,EAAMw3C,GAAMtpC,EAAIw/C,GAAOr+D,KAAa2Q,EACpCC,EAAMu3C,GAAMtpC,EAAIy/C,GAAOt+D,KAAa4Q,EAGpCD,EAAMA,IAAQysD,IAAeiC,EAAQhX,QAAQ5tD,KAAKC,MAAOm7D,GAAQllD,EACjEC,EAAMA,IAAQssD,IAAemC,EAAQ/W,MAAM7tD,KAAKC,MAAOm7D,GAAQ,EAAIjlD,EAGnEiO,EAAGlO,IAAMlN,KAAKkN,IAAIA,EAAKC,GACvBiO,EAAGjO,IAAMnN,KAAKmN,IAAID,EAAM,EAAGC,GAG3BiO,EAAGmiD,OAAS,GACZniD,EAAGoiD,YAAc,CAChBjsE,KAAMwpE,EACN5wC,SAAUA,EACV1e,OAAQA,IAIV4/C,WAAY,WACX,IAWI7jD,EAAG0S,EAAMkjD,EAXThiD,EAAKtsB,KACLoe,EAAMkO,EAAGlO,IACTC,EAAMiO,EAAGjO,IACT5Q,EAAU6e,EAAG7e,QACbohC,EAAWphC,EAAQqhC,MACnB0+B,EAAW//D,EAAQzF,KACnBikE,EAAa3/C,EAAGoiD,YAChB5/B,EAAQ,GACRq+B,EAAW7gD,EAAGqiD,iBAAiBvwD,GAC/B+K,EAAS0lB,EAAS1lB,OAClB+iD,EAAez+D,EAAQy+D,aAqB3B,IAjBCD,EADc,SAAX9iD,GAAiC,SAAXA,GAAsC,WAAjB+iD,EACjCD,EAAWxpE,KACH,WAAX0mB,EACG8iD,EAAWtvD,OAEX4wD,GAASjhD,EAAIlO,EAAKC,EAAK8uD,GAGd,UAAnB1/D,EAAQi3B,QAAsBunC,EAAWvgE,SAC5C0S,EAAM6tD,EAAW,GACjB5tD,EAAM4tD,EAAWA,EAAWvgE,OAAS,IAItC0S,EAAMw3C,GAAMtpC,EAAIw/C,GAAOr+D,KAAa2Q,EACpCC,EAAMu3C,GAAMtpC,EAAIy/C,GAAOt+D,KAAa4Q,EAG/B3F,EAAI,EAAG0S,EAAO6gD,EAAWvgE,OAAQgN,EAAI0S,IAAQ1S,EACjD41D,EAAYrC,EAAWvzD,GACnB41D,GAAalwD,GAAOkwD,GAAajwD,GACpCywB,EAAMxhC,KAAKghE,GAsBb,OAlBAhiD,EAAGlO,IAAMA,EACTkO,EAAGjO,IAAMA,EAKTiO,EAAGsiD,MAAQpB,EAASlK,OAASz0B,EAASgsB,SACnCoS,GAA0BO,EAASN,QAAS5gD,EAAGlO,IAAKkO,EAAGjO,IAAK8uD,GAC5DE,GAA2B/gD,EAAIwiB,EAAMpjC,OAAQ8hE,EAASN,QAAS5gD,EAAGlO,IAAKkO,EAAGjO,MAC7EiO,EAAGuiD,WAAchgC,EAASypB,MAAM9Y,SAAwB,SAAblzB,EAAGsiD,MAC3CtB,GAAmBhhD,EAAGsiD,YADwCzqE,EAEjEmoB,EAAGmiD,OAASzC,GAAiB1/C,EAAGoiD,YAAYjsE,KAAM2b,EAAKC,EAAK6tD,GAC5D5/C,EAAGwiD,SAAWlB,GAAethD,EAAGmiD,OAAQ3/B,EAAO1wB,EAAKC,EAAK5Q,GAErDohC,EAAS7jB,SACZ8jB,EAAM9jB,UAGA+iD,GAAoBzhD,EAAIwiB,EAAOxiB,EAAGuiD,aAG1CtsB,iBAAkB,SAASpgD,EAAOg4B,GACjC,IAAI7N,EAAKtsB,KACL8sE,EAAUxgD,EAAGygD,SACbtqE,EAAO6pB,EAAGwD,MAAMrtB,KAChB+qE,EAAWlhD,EAAG7e,QAAQzF,KACtBmG,EAAQ1L,EAAKka,QAAUxa,EAAQM,EAAKka,OAAOjR,OAASjJ,EAAKka,OAAOxa,GAAS,GACzER,EAAQc,EAAK44B,SAASlB,GAAc13B,KAAKN,GAK7C,OAHIq0B,GAAUhM,SAAS7oB,KACtBwM,EAAQme,EAAG2jB,cAActuC,IAEtB6rE,EAASuB,cACLjC,EAAQjX,OAAOgX,GAAYvgD,EAAIne,GAAQq/D,EAASuB,eAEnC,kBAAV5gE,EACHA,EAED2+D,EAAQjX,OAAOgX,GAAYvgD,EAAIne,GAAQq/D,EAASW,eAAea,WAOvEC,mBAAoB,SAASjnE,EAAM7F,EAAO2sC,EAAO+mB,GAChD,IAAIvpC,EAAKtsB,KACL8sE,EAAUxgD,EAAGygD,SACbt/D,EAAU6e,EAAG7e,QACbkoD,EAAUloD,EAAQzF,KAAKmmE,eACvBe,EAAcvZ,EAAQrpC,EAAGsiD,OACzBd,EAAYxhD,EAAGuiD,WACfM,EAAcxZ,EAAQmY,GACtB/T,EAAOjrB,EAAM3sC,GACb0sC,EAAWphC,EAAQqhC,MACnBwpB,EAAQwV,GAAaqB,GAAepV,GAAQA,EAAKzB,MACjDnqD,EAAQ2+D,EAAQjX,OAAO7tD,EAAM6tD,IAAkByC,EAAQ6W,EAAcD,IACrEE,EAAiB9W,EAAQzpB,EAASypB,MAAQzpB,EAAS0pB,MACnD8W,EAAY5E,GAAU,CACzB2E,EAAextE,SACfwtE,EAAe3R,aACf5uB,EAASjtC,SACTitC,EAAS4uB,eAGV,OAAO4R,EAAYA,EAAUlhE,EAAOhM,EAAO2sC,GAAS3gC,GAGrDqvD,qBAAsB,SAAS1uB,GAC9B,IACIp2B,EAAG0S,EADHzO,EAAS,GAGb,IAAKjE,EAAI,EAAG0S,EAAO0jB,EAAMpjC,OAAQgN,EAAI0S,IAAQ1S,EAC5CiE,EAAOrP,KAAKtN,KAAKivE,mBAAmBngC,EAAMp2B,GAAG/W,MAAO+W,EAAGo2B,IAGxD,OAAOnyB,GAMR2yD,kBAAmB,SAAStnE,GAC3B,IAAIskB,EAAKtsB,KACLm4D,EAAU7rC,EAAGwiD,SACbp6B,EAAM+3B,GAAcngD,EAAGmiD,OAAQ,OAAQzmE,EAAM,OACjD,OAAOskB,EAAG4d,oBAAoBiuB,EAAQvhC,MAAQ8d,GAAOyjB,EAAQuB,SAG9D/wB,iBAAkB,SAAShnC,EAAOQ,EAAOg4B,GACxC,IAAI7N,EAAKtsB,KACLgI,EAAO,KAUX,QARc7D,IAAVhC,QAAwCgC,IAAjBg2B,IAC1BnyB,EAAOskB,EAAGoiD,YAAYrzC,SAASlB,GAAch4B,IAGjC,OAAT6F,IACHA,EAAO4tD,GAAMtpC,EAAI3qB,IAGL,OAATqG,EACH,OAAOskB,EAAGgjD,kBAAkBtnE,IAI9B69B,gBAAiB,SAAS1jC,GACzB,IAAI2sC,EAAQ9uC,KAAK4lC,WACjB,OAAOzjC,GAAS,GAAKA,EAAQ2sC,EAAMpjC,OAClC1L,KAAKsvE,kBAAkBxgC,EAAM3sC,GAAOR,OACpC,MAGF49D,iBAAkB,SAASrO,GAC1B,IAAI5kC,EAAKtsB,KACLm4D,EAAU7rC,EAAGwiD,SACbp6B,EAAMpoB,EAAGmzC,mBAAmBvO,GAASiH,EAAQuB,OAASvB,EAAQ1xB,IAC9Dz+B,EAAOykE,GAAcngD,EAAGmiD,OAAQ,MAAO/5B,EAAK,QAGhD,OAAOpoB,EAAGygD,SAAS/W,QAAQhuD,IAM5BunE,cAAe,SAASphE,GACvB,IAAIme,EAAKtsB,KACLuiE,EAAYj2C,EAAG7e,QAAQqhC,MACvB0gC,EAAiBljD,EAAGyD,IAAI60B,YAAYz2C,GAAOxB,MAC3Ck0B,EAAQrK,GAAU85B,UAAUhkC,EAAGsb,eAAiB26B,EAAU5H,YAAc4H,EAAU7H,aAClFmE,EAAc3tD,KAAK8P,IAAI6f,GACvBi+B,EAAc5tD,KAAK+P,IAAI4f,GACvB4uC,EAAe/E,GAAiBnI,EAAUtuC,SAAUV,EAAcxjB,OAAOojB,iBAE7E,MAAO,CACNrU,EAAI0wD,EAAiB3Q,EAAgB4Q,EAAe3Q,EACpDhhD,EAAI0xD,EAAiB1Q,EAAgB2Q,EAAe5Q,IAQtD6Q,cAAe,SAASvhE,GACvB,OAAOnO,KAAKuvE,cAAcphE,GAAO2Q,GAMlC6vD,iBAAkB,SAASgB,GAC1B,IAAIrjD,EAAKtsB,KACLwtE,EAAWlhD,EAAG7e,QAAQzF,KACtBmmE,EAAiBX,EAASW,eAG1BtY,EAASsY,EAAeX,EAASlK,OAAS6K,EAAenD,YACzD4E,EAAetjD,EAAG2iD,mBAAmBU,EAAa,EAAG5B,GAAoBzhD,EAAI,CAACqjD,GAAcrjD,EAAGuiD,YAAahZ,GAC5G9kC,EAAOzE,EAAGijD,cAAcK,GACxBzC,EAAWj8D,KAAKD,MAAMqb,EAAGsb,eAAiBtb,EAAG3f,MAAQokB,EAAKjS,EAAIwN,EAAG1f,OAASmkB,EAAKjT,GAMnF,OAJIwO,EAAG7e,QAAQk5B,QACdwmC,IAGMA,EAAW,EAAIA,EAAW,KAK/B0C,GAAc7B,GAClBI,GAAWxL,UAAYiN,GAEvB,IAAIh1C,GAAS,CACZt5B,SAAU+gE,GACVj1C,OAAQ83C,GACRnO,YAAakP,GACb4J,aAAc7G,GACdjhE,KAAMomE,IAGH2B,GAAU,CACbf,SAAU,yBACVhE,YAAa,gBACbl1D,OAAQ,YACRq1D,OAAQ,SACRC,KAAM,KACNC,IAAK,QACLC,KAAM,KACNC,MAAO,WACPC,QAAS,cACTC,KAAM,QAGPrV,GAAcD,MAAMF,SAA2B,oBAAXj6C,EAAwB,CAC3Dg0D,IAAK,SAELra,QAAS,WACR,OAAOoa,IAGRna,MAAO,SAASj0D,EAAOk0D,GAMtB,MALqB,kBAAVl0D,GAAwC,kBAAXk0D,EACvCl0D,EAAQqa,EAAOra,EAAOk0D,GACVl0D,aAAiBqa,IAC7Bra,EAAQqa,EAAOra,IAETA,EAAMqkB,UAAYrkB,EAAMsuE,UAAY,MAG5Cpa,OAAQ,SAAS7tD,EAAM6tD,GACtB,OAAO75C,EAAOhU,GAAM6tD,OAAOA,IAG5B7Z,IAAK,SAASh0C,EAAMkoE,EAAQ5M,GAC3B,OAAOtnD,EAAOhU,GAAMg0C,IAAIk0B,EAAQ5M,GAAM2M,WAGvCtxD,KAAM,SAASN,EAAKD,EAAKklD,GACxB,OAAOtnD,EAAOqC,GAAKM,KAAK3C,EAAOoC,GAAMklD,IAGtCxN,QAAS,SAAS9tD,EAAMs7D,EAAMoK,GAE7B,OADA1lE,EAAOgU,EAAOhU,GACD,YAATs7D,EACIt7D,EAAK2lE,WAAWD,GAASuC,UAE1BjoE,EAAK8tD,QAAQwN,GAAM2M,WAG3Bla,MAAO,SAAS/tD,EAAMs7D,GACrB,OAAOtnD,EAAOhU,GAAM+tD,MAAMuN,GAAM2M,WAWjCja,QAAS,SAAShuD,GACjB,OAAOgU,EAAOhU,KAEZ,IAEJurB,EAAcR,KAAK,SAAU,CAC5BhmB,QAAS,CACRojE,OAAQ,CACPC,WAAW,MAKd,IAAIC,GAAU,CACbv1C,QAAS,SAAS3R,GACjB,IAAIhnB,EAAQgnB,EAAOsI,KACf3B,EAAQ3G,EAAO2G,MACf8K,EAAO9K,EAAMwL,eAAen5B,GAC5BmuE,EAAU11C,GAAQ9K,EAAMmc,iBAAiB9pC,GACzCggC,EAAUmuC,GAAW11C,EAAKE,QAAQsH,WAAc,GAChD12B,EAASy2B,EAAOz2B,QAAU,EAE9B,OAAQA,EAAgB,SAASkmB,EAAOlZ,GACvC,OAAQA,EAAIhN,GAAUy2B,EAAOzpB,GAAG8e,OAAU,MAD1B,MAKlB+4C,SAAU,SAASpnD,GAClB,IAAIonD,EAAWpnD,EAAOonD,SAClB3yD,EAAI2yD,EAAWA,EAAS3yD,EAAI,KAC5BC,EAAI0yD,EAAWA,EAAS1yD,EAAI,KAEhC,OAAI2Y,GAAUlM,QAAQimD,GACd,SAAS3+C,EAAOlZ,GACtB,OAAO63D,EAAS73D,IAIX,SAASkZ,GACf,MAAO,CACNhU,EAAS,OAANA,EAAagU,EAAMhU,EAAIA,EAC1BC,EAAS,OAANA,EAAa+T,EAAM/T,EAAIA,MAO9B,SAAS2yD,GAAW51B,EAAIz4C,EAAO08B,GAC9B,IAEIzV,EAFA1nB,EAAQk5C,EAAGnjB,QAAU,GACrBhG,EAAO/vB,EAAM+vB,KAOjB,QAJattB,IAATstB,IACHA,IAAS/vB,EAAM07B,kBAGH,IAAT3L,GAA2B,OAATA,EACrB,OAAO,EAGR,IAAa,IAATA,EACH,MAAO,SAIR,GADArI,EAASrE,WAAW0M,EAAM,IACtBhH,SAASrB,IAAWlY,KAAKD,MAAMmY,KAAYA,EAK9C,MAJgB,MAAZqI,EAAK,IAA0B,MAAZA,EAAK,KAC3BrI,EAASjnB,EAAQinB,KAGdA,IAAWjnB,GAASinB,EAAS,GAAKA,GAAUyV,IAIzCzV,EAGR,OAAQqI,GAER,IAAK,SACJ,MAAO,QACR,IAAK,MACJ,MAAO,MACR,IAAK,OACJ,MAAO,SAER,IAAK,SACL,IAAK,QACL,IAAK,MACJ,OAAOA,EAER,QACC,OAAO,GAIT,SAASg/C,GAAsBtnD,GAC9B,IAIIkb,EAJA3iC,EAAQynB,EAAOyxB,GAAGnjB,QAAU,GAC5BzS,EAAQmE,EAAOyxB,GAAGtL,QAAU,GAC5B7d,EAAOtI,EAAOsI,KACdrI,EAAS,KAGb,GAAIqB,SAASgH,GACZ,OAAO,KAiBR,GAVa,UAATA,EACHrI,OAA+BjlB,IAAtBzC,EAAMgvE,YAA4B1rD,EAAMsL,OAAS5uB,EAAMgvE,YAC7C,QAATj/C,EACVrI,OAA4BjlB,IAAnBzC,EAAMivE,SAAyB3rD,EAAMoL,IAAM1uB,EAAMivE,cAC5BxsE,IAApBzC,EAAMkvE,UAChBxnD,EAAS1nB,EAAMkvE,UACL5rD,EAAM2iB,eAChBve,EAASpE,EAAM2iB,qBAGDxjC,IAAXilB,GAAmC,OAAXA,EAAiB,CAC5C,QAAiBjlB,IAAbilB,EAAOxL,QAAgCzZ,IAAbilB,EAAOvL,EACpC,OAAOuL,EAGR,GAAIoN,GAAU/L,SAASrB,GAEtB,OADAib,EAAarf,EAAM4iB,eACZ,CACNhqB,EAAGymB,EAAajb,EAAS,KACzBvL,EAAGwmB,EAAa,KAAOjb,GAK1B,OAAO,KAGR,SAASynD,GAAwB1nD,GAChC,IAKIyN,EAAO6P,EAAKyB,EAAQxvB,EAAGkZ,EALvB5M,EAAQmE,EAAOyxB,GAAGtL,OAClB7hC,EAAUuX,EAAMvX,QAChB/B,EAASsZ,EAAM8K,MAAMrtB,KAAKka,OAAOjR,OACjC+lB,EAAOtI,EAAOsI,KACdrI,EAAS,GAGb,IAAK1d,EACJ,OAAO,KAMR,IAHAkrB,EAAQnpB,EAAQqhC,MAAM9jB,QAAUhG,EAAM3G,IAAM2G,EAAM5G,IAClDqoB,EAAMh5B,EAAQqhC,MAAM9jB,QAAUhG,EAAM5G,IAAM4G,EAAM3G,IAChD6pB,EAASljB,EAAMqtB,yBAAyB,EAAGzb,GACtCle,EAAI,EAAGA,EAAIhN,IAAUgN,EACzBkZ,EAAiB,UAATH,GAA6B,QAATA,EACzBzM,EAAMqtB,yBAAyB35B,EAAY,UAAT+Y,EAAmBmF,EAAQ6P,GAC7DzhB,EAAMolD,gBAAgB1xD,GACrBjL,EAAQm5B,UAAUkK,WACrBlf,EAAMk/C,GAAK5oC,EAAOtqB,EAClBgU,EAAMm/C,GAAK7oC,EAAOrqB,EAClB+T,EAAMiP,MAAQ7b,EAAMijD,cAAcvvD,GAAKxH,KAAK4P,GAAK,GAElDsI,EAAO9b,KAAKskB,GAEb,OAAOxI,EAGR,SAAS4nD,GAAgB7nD,GACxB,IAAInE,EAAQmE,EAAOyxB,GAAGtL,QAAU,GAEhC,OAAItqB,EAAMqtB,yBACFw+B,GAAwB1nD,GAEzBsnD,GAAsBtnD,GAG9B,SAAS8nD,GAAcllD,EAAS5pB,EAAOiuE,GACtC,IAGIhnD,EAHAD,EAAS4C,EAAQ5pB,GACjBsvB,EAAOtI,EAAOsI,KACdy/C,EAAU,CAAC/uE,GAGf,IAAKiuE,EACJ,OAAO3+C,EAGR,OAAgB,IAATA,IAA6C,IAA3By/C,EAAQjnD,QAAQwH,GAAc,CACtD,IAAKhH,SAASgH,GACb,OAAOA,EAIR,GADArI,EAAS2C,EAAQ0F,IACZrI,EACJ,OAAO,EAGR,GAAIA,EAAOknD,QACV,OAAO7+C,EAGRy/C,EAAQ5jE,KAAKmkB,GACbA,EAAOrI,EAAOqI,KAGf,OAAO,EAGR,SAAS0/C,GAAahoD,GACrB,IAAIsI,EAAOtI,EAAOsI,KACdvvB,EAAO,UAEX,OAAa,IAATuvB,EACI,MAGHhH,SAASgH,KACbvvB,EAAO,YAGDmuE,GAAQnuE,GAAMinB,IAGtB,SAASioD,GAAWx/C,GACnB,OAAOA,IAAUA,EAAM6Q,KAGxB,SAAS4uC,GAASthD,EAAKuhD,EAAQC,EAAQC,EAAMC,GAC5C,IAAI/4D,EAAGo4D,EAAIC,EAAI9yD,EAEf,GAAKuzD,GAASC,EAAd,CAMA,IADA1hD,EAAIQ,OAAO+gD,EAAO,GAAG1zD,EAAG0zD,EAAO,GAAGzzD,GAC7BnF,EAAI,EAAGA,EAAI84D,IAAQ94D,EACvB8d,GAAU7oB,OAAO4jB,OAAOxB,EAAKuhD,EAAO54D,EAAI,GAAI44D,EAAO54D,IAGpD,QAAwBvU,IAApBotE,EAAO,GAAG1wC,MAcd,IAHA9Q,EAAIwB,OAAOggD,EAAOE,EAAO,GAAG7zD,EAAG2zD,EAAOE,EAAO,GAAG5zD,GAG3CnF,EAAI+4D,EAAO,EAAG/4D,EAAI,IAAKA,EAC3B8d,GAAU7oB,OAAO4jB,OAAOxB,EAAKwhD,EAAO74D,GAAI64D,EAAO74D,EAAI,IAAI,QAXvD,IAHAo4D,EAAKS,EAAO,GAAGT,GACfC,EAAKQ,EAAO,GAAGR,GACf9yD,EAAI/M,KAAK6P,KAAK7P,KAAKC,IAAIogE,EAAO,GAAG3zD,EAAIkzD,EAAI,GAAK5/D,KAAKC,IAAIogE,EAAO,GAAG1zD,EAAIkzD,EAAI,IACpEr4D,EAAI+4D,EAAO,EAAG/4D,EAAI,IAAKA,EAC3BqX,EAAIS,IAAIsgD,EAAIC,EAAI9yD,EAAGszD,EAAO74D,GAAGmoB,MAAO0wC,EAAO74D,EAAI,GAAGmoB,OAAO,IAc5D,SAAS6wC,GAAO3hD,EAAKoS,EAAQwvC,EAAQ96C,EAAMxV,EAAOsxC,GACjD,IAMIj6C,EAAG0S,EAAMjpB,EAAOyvE,EAAIC,EAAIC,EAAIC,EAAIC,EANhCnzC,EAAQsD,EAAOz2B,OACfkhE,EAAO/1C,EAAKqL,SACZovC,EAAS,GACTC,EAAS,GACTC,EAAO,EACPC,EAAO,EAKX,IAFA1hD,EAAIuB,YAEC5Y,EAAI,EAAG0S,EAAOyT,EAAOnmB,EAAI0S,IAAQ1S,EACrCvW,EAAQuW,EAAImmB,EACZ+yC,EAAKzvC,EAAOhgC,GAAOq1B,MACnBq6C,EAAKF,EAAOC,EAAIzvE,EAAO00B,GACvBi7C,EAAKV,GAAWQ,GAChBG,EAAKX,GAAWS,GAEZlf,QAAuBxuD,IAAf6tE,GAA4BF,IACvCE,EAAat5D,EAAI,EACjB0S,EAAOyT,EAAQmzC,GAGZF,GAAMC,GACTP,EAAOF,EAAOhkE,KAAKskE,GACnBH,EAAOF,EAAOjkE,KAAKukE,IACTL,GAAQC,IACb7E,GAMAkF,GACHR,EAAOhkE,KAAKskE,GAETG,GACHR,EAAOjkE,KAAKukE,KATbR,GAASthD,EAAKuhD,EAAQC,EAAQC,EAAMC,GACpCD,EAAOC,EAAO,EACdH,EAAS,GACTC,EAAS,KAYZF,GAASthD,EAAKuhD,EAAQC,EAAQC,EAAMC,GAEpC1hD,EAAIU,YACJV,EAAIwR,UAAYlgB,EAChB0O,EAAI0B,OAGL,IAAIwgD,GAAgB,CACnBvlE,GAAI,SAEJwlE,oBAAqB,SAASpiD,EAAOriB,GACpC,IAGImtB,EAAMliB,EAAGkiC,EAAIzxB,EAHb0V,GAAS/O,EAAMrtB,KAAK44B,UAAY,IAAI3vB,OACpC0kE,EAAY3iE,EAAQ2iE,UACpBrkD,EAAU,GAGd,IAAKrT,EAAI,EAAGA,EAAImmB,IAASnmB,EACxBkiB,EAAO9K,EAAMwL,eAAe5iB,GAC5BkiC,EAAKhgB,EAAKE,QACV3R,EAAS,KAELyxB,GAAMA,EAAGnjB,QAAUmjB,aAAc7d,GAAS/uB,OAC7Cmb,EAAS,CACRmnD,QAASxgD,EAAMmc,iBAAiBvzB,GAChC+Y,KAAM++C,GAAW51B,EAAIliC,EAAGmmB,GACxB/O,MAAOA,EACP8qB,GAAIA,IAINhgB,EAAKu3C,QAAUhpD,EACf4C,EAAQze,KAAK6b,GAGd,IAAKzQ,EAAI,EAAGA,EAAImmB,IAASnmB,EACxByQ,EAAS4C,EAAQrT,GACZyQ,IAILA,EAAOsI,KAAOw/C,GAAcllD,EAASrT,EAAG03D,GACxCjnD,EAAOonD,SAAWS,GAAgB7nD,GAClCA,EAAOwoD,OAASR,GAAahoD,KAI/BipD,mBAAoB,SAAStiD,GAC5B,IAEI8K,EAAMliB,EAAGkiC,EAAI/jB,EAAMsL,EAAQwvC,EAAQtwD,EAFnCgnB,EAAWvY,EAAMogB,gCACjBngB,EAAMD,EAAMC,IAGhB,IAAKrX,EAAI2vB,EAAS38B,OAAS,EAAGgN,GAAK,IAAKA,EACvCkiB,EAAOyN,EAAS3vB,GAAGy5D,QAEdv3C,GAASA,EAAK01C,UAInB11B,EAAKhgB,EAAKggB,GACV/jB,EAAO+jB,EAAGpjB,MACV2K,EAASyY,EAAGxY,WAAa,GACzBuvC,EAAS/2C,EAAK+2C,OACdtwD,EAAQwV,EAAKuG,iBAAmB7J,EAAcxjB,OAAOijB,aAEjD2+C,GAAUtwD,GAAS8gB,EAAOz2B,SAC7B8qB,GAAU7oB,OAAOokB,SAAShC,EAAKD,EAAM2T,WACrCiuC,GAAO3hD,EAAKoS,EAAQwvC,EAAQ96C,EAAMxV,EAAOu5B,EAAGrY,OAC5C/L,GAAU7oB,OAAOskB,WAAWlC,OAM5BsiD,GAAiB77C,GAAUV,IAAIX,cAC/Bm9C,GAAS97C,GAAUrM,KACnBooD,GAAmB/7C,GAAU9L,eAgGjC,SAAS8nD,GAAYC,EAAWx+C,GAC/B,OAAOw+C,EAAUC,eAAiBD,EAAUE,SAAW1+C,EACtDA,EACAw+C,EAAUE,SAjGZp/C,EAAcR,KAAK,SAAU,CAC5BqY,OAAQ,CACPyF,SAAS,EACTrH,SAAU,MACVjU,MAAO,SACP6f,WAAW,EACXpqB,SAAS,EACTlC,OAAQ,IAGR0iB,QAAS,SAASzvB,EAAG0vB,GACpB,IAAItpC,EAAQspC,EAAWtR,aACnBy4C,EAAK5yE,KAAK8vB,MACV8K,EAAOg4C,EAAGt3C,eAAen5B,GAG7By4B,EAAKtD,OAAyB,OAAhBsD,EAAKtD,QAAmBs7C,EAAGnwE,KAAK44B,SAASl5B,GAAOm1B,OAAS,KAGvEs7C,EAAG/1C,UAGJmtB,QAAS,KACT6oB,QAAS,KAETl2D,OAAQ,CACPg2D,SAAU,GACVnvC,QAAS,GAYT6H,eAAgB,SAASvb,GACxB,IAAIuL,EAAWvL,EAAMrtB,KAAK44B,SACtB5tB,EAAUqiB,EAAMriB,QAAQ29B,QAAU,GAClCsnC,EAAgBjlE,EAAQkP,QAAUlP,EAAQkP,OAAO+1D,cAErD,OAAO5iD,EAAMo9B,yBAAyB7pD,KAAI,SAASu3B,GAClD,IAAIruB,EAAQquB,EAAK0Q,WAAWrO,SAASy1C,EAAgB,OAAIvuE,GAEzD,MAAO,CACNonC,KAAMlQ,EAAST,EAAKz4B,OAAOgM,MAC3BozB,UAAWh1B,EAAM6wB,gBACjB9F,QAASxH,EAAMmc,iBAAiBrR,EAAKz4B,OACrCugC,QAASn2B,EAAMo1B,eACfmxC,SAAUvmE,EAAMq1B,WAChBgB,eAAgBr2B,EAAMs1B,iBACtB1B,SAAU5zB,EAAMu1B,gBAChB5B,UAAW3zB,EAAM2xB,YACjBsD,YAAaj1B,EAAM8wB,YACnB+F,WAAY72B,EAAM62B,WAClBxS,SAAUrkB,EAAMqkB,SAGhBuJ,aAAcS,EAAKz4B,SAElBnC,SAKN2qC,eAAgB,SAAS7a,GACxB,IAEIpX,EAAG0S,EAAMwf,EAAUC,EAFnBC,EAAOC,SAASz+B,cAAc,MAC9B+uB,EAAWvL,EAAMrtB,KAAK44B,SAK1B,IAFAyP,EAAKE,aAAa,QAASlb,EAAMpjB,GAAK,WAEjCgM,EAAI,EAAG0S,EAAOiQ,EAAS3vB,OAAQgN,EAAI0S,EAAM1S,IAC7CkyB,EAAWE,EAAKG,YAAYF,SAASz+B,cAAc,OACnDu+B,EAAeD,EAASK,YAAYF,SAASz+B,cAAc,SAC3Du+B,EAAat+B,MAAM6wB,gBAAkB/B,EAAS3iB,GAAG0kB,gBAC7C/B,EAAS3iB,GAAGvK,OACfy8B,EAASK,YAAYF,SAASG,eAAe7P,EAAS3iB,GAAGvK,QAI3D,OAAO28B,EAAKK,aAmBd,IAAI4nC,GAASh7C,GAAa9L,OAAO,CAEhCmL,WAAY,SAAS8X,GACpB,IAAI5iB,EAAKtsB,KACTw2B,GAAUvK,OAAOK,EAAI4iB,GAGrB5iB,EAAG0mD,eAAiB,GAKpB1mD,EAAG2mD,aAAe,KAGlB3mD,EAAG4mD,cAAe,GAOnB5X,aAAcgX,GACdz1C,OAAQ,SAASqP,EAAUC,EAAWovB,GACrC,IAAIjvC,EAAKtsB,KA0BT,OAvBAssB,EAAGgvC,eAGHhvC,EAAG4f,SAAWA,EACd5f,EAAG6f,UAAYA,EACf7f,EAAGivC,QAAUA,EAGbjvC,EAAG0vC,sBACH1vC,EAAG2vC,gBACH3vC,EAAG4vC,qBAEH5vC,EAAG6mD,oBACH7mD,EAAG8mD,cACH9mD,EAAG+mD,mBAGH/mD,EAAGuwC,YACHvwC,EAAGwwC,MACHxwC,EAAGywC,WAEHzwC,EAAG4wC,cAEI5wC,EAAGmlB,SAEXyrB,YAAaoV,GAIbtW,oBAAqBsW,GACrBrW,cAAe,WACd,IAAI3vC,EAAKtsB,KAELssB,EAAGsb,gBAENtb,EAAG3f,MAAQ2f,EAAG4f,SACd5f,EAAG6D,KAAO,EACV7D,EAAG+D,MAAQ/D,EAAG3f,QAEd2f,EAAG1f,OAAS0f,EAAG6f,UAGf7f,EAAG8D,IAAM,EACT9D,EAAGgE,OAAShE,EAAG1f,QAIhB0f,EAAGsnC,YAAc,EACjBtnC,EAAGunC,WAAa,EAChBvnC,EAAGwnC,aAAe,EAClBxnC,EAAGynC,cAAgB,EAGnBznC,EAAGmlB,QAAU,CACZ9kC,MAAO,EACPC,OAAQ,IAGVsvD,mBAAoBoW,GAIpBa,kBAAmBb,GACnBc,YAAa,WACZ,IAAI9mD,EAAKtsB,KACLyyE,EAAYnmD,EAAG7e,QAAQkP,QAAU,GACjC22D,EAAc98C,GAAU50B,SAAS6wE,EAAUpnC,eAAgB,CAAC/e,EAAGwD,OAAQxD,IAAO,GAE9EmmD,EAAUniC,SACbgjC,EAAcA,EAAYhjC,QAAO,SAASxqC,GACzC,OAAO2sE,EAAUniC,OAAOxqC,EAAMwmB,EAAGwD,MAAMrtB,UAIrC6pB,EAAG7e,QAAQud,SACdsoD,EAAYtoD,UAGbsB,EAAGgnD,YAAcA,GAElBD,iBAAkBf,GAIlBzV,UAAWyV,GACXxV,IAAK,WACJ,IAAIxwC,EAAKtsB,KACLosC,EAAO9f,EAAG7e,QACVglE,EAAYrmC,EAAKzvB,OACjBk0B,EAAUzE,EAAKyE,QAEf9gB,EAAMzD,EAAGyD,IAETwjD,EAAY/8C,GAAU/oB,QAAQsmB,WAAW0+C,GACzCx+C,EAAWs/C,EAAUxiD,KAGrByiD,EAAWlnD,EAAG0mD,eAAiB,GAE/BvhC,EAAUnlB,EAAGmlB,QACb7J,EAAetb,EAAGsb,eAWtB,GATIA,GACH6J,EAAQ9kC,MAAQ2f,EAAG4f,SACnBuF,EAAQ7kC,OAASikC,EAAU,GAAK,IAEhCY,EAAQ9kC,MAAQkkC,EAAU,GAAK,EAC/BY,EAAQ7kC,OAAS0f,EAAG6f,WAIhB0E,EAAL,CAMA,GAFA9gB,EAAI0D,KAAO8/C,EAAU39D,OAEjBgyB,EAAc,CAIjB,IAAI6rC,EAAannD,EAAGmnD,WAAa,CAAC,GAC9BC,EAAc,EAElB3jD,EAAIuF,UAAY,OAChBvF,EAAI23B,aAAe,SAEnBlxB,GAAU1L,KAAKwB,EAAGgnD,aAAa,SAAS7nC,EAAY/yB,GACnD,IAAIi6D,EAAWH,GAAYC,EAAWx+C,GAClCtnB,EAAQgmE,EAAY1+C,EAAW,EAAKlE,EAAI60B,YAAYnZ,EAAWF,MAAM5+B,OAE/D,IAAN+L,GAAW+6D,EAAWA,EAAW/nE,OAAS,GAAKiB,EAAQ,EAAI8lE,EAAUjvC,QAAUiO,EAAQ9kC,SAC1F+mE,GAAez/C,EAAWw+C,EAAUjvC,QACpCiwC,EAAWA,EAAW/nE,QAAUgN,EAAI,EAAI,EAAI,IAAM,GAInD86D,EAAS96D,GAAK,CACbyX,KAAM,EACNC,IAAK,EACLzjB,MAAOA,EACPC,OAAQqnB,GAGTw/C,EAAWA,EAAW/nE,OAAS,IAAMiB,EAAQ8lE,EAAUjvC,WAGxDiO,EAAQ7kC,QAAU8mE,MAEZ,CACN,IAAIC,EAAWlB,EAAUjvC,QACrBowC,EAAetnD,EAAGsnD,aAAe,GACjCC,EAAgBvnD,EAAGunD,cAAgB,GACnCC,EAAarB,EAAUjvC,QACvBuwC,EAAkB,EAClBC,EAAmB,EAEvBx9C,GAAU1L,KAAKwB,EAAGgnD,aAAa,SAAS7nC,EAAY/yB,GACnD,IAAIi6D,EAAWH,GAAYC,EAAWx+C,GAClCyB,EAAYi9C,EAAY1+C,EAAW,EAAKlE,EAAI60B,YAAYnZ,EAAWF,MAAM5+B,MAGzE+L,EAAI,GAAKs7D,EAAmB//C,EAAW,EAAI0/C,EAAWliC,EAAQ7kC,SACjEknE,GAAcC,EAAkBtB,EAAUjvC,QAC1CowC,EAAatmE,KAAKymE,GAClBF,EAAcvmE,KAAK0mE,GACnBD,EAAkB,EAClBC,EAAmB,GAIpBD,EAAkB7iE,KAAKmN,IAAI01D,EAAiBr+C,GAC5Cs+C,GAAoB//C,EAAW0/C,EAG/BH,EAAS96D,GAAK,CACbyX,KAAM,EACNC,IAAK,EACLzjB,MAAO+oB,EACP9oB,OAAQqnB,MAIV6/C,GAAcC,EACdH,EAAatmE,KAAKymE,GAClBF,EAAcvmE,KAAK0mE,GACnBviC,EAAQ9kC,OAASmnE,EAGlBxnD,EAAG3f,MAAQ8kC,EAAQ9kC,MACnB2f,EAAG1f,OAAS6kC,EAAQ7kC,YA9EnB0f,EAAG3f,MAAQ8kC,EAAQ9kC,MAAQ2f,EAAG1f,OAAS6kC,EAAQ7kC,OAAS,GAgF1DmwD,SAAUuV,GAGV1qC,aAAc,WACb,MAAiC,QAA1B5nC,KAAKyN,QAAQ+7B,UAAgD,WAA1BxpC,KAAKyN,QAAQ+7B,UAIxDxM,KAAM,WACL,IAAI1Q,EAAKtsB,KACLosC,EAAO9f,EAAG7e,QACVglE,EAAYrmC,EAAKzvB,OACjBqX,EAAiBT,EAAcxjB,OAC/BijB,EAAegB,EAAehB,aAC9BihD,EAAcjgD,EAAe+I,SAAS2E,KACtCwyC,EAAe5nD,EAAG1f,OAClBinE,EAAgBvnD,EAAGunD,cACnBM,EAAc7nD,EAAG3f,MACjB8mE,EAAannD,EAAGmnD,WAEpB,GAAKrnC,EAAKyE,QAAV,CAIA,IAKIujC,EALA3sB,EAAY4qB,GAAejmC,EAAKtW,IAAKxJ,EAAG6D,KAAM7D,EAAGmlB,QAAQ9kC,OACzDojB,EAAMzD,EAAGyD,IACTipC,EAAYuZ,GAAiBE,EAAUzZ,UAAWhlC,EAAef,kBACjEsgD,EAAY/8C,GAAU/oB,QAAQsmB,WAAW0+C,GACzCx+C,EAAWs/C,EAAUxiD,KAIzBhB,EAAIuF,UAAYmyB,EAAUnyB,UAAU,QACpCvF,EAAI23B,aAAe,SACnB33B,EAAImQ,UAAY,GAChBnQ,EAAIyR,YAAcw3B,EAClBjpC,EAAIwR,UAAYy3B,EAChBjpC,EAAI0D,KAAO8/C,EAAU39D,OAErB,IAAI+8D,EAAWH,GAAYC,EAAWx+C,GAClCu/C,EAAWlnD,EAAG0mD,eAGdqB,EAAgB,SAASz2D,EAAGC,EAAG4tB,GAClC,KAAIvmB,MAAMytD,IAAaA,GAAY,GAAnC,CAKA5iD,EAAImB,OAEJ,IAAIgP,EAAYqyC,GAAiB9mC,EAAWvL,UAAW+zC,EAAY/1C,aAanE,GAZAnO,EAAIwR,UAAYgxC,GAAiB9mC,EAAWlK,UAAWvO,GACvDjD,EAAI2S,QAAU6vC,GAAiB9mC,EAAW/I,QAASuxC,EAAYtyC,gBAC/D5R,EAAI6S,eAAiB2vC,GAAiB9mC,EAAW7I,eAAgBqxC,EAAYpyC,kBAC7E9R,EAAIoQ,SAAWoyC,GAAiB9mC,EAAWtL,SAAU8zC,EAAYnyC,iBACjE/R,EAAImQ,UAAYA,EAChBnQ,EAAIyR,YAAc+wC,GAAiB9mC,EAAWjK,YAAaxO,GAEvDjD,EAAI4S,aAEP5S,EAAI4S,YAAY4vC,GAAiB9mC,EAAWqnC,SAAUmB,EAAYryC,aAG/D6wC,GAAaA,EAAUC,cAAe,CAGzC,IAAIxiD,EAASyiD,EAAWzhE,KAAKojE,MAAQ,EACjCvmC,EAAU0Z,EAAUjyB,MAAM5X,EAAG+0D,EAAW,GACxC3kC,EAAUnwB,EAAIoW,EAAW,EAG7BuC,GAAU7oB,OAAOgjB,UAAUZ,EAAK0b,EAAWrI,WAAYlT,EAAQ6d,EAASC,EAASvC,EAAW7a,eAG5Fb,EAAImV,SAASuiB,EAAUhyB,WAAW7X,EAAG+0D,GAAW90D,EAAG80D,EAAU1+C,GAC3C,IAAdiM,GACHnQ,EAAIq4B,WAAWX,EAAUhyB,WAAW7X,EAAG+0D,GAAW90D,EAAG80D,EAAU1+C,GAIjElE,EAAIsB,YAGDs2B,EAAW,SAAS/pC,EAAGC,EAAG4tB,EAAY0pB,GACzC,IAAIof,EAAetgD,EAAW,EAC1BugD,EAAQ/sB,EAAUjyB,MAAM5X,EAAG+0D,EAAW4B,GACtCE,EAAU52D,EAAI02D,EAElBxkD,EAAI43B,SAASlc,EAAWF,KAAMipC,EAAOC,GAEjChpC,EAAWnU,SAEdvH,EAAIuB,YACJvB,EAAImQ,UAAY,EAChBnQ,EAAIQ,OAAOikD,EAAOC,GAClB1kD,EAAIwB,OAAOk2B,EAAUjyB,MAAMg/C,EAAOrf,GAAYsf,GAC9C1kD,EAAI2B,WAIFgjD,EAAkB,SAASC,EAAWC,GACzC,OAAQxoC,EAAK7W,OACb,IAAK,QACJ,OAAOk9C,EAAUjvC,QAClB,IAAK,MACJ,OAAOmxC,EAAYC,EACpB,QACC,OAAQD,EAAYC,EAAYnC,EAAUjvC,SAAW,IAKnDoE,EAAetb,EAAGsb,eAErBwsC,EADGxsC,EACM,CACRhqB,EAAG0O,EAAG6D,KAAOukD,EAAgBP,EAAaV,EAAW,IACrD51D,EAAGyO,EAAG8D,IAAMqiD,EAAUjvC,QACtB9B,KAAM,GAGE,CACR9jB,EAAG0O,EAAG6D,KAAOsiD,EAAUjvC,QACvB3lB,EAAGyO,EAAG8D,IAAMskD,EAAgBR,EAAcL,EAAc,IACxDnyC,KAAM,GAIRlL,GAAUV,IAAIC,sBAAsBzJ,EAAGyD,IAAKqc,EAAKwW,eAEjD,IAAIiyB,EAAa5gD,EAAWw+C,EAAUjvC,QACtChN,GAAU1L,KAAKwB,EAAGgnD,aAAa,SAAS7nC,EAAY/yB,GACnD,IAAIy8C,EAAYplC,EAAI60B,YAAYnZ,EAAWF,MAAM5+B,MAC7CA,EAAQgmE,EAAY1+C,EAAW,EAAKkhC,EACpCv3C,EAAIw2D,EAAOx2D,EACXC,EAAIu2D,EAAOv2D,EAEf4pC,EAAUpyB,SAAS/I,EAAGmlB,QAAQ9kC,OAK1Bi7B,EACClvB,EAAI,GAAKkF,EAAIjR,EAAQ8lE,EAAUjvC,QAAUlX,EAAG6D,KAAO7D,EAAGmlB,QAAQ9kC,QACjEkR,EAAIu2D,EAAOv2D,GAAKg3D,EAChBT,EAAO1yC,OACP9jB,EAAIw2D,EAAOx2D,EAAI0O,EAAG6D,KAAOukD,EAAgBP,EAAaV,EAAWW,EAAO1yC,QAE/DhpB,EAAI,GAAKmF,EAAIg3D,EAAavoD,EAAG8D,IAAM9D,EAAGmlB,QAAQ7kC,SACxDgR,EAAIw2D,EAAOx2D,EAAIA,EAAI0O,EAAGsnD,aAAaQ,EAAO1yC,MAAQ+wC,EAAUjvC,QAC5D4wC,EAAO1yC,OACP7jB,EAAIu2D,EAAOv2D,EAAIyO,EAAG8D,IAAMskD,EAAgBR,EAAcL,EAAcO,EAAO1yC,QAG5E,IAAIozC,EAAQrtB,EAAU7pC,EAAEA,GAExBy2D,EAAcS,EAAOj3D,EAAG4tB,GAExB+nC,EAAS96D,GAAGyX,KAAOs3B,EAAUhyB,WAAWq/C,EAAOtB,EAAS96D,GAAG/L,OAC3D6mE,EAAS96D,GAAG0X,IAAMvS,EAGlB8pC,EAASmtB,EAAOj3D,EAAG4tB,EAAY0pB,GAE3BvtB,EACHwsC,EAAOx2D,GAAKjR,EAAQ8lE,EAAUjvC,QAE9B4wC,EAAOv2D,GAAKg3D,KAIdr+C,GAAUV,IAAIQ,qBAAqBhK,EAAGyD,IAAKqc,EAAKwW,iBAMjDmyB,iBAAkB,SAASn3D,EAAGC,GAC7B,IACInF,EAAGs8D,EAAQC,EADX3oD,EAAKtsB,KAGT,GAAI4d,GAAK0O,EAAG6D,MAAQvS,GAAK0O,EAAG+D,OAASxS,GAAKyO,EAAG8D,KAAOvS,GAAKyO,EAAGgE,OAG3D,IADA2kD,EAAK3oD,EAAG0mD,eACHt6D,EAAI,EAAGA,EAAIu8D,EAAGvpE,SAAUgN,EAG5B,GAFAs8D,EAASC,EAAGv8D,GAERkF,GAAKo3D,EAAO7kD,MAAQvS,GAAKo3D,EAAO7kD,KAAO6kD,EAAOroE,OAASkR,GAAKm3D,EAAO5kD,KAAOvS,GAAKm3D,EAAO5kD,IAAM4kD,EAAOpoE,OAEtG,OAAO0f,EAAGgnD,YAAY56D,GAKzB,OAAO,MAQRgwC,YAAa,SAAS3sC,GACrB,IAGIm5D,EAHA5oD,EAAKtsB,KACLosC,EAAO9f,EAAG7e,QACVvL,EAAkB,YAAX6Z,EAAE7Z,KAAqB,QAAU6Z,EAAE7Z,KAG9C,GAAa,cAATA,GACH,IAAKkqC,EAAK4d,UAAY5d,EAAKymC,QAC1B,WAEK,IAAa,UAAT3wE,EAKV,OAJA,IAAKkqC,EAAKZ,QACT,OAOF0pC,EAAc5oD,EAAGyoD,iBAAiBh5D,EAAE6B,EAAG7B,EAAE8B,GAE5B,UAAT3b,EACCgzE,GAAe9oC,EAAKZ,SAEvBY,EAAKZ,QAAQhyB,KAAK8S,EAAIvQ,EAAE+2B,OAAQoiC,IAG7B9oC,EAAKymC,SAAWqC,IAAgB5oD,EAAG2mD,eAClC3mD,EAAG2mD,cACN7mC,EAAKymC,QAAQr5D,KAAK8S,EAAIvQ,EAAE+2B,OAAQxmB,EAAG2mD,cAEpC3mD,EAAG2mD,aAAeiC,GAGf9oC,EAAK4d,SAAWkrB,GAEnB9oC,EAAK4d,QAAQxwC,KAAK8S,EAAIvQ,EAAE+2B,OAAQoiC,OAMpC,SAASC,GAAyBrlD,EAAOslD,GACxC,IAAIhqC,EAAS,IAAI2nC,GAAO,CACvBhjD,IAAKD,EAAMC,IACXtiB,QAAS2nE,EACTtlD,MAAOA,IAGRonB,GAAaK,UAAUznB,EAAOsb,EAAQgqC,GACtCl+B,GAAaC,OAAOrnB,EAAOsb,GAC3Btb,EAAMsb,OAASA,EAGhB,IAAIiqC,GAAgB,CACnB3oE,GAAI,SASJ4oE,SAAUvC,GAEVwC,WAAY,SAASzlD,GACpB,IAAIslD,EAAatlD,EAAMriB,QAAQ29B,OAE3BgqC,GACHD,GAAyBrlD,EAAOslD,IAIlC9Z,aAAc,SAASxrC,GACtB,IAAIslD,EAAatlD,EAAMriB,QAAQ29B,OAC3BA,EAAStb,EAAMsb,OAEfgqC,GACH5+C,GAAU1K,QAAQspD,EAAY7hD,EAAcxjB,OAAOq7B,QAE/CA,GACH8L,GAAaK,UAAUznB,EAAOsb,EAAQgqC,GACtChqC,EAAO39B,QAAU2nE,GAEjBD,GAAyBrlD,EAAOslD,IAEvBhqC,IACV8L,GAAaG,UAAUvnB,EAAOsb,UACvBtb,EAAMsb,SAIfoqC,WAAY,SAAS1lD,EAAO/T,GAC3B,IAAIqvB,EAAStb,EAAMsb,OACfA,GACHA,EAAOsd,YAAY3sC,KAKlB05D,GAASj/C,GAAUrM,KAEvBoJ,EAAcR,KAAK,SAAU,CAC5BtvB,MAAO,CACNotC,SAAS,EACTzc,UAAW,OACXghB,WAAW,EACX5R,QAAS,GACTgG,SAAU,MACV+B,KAAM,GACNziB,OAAQ,OAOV,IAAI4sD,GAAQ39C,GAAa9L,OAAO,CAC/BmL,WAAY,SAAS8X,GACpB,IAAI5iB,EAAKtsB,KACTw2B,GAAUvK,OAAOK,EAAI4iB,GAGrB5iB,EAAG0mD,eAAiB,IAKrB1X,aAAcma,GACd54C,OAAQ,SAASqP,EAAUC,EAAWovB,GACrC,IAAIjvC,EAAKtsB,KA0BT,OAvBAssB,EAAGgvC,eAGHhvC,EAAG4f,SAAWA,EACd5f,EAAG6f,UAAYA,EACf7f,EAAGivC,QAAUA,EAGbjvC,EAAG0vC,sBACH1vC,EAAG2vC,gBACH3vC,EAAG4vC,qBAEH5vC,EAAG6mD,oBACH7mD,EAAG8mD,cACH9mD,EAAG+mD,mBAGH/mD,EAAGuwC,YACHvwC,EAAGwwC,MACHxwC,EAAGywC,WAEHzwC,EAAG4wC,cAEI5wC,EAAGmlB,SAGXyrB,YAAauY,GAIbzZ,oBAAqByZ,GACrBxZ,cAAe,WACd,IAAI3vC,EAAKtsB,KAELssB,EAAGsb,gBAENtb,EAAG3f,MAAQ2f,EAAG4f,SACd5f,EAAG6D,KAAO,EACV7D,EAAG+D,MAAQ/D,EAAG3f,QAEd2f,EAAG1f,OAAS0f,EAAG6f,UAGf7f,EAAG8D,IAAM,EACT9D,EAAGgE,OAAShE,EAAG1f,QAIhB0f,EAAGsnC,YAAc,EACjBtnC,EAAGunC,WAAa,EAChBvnC,EAAGwnC,aAAe,EAClBxnC,EAAGynC,cAAgB,EAGnBznC,EAAGmlB,QAAU,CACZ9kC,MAAO,EACPC,OAAQ,IAGVsvD,mBAAoBuZ,GAIpBtC,kBAAmBsC,GACnBrC,YAAaqC,GACbpC,iBAAkBoC,GAIlB5Y,UAAW4Y,GACX3Y,IAAK,WACJ,IAIIkE,EAAWyG,EAJXn7C,EAAKtsB,KACLosC,EAAO9f,EAAG7e,QACVgkC,EAAUnlB,EAAGmlB,QAAU,GACvB7J,EAAetb,EAAGsb,eAGjBwE,EAAKyE,SAKVmwB,EAAYxqC,GAAUlM,QAAQ8hB,EAAKb,MAAQa,EAAKb,KAAK7/B,OAAS,EAC9D+7D,EAAWzG,EAAYxqC,GAAU/oB,QAAQsmB,WAAWqY,GAAMjY,WAA4B,EAAfiY,EAAK5I,QAE5ElX,EAAG3f,MAAQ8kC,EAAQ9kC,MAAQi7B,EAAetb,EAAG4f,SAAWu7B,EACxDn7C,EAAG1f,OAAS6kC,EAAQ7kC,OAASg7B,EAAe6/B,EAAWn7C,EAAG6f,WARzD7f,EAAG3f,MAAQ8kC,EAAQ9kC,MAAQ2f,EAAG1f,OAAS6kC,EAAQ7kC,OAAS,GAU1DmwD,SAAU0Y,GAGV7tC,aAAc,WACb,IAAI8M,EAAM10C,KAAKyN,QAAQ+7B,SACvB,MAAe,QAARkL,GAAyB,WAARA,GAIzB1X,KAAM,WACL,IAAI1Q,EAAKtsB,KACL+vB,EAAMzD,EAAGyD,IACTqc,EAAO9f,EAAG7e,QAEd,GAAK2+B,EAAKyE,QAAV,CAIA,IAQI3E,EAAUypC,EAAQC,EARlBC,EAAWr/C,GAAU/oB,QAAQsmB,WAAWqY,GACxCjY,EAAa0hD,EAAS1hD,WACtBwS,EAASxS,EAAa,EAAIiY,EAAK5I,QAC/B5S,EAAW,EACXR,EAAM9D,EAAG8D,IACTD,EAAO7D,EAAG6D,KACVG,EAAShE,EAAGgE,OACZD,EAAQ/D,EAAG+D,MAGfN,EAAIwR,UAAY/K,GAAU9L,eAAe0hB,EAAK4sB,UAAWzlC,EAAcxjB,OAAOkjB,kBAC9ElD,EAAI0D,KAAOoiD,EAASjgE,OAGhB0W,EAAGsb,gBACN+tC,EAASxlD,GAASE,EAAQF,GAAQ,EAClCylD,EAASxlD,EAAMuW,EACfuF,EAAW7b,EAAQF,IAEnBwlD,EAA2B,SAAlBvpC,EAAK5C,SAAsBrZ,EAAOwW,EAAStW,EAAQsW,EAC5DivC,EAASxlD,GAAQE,EAASF,GAAO,EACjC8b,EAAW5b,EAASF,EACpBQ,EAAW1f,KAAK4P,IAAwB,SAAlBsrB,EAAK5C,UAAuB,GAAM,KAGzDzZ,EAAImB,OACJnB,EAAIoB,UAAUwkD,EAAQC,GACtB7lD,EAAIrH,OAAOkI,GACXb,EAAIuF,UAAY,SAChBvF,EAAI23B,aAAe,SAEnB,IAAInc,EAAOa,EAAKb,KAChB,GAAI/U,GAAUlM,QAAQihB,GAErB,IADA,IAAI1tB,EAAI,EACCnF,EAAI,EAAGA,EAAI6yB,EAAK7/B,SAAUgN,EAClCqX,EAAI43B,SAASpc,EAAK7yB,GAAI,EAAGmF,EAAGquB,GAC5BruB,GAAKsW,OAGNpE,EAAI43B,SAASpc,EAAM,EAAG,EAAGW,GAG1Bnc,EAAIsB,cAIN,SAASykD,GAA6BhmD,EAAOimD,GAC5C,IAAItyE,EAAQ,IAAIiyE,GAAM,CACrB3lD,IAAKD,EAAMC,IACXtiB,QAASsoE,EACTjmD,MAAOA,IAGRonB,GAAaK,UAAUznB,EAAOrsB,EAAOsyE,GACrC7+B,GAAaC,OAAOrnB,EAAOrsB,GAC3BqsB,EAAMkmD,WAAavyE,EAGpB,IAAIwyE,GAAe,CAClBvpE,GAAI,QASJ4oE,SAAUI,GAEVH,WAAY,SAASzlD,GACpB,IAAIimD,EAAYjmD,EAAMriB,QAAQhK,MAE1BsyE,GACHD,GAA6BhmD,EAAOimD,IAItCza,aAAc,SAASxrC,GACtB,IAAIimD,EAAYjmD,EAAMriB,QAAQhK,MAC1BuyE,EAAalmD,EAAMkmD,WAEnBD,GACHv/C,GAAU1K,QAAQiqD,EAAWxiD,EAAcxjB,OAAOtM,OAE9CuyE,GACH9+B,GAAaK,UAAUznB,EAAOkmD,EAAYD,GAC1CC,EAAWvoE,QAAUsoE,GAErBD,GAA6BhmD,EAAOimD,IAE3BC,IACV9+B,GAAaG,UAAUvnB,EAAOkmD,UACvBlmD,EAAMkmD,cAKZjpE,GAAU,GACVojE,GAAS8B,GACT7mC,GAASiqC,GACT5xE,GAAQwyE,GA2CZ,IAAK,IAAIj3D,MA1CTjS,GAAQojE,OAASA,GACjBpjE,GAAQq+B,OAASA,GACjBr+B,GAAQtJ,MAAQA,GAOhByqD,GAAgBhkC,QAAUsM,GAG1B+3B,KAEAL,GAAgBgoB,UAAY9f,GAC5BlI,GAAgBioB,UAAY99C,GAC5B61B,GAAgBkoB,iBAAmB19C,GACnCw1B,GAAgB1b,YAAcA,GAC9B0b,GAAgBh0B,kBAAoBiF,GACpC+uB,GAAgBp7B,SAAWS,EAC3B26B,GAAgBh3B,QAAUa,GAC1Bm2B,GAAgBnxB,SAAWA,GAC3BmxB,GAAgBmoB,YAAcliC,GAC9B+Z,GAAgBjZ,QAAUiC,GAC1BgX,GAAgBpQ,SAAWA,GAC3BoQ,GAAgBnhD,QAAUgxC,GAC1BmQ,GAAgB8M,MAAQmH,GACxBjU,GAAgBooB,aAAe13B,GAC/BsP,GAAgBqoB,MAAQlgB,GACxBnI,GAAgBsoB,QAAU3tB,GAI1BqF,GAAgBhkC,QAAQY,KAAK+P,IAAQ,SAAS7V,EAAO9iB,GACpDgsD,GAAgBooB,aAAax3B,kBAAkB58C,EAAM8iB,EAAOA,EAAM49C,cAQrD71D,GACTA,GAAQqP,eAAe4C,KAC1BkvC,GAAgBnhD,QAAQkxC,SAASlxC,GAAQiS,KAI3CkvC,GAAgBpQ,SAAS1mB,aAEzB,IAAIjL,GAAM+hC,GAyGV,MAxGsB,qBAAXpkC,SACVA,OAAOsgC,MAAQ8D,IAYhBA,GAAgB9D,MAAQ8D,GASxBA,GAAgB6kB,OAAShmE,GAAQq+B,OAAOkqC,SASxCpnB,GAAgBwnB,MAAQ3oE,GAAQtJ,MAAM6xE,SAStCpnB,GAAgBuoB,cAAgBvoB,GAAgBnhD,QAUhDmhD,GAAgBwoB,WAAaxoB,GAAgBh3B,QAAQjL,OAAO,IAS5DiiC,GAAgByoB,cAAgBzoB,GAAgBhkC,QAAQvc,OASxDugD,GAAgB0oB,cAAgB1oB,GAAgBjZ,QAShDiZ,GAAgB2oB,gBAAkBjT,GAQlC1V,GAAgBhkC,QAAQY,KACvB,CACC,MACA,SACA,WACA,OACA,YACA,QACA,YAED,SAASgsD,GACR5oB,GAAgB4oB,GAAS,SAAS/mD,EAAKgnD,GACtC,OAAO,IAAI7oB,GAAgBn+B,EAAKm+B,GAAgBhkC,QAAQ0B,MAAMmrD,GAAO,GAAI,CACxE70E,KAAM40E,EAAMxkE,OAAO,GAAGgE,cAAgBwgE,EAAMxrE,MAAM,UAM/C6gB,O,yCCzyfP,IAAIrsB,EAAS,WAAa,IAAIC,EAAIC,KAASC,EAAGF,EAAIG,eAAmBC,EAAGJ,EAAIK,MAAMD,IAAIF,EAAG,OAAOE,EAAG,MAAM,CAACM,YAAY,OAAO,CAACN,EAAG,MAAM,CAACM,YAAY,UAAU,CAACN,EAAG,MAAM,CAACM,YAAY,kBAAkB,CAACN,EAAG,cAAc,CAACM,YAAY,QAAQJ,MAAM,CAAC,GAAK,CAAEgP,KAAM,2BAA4B,CAAClP,EAAG,WAAW,CAACE,MAAM,CAAC,KAAO,UAAU,MAAQ,KAAK,CAACF,EAAG,IAAI,CAACM,YAAY,+BAA+BJ,MAAM,CAAC,KAAO,SAASK,KAAK,UAAUX,EAAIY,GAAG,IAAIZ,EAAIa,GAAGb,EAAIc,GAAG,oBAAoB,QAAQ,IAAI,GAAGV,EAAG,OAAO,CAACE,MAAM,CAAC,oBAAoB,mBAAmB,iBAAiB,KAAK,CAACF,EAAG,MAAM,CAACA,EAAG,MAAM,CAACM,YAAY,6EAA6E,CAACN,EAAG,KAAK,CAACM,YAAY,0BAA0B,CAACV,EAAIY,GAAG,IAAIZ,EAAIa,GAAGb,EAAIc,GAAG,sCAAsC,OAAOV,EAAG,WAAW,CAACA,EAAG,WAAW,CAACM,YAAY,OAAOuB,YAAY,CAAC,MAAQ,SAAS3B,MAAM,CAAC,KAAO,SAAS,UAAY,GAAG,cAAc,kBAAkB,YAAcN,EAAIc,GAAG,sBAAsB,gBAAgB,cAAca,MAAM,CAACC,MAAO5B,EAAe,YAAE6B,SAAS,SAAUC,GAAM9B,EAAIwK,YAAY1I,GAAKE,WAAW,kBAAkB,IAAI,GAAG5B,EAAG,WAAW,CAAC6B,YAAY,CAAC,MAAQ,QAAQ3B,MAAM,CAAC,OAAS,GAAG,KAAON,EAAIyK,cAAc,CAACrK,EAAG,kBAAkB,CAACE,MAAM,CAAC,MAAQN,EAAIc,GAAG,4CAA4C,SAAW,IAAIE,YAAYhB,EAAIiB,GAAG,CAAC,CAACC,IAAI,UAAUC,GAAG,SAASuJ,GAAO,MAAO,CAAC1K,EAAIY,GAAG,IAAIZ,EAAIa,GAAG6J,EAAMC,IAAIpE,QAAQ,YAAYnG,EAAG,kBAAkB,CAACE,MAAM,CAAC,MAAQN,EAAIc,GAAG,mDAAmD,SAAW,IAAIE,YAAYhB,EAAIiB,GAAG,CAAC,CAACC,IAAI,UAAUC,GAAG,SAASuJ,GAAO,MAAO,CAAC1K,EAAIY,GAAG,IAAIZ,EAAIa,GAAG6J,EAAMC,IAAIssE,kBAAkB,YAAY72E,EAAG,kBAAkB,CAACE,MAAM,CAAC,MAAQN,EAAIc,GAAG,8CAA8C,SAAW,IAAIE,YAAYhB,EAAIiB,GAAG,CAAC,CAACC,IAAI,UAAUC,GAAG,SAASuJ,GAAO,MAAO,CAAC1K,EAAIY,GAAG,IAAIZ,EAAIa,GAAG6J,EAAMC,IAAI4D,OAASvO,EAAIc,GAAG,sBAAwBd,EAAIc,GAAG,yBAAyB,YAAYV,EAAG,kBAAkB,CAACE,MAAM,CAAC,YAAY,KAAKU,YAAYhB,EAAIiB,GAAG,CAAC,CAACC,IAAI,UAAUC,GAAG,SAASyJ,GAAO,OAAOxK,EAAG,MAAM,CAACM,YAAY,0BAA0B,CAACN,EAAG,aAAa,CAACW,IAAI,YAAc6J,EAAME,OAAOxK,MAAM,CAAC,UAAY,SAAS,MAAQ,MAAM,QAAU,UAAU,CAACF,EAAG,MAAM,CAACM,YAAY,OAAO,CAACN,EAAG,MAAM,CAACM,YAAY,kBAAkB,CAACN,EAAG,WAAW,CAACM,YAAY,iBAAiBJ,MAAM,CAAC,KAAO,UAAU,KAAO,KAAK,MAAQ,IAAIgC,SAAS,CAAC,MAAQ,SAAS7B,GAAQ,OAAOT,EAAIqP,aACz1EzE,EAAME,OACNF,EAAMD,IACN,YAAcC,EAAME,WACjB,CAAC9K,EAAIY,GAAG,IAAIZ,EAAIa,GAAGb,EAAIc,GAAG,yDAAyD,QAAQ,KAAKV,EAAG,WAAW,CAACM,YAAY,uBAAuBJ,MAAM,CAAC,KAAO,YAAY,KAAO,KAAK,KAAO,IAAIK,KAAK,aAAa,CAACP,EAAG,IAAI,CAACM,YAAY,mBAAmBuB,YAAY,CAAC,MAAQ,cAAc,IAAI,UAAU,IAAI,GAAG7B,EAAG,MAAM,CAACM,YAAY,4EAA4EJ,MAAM,CAAC,KAAO,UAAUK,KAAK,UAAU,CAACP,EAAG,MAAM,GAAG,CAACA,EAAG,IAAI,CAACM,YAAY,iBAAiB,CAACV,EAAIY,GAAG,IAAIZ,EAAIa,GAAGb,EAAIc,GAAG,2BAA2B,IAAId,EAAIa,GAAGb,EAAIgL,KAAO,GAAG,IAAIhL,EAAIa,GAAGb,EAAIc,GAAG,sBAAsB,IAAId,EAAIa,GAAGb,EAAIiL,IAAI,IAAIjL,EAAIa,GAAGb,EAAIc,GAAG,sBAAsB,IAAId,EAAIa,GAAGb,EAAIkL,OAAO,IAAIlL,EAAIa,GAAGb,EAAIc,GAAG,2BAA2B,SAASV,EAAG,eAAe,CAACM,YAAY,uBAAuBJ,MAAM,CAAC,WAAWN,EAAImL,WAAWC,QAAQ,MAAQpL,EAAIkL,OAAOvJ,MAAM,CAACC,MAAO5B,EAAImL,WAAsB,YAAEtJ,SAAS,SAAUC,GAAM9B,EAAI+B,KAAK/B,EAAImL,WAAY,cAAerJ,IAAME,WAAW,6BAA6B,MAAM,MACxhCQ,EAAkB,G,0EC+HtB,GACEC,WAAY,GACZE,SAAU,CACR8H,YADJ,WACA,WACA,iBAKM,OAJAzF,EACN,0BACA,sBAAQ,OAAR,gEACA,EACaA,EAAOuG,MAAMtL,KAAK+K,KAAM/K,KAAKgL,KAEtCA,GATJ,WAUM,IAAN,oCAIM,OAHIhL,KAAKiL,MAAQM,IACfA,EAAYvL,KAAKiL,OAEZM,GAETR,KAhBJ,WAiBM,OAAO/K,KAAKkL,WAAWC,SAAWnL,KAAKkL,WAAWM,YAAc,IAElEP,MAnBJ,WAoBM,OAAOjL,KAAKyL,aAAaC,OAAS,EACxC,yBACA,wBAGEjJ,KA3BF,WA4BI,MAAO,CACL8H,YAAa,GACbsB,WAAY,KACZD,UAAW,GACXH,aAAc,GACdP,WAAY,CACVC,QAAS,EACTK,YAAa,EACbG,eAAgB,CAAC,EAAG,GAAI,GAAI,IAC5BV,MAAO,KAIbrH,QAAS,CACP,uBADJ,WACA,+JACA,cACA,8BACA,KACA,0IACA,uBALA,SAQA,aARA,OAUA,gBAVA,8CAYI,SAbJ,WAaA,qKACA,GACA,KACA,gCACA,WAJA,SAMA,QACA,kCACA,KAFA,yDAGA,+FACA,kBACA,iEAEA,mDAJA,2CAHA,uDAUA,YACA,eACA,sDAGA,wBArBA,8CAuBIwL,aApCJ,SAoCA,OACMpP,KAAKi3E,QAAQ3pE,KAAK,CAAxB,yCACMtN,KAAKwG,MAAM1F,GAAKiL,YAGpBzI,QAlFF,WAkFA,WACItD,KAAKk3E,yBAEL3zE,SAASC,IAAI,iCAAiC,WAC5C,EAAN,8BC1NyX,I,YCOrXQ,EAAY,eACd,EACAlE,EACAyC,GACA,EACA,KACA,KACA,MAIa,aAAAyB,E,2CClBf,W,0ECAMmzE,E,wBAQJ,aAAsB,IAAVjzE,EAAU,uDAAJ,GAAI,8CANO,GAMP,2CAJc,GAId,qDAHwB,GAGxB,cAFf,SAGLE,OAAOC,OAAOrE,KAAMkE,G,YAIxBI,EAAOC,QAAU4yE,G,qJCbXC,E,wBAQJ,aAAsB,IAAVlzE,EAAU,uDAAJ,GAAI,oDANa,GAMb,4BALD,MAKC,qDAJwB,GAIxB,0BAHH,GAGG,gBAFb,MAGPE,OAAOC,OAAOrE,KAAMkE,G,YAIxBI,EAAOC,QAAU6yE,G,yDCbjB;;;;;;AAQA,IAAIC,EAAkB,CAClBx8B,WAAW,EACXy8B,SAAS,EACTC,SAAS,GAETC,EAAmB,CACnB,MAAO,QACP,MAAO,MAEX,SAASlrE,EAAcmrE,EAASp3E,EAAOq3E,GACnC,IAAI98B,EAAK7P,SAASz+B,cAAcmrE,GAChC,GAAIp3E,EACA,IAAK,IAAIs3E,KAAYt3E,EACA,UAAbs3E,EACAC,EAAWh9B,EAAIv6C,EAAMs3E,IAEhBN,EAAgBM,GACrB/8B,EAAG+8B,GAAYt3E,EAAMs3E,GAGrB/8B,EAAG5P,aAAa2sC,EAAUt3E,EAAMs3E,IAU5C,MANuB,kBAAZD,EACP98B,EAAGi9B,UAAYH,EAEC,MAAXA,GACLI,EAAgBl9B,EAAI88B,GAEjB98B,EAEX,SAASm9B,EAAcr0E,GACnBA,EAAOA,EAAKs0E,OACZ,IAAI57B,EAAYrR,SAASz+B,cAAc2rE,EAAoBv0E,IAE3D,OADA04C,EAAUy7B,UAAYn0E,EACf04C,EAAUK,WAErB,SAASy7B,EAAex0E,GACpB,OAAOsJ,MAAMyN,UAAUnP,MAAMkO,KAAK2+D,EAAez0E,IAErD,SAASy0E,EAAez0E,GACpBA,EAAOA,EAAKs0E,OACZ,IAAI57B,EAAYrR,SAASz+B,cAAc2rE,EAAoBv0E,IAE3D,OADA04C,EAAUy7B,UAAYn0E,EACf04C,EAAUg8B,WAGrB,SAASH,EAAoBv0E,GACzB,OAAO8zE,EAAiB9zE,EAAK6mB,OAAO,EAAG,KAClC,MAET,SAASutD,EAAgBl9B,EAAI88B,GAEzB,IADA,IAAIU,EAAaC,EAAiBX,GACzBh/D,EAAI,EAAGA,EAAI0/D,EAAW1sE,OAAQgN,IACnCkiC,EAAG3P,YAAYmtC,EAAW1/D,IAGlC,SAAS4/D,EAAiB/1D,EAAQm1D,GAG9B,IAFA,IAAIa,EAASF,EAAiBX,GAC1Bc,EAAUj2D,EAAOk6B,YAAc,KAC1B/jC,EAAI,EAAGA,EAAI6/D,EAAO7sE,OAAQgN,IAC/B6J,EAAOi6B,aAAa+7B,EAAO7/D,GAAI8/D,GAGvC,SAASC,EAAmBC,EAAOhB,GAG/B,IAFA,IAAIa,EAASF,EAAiBX,GAC1Bc,EAAUE,EAAMC,aAAe,KAC1BjgE,EAAI,EAAGA,EAAI6/D,EAAO7sE,OAAQgN,IAC/BggE,EAAMp8B,WAAWE,aAAa+7B,EAAO7/D,GAAI8/D,GAGjD,SAASH,EAAiBX,GACtB,IAAIkB,EAUJ,OARIA,EADmB,kBAAZlB,EACDQ,EAAeR,GAEhBA,aAAmBmB,KAClB,CAACnB,GAGD1qE,MAAMyN,UAAUnP,MAAMkO,KAAKk+D,GAE9BkB,EAEX,SAASE,EAAcl+B,GACfA,EAAG0B,YACH1B,EAAG0B,WAAWK,YAAY/B,GAMlC,IAAIm+B,EAAgB7hD,QAAQzc,UAAUoZ,SAClCqD,QAAQzc,UAAUu+D,iBAClB9hD,QAAQzc,UAAUw+D,kBAClBC,EAAgBhiD,QAAQzc,UAAU0+D,SAAW,SAAUC,GAEvD,IAAIx+B,EAAK56C,KACT,IAAK+qC,SAASsuC,gBAAgBC,SAAS1+B,GACnC,OAAO,KAEX,EAAG,CACC,GAAI2+B,EAAe3+B,EAAIw+B,GACnB,OAAOx+B,EAEXA,EAAKA,EAAG4+B,eAAiB5+B,EAAG0B,iBAChB,OAAP1B,GAA+B,IAAhBA,EAAG6+B,UAC3B,OAAO,MAEX,SAASC,EAAe9+B,EAAIw+B,GACxB,OAAOF,EAAc1/D,KAAKohC,EAAIw+B,GAElC,SAASG,EAAe3+B,EAAIw+B,GACxB,OAAOL,EAAcv/D,KAAKohC,EAAIw+B,GAIlC,SAASO,EAAav9B,EAAWg9B,GAG7B,IAFA,IAAIQ,EAAax9B,aAAqBy9B,YAAc,CAACz9B,GAAaA,EAC9D09B,EAAa,GACRphE,EAAI,EAAGA,EAAIkhE,EAAWluE,OAAQgN,IAEnC,IADA,IAAImb,EAAU+lD,EAAWlhE,GAAGqhE,iBAAiBX,GACpCptC,EAAI,EAAGA,EAAInY,EAAQnoB,OAAQsgC,IAChC8tC,EAAWxsE,KAAKumB,EAAQmY,IAGhC,OAAO8tC,EAIX,SAASE,EAAaz3D,EAAQ62D,GAG1B,IAFA,IAAIa,EAAU13D,aAAkBs3D,YAAc,CAACt3D,GAAUA,EACrDu3D,EAAa,GACRphE,EAAI,EAAGA,EAAIuhE,EAAQvuE,OAAQgN,IAEhC,IADA,IAAI0/D,EAAa6B,EAAQvhE,GAAGwhE,SACnBluC,EAAI,EAAGA,EAAIosC,EAAW1sE,OAAQsgC,IAAK,CACxC,IAAImuC,EAAY/B,EAAWpsC,GACtBotC,IAAYG,EAAeY,EAAWf,IACvCU,EAAWxsE,KAAK6sE,GAI5B,OAAOL,EAcX,IAAIM,EAAgB,yCACpB,SAASxC,EAAWh9B,EAAIjwC,GACpB,IAAK,IAAI0vE,KAAY1vE,EACjB2vE,EAAe1/B,EAAIy/B,EAAU1vE,EAAM0vE,IAG3C,SAASC,EAAe1/B,EAAIvrC,EAAMsQ,GACnB,MAAPA,EACAi7B,EAAGruC,MAAM8C,GAAQ,GAEG,kBAARsQ,GAAoBy6D,EAAc3nE,KAAKpD,GACnDurC,EAAGruC,MAAM8C,GAAQsQ,EAAM,KAGvBi7B,EAAGruC,MAAM8C,GAAQsQ,EAIzB,SAAS46D,EAAgB3oD,EAAOlB,GAC5B,OAAOkB,EAAMzB,MAAQO,EAAKP,MACtByB,EAAMzB,KAAOO,EAAKL,OAClBuB,EAAMxB,KAAOM,EAAKN,KAClBwB,EAAMxB,IAAMM,EAAKJ,OAGzB,SAASkqD,EAAeC,EAAOC,GAC3B,IAAI5gD,EAAM,CACN3J,KAAMjf,KAAKmN,IAAIo8D,EAAMtqD,KAAMuqD,EAAMvqD,MACjCE,MAAOnf,KAAKkN,IAAIq8D,EAAMpqD,MAAOqqD,EAAMrqD,OACnCD,IAAKlf,KAAKmN,IAAIo8D,EAAMrqD,IAAKsqD,EAAMtqD,KAC/BE,OAAQpf,KAAKkN,IAAIq8D,EAAMnqD,OAAQoqD,EAAMpqD,SAEzC,OAAIwJ,EAAI3J,KAAO2J,EAAIzJ,OAASyJ,EAAI1J,IAAM0J,EAAIxJ,QAC/BwJ,EAaf,SAAS6gD,EAAe/oD,EAAOlB,GAC3B,MAAO,CACHP,KAAMjf,KAAKkN,IAAIlN,KAAKmN,IAAIuT,EAAMzB,KAAMO,EAAKP,MAAOO,EAAKL,OACrDD,IAAKlf,KAAKkN,IAAIlN,KAAKmN,IAAIuT,EAAMxB,IAAKM,EAAKN,KAAMM,EAAKJ,SAI1D,SAASsqD,EAAclqD,GACnB,MAAO,CACHP,MAAOO,EAAKP,KAAOO,EAAKL,OAAS,EACjCD,KAAMM,EAAKN,IAAMM,EAAKJ,QAAU,GAIxC,SAASuqD,EAAWC,EAAQC,GACxB,MAAO,CACH5qD,KAAM2qD,EAAO3qD,KAAO4qD,EAAO5qD,KAC3BC,IAAK0qD,EAAO1qD,IAAM2qD,EAAO3qD,KAKjC,IAAI4qD,EAAuB,KAC3B,SAASC,IAIL,OAH6B,OAAzBD,IACAA,EAAuBE,KAEpBF,EAEX,SAASE,IACL,IAAIC,EAAU7uE,EAAc,MAAO,CAC/BC,MAAO,CACHi9B,SAAU,WACVpZ,KAAM,IACND,KAAM,EACNwU,OAAQ,EACRnB,QAAS,EACT43C,SAAU,SACVplD,UAAW,QAEhB,eACH+U,SAASkZ,KAAKhZ,YAAYkwC,GAC1B,IAAIE,EAAUF,EAAQ1+B,WAClB3iB,EAAMuhD,EAAQ7nB,wBAAwBrjC,KAAOgrD,EAAQ3nB,wBAAwBrjC,KAEjF,OADA2oD,EAAcqC,GACPrhD,EAIX,SAASwhD,EAAuB3uE,GAG5B,OAFAA,EAAQuE,KAAKmN,IAAI,EAAG1R,GACpBA,EAAQuE,KAAKiQ,MAAMxU,GACZA,EAGX,SAAS4uE,EAAa3gC,EAAI3E,QACH,IAAfA,IAAyBA,GAAa,GAC1C,IAAIulC,EAAgB1xD,OAAOslC,iBAAiBxU,GACxC6gC,EAAar5E,SAASo5E,EAAcE,gBAAiB,KAAO,EAC5DC,EAAcv5E,SAASo5E,EAAcI,iBAAkB,KAAO,EAC9DC,EAAYz5E,SAASo5E,EAAcM,eAAgB,KAAO,EAC1DC,EAAe35E,SAASo5E,EAAcQ,kBAAmB,KAAO,EAEhEC,EAAqBX,EAAuB1gC,EAAGshC,YAActhC,EAAG2B,YAAck/B,EAAaE,GAC3FQ,EAAkBb,EAAuB1gC,EAAGwhC,aAAexhC,EAAGyZ,aAAewnB,EAAYE,GACzFjiD,EAAM,CACN2hD,WAAYA,EACZE,YAAaA,EACbE,UAAWA,EACXE,aAAcA,EACdI,gBAAiBA,EACjBE,cAAe,EACfC,eAAgB,GAcpB,OAZIrB,KAAyD,QAA5BO,EAAcxlD,UAC3C8D,EAAIuiD,cAAgBJ,EAGpBniD,EAAIwiD,eAAiBL,EAErBhmC,IACAnc,EAAI85B,YAAcxxD,SAASo5E,EAAc5nB,YAAa,KAAO,EAC7D95B,EAAIg6B,aAAe1xD,SAASo5E,EAAc1nB,aAAc,KAAO,EAC/Dh6B,EAAI+5B,WAAazxD,SAASo5E,EAAc3nB,WAAY,KAAO,EAC3D/5B,EAAIi6B,cAAgB3xD,SAASo5E,EAAcznB,cAAe,KAAO,GAE9Dj6B,EAEX,SAASyiD,EAAiB3hC,EAAI4hC,QACF,IAApBA,IAA8BA,GAAkB,GACpD,IAAIC,EAAYC,EAAY9hC,GACxB+hC,EAAQpB,EAAa3gC,EAAI4hC,GACzB1iD,EAAM,CACN3J,KAAMssD,EAAUtsD,KAAOwsD,EAAMlB,WAAakB,EAAMN,cAChDhsD,MAAOosD,EAAUpsD,MAAQssD,EAAMhB,YAAcgB,EAAML,eACnDlsD,IAAKqsD,EAAUrsD,IAAMusD,EAAMd,UAC3BvrD,OAAQmsD,EAAUnsD,OAASqsD,EAAMZ,aAAeY,EAAMR,iBAQ1D,OANIK,IACA1iD,EAAI3J,MAAQwsD,EAAM/oB,YAClB95B,EAAIzJ,OAASssD,EAAM7oB,aACnBh6B,EAAI1J,KAAOusD,EAAM9oB,WACjB/5B,EAAIxJ,QAAUqsD,EAAM5oB,eAEjBj6B,EAEX,SAAS4iD,EAAY9hC,GACjB,IAAIlqB,EAAOkqB,EAAG4Y,wBACd,MAAO,CACHrjC,KAAMO,EAAKP,KAAOrG,OAAO8yD,YACzBxsD,IAAKM,EAAKN,IAAMtG,OAAO+yD,YACvBxsD,MAAOK,EAAKL,MAAQvG,OAAO8yD,YAC3BtsD,OAAQI,EAAKJ,OAASxG,OAAO+yD,aAGrC,SAASC,IACL,MAAO,CACH3sD,KAAMrG,OAAO8yD,YACbvsD,MAAOvG,OAAO8yD,YAAc7xC,SAASsuC,gBAAgB98B,YACrDnsB,IAAKtG,OAAO+yD,YACZvsD,OAAQxG,OAAO+yD,YAAc9xC,SAASsuC,gBAAgBhlB,cAG9D,SAAS0oB,EAAwBniC,GAC7B,OAAOA,EAAG4Y,wBAAwB5mD,OAASowE,EAAgBpiC,GAE/D,SAASoiC,EAAgBpiC,GACrB,IAAIl4C,EAAWonB,OAAOslC,iBAAiBxU,GACvC,OAAOx4C,SAASM,EAASu6E,UAAW,IAChC76E,SAASM,EAASw6E,aAAc,IAGxC,SAASC,EAAmBviC,GACxB,IAAIq/B,EAAU,GACd,MAAOr/B,aAAci/B,YAAa,CAC9B,IAAI2B,EAAgB1xD,OAAOslC,iBAAiBxU,GAC5C,GAA+B,UAA3B4gC,EAAchyC,SACd,MAEA,gBAAkB/2B,KAAK+oE,EAAcJ,SAAWI,EAAc4B,UAAY5B,EAAc6B,YACxFpD,EAAQ3sE,KAAKstC,GAEjBA,EAAKA,EAAG0B,WAEZ,OAAO29B,EAEX,SAASqD,EAAoB1iC,GACzB,OAAOuiC,EAAmBviC,GACrBv3C,KAAI,SAAUu3C,GACf,OAAO2hC,EAAiB3hC,MAEvBt0B,OAAOw2D,KACP34B,QAAO,SAAUo5B,EAAO9C,GACzB,OAAOD,EAAe+C,EAAO9C,IAAUA,KAK/C,SAASr5E,EAAeo8E,GACpBA,EAAGp8E,iBAIP,SAASq8E,EAAiBrhC,EAAWshC,EAAWtE,EAAUpmC,GACtD,SAAS2qC,EAAYH,GACjB,IAAII,EAAelE,EAAe8D,EAAGp0D,OAAQgwD,GACzCwE,GACA5qC,EAAQx5B,KAAKokE,EAAcJ,EAAII,GAIvC,OADAxhC,EAAUtC,iBAAiB4jC,EAAWC,GAC/B,WACHvhC,EAAUjC,oBAAoBujC,EAAWC,IAGjD,SAASE,EAAwBzhC,EAAWg9B,EAAU0E,EAAcC,GAChE,IAAIC,EACJ,OAAOP,EAAiBrhC,EAAW,YAAag9B,GAAU,SAAUoE,EAAII,GACpE,GAAIA,IAAiBI,EAAqB,CACtCA,EAAsBJ,EACtBE,EAAaN,EAAII,GACjB,IAAIK,EAAqB,SAAUT,GAC/BQ,EAAsB,KACtBD,EAAaP,EAAII,GACjBA,EAAazjC,oBAAoB,aAAc8jC,IAGnDL,EAAa9jC,iBAAiB,aAAcmkC,OAMxD,IAAIC,EAAuB,CACvB,sBACA,iBACA,iBACA,kBACA,iBAGJ,SAASC,EAAmBvjC,EAAIh5C,GAC5B,IAAIw8E,EAAe,SAAUZ,GACzB57E,EAAS47E,GACTU,EAAqBj5E,SAAQ,SAAUo5E,GACnCzjC,EAAGT,oBAAoBkkC,EAAWD,OAG1CF,EAAqBj5E,SAAQ,SAAUo5E,GACnCzjC,EAAGd,iBAAiBukC,EAAWD,MAIvC,IAAIE,EAAU,CAAC,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,OAEzD,SAASC,EAASx/D,EAAG5C,GACjB,IAAIoD,EAAIi/D,GAAez/D,GAEvB,OADAQ,EAAE,IAAU,EAAJpD,EACDsiE,GAAel/D,GAE1B,SAASm/D,EAAQ3/D,EAAG5C,GAChB,IAAIoD,EAAIi/D,GAAez/D,GAEvB,OADAQ,EAAE,IAAMpD,EACDsiE,GAAel/D,GAE1B,SAASo/D,EAAM5/D,EAAG5C,GACd,IAAIoD,EAAIi/D,GAAez/D,GAEvB,OADAQ,EAAE,IAAMpD,EACDsiE,GAAel/D,GAG1B,SAASq/D,EAAUC,EAAIC,GACnB,OAAOC,EAASF,EAAIC,GAAM,EAE9B,SAASC,EAASF,EAAIC,GAClB,OAAQA,EAAG7O,UAAY4O,EAAG5O,WAAa,MAE3C,SAAS+O,EAAUH,EAAIC,GACnB,OAAQA,EAAG7O,UAAY4O,EAAG5O,WAAa,KAE3C,SAASgP,EAAYJ,EAAIC,GACrB,OAAQA,EAAG7O,UAAY4O,EAAG5O,WAAa,IAE3C,SAASiP,GAAYL,EAAIC,GACrB,OAAQA,EAAG7O,UAAY4O,EAAG5O,WAAa,IAE3C,SAASkP,GAAeN,EAAIC,GACxB,IAAIM,EAAQC,GAAWR,GACnBS,EAAQD,GAAWP,GACvB,MAAO,CACHS,MAAO,EACPC,OAAQ,EACRC,KAAMvuE,KAAKiQ,MAAM49D,EAASK,EAAOE,IACjCI,aAAeZ,EAAG7O,UAAYqP,EAAMrP,WAAc4O,EAAG5O,UAAYmP,EAAMnP,YAI/E,SAAS0P,GAAed,EAAIC,GACxB,IAAIh9B,EAAI89B,GAAcf,EAAIC,GAC1B,OAAU,OAANh9B,GAAcA,EAAI,IAAM,EACjBA,EAAI,EAER,KAEX,SAAS89B,GAAcf,EAAIC,GACvB,OAAIe,GAAShB,KAAQgB,GAASf,GACnB5tE,KAAKiQ,MAAM49D,EAASF,EAAIC,IAE5B,KAGX,SAASO,GAAWtgE,GAChB,OAAO0/D,GAAe,CAClB1/D,EAAE+gE,iBACF/gE,EAAEghE,cACFhhE,EAAEihE,eAGV,SAASC,GAAYlhE,GACjB,OAAO0/D,GAAe,CAClB1/D,EAAE+gE,iBACF/gE,EAAEghE,cACFhhE,EAAEihE,aACFjhE,EAAEmhE,gBAGV,SAASC,GAAcphE,GACnB,OAAO0/D,GAAe,CAClB1/D,EAAE+gE,iBACF/gE,EAAEghE,cACFhhE,EAAEihE,aACFjhE,EAAEmhE,cACFnhE,EAAEqhE,kBAGV,SAASC,GAActhE,GACnB,OAAO0/D,GAAe,CAClB1/D,EAAE+gE,iBACF/gE,EAAEghE,cACFhhE,EAAEihE,aACFjhE,EAAEmhE,cACFnhE,EAAEqhE,gBACFrhE,EAAEuhE,kBAIV,SAASC,GAAWC,EAAQC,EAAKC,GAC7B,IAAI7iE,EAAI2iE,EAAOV,iBACXhhE,EAAI6hE,GAAgBH,EAAQ3iE,EAAG4iE,EAAKC,GACxC,GAAI5hE,EAAI,EACJ,OAAO6hE,GAAgBH,EAAQ3iE,EAAI,EAAG4iE,EAAKC,GAE/C,IAAIE,EAAQD,GAAgBH,EAAQ3iE,EAAI,EAAG4iE,EAAKC,GAChD,OAAIE,GAAS,EACF1vE,KAAKkN,IAAIU,EAAG8hE,GAEhB9hE,EAEX,SAAS6hE,GAAgBH,EAAQ/U,EAAMgV,EAAKC,GACxC,IAAIG,EAAiBpC,GAAe,CAAChT,EAAM,EAAG,EAAIqV,GAAgBrV,EAAMgV,EAAKC,KACzEK,EAAW1B,GAAWmB,GACtBf,EAAOvuE,KAAKiQ,MAAM49D,EAAS8B,EAAgBE,IAC/C,OAAO7vE,KAAKD,MAAMwuE,EAAO,GAAK,EAGlC,SAASqB,GAAgBrV,EAAMgV,EAAKC,GAEhC,IAAIM,EAAM,EAAIP,EAAMC,EAEhBO,GAAS,EAAIxC,GAAe,CAAChT,EAAM,EAAGuV,IAAME,YAAcT,GAAO,EACrE,OAAQQ,EAAQD,EAAM,EAG1B,SAASG,GAAiB9S,GACtB,MAAO,CACHA,EAAK+S,cACL/S,EAAKgT,WACLhT,EAAKiT,UACLjT,EAAKkT,WACLlT,EAAKmT,aACLnT,EAAKoT,aACLpT,EAAKqT,mBAGb,SAASC,GAAiBpiE,GACtB,OAAO,IAAIrX,KAAKqX,EAAE,GAAIA,EAAE,IAAM,EAAW,MAARA,EAAE,GAAa,EAAIA,EAAE,GACtDA,EAAE,IAAM,EAAGA,EAAE,IAAM,EAAGA,EAAE,IAAM,GAElC,SAASi/D,GAAenQ,GACpB,MAAO,CACHA,EAAKyR,iBACLzR,EAAK0R,cACL1R,EAAK2R,aACL3R,EAAK6R,cACL7R,EAAK+R,gBACL/R,EAAKiS,gBACLjS,EAAKuT,sBAGb,SAASnD,GAAel/D,GAMpB,OAHiB,IAAbA,EAAE7T,SACF6T,EAAIA,EAAE+G,OAAO,CAAC,KAEX,IAAIpe,KAAKA,KAAK25E,IAAIvmE,MAAMpT,KAAMqX,IAGzC,SAASuiE,GAAY/iE,GACjB,OAAQmG,MAAMnG,EAAEkxD,WAEpB,SAAS4P,GAAS9gE,GACd,OAAyB,IAAlBA,EAAEmhE,cAAuB,GAAK,GACb,IAApBnhE,EAAEqhE,gBAAyB,GACP,IAApBrhE,EAAEuhE,gBACFvhE,EAAE6iE,qBAGV,IAAIG,GAAiB,CAAC,QAAS,SAAU,OAAQ,gBAC7CC,GAAW,2DAEf,SAASC,GAAe7vE,EAAOkxD,GAC3B,IAAI4e,EACJ,MAAqB,kBAAV9vE,EACA+vE,GAAY/vE,GAEG,kBAAVA,GAAsBA,EAC3BgwE,GAAgBhwE,GAED,kBAAVA,EACLgwE,IAAiBF,EAAK,GAAIA,EAAG5e,GAAQ,gBAAkBlxD,EAAO8vE,IAG9D,KAGf,SAASC,GAAYpkE,GACjB,IAAIgB,EAAIijE,GAASj4E,KAAKgU,GACtB,GAAIgB,EAAG,CACH,IAAIsxC,EAAOtxC,EAAE,IAAM,EAAI,EACvB,MAAO,CACHwgE,MAAO,EACPC,OAAQ,EACRC,KAAMpvB,GAAQtxC,EAAE,GAAK3c,SAAS2c,EAAE,GAAI,IAAM,GAC1C2gE,aAAcrvB,GAA0C,IAAjCtxC,EAAE,GAAK3c,SAAS2c,EAAE,GAAI,IAAM,GAAU,GAAK,IAC5B,IAAjCA,EAAE,GAAK3c,SAAS2c,EAAE,GAAI,IAAM,GAAU,IACL,KAAjCA,EAAE,GAAK3c,SAAS2c,EAAE,GAAI,IAAM,IAC5BA,EAAE,GAAK3c,SAAS2c,EAAE,GAAI,IAAM,KAIzC,OAAO,KAEX,SAASqjE,GAAgBl+E,GACrB,MAAO,CACHq7E,MAAOr7E,EAAIq7E,OAASr7E,EAAIunE,MAAQ,EAChC+T,OAAQt7E,EAAIs7E,QAAUt7E,EAAIqnE,OAAS,EACnCkU,MAAOv7E,EAAIu7E,MAAQv7E,EAAImnE,KAAO,GACD,EAAzBgX,GAAkBn+E,GACtBw7E,aAA6C,IAA9Bx7E,EAAIo+E,OAASp+E,EAAIknE,MAAQ,GAAU,GAAK,IAChB,IAAlClnE,EAAIq+E,SAAWr+E,EAAIinE,QAAU,GAAU,IACL,KAAlCjnE,EAAIs+E,SAAWt+E,EAAI4R,QAAU,IAC7B5R,EAAIw7E,cAAgBx7E,EAAI8mE,aAAe9mE,EAAIu+E,IAAM,IAG9D,SAASJ,GAAkBn+E,GACvB,OAAOA,EAAIw+E,OAASx+E,EAAIonE,MAAQ,EAGpC,SAASqX,GAAe7Q,EAAIC,GACxB,OAAOD,EAAGyN,QAAUxN,EAAGwN,OACnBzN,EAAG0N,SAAWzN,EAAGyN,QACjB1N,EAAG2N,OAAS1N,EAAG0N,MACf3N,EAAG4N,eAAiB3N,EAAG2N,aAM/B,SAASkD,GAAa9Q,EAAIC,GACtB,MAAO,CACHwN,MAAOzN,EAAGyN,MAAQxN,EAAGwN,MACrBC,OAAQ1N,EAAG0N,OAASzN,EAAGyN,OACvBC,KAAM3N,EAAG2N,KAAO1N,EAAG0N,KACnBC,aAAc5N,EAAG4N,aAAe3N,EAAG2N,cAG3C,SAASmD,GAAkB9Q,EAAID,GAC3B,MAAO,CACHyN,MAAOxN,EAAGwN,MAAQzN,EAAGyN,MACrBC,OAAQzN,EAAGyN,OAAS1N,EAAG0N,OACvBC,KAAM1N,EAAG0N,KAAO3N,EAAG2N,KACnBC,aAAc3N,EAAG2N,aAAe5N,EAAG4N,cAG3C,SAASoD,GAAiBhhC,EAAG3lC,GACzB,MAAO,CACHojE,MAAOz9B,EAAEy9B,MAAQpjE,EACjBqjE,OAAQ19B,EAAE09B,OAASrjE,EACnBsjE,KAAM39B,EAAE29B,KAAOtjE,EACfujE,aAAc59B,EAAE49B,aAAevjE,GAKvC,SAAS4mE,GAAaC,GAClB,OAAOC,GAAYD,GAAO,IAE9B,SAASE,GAAcF,GACnB,OAAOC,GAAYD,GAAO,GAE9B,SAASC,GAAYD,GACjB,OAAOG,GAAUH,GAAO,MAQ5B,SAASG,GAAUH,GACf,OAAmB,QAAZA,EAAIzD,MACM,OAAbyD,EAAIxD,OACO,MAAXwD,EAAIvD,KACJuD,EAAItD,aAGZ,SAAS0D,GAAqBC,EAAWC,GAErC,IADA,IAAIxpD,EAAM,KACDphB,EAAI,EAAGA,EAAIqpE,GAAer2E,OAAQgN,IAAK,CAC5C,IAAI4qD,EAAOye,GAAerpE,GAC1B,GAAI4qE,EAAYhgB,GAAO,CACnB,IAAIigB,EAAWF,EAAU/f,GAAQggB,EAAYhgB,GAC7C,IAAKkgB,GAAMD,IAAsB,OAARzpD,GAAgBA,IAAQypD,EAC7C,OAAO,KAEXzpD,EAAMypD,OAEL,GAAIF,EAAU/f,GAEf,OAAO,KAGf,OAAOxpC,EAEX,SAAS2pD,GAA4BT,EAAKU,GACtC,IAAIjB,EAAKO,EAAItD,aACb,GAAI+C,EAAI,CACJ,GAAIA,EAAK,MAAS,EACd,MAAO,CAAEnf,KAAM,cAAe3hE,MAAO8gF,GAEzC,GAAIA,EAAK,MAAgB,EACrB,MAAO,CAAEnf,KAAM,SAAU3hE,MAAO8gF,EAAK,KAEzC,GAAIA,EAAK,OAAqB,EAC1B,MAAO,CAAEnf,KAAM,SAAU3hE,MAAO8gF,EAAK,KAEzC,GAAIA,EACA,MAAO,CAAEnf,KAAM,OAAQ3hE,MAAO8gF,EAAK,MAG3C,OAAIO,EAAIvD,KACCiE,GAAmBV,EAAIvD,KAAO,IAAM,EAGlC,CAAEnc,KAAM,MAAO3hE,MAAOqhF,EAAIvD,MAFtB,CAAEnc,KAAM,OAAQ3hE,MAAOqhF,EAAIvD,KAAO,GAI7CuD,EAAIxD,OACG,CAAElc,KAAM,QAAS3hE,MAAOqhF,EAAIxD,QAEnCwD,EAAIzD,MACG,CAAEjc,KAAM,OAAQ3hE,MAAOqhF,EAAIzD,OAE/B,CAAEjc,KAAM,cAAe3hE,MAAO,GAOzC,SAASgiF,GAAiBC,EAAOC,GACzBA,EAAgB1zD,MAChBynD,EAAWgM,EAAO,CACdlI,gBAAiB,EACjBoI,WAAYD,EAAgB1zD,KAAO,IAGvC0zD,EAAgBxzD,OAChBunD,EAAWgM,EAAO,CACdhI,iBAAkB,EAClBmI,YAAaF,EAAgBxzD,MAAQ,IAKjD,SAAS2zD,GAAmBJ,GACxBhM,EAAWgM,EAAO,CACdE,WAAY,GACZC,YAAa,GACbrI,gBAAiB,GACjBE,iBAAkB,KAI1B,SAASqI,KACLl5C,SAASkZ,KAAKlI,UAAUC,IAAI,kBAGhC,SAASkoC,KACLn5C,SAASkZ,KAAKlI,UAAUG,OAAO,kBAMnC,SAASioC,GAAiBvL,EAAKnhC,EAAiB2sC,GAG5C,IAAIC,EAAanzE,KAAKD,MAAMwmC,EAAkBmhC,EAAIltE,QAC9C44E,EAAapzE,KAAKD,MAAMwmC,EAAkB4sC,GAAczL,EAAIltE,OAAS,IACrE64E,EAAU,GACVC,EAAc,GACdC,EAAc,GACdC,EAAa,EACjBC,GAAmB/L,GAGnBA,EAAI3zE,SAAQ,SAAU21C,EAAIliC,GACtB,IAAIksE,EAAYlsE,IAAMkgE,EAAIltE,OAAS,EAAI44E,EAAaD,EAChDQ,EAAgBjqC,EAAG4Y,wBAAwB5mD,OAC3Ck4E,EAAgBD,EAAgB7H,EAAgBpiC,GAChDkqC,EAAgBF,GAChBL,EAAQj3E,KAAKstC,GACb4pC,EAAYl3E,KAAKw3E,GACjBL,EAAYn3E,KAAKu3E,IAIjBH,GAAcI,KAIlBV,IACA3sC,GAAmBitC,EACnBL,EAAanzE,KAAKD,MAAMwmC,EAAkB8sC,EAAQ74E,QAClD44E,EAAapzE,KAAKD,MAAMwmC,EAAkB4sC,GAAcE,EAAQ74E,OAAS,KAG7E64E,EAAQt/E,SAAQ,SAAU21C,EAAIliC,GAC1B,IAAIksE,EAAYlsE,IAAM6rE,EAAQ74E,OAAS,EAAI44E,EAAaD,EACpDS,EAAgBN,EAAY9rE,GAC5BmsE,EAAgBJ,EAAY/rE,GAC5Bs9B,EAAY4uC,GAAaE,EAAgBD,GACzCC,EAAgBF,IAChBhqC,EAAGruC,MAAMK,OAASopC,EAAY,SAK1C,SAAS2uC,GAAmB/L,GACxBA,EAAI3zE,SAAQ,SAAU21C,GAClBA,EAAGruC,MAAMK,OAAS,MAM1B,SAASm4E,GAAgBnM,GACrB,IAAIoM,EAAgB,EAcpB,OAbApM,EAAI3zE,SAAQ,SAAU21C,GAClB,IAAIygC,EAAUzgC,EAAG6B,WACjB,GAAI4+B,aAAmBxB,YAAa,CAChC,IAAIoL,EAAe5J,EAAQ7nB,wBAAwB7mD,MAC/Cs4E,EAAeD,IACfA,EAAgBC,OAI5BD,IACApM,EAAI3zE,SAAQ,SAAU21C,GAClBA,EAAGruC,MAAMI,MAAQq4E,EAAgB,QAE9BA,EAIX,SAASE,GAAsB/J,EAASE,GAEpC,IAAI8J,EAAmB,CACnB37C,SAAU,WACVrZ,MAAO,GAEXynD,EAAWuD,EAASgK,GACpBvN,EAAWyD,EAAS8J,GACpB,IAAIxmE,EACHw8D,EAAQ3nB,wBAAwB5mD,OAC7ByuE,EAAQ7nB,wBAAwB5mD,OAEhCw4E,EAAkB,CAAE57C,SAAU,GAAIrZ,KAAM,IAG5C,OAFAynD,EAAWuD,EAASiK,GACpBxN,EAAWyD,EAAS+J,GACbzmE,EAIX,SAAS0mE,GAAiBzqC,GACtBA,EAAGmB,UAAUC,IAAI,mBACjBpB,EAAGd,iBAAiB,cAAe14C,GAEvC,SAASkkF,GAAe1qC,GACpBA,EAAGmB,UAAUG,OAAO,mBACpBtB,EAAGT,oBAAoB,cAAe/4C,GAI1C,SAASmkF,GAAmB3qC,GACxBA,EAAGd,iBAAiB,cAAe14C,GAEvC,SAASokF,GAAiB5qC,GACtBA,EAAGT,oBAAoB,cAAe/4C,GAI1C,SAASqkF,GAAgBrzE,GACrB,IAEIsG,EACAgtE,EAHAC,EAAQ,GACRC,EAAS,GAYb,IATqB,kBAAVxzE,EACPwzE,EAASxzE,EAAMgB,MAAM,WAEC,oBAAVhB,EACZwzE,EAAS,CAACxzE,GAELpF,MAAMsd,QAAQlY,KACnBwzE,EAASxzE,GAERsG,EAAI,EAAGA,EAAIktE,EAAOl6E,OAAQgN,IAC3BgtE,EAAQE,EAAOltE,GACM,kBAAVgtE,EACPC,EAAMr4E,KAAyB,MAApBo4E,EAAMpzE,OAAO,GACpB,CAAEuzE,MAAOH,EAAMhkE,UAAU,GAAIwqC,OAAQ,GACrC,CAAE25B,MAAOH,EAAOx5B,MAAO,IAEL,oBAAVw5B,GACZC,EAAMr4E,KAAK,CAAEw4E,KAAMJ,IAG3B,OAAOC,EAEX,SAASI,GAAoBC,EAAMC,EAAMC,GACrC,IAAIxtE,EACAytE,EACJ,IAAKztE,EAAI,EAAGA,EAAIwtE,EAAWx6E,OAAQgN,IAE/B,GADAytE,EAAMC,GAAmBJ,EAAMC,EAAMC,EAAWxtE,IAC5CytE,EACA,OAAOA,EAGf,OAAO,EAEX,SAASC,GAAmBJ,EAAMC,EAAMI,GACpC,OAAIA,EAAUP,KACHO,EAAUP,KAAKE,EAAMC,GAEzBK,GAAgBN,EAAKK,EAAUR,OAAQI,EAAKI,EAAUR,SACtDQ,EAAUn6B,OAAS,GAE9B,SAASo6B,GAAgB/mE,EAAGpB,GACxB,OAAKoB,GAAMpB,EAGF,MAALA,GACQ,EAEH,MAALoB,EACO,EAEM,kBAANA,GAA+B,kBAANpB,EACzB7Y,OAAOia,GAAGgnE,cAAcjhF,OAAO6Y,IAEnCoB,EAAIpB,EAXA,EAef,SAASqoE,GAAsBjhE,GAC3B,OAAOA,EAAIjT,OAAO,GAAGmP,cAAgB8D,EAAIja,MAAM,GAEnD,SAASm7E,GAAS9mE,EAAK2C,GACnB,IAAIvE,EAAIzY,OAAOqa,GACf,MAAO,MAAM4K,OAAO,EAAGjI,EAAMvE,EAAErS,QAAUqS,EAI7C,SAAS2oE,GAAennE,EAAGpB,GACvB,OAAOoB,EAAIpB,EAEf,SAASqlE,GAAMrnE,GACX,OAAOA,EAAI,IAAM,EAIrB,SAASwqE,GAASC,EAAWC,EAAS3lE,GAIlC,GAHyB,oBAAd0lE,IACPA,EAAY,CAACA,IAEbA,EAAW,CACX,IAAIluE,OAAI,EACJouE,OAAM,EACV,IAAKpuE,EAAI,EAAGA,EAAIkuE,EAAUl7E,OAAQgN,IAC9BouE,EAAMF,EAAUluE,GAAG4C,MAAMurE,EAAS3lE,IAAS4lE,EAE/C,OAAOA,GAGf,SAASC,KAEL,IADA,IAAI7lE,EAAO,GACF8lE,EAAK,EAAGA,EAAK/tE,UAAUvN,OAAQs7E,IACpC9lE,EAAK8lE,GAAM/tE,UAAU+tE,GAEzB,IAAK,IAAItuE,EAAI,EAAGA,EAAIwI,EAAKxV,OAAQgN,IAC7B,QAAgBvU,IAAZ+c,EAAKxI,GACL,OAAOwI,EAAKxI,GASxB,SAASuuE,GAASnB,EAAMoB,GACpB,IAAIC,EACAjmE,EACAqT,EACA+5C,EACAvpE,EACAqiF,EAAQ,WACR,IAAIh/C,GAAO,IAAIlgC,MAAO+nE,UAAY3B,EAC9BlmC,EAAO8+C,EACPC,EAAUh0B,WAAWi0B,EAAOF,EAAO9+C,IAGnC++C,EAAU,KACVpiF,EAAS+gF,EAAKxqE,MAAMiZ,EAASrT,GAC7BqT,EAAUrT,EAAO,OAGzB,OAAO,WAOH,OANAqT,EAAUv0B,KACVkhB,EAAOjI,UACPq1D,GAAY,IAAIpmE,MAAO+nE,UAClBkX,IACDA,EAAUh0B,WAAWi0B,EAAOF,IAEzBniF,GAKf,SAASsiF,GAAYC,EAAUC,EAAYz0D,EAAU00D,QAChC,IAAb10D,IAAuBA,EAAW,IACtC,IAAI20D,EAAU,GACd,IAAK,IAAIxmF,KAAOsmF,EAAY,CACxB,IAAIG,EAAYH,EAAWtmF,QACLkD,IAAlBmjF,EAASrmF,GAGLwmF,EAAQxmF,GADRymF,IAAcC,SAC0B,oBAAlBL,EAASrmF,GAAsBqmF,EAASrmF,GAAO,KAEhEymF,EACUA,EAAUJ,EAASrmF,IAGnBqmF,EAASrmF,QAGLkD,IAAlB2uB,EAAS7xB,GAEdwmF,EAAQxmF,GAAO6xB,EAAS7xB,GAIpBymF,IAAcpiF,OACdmiF,EAAQxmF,GAAO,GAETymF,GAAaA,IAAc56E,QAAU46E,IAAcE,SAAWF,IAAcC,SAIlFF,EAAQxmF,GAAOymF,EAAU,MAHzBD,EAAQxmF,GAAO,KAO3B,GAAIumF,EACA,IAAK,IAAIvmF,KAAOqmF,OACYnjF,IAApBojF,EAAWtmF,KACXumF,EAAcvmF,GAAOqmF,EAASrmF,IAI1C,OAAOwmF,EAMX,SAASI,GAAuBC,GAC5B,IAAIC,EAAS72E,KAAKD,MAAM8tE,EAAS+I,EAAWlxD,MAAOkxD,EAAWrhD,OAAS,EACnE7P,EAAQyoD,GAAWyI,EAAWlxD,OAC9B6P,EAAMi4C,EAAQ9nD,EAAOmxD,GACzB,MAAO,CAAEnxD,MAAOA,EAAO6P,IAAKA,GAIhC,SAASuhD,GAAuBF,EAAYG,QACf,IAArBA,IAA+BA,EAAmBhG,GAAe,IACrE,IAAIiG,EAAW,KACXC,EAAS,KACb,GAAIL,EAAWrhD,IAAK,CAChB0hD,EAAS9I,GAAWyI,EAAWrhD,KAC/B,IAAI2hD,EAAYN,EAAWrhD,IAAIwpC,UAAYkY,EAAOlY,UAI9CmY,GAAaA,GAAajF,GAAU8E,KACpCE,EAASzJ,EAAQyJ,EAAQ,IAUjC,OAPIL,EAAWlxD,QACXsxD,EAAW7I,GAAWyI,EAAWlxD,OAE7BuxD,GAAUA,GAAUD,IACpBC,EAASzJ,EAAQwJ,EAAU,KAG5B,CAAEtxD,MAAOsxD,EAAUzhD,IAAK0hD,GAGnC,SAASE,GAAgBn/C,GACrB,IAAIo/C,EAAeN,GAAuB9+C,GAC1C,OAAO61C,EAASuJ,EAAa1xD,MAAO0xD,EAAa7hD,KAAO,EAE5D,SAAS8hD,GAAUC,EAAOC,EAAOC,EAASC,GACtC,MAAkB,SAAdA,EACO1G,GAAeyG,EAAQE,eAAeJ,EAAOC,GAAQ,QAEzC,UAAdE,EACE1G,GAAeyG,EAAQG,gBAAgBL,EAAOC,GAAQ,SAGtDtJ,GAAeqJ,EAAOC;;;;;;;;;;;;;;gFAoBrC,IAAIK,GAAgB,SAAShnC,EAAG3jC,GAI5B,OAHA2qE,GAAgB1kF,OAAO2kF,gBAClB,CAAE/wC,UAAW,cAAgBhrC,OAAS,SAAU80C,EAAG3jC,GAAK2jC,EAAE9J,UAAY75B,IACvE,SAAU2jC,EAAG3jC,GAAK,IAAK,IAAI8B,KAAK9B,EAAOA,EAAE/B,eAAe6D,KAAI6hC,EAAE7hC,GAAK9B,EAAE8B,KAClE6oE,GAAchnC,EAAG3jC,IAG5B,SAAS6qE,GAAUlnC,EAAG3jC,GAElB,SAAS8qE,IAAOjpF,KAAKwsB,YAAcs1B,EADnCgnC,GAAchnC,EAAG3jC,GAEjB2jC,EAAErnC,UAAkB,OAAN0D,EAAa/Z,OAAOmnB,OAAOpN,IAAM8qE,EAAGxuE,UAAY0D,EAAE1D,UAAW,IAAIwuE,GAGnF,IAAIC,GAAW,WAQX,OAPAA,GAAW9kF,OAAOC,QAAU,SAAkB8b,GAC1C,IAAK,IAAIpC,EAAGrF,EAAI,EAAGyD,EAAIlD,UAAUvN,OAAQgN,EAAIyD,EAAGzD,IAE5C,IAAK,IAAIuH,KADTlC,EAAI9E,UAAUP,GACAqF,EAAO3Z,OAAOqW,UAAU2B,eAAe5C,KAAKuE,EAAGkC,KAAIE,EAAEF,GAAKlC,EAAEkC,IAE9E,OAAOE,GAEJ+oE,GAAS5tE,MAAMtb,KAAMiZ,YAGhC,SAASkwE,GAAeC,EAAYC,EAAeX,EAASY,EAAgBC,GACxE,IAAK,IAAI7wE,EAAI,EAAGA,EAAI4wE,EAAe59E,OAAQgN,IAAK,CAC5C,IAAI8wE,EAAiB,GACjBC,EAASH,EAAe5wE,GAAGk9C,MAAMwzB,EAAYI,EAAgBd,GACjE,GAAIe,EAAQ,CACR,IAAIC,EAASF,EAAeE,OAY5B,cAXOF,EAAeE,OACR,MAAVA,IACAA,EAASL,EACK,MAAVK,IACAA,EAASD,EAAOE,YACF,MAAVD,IACAA,GAAS,KAIrBR,GAASK,EAAWC,GACb,CACHE,OAAQA,EACRnxD,SAAUkxD,EAAOlxD,SACjBqxD,SAAUH,EAAOG,SACjBC,OAAQnxE,IAIpB,OAAO,KAKX,SAASoxE,GAAsBC,EAAUxxD,EAAUyxD,EAActB,EAASY,GACtE,IAAIW,EAAUX,EAAeS,EAASG,aAAaL,QAC/CM,EAAUF,EAAQhvC,OAAO8uC,EAASG,aAAaN,SAAU,CACzDhzD,MAAO8xD,EAAQ0B,SAASJ,EAAapzD,MAAO2B,GAC5CkO,IAAKujD,EAAavjD,KACnBiiD,GAKH,OAHIqB,EAASL,SACTS,EAAUA,EAAQ9mF,IAAIg8E,KAEnB8K,EAGX,IAAI/tE,GAAiBhY,OAAOqW,UAAU2B,eAGtC,SAASiuE,GAAWC,EAAUC,GAC1B,IACI7xE,EACArJ,EACAm7E,EACAx+C,EACArsB,EACAhV,EANA8/E,EAAO,GAOX,GAAIF,EACA,IAAK7xE,EAAI,EAAGA,EAAI6xE,EAAa7+E,OAAQgN,IAAK,CAItC,IAHArJ,EAAOk7E,EAAa7xE,GACpB8xE,EAAc,GAETx+C,EAAIs+C,EAAS5+E,OAAS,EAAGsgC,GAAK,EAAGA,IAElC,GADArsB,EAAM2qE,EAASt+C,GAAG38B,GACC,kBAARsQ,GAAoBA,EAC3B6qE,EAAYj2E,QAAQoL,QAEnB,QAAYxb,IAARwb,EAAmB,CACxB8qE,EAAKp7E,GAAQsQ,EACb,MAIJ6qE,EAAY9+E,SACZ++E,EAAKp7E,GAAQg7E,GAAWG,IAKpC,IAAK9xE,EAAI4xE,EAAS5+E,OAAS,EAAGgN,GAAK,EAAGA,IAElC,IAAKrJ,KADL1E,EAAQ2/E,EAAS5xE,GACJ/N,EACH0E,KAAQo7E,IACVA,EAAKp7E,GAAQ1E,EAAM0E,IAI/B,OAAOo7E,EAEX,SAASC,GAAWhlF,EAAMogF,GACtB,IAAIn2B,EAAW,GACf,IAAK,IAAI1uD,KAAOyE,EACRogF,EAAKpgF,EAAKzE,GAAMA,KAChB0uD,EAAS1uD,GAAOyE,EAAKzE,IAG7B,OAAO0uD,EAEX,SAASg7B,GAAQjlF,EAAMogF,GACnB,IAAI8E,EAAU,GACd,IAAK,IAAI3pF,KAAOyE,EACZklF,EAAQ3pF,GAAO6kF,EAAKpgF,EAAKzE,GAAMA,GAEnC,OAAO2pF,EAEX,SAASC,GAAYtrE,GAEjB,IADA,IAAI7Z,EAAO,GACFshF,EAAK,EAAG8D,EAAMvrE,EAAGynE,EAAK8D,EAAIp/E,OAAQs7E,IAAM,CAC7C,IAAIlhF,EAAOglF,EAAI9D,GACfthF,EAAKI,IAAQ,EAEjB,OAAOJ,EAEX,SAASqlF,GAAkB7mF,GACvB,IAAIqb,EAAI,GACR,IAAK,IAAIte,KAAOiD,EACZqb,EAAEjS,KAAKpJ,EAAIjD,IAEf,OAAOse,EAEX,SAASyrE,GAAahF,EAAMC,GACxB,IAAK,IAAIhlF,KAAO+kF,EACZ,GAAI5pE,GAAe5C,KAAKwsE,EAAM/kF,MACpBA,KAAOglF,GACT,OAAO,EAInB,IAAK,IAAIhlF,KAAOglF,EACZ,GAAI7pE,GAAe5C,KAAKysE,EAAMhlF,IACtB+kF,EAAK/kF,KAASglF,EAAKhlF,GACnB,OAAO,EAInB,OAAO,EAGX,SAASgqF,GAAYC,EAAWC,EAAUC,EAAUC,GAEhD,IADA,IAAIC,EAAaC,KACRvE,EAAK,EAAGwE,EAAcN,EAAWlE,EAAKwE,EAAY9/E,OAAQs7E,IAAM,CACrE,IAAIyE,EAAWD,EAAYxE,GACvB0E,EAAQC,GAAWF,EAAUN,EAAUC,EAAUC,GACjDK,GACAE,GAAkBF,EAAOJ,GAGjC,OAAOA,EAEX,SAASM,GAAkBF,EAAOJ,GAM9B,YALmB,IAAfA,IAAyBA,EAAaC,MAC1CD,EAAWO,KAAKH,EAAMI,IAAIC,OAASL,EAAMI,IACrCJ,EAAMM,WACNV,EAAW/gC,UAAUmhC,EAAMM,SAASC,YAAcP,EAAMM,UAErDV,EAEX,SAASY,GAAgBZ,EAAYtB,EAAcoB,GAC/C,IAAI1C,EAAU0C,EAAS1C,QACnBmD,EAAOP,EAAWO,KAAMthC,EAAY+gC,EAAW/gC,UAKnD,IAAK,IAAIwhC,KAHTxhC,EAAYmgC,GAAWngC,GAAW,SAAUyhC,GACxC,OAAQH,EAAKG,EAASD,OAAO7B,gBAEf2B,EAAM,CACpB,IAAIC,EAAMD,EAAKE,GACf,GAAID,EAAI5B,aAAc,CAClB,IAAI3xD,EAAWuzD,EAAI5B,aAAa3xD,SAC3BA,IACDA,EAAWuzD,EAAIpC,OACX0B,EAASe,2BACTf,EAASgB,2BAGjB,IADA,IAAIl7C,EAAS44C,GAAsBgC,EAAKvzD,EAAUyxD,EAAcoB,EAAS1C,QAAS0C,EAASiB,aAAaC,MAAMhD,gBACrGtC,EAAK,EAAGuF,EAAWr7C,EAAQ81C,EAAKuF,EAAS7gF,OAAQs7E,IAAM,CAC5D,IAAIpwD,EAAQ21D,EAASvF,GACjBgF,EAAWQ,GAAoBT,EAAO,CACtCn1D,MAAOA,EACP6P,IAAKiiD,EAAQ1sC,IAAIplB,EAAO2B,KAE5BgyB,EAAUyhC,EAASC,YAAcD,IAI7C,MAAO,CAAEH,KAAMA,EAAMthC,UAAWA,GAKpC,SAASkiC,GAAkBnB,EAAYW,GACnC,IAAID,EAAWV,EAAW/gC,UAAU0hC,GACpC,GAAID,EAAU,CACV,IAAIU,EAAQpB,EAAWO,KAAKG,EAASD,OAEjCY,EAAWC,GAAqBtB,GAAY,SAAUuB,GACtD,OAAOC,GAAmBJ,EAAOG,MAMrC,OAFAF,EAASd,KAAKa,EAAMX,OAASW,EAC7BC,EAASpiC,UAAUyhC,EAASC,YAAcD,EACnCW,EAEX,OAAOpB,KAEX,SAASuB,GAAmBC,EAAMC,GAC9B,OAAOpF,QAAQmF,EAAKE,SAAWF,EAAKE,UAAYD,EAAKC,SAEzD,SAASC,GAAmBhC,EAAWiC,EAAa/B,GAChD,IAAIgC,EAAmBhC,EAASiC,IAAI,sBAChCC,EAAsBH,EAAcA,EAAYI,mBAAqB,KAOzE,OANID,IACApC,EAAYsC,GAAsBtC,EAAWoC,IAE7CF,IACAlC,EAAYsC,GAAsBtC,EAAWkC,IAE1ClC,EAEX,SAASsC,GAAsBtC,EAAWpF,GACtC,IAAI2H,EACJ,GAAK3H,EAGA,CACD2H,EAAgB,GAChB,IAAK,IAAIzG,EAAK,EAAG0G,EAAcxC,EAAWlE,EAAK0G,EAAYhiF,OAAQs7E,IAAM,CACrE,IAAIyE,EAAWiC,EAAY1G,GACvB2G,EAAe7H,EAAK2F,GACpBkC,EACAF,EAAcngF,KAAKqgF,GAEE,MAAhBA,GACLF,EAAcngF,KAAKm+E,SAX3BgC,EAAgBvC,EAepB,OAAOuC,EAEX,SAASlC,KACL,MAAO,CAAEM,KAAM,GAAIthC,UAAW,IAElC,SAASqjC,GAAiBC,EAAQC,GAC9B,MAAO,CACHjC,KAAM3C,GAAS,GAAI2E,EAAOhC,KAAMiC,EAAOjC,MACvCthC,UAAW2+B,GAAS,GAAI2E,EAAOtjC,UAAWujC,EAAOvjC,YAGzD,SAASqiC,GAAqBtB,EAAYyC,GACtC,IAAIlC,EAAOnB,GAAWY,EAAWO,KAAMkC,GACnCxjC,EAAYmgC,GAAWY,EAAW/gC,WAAW,SAAUyhC,GACvD,OAAOH,EAAKG,EAASD,UAEzB,MAAO,CAAEF,KAAMA,EAAMthC,UAAWA,GAGpC,SAASyjC,GAAW57E,EAAOs2E,GACvB,IAAI9xD,EAAQ,KACR6P,EAAM,KAOV,OANIr0B,EAAMwkB,QACNA,EAAQ8xD,EAAQuF,aAAa77E,EAAMwkB,QAEnCxkB,EAAMq0B,MACNA,EAAMiiD,EAAQuF,aAAa77E,EAAMq0B,MAEhC7P,GAAU6P,EAGX7P,GAAS6P,GAAOA,EAAM7P,EACf,KAEJ,CAAEA,MAAOA,EAAO6P,IAAKA,GALjB,KASf,SAASynD,GAAaC,EAAQC,GAC1B,IAEI11E,EACA21E,EAHAC,EAAiB,GACjB13D,EAAQw3D,EAAgBx3D,MAK5B,IADAu3D,EAAOhpF,KAAKopF,IACP71E,EAAI,EAAGA,EAAIy1E,EAAOziF,OAAQgN,IAC3B21E,EAAYF,EAAOz1E,GAEf21E,EAAUz3D,MAAQA,GAClB03D,EAAehhF,KAAK,CAAEspB,MAAOA,EAAO6P,IAAK4nD,EAAUz3D,QAEnDy3D,EAAU5nD,IAAM7P,IAChBA,EAAQy3D,EAAU5nD,KAO1B,OAHI7P,EAAQw3D,EAAgB3nD,KACxB6nD,EAAehhF,KAAK,CAAEspB,MAAOA,EAAO6P,IAAK2nD,EAAgB3nD,MAEtD6nD,EAEX,SAASC,GAAcC,EAAQC,GAC3B,OAAOD,EAAO53D,MAAMq5C,UAAYwe,EAAO73D,MAAMq5C,UAEjD,SAASye,GAAgBF,EAAQC,GAC7B,IAAI73D,EAAQ43D,EAAO53D,MACf6P,EAAM+nD,EAAO/nD,IACbkoD,EAAW,KAoBf,OAnBqB,OAAjBF,EAAO73D,QAEHA,EADU,OAAVA,EACQ63D,EAAO73D,MAGP,IAAI1uB,KAAKgJ,KAAKmN,IAAIuY,EAAMq5C,UAAWwe,EAAO73D,MAAMq5C,aAG9C,MAAdwe,EAAOhoD,MAEHA,EADQ,OAARA,EACMgoD,EAAOhoD,IAGP,IAAIv+B,KAAKgJ,KAAKkN,IAAIqoB,EAAIwpC,UAAWwe,EAAOhoD,IAAIwpC,cAG5C,OAAVr5C,GAA0B,OAAR6P,GAAgB7P,EAAQ6P,KAC1CkoD,EAAW,CAAE/3D,MAAOA,EAAO6P,IAAKA,IAE7BkoD,EAEX,SAASC,GAAYJ,EAAQC,GACzB,OAAyB,OAAjBD,EAAO53D,MAAiB,KAAO43D,EAAO53D,MAAMq5C,cAAiC,OAAjBwe,EAAO73D,MAAiB,KAAO63D,EAAO73D,MAAMq5C,aAC5F,OAAfue,EAAO/nD,IAAe,KAAO+nD,EAAO/nD,IAAIwpC,cAA+B,OAAfwe,EAAOhoD,IAAe,KAAOgoD,EAAOhoD,IAAIwpC,WAEzG,SAAS4e,GAAgBL,EAAQC,GAC7B,OAAuB,OAAfD,EAAO/nD,KAAiC,OAAjBgoD,EAAO73D,OAAkB43D,EAAO/nD,IAAMgoD,EAAO73D,SACtD,OAAjB43D,EAAO53D,OAAiC,OAAf63D,EAAOhoD,KAAgB+nD,EAAO53D,MAAQ63D,EAAOhoD,KAE/E,SAASqoD,GAAmBC,EAAYC,GACpC,OAA6B,OAArBD,EAAWn4D,OAAwC,OAArBo4D,EAAWp4D,OAAkBo4D,EAAWp4D,OAASm4D,EAAWn4D,SAC1E,OAAnBm4D,EAAWtoD,KAAoC,OAAnBuoD,EAAWvoD,KAAgBuoD,EAAWvoD,KAAOsoD,EAAWtoD,KAE7F,SAASwoD,GAAoB/lD,EAAOmlC,GAChC,OAAwB,OAAhBnlC,EAAMtS,OAAkBy3C,GAAQnlC,EAAMtS,SAC3B,OAAdsS,EAAMzC,KAAgB4nC,EAAOnlC,EAAMzC,KAI5C,SAASyoD,GAAuB7gB,EAAMnlC,GAClC,OAAmB,MAAfA,EAAMtS,OAAiBy3C,EAAOnlC,EAAMtS,MAC7BsS,EAAMtS,MAEA,MAAbsS,EAAMzC,KAAe4nC,GAAQnlC,EAAMzC,IAC5B,IAAIv+B,KAAKghC,EAAMzC,IAAIwpC,UAAY,GAEnC5B,EAiBX,SAAS8gB,GAAcjkE,EAAIC,GACvB,IACIzS,EADA4J,EAAM4I,EAAGxf,OAEb,GAAI4W,IAAQ6I,EAAGzf,OACX,OAAO,EAEX,IAAKgN,EAAI,EAAGA,EAAI4J,EAAK5J,IACjB,GAAIwS,EAAGxS,KAAOyS,EAAGzS,GACb,OAAO,EAGf,OAAO,EAGX,SAAS02E,GAAQC,GACb,IAAInuE,EACA4Y,EACJ,OAAO,WAKH,OAJK5Y,GAASiuE,GAAcjuE,EAAMjI,aAC9BiI,EAAOjI,UACP6gB,EAAMu1D,EAAW/zE,MAAMtb,KAAMiZ,YAE1B6gB,GAOf,SAASw1D,GAAcD,EAAYE,GAC/B,IAAIC,EAAY,KAChB,OAAO,WACH,IAAIC,EAASJ,EAAW/zE,MAAMtb,KAAMiZ,WAIpC,OAHkB,OAAdu2E,GAAwBA,IAAcC,IAAUF,EAAaC,EAAWC,MACxED,EAAYC,GAETD,GAIf,IAAIE,GAAmC,CACnCpkB,KAAM,EACNqkB,UAAW,EACXC,eAAgB,EAChBC,SAAU,EACVC,WAAY,GAEZC,GAAgC,CAChCC,aAAc,EACdC,IAAK,EACLxkB,KAAM,EACNF,MAAO,EACPF,IAAK,EACLqC,QAAS,EACTtC,KAAM,EACND,OAAQ,EACRr1D,OAAQ,GAERo6E,GAAc,oBACdC,GAAW,KACXC,GAAiB,OACjBC,GAAS,UACTC,GAAS,UACTC,GAAiC,WACjC,SAASA,EAAgBC,GACrB,IAAIC,EAAoB,GACpBC,EAAmB,GACnBC,EAAW,EACf,IAAK,IAAIC,KAAUJ,EACXI,KAAUlB,IACVgB,EAAiBE,GAAUJ,EAAeI,GAC1CD,EAAWz/E,KAAKmN,IAAIqxE,GAAiCkB,GAASD,KAG9DF,EAAkBG,GAAUJ,EAAeI,GACvCA,KAAUb,KACVY,EAAWz/E,KAAKmN,IAAI0xE,GAA8Ba,GAASD,KAIvE3wF,KAAKywF,kBAAoBA,EACzBzwF,KAAK0wF,iBAAmBA,EACxB1wF,KAAK2wF,SAAWA,EAChB3wF,KAAK6wF,oBAAsBzB,GAAQyB,IAgDvC,OA9CAN,EAAgB91E,UAAUo7C,OAAS,SAAUwY,EAAM95C,GAC/C,OAAOv0B,KAAK6wF,oBAAoB7wF,KAAKywF,kBAAmBzwF,KAAK0wF,iBAAkBn8D,EAAxEv0B,CAAiFquE,IAE5FkiB,EAAgB91E,UAAUq2E,YAAc,SAAUl6D,EAAO6P,EAAKlS,GAC1D,IAAI2tD,EAAKliF,KAAMywF,EAAoBvO,EAAGuO,kBAAmBC,EAAmBxO,EAAGwO,iBAC3EK,EAAeC,GAA0Bp6D,EAAM4pD,OAAQ/5C,EAAI+5C,OAAQjsD,EAAQ08D,gBAC/E,IAAKF,EACD,OAAO/wF,KAAK61D,OAAOj/B,EAAOrC,GAE9B,IAAI28D,EAAwBH,IACxBG,EAAwB,IACI,YAA3BT,EAAkBhlB,MAAiD,YAA3BglB,EAAkBhlB,MAC9B,YAA5BglB,EAAkBllB,OAAmD,YAA5BklB,EAAkBllB,OACjC,YAA1BklB,EAAkBplB,KAA+C,YAA1BolB,EAAkBplB,MAC1D6lB,EAAwB,GAE5B,IAAIC,EAAQnxF,KAAK61D,OAAOj/B,EAAOrC,GAC3B68D,EAAQpxF,KAAK61D,OAAOpvB,EAAKlS,GAC7B,GAAI48D,IAAUC,EACV,OAAOD,EAEX,IAAIE,EAAmBC,GAAgCb,EAAmBS,GACtEK,EAAwBV,GAAoBQ,EAAkBX,EAAkBn8D,GAChFi9D,EAAWD,EAAsB36D,GACjC66D,EAAWF,EAAsB9qD,GACjCirD,EAAYC,GAAoBR,EAAOK,EAAUJ,EAAOK,GACxD9B,EAAYe,EAAiBf,WAAa,GAC9C,OAAI+B,EACOA,EAAUrtC,OAASmtC,EAAW7B,EAAY8B,EAAWC,EAAUntC,MAEnE4sC,EAAQxB,EAAYyB,GAE/Bb,EAAgB91E,UAAUm3E,eAAiB,WACvC,OAAQ5xF,KAAK2wF,UACT,KAAK,EACL,KAAK,EACL,KAAK,EACD,MAAO,OACX,KAAK,EACD,MAAO,QACX,KAAK,EACD,MAAO,OACX,QACI,MAAO,QAGZJ,EApEyB,GAsEpC,SAASM,GAAoBJ,EAAmBC,EAAkBn8D,GAC9D,IAAIs9D,EAAsBztF,OAAOie,KAAKouE,GAAmB/kF,OACzD,OAA4B,IAAxBmmF,GAAgE,UAAnCpB,EAAkBT,aACxC,SAAU3hB,GACb,OAAOyjB,GAAqBzjB,EAAK0jB,iBAGb,IAAxBF,GAA6BnB,EAAiBplB,KACvC,SAAU+C,GACb,OAAO2jB,GAAiBz9D,EAAQ09D,kBAAkB5jB,EAAKmS,QAASjsD,EAAQ29D,UAAW39D,EAAQ49D,OAAQzB,EAAiBplB,OAGrH8mB,GAA0B3B,EAAmBC,EAAkBn8D,GAE1E,SAAS69D,GAA0B3B,EAAmBC,EAAkBn8D,GACpEk8D,EAAoBvH,GAAS,GAAIuH,GACjCC,EAAmBxH,GAAS,GAAIwH,GAChC2B,GAAiB5B,EAAmBC,GACpCD,EAAkB6B,SAAW,MAC7B,IACIC,EADAC,EAAe,IAAIC,KAAKC,eAAen+D,EAAQ49D,OAAOQ,MAAOlC,GAEjE,GAAIC,EAAiBd,eAAgB,CACjC,IAAIgD,EAAY1J,GAAS,GAAIuH,UACtBmC,EAAUznB,OACjBonB,EAAa,IAAIE,KAAKC,eAAen+D,EAAQ49D,OAAOQ,MAAOC,GAE/D,OAAO,SAAUvkB,GACb,IACIxY,EADA2qB,EAASnS,EAAKmS,OAGd3qB,EADA08B,IAAe/R,EAAOJ,gBACbmS,EAGAC,EAEb,IAAIz0E,EAAI83C,EAAOA,OAAO2qB,GACtB,OAAOqS,GAAY90E,EAAGswD,EAAMoiB,EAAmBC,EAAkBn8D,IAGzE,SAAS89D,GAAiB5B,EAAmBC,GAGrCD,EAAkBT,eACbS,EAAkBrlB,OACnBqlB,EAAkBrlB,KAAO,WAExBqlB,EAAkBtlB,SACnBslB,EAAkBtlB,OAAS,YAII,SAAnCslB,EAAkBT,eAClBS,EAAkBT,aAAe,SAGjCU,EAAiBd,iBAAmBa,EAAkB36E,QAAU26E,EAAkBzlB,qBAC3E0lB,EAAiBd,eAGhC,SAASiD,GAAY90E,EAAGswD,EAAMoiB,EAAmBC,EAAkBn8D,GAmC/D,OAlCAxW,EAAIA,EAAEtF,QAAQ43E,GAAQ,IACiB,UAAnCI,EAAkBT,eAClBjyE,EAAI+0E,GAAa/0E,EAAyB,QAArBwW,EAAQ+9D,UAA6C,MAAvBjkB,EAAK0jB,eACpD,MACAD,GAAqBzjB,EAAK0jB,kBAE9BrB,EAAiBZ,aACjB/xE,EAAIA,EAAEtF,QAAQ03E,GAAU,IAAInY,QAE5B0Y,EAAiBd,iBACjB7xE,EAAIA,EAAEtF,QAAQ,MAAO,MAIS,IAA9Bi4E,EAAiBb,SACjB9xE,EAAIA,EAAEtF,QAAQy3E,GAAa,IAAIlY,OAEI,WAA9B0Y,EAAiBb,SACtB9xE,EAAIA,EAAEtF,QAAQy3E,IAAa,SAAUrR,EAAIC,GACrC,OAAOA,EAAGiU,uBAGqB,UAA9BrC,EAAiBb,SACtB9xE,EAAIA,EAAEtF,QAAQy3E,IAAa,SAAUrR,EAAIC,GACrC,OAAOA,EAAGiU,oBAAsB,OAGD,cAA9BrC,EAAiBb,WACtB9xE,EAAIA,EAAEtF,QAAQy3E,IAAa,SAAUrR,GACjC,OAAOA,EAAGkU,wBAGlBh1E,EAAIA,EAAEtF,QAAQ23E,GAAgB,KAC9BryE,EAAIA,EAAEi6D,OACCj6D,EAEX,SAAS+0E,GAAa/0E,EAAGi1E,GACrB,IAAIC,GAAW,EASf,OARAl1E,EAAIA,EAAEtF,QAAQ63E,IAAQ,WAElB,OADA2C,GAAW,EACJD,KAGNC,IACDl1E,GAAK,IAAMi1E,GAERj1E,EAEX,SAASi0E,GAAiB1sE,EAAK4sE,EAAWC,EAAQthD,GAC9C,IAAI19B,EAAQ,GAYZ,MAXgB,WAAZ09B,EACA19B,EAAM7F,KAAK4kF,GAEM,UAAZrhD,GACL19B,EAAM7F,KAAK4kF,EAAW,KAG1B/+E,EAAM7F,KAAK6kF,EAAOe,mBAAmBr9B,OAAOvwC,IACxC6sE,EAAO1kF,QAAQ0lF,OACfhgF,EAAM6X,UAEH7X,EAAMqB,KAAK,IAMtB,SAASw8E,GAA0Blf,EAAIC,EAAIqhB,GACvC,OAAIA,EAAGC,cAAcvhB,KAAQshB,EAAGC,cAActhB,GACnC,EAEPqhB,EAAGE,eAAexhB,KAAQshB,EAAGE,eAAevhB,GACrC,EAEPqhB,EAAGG,aAAazhB,KAAQshB,EAAGG,aAAaxhB,GACjC,EAEP8N,GAAS/N,KAAQ+N,GAAS9N,GACnB,EAEJ,EAEX,SAASuf,GAAgC7jF,EAAS+lF,GAC9C,IAAIC,EAAiB,GACrB,IAAK,IAAIC,KAAUjmF,KACTimF,KAAU3D,KACZA,GAA8B2D,IAAWF,KACzCC,EAAeC,GAAUjmF,EAAQimF,IAGzC,OAAOD,EAEX,SAAS9B,GAAoBR,EAAOK,EAAUJ,EAAOK,GACjD,IAAInlB,EAAK,EACT,MAAOA,EAAK6kB,EAAMzlF,OAAQ,CACtB,IAAIioF,EAASxC,EAAMlnE,QAAQunE,EAAUllB,GACrC,IAAgB,IAAZqnB,EACA,MAEJ,IAAIC,EAAUzC,EAAM5mE,OAAO,EAAGopE,GAC9BrnB,EAAKqnB,EAASnC,EAAS9lF,OACvB,IAAImoF,EAAS1C,EAAM5mE,OAAO+hD,GACtBC,EAAK,EACT,MAAOA,EAAK6kB,EAAM1lF,OAAQ,CACtB,IAAIooF,EAAS1C,EAAMnnE,QAAQwnE,EAAUllB,GACrC,IAAgB,IAAZunB,EACA,MAEJ,IAAIC,EAAU3C,EAAM7mE,OAAO,EAAGupE,GAC9BvnB,EAAKunB,EAASrC,EAAS/lF,OACvB,IAAIsoF,EAAS5C,EAAM7mE,OAAOgiD,GAC1B,GAAIqnB,IAAYG,GAAWF,IAAWG,EAClC,MAAO,CACH3vC,OAAQuvC,EACRrvC,MAAOsvC,IAKvB,OAAO,KAUX,IAAII,GAA8B,WAC9B,SAASA,EAAaC,EAAQvE,GAC1B3vF,KAAKk0F,OAASA,EACdl0F,KAAK2vF,UAAYA,EAQrB,OANAsE,EAAax5E,UAAUo7C,OAAS,SAAUwY,EAAM95C,GAC5C,OAAOA,EAAQ4/D,aAAan0F,KAAKk0F,OAAQE,GAA2B/lB,EAAM,KAAM95C,EAASv0B,KAAK2vF,aAElGsE,EAAax5E,UAAUq2E,YAAc,SAAUl6D,EAAO6P,EAAKlS,GACvD,OAAOA,EAAQ4/D,aAAan0F,KAAKk0F,OAAQE,GAA2Bx9D,EAAO6P,EAAKlS,EAASv0B,KAAK2vF,aAE3FsE,EAXsB,GAc7BI,GAA+B,WAC/B,SAASA,EAAcvO,GACnB9lF,KAAK8lF,KAAOA,EAQhB,OANAuO,EAAc55E,UAAUo7C,OAAS,SAAUwY,EAAM95C,GAC7C,OAAOv0B,KAAK8lF,KAAKsO,GAA2B/lB,EAAM,KAAM95C,KAE5D8/D,EAAc55E,UAAUq2E,YAAc,SAAUl6D,EAAO6P,EAAKlS,GACxD,OAAOv0B,KAAK8lF,KAAKsO,GAA2Bx9D,EAAO6P,EAAKlS,KAErD8/D,EAVuB,GAclC,SAASC,GAAgBliF,EAAOmiF,GAC5B,MAAqB,kBAAVniF,GAAsBA,GACG,kBAArBmiF,IACPniF,EAAQ82E,GAAS,CAAEyG,UAAW4E,GAAoBniF,IAE/C,IAAIm+E,GAAgBn+E,IAEL,kBAAVA,EACL,IAAI6hF,GAAa7hF,EAAOmiF,GAET,oBAAVniF,EACL,IAAIiiF,GAAcjiF,QADxB,EAMT,SAASoiF,GAAehU,EAAQuR,EAAgB0C,QACtB,IAAlBA,IAA4BA,GAAgB,GAChD,IAAI12E,EAAIyiE,EAAOkU,cAcf,OAbA32E,EAAIA,EAAEtF,QAAQ,OAAQ,IAClBg8E,IACA12E,EAAIA,EAAEtF,QAAQ,aAAc,KAE5BsF,EAAErS,OAAS,KACW,MAAlBqmF,EACAh0E,EAAIA,EAAEtF,QAAQ,IAAK,IAEK,IAAnBs5E,IACLh0E,EAAIA,EAAEtF,QAAQ,IAAKq5E,GAAqBC,GAAgB,MAIzDh0E,EAEX,SAAS42E,GAAoBnU,GACzB,OAAOiG,GAASjG,EAAON,cAAe,GAAK,IACvCuG,GAASjG,EAAOJ,gBAAiB,GAAK,IACtCqG,GAASjG,EAAOF,gBAAiB,GAEzC,SAASwR,GAAqBvP,EAASqS,QACrB,IAAVA,IAAoBA,GAAQ,GAChC,IAAIvkC,EAAOkyB,EAAU,EAAI,IAAM,IAC3Bv/C,EAAM9xB,KAAK8xB,IAAIu/C,GACfD,EAAQpxE,KAAKD,MAAM+xB,EAAM,IACzB6xD,EAAO3jF,KAAKiQ,MAAM6hB,EAAM,IAC5B,OAAI4xD,EACOvkC,EAAOo2B,GAASnE,EAAO,GAAK,IAAMmE,GAASoO,EAAM,GAGjD,MAAQxkC,EAAOiyB,GAASuS,EAAO,IAAMpO,GAASoO,EAAM,GAAK,IAIxE,SAAST,GAA2Bx9D,EAAO6P,EAAKlS,EAASo7D,GACrD,IAAImF,EAAYC,GAAkBn+D,EAAOrC,EAAQ08D,gBAC7C+D,EAAUvuD,EAAMsuD,GAAkBtuD,EAAKlS,EAAQ08D,gBAAkB,KACrE,MAAO,CACH5iB,KAAMymB,EACNl+D,MAAOk+D,EACPruD,IAAKuuD,EACL1C,SAAU/9D,EAAQ+9D,SAClB2C,YAAa1gE,EAAQ49D,OAAOQ,MAC5BhD,UAAWA,GAGnB,SAASoF,GAAkBG,EAAUjE,GACjC,IAAI1xE,EAAI0xE,EAAekE,cAAcD,EAAS1U,QAC9C,MAAO,CACHA,OAAQ0U,EAAS1U,OACjBuR,eAAgBmD,EAASnD,eACzB/kE,MAAOzN,EACPksD,KAAMlsD,EAAE,GACRgsD,MAAOhsD,EAAE,GACT8rD,IAAK9rD,EAAE,GACP6rD,KAAM7rD,EAAE,GACR4rD,OAAQ5rD,EAAE,GACVzJ,OAAQyJ,EAAE,GACVyrD,YAAazrD,EAAE,IAIvB,IAAI61E,GAAgC,WAChC,SAASA,EAAehK,EAAUiK,GAC9Br1F,KAAKorF,SAAWA,EAChBprF,KAAKq1F,oBAAsBA,EA6B/B,OA3BAD,EAAe36E,UAAUyhC,OAAS,WAC9Bl8C,KAAKorF,SAASkK,SAAS,CACnBpzF,KAAM,sBACNipF,SAAUnrF,KAAKq1F,oBAAoBlK,YAG3CiK,EAAe36E,UAAU86E,QAAU,WAC/Bv1F,KAAKorF,SAASkK,SAAS,CACnBpzF,KAAM,sBACNszF,UAAW,CAACx1F,KAAKq1F,oBAAoBlK,aAG7C/mF,OAAOsZ,eAAe03E,EAAe36E,UAAW,KAAM,CAClDpV,IAAK,WACD,OAAOrF,KAAKq1F,oBAAoBI,UAEpCz6E,YAAY,EACZD,cAAc,IAElB3W,OAAOsZ,eAAe03E,EAAe36E,UAAW,MAAO,CAEnDpV,IAAK,WACD,OAAOrF,KAAKq1F,oBAAoBz6D,KAAKh2B,KAEzCoW,YAAY,EACZD,cAAc,IAEXq6E,EAhCwB,GAmC/BM,GAA0B,WAC1B,SAASA,EAAStK,EAAUU,EAAKE,GAC7BhsF,KAAK21F,UAAYvK,EACjBprF,KAAK41F,KAAO9J,EACZ9rF,KAAK61F,UAAY7J,GAAY,KAqSjC,OAhSA0J,EAASj7E,UAAUq7E,QAAU,SAAUzmF,EAAMsQ,GACzC,IAAIuiE,EAAI6T,EACR,GAAI1mF,KAAQ2mF,SACP,GAAI3mF,KAAQ4mF,GACuB,oBAAzBA,GAAe5mF,KACtBsQ,EAAMs2E,GAAe5mF,GAAMsQ,IAE/B3f,KAAKk2F,OAAO,CACRC,eAAgBjU,EAAK,GAAIA,EAAG7yE,GAAQsQ,EAAKuiE,UAG5C,GAAI7yE,KAAQ+mF,GAAyB,CACtC,IAAIC,OAAK,EACoC,oBAAlCD,GAAwB/mF,KAC/BsQ,EAAMy2E,GAAwB/mF,GAAMsQ,IAE3B,UAATtQ,EACAgnF,EAAK,CAAEj5D,gBAAiBzd,EAAK0d,YAAa1d,GAE5B,aAATtQ,EACLgnF,EAAK,CAAEC,cAAe32E,EAAK42E,iBAAkB52E,IAGvCo2E,EAAK,GAAIA,EAAG1mF,GAAQsQ,EAA1B02E,EAA+BN,GAEnC/1F,KAAKk2F,OAAO,CACRC,cAAe,CAAEE,GAAIA,OAIjCX,EAASj7E,UAAU+7E,gBAAkB,SAAUnnF,EAAMsQ,GACjD,IAAIuiE,EACJliF,KAAKk2F,OAAO,CACRO,eAAgBvU,EAAK,GAAIA,EAAG7yE,GAAQsQ,EAAKuiE,MAGjDwT,EAASj7E,UAAUi8E,SAAW,SAAUC,EAAYlpF,QAChC,IAAZA,IAAsBA,EAAU,IACpC,IAAIi7E,EAAU1oF,KAAK21F,UAAUjN,QACzB9xD,EAAQ8xD,EAAQuF,aAAa0I,GACjC,GAAI//D,GAAS52B,KAAK61F,UAAW,CACzB,IAAIe,EAAgB52F,KAAK61F,UAAU3sD,MAC/B2tD,EAAatO,GAAUqO,EAAchgE,MAAOA,EAAO8xD,EAASj7E,EAAQqpF,aACpErpF,EAAQspF,iBACR/2F,KAAKk2F,OAAO,CAAEc,WAAYH,IAG1B72F,KAAKk2F,OAAO,CAAEW,WAAYA,MAItCnB,EAASj7E,UAAUw8E,OAAS,SAAUC,EAAUzpF,QAC5B,IAAZA,IAAsBA,EAAU,IACpC,IACIg5B,EADAiiD,EAAU1oF,KAAK21F,UAAUjN,QAE7B,IAAgB,MAAZwO,IACAzwD,EAAMiiD,EAAQuF,aAAaiJ,GACtBzwD,KAILzmC,KAAK61F,UACL,GAAIpvD,EAAK,CACL,IAAI0wD,EAAW5O,GAAUvoF,KAAK61F,UAAU3sD,MAAMzC,IAAKA,EAAKiiD,EAASj7E,EAAQqpF,aACzE92F,KAAKk2F,OAAO,CAAEiB,SAAUA,SAGxBn3F,KAAKk2F,OAAO,CAAEC,cAAe,CAAEiB,QAAQ,MAInD1B,EAASj7E,UAAU48E,SAAW,SAAUV,EAAYO,EAAUzpF,QAC1C,IAAZA,IAAsBA,EAAU,IACpC,IAGIg5B,EAHAiiD,EAAU1oF,KAAK21F,UAAUjN,QACzByN,EAAgB,CAAEzM,OAAQj8E,EAAQi8E,QAClC9yD,EAAQ8xD,EAAQuF,aAAa0I,GAEjC,GAAK//D,IAGW,MAAZsgE,IACAzwD,EAAMiiD,EAAQuF,aAAaiJ,GACtBzwD,KAILzmC,KAAK61F,UAAW,CAChB,IAAIe,EAAgB52F,KAAK61F,UAAU3sD,OAGZ,IAAnBz7B,EAAQi8E,SACRkN,EAAgB/O,GAAuB+O,IAE3C,IAAIC,EAAatO,GAAUqO,EAAchgE,MAAOA,EAAO8xD,EAASj7E,EAAQqpF,aACxE,GAAIrwD,EAAK,CACL,IAAI0wD,EAAW5O,GAAUqO,EAAcnwD,IAAKA,EAAKiiD,EAASj7E,EAAQqpF,aAC9DnU,GAAekU,EAAYM,GAC3Bn3F,KAAKk2F,OAAO,CAAEc,WAAYH,EAAYV,cAAeA,IAGrDn2F,KAAKk2F,OAAO,CAAEW,WAAYA,EAAYM,SAAUA,EAAUhB,cAAeA,SAI7EA,EAAciB,QAAS,EACvBp3F,KAAKk2F,OAAO,CAAEc,WAAYH,EAAYV,cAAeA,MAIjET,EAASj7E,UAAU68E,UAAY,SAAUC,GACrC,IAAIj5E,EAAQ2jE,GAAesV,GACvBj5E,GACAte,KAAKk2F,OAAO,CAAEW,WAAYv4E,KAGlCo3E,EAASj7E,UAAU+8E,QAAU,SAAUD,GACnC,IAAIj5E,EAAQ2jE,GAAesV,GACvBj5E,GACAte,KAAKk2F,OAAO,CAAEiB,SAAU74E,KAGhCo3E,EAASj7E,UAAUg9E,UAAY,SAAUF,GACrC,IAAIj5E,EAAQ2jE,GAAesV,GACvBj5E,GACAte,KAAKk2F,OAAO,CAAEc,WAAY14E,KAGlCo3E,EAASj7E,UAAUi9E,UAAY,SAAUhO,EAAQj8E,QAC7B,IAAZA,IAAsBA,EAAU,IACpC,IAAI0oF,EAAgB,CAAEzM,OAAQA,GAC1BqN,EAAmBtpF,EAAQspF,iBACP,MAApBA,IACAA,EAAmB/2F,KAAK21F,UAAUtI,IAAI,2BAEtCrtF,KAAK41F,KAAKlM,SAAWA,IACrByM,EAAciB,OAASL,GAE3B/2F,KAAKk2F,OAAO,CAAEC,cAAeA,KAEjCT,EAASj7E,UAAUq2E,YAAc,SAAU6G,GACvC,IAAIjP,EAAU1oF,KAAK21F,UAAUjN,QACzBsD,EAAWhsF,KAAK61F,UAChBxmB,EAAYilB,GAAgBqD,EAAa33F,KAAK21F,UAAUtI,IAAI,0BAChE,OAAIrtF,KAAK41F,KAAKwB,OACH1O,EAAQoI,YAAY9E,EAAS9iD,MAAMtS,MAAOo1D,EAAS9iD,MAAMzC,IAAK4oC,EAAW,CAC5EuoB,eAAgB5L,EAAS4L,eACzBC,aAAc7L,EAAS6L,eAIpBnP,EAAQ7yB,OAAOm2B,EAAS9iD,MAAMtS,MAAOy4C,EAAW,CACnDyoB,UAAW9L,EAAS4L,kBAIhClC,EAASj7E,UAAUy7E,OAAS,SAAU6B,GAClC,IAAIjM,EAAM9rF,KAAK41F,KACX5J,EAAWhsF,KAAK61F,UACpB,GAAI7J,EAAU,CACVhsF,KAAK21F,UAAUL,SAAS,CACpBpzF,KAAM,gBACN+pF,WAAYD,EAASC,WACrB8L,SAAUA,EACVC,SAAS,IAEb,IAAI1M,EAAatrF,KAAK21F,UAAU7yF,MAAMwoF,WACtCtrF,KAAK41F,KAAOtK,EAAWO,KAAKC,EAAIC,OAChC/rF,KAAK61F,UAAYvK,EAAW/gC,UAAUyhC,EAASC,cAGvDyJ,EAASj7E,UAAUyhC,OAAS,WACxBl8C,KAAK21F,UAAUL,SAAS,CACpBpzF,KAAM,mBACN6pF,MAAO/rF,KAAK41F,KAAK7J,SAGzB3nF,OAAOsZ,eAAeg4E,EAASj7E,UAAW,SAAU,CAChDpV,IAAK,WACD,IAAI8lF,EAAWnrF,KAAK41F,KAAKzK,SACzB,OAAIA,EACO,IAAIiK,GAAep1F,KAAK21F,UAAW31F,KAAK21F,UAAU7yF,MAAMm1F,aAAa9M,IAEzE,MAEXnwE,YAAY,EACZD,cAAc,IAElB3W,OAAOsZ,eAAeg4E,EAASj7E,UAAW,QAAS,CAC/CpV,IAAK,WACD,OAAOrF,KAAK61F,UACR71F,KAAK21F,UAAUjN,QAAQwP,OAAOl4F,KAAK61F,UAAU3sD,MAAMtS,OACnD,MAER5b,YAAY,EACZD,cAAc,IAElB3W,OAAOsZ,eAAeg4E,EAASj7E,UAAW,MAAO,CAC7CpV,IAAK,WACD,OAAQrF,KAAK61F,WAAa71F,KAAK41F,KAAKwB,OAChCp3F,KAAK21F,UAAUjN,QAAQwP,OAAOl4F,KAAK61F,UAAU3sD,MAAMzC,KACnD,MAERzrB,YAAY,EACZD,cAAc,IAElB3W,OAAOsZ,eAAeg4E,EAASj7E,UAAW,KAAM,CAG5CpV,IAAK,WAAc,OAAOrF,KAAK41F,KAAKH,UACpCz6E,YAAY,EACZD,cAAc,IAElB3W,OAAOsZ,eAAeg4E,EAASj7E,UAAW,UAAW,CACjDpV,IAAK,WAAc,OAAOrF,KAAK41F,KAAK3I,SACpCjyE,YAAY,EACZD,cAAc,IAElB3W,OAAOsZ,eAAeg4E,EAASj7E,UAAW,SAAU,CAChDpV,IAAK,WAAc,OAAOrF,KAAK41F,KAAKlM,QACpC1uE,YAAY,EACZD,cAAc,IAElB3W,OAAOsZ,eAAeg4E,EAASj7E,UAAW,QAAS,CAC/CpV,IAAK,WAAc,OAAOrF,KAAK41F,KAAKnyF,OACpCuX,YAAY,EACZD,cAAc,IAElB3W,OAAOsZ,eAAeg4E,EAASj7E,UAAW,MAAO,CAC7CpV,IAAK,WAAc,OAAOrF,KAAK41F,KAAKhxF,KACpCoW,YAAY,EACZD,cAAc,IAElB3W,OAAOsZ,eAAeg4E,EAASj7E,UAAW,YAAa,CACnDpV,IAAK,WAAc,OAAOrF,KAAK41F,KAAKuC,WACpCn9E,YAAY,EACZD,cAAc,IAElB3W,OAAOsZ,eAAeg4E,EAASj7E,UAAW,gBAAiB,CACvDpV,IAAK,WAAc,OAAOrF,KAAK41F,KAAKS,GAAGC,eACvCt7E,YAAY,EACZD,cAAc,IAElB3W,OAAOsZ,eAAeg4E,EAASj7E,UAAW,mBAAoB,CAC1DpV,IAAK,WAAc,OAAOrF,KAAK41F,KAAKS,GAAGE,kBACvCv7E,YAAY,EACZD,cAAc,IAElB3W,OAAOsZ,eAAeg4E,EAASj7E,UAAW,aAAc,CACpDpV,IAAK,WAAc,OAAOrF,KAAK41F,KAAKS,GAAG+B,YAAY,IAAM,MACzDp9E,YAAY,EACZD,cAAc,IAElB3W,OAAOsZ,eAAeg4E,EAASj7E,UAAW,UAAW,CACjDpV,IAAK,WAAc,OAAOrF,KAAK41F,KAAKS,GAAGgC,SACvCr9E,YAAY,EACZD,cAAc,IAElB3W,OAAOsZ,eAAeg4E,EAASj7E,UAAW,QAAS,CAC/CpV,IAAK,WAAc,OAAOrF,KAAK41F,KAAKS,GAAGiC,OAAO,IAAM,MACpDt9E,YAAY,EACZD,cAAc,IAElB3W,OAAOsZ,eAAeg4E,EAASj7E,UAAW,kBAAmB,CACzDpV,IAAK,WAAc,OAAOrF,KAAK41F,KAAKS,GAAGj5D,iBACvCpiB,YAAY,EACZD,cAAc,IAElB3W,OAAOsZ,eAAeg4E,EAASj7E,UAAW,cAAe,CACrDpV,IAAK,WAAc,OAAOrF,KAAK41F,KAAKS,GAAGh5D,aACvCriB,YAAY,EACZD,cAAc,IAElB3W,OAAOsZ,eAAeg4E,EAASj7E,UAAW,YAAa,CACnDpV,IAAK,WAAc,OAAOrF,KAAK41F,KAAKS,GAAGxuC,WACvC7sC,YAAY,EACZD,cAAc,IAElB3W,OAAOsZ,eAAeg4E,EAASj7E,UAAW,aAAc,CAEpDpV,IAAK,WAAc,OAAOrF,KAAK41F,KAAKS,GAAGkC,YACvCv9E,YAAY,EACZD,cAAc,IAElB3W,OAAOsZ,eAAeg4E,EAASj7E,UAAW,gBAAiB,CACvDpV,IAAK,WAAc,OAAOrF,KAAK41F,KAAKa,eACpCz7E,YAAY,EACZD,cAAc,IAEX26E,EAzSkB,GA+S7B,SAAS8C,GAAgBlN,EAAYmN,EAAczO,EAAc/B,GAC7D,IAAIyQ,EAAqB,GACrBC,EAAmB,GACnBC,EAAe,GACfC,EAAW,GACXC,EAAW,GACXC,EAAWC,GAAgB1N,EAAWO,KAAM4M,GAChD,IAAK,IAAI1M,KAAST,EAAWO,KAAM,CAC/B,IAAIC,EAAMR,EAAWO,KAAKE,GACJ,uBAAlBD,EAAIqM,YACArM,EAAImB,SACJyL,EAAmB5M,EAAImB,SAAW,GAC7B2L,EAAa9M,EAAImB,WAClB2L,EAAa9M,EAAImB,SAAWnB,IAIhC6M,EAAiB5M,GAAS,IAItC,IAAK,IAAIE,KAAcX,EAAW/gC,UAAW,CACzC,IAAIyhC,EAAWV,EAAW/gC,UAAU0hC,GAEhCoK,GADAvK,EAAMR,EAAWO,KAAKG,EAASD,OAC1BgN,EAASjN,EAAIC,QAClBkN,EAAYjN,EAAS9iD,MACrBgwD,GAAgBpN,EAAIpC,QAAUzB,EAC9BD,GAAuBiR,EAAWhR,GAClCgR,EACAE,EAAczK,GAAgBwK,EAAalP,GAC3CmP,IACsB,uBAAlBrN,EAAIqM,UACArM,EAAImB,QACJyL,EAAmB5M,EAAImB,SAAS3/E,KAAK6rF,GAGrCR,EAAiB3M,EAASD,OAAOz+E,KAAK6rF,IAIvB,eAAlBrN,EAAIqM,UAA6BU,EAAWC,GAAUxrF,KAAK,CACxDw+E,IAAKA,EACLuK,GAAIA,EACJrK,SAAUA,EACV9iD,MAAOiwD,EACPC,QAASF,EAAYtiE,OAASsiE,EAAYtiE,MAAMq5C,YAAckpB,EAAYviE,MAAMq5C,UAChFopB,MAAOH,EAAYzyD,KAAOyyD,EAAYzyD,IAAIwpC,YAAckpB,EAAY1yD,IAAIwpC,aAKxF,IAAK,IAAIgd,KAAWyL,EAGhB,IAFA,IAAIvK,EAASuK,EAAmBzL,GAC5BqB,EAAiBJ,GAAaC,EAAQnE,GACjChD,EAAK,EAAGsS,EAAmBhL,EAAgBtH,EAAKsS,EAAiB5tF,OAAQs7E,IAAM,CACpF,IAAIuS,EAAgBD,EAAiBtS,GACjC8E,EAAM8M,EAAa3L,GACnBoJ,EAAK0C,EAASjN,EAAIC,OACtB8M,EAASvrF,KAAK,CACVw+E,IAAKA,EACLuK,GAAIA,EACJrK,SAAU,KACV9iD,MAAOqwD,EACPH,SAAS,EACTC,OAAO,IAInB,IAAK,IAAItN,KAAS4M,EACd,CAAIxK,EAASwK,EAAiB5M,GAC1BuC,EAAiBJ,GAAaC,EAAQnE,GAC1C,IAFA,IAES9H,EAAK,EAAGsX,EAAmBlL,EAAgBpM,EAAKsX,EAAiB9tF,OAAQw2E,IAAM,CAChFqX,EAAgBC,EAAiBtX,GACrC2W,EAASvrF,KAAK,CACVw+E,IAAKR,EAAWO,KAAKE,GACrBsK,GAAI0C,EAAShN,GACbC,SAAU,KACV9iD,MAAOqwD,EACPH,SAAS,EACTC,OAAO,KAInB,MAAO,CAAEI,GAAIZ,EAAUa,GAAIZ,GAE/B,SAASa,GAAe7N,GACpB,MAAyB,eAAlBA,EAAIqM,WAAgD,uBAAlBrM,EAAIqM,UAEjD,SAASyB,GAAiBrlE,EAASslE,EAAMC,GACrC,IAAI1O,EAAW72D,EAAQ62D,SAAUv0D,EAAOtC,EAAQsC,KAC5Cu0D,EAAS2O,kBAAkB,iBAC3BF,EAAOA,EAAKvpD,QAAO,SAAU0pD,GACzB,IAAIv8D,EAAS2tD,EAAS6O,gBAAgB,cAAe,CACjD,CACI1/C,MAAO,IAAIm7C,GAAStK,EAAU4O,EAAIE,WAAWpO,IAAKkO,EAAIE,WAAWlO,UACjE8N,SAAUA,EACVV,QAASY,EAAIZ,QACbC,MAAOW,EAAIX,MAEXz+C,GAAIo/C,EAAIp/C,GACR/jB,KAAMA,KAGd,OAAe,IAAX4G,IAGKA,IAAqB,IAAXA,IACfu8D,EAAIp/C,GAAKnd,IAEN,OAGf,IAAK,IAAIupD,EAAK,EAAGmT,EAASN,EAAM7S,EAAKmT,EAAOzuF,OAAQs7E,IAAM,CACtD,IAAIgT,EAAMG,EAAOnT,GACjBoT,GAASJ,EAAIp/C,GAAIo/C,GAErB,OAAOH,EAEX,SAASO,GAASx/C,EAAIo/C,GAClBp/C,EAAGy/C,MAAQL,EAEf,SAASM,GAAS1/C,GACd,OAAOA,EAAGy/C,OAAS,KAGvB,SAASrB,GAAgBuB,EAAW9B,GAChC,OAAO9N,GAAQ4P,GAAW,SAAUxQ,GAChC,OAAOyQ,GAAezQ,EAAU0O,MAGxC,SAAS+B,GAAezQ,EAAU0O,GAC9B,IAAIgC,EAAM,GAQV,OAPIhC,EAAa,KACbgC,EAAIntF,KAAKmrF,EAAa,KAEtBA,EAAa1O,EAASgC,QACtB0O,EAAIntF,KAAKmrF,EAAa1O,EAASgC,QAEnC0O,EAAIntF,KAAKy8E,EAASsM,IACXqE,GAAgBD,GAG3B,SAASE,GAAoBpmE,EAASslE,EAAMe,GACxC,IAAIxP,EAAW72D,EAAQ62D,SAAUv0D,EAAOtC,EAAQsC,KAChD,GAAIu0D,EAAS2O,kBAAkB,mBAC3B,IAAK,IAAI/S,EAAK,EAAG6T,EAAShB,EAAM7S,EAAK6T,EAAOnvF,OAAQs7E,IAAM,CACtD,IAAIgT,EAAMa,EAAO7T,GACjBoE,EAAS0P,2BAA2B,kBAAmB,CACnD,CACIvgD,MAAO,IAAIm7C,GAAStK,EAAU4O,EAAIE,WAAWpO,IAAKkO,EAAIE,WAAWlO,UACjE8N,SAAUc,EACVxB,QAASY,EAAIZ,QACbC,MAAOW,EAAIX,MACXz+C,GAAIo/C,EAAIp/C,GACR/jB,KAAMA,KAKjBu0D,EAAStoF,MAAMi4F,0BAChB3P,EAAS4P,oBAAoBC,kBAAoB,CAAC,OAG1D,SAASC,GAAsB3mE,EAASslE,EAAMe,GAE1C,IADA,IAAIxP,EAAW72D,EAAQ62D,SAAUv0D,EAAOtC,EAAQsC,KACvCmwD,EAAK,EAAGmU,EAAStB,EAAM7S,EAAKmU,EAAOzvF,OAAQs7E,IAAM,CACtD,IAAIgT,EAAMmB,EAAOnU,GACjBoE,EAASgQ,QAAQ,gBAAiBpB,EAAIp/C,IAE1C,GAAIwwC,EAAS2O,kBAAkB,gBAC3B,IAAK,IAAI7X,EAAK,EAAGmZ,EAASxB,EAAM3X,EAAKmZ,EAAO3vF,OAAQw2E,IAAM,CAClD8X,EAAMqB,EAAOnZ,GACjBkJ,EAAS6O,gBAAgB,eAAgB,CACrC,CACI1/C,MAAO,IAAIm7C,GAAStK,EAAU4O,EAAIE,WAAWpO,IAAKkO,EAAIE,WAAWlO,UACjE8N,SAAUc,EACVhgD,GAAIo/C,EAAIp/C,GACR/jB,KAAMA,MAO1B,SAASykE,GAAsB/mE,EAASw1D,EAAUwR,GAI9C,IAHA,IAAInQ,EAAW72D,EAAQ62D,SAAUv0D,EAAOtC,EAAQsC,KAC5C2kE,EAAepQ,EAASiB,aAAaC,MAAMmP,wBAC3C97E,EAAM47E,EAAQjF,cACTtP,EAAK,EAAG0U,EAAiBF,EAAcxU,EAAK0U,EAAehwF,OAAQs7E,IAAM,CAC9E,IAAI2U,EAAcD,EAAe1U,GACjCrnE,EAAMg8E,EAAYh8E,EAAKoqE,EAAUwR,EAAS1kE,GAE9C,OAAOlX,EAEX,SAASi8E,GAA2BrnE,EAASw1D,EAAUwR,GACnD,OAAOA,EAAQhF,kBAAoBhiE,EAAQ9mB,QAAQouF,wBAEvD,SAASC,GAAyBvnE,EAASw1D,EAAUwR,GACjD,OAAOA,EAAQhF,iBAInB,SAASwF,GAA0BzQ,EAAY0Q,EAAiBjE,EAAU3M,GACtE,IAAI6Q,EAAejD,GAAgB1N,EAAWO,KAAMmQ,GAChDvR,EAAOc,KACX,IAAK,IAAIQ,KAAST,EAAWO,KAAM,CAC/B,IAAIC,EAAMR,EAAWO,KAAKE,GAC1BtB,EAAKoB,KAAKE,GAASmQ,GAAwBpQ,EAAKmQ,EAAalQ,GAAQgM,EAAU3M,EAASiB,aAAaC,MAAM6P,yBAA0B/Q,GAEzI,IAAK,IAAIa,KAAcX,EAAW/gC,UAAW,CACzC,IAAIyhC,EAAWV,EAAW/gC,UAAU0hC,GAChCH,EAAMrB,EAAKoB,KAAKG,EAASD,OAC7BtB,EAAKlgC,UAAU0hC,GAAcmQ,GAA6BpQ,EAAUF,EAAKmQ,EAAajQ,EAASD,OAAQgM,EAAU3M,GAErH,OAAOX,EAEX,SAASyR,GAAwBnS,EAAUsS,EAAatE,EAAUuE,EAAUlR,GACxE,IAAI+K,EAAgB4B,EAAS5B,eAAiB,GAIlB,MAAxBA,EAAciB,QACdiF,EAAY9F,mBACXwB,EAASlB,YAAckB,EAASZ,YACjChB,EAAciB,QAAS,GAE3B,IAAImF,EAAOrT,GAAS,GAAIa,EAAUoM,EAAe,CAAEE,GAAInN,GAAS,GAAIa,EAASsM,GAAIF,EAAcE,MAC3F0B,EAAStB,gBACT8F,EAAK9F,cAAgBvN,GAAS,GAAIqT,EAAK9F,cAAesB,EAAStB,gBAEnE,IAAK,IAAIzP,EAAK,EAAGwV,EAAaF,EAAUtV,EAAKwV,EAAW9wF,OAAQs7E,IAAM,CAClE,IAAIyV,EAAUD,EAAWxV,GACzByV,EAAQF,EAAMxE,EAAU3M,GAK5B,OAHKmR,EAAKnF,QAAUhM,EAASiC,IAAI,wBAC7BkP,EAAKnF,QAAS,GAEXmF,EAEX,SAASH,GAA6BM,EAAe3S,EACrDsS,EAAatE,EAAU3M,GACnB,IAAI1C,EAAU0C,EAAS1C,QACnBiU,EAAc5E,EAAS5B,gBAAmD,IAAlC4B,EAAS5B,cAAczM,OAC/DkT,EAAW7E,EAAS5B,gBAAmD,IAAlC4B,EAAS5B,cAAciB,OAC5DmF,EAAOrT,GAAS,GAAIwT,GAwCxB,OAvCIC,IACAJ,EAAKrzD,MAAQ2+C,GAAuB0U,EAAKrzD,QAEzC6uD,EAASf,YAAcqF,EAAY/F,gBACnCiG,EAAKrzD,MAAQ,CACTtS,MAAO8xD,EAAQ1sC,IAAIugD,EAAKrzD,MAAMtS,MAAOmhE,EAASf,YAC9CvwD,IAAKiiD,EAAQ1sC,IAAIugD,EAAKrzD,MAAMzC,IAAKsxD,EAASf,cAG9Ce,EAASlB,YAAcwF,EAAY9F,mBACnCgG,EAAKrzD,MAAQ,CACTtS,MAAO8xD,EAAQ1sC,IAAIugD,EAAKrzD,MAAMtS,MAAOmhE,EAASlB,YAC9CpwD,IAAK81D,EAAKrzD,MAAMzC,MAGpBsxD,EAASZ,UAAYkF,EAAY9F,mBACjCgG,EAAKrzD,MAAQ,CACTtS,MAAO2lE,EAAKrzD,MAAMtS,MAClB6P,IAAKiiD,EAAQ1sC,IAAIugD,EAAKrzD,MAAMzC,IAAKsxD,EAASZ,YAG9CyF,IACAL,EAAKrzD,MAAQ,CACTtS,MAAO2lE,EAAKrzD,MAAMtS,MAClB6P,IAAK2kD,EAASyR,mBAAmB9S,EAASL,OAAQ6S,EAAKrzD,MAAMtS,SAKjEmzD,EAASL,SACT6S,EAAKrzD,MAAQ,CACTtS,MAAOyoD,GAAWkd,EAAKrzD,MAAMtS,OAC7B6P,IAAK44C,GAAWkd,EAAKrzD,MAAMzC,OAI/B81D,EAAKrzD,MAAMzC,IAAM81D,EAAKrzD,MAAMtS,QAC5B2lE,EAAKrzD,MAAMzC,IAAM2kD,EAASyR,mBAAmB9S,EAASL,OAAQ6S,EAAKrzD,MAAMtS,QAEtE2lE,EAGX,SAASO,GAAkBxR,EAAYyR,EAAQ9E,EAAc+E,EAAa5R,GACtE,OAAQ2R,EAAO76F,MACX,IAAK,iBACD,OAAO+6F,GAAiB3R,EAAY2M,EAAa8E,EAAO5R,UAAW4R,EAAOG,QAASH,EAAOI,WAAYJ,EAAO7R,UAAWE,GAC5H,IAAK,aACD,OAAOztC,GAAS2tC,EAAYyR,EAAOzR,WACnC0R,EAAcA,EAAYI,YAAc,KAAMhS,GAClD,IAAK,eACD,OAAOwC,GAAiBtC,EAAYyR,EAAOzR,YAC/C,IAAK,OACL,IAAK,OACL,IAAK,WACL,IAAK,gBACD,OAAI0R,EACO9Q,GAAgBZ,EAAY0R,EAAYI,YAAahS,GAGrDE,EAEf,IAAK,kBACD,OAAO+R,GAAY/R,EAAYyR,EAAOO,WAAYlS,EAAS1C,SAC/D,IAAK,gBACD,OAAO6U,GAAuBjS,EAAYyR,EAAO9Q,WAAY8Q,EAAOhF,SAAUgF,EAAO/E,QAAS5M,GAClG,IAAK,yBACD,OAAOoS,GAAiBlS,EAAYyR,EAAOxyC,WAC/C,IAAK,mBACD,OAAOqiC,GAAqBtB,GAAY,SAAUvB,GAC9C,OAAOA,EAASgC,QAAUgR,EAAOhR,SAEzC,IAAK,sBACD,OAAO0R,GAAwBnS,EAAYyR,EAAO5R,UACtD,IAAK,2BACD,OAAOyB,GAAqBtB,GAAY,SAAUvB,GAC9C,OAAQA,EAASoB,YAEzB,IAAK,oBACD,OAAOI,KACX,IAAK,eACD,MAAO,CACHM,KAAMP,EAAWO,KACjBthC,UAAW+gC,EAAW/gC,WAE9B,QACI,OAAO+gC,GAGnB,SAAS2R,GAAiB3R,EAAY6B,EAAa+P,EAASC,EAAYjS,EAAWE,GAC/E,GAAI+B,GACA+P,IAAY/P,EAAYuQ,cAC1B,CACE,IAAIC,EAAS1S,GAAYiC,GAAmBhC,EAAWiC,EAAa/B,GAAW+B,EAAYhC,SAAUC,GAIrG,OAHI+R,IACAQ,EAASzR,GAAgByR,EAAQR,EAAY/R,IAE1CwC,GAAiB6P,GAAwBnS,EAAY6B,EAAYhC,UAAWwS,GAEvF,OAAOrS,EAEX,SAAS3tC,GAAS2tC,EAAYqS,EAAQC,EAAaxS,GAI/C,OAHIwS,IACAD,EAASzR,GAAgByR,EAAQC,EAAaxS,IAE3CwC,GAAiBtC,EAAYqS,GAExC,SAASN,GAAY/R,EAAYgS,EAAYO,GACzC,IAAIhS,EAAOP,EAAWO,KAClBthC,EAAYogC,GAAQW,EAAW/gC,WAAW,SAAUyhC,GACpD,IAAIF,EAAMD,EAAKG,EAASD,OACxB,OAAID,EAAIpC,QAAUoC,EAAI5B,aACX8B,EAGA9C,GAAS,GAAI8C,EAAU,CAAE9iD,MAAO,CAC/BtS,MAAOinE,EAAW5P,aAAaqP,EAAWpF,OAAOlM,EAAS9iD,MAAMtS,MAAOo1D,EAAS4L,iBAChFnxD,IAAKo3D,EAAW5P,aAAaqP,EAAWpF,OAAOlM,EAAS9iD,MAAMzC,IAAKulD,EAAS6L,gBAC7ED,eAAgBiG,EAAWC,iBAAmB,KAAO9R,EAAS4L,eAAgBC,aAAcgG,EAAWC,iBAAmB,KAAO9R,EAAS6L,kBAGzJ,MAAO,CAAEhM,KAAMA,EAAMthC,UAAWA,GAEpC,SAASgzC,GAAuBjS,EAAYW,EAAY8L,EAAUC,EAAS5M,GACvE,IAAI2S,EAAWtR,GAAkBnB,EAAYW,GACzC+P,EAAkBhE,EAClB,CAAE,GAAI,CACE1B,eAAe,EACfC,kBAAkB,EAClB6B,YAAa,GACbC,QAAS,KACTC,OAAQ,GACRl7D,gBAAiB,GACjBC,YAAa,GACbwqB,UAAW,GACX0wC,WAAY,KAEpBnN,EAASqN,aAEb,OADAsF,EAAWhC,GAA0BgC,EAAU/B,EAAiBjE,EAAU3M,GACnEwC,GAAiBtC,EAAYyS,GAExC,SAASN,GAAwBnS,EAAYH,GACzC,OAAOyB,GAAqBtB,GAAY,SAAUvB,GAC9C,OAAOA,EAASoB,WAAaA,KAIrC,SAASqS,GAAiBlS,EAAY0S,GAClC,MAAO,CACHnS,KAAMP,EAAWO,KACjBthC,UAAWmgC,GAAWY,EAAW/gC,WAAW,SAAUyhC,GAClD,OAAQgS,EAAShS,EAASC,gBAOtC,SAASgS,GAAmBC,EAAa9S,GACrC,OAAO+S,GAAgB,CAAEC,UAAWF,GAAe9S,GAEvD,SAASiT,GAAqBC,EAAelT,GACzC,OAAO+S,GAAgB,CAAEG,cAAeA,GAAiBlT,GAE7D,SAAS+S,GAAgBI,EAAUnT,GAC/B,IAAIv0D,EAAOu0D,EAASv0D,KAChBlsB,EAAQu+E,GAAS,CAAEsV,cAAe3nE,EAAOA,EAAKlsB,MAAM6zF,cAAgBjT,KAAyB+S,cAAe,GAAIhT,WAAYF,EAAStoF,MAAMwoF,WAAYmN,aAAcrN,EAASqN,aAAcgG,eAAgB,GAAIL,UAAW,KAAMM,YAAa,MAAQH,GAC1P,OAAQnT,EAASiB,aAAaC,MAAMqS,cAAgBA,IAAch0F,EAAOygF,GAE7E,SAASuT,GAAa77F,EAAOsoF,EAAUwT,EAAcC,GAEjD,YADqB,IAAjBD,IAA2BA,EAAe,MAC1C97F,EAAMs7F,YAAcU,GAAwBh8F,EAAOsoF,EAAUwT,EAAcC,OAG3E/7F,EAAMw7F,gBAAkBS,GAA0Bj8F,EAAOsoF,EAAUwT,EAAcC,IAOzF,SAASC,GAAwBh8F,EAAOsoF,EAAUwT,EAAcC,GAC5D,IAAIX,EAAcp7F,EAAMs7F,UACpBY,EAAoBd,EAAYe,cAChCC,EAAcF,EAAkBnT,KAChCsT,EAAmBH,EAAkBz0C,UACrC60C,EAAiBpG,GAAgBkG,EAAahB,EAAYmB,QAC1Dv8F,EAAM21F,aACN,CAAE,GAAIrN,EAASkU,kBAEfT,IACAO,EAAiBzU,GAAQyU,EAAgBP,IAE7C,IAAIU,EAAkB/B,GAAiB16F,EAAMwoF,WAAY4S,EAAYsB,eAAej1C,WAChFk1C,EAAYF,EAAgB1T,KAC5B6T,EAAiBH,EAAgBh1C,UACjCo1C,EAAe3G,GAAgByG,EAAW38F,EAAM21F,cACpD,IAAK,IAAImH,KAAqBT,EAAkB,CAC5C,IAAIU,EAAkBV,EAAiBS,GACnCE,EAAeD,EAAgB32D,MAC/B62D,EAAgBX,EAAeS,EAAgB9T,OAC/CiU,EAAad,EAAYW,EAAgB9T,OAE7C,IAAKkU,GAAmBF,EAAc3H,YAAa0H,EAAcP,EAAiBz8F,EAAM07F,cAAepT,GACnG,OAAO,EAGX,IAAI8U,EAAc9U,EAASiC,IAAI,gBAI/B,IAAK,IAAI8S,IAHkB,oBAAhBD,IACPA,EAAc,MAEUR,EAAgB,CACxC,IAAIU,EAAgBV,EAAeS,GAEnC,GAAItR,GAAgBiR,EAAcM,EAAcl3D,OAAQ,CACpD,IAAIm3D,EAAeV,EAAaS,EAAcrU,OAAOsM,QAErD,IAAqB,IAAjBgI,GAA0BnC,EAAYmB,QACtC,OAAO,EAEX,IAA8B,IAA1BU,EAAc1H,QACd,OAAO,EAEX,GAAI6H,IAAgBA,EAAY,IAAIxK,GAAStK,EAAUqU,EAAUW,EAAcrU,OAAQqU,GACvF,IAAI1K,GAAStK,EAAU4U,EAAYH,IAE/B,OAAO,GAMnB,IADA,IAAIS,EAAqBlV,EAAStoF,MAAMwoF,WAC/BtE,EAAK,EAAG9E,EAAK6d,EAAczH,OAAQtR,EAAK9E,EAAGx2E,OAAQs7E,IAAM,CAC9D,IAAIuZ,EAAere,EAAG8E,GAClBwZ,EAAkBtX,GAAS,GAAI0V,EAAc,CAAE11D,MAAO22D,EAAgB32D,MAAOwgD,OAAQsW,EAAWtW,SAChG+W,EAAUH,EAAmBzU,KAAKmU,EAAWjU,OAC7C2U,EAAeJ,EAAmB/1C,UAAUq1C,GAC5Ce,OAAW,EAOf,GALIA,EADAF,EACW,IAAI/K,GAAStK,EAAUqV,EAASC,GAGhC,IAAIhL,GAAStK,EAAU4U,IAEjCO,EAAanV,EAASwV,iBAAiBJ,GAAkBG,GAC1D,OAAO,GAInB,OAAO,EAIX,SAAS5B,GAA0Bj8F,EAAOsoF,EAAUwT,EAAcC,GAC9D,IAAIgC,EAAqB/9F,EAAMwoF,WAC3BwV,EAAeD,EAAmBhV,KAClCkV,EAAoBF,EAAmBt2C,UACvCy2C,EAAYl+F,EAAMw7F,cAClB2C,EAAiBD,EAAU93D,MAC3Bo2D,EAAkBlU,EAASkU,gBAK/B,GAJIT,IACAS,EAAkBT,EAAaS,KAG9BW,GAAmBX,EAAgBlH,YAAa6I,EAAgBJ,EAAoB/9F,EAAM07F,cAAepT,GAC1G,OAAO,EAGX,IAAI8U,EAAc9U,EAASiC,IAAI,iBAI/B,IAAK,IAAI6T,IAHkB,oBAAhBhB,IACPA,EAAc,MAEaa,EAAmB,CAC9C,IAAII,EAAmBJ,EAAkBG,GAEzC,GAAIrS,GAAgBoS,EAAgBE,EAAiBj4D,OAAQ,CACzD,IAAgC,IAA5Bo2D,EAAgBjH,QAChB,OAAO,EAEX,GAAI6H,IAAgBA,EAAY,IAAIxK,GAAStK,EAAU0V,EAAaK,EAAiBpV,OAAQoV,IACzF,OAAO,GAKnB,IAAK,IAAIna,EAAK,EAAG9E,EAAKod,EAAgBhH,OAAQtR,EAAK9E,EAAGx2E,OAAQs7E,IAAM,CAChE,IAAIoa,EAAiBlf,EAAG8E,GACpBqa,EAAenY,GAAS,GAAI0V,EAAcoC,GAC9C,IAAKI,EAAehW,EAASwV,iBAAiBS,GAAe,MACzD,OAAO,EAGf,OAAO,EAIX,SAASpB,GAAmB7H,EAAa0H,EAAcP,EAAiB+B,EAAyBlW,GAC7F,IAAK,IAAIpE,EAAK,EAAGua,EAAgBnJ,EAAapR,EAAKua,EAAc71F,OAAQs7E,IAAM,CAC3E,IAAIwa,EAAaD,EAAcva,GAC/B,IAAKya,GAAsBC,GAAmBF,EAAY1B,EAAcP,EAAiB+B,EAAyBlW,GAAW0U,GACzH,OAAO,EAGf,OAAO,EAEX,SAAS4B,GAAmBF,EAAY1B,EACxCP,EACA+B,EACAlW,GAEI,MAAmB,kBAAfoW,EACOG,GAAmBzV,GAAgBoV,EAAyBxB,EAAc1U,IAEtD,kBAAfoW,EACLG,GAAmB/U,GAAqB2S,GAAiB,SAAUxV,GACtE,OAAOA,EAASkD,UAAYuU,MAGL,kBAAfA,GAA2BA,EAChCG,GAAmBzV,GAAgBsV,EAAY1B,EAAc1U,IAEjE,GAGX,SAASuW,GAAmBrW,GACxB,IAAI/gC,EAAY+gC,EAAW/gC,UACvB4jC,EAAS,GACb,IAAK,IAAIlC,KAAc1hC,EACnB4jC,EAAO7gF,KAAKi9C,EAAU0hC,GAAY/iD,OAEtC,OAAOilD,EAGX,SAASsT,GAAsBG,EAAa5S,GACxC,IAAK,IAAIhI,EAAK,EAAG6a,EAAgBD,EAAa5a,EAAK6a,EAAcn2F,OAAQs7E,IAAM,CAC3E,IAAI+H,EAAa8S,EAAc7a,GAC/B,GAAI8H,GAAmBC,EAAYC,GAC/B,OAAO,EAGf,OAAO,EAIX,SAAS8S,GAAoB1vF,EAAOg5E,GAChC,OAAIp+E,MAAMsd,QAAQlY,GACP64E,GAAY74E,EAAO,GAAIg5E,GAAU,GAElB,kBAAVh5E,GAAsBA,EAC3B64E,GAAY,CAAC74E,GAAQ,GAAIg5E,GAAU,GAE5B,MAATh5E,EACE9M,OAAO8M,GAGP,KAIf,SAAS2vF,GAAWhkF,GAChB,OAAQA,EAAI,IAAItF,QAAQ,KAAM,SACzBA,QAAQ,KAAM,QACdA,QAAQ,KAAM,QACdA,QAAQ,KAAM,UACdA,QAAQ,KAAM,UACdA,QAAQ,MAAO,UAIxB,SAASupF,GAASC,GACd,IAAIC,EAAa,GACjB,IAAK,IAAItR,KAAUqR,EAAU,CACzB,IAAItiF,EAAMsiF,EAASrR,GACR,MAAPjxE,GAAuB,KAARA,GACfuiF,EAAW50F,KAAKsjF,EAAS,IAAMjxE,GAGvC,OAAOuiF,EAAW1tF,KAAK,KAI3B,SAAS2tF,GAAW9hG,GAChB,IAAI8S,EAAQ,GACZ,IAAK,IAAIugF,KAAUrzF,EAAO,CACtB,IAAIsf,EAAMtf,EAAMqzF,GACL,MAAP/zE,GACAxM,EAAM7F,KAAKomF,EAAS,KAAOqO,GAAWpiF,GAAO,KAGrD,OAAOxM,EAAMqB,KAAK,KAEtB,SAAS4tF,GAAe1+E,GACpB,OAAI1W,MAAMsd,QAAQ5G,GACPA,EAEa,kBAARA,EACLA,EAAItQ,MAAM,OAGV,GAIf,IAAIgjF,GAA0B,CAC1BiM,SAAUza,QACV0O,cAAe1O,QACf2O,iBAAkB3O,QAClB4Z,WAAY,KACZnJ,QAAS,KACTiK,MAAO,KACPznD,UAAWunD,GACX7J,WAAY6J,GACZ/gF,MAAO/b,OACP83B,gBAAiB93B,OACjB+3B,YAAa/3B,OACbuiD,UAAWviD,QAEf,SAASi9F,GAAuBjb,EAAU8D,EAAU7B,GAChD,IAAI5+E,EAAQ08E,GAAYC,EAAU8O,GAAyB,GAAI7M,GAC3DiY,EAAaM,GAAoBn3F,EAAM62F,WAAYpW,GACvD,MAAO,CACHkL,cAAsC,MAAvB3rF,EAAM2rF,cAAwB3rF,EAAM2rF,cAAgB3rF,EAAM03F,SACzE9L,iBAA4C,MAA1B5rF,EAAM4rF,iBAA2B5rF,EAAM4rF,iBAAmB5rF,EAAM03F,SAClFjK,YAA2B,MAAdoJ,EAAqB,CAACA,GAAc,GACjDnJ,QAAS1tF,EAAM0tF,QACfC,OAAuB,MAAf3tF,EAAM23F,MAAgB,CAAC33F,EAAM23F,OAAS,GAC9CllE,gBAAiBzyB,EAAMyyB,iBAAmBzyB,EAAM0W,MAChDgc,YAAa1yB,EAAM0yB,aAAe1yB,EAAM0W,MACxCwmC,UAAWl9C,EAAMk9C,UACjB0wC,WAAY5tF,EAAM4tF,WAAWjyE,OAAO3b,EAAMkwC,YAGlD,SAAS2nD,GAAqB/4C,EAAQg5C,EAAWrX,EAAU7B,GACvD,IAAImZ,EAAc,GACdC,EAAW,GACf,IAAK,IAAI1hG,KAAOm1F,GAAyB,CACrC,IAAIwM,EAAYn5C,EAAS+8B,GAAsBvlF,GAC/CyhG,EAAYzhG,GAAOwhG,EAAUG,GAC7BD,EAASC,IAAa,EAK1B,GAHe,UAAXn5C,IACAi5C,EAAYL,SAAWI,EAAUJ,UAEjC9Y,EACA,IAAK,IAAItoF,KAAOwhG,EACPE,EAAS1hG,KACVsoF,EAAUtoF,GAAOwhG,EAAUxhG,IAIvC,OAAOshG,GAAuBG,EAAatX,GAE/C,IAAIyX,GAAiB,CACjBvM,cAAe,KACfC,iBAAkB,KAClB6B,YAAa,GACbC,QAAS,KACTC,OAAQ,GACRl7D,gBAAiB,GACjBC,YAAa,GACbwqB,UAAW,GACX0wC,WAAY,IAGhB,SAASmC,GAAgBD,GACrB,OAAOA,EAAIt2C,OAAO2+C,GAAoBD,IAE1C,SAASC,GAAmBC,EAAOC,GAC/B,MAAO,CACH1M,cAAsC,MAAvB0M,EAAM1M,cAAwB0M,EAAM1M,cAAgByM,EAAMzM,cACzEC,iBAA4C,MAA1ByM,EAAMzM,iBAA2ByM,EAAMzM,iBAAmBwM,EAAMxM,iBAClF6B,YAAa2K,EAAM3K,YAAY9xE,OAAO08E,EAAM5K,aAC5CC,QAAkC,mBAAlB2K,EAAM3K,QAAwB2K,EAAM3K,QAAU0K,EAAM1K,QACpEC,OAAQyK,EAAMzK,OAAOhyE,OAAO08E,EAAM1K,QAClCl7D,gBAAiB4lE,EAAM5lE,iBAAmB2lE,EAAM3lE,gBAChDC,YAAa2lE,EAAM3lE,aAAe0lE,EAAM1lE,YACxCwqB,UAAWm7C,EAAMn7C,WAAak7C,EAAMl7C,UACpC0wC,WAAYwK,EAAMxK,WAAWjyE,OAAO08E,EAAMzK,aAIlD,IAAItC,GAAiB,CACjBvpF,GAAIpH,OACJ2nF,QAAS3nF,OACT7B,MAAO6B,OACPV,IAAKU,OACL6yF,UAAW7yF,OACXmxF,cAAe,MAEfT,GAAa,CACbp/D,MAAO,KACPy3C,KAAM,KACN5nC,IAAK,KACLijD,OAAQ,MAERt/D,GAAM,EACV,SAASuhE,GAAWjoE,EAAKynE,EAAUC,EAAUC,GACzC,IAAIhC,EAAgB4Z,GAAuB9X,EAAUC,GACjD8X,EAAa,GACbC,EAAeha,GAAezlE,EAClC2lE,EAAe+B,EAAS1C,QAAS0C,EAASiB,aAAaC,MAAMhD,eAAgB4Z,GAE7E,GAAIC,EAAc,CACd,IAAIrX,EAAMsX,GAAcF,EAAY/X,EAAUgY,EAAazZ,OAAQ9B,QAAQub,EAAa5qE,UAAW6yD,GAMnG,OALAU,EAAI5B,aAAe,CACfL,OAAQsZ,EAAatZ,OACrBD,SAAUuZ,EAAavZ,SACvBrxD,SAAU4qE,EAAa5qE,UAEpB,CAAEuzD,IAAKA,EAAKE,SAAU,MAG7B,IAAIqX,EAAa,GACbC,EAAYC,GAAY7/E,EAAK2lE,EAAe+B,EAAUiY,EAAYhY,GACtE,GAAIiY,EAAW,CACPxX,EAAMsX,GAAcC,EAAYlY,EAAUmY,EAAU5Z,OAAQ4Z,EAAUlM,OAAQhM,GAAlF,IACIY,EAAWQ,GAAoBV,EAAIC,MAAOuX,EAAUp6D,MAAOo6D,EAAU1L,eAAgB0L,EAAUzL,cACnG,MAAO,CAAE/L,IAAKA,EAAKE,SAAUA,GAGrC,OAAO,KAOX,SAASoX,GAAc1/E,EAAKynE,EAAUzB,EAAQ0N,EAAQhM,GAClD,IAAI7B,EAAY,GACZuC,EAAM0X,GAAkB9/E,EAAK0nE,EAAU7B,GAC3CuC,EAAIC,MAAQzmF,OAAO8kB,MACnB0hE,EAAIX,SAAWA,EACfW,EAAIpC,OAASA,EACboC,EAAIsL,OAASA,EACb,IAAK,IAAIpQ,EAAK,EAAG9E,EAAKkJ,EAASiB,aAAaC,MAAMmX,gBAAiBzc,EAAK9E,EAAGx2E,OAAQs7E,IAAM,CACrF,IAAI0c,EAAiBxhB,EAAG8E,GACpB2c,EAAe,GACnBD,EAAe5X,EAAKvC,EAAWoa,GAC/Bpa,EAAYoa,EAMhB,OAJA7X,EAAI2K,cAAgBvN,GAASK,EAAWuC,EAAI2K,eAAiB,IAE7DryF,OAAOy5B,OAAOiuD,EAAIuK,GAAGkC,YACrBn0F,OAAOy5B,OAAOiuD,EAAI2K,eACX3K,EAEX,SAASU,GAAoBT,EAAO7iD,EAAO0uD,EAAgBC,GACvD,MAAO,CACH5L,WAAY3mF,OAAO8kB,MACnB2hE,MAAOA,EACP7iD,MAAOA,EACP0uD,eAAkC,MAAlBA,EAAyB,KAAOA,EAChDC,aAA8B,MAAhBA,EAAuB,KAAOA,GAGpD,SAAS0L,GAAY7/E,EAAK2lE,EAAe+B,EAAU7B,EAAW8B,GAC1D,IAEIuY,EAGAC,EALAl5F,EAAQm5F,GAAepgF,EAAK6lE,GAC5BG,EAAS/+E,EAAM++E,OAEfqa,EAAc,KACd3M,GAAS,EAET4M,EAAY,KAEhB,GADAJ,EAAYxY,EAAS1C,QAAQub,iBAAiBt5F,EAAMisB,OAChDgtE,EACAG,EAAcH,EAAUpjB,YAEvB,IAAK6K,EACN,OAAO,KAoCX,OAlCiB,MAAb1gF,EAAM87B,MACNo9D,EAAUzY,EAAS1C,QAAQub,iBAAiBt5F,EAAM87B,MAExC,MAAVijD,IAEIA,EADiB,MAAjBL,EACSA,IAIEua,GAAaA,EAAUM,sBAC5BL,GAAWA,EAAQK,oBAG7Bxa,GAAUqa,IACVA,EAAc1kB,GAAW0kB,IAEzBF,IACAG,EAAYH,EAAQrjB,OAChBkJ,IACAsa,EAAY3kB,GAAW2kB,IAEvBD,GAAeC,GAAaD,IAC5BC,EAAY,OAGhBA,EACA5M,GAAS,EAEH/L,IACN+L,EAAShM,EAASiC,IAAI,wBAAyB,EAC/C2W,EAAY5Y,EAAS1C,QAAQ1sC,IAAI+nD,EAAara,EAC1C0B,EAASe,2BACTf,EAASgB,4BAEV,CACH1C,OAAQA,EACR0N,OAAQA,EACRluD,MAAO,CAAEtS,MAAOmtE,EAAat9D,IAAKu9D,GAClCpM,eAAgBgM,EAAYA,EAAU9L,UAAY,KAClDD,aAAcgM,EAAUA,EAAQ/L,UAAY,MAGpD,SAASgM,GAAepgF,EAAK6lE,GACzB,IAAI5+E,EAAQ08E,GAAY3jE,EAAKsyE,GAAY,GAAIzM,GAG7C,OAFA5+E,EAAMisB,MAAyB,OAAhBjsB,EAAMisB,MAAkBjsB,EAAMisB,MAAQjsB,EAAM0jE,YACpD1jE,EAAM0jE,KACN1jE,EAEX,SAAS64F,GAAkB9/E,EAAK0nE,EAAU7B,GACtC,IAAI4a,EAAe,GACfx5F,EAAQ08E,GAAY3jE,EAAKuyE,GAAgB,GAAIkO,GAC7C9N,EAAKkM,GAAuB4B,EAAc/Y,EAAU7B,GAIxD,OAHA5+E,EAAM8qF,SAAW9qF,EAAM+B,UAChB/B,EAAM+B,GACb/B,EAAM0rF,GAAKA,EACJ1rF,EAEX,SAASs4F,GAAuB9X,EAAUC,GACtC,IAAItxD,EAAM,KACV,GAAIqxD,EAAU,CACV,IAAIhiE,EAASiiE,EAAStoF,MAAMm1F,aAAa9M,GACzCrxD,EAAM3Q,EAAOkgE,cAKjB,OAHW,MAAPvvD,IACAA,EAAMsxD,EAASiC,IAAI,kBAEhBvzD,EAGX,IAAIsqE,GAAe,CACfrrE,UAAW,QACXsrE,QAAS,QACTC,WAAY,CAAC,EAAG,EAAG,EAAG,EAAG,GACzBnM,UAAW,qBACXI,WAAY,iBACZtL,QAAS,kBAKb,SAASsX,GAAmBnyF,EAAOg5E,GAC/B,OAAOH,GAAYuZ,GAAapyF,GAAQ,GAAIg5E,GAEhD,SAASoZ,GAAapyF,GAClB,IAAIqyF,EAmBJ,OAjBIA,GADU,IAAVryF,EACU,CAAC,IAENpF,MAAMsd,QAAQlY,GAETA,EAAMk+B,QAAO,SAAUo0D,GAC7B,OAAOA,EAAOJ,cAGI,kBAAVlyF,GAAsBA,EACxB,CAACA,GAGD,GAEdqyF,EAAUA,EAAQphG,KAAI,SAAUqhG,GAC5B,OAAOxb,GAAS,GAAIkb,GAAcM,MAE/BD,EAGX,SAASE,GAAiBC,EAAYC,EAAcC,QAC3B,IAAjBA,IAA2BA,EAAe,IAC9C,IACIC,EACAC,EAFAC,EAAa,GAGjB,SAASC,IACL,GAAIF,EAAU,CACV,IAAK,IAAIhe,EAAK,EAAGme,EAAeF,EAAYje,EAAKme,EAAaz5F,OAAQs7E,IAAM,CACxE,IAAIoe,EAAYD,EAAane,GAC7Boe,EAAUF,WAEVL,GACAA,EAAavpF,MAAMypF,EAAaC,GAEpCA,EAAW,MAGnB,SAASlrE,IACAkrE,GAAa7V,GAAc6V,EAAU/rF,aACtCisF,IACAH,EAAc/kG,KACdglG,EAAW/rF,UACX2rF,EAAWtpF,MAAMtb,KAAMiZ,YAG/B6gB,EAAImrE,WAAaA,EACjBnrE,EAAIorE,SAAWA,EACf,IAAK,IAAIle,EAAK,EAAGqe,EAAiBP,EAAc9d,EAAKqe,EAAe35F,OAAQs7E,IAAM,CAC9E,IAAIse,EAAaD,EAAere,GAChCse,EAAWL,WAAW33F,KAAKwsB,GAE/B,OAAOA,EAGX,IAAIyrE,GAAoBha,KACpBia,GAA0B,WAC1B,SAASA,IACLxlG,KAAKylG,oBAAsBrW,GAAQpvF,KAAK0lG,sBACxC1lG,KAAK2lG,mBAAqBvW,GAAQpvF,KAAK4lG,gBACvC5lG,KAAK6lG,gBAAkBzW,GAAQpvF,KAAK8lG,kBACpC9lG,KAAK+lG,kBAAoB3W,GAAQpvF,KAAKgmG,oBACtChmG,KAAKimG,eAAiB7W,GAAQpvF,KAAKkmG,mBACnClmG,KAAKmmG,iBAAmB/W,GAAQpvF,KAAKkmG,mBACrClmG,KAAKomG,gBAAkB,GAiH3B,OA/GAZ,EAAS/qF,UAAU4rF,WAAa,SAAU17F,GACtC,IAAI27F,EAAQtmG,KACRumG,EAAWvmG,KAAKwmG,WAAW77F,GAC3B87F,EAAUzmG,KAAKylG,oBAAoB96F,EAAM2gF,YACzCob,EAAiB1mG,KAAK2lG,mBAAmBh7F,EAAM2zF,eAC/CqI,EAAe3mG,KAAK+lG,kBAAkBp7F,EAAM8tF,aAAcgO,GAC1DG,EAAc5mG,KAAK6lG,gBAAgBl7F,EAAM2gF,WAAYmb,GACrDI,EAAa7mG,KAAKimG,eAAet7F,EAAMyzF,WACvC0I,EAAe9mG,KAAKmmG,iBAAiBx7F,EAAM+zF,aAC3C2H,EAAa,GAIjB,IAAK,IAAIplG,KAHTjB,KAAKomG,gBAAkBzb,GAAQ4b,GAAU,SAAU/xE,EAAMvzB,GACrD,OAAOqlG,EAAMF,gBAAgBnlG,IAAQmuF,GAAQ2X,OAEjCR,EAAU,CACtB,IAAIS,EAAUT,EAAStlG,GACnBqqF,EAAasb,EAAY3lG,IAAQskG,GACjC0B,EAAejnG,KAAKomG,gBAAgBnlG,GACxColG,EAAWplG,GAAO,CACdu9F,cAAewI,EAAQxI,eAAiB7zF,EAAM6zF,cAC9CF,cAAeoI,EAAezlG,IAAQ,KACtCqqF,WAAYA,EACZmN,aAAcwO,EAAat8F,EAAM8tF,aAAa,IAAKuO,EAAQ3Q,GAAIsQ,EAAa1lG,IAC5Ew9F,eAAgBnT,EAAW/gC,UAAU5/C,EAAM8zF,gBAAkB9zF,EAAM8zF,eAAiB,GACpFL,UAAWyI,EAAW5lG,IAAQ,KAC9By9F,YAAaoI,EAAa7lG,IAAQ,MAG1C,OAAOolG,GAEXb,EAAS/qF,UAAUmrF,eAAiB,SAAUsB,GAC1C,IAAIC,EAAY,GAChB,GAAID,EAEA,IADA,IAAI7kF,EAAOriB,KAAKonG,mBAAmBF,GAC1BlgB,EAAK,EAAGqgB,EAAShlF,EAAM2kE,EAAKqgB,EAAO37F,OAAQs7E,IAAM,CACtD,IAAI/lF,EAAMomG,EAAOrgB,GACjBmgB,EAAUlmG,GAAOimG,EAGzB,OAAOC,GAEX3B,EAAS/qF,UAAUirF,qBAAuB,SAAUpa,GAChD,IAAIgb,EAAQtmG,KACZ,OAAO2qF,GAAQW,EAAWO,MAAM,SAAU9B,GACtC,OAAOuc,EAAMgB,mBAAmBvd,OAGxCyb,EAAS/qF,UAAUqrF,iBAAmB,SAAUxa,EAAYmb,GACxD,IAAI5a,EAAOP,EAAWO,KAAMthC,EAAY+gC,EAAW/gC,UAC/Cg9C,EAAc,GAClB,IAAK,IAAIxb,KAASF,EACd,IAAK,IAAI7E,EAAK,EAAG9E,EAAKukB,EAAQ1a,GAAQ/E,EAAK9E,EAAGx2E,OAAQs7E,IAAM,CACxD,IAAI/lF,EAAMihF,EAAG8E,GACRugB,EAAYtmG,KACbsmG,EAAYtmG,GAAOsqF,MAEvBgc,EAAYtmG,GAAK4qF,KAAKE,GAASF,EAAKE,GAG5C,IAAK,IAAIE,KAAc1hC,EAEnB,IADA,IAAIyhC,EAAWzhC,EAAU0hC,GAChB8J,EAAK,EAAG51F,EAAKsmG,EAAQza,EAASD,OAAQgK,EAAK51F,EAAGuL,OAAQqqF,IAAM,CAC7D90F,EAAMd,EAAG41F,GACTwR,EAAYtmG,KACZsmG,EAAYtmG,GAAKspD,UAAU0hC,GAAcD,GAIrD,OAAOub,GAEX/B,EAAS/qF,UAAUurF,mBAAqB,SAAUvN,EAAcgO,GAC5D,IAAIe,EAAc,GAClB,IAAK,IAAIzb,KAAS0M,EACd,GAAI1M,EACA,IAAK,IAAI/E,EAAK,EAAG9E,EAAKukB,EAAQ1a,GAAQ/E,EAAK9E,EAAGx2E,OAAQs7E,IAAM,CACxD,IAAI/lF,EAAMihF,EAAG8E,GACRwgB,EAAYvmG,KACbumG,EAAYvmG,GAAO,IAEvBumG,EAAYvmG,GAAK8qF,GAAS0M,EAAa1M,GAInD,OAAOyb,GAEXhC,EAAS/qF,UAAUyrF,kBAAoB,SAAUhI,GAC7C,IAAIuJ,EAAc,GAClB,GAAIvJ,EAAa,CACb,IAAIwJ,EAAmB1nG,KAAK8lG,iBAAiB5H,EAAYsB,eAAgBx/F,KAAK0lG,qBAAqBxH,EAAYsB,iBAG3GmI,EAAqB3nG,KAAK0lG,qBAAqBxH,EAAYe,eAC3D2I,EAAkB5nG,KAAK8lG,iBAAiB5H,EAAYe,cAAe0I,GACnEE,EAAW,SAAU5mG,GAChBwmG,EAAYxmG,KACbwmG,EAAYxmG,GAAO,CACfu+F,eAAgBkI,EAAiBzmG,IAAQskG,GACzCtG,cAAe2I,EAAgB3mG,IAAQskG,GACvClG,QAASnB,EAAYmB,QACrByI,QAAS5J,EAAY4J,WAIjC,IAAK,IAAI7mG,KAAOymG,EACZG,EAAS5mG,GAEb,IAAK,IAAIA,KAAO2mG,EACZC,EAAS5mG,GAGjB,OAAOwmG,GAEJjC,EAzHkB,GA2H7B,SAASuB,GAAmBgB,EAAOC,EAAerB,GAC9C,IAAIsB,EAAY,GACZF,GACAE,EAAU36F,KAAKy6F,GAEfC,GACAC,EAAU36F,KAAK06F,GAEnB,IAAIE,EAAQ,CACR,GAAIxN,GAAgBuN,IAKxB,OAHItB,GACAzd,GAASgf,EAAOvB,GAEbuB,EASX,SAASC,GAAoBC,EAAY1f,EAAS2f,EAAahoG,EAAOioG,GAClE,IAAIj6B,EACAnsE,EACAqmG,EACAC,EAmBJ,OAlBIH,aAAuBngG,KACvBmmE,EAAOg6B,GAGPh6B,EAAOg6B,EAAYh6B,KACnBnsE,EAAOmmG,EAAYnmG,KACnBqmG,EAAWF,EAAYE,UAE3BC,EAAe,CACXn6B,KAAMqa,EAAQ+f,UAAUp6B,EAAM,CAAEq6B,UAAU,IAC1CxmG,KAAMA,GAAQ,OAEG,kBAAV7B,IACPioG,EAAYjoG,EACZA,EAAQ,MAEZA,EAAQA,EAAQ,IAAM8hG,GAAW9hG,GAAS,GAC1CioG,EAAYA,GAAa,IACpBC,GAAYH,EAAWO,SACjB,KAAOtoG,EACV,eAAiB0hG,GAAW6G,KAAKC,UAAUL,IAAiB,KAC5DF,EACA,OAGG,QAAUjoG,EAAQ,IACrBioG,EACA,UAGZ,SAASQ,GAAcV,GACnB,OAAOA,EAAWW,YAAchH,GAAWqG,EAAWY,YAG1D,SAASC,GAAc56B,EAAM2uB,EAAazoE,EAAS20E,GAC/C,IAEIC,EACAC,EAHAhe,EAAW72D,EAAQ62D,SAAU39E,EAAU8mB,EAAQ9mB,QAAS47F,EAAQ90E,EAAQ80E,MAAO3gB,EAAUn0D,EAAQm0D,QACjG4gB,EAAU,GA2Bd,OAxBKra,GAAoB+N,EAAYI,YAAa/uB,IAI9Ci7B,EAAQh8F,KAAK,MAAQgxE,EAAQjQ,EAAK6S,cAC9BzzE,EAAQ87F,WACR7gB,EAAQrH,SAAShT,KAAUqa,EAAQrH,SAAS2b,EAAYwM,aAAa5yE,QACrE0yE,EAAQh8F,KAAK,kBAEjB67F,EAAa9pB,GAAW+L,EAASqe,UACjCL,EAAW1qB,EAAQyqB,EAAY,GAC3B96B,EAAO86B,EACPG,EAAQh8F,KAAK,WAER+gE,GAAQ+6B,EACbE,EAAQh8F,KAAK,cAGbg8F,EAAQh8F,KAAK,aACY,IAArB47F,GACAI,EAAQh8F,KAAK+7F,EAAMK,SAAS,YAnBpCJ,EAAQh8F,KAAK,mBAuBVg8F,EAOX,SAASK,GAAY7jB,EAAM8jB,EAAS3xF,GAGhC,IAAI4xF,GAAa,EACbC,EAAiB,WACZD,IACDA,GAAa,EACbD,EAAQtuF,MAAMtb,KAAMiZ,aAGxB8wF,EAAiB,WACZF,IACDA,GAAa,EACT5xF,GACAA,EAAQqD,MAAMtb,KAAMiZ,aAI5B6gB,EAAMgsD,EAAKgkB,EAAgBC,GAC3BjwE,GAA2B,oBAAbA,EAAIkwE,MAClBlwE,EAAIkwE,KAAKF,EAAgBC,GAIjC,IAAIE,GAAuB,WACvB,SAASA,KAyBT,OAtBAA,EAAMC,QAAU,SAAUC,GACtBnqG,KAAKoqG,WAAWD,EAAU1vF,YAG9BwvF,EAAMG,WAAa,SAAUC,GACzB,IAAI/D,EAAQtmG,KACZoE,OAAOkmG,oBAAoBtqG,KAAKya,WAAWxV,SAAQ,SAAUoK,GACpDg7F,EAAQh7F,KACTg7F,EAAQh7F,GAAQi3F,EAAM7rF,UAAUpL,QAQ5C46F,EAAMM,QAAU,SAAUJ,GACtB,IAAI7D,EAAQtmG,KACZoE,OAAOkmG,oBAAoBtqG,KAAKya,WAAWxV,SAAQ,SAAUoK,GACzD86F,EAAU1vF,UAAUpL,GAAQi3F,EAAM7rF,UAAUpL,OAG7C46F,EA1Be,GA0CtBO,GAA8B,SAAUC,GAExC,SAASD,IACL,OAAkB,OAAXC,GAAmBA,EAAOnvF,MAAMtb,KAAMiZ,YAAcjZ,KA0C/D,OA5CAgpF,GAAUwhB,EAAcC,GAIxBD,EAAa/vF,UAAUla,GAAK,SAAU2B,EAAM8wC,GAExC,OADA03D,GAAU1qG,KAAK2qG,YAAc3qG,KAAK2qG,UAAY,IAAKzoG,EAAM8wC,GAClDhzC,MAGXwqG,EAAa/vF,UAAUmwF,IAAM,SAAU1oG,EAAM8wC,GAEzC,OADA03D,GAAU1qG,KAAK6qG,eAAiB7qG,KAAK6qG,aAAe,IAAK3oG,EAAM8wC,GACxDhzC,MAEXwqG,EAAa/vF,UAAUqwF,IAAM,SAAU5oG,EAAM8wC,GAOzC,OANIhzC,KAAK2qG,WACLI,GAAe/qG,KAAK2qG,UAAWzoG,EAAM8wC,GAErChzC,KAAK6qG,cACLE,GAAe/qG,KAAK6qG,aAAc3oG,EAAM8wC,GAErChzC,MAEXwqG,EAAa/vF,UAAU2gF,QAAU,SAAUl5F,GAEvC,IADA,IAAIgf,EAAO,GACF8lE,EAAK,EAAGA,EAAK/tE,UAAUvN,OAAQs7E,IACpC9lE,EAAK8lE,EAAK,GAAK/tE,UAAU+tE,GAG7B,OADAhnF,KAAKgrG,YAAY9oG,EAAMlC,KAAMkhB,GACtBlhB,MAEXwqG,EAAa/vF,UAAUuwF,YAAc,SAAU9oG,EAAMqyB,EAASrT,GAQ1D,OAPIlhB,KAAK2qG,WACLhkB,GAAS3mF,KAAK2qG,UAAUzoG,GAAOqyB,EAASrT,GAExClhB,KAAK6qG,eACLlkB,GAAS3mF,KAAK6qG,aAAa3oG,GAAOqyB,EAASrT,UACpClhB,KAAK6qG,aAAa3oG,IAEtBlC,MAEXwqG,EAAa/vF,UAAUwwF,YAAc,SAAU/oG,GAC3C,OAAQlC,KAAK2qG,WAAa3qG,KAAK2qG,UAAUzoG,IAASlC,KAAK2qG,UAAUzoG,GAAMwJ,QAClE1L,KAAK6qG,cAAgB7qG,KAAK6qG,aAAa3oG,IAASlC,KAAK6qG,aAAa3oG,GAAMwJ,QAE1E8+F,EA7CsB,CA8C/BP,IACF,SAASS,GAAUhlG,EAAMxD,EAAM8wC,IAC1BttC,EAAKxD,KAAUwD,EAAKxD,GAAQ,KACxBoL,KAAK0lC,GAEd,SAAS+3D,GAAerlG,EAAMxD,EAAM8wC,GAC5BA,EACIttC,EAAKxD,KACLwD,EAAKxD,GAAQwD,EAAKxD,GAAMouC,QAAO,SAAUw1C,GACrC,OAAOA,IAAS9yC,aAKjBttC,EAAKxD,GASpB,IAAIgpG,GAA+B,WAC/B,SAASA,EAAcC,EAAUvyB,EAAKhxC,EAAcjE,GAChD3jC,KAAKmrG,SAAWA,EAChBnrG,KAAK44E,IAAMA,EACX54E,KAAK4nC,aAAeA,EACpB5nC,KAAK2jC,WAAaA,EA2EtB,OAvEAunE,EAAczwF,UAAU2wF,MAAQ,WAC5B,IAAID,EAAWnrG,KAAKmrG,SAChBE,EAAmBrrG,KAAKqrG,iBACxBF,EAAS33C,wBACTxzD,KAAK4nC,cACL5nC,KAAKsrG,mBAAmBD,EAAiBl7E,MAEzCnwB,KAAK2jC,YACL3jC,KAAKurG,iBAAiBF,EAAiBj7E,MAI/C86E,EAAczwF,UAAU6wF,mBAAqB,SAAUE,GAGnD,IAFA,IAAIC,EAAQ,GACRC,EAAS,GACJ1kB,EAAK,EAAG9E,EAAKliF,KAAK44E,IAAKoO,EAAK9E,EAAGx2E,OAAQs7E,IAAM,CAClD,IAAIpsC,EAAKsnC,EAAG8E,GACRt2D,EAAOkqB,EAAG4Y,wBACdi4C,EAAMn+F,KAAKojB,EAAKP,KAAOq7E,GACvBE,EAAOp+F,KAAKojB,EAAKL,MAAQm7E,GAE7BxrG,KAAKyrG,MAAQA,EACbzrG,KAAK0rG,OAASA,GAGlBR,EAAczwF,UAAU8wF,iBAAmB,SAAUI,GAGjD,IAFA,IAAIC,EAAO,GACPC,EAAU,GACL7kB,EAAK,EAAG9E,EAAKliF,KAAK44E,IAAKoO,EAAK9E,EAAGx2E,OAAQs7E,IAAM,CAClD,IAAIpsC,EAAKsnC,EAAG8E,GACRt2D,EAAOkqB,EAAG4Y,wBACdo4C,EAAKt+F,KAAKojB,EAAKN,IAAMu7E,GACrBE,EAAQv+F,KAAKojB,EAAKJ,OAASq7E,GAE/B3rG,KAAK4rG,KAAOA,EACZ5rG,KAAK6rG,QAAUA,GAInBX,EAAczwF,UAAUqxF,YAAc,SAAUC,GAC5C,IAGIrzF,EAHA+yF,EAAQzrG,KAAKyrG,MACbC,EAAS1rG,KAAK0rG,OACdppF,EAAMmpF,EAAM//F,OAEhB,IAAKgN,EAAI,EAAGA,EAAI4J,EAAK5J,IACjB,GAAIqzF,GAAgBN,EAAM/yF,IAAMqzF,EAAeL,EAAOhzF,GAClD,OAAOA,GAMnBwyF,EAAczwF,UAAUuxF,WAAa,SAAUC,GAC3C,IAGIvzF,EAHAkzF,EAAO5rG,KAAK4rG,KACZC,EAAU7rG,KAAK6rG,QACfvpF,EAAMspF,EAAKlgG,OAEf,IAAKgN,EAAI,EAAGA,EAAI4J,EAAK5J,IACjB,GAAIuzF,GAAeL,EAAKlzF,IAAMuzF,EAAcJ,EAAQnzF,GAChD,OAAOA,GAKnBwyF,EAAczwF,UAAUyxF,SAAW,SAAUC,GACzC,OAAOnsG,KAAK0rG,OAAOS,GAAansG,KAAKyrG,MAAMU,IAG/CjB,EAAczwF,UAAU2xF,UAAY,SAAUC,GAC1C,OAAOrsG,KAAK6rG,QAAQQ,GAAYrsG,KAAK4rG,KAAKS,IAEvCnB,EAhFuB,GAwF9BoB,GAAkC,WAClC,SAASA,KA0BT,OAxBAA,EAAiB7xF,UAAU8xF,gBAAkB,WACzC,OAAOvsG,KAAKwsG,kBAAoBxsG,KAAKysG,mBAEzCH,EAAiB7xF,UAAUiyF,iBAAmB,WAC1C,OAAO1sG,KAAK2sG,iBAAmB3sG,KAAK4sG,kBAExCN,EAAiB7xF,UAAUoyF,oBAAsB,WAC7C,OAAO7sG,KAAKusG,kBAAoB,GAEpCD,EAAiB7xF,UAAUqyF,sBAAwB,WAC/C,OAAO9sG,KAAK0sG,mBAAqB,GAErCJ,EAAiB7xF,UAAUsyF,YAAc,WACrC,OAAO/sG,KAAKgtG,eAAiB,GAEjCV,EAAiB7xF,UAAUwyF,cAAgB,WACvC,OAAOjtG,KAAKgtG,eAAiBhtG,KAAKusG,mBAEtCD,EAAiB7xF,UAAUyyF,cAAgB,WACvC,OAAOltG,KAAKmtG,gBAAkB,GAElCb,EAAiB7xF,UAAU2yF,eAAiB,WACxC,OAAOptG,KAAKmtG,gBAAkBntG,KAAK0sG,oBAEhCJ,EA3B0B,GA6BjCe,GAAyC,SAAU5C,GAEnD,SAAS4C,EAAwBzyD,GAC7B,IAAI0rD,EAAQmE,EAAOjxF,KAAKxZ,OAASA,KAEjC,OADAsmG,EAAM1rD,GAAKA,EACJ0rD,EA0BX,OA9BAtd,GAAUqkB,EAAyB5C,GAMnC4C,EAAwB5yF,UAAUuyF,aAAe,WAC7C,OAAOhtG,KAAK46C,GAAGS,WAEnBgyD,EAAwB5yF,UAAU0yF,cAAgB,WAC9C,OAAOntG,KAAK46C,GAAGQ,YAEnBiyD,EAAwB5yF,UAAU6yF,aAAe,SAAUl9E,GACvDpwB,KAAK46C,GAAGS,UAAYjrB,GAExBi9E,EAAwB5yF,UAAU8yF,cAAgB,SAAUp9E,GACxDnwB,KAAK46C,GAAGQ,WAAajrB,GAEzBk9E,EAAwB5yF,UAAUkyF,eAAiB,WAC/C,OAAO3sG,KAAK46C,GAAG4yD,aAEnBH,EAAwB5yF,UAAU+xF,gBAAkB,WAChD,OAAOxsG,KAAK46C,GAAG6yD,cAEnBJ,EAAwB5yF,UAAUgyF,gBAAkB,WAChD,OAAOzsG,KAAK46C,GAAGyZ,cAEnBg5C,EAAwB5yF,UAAUmyF,eAAiB,WAC/C,OAAO5sG,KAAK46C,GAAG2B,aAEZ8wD,EA/BiC,CAgC1Cf,IACEoB,GAAwC,SAAUjD,GAElD,SAASiD,IACL,OAAkB,OAAXjD,GAAmBA,EAAOnvF,MAAMtb,KAAMiZ,YAAcjZ,KA0B/D,OA5BAgpF,GAAU0kB,EAAwBjD,GAIlCiD,EAAuBjzF,UAAUuyF,aAAe,WAC5C,OAAOljF,OAAO+yD,aAElB6wB,EAAuBjzF,UAAU0yF,cAAgB,WAC7C,OAAOrjF,OAAO8yD,aAElB8wB,EAAuBjzF,UAAU6yF,aAAe,SAAUnxF,GACtD2N,OAAO6jF,OAAO7jF,OAAO8yD,YAAazgE,IAEtCuxF,EAAuBjzF,UAAU8yF,cAAgB,SAAUpxF,GACvD2N,OAAO6jF,OAAOxxF,EAAG2N,OAAO+yD,cAE5B6wB,EAAuBjzF,UAAUkyF,eAAiB,WAC9C,OAAO5hE,SAASsuC,gBAAgBm0B,aAEpCE,EAAuBjzF,UAAU+xF,gBAAkB,WAC/C,OAAOzhE,SAASsuC,gBAAgBo0B,cAEpCC,EAAuBjzF,UAAUgyF,gBAAkB,WAC/C,OAAO1hE,SAASsuC,gBAAgBhlB,cAEpCq5C,EAAuBjzF,UAAUmyF,eAAiB,WAC9C,OAAO7hE,SAASsuC,gBAAgB98B,aAE7BmxD,EA7BgC,CA8BzCpB,IAKEsB,GAAiC,SAAUnD,GAE3C,SAASmD,EAAgBvwB,EAAWD,GAChC,IAAIkpB,EAAQmE,EAAOjxF,KAAKxZ,KAAMsM,EAAc,MAAO,CAC/CuuC,UAAW,kBACR76C,KAIP,OAHAsmG,EAAMjpB,UAAYA,EAClBipB,EAAMlpB,UAAYA,EAClBkpB,EAAMuH,gBACCvH,EAgDX,OAxDAtd,GAAU4kB,EAAiBnD,GAW3BmD,EAAgBnzF,UAAUoV,MAAQ,WAC9B7vB,KAAK8tG,UAAU,QACf9tG,KAAK6tG,iBAETD,EAAgBnzF,UAAU/M,QAAU,WAChCorE,EAAc94E,KAAK46C,KAIvBgzD,EAAgBnzF,UAAUozF,cAAgB,WACtCj2B,EAAW53E,KAAK46C,GAAI,CAChByiC,UAAWr9E,KAAKq9E,UAChBD,UAAWp9E,KAAKo9E,aAMxBwwB,EAAgBnzF,UAAUszF,aAAe,SAAUlqB,GAC/C,IAAIxG,EAAYr9E,KAAKq9E,UACjBD,EAAYp9E,KAAKo9E,UACrByG,EAAkBA,GAAmB7jF,KAAKguG,qBACxB,SAAd3wB,IACAA,EAAawG,EAAgBvzD,QACzBtwB,KAAK8sG,wBACL,SAAW,UAED,SAAd1vB,IACAA,EAAayG,EAAgB1zD,MAAQ0zD,EAAgBxzD,OACjDrwB,KAAK6sG,sBACL,SAAW,UAEnBj1B,EAAW53E,KAAK46C,GAAI,CAAEyiC,UAAWA,EAAWD,UAAWA,KAE3DwwB,EAAgBnzF,UAAUqzF,UAAY,SAAUlhG,GAC5C0tE,EAAet6E,KAAK46C,GAAI,SAAUhuC,IAEtCghG,EAAgBnzF,UAAUuzF,mBAAqB,WAC3C,IAAIrxB,EAAQpB,EAAav7E,KAAK46C,IAC9B,MAAO,CACHzqB,KAAMwsD,EAAMN,cACZhsD,MAAOssD,EAAML,eACbhsD,OAAQqsD,EAAMR,kBAGfyxB,EAzDyB,CA0DlCP,IAEEY,GAAuB,WACvB,SAASA,EAAMC,GACXluG,KAAKkuG,gBAAkBA,EACvBluG,KAAKmuG,sBAgDT,OA9CAF,EAAMxzF,UAAU0zF,oBAAsB,WAC9BnuG,KAAKouG,oBACLpuG,KAAKquG,gBAAgBruG,KAAKkuG,gBAAgBluG,KAAKouG,sBAGvDH,EAAMxzF,UAAU4zF,gBAAkB,SAAUC,GACxC,IAAIC,EACAC,EACJ,GAAgC,kBAArBF,GAAiCA,EAAkB,CAE1D,IAAKE,KADLD,EAAkBrlB,GAAS,GAAIlpF,KAAKyuG,aACjBH,EACfC,EAAgBC,GAAcxuG,KAAK0uG,wBAAwBJ,EAAiBE,IAEhFxuG,KAAKyuG,YAAcF,OAEO,IAArBD,IACLtuG,KAAKyuG,YAAc,KAG3BR,EAAMxzF,UAAUi0F,wBAA0B,SAAU7zD,GAChD,IAAI4O,EAASzpD,KAAK2uG,mBAIlB,OAHIllD,GAAwC,IAA9B5O,EAAU5wB,QAAQw/B,KAC5B5O,EAAY4O,EAAS5O,GAElBA,GAEXozD,EAAMxzF,UAAUivF,SAAW,SAAUzoG,GACjC,OAAOjB,KAAKspG,QAAQroG,IAAQ,IAEhCgtG,EAAMxzF,UAAUm0F,aAAe,SAAUJ,GACrC,IAAI3zD,EAAY76C,KAAKyuG,YAAYD,GACjC,OAAI3zD,EACO76C,KAAK6uG,cAAgB,IAAMh0D,EAE/B,IAEXozD,EAAMxzF,UAAUq0F,yBAA2B,SAAUC,GACjD,IAAIl0D,EACJ,OAAI76C,KAAKgvG,iCACLn0D,EAAYk0D,EAAkB/uG,KAAKgvG,gCAC/Bn0D,GACO76C,KAAK6uG,cAAgB,IAAM7uG,KAAK0uG,wBAAwB7zD,GAGhE,IAEJozD,EAnDe,GAqD1BA,GAAMxzF,UAAU6uF,QAAU,GAC1B2E,GAAMxzF,UAAUg0F,YAAc,GAC9BR,GAAMxzF,UAAUo0F,cAAgB,GAChCZ,GAAMxzF,UAAUk0F,mBAAqB,GAErC,IAAIM,GAAO,EACPC,GAAkC,WAClC,SAASA,EAAiB9jB,EAAUie,EAAO3gB,EAASj7E,EAASopB,GACzD72B,KAAKorF,SAAWA,EAChBprF,KAAKqpG,MAAQA,EACbrpG,KAAK0oF,QAAUA,EACf1oF,KAAKyN,QAAUA,EACfzN,KAAK62B,KAAOA,EACZ72B,KAAKmzF,MAAwB,QAAhB1lF,EAAQ0hG,IACrBnvG,KAAKovG,gBAAkB3pB,GAAgBh4E,EAAQ4hG,YAC/CrvG,KAAKioF,iBAAmBhG,GAAex0E,EAAQw6E,kBAKnD,OAHAinB,EAAiBz0F,UAAUwR,OAAS,SAAUxe,EAASopB,GACnD,OAAO,IAAIq4E,EAAiBlvG,KAAKorF,SAAUprF,KAAKqpG,MAAOrpG,KAAK0oF,QAASj7E,GAAWzN,KAAKyN,QAASopB,GAAQ72B,KAAK62B,OAExGq4E,EAd0B,GAgBjCI,GAA2B,WAC3B,SAASA,IACLtvG,KAAKuvG,cAAe,EACpBvvG,KAAKoqB,IAAM9kB,OAAO2pG,MAsCtB,OApCAK,EAAUE,iBAAmB,SAAUC,GACnCzvG,KAAKya,UAAUi1F,cAAgBxmB,GAAS,GAAIlpF,KAAKya,UAAUi1F,cAAeD,IAE9EH,EAAU70F,UAAUk1F,aAAe,SAAUhlG,EAAO4pB,GAChDv0B,KAAK4vG,eAAer7E,GACpB,IAAI2tD,EAAK2tB,GAAa7vG,KAAK2K,OAAS,GAAIA,EAAO3K,KAAK0vG,eAAgBI,EAAa5tB,EAAG4tB,WAAYC,EAAa7tB,EAAG6tB,WAChH/vG,KAAK2K,MAAQolG,EACTD,IACI9vG,KAAKuvG,cACLvvG,KAAKs7D,eAETt7D,KAAKF,OAAOiwG,EAAYx7E,GACpBv0B,KAAKuvG,cACLvvG,KAAKk9D,eAGbl9D,KAAKuvG,cAAe,GAExBD,EAAU70F,UAAUm1F,eAAiB,SAAUr7E,GAC3C,IAAIy7E,EAAahwG,KAAKu0B,QACtBv0B,KAAKu0B,QAAUA,EACVy7E,GACDhwG,KAAKiwG,aAAa17E,IAG1B+6E,EAAU70F,UAAU3a,OAAS,SAAU6K,EAAO4pB,KAE9C+6E,EAAU70F,UAAUw1F,aAAe,SAAU17E,KAE7C+6E,EAAU70F,UAAU6gD,aAAe,aAEnCg0C,EAAU70F,UAAUyiD,YAAc,aAGlCoyC,EAAU70F,UAAU/M,QAAU,aAEvB4hG,EAzCmB,GAgD9B,SAASO,GAAaK,EAAU3R,EAAUmR,GACtC,IAAIK,EAAa,GACbD,GAAa,EACjB,IAAK,IAAI7uG,KAAOs9F,EACRt9F,KAAOivG,IAAaA,EAASjvG,KAASs9F,EAASt9F,IAC9CyuG,EAAczuG,IAAQyuG,EAAczuG,GAAKivG,EAASjvG,GAAMs9F,EAASt9F,KAElE8uG,EAAW9uG,GAAOivG,EAASjvG,IAG3B8uG,EAAW9uG,GAAOs9F,EAASt9F,GAC3B6uG,GAAa,GAGrB,IAAK,IAAI7uG,KAAOivG,EACZ,KAAMjvG,KAAOs9F,GAAW,CACpBuR,GAAa,EACb,MAGR,MAAO,CAAEA,WAAYA,EAAYC,WAAYA,GAzBjDT,GAAU70F,UAAUi1F,cAAgB,GAiCpC,IAAIS,GAA+B,SAAU1F,GAEzC,SAAS0F,EAAcv1D,GACnB,IAAI0rD,EAAQmE,EAAOjxF,KAAKxZ,OAASA,KAEjC,OADAsmG,EAAM1rD,GAAKA,EACJ0rD,EA4DX,OAhEAtd,GAAUmnB,EAAe1F,GAMzB0F,EAAc11F,UAAU/M,QAAU,WAC9B+8F,EAAOhwF,UAAU/M,QAAQ8L,KAAKxZ,MAC9B84E,EAAc94E,KAAK46C,KAIvBu1D,EAAc11F,UAAU21F,oBAAsB,aAE9CD,EAAc11F,UAAU41F,SAAW,SAAUC,EAAcC,EAAaC,EAASC,GAC7E,OAAO,MAIXN,EAAc11F,UAAUwjF,mBAAqB,SAAUC,GACnD,IAAI9S,EAAWprF,KAAKu0B,QAAQ62D,SACxB4R,EAAch9F,KAAK2K,MAAMqyF,YACzBzyC,EAAY2zC,EAAYe,cAAc10C,UAC1C,GAAIyyC,EACA,IAAK,IAAI/Q,KAAc1hC,EACnB,IAAKukC,GAAmBkO,EAAY0T,WAAYnmD,EAAU0hC,GAAY/iD,OAClE,OAAO,EAInB,OAAO+0D,GAAmBC,EAAa9S,IAE3C+kB,EAAc11F,UAAU4jF,qBAAuB,SAAU2C,GACrD,IAAI5V,EAAWprF,KAAKu0B,QAAQ62D,SACxB4R,EAAch9F,KAAK2K,MAAMqyF,YAC7B,QAAIA,IACClO,GAAmBkO,EAAY0T,WAAY1P,EAAU93D,SAGnDm1D,GAAqB2C,EAAW5V,IAI3C+kB,EAAc11F,UAAUk2F,iBAAmB,SAAU/1D,GACjD,OAAQ56C,KAAK2K,MAAMyzF,YACdp+F,KAAK2K,MAAM+zF,cACXhlB,EAAe9+B,EAAI,gBACnB56C,KAAK4wG,cAAgB5wG,KAAK6wG,YAAYj2D,KAI/Cu1D,EAAc11F,UAAUq2F,kBAAoB,SAAUl2D,GAClD,IAAIm2D,EAAQr3B,EAAe9+B,EAAI56C,KAAKgxG,eACpC,QAASD,GAASA,EAAMh1D,UAAUu9B,SAAS,gBACtCI,EAAe9+B,EAAI,cACnB8+B,EAAe9+B,EAAI,kBACnB56C,KAAK6wG,YAAYj2D,IAE1Bu1D,EAAc11F,UAAUm2F,UAAY,WAChC,OAAO5wG,KAAK46C,GAAGmB,UAAUu9B,SAAS,eAEtC62B,EAAc11F,UAAUo2F,YAAc,SAAUj2D,GAC5C,OAAOgtC,QAAQlO,EAAe9+B,EAAI,iBAE/Bu1D,EAjEuB,CAkEhCb,IACFa,GAAc11F,UAAUu2F,cAAgB,0BACxCb,GAAc11F,UAAUw2F,cAAgB,mCAExC,IAAIC,GAAQ,EACZ,SAASC,GAAa/+F,GAClB,MAAO,CACH1F,GAAIpH,OAAO4rG,MACXE,KAAMh/F,EAAMg/F,MAAQ,GACpBC,SAAUj/F,EAAMi/F,UAAY,GAC5B5N,gBAAiBrxF,EAAMqxF,iBAAmB,GAC1ChI,wBAAyBrpF,EAAMqpF,yBAA2B,GAC1D6V,2BAA4Bl/F,EAAMk/F,4BAA8B,GAChEnV,yBAA0B/pF,EAAM+pF,0BAA4B,GAC5DoV,0BAA2Bn/F,EAAMm/F,2BAA6B,GAC9DC,oBAAqBp/F,EAAMo/F,qBAAuB,GAClDC,mBAAoBr/F,EAAMq/F,oBAAsB,GAChDC,MAAOt/F,EAAMs/F,OAAS,GACtBC,sBAAuBv/F,EAAMu/F,uBAAyB,GACtDhT,aAAcvsF,EAAMusF,cAAgB,KACpCiT,sBAAuBx/F,EAAMw/F,uBAAyB,GACtDC,0BAA2Bz/F,EAAMy/F,2BAA6B,GAC9DC,uBAAwB1/F,EAAM0/F,wBAA0B,GACxDC,sBAAuB3/F,EAAM2/F,uBAAyB,GACtDC,sBAAuB5/F,EAAM4/F,uBAAyB,GACtDC,qBAAsB7/F,EAAM6/F,sBAAwB,GACpDC,aAAc9/F,EAAM8/F,cAAgB,GACpCC,gBAAiB//F,EAAM+/F,iBAAmB,GAC1Che,aAAc/hF,EAAM+hF,aACpB7K,eAAgBl3E,EAAMk3E,gBAAkB,GACxC8oB,mBAAoBhgG,EAAMggG,mBAC1BnjD,YAAa78C,EAAM68C,aAAe,GAClCojD,oBAAqBjgG,EAAMigG,oBAC3BC,qBAAsBlgG,EAAMkgG,sBAAwB,IAG5D,IAAIC,GAA8B,WAC9B,SAASA,IACLvyG,KAAKssF,MAAQ,CACT+kB,SAAU,GACV5N,gBAAiB,GACjBhI,wBAAyB,GACzB6V,2BAA4B,GAC5BnV,yBAA0B,GAC1BoV,0BAA2B,GAC3BC,oBAAqB,GACrBC,mBAAoB,GACpBC,MAAO,GACPC,sBAAuB,GACvBhT,aAAc,KACdiT,sBAAuB,GACvBC,0BAA2B,GAC3BC,uBAAwB,GACxBC,sBAAuB,GACvBC,sBAAuB,GACvBC,qBAAsB,GACtBC,aAAc,GACdC,gBAAiB,GACjBhe,aAAc,KACd7K,eAAgB,GAChB8oB,mBAAoB,KACpBnjD,YAAa,GACbojD,oBAAqB,KACrBC,qBAAsB,IAE1BtyG,KAAKwyG,UAAY,GAYrB,OAVAD,EAAa93F,UAAUuhC,IAAM,SAAU5uC,GACnC,IAAKpN,KAAKwyG,UAAUplG,EAAOV,IAAK,CAC5B1M,KAAKwyG,UAAUplG,EAAOV,KAAM,EAC5B,IAAK,IAAIs6E,EAAK,EAAG9E,EAAK90E,EAAOgkG,KAAMpqB,EAAK9E,EAAGx2E,OAAQs7E,IAAM,CACrD,IAAIyrB,EAAMvwB,EAAG8E,GACbhnF,KAAKg8C,IAAIy2D,GAEbzyG,KAAKssF,MAAQomB,GAAa1yG,KAAKssF,MAAOl/E,KAGvCmlG,EAzCsB,GA2CjC,SAASG,GAAaC,EAAQC,GAC1B,MAAO,CACHvB,SAAUsB,EAAOtB,SAAS/qF,OAAOssF,EAAOvB,UACxC5N,gBAAiBkP,EAAOlP,gBAAgBn9E,OAAOssF,EAAOnP,iBACtDhI,wBAAyBkX,EAAOlX,wBAAwBn1E,OAAOssF,EAAOnX,yBACtE6V,2BAA4BqB,EAAOrB,2BAA2BhrF,OAAOssF,EAAOtB,4BAC5EnV,yBAA0BwW,EAAOxW,yBAAyB71E,OAAOssF,EAAOzW,0BACxEoV,0BAA2BoB,EAAOpB,0BAA0BjrF,OAAOssF,EAAOrB,2BAC1EC,oBAAqBmB,EAAOnB,oBAAoBlrF,OAAOssF,EAAOpB,qBAC9DC,mBAAoBkB,EAAOlB,mBAAmBnrF,OAAOssF,EAAOnB,oBAC5DC,MAAOxoB,GAAS,GAAIypB,EAAOjB,MAAOkB,EAAOlB,OACzCC,sBAAuBgB,EAAOhB,sBAAsBrrF,OAAOssF,EAAOjB,uBAClEhT,aAAciU,EAAOjU,cAAgBgU,EAAOhU,aAC5CiT,sBAAuBe,EAAOf,sBAAsBtrF,OAAOssF,EAAOhB,uBAClEC,0BAA2Bc,EAAOd,0BAA0BvrF,OAAOssF,EAAOf,2BAC1EC,uBAAwBa,EAAOb,uBAAuBxrF,OAAOssF,EAAOd,wBACpEC,sBAAuBY,EAAOZ,sBAAsBzrF,OAAOssF,EAAOb,uBAClEE,qBAAsBU,EAAOV,qBAAqB3rF,OAAOssF,EAAOX,sBAChED,sBAAuBW,EAAOX,sBAAsB1rF,OAAOssF,EAAOZ,uBAClEE,aAAchpB,GAAS,GAAIypB,EAAOT,aAAcU,EAAOV,cACvDC,gBAAiBQ,EAAOR,gBAAgB7rF,OAAOssF,EAAOT,iBACtDhe,aAAcye,EAAOze,cAAgBwe,EAAOxe,aAC5C7K,eAAgBqpB,EAAOrpB,eAAehjE,OAAOssF,EAAOtpB,gBACpD8oB,mBAAoBQ,EAAOR,oBAAsBO,EAAOP,mBACxDnjD,YAAa0jD,EAAO1jD,aAAe2jD,EAAO3jD,YAC1CojD,oBAAqBM,EAAON,qBAAuBO,EAAOP,oBAC1DC,qBAAsBppB,GAAS,GAAIypB,EAAOL,qBAAsBM,EAAON,uBAI/E,IAAIO,GAAiB,CACjBC,aAAa,EACbC,UAAW,SAAUrvF,GACjB,OAAI1W,MAAMsd,QAAQ5G,GACPA,EAEF1W,MAAMsd,QAAQ5G,EAAIqmC,QAChBrmC,EAAIqmC,OAER,MAEXipD,MAAO,SAAUC,EAAKrJ,GAClBA,EAAQ,CACJ1e,UAAW+nB,EAAI9lB,YAAYvyD,SAInCs4E,GAAyB/B,GAAa,CACtCgB,gBAAiB,CAACU,MAGlBM,GAAmB,CACnBJ,UAAW,SAAUrvF,GACjB,MAAmB,oBAARA,EACAA,EAEoB,oBAAfA,EAAIqmC,OACTrmC,EAAIqmC,OAER,MAEXipD,MAAO,SAAUC,EAAKrJ,EAAS3xF,GAC3B,IAAIywE,EAAUuqB,EAAI7nB,SAAS1C,QACvB5C,EAAOmtB,EAAI9lB,YAAYvyD,KAC3B+uE,GAAY7jB,EAAKvqC,KAAK,KAAM,CACxB3kB,MAAO8xD,EAAQwP,OAAO+a,EAAI/pE,MAAMtS,OAChC6P,IAAKiiD,EAAQwP,OAAO+a,EAAI/pE,MAAMzC,KAC9B2sE,SAAU1qB,EAAQ+f,UAAUwK,EAAI/pE,MAAMtS,OACtCy8E,OAAQ3qB,EAAQ+f,UAAUwK,EAAI/pE,MAAMzC,KACpC6rD,SAAU5J,EAAQ4J,YAClB,SAAUpH,GACV0e,EAAQ,CAAE1e,UAAWA,MACtBjzE,KAIPq7F,GAAwBnC,GAAa,CACrCgB,gBAAiB,CAACgB,MAGtB,SAASI,GAAY15E,EAAQj1B,EAAKswC,EAAQs+D,EAAiBC,GACvD55E,EAASA,EAAOpY,cAChB,IAAIwiC,EAAO,KACI,QAAXpqB,EACAj1B,EAAM8uG,GAAwB9uG,EAAKswC,GAGnC+O,EAAO0vD,GAAaz+D,GAExB,IAAI0+D,EAAM,IAAIC,eACdD,EAAIE,KAAKj6E,EAAQj1B,GAAK,GACP,QAAXi1B,GACA+5E,EAAIG,iBAAiB,eAAgB,qCAEzCH,EAAII,OAAS,WACT,GAAIJ,EAAIK,QAAU,KAAOL,EAAIK,OAAS,IAClC,IACI,IAAIn6E,EAAM8uE,KAAKhzC,MAAMg+C,EAAIM,cACzBV,EAAgB15E,EAAK85E,GAEzB,MAAOO,GACHV,EAAgB,uBAAwBG,QAI5CH,EAAgB,iBAAkBG,IAG1CA,EAAIQ,QAAU,WACVX,EAAgB,iBAAkBG,IAEtCA,EAAIS,KAAKpwD,GAEb,SAASyvD,GAAwB9uG,EAAKswC,GAClC,OAAOtwC,IACoB,IAAtBA,EAAIqlB,QAAQ,KAAc,IAAM,KACjC0pF,GAAaz+D,GAErB,SAASy+D,GAAaz+D,GAClB,IAAI/hC,EAAQ,GACZ,IAAK,IAAIlS,KAAOi0C,EACZ/hC,EAAM7F,KAAKwH,mBAAmB7T,GAAO,IAAM6T,mBAAmBogC,EAAOj0C,KAEzE,OAAOkS,EAAMqB,KAAK,KAGtB,IAAI8/F,GAAmB,CACnBvB,UAAW,SAAUrvF,GACjB,GAAmB,kBAARA,EACPA,EAAM,CAAE9e,IAAK8e,QAEZ,IAAKA,GAAsB,kBAARA,IAAqBA,EAAI9e,IAC7C,OAAO,KAEX,MAAO,CACHA,IAAK8e,EAAI9e,IACTi1B,QAASnW,EAAImW,QAAU,OAAOpY,cAC9B8yF,YAAa7wF,EAAI6wF,YACjBC,WAAY9wF,EAAI8wF,WAChBC,SAAU/wF,EAAI+wF,SACdC,cAAehxF,EAAIgxF,gBAG3B1B,MAAO,SAAUC,EAAKrJ,EAAS3xF,GAC3B,IAAI2iB,EAAOq4E,EAAI9lB,YAAYvyD,KACvB+5E,EAAgBC,GAAmBh6E,EAAMq4E,EAAI/pE,MAAO+pE,EAAI7nB,UAC5DmoB,GAAY34E,EAAKf,OAAQe,EAAKh2B,IAAK+vG,GAAe,SAAUzpB,EAAW0oB,GACnEhK,EAAQ,CAAE1e,UAAWA,EAAW0oB,IAAKA,OACtC,SAAUiB,EAAcjB,GACvB37F,EAAQ,CAAE68F,QAASD,EAAcjB,IAAKA,SAI9CmB,GAA4B5D,GAAa,CACzCgB,gBAAiB,CAACmC,MAEtB,SAASM,GAAmBh6E,EAAMsO,EAAOkiD,GACrC,IACIopB,EACAC,EACAC,EACAM,EAJAtsB,EAAU0C,EAAS1C,QAKnBxzC,EAAS,GA4Bb,OA3BAs/D,EAAa55E,EAAK45E,WACA,MAAdA,IACAA,EAAappB,EAASiC,IAAI,eAE9BonB,EAAW75E,EAAK65E,SACA,MAAZA,IACAA,EAAWrpB,EAASiC,IAAI,aAE5BqnB,EAAgB95E,EAAK85E,cACA,MAAjBA,IACAA,EAAgBtpB,EAASiC,IAAI,kBAK7B2nB,EAF4B,oBAArBp6E,EAAK25E,YAEU35E,EAAK25E,cAIL35E,EAAK25E,aAAe,GAE9CrrB,GAASh0C,EAAQ8/D,GACjB9/D,EAAOs/D,GAAc9rB,EAAQ+f,UAAUv/D,EAAMtS,OAC7Cse,EAAOu/D,GAAY/rB,EAAQ+f,UAAUv/D,EAAMzC,KAClB,UAArBiiD,EAAQ4J,WACRp9C,EAAOw/D,GAAiBhsB,EAAQ4J,UAE7Bp9C,EAGX,IAAI+/D,GAAY,CACZr/C,MAAO,SAAU61B,EAAUjE,EAAekB,GACtC,IAAIuF,EAAevF,EAAQuF,aAAa1yC,KAAKmtC,GACzCnB,EAAa,CACb+c,WAAY,KACZvrE,UAAWkpD,GACXoiB,QAASpiB,GACTizB,WAAYjnB,EACZknB,SAAUlnB,GAEVtjF,EAAQ08E,GAAYoE,EAAUlE,EAAY,GAAIC,GAC9C4tB,GAAW,EACf,IAAK,IAAI/6B,KAAY1vE,EACjB,GAAuB,MAAnBA,EAAM0vE,GAAmB,CACzB+6B,GAAW,EACX,MAGR,GAAIA,EAAU,CACV,IAAI78E,EAAW,KAQf,MAPI,aAAcivD,IACdjvD,EAAW0pD,GAAeuF,EAAcjvD,iBACjCivD,EAAcjvD,WAEpBA,GAAY5tB,EAAMouB,WAAapuB,EAAM05F,UACtC9rE,EAAWsqD,GAAkBl4E,EAAM05F,QAAS15F,EAAMouB,YAE/C,CACH4wD,YAAa/B,SAASj9E,EAAMouB,YAAcpuB,EAAM05F,SAChD9rE,SAAUA,EACVqxD,SAAUj/E,GAGlB,OAAO,MAEXswC,OAAQ,SAAU2uC,EAAUI,EAActB,GACtC,IAAI2sB,EAAsB3mB,GAAgB1E,EAAc,CAAEpzD,MAAOgzD,EAASsrB,WAAYzuE,IAAKmjD,EAASurB,WACpG,OAAIE,EACOC,GAAa1rB,EAAS0a,WAAY1a,EAAS7wD,UAAWs8E,EAAqB3sB,GAG3E,KAIf6sB,GAAyBpE,GAAa,CACtC7nB,eAAgB,CAAC2rB,MAErB,SAASK,GAAahR,EAAYvrE,EAAWixD,EAActB,GACvD,IAAI8sB,EAAUlR,EAAazZ,GAAYyZ,GAAc,KACjDmR,EAAYp2B,GAAW2K,EAAapzD,OACpCotE,EAAYha,EAAavjD,IACzBivE,EAAiB,GACrB,MAAOD,EAAYzR,EAAW,CAC1B,IAAI2R,OAEF,EAEGH,IAAWA,EAAQC,EAAUv0B,eAE1By0B,EADA58E,EACgB2vD,EAAQ1sC,IAAIy5D,EAAW18E,GAGvB08E,EAEpBC,EAAepoG,KAAKqoG,IAExBF,EAAY/2B,EAAQ+2B,EAAW,GAEnC,OAAOC,EAGX,IAAIE,GAA8BzE,GAAa,CAC3CmB,qBAAsB,CAClBvoD,OAAQ,SAAUA,EAAQqhC,EAAUyqB,GAChCC,GAAmB,CAAC/rD,GAASqhC,EAAUyqB,IAE3C5d,aAAc6d,GACd/oG,QAASgpG,MAGjB,SAASD,GAAmBxhF,EAAQ82D,EAAUyqB,GAG1C,IAFA,IAAIG,EAAiBjrB,GAAkBK,EAAStoF,MAAMm1F,cAClDge,EAAY,GACPjvB,EAAK,EAAGkvB,EAAW5hF,EAAQ0yD,EAAKkvB,EAASxqG,OAAQs7E,IAAM,CAG5D,IAFA,IAAI50E,EAAQ8jG,EAASlvB,GACjBmvB,GAAa,EACRz9F,EAAI,EAAGA,EAAIs9F,EAAetqG,OAAQgN,IACvC,GAAIm9F,EAAUG,EAAet9F,GAAG09F,KAAMhkG,GAAQ,CAC1C4jG,EAAehnG,OAAO0J,EAAG,GACzBy9F,GAAa,EACb,MAGHA,GACDF,EAAU3oG,KAAK8E,GAGvB,IAAK,IAAI8vE,EAAK,EAAGm0B,EAAmBL,EAAgB9zB,EAAKm0B,EAAiB3qG,OAAQw2E,IAAM,CACpF,IAAIo0B,EAAgBD,EAAiBn0B,GACrCkJ,EAASkK,SAAS,CACdpzF,KAAM,sBACNipF,SAAUmrB,EAAcnrB,WAGhC,IAAK,IAAI4K,EAAK,EAAGwgB,EAAcN,EAAWlgB,EAAKwgB,EAAY7qG,OAAQqqF,IAAM,CACrE,IAAIygB,EAAWD,EAAYxgB,GAC3B3K,EAASqrB,eAAeD,IAIhC,SAAST,GAAczhF,EAAQ82D,GAC3BA,EAASsrB,gBAAgBpiF,GAG7B,IAAI4a,GAAS,GACTlb,GAAiB,CACjB2iF,sBAAuB,MACvBC,oBAAqB,MACrBxqB,0BAA2B,WAC3BD,2BAA4B,CAAE9gB,IAAK,GACnCwrC,oBAAoB,EACpB5uB,iBAAkB,WAElB6uB,cAAc,EACd7nD,YAAa,GACbvV,YAAa,KACbq9D,OAAQ,CACJ5mF,KAAM,QACN+X,OAAQ,GACR7X,MAAO,mBAEX2mF,UAAU,EACVC,aAAa,EACbC,sBAAuB,QACvB7U,UAAU,EAEV8U,WAAY,WACZC,QAAS,WACTC,QAAS,WACTC,qBAAqB,EAErBC,cAAc,EACd/C,WAAY,QACZC,SAAU,MACVC,cAAe,WACfpiB,SAAU,QAGVklB,QAAS,GACTrlB,OAAQ,GAIRslB,uBAAwB,EACxBC,YAAa,WAEbC,mBAAoB,IACpBC,YAAY,EACZC,wBAAwB,EAExBC,cAAc,EAEdC,WAAY,IACZ1I,WAAY,+BAGZ2I,YAAY,EACZC,gBAAiB,UACjBC,iBAAkB,CAAE3sC,MAAO,OAAQF,IAAK,UAAWI,KAAM,WACzD0sC,oBAAoB,EACpBC,kBAAmB,IACnBC,eAAgB,IAChBC,qBAAsB,GAEtBC,GAAc,CACdxB,OAAQ,CACJ5mF,KAAM,kBACN+X,OAAQ,GACR7X,MAAO,SAEXmoF,YAAa,CAET/5E,KAAM,wBACN8H,KAAM,uBACNkyE,SAAU,yBACVC,SAAU,0BAGdC,GAAiB,CACjB,SACA,SACA,aACA,eAGJ,SAASC,GAAaC,GAClB,OAAOxuB,GAAWwuB,EAAYF,IAGlC,IAAIG,GAAmB,CACnB5F,GACAI,GACAyB,GACAQ,GACAK,IAEJ,SAASmD,GAAiBC,GAEtB,IADA,IAAIjsG,EAAU,GACLi6E,EAAK,EAAGiyB,EAAiBD,EAAchyB,EAAKiyB,EAAevtG,OAAQs7E,IAAM,CAC9E,IAAIkyB,EAAcD,EAAejyB,GACjC,GAA2B,kBAAhBkyB,EAA0B,CACjC,IAAIC,EAAa,eAAiB3yB,GAAsB0yB,GACnDpvF,OAAOqvF,GAIRpsG,EAAQO,KAAKwc,OAAOqvF,GAAYtsG,SAHhCwc,QAAQwD,KAAK,8BAAgCqsF,QAOjDnsG,EAAQO,KAAK4rG,GAGrB,OAAOJ,GAAiBxyF,OAAOvZ,GAGnC,IAAIqsG,GAAgB,CAChBvkG,KAAM,KACNy2D,KAAM,CACFmV,IAAK,EACLC,IAAK,GAETyuB,IAAK,MACLkK,WAAY,CACR56E,KAAM,OACN8H,KAAM,OACNkyE,SAAU,YACVC,SAAU,YACVjtC,KAAM,OACN6tC,MAAO,QACP/tC,MAAO,QACPD,KAAM,OACND,IAAK,MACLvgC,KAAM,QAEVonD,UAAW,IACX8W,WAAY,UACZuQ,eAAgB,OAChBC,gBAAiB,wBAErB,SAASC,GAAgBC,GAWrB,IAVA,IAAIC,EAAcD,EAAmBhuG,OAAS,EAAIguG,EAAmB,GAAG7kG,KAAO,KAC3E+kG,EAAc9vF,OAAO,2BAA6B,GAClD+vF,EAAe/vF,OAAO,wBAA0B,GAChDgwF,EAAgBF,EAAYtzF,OAChCykE,GAAkB8uB,GAClBH,GAEIK,EAAe,CACfC,GAAIZ,IAECpyB,EAAK,EAAGizB,EAAkBH,EAAe9yB,EAAKizB,EAAgBvuG,OAAQs7E,IAAM,CACjF,IAAIkzB,EAAYD,EAAgBjzB,GAChC+yB,EAAaG,EAAUrlG,MAAQqlG,EAEnC,MAAO,CACH72G,IAAK02G,EACLJ,YAAaA,GAGrB,SAASQ,GAAYC,EAAeC,GAChC,MAA6B,kBAAlBD,GAA+BptG,MAAMsd,QAAQ8vF,GAI7CE,GAAYF,EAAeC,GAH3BE,GAAYH,EAAcvlG,KAAM,CAACulG,EAAcvlG,MAAOulG,GAMrE,SAASE,GAAYE,EAASH,GAC1B,IAAI1nB,EAAQ,GAAGrsE,OAAOk0F,GAAW,IAC7B92F,EAAM+2F,GAAe9nB,EAAO0nB,IAAcjB,GAC9C,OAAOmB,GAAYC,EAAS7nB,EAAOjvE,GAEvC,SAAS+2F,GAAe9nB,EAAO0nB,GAC3B,IAAK,IAAI3hG,EAAI,EAAGA,EAAIi6E,EAAMjnF,OAAQgN,IAE9B,IADA,IAAIvF,EAAQw/E,EAAMj6E,GAAGq6E,oBAAoB3/E,MAAM,KACtC44B,EAAI74B,EAAMzH,OAAQsgC,EAAI,EAAGA,IAAK,CACnC,IAAI0uE,EAAWvnG,EAAM7H,MAAM,EAAG0gC,GAAGx3B,KAAK,KACtC,GAAI6lG,EAAUK,GACV,OAAOL,EAAUK,GAI7B,OAAO,KAEX,SAASH,GAAYC,EAAS7nB,EAAOjvE,GACjC,IAAIi3F,EAAStwB,GAAW,CAAC+uB,GAAe11F,GAAM,CAAC,sBACxCi3F,EAAO9lG,KACd,IAAIy2D,EAAOqvC,EAAOrvC,KAElB,cADOqvC,EAAOrvC,KACP,CACHkvC,QAASA,EACT7nB,MAAOA,EACPrnB,KAAMA,EACN4nB,mBAAoB,IAAIT,KAAKmoB,aAAaJ,GAC1C/sG,QAASktG,GAIjB,IAAIE,GAAgC,WAChC,SAASA,EAAeC,GACpB96G,KAAK86G,UAAY5xB,GAAS,GAAI4xB,GAC9B96G,KAAK+6G,iBAAmB,GACxB/6G,KAAKg7G,UAqCT,OAnCAH,EAAepgG,UAAUy7E,OAAS,SAAU+kB,EAASjd,EAAUkd,GAC3D,GAAK92G,OAAOie,KAAK44F,GAASvvG,QAAWsyF,EAAStyF,OAA9C,CAGA,IAAIyvG,EAAeD,EAAYl7G,KAAK+6G,iBAAmB/6G,KAAK86G,UAC5D5xB,GAASiyB,EAAcF,GACvB,IAAK,IAAIj0B,EAAK,EAAGo0B,EAAapd,EAAUhX,EAAKo0B,EAAW1vG,OAAQs7E,IAAM,CAClE,IAAI3M,EAAW+gC,EAAWp0B,UACnBm0B,EAAa9gC,GAExBr6E,KAAKg7G,YAITH,EAAepgG,UAAUugG,QAAU,WAE/B,IAAIxD,EAAUzwB,GACd/mF,KAAK+6G,iBAAiBvD,QAASx3G,KAAK86G,UAAUtD,QAASxjF,GAAewjF,SAClErlB,EAASpL,GACb/mF,KAAK+6G,iBAAiB5oB,OAAQnyF,KAAK86G,UAAU3oB,OAAQn+D,GAAem+D,QAChEkoB,EAAYZ,GAAgBjC,GAC5B6D,EAAiBlB,GAAYhoB,GAAUkoB,EAAUV,YAAaU,EAAUh3G,KAAKoK,QAC7E0hG,EAAMpoB,GACV/mF,KAAK+6G,iBAAiB5L,IAAKnvG,KAAK86G,UAAU3L,IAAKkM,EAAelM,KAC1DmM,EAAsB,QAARnM,EAAgBoJ,GAAc,GAChDv4G,KAAKs7G,YAAcA,EACnBt7G,KAAKq7G,eAAiBA,EACtBr7G,KAAK0C,SAAWk2G,GAAa,CACzB5kF,GACAsnF,EACAD,EACAr7G,KAAK86G,UACL96G,KAAK+6G,oBAGNF,EAzCwB,GA4C/BU,GAAyB,GAC7B,SAASC,GAAuBnsG,EAAMosG,GAClCF,GAAuBlsG,GAAQosG,EAEnC,SAASC,GAAqBrsG,GAC1B,OAAO,IAAIksG,GAAuBlsG,GAEtC,IAAIssG,GAAyC,WACzC,SAASA,KAiBT,OAfAA,EAAwBlhG,UAAU44E,cAAgB,SAAUvxC,GACxD,OAAOA,EAAEg+B,kBAEb67B,EAAwBlhG,UAAU64E,eAAiB,SAAUxxC,GACzD,OAAOA,EAAEi+B,eAEb47B,EAAwBlhG,UAAU84E,aAAe,SAAUzxC,GACvD,OAAOA,EAAEk+B,cAEb27B,EAAwBlhG,UAAUmhG,cAAgB,SAAUxkD,GACxD,OAAOqnB,GAAernB,IAE1BukD,EAAwBlhG,UAAU06E,cAAgB,SAAU3U,GACxD,OAAOhC,GAAegC,IAEnBm7B,EAlBiC,GAoB5CH,GAAuB,UAAWG,IAElC,IAAIE,GAAS,gHACb,SAASjmD,GAAMrwC,GACX,IAAIxG,EAAI88F,GAAO9xG,KAAKwb,GACpB,GAAIxG,EAAG,CACH,IAAIyhE,EAAS,IAAIt4E,KAAKA,KAAK25E,IAAI/0E,OAAOiS,EAAE,IAAKA,EAAE,GAAKjS,OAAOiS,EAAE,IAAM,EAAI,EAAGjS,OAAOiS,EAAE,IAAM,GAAIjS,OAAOiS,EAAE,IAAM,GAAIjS,OAAOiS,EAAE,IAAM,GAAIjS,OAAOiS,EAAE,KAAO,GAAIA,EAAE,IAA6B,IAAvBjS,OAAO,KAAOiS,EAAE,KAAc,IAC7L,GAAI+iE,GAAYtB,GAAS,CACrB,IAAIuR,EAAiB,KAKrB,OAJIhzE,EAAE,MACFgzE,GAA4B,MAAVhzE,EAAE,KAAe,EAAI,IAA2B,GAArBjS,OAAOiS,EAAE,KAAO,GACzDjS,OAAOiS,EAAE,KAAO,KAEjB,CACHyhE,OAAQA,EACR0jB,mBAAoBnlF,EAAE,GACtBgzE,eAAgBA,IAI5B,OAAO,KAGX,IAAI+pB,GAAyB,WACzB,SAASA,EAAQC,GACb,IAAIzpB,EAAWtyF,KAAKsyF,SAAWypB,EAASzpB,SACpC0pB,EAA+B,UAAb1pB,GAAqC,QAAbA,EAC1CypB,EAASE,mBAAqBD,IAC9Bh8G,KAAKi8G,kBAAoB,IAAIF,EAASE,kBAAkB3pB,IAE5DtyF,KAAK89F,iBAAmBlW,SAASo0B,GAAmBh8G,KAAKi8G,mBACzDj8G,KAAKixF,eAAiByqB,GAAqBK,EAAS9qB,gBACpDjxF,KAAKmyF,OAAS4pB,EAAS5pB,OACvBnyF,KAAKk8G,QAAUH,EAAS5pB,OAAO7mB,KAAKmV,IACpCzgF,KAAKm8G,QAAUJ,EAAS5pB,OAAO7mB,KAAKoV,IACG,QAAnCq7B,EAAS7E,wBACTl3G,KAAKk8G,QAAU,EACfl8G,KAAKm8G,QAAU,GAEc,kBAAtBJ,EAASK,WAChBp8G,KAAKk8G,QAAUH,EAASK,UAEkB,oBAAnCL,EAAS7E,wBAChBl3G,KAAKq8G,eAAiBN,EAAS7E,uBAEnCl3G,KAAKkyF,UAAkC,MAAtB6pB,EAAS7pB,UAAoB6pB,EAAS7pB,UAAY6pB,EAAS5pB,OAAO1kF,QAAQykF,UAC3FlyF,KAAKm0F,aAAe4nB,EAAS5nB,aA2SjC,OAxSA2nB,EAAQrhG,UAAUwzE,aAAe,SAAU77E,GACvC,IAAIwoB,EAAO56B,KAAKikG,iBAAiB7xF,GACjC,OAAa,OAATwoB,EACO,KAEJA,EAAK4lD,QAEhBs7B,EAAQrhG,UAAU6hG,gBAAkB,WAChC,OAAIt8G,KAAK89F,iBACE99F,KAAKu8G,mBAAkB,IAAIr0G,MAAO+nE,WAKlCwO,GAAe0C,GAAiB,IAAIj5E,QAGnD4zG,EAAQrhG,UAAUwpF,iBAAmB,SAAU7xF,GAC3C,GAAqB,kBAAVA,EACP,OAAOpS,KAAK41D,MAAMxjD,GAEtB,IAAIouE,EAAS,KAab,MAZqB,kBAAVpuE,EACPouE,EAASxgF,KAAKu8G,kBAAkBnqG,GAE3BA,aAAiBlK,MACtBkK,EAAQA,EAAM69D,UACT/qD,MAAM9S,KACPouE,EAASxgF,KAAKu8G,kBAAkBnqG,KAG/BpF,MAAMsd,QAAQlY,KACnBouE,EAAS/B,GAAersE,IAEb,OAAXouE,GAAoBsB,GAAYtB,GAG7B,CAAEA,OAAQA,EAAQ0jB,mBAAmB,EAAOpM,UAAW,MAFnD,MAIfgkB,EAAQrhG,UAAUm7C,MAAQ,SAAU73C,GAChC,IAAI5K,EAAQyiD,GAAM73C,GAClB,GAAc,OAAV5K,EACA,OAAO,KAEX,IAAIqtE,EAASrtE,EAAMqtE,OACfsX,EAAY,KAShB,OAR6B,OAAzB3kF,EAAM4+E,iBACF/xF,KAAK89F,iBACLtd,EAASxgF,KAAKu8G,kBAAkB/7B,EAAOvQ,UAAmC,GAAvB98D,EAAM4+E,eAAsB,KAG/E+F,EAAY3kF,EAAM4+E,gBAGnB,CAAEvR,OAAQA,EAAQ0jB,kBAAmB/wF,EAAM+wF,kBAAmBpM,UAAWA,IAGpFgkB,EAAQrhG,UAAU+hG,QAAU,SAAUh8B,GAClC,OAAOxgF,KAAKixF,eAAeoC,cAAc7S,IAE7Cs7B,EAAQrhG,UAAU4mE,SAAW,SAAUb,GACnC,OAAOxgF,KAAKixF,eAAeqC,eAAe9S,IAG9Cs7B,EAAQrhG,UAAUuhC,IAAM,SAAUwkC,EAAQwC,GACtC,IAAIzjE,EAAIvf,KAAKixF,eAAekE,cAAc3U,GAK1C,OAJAjhE,EAAE,IAAMyjE,EAAIzD,MACZhgE,EAAE,IAAMyjE,EAAIxD,OACZjgE,EAAE,IAAMyjE,EAAIvD,KACZlgE,EAAE,IAAMyjE,EAAItD,aACL1/E,KAAKixF,eAAe2qB,cAAcr8F,IAE7Cu8F,EAAQrhG,UAAU2vE,SAAW,SAAU5J,EAAQwC,GAC3C,IAAIzjE,EAAIvf,KAAKixF,eAAekE,cAAc3U,GAK1C,OAJAjhE,EAAE,IAAMyjE,EAAIzD,MACZhgE,EAAE,IAAMyjE,EAAIxD,OACZjgE,EAAE,IAAMyjE,EAAIvD,KACZlgE,EAAE,IAAMyjE,EAAItD,aACL1/E,KAAKixF,eAAe2qB,cAAcr8F,IAE7Cu8F,EAAQrhG,UAAUgiG,SAAW,SAAUj8B,EAAQrkE,GAC3C,IAAIoD,EAAIvf,KAAKixF,eAAekE,cAAc3U,GAE1C,OADAjhE,EAAE,IAAMpD,EACDnc,KAAKixF,eAAe2qB,cAAcr8F,IAE7Cu8F,EAAQrhG,UAAUiiG,UAAY,SAAUl8B,EAAQrkE,GAC5C,IAAIoD,EAAIvf,KAAKixF,eAAekE,cAAc3U,GAE1C,OADAjhE,EAAE,IAAMpD,EACDnc,KAAKixF,eAAe2qB,cAAcr8F,IAG7Cu8F,EAAQrhG,UAAUmuE,eAAiB,SAAU/J,EAAIC,GAC7C,IAAImS,EAAiBjxF,KAAKixF,eAC1B,OAAIpR,GAAShB,KAAQgB,GAASf,IAC1BmS,EAAesC,aAAa1U,KAAQoS,EAAesC,aAAazU,IAChEmS,EAAeqC,eAAezU,KAAQoS,EAAeqC,eAAexU,GAC7DmS,EAAeoC,cAAcvU,GAAMmS,EAAeoC,cAAcxU,GAEpE,MAEXi9B,EAAQrhG,UAAUouE,gBAAkB,SAAUhK,EAAIC,GAC9C,IAAImS,EAAiBjxF,KAAKixF,eAC1B,OAAIpR,GAAShB,KAAQgB,GAASf,IAC1BmS,EAAesC,aAAa1U,KAAQoS,EAAesC,aAAazU,GACxDmS,EAAeqC,eAAexU,GAAMmS,EAAeqC,eAAezU,GACE,IAAvEoS,EAAeoC,cAAcvU,GAAMmS,EAAeoC,cAAcxU,IAElE,MAGXi9B,EAAQrhG,UAAUkiG,kBAAoB,SAAU99B,EAAIC,GAChD,IAAI3iE,EAAInc,KAAK4oF,eAAe/J,EAAIC,GAChC,OAAU,OAAN3iE,EACO,CAAEmnD,KAAM,OAAQ3hE,MAAOwa,IAElCA,EAAInc,KAAK6oF,gBAAgBhK,EAAIC,GACnB,OAAN3iE,EACO,CAAEmnD,KAAM,QAAS3hE,MAAOwa,IAEnCA,EAAIwjE,GAAed,EAAIC,GACb,OAAN3iE,EACO,CAAEmnD,KAAM,OAAQ3hE,MAAOwa,IAElCA,EAAIyjE,GAAcf,EAAIC,GACZ,OAAN3iE,EACO,CAAEmnD,KAAM,MAAO3hE,MAAOwa,IAEjCA,EAAI6iE,EAAUH,EAAIC,GACd0E,GAAMrnE,GACC,CAAEmnD,KAAM,OAAQ3hE,MAAOwa,IAElCA,EAAI8iE,EAAYJ,EAAIC,GAChB0E,GAAMrnE,GACC,CAAEmnD,KAAM,SAAU3hE,MAAOwa,IAEpCA,EAAI+iE,GAAYL,EAAIC,GAChB0E,GAAMrnE,GACC,CAAEmnD,KAAM,SAAU3hE,MAAOwa,GAE7B,CAAEmnD,KAAM,cAAe3hE,MAAOm9E,EAAG7O,UAAY4O,EAAG5O,kBAE3D6rC,EAAQrhG,UAAUmiG,sBAAwB,SAAU/9B,EAAIC,EAAIh9B,GAExD,IAAInjC,EACJ,OAAImjC,EAAEy9B,QACF5gE,EAAO3e,KAAK4oF,eAAe/J,EAAIC,GAClB,OAATngE,GACOA,EAAOokE,GAAajhC,GAG/BA,EAAE09B,SACF7gE,EAAO3e,KAAK6oF,gBAAgBhK,EAAIC,GACnB,OAATngE,GACOA,EAAOukE,GAAcphC,GAGhCA,EAAE29B,OACF9gE,EAAOihE,GAAcf,EAAIC,GACZ,OAATngE,GACOA,EAAOskE,GAAYnhC,IAG1Bg9B,EAAG7O,UAAY4O,EAAG5O,WAAakT,GAAUrhC,IAGrDg6D,EAAQrhG,UAAUq7C,QAAU,SAAU/2C,EAAGukD,GACrC,MAAa,SAATA,EACOtjE,KAAK68G,YAAY99F,GAEV,UAATukD,EACEtjE,KAAK88G,aAAa/9F,GAEX,SAATukD,EACEtjE,KAAK+8G,YAAYh+F,GAEV,QAATukD,EACE+b,GAAWtgE,GAEJ,SAATukD,EACE2c,GAAYlhE,GAEL,WAATukD,EACE6c,GAAcphE,GAEP,WAATukD,EACE+c,GAActhE,QADpB,GAIT+8F,EAAQrhG,UAAUoiG,YAAc,SAAU99F,GACtC,OAAO/e,KAAKixF,eAAe2qB,cAAc,CACrC57G,KAAKixF,eAAeoC,cAAct0E,MAG1C+8F,EAAQrhG,UAAUqiG,aAAe,SAAU/9F,GACvC,OAAO/e,KAAKixF,eAAe2qB,cAAc,CACrC57G,KAAKixF,eAAeoC,cAAct0E,GAClC/e,KAAKixF,eAAeqC,eAAev0E,MAG3C+8F,EAAQrhG,UAAUsiG,YAAc,SAAUh+F,GACtC,OAAO/e,KAAKixF,eAAe2qB,cAAc,CACrC57G,KAAKixF,eAAeoC,cAAct0E,GAClC/e,KAAKixF,eAAeqC,eAAev0E,GACnCA,EAAEihE,cAAiBjhE,EAAEmiE,YAAclhF,KAAKk8G,QAAU,GAAK,KAI/DJ,EAAQrhG,UAAUw3E,kBAAoB,SAAUzR,GAC5C,OAAIxgF,KAAKq8G,eACEr8G,KAAKq8G,eAAer8G,KAAKk4F,OAAO1X,IAGhCD,GAAWC,EAAQxgF,KAAKk8G,QAASl8G,KAAKm8G,UAIrDL,EAAQrhG,UAAUo7C,OAAS,SAAU2qB,EAAQnR,EAAW2tC,GAEpD,YADoB,IAAhBA,IAA0BA,EAAc,IACrC3tC,EAAUxZ,OAAO,CACpB2qB,OAAQA,EACRuR,eAAyC,MAAzBirB,EAAYllB,UACxBklB,EAAYllB,UACZ93F,KAAKi9G,gBAAgBz8B,IAC1BxgF,OAEP87G,EAAQrhG,UAAUq2E,YAAc,SAAUl6D,EAAO6P,EAAK4oC,EAAW2tC,GAK7D,YAJoB,IAAhBA,IAA0BA,EAAc,IACxCA,EAAYE,iBACZz2E,EAAMk4C,EAAMl4C,GAAM,IAEf4oC,EAAUyhB,YAAY,CACzBtQ,OAAQ5pD,EACRm7D,eAA8C,MAA9BirB,EAAYplB,eACxBolB,EAAYplB,eACZ53F,KAAKi9G,gBAAgBrmF,IAC1B,CACC4pD,OAAQ/5C,EACRsrD,eAA4C,MAA5BirB,EAAYnlB,aACxBmlB,EAAYnlB,aACZ73F,KAAKi9G,gBAAgBx2E,IAC1BzmC,OAEP87G,EAAQrhG,UAAUguF,UAAY,SAAUjoB,EAAQ28B,QACvB,IAAjBA,IAA2BA,EAAe,IAC9C,IAAIprB,EAAiB,KASrB,OARKorB,EAAaC,qBAEVrrB,EAD0B,MAA1BorB,EAAarlB,UACIqlB,EAAarlB,UAGb93F,KAAKi9G,gBAAgBz8B,IAGvCgU,GAAehU,EAAQuR,EAAgBorB,EAAazU,WAG/DoT,EAAQrhG,UAAU8hG,kBAAoB,SAAU95B,GAC5C,MAAsB,UAAlBziF,KAAKsyF,SACE7T,GAAe0C,GAAiB,IAAIj5E,KAAKu6E,KAEzB,QAAlBziF,KAAKsyF,UAAuBtyF,KAAKi8G,kBAI/Bx9B,GAAez+E,KAAKi8G,kBAAkBoB,iBAAiB56B,IAHvD,IAAIv6E,KAAKu6E,IAMxBq5B,EAAQrhG,UAAUwiG,gBAAkB,SAAUl+F,GAC1C,MAAsB,UAAlB/e,KAAKsyF,UACG3Q,GAAiBnD,GAAez/D,IAAIu+F,oBAErB,QAAlBt9G,KAAKsyF,SACH,EAEFtyF,KAAKi8G,kBACHj8G,KAAKi8G,kBAAkBsB,eAAe/+B,GAAez/D,IAEzD,MAGX+8F,EAAQrhG,UAAUy9E,OAAS,SAAUn5E,EAAG+4E,GACpC,MAAsB,UAAlB93F,KAAKsyF,SACE3Q,GAAiBnD,GAAez/D,IAEhB,QAAlB/e,KAAKsyF,SACH,IAAIpqF,KAAK6W,EAAEkxD,WAEZjwE,KAAKi8G,kBAIJ,IAAI/zG,KAAK6W,EAAEkxD,UAC6C,IAA3DjwE,KAAKi8G,kBAAkBsB,eAAe/+B,GAAez/D,IAAa,IAJ/D,IAAI7W,KAAK6W,EAAEkxD,WAAa6nB,GAAa,KAQ7CgkB,EAlUiB,GAqUxB0B,GAAsB,CACtB9wG,GAAIpH,OACJ+jF,cAAezB,QACf2F,mBAAoB5F,SACpBiiB,QAASjiB,SACT1vE,QAAS0vE,UAET81B,GAAQ,EACZ,SAASC,GAAoBvwB,EAAa/B,GACtC,IAAIS,EAAOT,EAASiB,aAAaC,MAAM6lB,gBACvC,OAAQtmB,EAAKsB,EAAYwwB,aAAa7K,YAE1C,SAAS8K,GAAiBl6F,EAAK0nE,GAE3B,IADA,IAAIS,EAAOT,EAASiB,aAAaC,MAAM6lB,gBAC9Bz5F,EAAImzE,EAAKngF,OAAS,EAAGgN,GAAK,EAAGA,IAAK,CACvC,IAAIozE,EAAMD,EAAKnzE,GACXkiB,EAAOkxD,EAAIinB,UAAUrvF,GACzB,GAAIkX,EAAM,CACN,IAAId,EAAM+jF,GAAqC,kBAARn6F,EAAmBA,EAAM,GAAIkX,EAAMliB,EAAG0yE,GAE7E,OADAtxD,EAAIs8E,KAAO1yF,EACJoW,GAGf,OAAO,KAEX,SAAS+jF,GAAsBn6F,EAAKkX,EAAM+iF,EAAavyB,GACnD,IAAI8X,EAAa,GACbv4F,EAAQ08E,GAAY3jE,EAAK85F,GAAqB,GAAIta,GAClDG,EAAa,GACbhN,EAAKkM,GAAuBW,EAAY9X,EAAUiY,GAUtD,OATA14F,EAAMmzG,YAAa,EACnBnzG,EAAM+yF,cAAgB,GACtB/yF,EAAMwyF,WAAa,KACnBxyF,EAAM8qF,SAAWnwF,OAAOoe,EAAIhX,IAAM,IAClC/B,EAAMwgF,SAAW7lF,OAAOm4G,MACxB9yG,EAAMgzG,YAAcA,EACpBhzG,EAAMiwB,KAAOA,EACbjwB,EAAM0rF,GAAKA,EACX1rF,EAAM8rF,cAAgB4M,EACf14F,EAGX,SAASozG,GAAoB9lB,EAAc8E,EAAQC,EAAa5R,GAC5D,OAAQ2R,EAAO76F,MACX,IAAK,oBACD,OAAO87G,GAAW/lB,EAAc8E,EAAOhxE,QAASixE,EAAcA,EAAYI,YAAc,KAAMhS,GAClG,IAAK,sBACD,OAAO6yB,GAAahmB,EAAc8E,EAAO5R,UAC7C,IAAK,OACL,IAAK,OACL,IAAK,WACL,IAAK,gBACD,OAAI6R,EACOkhB,GAAkBjmB,EAAc+E,EAAYI,YAAahS,GAGzD6M,EAEf,IAAK,sBACL,IAAK,kBACD,OAAOkmB,GAAkBlmB,EAAc8E,EAAOvH,UAC1C3K,GAAYkS,EAAOvH,WACnB4oB,GAAqBnmB,EAAc7M,GAAW4R,EAAcA,EAAYI,YAAc,KAAMhS,GACpG,IAAK,iBACL,IAAK,sBACD,OAAOizB,GAAgBpmB,EAAc8E,EAAO5R,SAAU4R,EAAOG,QAASH,EAAOI,YACjF,IAAK,2BACD,MAAO,GACX,QACI,OAAOlF,GAGnB,IAAIqmB,GAAQ,EACZ,SAASN,GAAWO,EAAiBxyF,EAASoxE,EAAY/R,GAEtD,IADA,IAAI1lF,EAAO,GACFshF,EAAK,EAAGw3B,EAAYzyF,EAASi7D,EAAKw3B,EAAU9yG,OAAQs7E,IAAM,CAC/D,IAAI79D,EAASq1F,EAAUx3B,GACvBthF,EAAKyjB,EAAOgiE,UAAYhiE,EAK5B,OAHIg0E,IACAz3F,EAAOw4G,GAAkBx4G,EAAMy3F,EAAY/R,IAExClC,GAAS,GAAIq1B,EAAiB74G,GAEzC,SAASu4G,GAAaM,EAAiBpzB,GACnC,OAAOT,GAAW6zB,GAAiB,SAAUpxB,GACzC,OAAOA,EAAYhC,WAAaA,KAGxC,SAAS+yB,GAAkBO,EAAYthB,EAAY/R,GAC/C,OAAO+yB,GAAkBM,EAAY/zB,GAAW+zB,GAAY,SAAUtxB,GAClE,OAAOuxB,GAAcvxB,EAAagQ,EAAY/R,MAC9C+R,EAAY/R,GAEpB,SAASszB,GAAcvxB,EAAagQ,EAAY/R,GAC5C,OAAKsyB,GAAoBvwB,EAAa/B,IAI1BA,EAASiC,IAAI,kBAChBF,EAAYgQ,YACbhQ,EAAY2wB,YACZ3gB,EAAWvmE,MAAQu2D,EAAYgQ,WAAWvmE,OAC1CumE,EAAW12D,IAAM0mD,EAAYgQ,WAAW12D,KAPpC0mD,EAAYuQ,cAU5B,SAASygB,GAAkBQ,EAAaC,EAAczhB,EAAY/R,GAC9D,IAAIyzB,EAAc,GAClB,IAAK,IAAI1zB,KAAYwzB,EAAa,CAC9B,IAAIx1F,EAASw1F,EAAYxzB,GACrByzB,EAAazzB,GACb0zB,EAAY1zB,GAAY2zB,GAAY31F,EAAQg0E,EAAY/R,GAGxDyzB,EAAY1zB,GAAYhiE,EAGhC,OAAO01F,EAEX,SAASC,GAAY3xB,EAAagQ,EAAY/R,GAC1C,IAAI2zB,EAAY3zB,EAASiB,aAAaC,MAAM6lB,gBAAgBhlB,EAAYwwB,aACpEzgB,EAAU53F,OAAOg5G,MAyCrB,OAxCAS,EAAU/L,MAAM,CACZ7lB,YAAaA,EACb/B,SAAUA,EACVliD,MAAOi0D,IACR,SAAUrjE,GACT,IAEIklF,EACAC,EAHA/zB,EAAYpxD,EAAIoxD,UAChBg0B,EAAa9zB,EAASiC,IAAI,sBAG1BF,EAAYyc,UACZqV,EAAmB9xB,EAAYyc,QAAQ1e,EAAWpxD,EAAI85E,MAEtDsL,IACAF,EAAgBE,EAAWh0B,EAAWpxD,EAAI85E,MAE9C1oB,EAAY+zB,GAAoBD,GAAiB9zB,EACjDE,EAASkK,SAAS,CACdpzF,KAAM,iBACNipF,SAAUgC,EAAYhC,SACtB+R,QAASA,EACTC,WAAYA,EACZjS,UAAWA,OAEhB,SAAUvwE,GACT,IAAIwkG,EAAc/zB,EAASiC,IAAI,sBAC/BhkE,QAAQwD,KAAKlS,EAAMm6F,QAASn6F,GACxBwyE,EAAYl1E,SACZk1E,EAAYl1E,QAAQ0C,GAEpBwkG,GACAA,EAAYxkG,GAEhBywE,EAASkK,SAAS,CACdpzF,KAAM,sBACNipF,SAAUgC,EAAYhC,SACtB+R,QAASA,EACTC,WAAYA,EACZxiF,MAAOA,OAGRuuE,GAAS,GAAIiE,EAAa,CAAE2wB,YAAY,EAAMpgB,cAAeR,IAExE,SAASmhB,GAAgBI,EAAYtzB,EAAU+R,EAASC,GACpD,IAAIjb,EACAiL,EAAcsxB,EAAWtzB,GAC7B,OAAIgC,GACA+P,IAAY/P,EAAYuQ,cACjBxU,GAAS,GAAIu1B,GAAav8B,EAAK,GAAIA,EAAGiJ,GAAYjC,GAAS,GAAIiE,EAAa,CAAE2wB,YAAY,EAAO3gB,WAAYA,IAC/Gjb,IAEFu8B,EAEX,SAASL,GAAqBnmB,EAAc7M,GACxC,OAAOV,GAAWuN,GAAc,SAAU9K,GACtC,OAAOuwB,GAAoBvwB,EAAa/B,MAIhD,IAAIg0B,GAAsC,WACtC,SAASA,EAAqBC,EAAUj0B,GACpCprF,KAAKq/G,SAAWA,EAChBr/G,KAAKyN,QAAU4xG,EAAS5xG,QACxBzN,KAAK0oF,QAAU0C,EAAS1C,QACxB1oF,KAAKorF,SAAWA,EAChBprF,KAAKs/G,iBA6TT,OAxTAF,EAAqB3kG,UAAU8kG,UAAY,SAAUC,EAAoBC,GACrE,IAAI/2B,EAAU1oF,KAAK0oF,QACfg3B,EAAWh3B,EAAQ0B,SAAS1B,EAAQ5yB,QAAQ2pD,EAAaD,EAAmBG,kBAChFH,EAAmBI,eACnB,OAAO5/G,KAAKorG,MAAMsU,GAAW,IAGjCN,EAAqB3kG,UAAUolG,UAAY,SAAUL,EAAoBC,GACrE,IAAI/2B,EAAU1oF,KAAK0oF,QACfo3B,EAAWp3B,EAAQ1sC,IAAI0sC,EAAQ5yB,QAAQ2pD,EAAaD,EAAmBG,kBAC3EH,EAAmBI,eACnB,OAAO5/G,KAAKorG,MAAM0U,EAAU,IAKhCV,EAAqB3kG,UAAU2wF,MAAQ,SAAUqU,EAAazpF,EAAW+pF,GAErE,IAAIrP,OADiB,IAAjBqP,IAA2BA,GAAe,GAE9C,IAEIC,EACAC,EACAC,EACA9iB,EACAp3E,EANAoxF,EAAU,KACVC,EAAU,KA0Bd,OApBA3G,EAAa1wG,KAAKmgH,kBAClBzP,EAAa1wG,KAAKogH,eAAe1P,GAC7BqP,IACAN,EAAcvwB,GAAuBuwB,EAAa/O,IAEtDsP,EAAchgH,KAAKqgH,sBAAsBZ,EAAazpF,GACtDiqF,EAAgB,0BAA0BxtG,KAAKutG,EAAY18C,MAC3D48C,EAAclgH,KAAKsgH,iBAAiBtgH,KAAKogH,eAAeJ,EAAY92E,OAAQ82E,EAAY18C,KAAM28C,GAC9FC,EAAclgH,KAAKogH,eAAeF,GAClC9iB,EAAc8iB,EACTlgH,KAAKyN,QAAQ6pG,sBACdla,EAAc1O,GAAgB0O,EAAa4iB,EAAY92E,QAE3DkuE,EAAUn1B,GAAejiF,KAAKyN,QAAQ2pG,SACtCC,EAAUp1B,GAAejiF,KAAKyN,QAAQ4pG,SACtCja,EAAcp9F,KAAKugH,kBAAkBnjB,EAAaga,EAASC,GAC3Dja,EAAc1O,GAAgB0O,EAAasT,GAG3C1qF,EAAU6oE,GAAgBmxB,EAAY92E,MAAOwnE,GACtC,CAGHA,WAAYA,EAGZlH,aAAcwW,EAAY92E,MAE1By2E,iBAAkBK,EAAY18C,KAC9B28C,cAAeA,EAGf7iB,YAAaA,EAGb8iB,YAAaA,EAEb9I,QAASA,EAETC,QAASA,EACTrxF,QAASA,EAET45F,cAAe5/G,KAAKwgH,mBAAmBR,EAAYznF,YAO3D6mF,EAAqB3kG,UAAU0lG,gBAAkB,WAC7C,OAAOngH,KAAKygH,eAAe,aAAczgH,KAAKorF,SAASqe,WACnD,CAAE7yE,MAAO,KAAM6P,IAAK,OAM5B24E,EAAqB3kG,UAAU4lG,sBAAwB,SAAUhyC,EAAMr4C,GACnE,IAII0qF,EAJAx+B,EAAKliF,KAAMq/G,EAAWn9B,EAAGm9B,SAAU32B,EAAUxG,EAAGwG,QAChDnwD,EAAW,KACX+qC,EAAO,KACPp6B,EAAQ,KAmBZ,OAjBIm2E,EAAS9mF,UACTA,EAAW8mF,EAAS9mF,SACpB+qC,EAAO+7C,EAASsB,aAChBz3E,EAAQlpC,KAAK4gH,uBAAuBvyC,EAAMr4C,EAAWuC,EAAU+qC,KAEzDo9C,EAAW1gH,KAAKyN,QAAQizG,WAC9Bp9C,EAAO,MACPp6B,EAAQlpC,KAAK6gH,uBAAuBxyC,EAAMr4C,EAAW0qF,KAE/Cx3E,EAAQlpC,KAAK8gH,wBAAwBzyC,IAC3C/K,EAAOolB,EAAQi0B,kBAAkBzzE,EAAMtS,MAAOsS,EAAMzC,KAAK68B,MAGzD/qC,EAAWv4B,KAAK+gH,sBAChBz9C,EAAOmgB,GAA4BlrD,GAAU+qC,KAC7Cp6B,EAAQlpC,KAAK4gH,uBAAuBvyC,EAAMr4C,EAAWuC,EAAU+qC,IAE5D,CAAE/qC,SAAUA,EAAU+qC,KAAMA,EAAMp6B,MAAOA,IAEpDk2E,EAAqB3kG,UAAUsmG,oBAAsB,WACjD,OAAO9+B,GAAe,CAAE5W,IAAK,KAIjC+zC,EAAqB3kG,UAAU8lG,kBAAoB,SAAUr3E,EAAOkuE,EAASC,GACzE,IAAI3uB,EAAU1oF,KAAK0oF,QACf9xD,EAAQsS,EAAMtS,MACd6P,EAAMyC,EAAMzC,IAchB,OAbIzmC,KAAKq/G,SAASr5G,MAAMyU,UAAUumG,iBAE1B/9B,GAAYm0B,GAAW,IACvBxgF,EAAQyoD,GAAWzoD,GACnBA,EAAQ8xD,EAAQ1sC,IAAIplB,EAAOwgF,IAG3Bn0B,GAAYo0B,GAAW,IACvB5wE,EAAM44C,GAAW54C,GACjBA,EAAMi4C,EAAQj4C,GAAM,GACpBA,EAAMiiD,EAAQ1sC,IAAIvV,EAAK4wE,KAGxB,CAAEzgF,MAAOA,EAAO6P,IAAKA,IAIhC24E,EAAqB3kG,UAAUmmG,uBAAyB,SAAUvyC,EAAMr4C,EAAWuC,EAAU+qC,GACzF,IAEI29C,EACAC,EACAtqF,EACA6P,EACA3M,EANA4uD,EAAU1oF,KAAK0oF,QACfnjC,EAAYvlD,KAAKyN,QAAQ0zG,cA8B7B,SAASC,IACLxqF,EAAQ8xD,EAAQ5yB,QAAQuY,EAAM9oB,GAC9B9e,EAAMiiD,EAAQ1sC,IAAIplB,EAAO2B,GACzBuB,EAAM,CAAElD,MAAOA,EAAO6P,IAAKA,GAQ/B,OAlCK8e,IACD07D,EAAqBjhH,KAAKyN,QAAQmyG,cAC9BqB,GACAC,EAAwBj/B,GAAeg/B,GAGnC17D,EADA49B,GAAU+9B,GAAyB/9B,GAAU5qD,GACjCkrD,GAA4By9B,GAAwB7+B,GAAkB4+B,IAAqB39C,KAG3FA,GAIhB/d,EAAY+d,GAIhB2f,GAAY1qD,IAAa,GACrBv4B,KAAKqhH,YAAYzqF,KACjBA,EAAQ52B,KAAKshH,eAAe1qF,EAAOZ,GACnCY,EAAQyoD,GAAWzoD,IAQ3BwqF,IAEKphH,KAAKogH,eAAetmF,KACrBu0C,EAAOruE,KAAKshH,eAAejzC,EAAMr4C,GACjCorF,KAEGtnF,GAGXslF,EAAqB3kG,UAAUomG,uBAAyB,SAAUxyC,EAAMr4C,EAAW0qF,GAC/E,IAIIj6E,EAJAiiD,EAAU1oF,KAAK0oF,QACf64B,EAAkBvhH,KAAKyN,QAAQ0zG,cAC/BK,EAAe,EACf5qF,EAAQy3C,EAERkzC,IACA3qF,EAAQ8xD,EAAQ5yB,QAAQl/B,EAAO2qF,IAEnC3qF,EAAQyoD,GAAWzoD,GACnBA,EAAQ52B,KAAKshH,eAAe1qF,EAAOZ,GACnCyQ,EAAM7P,EACN,GACI6P,EAAMi4C,EAAQj4C,EAAK,GACdzmC,KAAKqhH,YAAY56E,IAClB+6E,UAECA,EAAed,GACxB,MAAO,CAAE9pF,MAAOA,EAAO6P,IAAKA,IAIhC24E,EAAqB3kG,UAAUqmG,wBAA0B,SAAUzyC,GAC/D,IAAIqa,EAAU1oF,KAAK0oF,QACfJ,EAAetoF,KAAKygH,eAAe,eAAgB/3B,EAAQwP,OAAO7pB,IACtE,OAAIia,GAAuC,MAAtBA,EAAa1xD,OAAqC,MAApB0xD,EAAa7hD,IAGzD6hD,EAFI,MAOf82B,EAAqB3kG,UAAU6lG,iBAAmB,SAAU9W,EAAcmW,EAAkBM,GACxF,OAAOzW,GAIX4V,EAAqB3kG,UAAU+lG,mBAAqB,SAAUiB,GAC1D,IACIF,EADAN,EAAqBjhH,KAAKyN,QAAQmyG,cAEtC,OAAIqB,EACOh/B,GAAeg/B,IAEhBM,EAAkBvhH,KAAKyN,QAAQ0zG,eAC9Bl/B,GAAe,EAAGs/B,GAEpBE,GAIEx/B,GAAe,CAAExC,KAAM,KAMtC2/B,EAAqB3kG,UAAUgmG,eAAiB,SAAUpxG,GAEtD,IADA,IAAIqyG,EAAY,GACP16B,EAAK,EAAGA,EAAK/tE,UAAUvN,OAAQs7E,IACpC06B,EAAU16B,EAAK,GAAK/tE,UAAU+tE,GAElC,IAAIrnE,EAAM3f,KAAKyN,QAAQ4B,GAUvB,MATmB,oBAARsQ,IACPA,EAAMA,EAAIrE,MAAM,KAAMomG,IAEtB/hG,IACAA,EAAMquE,GAAWruE,EAAK3f,KAAK0oF,UAE3B/oE,IACAA,EAAMqoE,GAAuBroE,IAE1BA,GAKXy/F,EAAqB3kG,UAAU6kG,eAAiB,WAC5C,IAGI5mG,EAHAipG,EAAa3hH,KAAKyN,QAAQk0G,YAAc,GACxCC,EAAkB,GAClB75B,EAAS,EAKb,KAH8B,IAA1B/nF,KAAKyN,QAAQupG,UACb2K,EAAWr0G,KAAK,EAAG,GAElBoL,EAAI,EAAGA,EAAI,EAAGA,KACTkpG,EAAgBlpG,IAAgC,IAA3BipG,EAAW13F,QAAQvR,KAC1CqvE,IAGR,IAAKA,EACD,MAAM,IAAIn6E,MAAM,sBAEpB5N,KAAK4hH,gBAAkBA,GAI3BxC,EAAqB3kG,UAAU2lG,eAAiB,SAAUl3E,GACtD,IAAItS,EAAQsS,EAAMtS,MACd6P,EAAMyC,EAAMzC,IAOhB,OANI7P,IACAA,EAAQ52B,KAAKshH,eAAe1qF,IAE5B6P,IACAA,EAAMzmC,KAAKshH,eAAe76E,GAAM,GAAG,IAE1B,MAAT7P,GAAwB,MAAP6P,GAAe7P,EAAQ6P,EACjC,CAAE7P,MAAOA,EAAO6P,IAAKA,GAEzB,MAIX24E,EAAqB3kG,UAAU4mG,YAAc,SAAUh2C,GAInD,OAHIA,aAAenjE,OACfmjE,EAAMA,EAAI6V,aAEPlhF,KAAK4hH,gBAAgBv2C,IAOhC+zC,EAAqB3kG,UAAU6mG,eAAiB,SAAUjzC,EAAMwzC,EAAKC,QACrD,IAARD,IAAkBA,EAAM,QACR,IAAhBC,IAA0BA,GAAc,GAC5C,MAAO9hH,KAAK4hH,iBAAiBvzC,EAAK6S,aAAe4gC,EAAcD,EAAM,GAAK,GAAK,GAC3ExzC,EAAOqQ,EAAQrQ,EAAMwzC,GAEzB,OAAOxzC,GAEJ+wC,EAnU8B,GAsUzC,SAAS2C,GAAoBnwC,EAAIC,GAC7B,OAAO+c,GAAYhd,EAAG8+B,WAAY7+B,EAAG6+B,aACjC9hB,GAAYhd,EAAGwrB,YAAavrB,EAAGurB,cAC/BxO,GAAYhd,EAAGsuC,YAAaruC,EAAGquC,cAC/Bv9B,GAAe/Q,EAAGwlC,QAASvlC,EAAGulC,UAC9Bz0B,GAAe/Q,EAAGylC,QAASxlC,EAAGwlC,SAWtC,SAASlzD,GAAQrhD,EAAOi6F,EAAQ3R,GAM5B,IALA,IAAI42B,EAAWC,GAAen/G,EAAMk/G,SAAUjlB,GAC1CC,EAAcklB,GAAkBp/G,EAAMk6F,YAAaD,EAAQj6F,EAAM28G,YAAauC,EAAU52B,GACxF6M,EAAe8lB,GAAmBj7G,EAAMm1F,aAAc8E,EAAQC,EAAa5R,GAC3E+2B,EAAYj5B,GAAS,GAAIpmF,EAAO,CAAEk/G,SAAUA,EAC5ChlB,YAAaA,EAAayiB,YAAa2C,GAAkBt/G,EAAM28G,YAAa1iB,EAAQC,GAAc/E,aAAcA,EAAc3M,WAAYwR,GAAiBh6F,EAAMwoF,WAAYyR,EAAQ9E,EAAc+E,EAAa5R,GAAWkT,cAAe+jB,GAAoBv/G,EAAMw7F,cAAevB,EAAQ3R,GAAWqT,eAAgB6jB,GAAoBx/G,EAAM27F,eAAgB1B,GAASqB,UAAWmkB,GAAgBz/G,EAAMs7F,UAAWrB,EAAQ9E,EAAc7M,GAAWsT,YAAa8jB,GAAkB1/G,EAAM47F,YAAa3B,EAAQ9E,EAAc7M,GAAW2P,wBAAyB0nB,GAAoBxqB,GAAeyqB,aAAcD,GAAoBxqB,KAClmBjR,EAAK,EAAG9E,EAAKkJ,EAASiB,aAAaC,MAAM+kB,SAAUrqB,EAAK9E,EAAGx2E,OAAQs7E,IAAM,CAC9E,IAAI27B,EAAczgC,EAAG8E,GACrBm7B,EAAYQ,EAAYR,EAAWplB,EAAQ3R,GAG/C,OAAO+2B,EAEX,SAASF,GAAeW,EAAiB7lB,GACrC,OAAQA,EAAO76F,MACX,IAAK,gBACD,OAAO66F,EAAOilB,SAClB,QACI,OAAOY,GAGnB,SAASV,GAAkB1C,EAAoBziB,EAAQ0iB,EAAauC,EAAU52B,GAC1E,IAAIy3B,EACJ,OAAQ9lB,EAAO76F,MACX,IAAK,OACD2gH,EAAiBz3B,EAAS03B,sBAAsBd,GAAUzC,UAAUC,EAAoBC,GACxF,MACJ,IAAK,OACDoD,EAAiBz3B,EAAS03B,sBAAsBd,GAAUnC,UAAUL,EAAoBC,GACxF,MACJ,IAAK,WACID,EAAmBpiB,aACnBnO,GAAoBuwB,EAAmBhW,aAAczM,EAAOgmB,cAC7DF,EAAiBz3B,EAAS03B,sBAAsBd,GAAU5W,MAAMrO,EAAOgmB,gBAAY5+G,GAAW,IAGlG,MACJ,IAAK,gBACD,IAAI6+G,EAAY53B,EAAS03B,sBAAsBd,GAC/C,IAAKgB,EACD,MAAM,IAAIp1G,MAAMo0G,EACZ,0BAA4BA,EAAW,iEACvC,2CAERa,EAAiBG,EAAU5X,MAAMrO,EAAOgmB,YAActD,OAAat7G,GAAW,GAE9E,MAER,OAAI0+G,IACAA,EAAe78F,SACbw5F,GAAsBuC,GAAoBvC,EAAoBqD,GAIzDrD,EAHAqD,EAMf,SAAST,GAAkB3C,EAAa1iB,EAAQC,GAC5C,OAAQD,EAAO76F,MACX,IAAK,OACL,IAAK,OACD,OAAK+sF,GAAoB+N,EAAYwM,aAAciW,GAIxCA,EAHAziB,EAAYwM,aAAa5yE,MAKxC,IAAK,WACL,IAAK,gBACD,IAAIqsF,EAAUlmB,EAAOgmB,YAActD,EACnC,OAAIziB,EAAYI,cAAgBnO,GAAoB+N,EAAYI,YAAa6lB,GAClEjmB,EAAYwM,aAAa5yE,MAGzBqsF,EAEf,QACI,OAAOxD,GAGnB,SAAS4C,GAAoBa,EAAkBnmB,EAAQ3R,GACnD,OAAQ2R,EAAO76F,MACX,IAAK,eACD,OAAO66F,EAAOiE,UAClB,IAAK,iBACD,OAAO,KACX,QACI,OAAOkiB,GAGnB,SAASZ,GAAoBa,EAAmBpmB,GAC5C,OAAQA,EAAO76F,MACX,IAAK,eACD,OAAO66F,EAAOqmB,gBAClB,IAAK,iBACD,MAAO,GACX,QACI,OAAOD,GAGnB,SAASZ,GAAgBc,EAAatmB,EAAQhxE,EAASq/D,GACnD,OAAQ2R,EAAO76F,MACX,IAAK,iBACD,IAAIohH,EAAUvmB,EAAOj6F,MACrB,MAAO,CACH08F,eAAgB8jB,EAAQ9jB,eACxBP,cAAeqkB,EAAQrkB,cACvBI,QAASikB,EAAQjkB,QACjByI,QAASwb,EAAQxb,SAEzB,IAAK,mBACD,OAAO,KACX,QACI,OAAOub,GAGnB,SAASb,GAAkBe,EAAexmB,EAAQhxE,EAASq/D,GACvD,OAAQ2R,EAAO76F,MACX,IAAK,mBACD,IAAIshH,EAAYzmB,EAAOj6F,MACvB,MAAO,CACH08F,eAAgBgkB,EAAUhkB,eAC1BP,cAAeukB,EAAUvkB,cACzBI,QAASmkB,EAAUnkB,QACnByI,QAAS0b,EAAU1b,SAE3B,IAAK,qBACD,OAAO,KACX,QACI,OAAOyb,GAGnB,SAASd,GAAoBxqB,GACzB,IAAIwrB,EAAM,EACV,IAAK,IAAIt4B,KAAY8M,EACbA,EAAa9M,GAAU2yB,YACvB2F,IAGR,OAAOA,EAGX,IAAIC,GAAiB,CACjB9sF,MAAO,KACP6P,IAAK,KACLijD,OAAQ9B,SAEZ,SAAS+7B,GAAcjgG,EAAKglE,EAASk7B,GACjC,IAAIh3C,EAAOi3C,GAAkBngG,EAAKglE,GAC9Bx/C,EAAQ0jC,EAAK1jC,MACjB,IAAKA,EAAMtS,MACP,OAAO,KAEX,IAAKsS,EAAMzC,IAAK,CACZ,GAAuB,MAAnBm9E,EACA,OAAO,KAGP16E,EAAMzC,IAAMiiD,EAAQ1sC,IAAI9S,EAAMtS,MAAOgtF,GAG7C,OAAOh3C,EAMX,SAASi3C,GAAkBngG,EAAKglE,GAC5B,IAAIa,EAAY,GACZ4M,EAAgB9O,GAAY3jE,EAAKggG,GAAgB,GAAIn6B,GACrDqa,EAAYzN,EAAcv/D,MAAQ8xD,EAAQub,iBAAiB9N,EAAcv/D,OAAS,KAClFitE,EAAU1N,EAAc1vD,IAAMiiD,EAAQub,iBAAiB9N,EAAc1vD,KAAO,KAC5EijD,EAASyM,EAAczM,OAW3B,OAVc,MAAVA,IACAA,EAAUka,GAAaA,EAAUM,qBAC3BL,GAAWA,EAAQK,oBAG7B3a,EAAUrgD,MAAQ,CACdtS,MAAOgtE,EAAYA,EAAUpjB,OAAS,KACtC/5C,IAAKo9D,EAAUA,EAAQrjB,OAAS,MAEpC+I,EAAUG,OAASA,EACZH,EAEX,SAASu6B,GAAiBC,EAAOC,GAC7B,OAAOp1B,GAAYm1B,EAAM76E,MAAO86E,EAAM96E,QAClC66E,EAAMr6B,SAAWs6B,EAAMt6B,QACvBu6B,GAAiBF,EAAOC,GAGhC,SAASC,GAAiBF,EAAOC,GAC7B,IAAK,IAAI3pC,KAAY2pC,EACjB,GAAiB,UAAb3pC,GAAqC,WAAbA,GACpB0pC,EAAM1pC,KAAc2pC,EAAM3pC,GAC1B,OAAO,EAMnB,IAAK,IAAIA,KAAY0pC,EACjB,KAAM1pC,KAAY2pC,GACd,OAAO,EAGf,OAAO,EAEX,SAASpjB,GAAiBh0B,EAAM8b,GAC5B,MAAO,CACH9xD,MAAO8xD,EAAQwP,OAAOtrB,EAAK1jC,MAAMtS,OACjC6P,IAAKiiD,EAAQwP,OAAOtrB,EAAK1jC,MAAMzC,KAC/B2sE,SAAU1qB,EAAQ+f,UAAU77B,EAAK1jC,MAAMtS,MAAO,CAAE8xE,SAAU97B,EAAK8c,SAC/D2pB,OAAQ3qB,EAAQ+f,UAAU77B,EAAK1jC,MAAMzC,IAAK,CAAEiiE,SAAU97B,EAAK8c,SAC3DA,OAAQ9c,EAAK8c,QAGrB,SAASw6B,GAAkBt3C,EAAM8b,GAC7B,MAAO,CACHra,KAAMqa,EAAQwP,OAAOtrB,EAAK1jC,MAAMtS,OAChCutF,QAASz7B,EAAQ+f,UAAU77B,EAAK1jC,MAAMtS,MAAO,CAAE8xE,SAAU97B,EAAK8c,SAC9DA,OAAQ9c,EAAK8c,QAGrB,SAAS06B,GAAoBld,EAAUzO,EAAcrN,GACjD,IAAIU,EAAMsX,GAAc,CAAEf,UAAU,GAAS,GAC7C6E,EAASxd,QAAQ,EACjB0B,GACA,MAAO,CACHU,IAAKA,EACLuK,GAAImE,GAAe1O,EAAK2M,GACxBzM,SAAUQ,GAAoBV,EAAIC,MAAOmb,EAASh+D,OAClDA,MAAOg+D,EAASh+D,MAChBkwD,SAAS,EACTC,OAAO,GAIf,SAASgrB,GAAgBC,EAAgBC,GACrC,IACIvC,EADAt8G,EAAO,GAEX,IAAKs8G,KAAYsC,EACbE,GAAcxC,EAAUt8G,EAAM4+G,EAAgBC,GAElD,IAAKvC,KAAYuC,EACbC,GAAcxC,EAAUt8G,EAAM4+G,EAAgBC,GAElD,OAAO7+G,EAEX,SAAS8+G,GAAcxC,EAAUt8G,EAAM4+G,EAAgBC,GACnD,GAAI7+G,EAAKs8G,GACL,OAAOt8G,EAAKs8G,GAEhB,IAAIyC,EAAUC,GAAa1C,EAAUt8G,EAAM4+G,EAAgBC,GAI3D,OAHIE,IACA/+G,EAAKs8G,GAAYyC,GAEdA,EAEX,SAASC,GAAa1C,EAAUt8G,EAAM4+G,EAAgBC,GAClD,IAAIliD,EAAgBiiD,EAAetC,GAC/B2C,EAAiBJ,EAAgBvC,GACjC4C,EAAY,SAAUv1G,GACtB,OAAQgzD,GAAyC,OAAxBA,EAAchzD,GAAkBgzD,EAAchzD,GACjEs1G,GAA2C,OAAzBA,EAAet1G,GAAkBs1G,EAAet1G,GAAQ,MAEhFosG,EAAWmJ,EAAU,SACrBC,EAAYD,EAAU,cACrBC,GAAapJ,IACdoJ,EACIC,GAAuBrJ,EAAU8I,IAC7BO,GAAuBrJ,EAAU6I,IAE7C,IAAIS,EAAW,KACf,GAAIF,EAAW,CACX,GAAIA,IAAc7C,EACd,MAAM,IAAIp0G,MAAM,wDAEpBm3G,EAAWP,GAAcK,EAAWn/G,EAAM4+G,EAAgBC,GAK9D,OAHK9I,GAAYsJ,IACbtJ,EAAWsJ,EAAS/+G,OAEnBy1G,EAGE,CACHv5G,KAAM8/G,EACNh8G,MAAOy1G,EACP3oF,SAAUo2D,GAAS,GAAK67B,EAAWA,EAASjyF,SAAW,GAAMuvC,EAAgBA,EAAc50D,QAAU,IACrGqtG,UAAW5xB,GAAS,GAAK67B,EAAWA,EAASjK,UAAY,GAAM6J,EAAiBA,EAAel3G,QAAU,KANlG,KASf,SAASq3G,GAAuBE,EAAcC,GAC1C,IAAIC,EAAa9gH,OAAO+gH,eAAeH,EAAavqG,WACpD,IAAK,IAAIunG,KAAYiD,EAAS,CAC1B,IAAIx7B,EAASw7B,EAAQjD,GAErB,GAAIv4B,EAAOzjF,OAASyjF,EAAOzjF,MAAMyU,YAAcyqG,EAC3C,OAAOlD,EAGf,MAAO,GAGX,SAASoD,GAAiB9wF,GACtB,OAAOq2D,GAAQr2D,EAAQ+wF,IAE3B,IAAIC,GAAiB,CACjBpjH,KAAMoD,OACNU,MAAO,MAEX,SAASq/G,GAAgBjzG,GACA,oBAAVA,IACPA,EAAQ,CAAEpM,MAAOoM,IAErB,IAAI3E,EAAU,GACV9C,EAAQ08E,GAAYj1E,EAAOkzG,GAAgB,GAAI73G,GACnD,MAAO,CACHo3G,UAAWl6G,EAAMzI,KACjB8D,MAAO2E,EAAM3E,MACbyH,QAASA,GAIjB,SAAS83G,GAAeC,EAAeC,GACnC,IAAInB,EAAiBc,GAAiBI,GAClCjB,EAAkBa,GAAiBK,EAAe3K,UAAUpJ,OAC5DgU,EAAWrB,GAAgBC,EAAgBC,GAC/C,OAAO55B,GAAQ+6B,GAAU,SAAUjB,GAC/B,OAAOkB,GAAclB,EAASF,EAAiBkB,MAGvD,SAASE,GAAclB,EAASF,EAAiBkB,GAC7C,IAAIG,EAAgBnB,EAAQ3J,UAAUviF,UAClCksF,EAAQ3xF,SAASyF,UACjBktF,EAAe1K,iBAAiBxiF,UAChCktF,EAAe3K,UAAUviF,SACzBA,EAAW,KACXooF,EAAe,GACfkF,EAAa,GACbC,EAAsB,GAC1B,GAAIF,IACArtF,EAAW0pD,GAAe2jC,GACtBrtF,GAAU,CACV,IAAIwtF,EAAQtiC,GAA4BlrD,GAAW8pD,GAAkBujC,IACrEjF,EAAeoF,EAAMziD,KACD,IAAhByiD,EAAMpkH,QACNkkH,EAAalF,EACbmF,EAAsBvB,EAAgB5D,GAAgB4D,EAAgB5D,GAAclzG,QAAU,IAI1G,IAAIu4G,EAAkB,SAAUv4G,GAC5B,IAAIw4G,EAAgBx4G,EAAQ4rG,YAAc,GACtC6M,EAAgBzB,EAAQ3xF,SAASozF,cACrC,OAAqB,MAAjBA,GAAyD,MAAhCD,EAAcC,GAChCD,EAAcC,GAEU,MAA/BD,EAAcxB,EAAQviH,MACf+jH,EAAcxB,EAAQviH,MAEA,MAA7B+jH,EAAcJ,GACPI,EAAcJ,QADzB,GAIJ,MAAO,CACH3jH,KAAMuiH,EAAQviH,KACd8D,MAAOy+G,EAAQz+G,MACfuyB,SAAUA,EACVooF,aAAcA,EACdkF,WAAYA,EACZp4G,QAASy7E,GAAS,GAAIl1D,GAAgBywF,EAAQ3xF,SAAU2yF,EAAenK,YAAamK,EAAepK,eAAgBoK,EAAe3K,UAAWgL,EAAqBrB,EAAQ3J,UAAW2K,EAAe1K,kBACpMoL,mBAAoBH,EAAgBP,EAAe1K,mBAC/CiL,EAAgBP,EAAe3K,YAC/B2J,EAAQ3J,UAAUzB,WACtB+M,kBAAmBJ,EAAgBP,EAAepK,iBAC9C2K,EAAgBP,EAAenK,cAC/BmJ,EAAQ3xF,SAASumF,YACjB2M,EAAgBhyF,KAChBywF,EAAQviH,MAIpB,IAAImkH,GAAyB,SAAU5b,GAEnC,SAAS4b,EAAQC,GACb,IAAIhgB,EAAQmE,EAAOjxF,KAAKxZ,OAASA,KAQjC,OAPAsmG,EAAMigB,cAAgB5hB,GAAiB2B,EAAMkgB,aAAclgB,EAAMmgB,gBACjEngB,EAAMogB,aAAe/hB,GAAiB2B,EAAMqgB,YAAa,KAAM,CAACrgB,EAAMigB,gBACtEjgB,EAAMsgB,oBAAsBjiB,GAAiB2B,EAAMugB,mBAAoB,KAAM,CAACvgB,EAAMigB,gBACpFjgB,EAAMwgB,aAAeniB,GAAiB2B,EAAMygB,YAAa,KAAM,CAACzgB,EAAMigB,gBACtEjgB,EAAM0gB,YAAcriB,GAAiB2B,EAAM2gB,WAAY,KAAM,CAAC3gB,EAAMigB,gBACpEjgB,EAAM4gB,YAAcviB,GAAiB2B,EAAM6gB,WAAY,KAAM,CAAC7gB,EAAMigB,gBACpEjgB,EAAM1rD,GAAKtuC,EAAc,MAAO,CAAEuuC,UAAW,cAAgByrE,IACtDhgB,EAuJX,OAjKAtd,GAAUq9B,EAAS5b,GAYnB4b,EAAQ5rG,UAAU/M,QAAU,WACxB+8F,EAAOhwF,UAAU/M,QAAQ8L,KAAKxZ,MAC9BA,KAAKumH,cAAcrhB,WACnBpsB,EAAc94E,KAAK46C,KAEvByrE,EAAQ5rG,UAAU3a,OAAS,SAAU6K,GACjC3K,KAAKumH,cAAc57G,EAAMwqC,QACzBn1C,KAAK0mH,aAAa/7G,EAAMlH,OACxBzD,KAAK4mH,oBAAoBj8G,EAAMy8G,cAC/BpnH,KAAK8mH,aAAan8G,EAAM08G,gBACxBrnH,KAAKgnH,YAAYr8G,EAAM28G,eACvBtnH,KAAKknH,YAAYv8G,EAAM48G,gBAE3BlB,EAAQ5rG,UAAU+rG,aAAe,SAAUrxE,GACvC,IAAIyF,EAAK56C,KAAK46C,GACd56C,KAAKwnH,iBAAmB,GACxB1vC,EAAgBl9B,EAAI56C,KAAKynH,cAAc,OAAQtyE,EAAOhlB,OACtD2nD,EAAgBl9B,EAAI56C,KAAKynH,cAAc,SAAUtyE,EAAOjN,SACxD4vC,EAAgBl9B,EAAI56C,KAAKynH,cAAc,QAAStyE,EAAO9kB,SAE3Dg2F,EAAQ5rG,UAAUgsG,eAAiB,WAC/BzmH,KAAK46C,GAAGi9B,UAAY,IAExBwuC,EAAQ5rG,UAAUgtG,cAAgB,SAAUj+E,EAAUk+E,GAClD,IAAIphB,EAAQtmG,KACRkiF,EAAKliF,KAAKu0B,QAAS80E,EAAQnnB,EAAGmnB,MAAOje,EAAWlJ,EAAGkJ,SACnDq6B,EAAiBr6B,EAASq6B,eAC1BkC,EAAYv8B,EAASu8B,UACrBC,EAAYt7G,EAAc,MAAO,CAAEuuC,UAAW,MAAQrR,IACtDq+E,EAAwBpC,EAAe/iH,SAASolH,eAAiB,GACjEC,EAA8BtC,EAAe3K,UAAUzB,YAAc,GACrE2O,EAAqBvC,EAAe/iH,SAAS22G,YAAc,GAqF/D,OApFIqO,GACAA,EAAUt0G,MAAM,KAAKnO,SAAQ,SAAUgjH,EAAgBvvG,GACnD,IAEIwvG,EAFAC,EAAgB,GAChBC,GAAgB,EAmEpB,GAjEAH,EAAe70G,MAAM,KAAKnO,SAAQ,SAAUupG,EAAYxiE,GACpD,IAAI+iE,EACAsQ,EACAgJ,EACAC,EACAjP,EACAkP,EACAC,EACAC,EACAC,EACe,UAAfla,GACA2Z,EAAc76G,KAAKyqE,EAAc,oBACjCqwC,GAAgB,KAGXrZ,EAAoB8Y,EAAsBrZ,KAC3C6Z,EAAc,SAAU7qC,GAChBuxB,EAAkB4Z,OAClB5Z,EAAkB4Z,MAAMnvG,KAAKivG,EAAUjrC,KAG9C8qC,EAAajf,EAAMyF,yBAAyBC,MACxCuZ,EAAajf,EAAMuF,aAAaJ,MAChC6K,EAAatK,EAAkBxjE,QAE9B8zE,EAAWsI,EAAUnZ,KAC3BlI,EAAMkhB,iBAAiBl6G,KAAKkhG,GAC5B6Z,EAAc,WACVj9B,EAASw9B,WAAWpa,KAEvB6K,EAAagG,EAAS8G,sBAClBmC,EAAajf,EAAMuF,aAAaJ,MAChC6K,EAAagG,EAAS+G,oBAEtBh7B,EAASojB,KACd6Z,EAAc,WACVj9B,EAASojB,OAEZ6K,EAAa0O,EAA4BvZ,MACrC8Z,EAAajf,EAAMuF,aAAaJ,MAChC6K,EAAa2O,EAAmBxZ,KAGrC6Z,IACAG,EAAgB,CACZ,MAAQha,EAAa,UACrBnF,EAAMK,SAAS,WAEf2P,GACAkP,EAAkBxmB,GAAWsX,GAC7BqP,EAAiB,IAEZJ,IACLC,EAAkB,gBAAkBD,EAAa,YACjDI,EAAiB,gBAAkBla,EAAa,KAEpDia,EAAW1wC,EACX,gCAAkCywC,EAAch0G,KAAK,KAAO,IACxDk0G,EACA,IAAMH,EAAkB,aAC5BE,EAAS3uE,iBAAiB,QAASuuE,GACnCF,EAAc76G,KAAKm7G,QAI3BN,EAAcz8G,OAAS,EAAG,CAC1Bw8G,EAAUn9E,SAASz+B,cAAc,OACjC,IAAIu8G,EAAuBxf,EAAMK,SAAS,eACtC0e,GAAiBS,GACjBX,EAAQnsE,UAAUC,IAAI6sE,GAE1B/wC,EAAgBowC,EAASC,GACzBP,EAAU38E,YAAYi9E,QAGtBpwC,EAAgB8vC,EAAWO,MAIhCP,GAEXvB,EAAQ5rG,UAAUssG,YAAc,SAAUM,GACtCrnH,KAAK8oH,oBAAoB,QAASzB,IAEtChB,EAAQ5rG,UAAUwsG,WAAa,SAAUK,GACrCtnH,KAAK8oH,oBAAoB,OAAQxB,IAErCjB,EAAQ5rG,UAAU0sG,WAAa,SAAUI,GACrCvnH,KAAK8oH,oBAAoB,OAAQvB,IAErClB,EAAQ5rG,UAAUksG,YAAc,SAAUp7E,GACtCouC,EAAa35E,KAAK46C,GAAI,MAAM31C,SAAQ,SAAU8jH,GAC1CA,EAAQC,UAAYz9E,MAG5B86E,EAAQ5rG,UAAUosG,mBAAqB,SAAUrY,GAC7C,IAAInF,EAAQrpG,KAAKu0B,QAAQ80E,MACrBxuD,EAAYwuD,EAAMK,SAAS,gBAC/B/vB,EAAa35E,KAAK46C,GAAI,UAAU31C,SAAQ,SAAUwjH,GAC1Cja,GAAcia,EAAS1sE,UAAUu9B,SAAS,MAAQk1B,EAAa,WAC/Dia,EAAS1sE,UAAUC,IAAInB,GAGvB4tE,EAAS1sE,UAAUG,OAAOrB,OAItCwrE,EAAQ5rG,UAAUquG,oBAAsB,SAAUta,EAAYya,GAC1DtvC,EAAa35E,KAAK46C,GAAI,OAAS4zD,EAAa,WAAWvpG,SAAQ,SAAUwjH,GACrEA,EAASS,UAAYD,MAGtB5C,EAlKiB,CAmK1B/W,IAEE6Z,GAAmC,SAAU1e,GAE7C,SAAS0e,EAAkBvuE,GACvB,IAAI0rD,EAAQmE,EAAOjxF,KAAKxZ,OAASA,KAWjC,OAVAsmG,EAAM8iB,aAAe,GACrB9iB,EAAM+iB,eAAiB1kB,GAAiB2B,EAAMgjB,gBAAiBhjB,EAAMijB,mBACrEjjB,EAAMkjB,eAAiB7kB,GAAiB2B,EAAMmjB,gBAAiBnjB,EAAMojB,kBAAmB,CAACpjB,EAAM+iB,iBAC/F/iB,EAAMqjB,sBAAwBv6B,GAAQu6B,IACtCrjB,EAAMsjB,0BAA4Bx6B,GAAQw6B,IAC1CtjB,EAAM1rD,GAAKA,EACX0rD,EAAMujB,aAAez6B,GAAQy6B,IAC7BvjB,EAAM/B,mBAAqBnV,IAAQ,SAAUh9E,GACzC,OAAOmyF,GAAmBnyF,EAAOk0F,EAAM/xE,QAAQ62D,aAE5Ckb,EAkNX,OA/NAtd,GAAUmgC,EAAmB1e,GAe7B0e,EAAkB1uG,UAAU3a,OAAS,SAAU6K,EAAO4pB,GAClDv0B,KAAK8pH,eACL,IAAIrmH,EAAQzD,KAAK6pH,aAAal/G,EAAMqyF,YAAaryF,EAAM00G,SAAS5xG,SAChEzN,KAAKqpH,eAAe90F,GACpBv0B,KAAKwpH,eAAe7+G,EAAM00G,SAAU10G,EAAMqyF,YAAaryF,EAAM80G,YAAah8G,GAC1EzD,KAAK+pH,WAAWp/G,EAAOlH,GACvBzD,KAAKgqH,aACLhqH,KAAKiqH,cAETd,EAAkB1uG,UAAU/M,QAAU,WAC9B1N,KAAK+2G,QACL/2G,KAAK+2G,OAAOrpG,UAEZ1N,KAAKwhD,QACLxhD,KAAKwhD,OAAO9zC,UAEhB1N,KAAKqpH,eAAenkB,WACpBuF,EAAOhwF,UAAU/M,QAAQ8L,KAAKxZ,OAElCmpH,EAAkB1uG,UAAU6uG,gBAAkB,SAAU/0F,GACpDv0B,KAAKkqH,mBAAmB31F,GACxB+jD,EAAiBt4E,KAAK46C,GAAI56C,KAAKmqH,UAAY79G,EAAc,MAAO,CAAEuuC,UAAW,uBAE7E,IADA,IAAIuwC,EAAW72D,EAAQ62D,SACdpE,EAAK,EAAG9E,EAAKkJ,EAASiB,aAAaC,MAAMwlB,uBAAwB9qB,EAAK9E,EAAGx2E,OAAQs7E,IAAM,CAC5F,IAAIojC,EAAsBloC,EAAG8E,GAC7BojC,EAAoBpqH,KAAKmqH,UAAW/+B,KAG5C+9B,EAAkB1uG,UAAU8uG,kBAAoB,WAExCvpH,KAAK62B,OACL72B,KAAKqqH,YAAcrqH,KAAK62B,KAAKyzF,cAC7BtqH,KAAK62B,KAAKnpB,UACV1N,KAAK62B,KAAO,MAEhBiiD,EAAc94E,KAAKmqH,WACnBnqH,KAAKuqH,sBAETpB,EAAkB1uG,UAAU8vG,mBAAqB,WAE7C,IADA,IAAIxuE,EAAY/7C,KAAK46C,GAAGmB,UACfirC,EAAK,EAAG9E,EAAKliF,KAAKopH,aAAcpiC,EAAK9E,EAAGx2E,OAAQs7E,IAAM,CAC3D,IAAInsC,EAAYqnC,EAAG8E,GACnBjrC,EAAUG,OAAOrB,GAErB76C,KAAKopH,aAAe,IAExBD,EAAkB1uG,UAAUyvG,mBAAqB,SAAU31F,GACvDv0B,KAAKuqH,qBACL,IAAIlhB,EAAQ90E,EAAQ80E,MAAO57F,EAAU8mB,EAAQ9mB,QAC7CzN,KAAKopH,aAAe,CAChB,KACA,MAAQ37G,EAAQ0hG,IAChB9F,EAAMK,SAAS,WAGnB,IADA,IAAI3tD,EAAY/7C,KAAK46C,GAAGmB,UACfirC,EAAK,EAAG9E,EAAKliF,KAAKopH,aAAcpiC,EAAK9E,EAAGx2E,OAAQs7E,IAAM,CAC3D,IAAInsC,EAAYqnC,EAAG8E,GACnBjrC,EAAUC,IAAInB,KAGtBsuE,EAAkB1uG,UAAUgvG,gBAAkB,SAAUpK,EAAUriB,EAAayiB,EAAah8G,GACxF,IAAIy+E,EAAKliF,KAAMu0B,EAAU2tD,EAAG3tD,QAASwiF,EAAS70B,EAAG60B,OAAQv1D,EAAS0gC,EAAG1gC,OACjE/zC,EAAU8mB,EAAQ9mB,QAAS29E,EAAW72D,EAAQ62D,SAC9Co/B,EAAe/8G,EAAQspG,OACvB0T,EAAeh9G,EAAQ+zC,OACvBkpE,EAAuB1qH,KAAK2K,MAAM+/G,qBAClCviH,EAAMijF,EAASqe,SACfkhB,EAAYD,EAAqBtf,MAAMjjG,GACvCyiH,EAAWF,EAAqBnL,UAAUviB,EAAayiB,GACvDoL,EAAWH,EAAqB7K,UAAU7iB,EAAayiB,GACvDqL,EAAe,CACfrnH,MAAOA,EACP2jH,aAAc/H,EAASn9G,KACvBmlH,eAAgBsD,EAAU3kG,UAAYipE,GAAoB+N,EAAYwM,aAAcrhG,GACpFm/G,cAAesD,EAAS5kG,QACxBuhG,cAAesD,EAAS7kG,SAExBwkG,GACKzT,IACDA,EAAS/2G,KAAK+2G,OAAS,IAAIsP,GAAQ,qBACnC/tC,EAAiBt4E,KAAK46C,GAAIm8D,EAAOn8D,KAErCm8D,EAAOpH,aAAazmB,GAAS,CAAE/zC,OAAQq1E,GAAgBM,GAAev2F,IAEjEwiF,IACLA,EAAOrpG,UACPqpG,EAAS/2G,KAAK+2G,OAAS,MAEvB0T,GACKjpE,IACDA,EAASxhD,KAAKwhD,OAAS,IAAI6kE,GAAQ,qBACnCvuC,EAAgB93E,KAAK46C,GAAI4G,EAAO5G,KAEpC4G,EAAOmuD,aAAazmB,GAAS,CAAE/zC,OAAQs1E,GAAgBK,GAAev2F,IAEjEitB,IACLA,EAAO9zC,UACP8zC,EAASxhD,KAAKwhD,OAAS,OAG/B2nE,EAAkB1uG,UAAUivG,kBAAoB,WACxC1pH,KAAK+2G,SACL/2G,KAAK+2G,OAAOrpG,UACZ1N,KAAK+2G,OAAS,MAEd/2G,KAAKwhD,SACLxhD,KAAKwhD,OAAO9zC,UACZ1N,KAAKwhD,OAAS,OAGtB2nE,EAAkB1uG,UAAUsvG,WAAa,SAAUp/G,EAAOlH,GACtD,IAAIozB,EAAO72B,KAAK62B,KACZqrD,EAAKliF,KAAKu0B,QAAS62D,EAAWlJ,EAAGkJ,SAAU39E,EAAUy0E,EAAGz0E,QACxD4xG,EAAW10G,EAAM00G,SAAUqL,EAAuB//G,EAAM+/G,qBACvD7zF,GAAQA,EAAKwoF,WAAaA,IACvBxoF,GACAA,EAAKnpB,UAETmpB,EAAO72B,KAAK62B,KAAO,IAAIwoF,EAAS,SAASA,EAAUr/G,KAAKmqH,WACpDnqH,KAAKqqH,cACLxzF,EAAKk0F,UAAU/qH,KAAKqqH,aAAa,GACjCrqH,KAAKqqH,YAAc,OAG3BxzF,EAAKpzB,MAAQA,EAab,IAZA,IAAIunH,EAAY,CACZN,qBAAsBA,EACtB1tB,YAAaryF,EAAMqyF,YACnBwB,cAAex+F,KAAKukG,mBAAmB8a,EAAS5xG,QAAQ+wF,eACxDlT,WAAY3gF,EAAM2gF,WAClBmN,aAAc9tF,EAAM8tF,aACpB6F,cAAe3zF,EAAM2zF,cACrBG,eAAgB9zF,EAAM8zF,eACtBL,UAAWzzF,EAAMyzF,UACjBM,YAAa/zF,EAAM+zF,aAEnBlD,EAAex7F,KAAK4pH,0BAA0Bx+B,EAASiB,aAAaC,MAAMqlB,uBACrE3qB,EAAK,EAAG0U,EAAiBF,EAAcxU,EAAK0U,EAAehwF,OAAQs7E,IAAM,CAC9E,IAAI2U,EAAcD,EAAe1U,GACjCkC,GAAS8hC,EAAWrvB,EAAYsvB,UAAUD,EAAW3L,EAAU10G,EAAO8C,IAE1EopB,EAAK84E,aAAaqb,EAAWhrH,KAAK2pH,sBAAsB3pH,KAAKu0B,QAAS8qF,EAAUxoF,KAIpFsyF,EAAkB1uG,UAAUuvG,WAAa,SAAUkB,QAC9B,IAAbA,IAAuBA,GAAW,GACtC,IAAIr0F,EAAO72B,KAAK62B,KACXA,KAGDq0F,GAAiC,MAArBlrH,KAAKmrH,eACjBnrH,KAAKorH,oBAETv0F,EAAKmzF,WAAWkB,EAAUlrH,KAAKqrH,WAAYrrH,KAAKmrH,cAChDt0F,EAAKy0F,qBACLz0F,EAAK00F,UAAUL,KAEnB/B,EAAkB1uG,UAAU2wG,kBAAoB,WAC5C,IAAIhgC,EAAWprF,KAAKu0B,QAAQ62D,SACxBogC,EAAcpgC,EAASiC,IAAI,UAC3Bo+B,EAAqBrgC,EAASiC,IAAI,iBAEtC,GADArtF,KAAKmrH,aAA+B,SAAhBK,GAAiD,SAAvBC,EACZ,kBAAvBA,EACPzrH,KAAKqrH,WAAaI,OAEjB,GAAkC,oBAAvBA,EACZzrH,KAAKqrH,WAAaI,SAEjB,GAA2B,kBAAhBD,EACZxrH,KAAKqrH,WAAaG,EAAcxrH,KAAK0rH,2BAEpC,GAA2B,oBAAhBF,EACZxrH,KAAKqrH,WAAaG,IAAgBxrH,KAAK0rH,2BAEtC,GAAoB,WAAhBF,EAA0B,CAC/B,IAAIG,EAAW3rH,KAAK46C,GAAG0B,WACvBt8C,KAAKqrH,WAAaM,EAASn4D,wBAAwB5mD,OAAS5M,KAAK0rH,2BAGjE1rH,KAAKqrH,WAAan6G,KAAKiQ,MAAMnhB,KAAKmqH,UAAU32D,wBAAwB7mD,MAChEuE,KAAKmN,IAAI+sE,EAASiC,IAAI,eAAgB,MAGlD87B,EAAkB1uG,UAAUixG,oBAAsB,WAC9C,IAAI9+G,EAAS,EAOb,OANI5M,KAAK+2G,SACLnqG,GAAUmwE,EAAwB/8E,KAAK+2G,OAAOn8D,KAE9C56C,KAAKwhD,SACL50C,GAAUmwE,EAAwB/8E,KAAKwhD,OAAO5G,KAE3ChuC,GAIXu8G,EAAkB1uG,UAAUqvG,aAAe,WACvClyC,EAAW53E,KAAK46C,GAAI,CAChBhuC,OAAQ5M,KAAK46C,GAAG4Y,wBAAwB5mD,OACxCwuE,SAAU,YAGlB+tC,EAAkB1uG,UAAUwvG,WAAa,WACrCryC,EAAW53E,KAAK46C,GAAI,CAChBhuC,OAAQ,GACRwuE,SAAU,MAGX+tC,EAhO2B,CAiOpC7Z,IAIF,SAASua,GAAa7sB,EAAa4uB,GAC/B,IAAI1iF,EAQJ,OALIA,EADA,iBAAiBz2B,KAAKuqF,EAAY2iB,kBAC1B3iB,EAAYwM,aAGZxM,EAAYI,YAEjBp9F,KAAKu0B,QAAQm0D,QAAQoI,YAAY5nD,EAAMtS,MAAOsS,EAAMzC,IAAK6tD,GAAgBs3B,EAAYC,aAAeC,GAAmB9uB,GAAc4uB,EAAYhV,qBAAsB,CAAEsG,eAAgBlgB,EAAYijB,gBAIhN,SAAS6L,GAAmB9uB,GACxB,IAAI2iB,EAAmB3iB,EAAY2iB,iBACnC,GAAyB,SAArBA,EACA,MAAO,CAAEl0C,KAAM,WAEd,GAAyB,UAArBk0C,EACL,MAAO,CAAEl0C,KAAM,UAAWF,MAAO,QAGjC,IAAIkU,EAAOG,GAAcod,EAAYwM,aAAa5yE,MAAOomE,EAAYwM,aAAa/iE,KAClF,OAAa,OAATg5C,GAAiBA,EAAO,EAEjB,CAAEhU,KAAM,UAAWF,MAAO,QAASF,IAAK,WAIxC,CAAEI,KAAM,UAAWF,MAAO,OAAQF,IAAK,WAK1D,SAASs+C,GAAsBp1F,EAAS8qF,EAAUxoF,GAC9C,OAAOtC,EAAQtI,OAAOozF,EAAS5xG,QAASopB,GAI5C,SAAS+yF,GAA0BmC,GAC/B,OAAOA,EAAW1oH,KAAI,SAAUo4G,GAC5B,OAAO,IAAIA,KAInB,IAAIplC,GAA6B,WAC7B,SAASA,EAAY0lC,GACjB/7G,KAAKgE,UAAY+3G,EAAS/3G,UAI9B,OAFAqyE,EAAY57D,UAAU/M,QAAU,aAEzB2oE,EANqB,GAQhC,SAAS21C,GAAyBhoH,EAAWoO,GACzC,MAAO,CACHpO,UAAWA,EACX42C,GAAIxoC,EAAMwoC,GACVqxE,eAAwC,MAAxB75G,EAAM65G,gBAAyB75G,EAAM65G,gBAG7D,SAASC,GAA2BnQ,GAChC,IAAI75B,EACJ,OAAOA,EAAK,GACRA,EAAG65B,EAAS/3G,UAAUomB,KAAO2xF,EAC7B75B,EAGR,IAAIiqC,GAA2B,GAK3BC,GAA+B,SAAU3hB,GAEzC,SAAS2hB,EAAcrQ,GACnB,IAAIzV,EAAQmE,EAAOjxF,KAAKxZ,KAAM+7G,IAAa/7G,KAC3CsmG,EAAM+lB,eAAiB,SAAU7uC,EAAIuzB,GACjC,IAAI/sG,EAAYsiG,EAAMtiG,UAClBk+E,EAAKl+E,EAAUuwB,QAAS62D,EAAWlJ,EAAGkJ,SAAUv0D,EAAOqrD,EAAGrrD,KAC1DmjE,EAAMM,GAASyW,GACnB,GAAI/W,GACAh2F,EAAU2sG,iBAAiBnzB,EAAGp0D,QAAS,CAGvC,IAAIkjG,EAAkB5yC,EAAe8D,EAAGp0D,OAAQ,eAC5CxkB,EAAM0nH,EAAkBA,EAAgBC,cAAc,WAAWnnH,KAAO,GAC5EgmF,EAAS6O,gBAAgB,aAAc,CACnC,CACIr/C,GAAIm2D,EACJx2D,MAAO,IAAIm7C,GAAS1xF,EAAUuwB,QAAQ62D,SAAU4O,EAAIE,WAAWpO,IAAKkO,EAAIE,WAAWlO,UACnFwgC,QAAShvC,EACT3mD,KAAMA,KAGVjyB,IAAQ44E,EAAGivC,mBACX3iG,OAAO4iG,SAAStnH,KAAOR,KAInC,IAAIZ,EAAY+3G,EAAS/3G,UAEzB,OADAsiG,EAAM54F,QAAU+vE,EAAiBz5E,EAAU42C,GAAI,QAAS52C,EAAUgtG,cAAgB,IAAMhtG,EAAUitG,cAAe3K,EAAM+lB,gBAChH/lB,EAEX,OA9BAtd,GAAUojC,EAAe3hB,GA8BlB2hB,EA/BuB,CAgChC/1C,IAMEs2C,GAA+B,SAAUliB,GAEzC,SAASkiB,EAAc5Q,GACnB,IAAIzV,EAAQmE,EAAOjxF,KAAKxZ,KAAM+7G,IAAa/7G,KAE3CsmG,EAAMsmB,oBAAsB,SAAUhyE,GAC9BA,IAAO0rD,EAAMumB,cACbvmB,EAAMwmB,eAAe,KAAMxmB,EAAMumB,eAGzCvmB,EAAMymB,eAAiB,SAAUvvC,EAAIuzB,GAC7BzW,GAASyW,KACTA,EAAMh1D,UAAUC,IAAI,yBACpBsqD,EAAMumB,aAAe9b,EACrBzK,EAAM0mB,aAAa,kBAAmBxvC,EAAIuzB,KAGlDzK,EAAMwmB,eAAiB,SAAUtvC,EAAIuzB,GAC7BzK,EAAMumB,eACN9b,EAAMh1D,UAAUG,OAAO,yBACvBoqD,EAAMumB,aAAe,KACrBvmB,EAAM0mB,aAAa,kBAAmBxvC,EAAIuzB,KAGlD,IAAI/sG,EAAY+3G,EAAS/3G,UAIzB,OAHAsiG,EAAM2mB,qBAAuBpvC,EAAwB75E,EAAU42C,GAAI52C,EAAUgtG,cAAgB,IAAMhtG,EAAUitG,cAAe3K,EAAMymB,eAAgBzmB,EAAMwmB,gBAExJ9oH,EAAUuwB,QAAQ62D,SAAS7qF,GAAG,gBAAiB+lG,EAAMsmB,qBAC9CtmB,EAqBX,OAhDAtd,GAAU2jC,EAAeliB,GA6BzBkiB,EAAclyG,UAAU/M,QAAU,WAC9B1N,KAAKitH,uBACLjtH,KAAKgE,UAAUuwB,QAAQ62D,SAAS0f,IAAI,gBAAiB9qG,KAAK4sH,sBAE9DD,EAAclyG,UAAUuyG,aAAe,SAAUE,EAAc1vC,EAAIuzB,GAC/D,IAAI/sG,EAAYhE,KAAKgE,UACjBk+E,EAAKl+E,EAAUuwB,QAAS62D,EAAWlJ,EAAGkJ,SAAUv0D,EAAOqrD,EAAGrrD,KAC1DmjE,EAAMM,GAASyW,GACdvzB,IAAMx5E,EAAU2sG,iBAAiBnzB,EAAGp0D,SACrCgiE,EAAS6O,gBAAgBizB,EAAc,CACnC,CACItyE,GAAIm2D,EACJx2D,MAAO,IAAIm7C,GAAStK,EAAU4O,EAAIE,WAAWpO,IAAKkO,EAAIE,WAAWlO,UACjEwgC,QAAShvC,EACT3mD,KAAMA,MAKf81F,EAjDuB,CAkDhCt2C,IAEE82C,GAA+B,SAAU1iB,GAEzC,SAAS0iB,IACL,OAAkB,OAAX1iB,GAAmBA,EAAOnvF,MAAMtb,KAAMiZ,YAAcjZ,KAE/D,OAJAgpF,GAAUmkC,EAAe1iB,GAIlB0iB,EALuB,CAMhClf,IACFkf,GAAc1yG,UAAU6uF,QAAU,CAC9B8jB,OAAQ,cACRC,aAAc,mBACdC,cAAe,oBACfC,YAAa,kBACbC,OAAQ,8BACRC,aAAc,mBACdC,cAAe,mBACfC,eAAgB,oBAEhBC,UAAW,mBACXC,OAAQ,oBAERC,SAAU,qBAEdX,GAAc1yG,UAAUo0F,cAAgB,UACxCse,GAAc1yG,UAAUg0F,YAAc,CAClCsf,MAAO,YACPtvF,KAAM,uBACN8H,KAAM,wBACNkyE,SAAU,wBACVC,SAAU,0BAEdyU,GAAc1yG,UAAU2zF,mBAAqB,cAC7C+e,GAAc1yG,UAAUu0F,+BAAiC,OACzDme,GAAc1yG,UAAUk0F,mBAAqB,WAE7C,IAAIqf,GAA0B,WAC1B,SAASA,EAASpzE,EAAIkgE,GAClB,IAAIxU,EAAQtmG,KACZA,KAAK2pH,sBAAwBv6B,GAAQ6+B,IACrCjuH,KAAKy5G,gBAAkBrqB,GAAQqqB,IAC/Bz5G,KAAKm6G,YAAc/qB,GAAQ+qB,IAC3Bn6G,KAAKkuH,aAAe9+B,GAAQ8+B,IAC5BluH,KAAKmuH,WAAa/+B,GAAQ++B,IAC1BnuH,KAAKouH,uBAAyBh/B,GAAQpvF,KAAKquH,yBAC3CruH,KAAKsuH,qBAAuBl/B,GAAQpvF,KAAKuuH,uBACzCvuH,KAAKwuH,qBAAuBl/B,GAAck/B,GAAsBxjC,IAChEhrF,KAAKyuH,kBAAoBr/B,GAAQq/B,IACjCzuH,KAAK0uH,kBAAoB,GACzB1uH,KAAK2uH,YAAc,GACnB3uH,KAAK4uH,YAAa,EAElB5uH,KAAK6uH,eAAgB,EACrB7uH,KAAK8uH,aAAc,EACnB9uH,KAAK+uH,oBAAsB,EAC3B/uH,KAAKgvH,qBAAuB5/B,GAAQ4/B,IACpChvH,KAAKg7F,oBAAsB,GAC3Bh7F,KAAKivH,eAAgB,EACrBjvH,KAAKkvH,gBAAiB,EACtBlvH,KAAKmvH,iBAAkB,EACvBnvH,KAAK46C,GAAKA,EACV56C,KAAKylH,eAAiB,IAAI5K,GAAeC,GAAa,IACtD96G,KAAKqsF,aAAe,IAAIkmB,GAExBvyG,KAAK02G,gBAAgB12G,KAAKylH,eAAe/iH,SAASqK,SAAW,IAC7D/M,KAAKovH,cAAcpvH,KAAKylH,eAAe/iH,UACvC1C,KAAKi6F,gBAAgB,SACrBj6F,KAAKqvH,UACLrvH,KAAKiyG,qBAAuBjyG,KAAKqsF,aAAaC,MAAM2lB,qBAC/C5uG,KAAI,SAAUisH,GACf,OAAO,IAAIA,EAAyBhpB,MA6yB5C,OA1yBA0nB,EAASvzG,UAAUi8F,gBAAkB,SAAUsC,GAE3C,IADA,IAAIuW,EAAaxW,GAAiBC,GACzBhyB,EAAK,EAAGwoC,EAAeD,EAAYvoC,EAAKwoC,EAAa9jH,OAAQs7E,IAAM,CACxE,IAAIyoC,EAAYD,EAAaxoC,GAC7BhnF,KAAKqsF,aAAarwC,IAAIyzE,KAG9BrrH,OAAOsZ,eAAeswG,EAASvzG,UAAW,OAAQ,CAE9CpV,IAAK,WACD,OAAOrF,KAAKgE,UAAYhE,KAAKgE,UAAU6yB,KAAO,MAElD7b,YAAY,EACZD,cAAc,IAIlBizG,EAASvzG,UAAU3a,OAAS,WACnBE,KAAKgE,UAONhE,KAAK0vH,mBANL1vH,KAAKgE,UAAY,IAAImlH,GAAkBnpH,KAAK46C,IAC5C56C,KAAK2vH,qBAAuBpkC,KAC5BvrF,KAAK4vH,eACL5vH,KAAK6vH,kBAMb7B,EAASvzG,UAAU/M,QAAU,WACzB,GAAI1N,KAAKgE,UAAW,CAChBhE,KAAK8vH,iBACL9vH,KAAKgE,UAAU0J,UACf1N,KAAKgE,UAAY,KACjB,IAAK,IAAIgjF,EAAK,EAAG9E,EAAKliF,KAAKiyG,qBAAsBjrB,EAAK9E,EAAGx2E,OAAQs7E,IAAM,CACnE,IAAIkX,EAAchc,EAAG8E,GACrBkX,EAAYxwF,UAEhB1N,KAAKi6F,gBAAgB,gBAK7B+zB,EAASvzG,UAAUm1G,aAAe,WAC9B,IAAItpB,EAAQtmG,KAEZA,KAAK+vH,sBAAwBtyC,EAAiBz9E,KAAK46C,GAAI,QAAS,gBAAgB,SAAU4iC,EAAIwyC,GAC1F,IAAI3nB,EAAc2nB,EAAS12E,aAAa,aACxC+uD,EAAcA,EAAcO,KAAKhzC,MAAMyyC,GAAe,GACtD,IAAI3f,EAAU4d,EAAM5d,QAChBq6B,EAAar6B,EAAQuF,aAAaoa,EAAYh6B,MAC9C2zC,EAAW3Z,EAAYnmG,KAEvB+tH,EAAe3pB,EAAM4pB,QAAQ,UAAY1pC,GAAsBw7B,GAAY,SACnD,oBAAjBiO,EACPA,EAAavnC,EAAQwP,OAAO6qB,GAAavlC,IAGb,kBAAjByyC,IACPjO,EAAWiO,GAEf3pB,EAAM6pB,OAAOpN,EAAYf,OAG7BhiH,KAAKqtF,IAAI,uBACTvjE,OAAOgwB,iBAAiB,SAAU95C,KAAKowH,kBAAoBnpC,GAC3DjnF,KAAKqwH,aAAa90E,KAAKv7C,MAAOA,KAAKqtF,IAAI,wBAG/C2gC,EAASvzG,UAAUq1G,eAAiB,WAChC9vH,KAAK+vH,wBACD/vH,KAAKowH,oBACLtmG,OAAOqwB,oBAAoB,SAAUn6C,KAAKowH,mBAC1CpwH,KAAKowH,kBAAoB,OAKjCpC,EAASvzG,UAAU40G,QAAU,WACzB,IAAI/oB,EAAQtmG,KACZA,KAAK8C,MAAQ9C,KAAKswH,oBAClB,IAAIC,EAAavwH,KAAKqtF,IAAI,iBAAmB,GACzCmjC,EAAkBxwH,KAAKqtF,IAAI,UAC3BthE,EAAU,GACVykG,GACAD,EAAWh8G,QAAQi8G,GAEvB,IAAK,IAAIxpC,EAAK,EAAGypC,EAAeF,EAAYvpC,EAAKypC,EAAa/kH,OAAQs7E,IAAM,CACxE,IAAI0pC,EAAYD,EAAazpC,GACzB79D,EAASy0F,GAAiB8S,EAAW1wH,MACrCmpB,GACA4C,EAAQze,KAAK6b,GAGrBnpB,KAAK2wH,gBAAe,WAChBrqB,EAAMhR,SAAS,CAAEpzF,KAAM,SACvBokG,EAAMhR,SAAS,CAAEpzF,KAAM,oBAAqB6pB,QAASA,IACrDu6E,EAAMhR,SAAS,CACXpzF,KAAM,gBACN8/G,SAAU1b,EAAMjZ,IAAI,gBAAkBiZ,EAAMja,aAAaC,MAAMr9B,kBAI3E++D,EAASvzG,UAAU61G,kBAAoB,WACnC,MAAO,CACHtO,SAAU,KACVU,aAAc,EACd3nB,wBAAyB,EACzB0kB,YAAaz/G,KAAK4wH,iBAClB5zB,YAAa,KACb/E,aAAc,GACd3M,WAAYC,KACZ+S,cAAe,KACfG,eAAgB,GAChBL,UAAW,KACXM,YAAa,OAGrBsvB,EAASvzG,UAAU66E,SAAW,SAAUyH,GAEpC,GADA/8F,KAAK2uH,YAAYrhH,KAAKyvF,IACjB/8F,KAAK4uH,WAAY,CAClB5uH,KAAK4uH,YAAa,EAClB,IAAIiC,EAAW7wH,KAAK8C,MACpB,MAAO9C,KAAK2uH,YAAYjjH,OACpB1L,KAAK8C,MAAQ9C,KAAKmkD,OAAOnkD,KAAK8C,MAAO9C,KAAK2uH,YAAY91G,QAAS7Y,MAEnE,IAAI8wH,EAAW9wH,KAAK8C,MACpB9C,KAAK4uH,YAAa,GACbiC,EAASnO,cAAgBoO,EAASpO,aACnC1iH,KAAKi6F,gBAAgB,UAAW,EAAC,IAE5B42B,EAASnO,eAAiBoO,EAASpO,cACxC1iH,KAAKi6F,gBAAgB,UAAW,EAAC,IAErC,IAAIpjE,EAAO72B,KAAKgE,WAAahE,KAAKgE,UAAU6yB,KACxCg6F,EAASvlC,aAAewlC,EAASxlC,YAC7BulC,EAASvlC,aACTtrF,KAAKmvH,iBAAkB,GAG3B0B,EAAS7zB,cAAgB8zB,EAAS9zB,cAC9B6zB,EAAS7zB,aAAenmE,GACxB72B,KAAKi6F,gBAAgB,eAAgB,CACjC,CACIpjE,KAAMA,EACN+jB,GAAI/jB,EAAK+jB,MAIrB56C,KAAKkvH,gBAAiB,GAEtB2B,EAAS7O,WAAa8O,EAAS9O,WAC3B6O,EAAS7O,UAAYnrF,GACrB72B,KAAKi6F,gBAAgB,sBAAuB,CACxC,CACIpjE,KAAMA,EACN+jB,GAAI/jB,EAAK+jB,MAIrB56C,KAAKivH,eAAgB,GAEzBjvH,KAAK0vH,oBAGb1B,EAASvzG,UAAU0pC,OAAS,SAAUrhD,EAAOi6F,EAAQ3R,GACjD,OAAOjnC,GAAOrhD,EAAOi6F,EAAQ3R,IAIjC4iC,EAASvzG,UAAUi1G,gBAAkB,WACjC1vH,KAAK6uH,eAAgB,EACrB7uH,KAAK+wH,mBAET/C,EAASvzG,UAAUu2G,YAAc,WACzBhxH,KAAKgE,WACLhE,KAAK6uH,gBACJ7uH,KAAK+uH,sBACL/uH,KAAK8uH,aAEN9uH,KAAK6vH,iBAGb7B,EAASvzG,UAAUk2G,eAAiB,SAAU7qC,GAC1C9lF,KAAK+uH,sBACLjpC,IACA9lF,KAAK+uH,sBACD/uH,KAAK6uH,eACL7uH,KAAK0vH,mBAKb1B,EAASvzG,UAAUo1G,cAAgB,WAE/B7vH,KAAK6uH,eAAgB,EACrB7uH,KAAK8uH,aAAc,EACnB9uH,KAAKixH,kBACLjxH,KAAK8uH,aAAc,EAEf9uH,KAAK6uH,eACL7uH,KAAK+wH,mBAMb/C,EAASvzG,UAAUw2G,gBAAkB,WACjC,IAAI/uC,EAAKliF,KAAM8C,EAAQo/E,EAAGp/E,MAAOkB,EAAYk+E,EAAGl+E,UAC5Cg+G,EAAWl/G,EAAMk/G,SACjB3C,EAAWr/G,KAAK2nH,UAAU3F,GAC9B,IAAK3C,EACD,MAAM,IAAIzxG,MAAM,cAAiBo0G,EAAW,kBAIhD,IAAI2N,EAAuB3vH,KAAK2vH,qBAC3B7sH,EAAMi4F,0BAA4B/6F,KAAKqtF,IAAI,6BACxCrtF,KAAK2vH,qBACL7sH,EAAMwoF,WACV4lC,EAAoBlxH,KAAKouH,uBAAuB/O,EAAS5xG,SACzD0jH,EAAkBnxH,KAAKwuH,qBAAqB1rH,EAAMm1F,cAClDQ,EAAez4F,KAAKy4F,aAAez4F,KAAKyuH,kBAAkBkB,EAAqB9jC,KAAMqlC,EAAmBC,GAC5GntH,EAAU2rG,aAAazmB,GAAS,GAAIpmF,EAAO,CAAEu8G,SAAUA,EAAUqL,qBAAsB1qH,KAAK8iH,sBAAsBd,GAAWhlB,YAAal6F,EAAMk6F,YAAa1R,WAAYqkC,EAAsBl3B,aAAcA,EAAc6F,cAAex7F,EAAMw7F,cAAeG,eAAgB37F,EAAM27F,eAAgBL,UAAWt7F,EAAMs7F,UAAWM,YAAa57F,EAAM47F,cAAgB1+F,KAAK2pH,sBAAsB3pH,KAAKqpG,MAAOrpG,KAAK0oF,QAAS1oF,KAAKylH,eAAe/iH,WACza1C,KAAKivH,gBACLjvH,KAAKivH,eAAgB,EACrBjvH,KAAKi6F,gBAAgB,qBAAsB,CACvC,CACIpjE,KAAM7yB,EAAU6yB,KAChB+jB,GAAI52C,EAAU6yB,KAAK+jB,OAI3B56C,KAAKkvH,iBACLlvH,KAAKkvH,gBAAiB,EACtBlvH,KAAKi6F,gBAAgB,cAAe,CAChC,CACIpjE,KAAM7yB,EAAU6yB,KAChB+jB,GAAI52C,EAAU6yB,KAAK+jB,OAI3B56C,KAAKmvH,kBACLnvH,KAAKmvH,iBAAkB,GAE3BnvH,KAAKoxH,8BAITpD,EAASvzG,UAAU42G,UAAY,SAAUhiH,EAAMsQ,GAC3C,IAAIuiE,EACJliF,KAAKsxH,eAAepvC,EAAK,GAAIA,EAAG7yE,GAAQsQ,EAAKuiE,GAAK,IAAI,IAE1D8rC,EAASvzG,UAAU82G,UAAY,SAAUliH,GACrC,OAAOrP,KAAKylH,eAAe/iH,SAAS2M,IAExC2+G,EAASvzG,UAAU4yE,IAAM,SAAUh+E,GAC/B,OAAOrP,KAAKylH,eAAe/iH,SAAS2M,IAExC2+G,EAASvzG,UAAUy1G,QAAU,SAAU7gH,GACnC,OAAOrP,KAAKwxH,WAAWniH,IAE3B2+G,EAASvzG,UAAU+2G,SAAW,WAC1B,OAAOxxH,KAAK2nH,UAAU3nH,KAAK8C,MAAMk/G,UAAUv0G,SAK/CugH,EAASvzG,UAAU62G,cAAgB,SAAUrW,EAASjd,EAAUkd,EAAWrF,GACvE,IAAIvP,EAAQtmG,KACRyxH,EAAiBzxH,KAAKqsF,aAAaC,MAAMgmB,qBACzCof,EAAgB,GAChBC,EAAiB,GACjBr0B,EAAat9F,KAAK0oF,QAClBkpC,GAAkB,EAClBC,GAAc,EACdC,EAAsBlqC,QAAQoW,EAAStyF,QAC3C,IAAK,IAAIklF,KAAUqqB,EACXwW,EAAe7gC,GACf+gC,EAAe/gC,GAAUqqB,EAAQrqB,GAGjC8gC,EAAc9gC,GAAUqqB,EAAQrqB,GAGxC,IAAK,IAAI8C,KAAUg+B,EACX,uCAAuCj/G,KAAKihF,GAC5Cm+B,GAAc,EAET,8BAA8Bp/G,KAAKihF,KAExCo+B,GAAsB,EACP,aAAXp+B,IACAk+B,GAAkB,IAI9B5xH,KAAKylH,eAAevvB,OAAOw7B,EAAe1zB,EAAUkd,GAChD4W,GACA9xH,KAAKovH,cAAcpvH,KAAKylH,eAAe/iH,UAE3C1C,KAAK2wH,gBAAe,WAqBhB,GApBImB,GACIF,GACAtrB,EAAMhR,SAAS,CACXpzF,KAAM,kBACNo7F,WAAYA,IAOpBgJ,EAAMhR,SAAS,CACXpzF,KAAM,gBACN8/G,SAAU1b,EAAMxjG,MAAMk/G,YAGrB6P,GACLvrB,EAAM0jB,aAGNnU,EACA,IAAK,IAAIkc,KAAUJ,EACfF,EAAeM,GAAQJ,EAAeI,GAASzrB,EAAOuP,OAQtEmY,EAASvzG,UAAU20G,cAAgB,SAAU3hH,GACzC,IAAI64F,EAAQtmG,KACRgyH,EAAchyH,KAAKqsF,aAAaC,MACpCtsF,KAAKmsF,2BAA6BlK,GAAex0E,EAAQ0+E,4BACzDnsF,KAAKosF,0BAA4BnK,GAAex0E,EAAQ2+E,2BACxDpsF,KAAK+wH,gBAAkB/wH,KAAKgvH,qBAAqBvhH,EAAQwkH,eACzDjyH,KAAKqpG,MAAQrpG,KAAKmuH,WAAW1gH,GAC7B,IAAI4sG,EAAYr6G,KAAKy5G,gBAAgBhsG,EAAQ+pG,SAC7Cx3G,KAAKkyH,oBAAsB7X,EAAUh3G,IACrC,IAAI8uF,EAASnyF,KAAKm6G,YAAY1sG,EAAQ0kF,QAAUkoB,EAAUV,YAAaU,EAAUh3G,KACjFrD,KAAK0oF,QAAU1oF,KAAKkuH,aAAa/7B,EAAQ1kF,EAAQ6kF,SAAU0/B,EAAY5f,mBAAoB3kG,EAAQ2uG,SAAU3uG,EAAQypG,sBAAuBzpG,EAAQykF,UAAW8/B,EAAY79B,cAC3Kn0F,KAAKs/F,gBAAkBt/F,KAAKsuH,qBAAqB7gH,GAEjDzN,KAAK2nH,UAAYpC,GAAeyM,EAAYtgB,MAAO1xG,KAAKylH,gBAExDzlH,KAAK8iH,sBAAwBn4B,GAAQ3qF,KAAK2nH,WAAW,SAAUtI,GAC3D,OAAO,IAAIA,EAASr5G,MAAMyU,UAAU03G,0BAA0B9S,EAAU/Y,OAGhF0nB,EAASvzG,UAAU23G,wBAA0B,WACzC,OAAOhuH,OAAOie,KAAKriB,KAAKkyH,sBAE5BlE,EAASvzG,UAAU8zG,sBAAwB,SAAU8D,GACjD,OAAO7vB,GAAqB,SAAU6vB,EAASryH,OAEnDguH,EAASvzG,UAAU4zG,wBAA0B,SAAUgE,GAInD,OAHIA,EAAQhwB,WACRgwB,EAAUnpC,GAAS,GAAImpC,EAAS,CAAEC,eAAe,KAE9C9vB,GAAqB,QAAS6vB,EAASryH,OAIlDguH,EAASvzG,UAAUs/E,kBAAoB,SAAU1qF,GAC7C,OAAOrP,KAAKirG,YAAY57F,IACpBrP,KAAKqtF,IAAIh+E,IAEjB2+G,EAASvzG,UAAUw/E,gBAAkB,SAAU5qF,EAAM6R,GACjD,IAAIqxG,EAAavyH,KAAKqtF,IAAIh+E,GAE1B,GADArP,KAAKgrG,YAAY37F,EAAMrP,KAAMkhB,GACzBqxG,EACA,OAAOA,EAAWj3G,MAAMtb,KAAMkhB,IAGtC8sG,EAASvzG,UAAUqgF,2BAA6B,SAAUzrF,EAAM6R,GAC5D,IAAI85E,EAAsBh7F,KAAKg7F,qBAC9BA,EAAoB3rF,KAAU2rF,EAAoB3rF,GAAQ,KAAK/B,KAAK4T,IAEzE8sG,EAASvzG,UAAU22G,2BAA6B,WAC5C,IAAIp2B,EAAsBh7F,KAAKg7F,oBAC/B,IAAK,IAAIw3B,KAAUx3B,EACf,IAAK,IAAIhU,EAAK,EAAG9E,EAAK8Y,EAAoBw3B,GAASxrC,EAAK9E,EAAGx2E,OAAQs7E,IAAM,CACrE,IAAI9lE,EAAOghE,EAAG8E,GACdhnF,KAAKi6F,gBAAgBu4B,EAAQtxG,GAGrClhB,KAAKg7F,oBAAsB,IAK/BgzB,EAASvzG,UAAUg4G,gBAAkB,SAAUzQ,GAC3C,OAAOp6B,QAAQ5nF,KAAK2nH,UAAU3F,KAElCgM,EAASvzG,UAAUmuG,WAAa,SAAU5G,EAAU0Q,GAChD,IAAI3P,EAAa,KACb2P,IACIA,EAAY97F,OAAS87F,EAAYjsF,KACjCzmC,KAAKylH,eAAevvB,OAAO,CAAE5N,aAAcoqC,GAAe,IAC1D1yH,KAAKovH,cAAcpvH,KAAKylH,eAAe/iH,WAGvCqgH,EAAa/iH,KAAK0oF,QAAQuF,aAAaykC,IAG/C1yH,KAAK2yH,WACL3yH,KAAKs1F,SAAS,CACVpzF,KAAM,gBACN8/G,SAAUA,EACVe,WAAYA,KAMpBiL,EAASvzG,UAAU01G,OAAS,SAAUpN,EAAYf,GAC9C,IAAI4Q,EACJ5Q,EAAWA,GAAY,MACvB4Q,EAAO5yH,KAAK2nH,UAAU3F,IAClBhiH,KAAK6yH,gBAAgB7Q,GACzBhiH,KAAK2yH,WACDC,EACA5yH,KAAKs1F,SAAS,CACVpzF,KAAM,gBACN8/G,SAAU4Q,EAAK1wH,KACf6gH,WAAYA,IAIhB/iH,KAAKs1F,SAAS,CACVpzF,KAAM,WACN6gH,WAAYA,KAMxBiL,EAASvzG,UAAUo4G,gBAAkB,SAAUvvD,GAC3C,IAEI5qD,EACAk6G,EAHA5uH,EAAYhE,KAAKgE,UACjB8uH,EAAY,GAUhB,IAAK,IAAI9Q,KANLh+G,EAAU+yG,QACV+b,EAAUxlH,KAAKgO,MAAMw3G,EAAW9uH,EAAU+yG,OAAOyQ,kBAEjDxjH,EAAUw9C,QACVsxE,EAAUxlH,KAAKgO,MAAMw3G,EAAW9uH,EAAUw9C,OAAOgmE,kBAEhCxnH,KAAK2nH,UACtBmL,EAAUxlH,KAAK00G,GAEnB,IAAKtpG,EAAI,EAAGA,EAAIo6G,EAAUpnH,OAAQgN,IAE9B,GADAk6G,EAAO5yH,KAAK2nH,UAAUmL,EAAUp6G,IAC5Bk6G,GACIA,EAAK/M,aAAeviD,EACpB,OAAOsvD,GAOvB5E,EAASvzG,UAAUm2G,eAAiB,WAChC,IAAImC,EAAmB/yH,KAAKqtF,IAAI,eAEhC,OAAwB,MAApB0lC,EACO/yH,KAAK0oF,QAAQuF,aAAa8kC,GAG1B/yH,KAAKypG,UAGpBukB,EAASvzG,UAAUgkB,KAAO,WACtBz+B,KAAK2yH,WACL3yH,KAAKs1F,SAAS,CAAEpzF,KAAM,UAE1B8rH,EAASvzG,UAAU8rB,KAAO,WACtBvmC,KAAK2yH,WACL3yH,KAAKs1F,SAAS,CAAEpzF,KAAM,UAE1B8rH,EAASvzG,UAAUg+F,SAAW,WAC1Bz4G,KAAK2yH,WACL3yH,KAAKs1F,SAAS,CACVpzF,KAAM,WACN6gH,WAAY/iH,KAAK0oF,QAAQ+zB,SAASz8G,KAAK8C,MAAM28G,aAAc,MAGnEuO,EAASvzG,UAAUi+F,SAAW,WAC1B14G,KAAK2yH,WACL3yH,KAAKs1F,SAAS,CACVpzF,KAAM,WACN6gH,WAAY/iH,KAAK0oF,QAAQ+zB,SAASz8G,KAAK8C,MAAM28G,YAAa,MAGlEuO,EAASvzG,UAAU6+F,MAAQ,WACvBt5G,KAAK2yH,WACL3yH,KAAKs1F,SAAS,CACVpzF,KAAM,WACN6gH,WAAY/iH,KAAKypG,YAGzBukB,EAASvzG,UAAUu4G,SAAW,SAAUC,GACpCjzH,KAAK2yH,WACL3yH,KAAKs1F,SAAS,CACVpzF,KAAM,WACN6gH,WAAY/iH,KAAK0oF,QAAQuF,aAAaglC,MAG9CjF,EAASvzG,UAAUy4G,cAAgB,SAAU37B,GACzC,IAAIj5E,EAAQ2jE,GAAesV,GACvBj5E,IACAte,KAAK2yH,WACL3yH,KAAKs1F,SAAS,CACVpzF,KAAM,WACN6gH,WAAY/iH,KAAK0oF,QAAQ1sC,IAAIh8C,KAAK8C,MAAM28G,YAAanhG,OAKjE0vG,EAASvzG,UAAU6mE,QAAU,WACzB,OAAOthF,KAAK0oF,QAAQwP,OAAOl4F,KAAK8C,MAAM28G,cAI1CuO,EAASvzG,UAAU04G,WAAa,SAAUrxE,EAAGutB,GACzC,IAAIqZ,EAAU1oF,KAAK0oF,QACnB,OAAOA,EAAQ7yB,OAAO6yB,EAAQuF,aAAansC,GAAIwyC,GAAgBjlB,KAGnE2+C,EAASvzG,UAAUq2E,YAAc,SAAUhf,EAAIC,EAAIgqC,GAC/C,IAAIrzB,EAAU1oF,KAAK0oF,QACnB,OAAOA,EAAQoI,YAAYpI,EAAQuF,aAAanc,GAAK4W,EAAQuF,aAAalc,GAAKuiB,GAAgBynB,EAAU/7G,KAAKqtF,IAAI,0BAA2B0uB,IAEjJiS,EAASvzG,UAAUguF,UAAY,SAAU3mD,EAAG4mD,GACxC,IAAIhgB,EAAU1oF,KAAK0oF,QACnB,OAAOA,EAAQ+f,UAAU/f,EAAQuF,aAAansC,GAAI,CAAE4mD,SAAUA,KAIlEslB,EAASvzG,UAAU41G,aAAe,SAAU7yC,IACnCx9E,KAAKozH,wBACNpzH,KAAKgE,WACLw5E,EAAGp0D,SAAWU,SAEd9pB,KAAKozH,wBAAyB,EAC9BpzH,KAAKgqH,aACLhqH,KAAKi6F,gBAAgB,eAAgB,CAACj6F,KAAK62B,OAC3C72B,KAAKozH,wBAAyB,IAGtCpF,EAASvzG,UAAUuvG,WAAa,WACxBhqH,KAAKgE,WACLhE,KAAKgE,UAAUgmH,YAAW,IAKlCgE,EAASvzG,UAAU44G,6BAA+B,SAAUrvH,EAAWsvH,GACnE,IAAIvX,EAAWiQ,GAAyBhoH,EAAWsvH,GAC/CC,EAAuB,CACvBnH,GACAO,IAEA6G,EAAqBD,EAAqBjtG,OAAOtmB,KAAKqsF,aAAaC,MAAM0lB,uBACzEyhB,EAAeD,EAAmBnwH,KAAI,SAAUqwH,GAChD,OAAO,IAAIA,EAAiB3X,MAEhC/7G,KAAK0uH,kBAAkB1qH,EAAUomB,KAAOqpG,EACxCtH,GAAyBnoH,EAAUomB,KAAO2xF,GAE9CiS,EAASvzG,UAAUk5G,+BAAiC,SAAU3vH,GAC1D,IAAK,IAAIgjF,EAAK,EAAG9E,EAAKliF,KAAK0uH,kBAAkB1qH,EAAUomB,KAAM48D,EAAK9E,EAAGx2E,OAAQs7E,IAAM,CAC/E,IAAIttD,EAAWwoD,EAAG8E,GAClBttD,EAAShsB,iBAEN1N,KAAK0uH,kBAAkB1qH,EAAUomB,YACjC+hG,GAAyBnoH,EAAUomB,MAM9C4jG,EAASvzG,UAAUm5G,OAAS,SAAUC,EAAWC,GAC7C,IAAIC,EAGIA,EAFO,MAAXD,EACuB,MAAnBD,EAAUj9F,MACOi9F,EAGA,CACbj9F,MAAOi9F,EACPptF,IAAK,MAKI,CACb7P,MAAOi9F,EACPptF,IAAKqtF,GAGb,IAAI9yB,EAAY2iB,GAAcoQ,EAAgB/zH,KAAK0oF,QAASzG,GAAe,CAAExC,KAAM,KAE/EuhB,IACAhhG,KAAKs1F,SAAS,CAAEpzF,KAAM,eAAgB8+F,UAAWA,IACjDhhG,KAAKg0H,kBAAkBhzB,KAI/BgtB,EAASvzG,UAAUk4G,SAAW,SAAUsB,GAChCj0H,KAAK8C,MAAMw7F,gBACXt+F,KAAKs1F,SAAS,CAAEpzF,KAAM,mBACtBlC,KAAKk0H,oBAAoBD,KAGjCjG,EAASvzG,UAAUu5G,kBAAoB,SAAUhzB,EAAWizB,GACxD,IAAIhhB,EAAM/pB,GAAS,GAAIlpF,KAAK4gG,iBAAiBI,GAAY,CAAEwrB,QAASyH,EAAMA,EAAIE,UAAY,KAAMt9F,KAAM72B,KAAK62B,OAC3G72B,KAAKi6F,gBAAgB,SAAU,CAACgZ,KAEpC+a,EAASvzG,UAAUy5G,oBAAsB,SAAUD,GAC/Cj0H,KAAKi6F,gBAAgB,WAAY,CAC7B,CACIuyB,QAASyH,EAAMA,EAAIE,UAAY,KAC/Bt9F,KAAM72B,KAAK62B,SAKvBm3F,EAASvzG,UAAU25G,iBAAmB,SAAUltB,EAAUmtB,EAAOx9F,EAAM2mD,GACnE,IAAIy1B,EAAM/pB,GAAS,GAAIlpF,KAAKkkH,kBAAkBhd,GAAW,CAAEmtB,MAAOA,EAAO7H,QAAShvC,EAC9E3mD,KAAMA,IACV72B,KAAKi6F,gBAAgB,YAAa,CAACgZ,KAEvC+a,EAASvzG,UAAUypG,kBAAoB,SAAUhd,GAE7C,IADA,IAAIv8F,EAAQ,GACHq8E,EAAK,EAAG9E,EAAKliF,KAAKqsF,aAAaC,MAAMklB,oBAAqBxqB,EAAK9E,EAAGx2E,OAAQs7E,IAAM,CACrF,IAAIikC,EAAY/oC,EAAG8E,GACnBkC,GAASv+E,EAAOsgH,EAAU/jB,EAAUlnG,OAGxC,OADAkpF,GAASv+E,EAAOu5G,GAAkBhd,EAAUlnG,KAAK0oF,UAC1C/9E,GAEXqjH,EAASvzG,UAAUmmF,iBAAmB,SAAUsG,GAE5C,IADA,IAAIv8F,EAAQ,GACHq8E,EAAK,EAAG9E,EAAKliF,KAAKqsF,aAAaC,MAAMmlB,mBAAoBzqB,EAAK9E,EAAGx2E,OAAQs7E,IAAM,CACpF,IAAIikC,EAAY/oC,EAAG8E,GACnBkC,GAASv+E,EAAOsgH,EAAU/jB,EAAUlnG,OAGxC,OADAkpF,GAASv+E,EAAOi2F,GAAiBsG,EAAUlnG,KAAK0oF,UACzC/9E,GAKXqjH,EAASvzG,UAAUgvF,OAAS,WACxB,IAAIthG,EAAMnI,KAAKqtF,IAAI,OAInB,MAHmB,oBAARllF,IACPA,EAAMA,KAEC,MAAPA,EACOnI,KAAK0oF,QAAQ4zB,kBAEjBt8G,KAAK0oF,QAAQuF,aAAa9lF,IAMrC6lH,EAASvzG,UAAUoiF,mBAAqB,SAAUnT,EAAQlJ,GACtD,IAAI/5C,EAAM+5C,EAQV,OAPIkJ,GACAjjD,EAAM44C,GAAW54C,GACjBA,EAAMzmC,KAAK0oF,QAAQ1sC,IAAIvV,EAAKzmC,KAAKmsF,6BAGjC1lD,EAAMzmC,KAAK0oF,QAAQ1sC,IAAIvV,EAAKzmC,KAAKosF,2BAE9B3lD,GAIXunF,EAASvzG,UAAUkjC,SAAW,SAAUyrC,EAAYkrC,GAChD,GAAIlrC,aAAsBsM,GAAU,CAChC,IAAI5J,EAAM1C,EAAWwM,KACjB5J,EAAW5C,EAAWyM,UAQ1B,OANK71F,KAAK8C,MAAMwoF,WAAWO,KAAKC,EAAIC,QAChC/rF,KAAKs1F,SAAS,CACVpzF,KAAM,aACNopF,WAAYM,GAAkB,CAAEE,IAAKA,EAAKE,SAAUA,MAGrD5C,EAEX,IAAI+B,EACJ,GAAImpC,aAAuBl/B,GACvBjK,EAAWmpC,EAAYj/B,oBAAoBlK,cAE1C,GAAmB,MAAfmpC,EAAqB,CAC1B,IAAIC,EAAYv0H,KAAKw0H,mBAAmBF,GACxC,IAAKC,EAED,OADAlrG,QAAQwD,KAAK,2CAA6CynG,EAAc,KACjE,KAGPnpC,EAAWopC,EAAUl/B,oBAAoBlK,SAGjD,IAAIO,EAAQC,GAAWvC,EAAY+B,EAAUnrF,MAC7C,OAAI0rF,GACA1rF,KAAKs1F,SAAS,CACVpzF,KAAM,aACNopF,WAAYM,GAAkBF,KAE3B,IAAIgK,GAAS11F,KAAM0rF,EAAMI,IAAKJ,EAAMI,IAAI5B,aAAe,KAAOwB,EAAMM,WAExE,MAGXgiC,EAASvzG,UAAUg6G,aAAe,SAAU/nH,GACxC,IAAIw1E,EAAKliF,KAAK8C,MAAMwoF,WAAYO,EAAO3J,EAAG2J,KAAMthC,EAAY23B,EAAG33B,UAE/D,IAAK,IAAIwhC,KADTr/E,EAAKpH,OAAOoH,GACMm/E,EAAM,CACpB,IAAIC,EAAMD,EAAKE,GACf,GAAID,EAAI2J,WAAa/oF,EAAI,CACrB,GAAIo/E,EAAI5B,aACJ,OAAO,IAAIwL,GAAS11F,KAAM8rF,EAAK,MAG/B,IAAK,IAAIG,KAAc1hC,EAAW,CAC9B,IAAIyhC,EAAWzhC,EAAU0hC,GACzB,GAAID,EAASD,QAAUD,EAAIC,MACvB,OAAO,IAAI2J,GAAS11F,KAAM8rF,EAAKE,KAMnD,OAAO,MAEXgiC,EAASvzG,UAAUi6G,UAAY,WAC3B,IAAIxyC,EAAKliF,KAAK8C,MAAMwoF,WAAYO,EAAO3J,EAAG2J,KAAMthC,EAAY23B,EAAG33B,UAC3DoqE,EAAY,GAChB,IAAK,IAAIjoH,KAAM69C,EAAW,CACtB,IAAIyhC,EAAWzhC,EAAU79C,GACrBo/E,EAAMD,EAAKG,EAASD,OACxB4oC,EAAUrnH,KAAK,IAAIooF,GAAS11F,KAAM8rF,EAAKE,IAE3C,OAAO2oC,GAEX3G,EAASvzG,UAAUm6G,gBAAkB,WACjC50H,KAAKs1F,SAAS,CAAEpzF,KAAM,uBAE1B8rH,EAASvzG,UAAUo6G,eAAiB,WAChC70H,KAAKs1F,SAAS,CAAEpzF,KAAM,kBAI1B8rH,EAASvzG,UAAUq6G,gBAAkB,WACjC,IAAIrW,EAAaz+G,KAAK8C,MAAMm1F,aACxB88B,EAAa,GACjB,IAAK,IAAIC,KAAcvW,EACnBsW,EAAWznH,KAAK,IAAI8nF,GAAep1F,KAAMy+G,EAAWuW,KAExD,OAAOD,GAEX/G,EAASvzG,UAAU+5G,mBAAqB,SAAU9nH,GAC9C,IAAI+xG,EAAaz+G,KAAK8C,MAAMm1F,aAE5B,IAAK,IAAI9M,KADTz+E,EAAKpH,OAAOoH,GACS+xG,EACjB,GAAIA,EAAWtzB,GAAUsK,WAAa/oF,EAClC,OAAO,IAAI0oF,GAAep1F,KAAMy+G,EAAWtzB,IAGnD,OAAO,MAEX6iC,EAASvzG,UAAUg8F,eAAiB,SAAU6d,GAC1C,GAAIA,aAAuBl/B,GAQvB,OANKp1F,KAAK8C,MAAMm1F,aAAaq8B,EAAYj/B,oBAAoBlK,WACzDnrF,KAAKs1F,SAAS,CACVpzF,KAAM,oBACN6pB,QAAS,CAACuoG,EAAYj/B,uBAGvBi/B,EAEX,IAAInnC,EAAcywB,GAAiB0W,EAAat0H,MAChD,OAAImtF,GACAntF,KAAKs1F,SAAS,CAAEpzF,KAAM,oBAAqB6pB,QAAS,CAACohE,KAC9C,IAAIiI,GAAep1F,KAAMmtF,IAE7B,MAEX6gC,EAASvzG,UAAUw6G,sBAAwB,WACvCj1H,KAAKs1F,SAAS,CAAEpzF,KAAM,8BAE1B8rH,EAASvzG,UAAUy6G,cAAgB,WAC/Bl1H,KAAKs1F,SAAS,CAAEpzF,KAAM,yBAI1B8rH,EAASvzG,UAAU06G,aAAe,SAAUC,GACxC,IAAI78F,EAAW0pD,GAAemzC,GAC1B78F,GACAv4B,KAAKgE,UAAU6yB,KAAKw+F,iBAAiB98F,IAGtCy1F,EA/0BkB,GAo1B7B,SAASC,GAAwB5kB,EAAO3gB,EAASj7E,GAC7C,OAAO,IAAIyhG,GAAiBlvG,KAAMqpG,EAAO3gB,EAASj7E,EAAS,MAE/D,SAASygH,GAAa/7B,EAAQG,EAAU2pB,EAAmBG,EAAUlF,EAAuBhlB,EAAWiC,GACnG,OAAO,IAAI2nB,GAAQ,CACf7qB,eAAgB,UAChBqB,SAAUA,EACV2pB,kBAAmBA,EACnB9pB,OAAQA,EACR+kB,sBAAuBA,EACvBkF,SAAUA,EACVlqB,UAAWA,EACXiC,aAAcA,IAGtB,SAASg6B,GAAWjgB,GAChB,IAAIonB,EAAat1H,KAAKqsF,aAAaC,MAAM4lB,aAAahE,EAAgBwJ,cAAgByV,GACtF,OAAO,IAAImI,EAAWpnB,GAE1B,SAAS8gB,GAAqB9nC,GAC1B,IAAIpB,EAAO9lF,KAAKgxH,YAAYz1E,KAAKv7C,MAIjC,OAHY,MAARknF,IACApB,EAAOmB,GAASnB,EAAMoB,IAEnBpB,EAEX,SAAS0oC,GAAqBv2B,GAC1B,OAAOtN,GAAQsN,GAAc,SAAU9K,GACnC,OAAOA,EAAYkJ,MAG3B,SAASo4B,GAAkBl0B,EAAW22B,EAAmBC,GACrD,IAAI14B,EAAe,CAAE,GAAIy4B,GACzB,IAAK,IAAInlC,KAASwO,EAAW,CACzB,IAAIzO,EAAMyO,EAAUxO,GAChBD,EAAIX,UAAYgmC,EAAgBrlC,EAAIX,YACpCsN,EAAa1M,GAASolC,EAAgBrlC,EAAIX,WAGlD,OAAOsN,EA1CX+R,GAAaN,QAAQ8jB,IA6CrB,IAAIuH,GAAsB,SAAU9qB,GAEhC,SAAS8qB,EAAKlW,EAAUsM,GACpB,IAAIrlB,EAAQmE,EAAOjxF,KAAKxZ,KAAMsM,EAAc,MAAO,CAAEuuC,UAAW,cAAgBwkE,EAASn9G,KAAO,YAAelC,KAY/G,OAXAsmG,EAAMkvB,eAAiB7wB,GAAiB2B,EAAMmvB,gBAAiBnvB,EAAMovB,mBACrEpvB,EAAMqvB,uBAAyBhxB,GAAiB2B,EAAMsvB,oBAAqBtvB,EAAMuvB,sBAAuB,CAACvvB,EAAMkvB,iBAC/GlvB,EAAMwvB,uBAAyBnxB,GAAiB2B,EAAMyvB,wBAAyBzvB,EAAM0vB,0BAA2B,CAAC1vB,EAAMkvB,iBACvHlvB,EAAM2vB,gBAAkBtxB,GAAiB2B,EAAM4vB,aAAc5vB,EAAM6vB,eAAgB,CAAC7vB,EAAMkvB,iBAC1FlvB,EAAM8vB,wBAA0BzxB,GAAiB2B,EAAM+vB,yBAA0B/vB,EAAMgwB,2BAA4B,CAAChwB,EAAM2vB,kBAC1H3vB,EAAMiwB,mBAAqB5xB,GAAiB2B,EAAMkwB,oBAAqBlwB,EAAMmwB,sBAAuB,CAACnwB,EAAMkvB,iBAC3GlvB,EAAMowB,qBAAuB/xB,GAAiB2B,EAAMqwB,sBAAuBrwB,EAAMswB,wBAAyB,CAACtwB,EAAMkvB,iBACjHlvB,EAAM+Y,SAAWA,EACjB/Y,EAAMpkG,KAAOm9G,EAASn9G,KACtBypH,EAAS1gF,YAAYq7D,EAAM1rD,IAC3B0rD,EAAMlvE,aACCkvE,EAqRX,OAnSAtd,GAAUusC,EAAM9qB,GAgBhB8qB,EAAK96G,UAAU2c,WAAa,aAE5BhzB,OAAOsZ,eAAe63G,EAAK96G,UAAW,cAAe,CAGjDpV,IAAK,WACD,OAAOrF,KAAKu0B,QAAQm0D,QAAQwP,OAAOl4F,KAAK2K,MAAMqyF,YAAYI,YAAYxmE,QAE1E5b,YAAY,EACZD,cAAc,IAElB3W,OAAOsZ,eAAe63G,EAAK96G,UAAW,YAAa,CAC/CpV,IAAK,WACD,OAAOrF,KAAKu0B,QAAQm0D,QAAQwP,OAAOl4F,KAAK2K,MAAMqyF,YAAYI,YAAY32D,MAE1EzrB,YAAY,EACZD,cAAc,IAElB3W,OAAOsZ,eAAe63G,EAAK96G,UAAW,eAAgB,CAClDpV,IAAK,WACD,OAAOrF,KAAKu0B,QAAQm0D,QAAQwP,OAAOl4F,KAAK2K,MAAMqyF,YAAYwM,aAAa5yE,QAE3E5b,YAAY,EACZD,cAAc,IAElB3W,OAAOsZ,eAAe63G,EAAK96G,UAAW,aAAc,CAChDpV,IAAK,WACD,OAAOrF,KAAKu0B,QAAQm0D,QAAQwP,OAAOl4F,KAAK2K,MAAMqyF,YAAYwM,aAAa/iE,MAE3EzrB,YAAY,EACZD,cAAc,IAIlBw6G,EAAK96G,UAAU3a,OAAS,SAAU6K,EAAO4pB,GACrCv0B,KAAKw1H,eAAe7qH,EAAMqyF,aAC1Bh9F,KAAK21H,uBAAuBhrH,EAAM6zF,eAClCx+F,KAAK81H,uBAAuBnrH,EAAM2zF,eAClCt+F,KAAKi2H,gBAAgBtrH,EAAM2gF,YAC3BtrF,KAAKo2H,wBAAwBzrH,EAAM8zF,gBACnCz+F,KAAKu2H,mBAAmB5rH,EAAMyzF,WAC9Bp+F,KAAK02H,qBAAqB/rH,EAAM+zF,cAEpC62B,EAAK96G,UAAU6gD,aAAe,WAC1Bt7D,KAAK+qH,UAAU/qH,KAAKsqH,gBAExBiL,EAAK96G,UAAU/M,QAAU,WACrB+8F,EAAOhwF,UAAU/M,QAAQ8L,KAAKxZ,MAC9BA,KAAKw1H,eAAetwB,YAIxBqwB,EAAK96G,UAAUuvG,WAAa,SAAUkB,EAAUG,EAAYwL,GACxD,IAAIzrC,EAAWprF,KAAKu0B,QAAQ62D,SACxB8/B,GACAlrH,KAAK+qH,UAAU/qH,KAAKsqH,gBAEpBY,GACA9/B,EAAS6jC,eACT7jC,EAAS8jC,gBACT9jC,EAAS+jC,kBAGTnvH,KAAK82H,eAAe5L,EAAUG,EAAYwL,IAIlDtB,EAAK96G,UAAUq8G,eAAiB,SAAU5L,EAAUG,EAAYwL,KAIhEtB,EAAK96G,UAAUg7G,gBAAkB,SAAUz4B,GACvCh9F,KAAK+2H,YAAY/5B,GACjBh9F,KAAK+qH,UAAU,CACXxyF,SAAU0pD,GAAejiF,KAAKu0B,QAAQ9mB,QAAQ0pG,eAGtDoe,EAAK96G,UAAUi7G,kBAAoB,WAC/B11H,KAAKg3H,mBACLh3H,KAAKi3H,iBAET1B,EAAK96G,UAAUs8G,YAAc,SAAU/5B,KACvCu4B,EAAK96G,UAAUw8G,cAAgB,aAG/B1B,EAAK96G,UAAUm7G,oBAAsB,SAAUp3B,KAC/C+2B,EAAK96G,UAAUo7G,sBAAwB,aAGvCN,EAAK96G,UAAUs7G,wBAA0B,SAAU/0B,GAC3CA,GACAhhG,KAAKk3H,oBAAoBl2B,IAGjCu0B,EAAK96G,UAAUu7G,0BAA4B,SAAUh1B,GAC7CA,GACAhhG,KAAKm3H,sBAAsBn2B,IAGnCu0B,EAAK96G,UAAUy8G,oBAAsB,SAAUl2B,KAC/Cu0B,EAAK96G,UAAU08G,sBAAwB,SAAUn2B,KAGjDu0B,EAAK96G,UAAUy7G,aAAe,SAAU5qC,KACxCiqC,EAAK96G,UAAU07G,eAAiB,aAEhCZ,EAAK96G,UAAU28G,YAAc,SAAU9rC,EAAY5B,GAC/C,IAAI/+E,EAAQ3K,KAAK2K,MACjB,OAAO6tF,GAAgBlN,EAAY3gF,EAAM8tF,aAAc9tF,EAAMqyF,YAAYI,YAAa1T,EAAS1pF,KAAKu0B,QAAQ0zD,iBAAmB,MAAMyR,IAIzI67B,EAAK96G,UAAU47G,yBAA2B,SAAUpqC,GAC5CA,GACAjsF,KAAKq3H,qBAAqBprC,IAGlCspC,EAAK96G,UAAU67G,2BAA6B,SAAUrqC,GAC9CA,GACAjsF,KAAKs3H,uBAAuBrrC,IAGpCspC,EAAK96G,UAAU48G,qBAAuB,SAAUprC,KAChDspC,EAAK96G,UAAU68G,uBAAyB,SAAUrrC,KAGlDspC,EAAK96G,UAAU+7G,oBAAsB,SAAU1zH,GACvCA,GACA9C,KAAKu3H,gBAAgBz0H,IAG7ByyH,EAAK96G,UAAUg8G,sBAAwB,SAAU3zH,GACzCA,GACA9C,KAAKw3H,kBAAkB10H,IAG/ByyH,EAAK96G,UAAU88G,gBAAkB,SAAUz0H,KAC3CyyH,EAAK96G,UAAU+8G,kBAAoB,SAAU10H,KAG7CyyH,EAAK96G,UAAUk8G,sBAAwB,SAAU7zH,GACzCA,GACA9C,KAAKy3H,kBAAkB30H,IAG/ByyH,EAAK96G,UAAUm8G,wBAA0B,SAAU9zH,GAC3CA,GACA9C,KAAK03H,oBAAoB50H,IAGjCyyH,EAAK96G,UAAUg9G,kBAAoB,SAAU30H,KAC7CyyH,EAAK96G,UAAUi9G,oBAAsB,SAAU50H,KAO/CyyH,EAAK96G,UAAUk9G,kBAAoB,SAAU36B,EAAa0tB,GACtD,IAEIpnD,EACAzmC,EACA+6F,EAJAtxB,EAAQtmG,KACRkiF,EAAKliF,KAAKu0B,QAAS62D,EAAWlJ,EAAGkJ,SAAU1C,EAAUxG,EAAGwG,QAASj7E,EAAUy0E,EAAGz0E,QAI9EA,EAAQoqH,eAAiB73H,KAAK83H,iBAC9Bx0D,EAAOtjE,KAAK+3H,oBAAoB/6B,EAAa0tB,GACzCpnD,IACAzmC,EAAS78B,KAAKsrH,mBAAmB/vE,KAAKv7C,MACtCA,KAAK83H,eAAiB1sC,EAASqe,SAC/BzpG,KAAKg4H,qBAAsB,IAAI9vH,MAAO+nE,UAEtC2nD,EAAQlvC,EAAQ1sC,IAAI0sC,EAAQ5yB,QAAQ91D,KAAK83H,eAAgBx0D,GAAO2e,GAAe,EAAG3e,IAAO2M,UAAYjwE,KAAK83H,eAAe7nD,UAEzHjwE,KAAKi4H,sBAAwB9kE,YAAW,WACpCmzC,EAAM2xB,sBAAwB,KAC9Bp7F,IAEI+6F,EADS,WAATt0D,EACQ,IAGA,IAEZgjC,EAAM4xB,uBAAyBC,YAAYt7F,EAAQ+6F,KACpDA,MAOfrC,EAAK96G,UAAU6wG,mBAAqB,WAC5BtrH,KAAK2K,MAAMqyF,aACXh9F,KAAK83H,iBAEL93H,KAAKo4H,uBACLp4H,KAAKq4H,mBAAmB15C,EAAM3+E,KAAK83H,gBAAgB,IAAI5vH,MAAO+nE,UAAYjwE,KAAKg4H,sBAC/Eh4H,KAAKs4H,wBAAyB,IAKtC/C,EAAK96G,UAAUu8G,iBAAmB,WAC1Bh3H,KAAKi4H,wBACLM,aAAav4H,KAAKi4H,uBAClBj4H,KAAKi4H,sBAAwB,MAE7Bj4H,KAAKk4H,yBACLM,cAAcx4H,KAAKk4H,wBACnBl4H,KAAKk4H,uBAAyB,MAE9Bl4H,KAAKs4H,yBACLt4H,KAAKo4H,uBACLp4H,KAAKs4H,wBAAyB,IAGtC/C,EAAK96G,UAAUs9G,oBAAsB,SAAU/6B,EAAa0tB,KAI5D6K,EAAK96G,UAAU49G,mBAAqB,SAAUhqD,KAI9CknD,EAAK96G,UAAU29G,qBAAuB,aAKtC7C,EAAK96G,UAAUswG,UAAY,SAAUpd,EAAQ8qB,GACrCA,IACA9qB,EAAO8qB,SAAWA,GAEtBvvC,GAASlpF,KAAK04H,eAAiB14H,KAAK04H,aAAe,IAAK/qB,IAE5D4nB,EAAK96G,UAAU8wG,UAAY,SAAUL,GACjClrH,KAAK24H,kBAAkBzN,GACvBlrH,KAAK04H,aAAe,MAExBnD,EAAK96G,UAAUk+G,kBAAoB,SAAUzN,GACrClrH,KAAK04H,cACL14H,KAAK44H,YAAY54H,KAAK04H,aAAcxN,IAG5CqK,EAAK96G,UAAU6vG,YAAc,WACzB,IAAI3c,EAAS,GAIb,OAHI3tG,KAAK2K,MAAMqyF,aACX9T,GAASykB,EAAQ3tG,KAAK64H,mBAEnBlrB,GAEX4nB,EAAK96G,UAAUm+G,YAAc,SAAUjrB,EAAQud,GAC3C,IAAI3yF,EAAWo1E,EAAOp1E,SAAUkgG,EAAW9qB,EAAO8qB,SAClC,MAAZlgG,GAAqBkgG,WACd9qB,EAAOp1E,SACVv4B,KAAK2K,MAAMqyF,aACX9T,GAASykB,EAAQ3tG,KAAK84H,kBAAkBvgG,KAG5Cv4B,KAAK2K,MAAMqyF,aACXh9F,KAAK+4H,gBAAgBprB,IAG7B4nB,EAAK96G,UAAUq+G,kBAAoB,SAAUvgG,GACzC,MAAO,IAEXg9F,EAAK96G,UAAUo+G,gBAAkB,WAC7B,MAAO,IAEXtD,EAAK96G,UAAUs+G,gBAAkB,SAAUprB,KAI3C4nB,EAAK96G,UAAU46G,iBAAmB,SAAU98F,GACxCv4B,KAAK44H,YAAY,CAAErgG,SAAUA,IAAY,IAEtCg9F,EApSc,CAqSvBplB,IACF3F,GAAaN,QAAQqrB,IACrBA,GAAK96G,UAAUumG,gBAAiB,EAChCuU,GAAK96G,UAAU03G,0BAA4B/S,GAE3C,IAAI4Z,GAAiC,WACjC,SAASA,IACLh5H,KAAK65F,KAAO,GACZ75F,KAAK6xH,aAAc,EA2MvB,OAzMAmH,EAAgBv+G,UAAUw+G,WAAa,SAAU1kG,EAASslE,EAAMq/B,GAC5Dl5H,KAAKu0B,QAAUA,EACfv0B,KAAKm5H,eAGLt/B,EAAO75F,KAAKo5H,aAAav/B,EAAMq/B,GAC/Bl5H,KAAK65F,KAAOA,EACZ75F,KAAKq5H,WAAWx/B,EAAMq/B,GACtBl5H,KAAK6xH,aAAc,EACnBl3B,GAAoB36F,KAAKu0B,QAASv0B,KAAK65F,KAAMjS,QAAQsxC,KAEzDF,EAAgBv+G,UAAUyqF,SAAW,SAAU3wE,EAAS+kG,EAAOJ,GAC3Dh+B,GAAsBl7F,KAAKu0B,QAASv0B,KAAK65F,KAAMjS,QAAQsxC,IACvDl5H,KAAKu5H,WAAWv5H,KAAK65F,MACrB75F,KAAK65F,KAAO,IAGhBm/B,EAAgBv+G,UAAU0+G,aAAe,WACrC,IACIK,EACAC,EAFAhsH,EAAUzN,KAAKu0B,QAAQ9mB,QAG3BzN,KAAK05H,gBAAkBplC,GAAgB7mF,EAAQisH,iBAAmB15H,KAAK25H,yBAA0BlsH,EAAQkpG,uBACzG6iB,EAAmB/rH,EAAQ+rH,iBACH,MAApBA,IACAA,EAAmBx5H,KAAK45H,2BAE5BH,EAAkBhsH,EAAQgsH,gBACH,MAAnBA,IACAA,EAAkBz5H,KAAK65H,0BAE3B75H,KAAKw5H,iBAAmBA,EACxBx5H,KAAKy5H,gBAAkBA,GAI3BT,EAAgBv+G,UAAU2+G,aAAe,SAAUv/B,EAAMq/B,GACrD,IACIxgH,EADAhV,EAAO,GAEX,GAAIm2F,EAAKnuF,OAAQ,CAEb,IAAKgN,EAAI,EAAGA,EAAImhF,EAAKnuF,OAAQgN,IACzBhV,GAAQ1D,KAAK85H,cAAcjgC,EAAKnhF,GAAIwgH,GAIxChhD,EAAex0E,GAAMuB,SAAQ,SAAU21C,EAAIliC,GACvC,IAAIshF,EAAMH,EAAKnhF,GACXkiC,IACAo/C,EAAIp/C,GAAKA,MAGjBi/C,EAAOD,GAAiB55F,KAAKu0B,QAASslE,EAAMjS,QAAQsxC,IAExD,OAAOr/B,GAGXm/B,EAAgBv+G,UAAUs/G,cAAgB,SAAU//B,EAAKggC,EAAaC,EAAaf,GAC/E,IAAI5vB,EAAU,CACV,WACAtP,EAAIZ,QAAU,WAAa,eAC3BY,EAAIX,MAAQ,SAAW,cACzB/yE,OAAO0zE,EAAIE,WAAW7D,GAAGkC,YAgB3B,OAfIyhC,GACA1wB,EAAQh8F,KAAK,gBAEb2sH,GACA3wB,EAAQh8F,KAAK,gBAEb4rH,IACA5vB,EAAQh8F,KAAK,aACT4rH,EAAWgB,YACX5wB,EAAQh8F,KAAK,eAEb4rH,EAAWiB,YACX7wB,EAAQh8F,KAAK,gBAGdg8F,GAOX0vB,EAAgBv+G,UAAU2/G,YAAc,SAAUlgC,EAAY7qB,EAAWgrD,GACrE,IAAIvuC,EAAMoO,EAAWpO,IAAKE,EAAWkO,EAAWlO,SAChD,OAAOhsF,KAAKs6H,aAAatuC,EAAS9iD,MAAMtS,MAAOk1D,EAAIsL,OAASpL,EAAS9iD,MAAMzC,IAAM,KAAMqlD,EAAIpC,OAAQra,EAAWgrD,EAAYruC,EAAS4L,eAAgB5L,EAAS6L,eAEhKmhC,EAAgBv+G,UAAU6/G,aAAe,SAAU1jG,EAAO6P,EAAKijD,EAAQra,EAAWgrD,EAAYziC,EAAgBC,GAC1G,IAAInP,EAAU1oF,KAAKu0B,QAAQm0D,QAO3B,OANiB,MAAbrZ,IACAA,EAAYrvE,KAAK05H,iBAEH,MAAdW,IACAA,EAAar6H,KAAKy5H,iBAElBz5H,KAAKw5H,mBAAqB9vC,EACtB2wC,GAAc5zF,EACPiiD,EAAQoI,YAAYl6D,EAAO6P,EAAK4oC,EAAW,CAC9CuoB,eAAgBA,EAChBC,aAAcA,IAIXnP,EAAQ7yB,OAAOj/B,EAAOy4C,EAAW,CACpCyoB,UAAWF,IAIhB,IAEXohC,EAAgBv+G,UAAUk/G,uBAAyB,WAC/C,MAAO,CACHvuD,KAAM,UACND,OAAQ,UACRykB,gBAAgB,IAGxBopC,EAAgBv+G,UAAUm/G,wBAA0B,WAChD,OAAO,GAEXZ,EAAgBv+G,UAAUo/G,uBAAyB,WAC/C,OAAO,GAGXb,EAAgBv+G,UAAU8/G,WAAa,SAAUlkC,GAC7C,MAAO,CACH,mBAAoBA,EAAGj5D,gBACvB,eAAgBi5D,EAAGh5D,YACnBhc,MAAOg1E,EAAGxuC,YAGlBmxE,EAAgBv+G,UAAU+/G,cAAgB,SAAU3gC,GAChD,IAAIlU,EAAQ3lF,KAAKu0B,QAAQ66E,gBACrBqrB,EAAO5gC,EAAKx2F,IAAIq3H,IAIpB,OAHAD,EAAKt1H,MAAK,SAAU6gF,EAAMC,GACtB,OAAOF,GAAoBC,EAAMC,EAAMN,MAEpC80C,EAAKp3H,KAAI,SAAUwb,GACtB,OAAOA,EAAE87G,SAGjB3B,EAAgBv+G,UAAUmgH,aAAe,SAAUC,IAC3CA,GAAS76H,KAAK6xH,cACd7xH,KAAK86H,gBAAgB96H,KAAK65F,OAGlCm/B,EAAgBv+G,UAAUsgH,YAAc,SAAUF,IAC1CA,GAAS76H,KAAK6xH,eACd7xH,KAAKg7H,eAAeh7H,KAAK65F,MACzB75F,KAAK6xH,aAAc,IAG3BmH,EAAgBv+G,UAAUqgH,gBAAkB,SAAUjhC,KAEtDm/B,EAAgBv+G,UAAUugH,eAAiB,SAAUnhC,KAGrDm/B,EAAgBv+G,UAAUwgH,WAAa,SAAUv1H,GAC7C,GAAIA,EACA,IAAK,IAAIshF,EAAK,EAAG9E,EAAKliF,KAAK65F,KAAM7S,EAAK9E,EAAGx2E,OAAQs7E,IAAM,CACnD,IAAIgT,EAAM9X,EAAG8E,GACTthF,EAAKs0F,EAAIE,WAAWlO,SAASC,cAC7B+N,EAAIp/C,GAAGruC,MAAM2uH,WAAa,YAK1ClC,EAAgBv+G,UAAU0gH,WAAa,SAAUz1H,GAC7C,GAAIA,EACA,IAAK,IAAIshF,EAAK,EAAG9E,EAAKliF,KAAK65F,KAAM7S,EAAK9E,EAAGx2E,OAAQs7E,IAAM,CACnD,IAAIgT,EAAM9X,EAAG8E,GACTthF,EAAKs0F,EAAIE,WAAWlO,SAASC,cAC7B+N,EAAIp/C,GAAGruC,MAAM2uH,WAAa,MAK1ClC,EAAgBv+G,UAAU2gH,mBAAqB,SAAUnvC,GACrD,GAAIA,EACA,IAAK,IAAIjF,EAAK,EAAG9E,EAAKliF,KAAK65F,KAAM7S,EAAK9E,EAAGx2E,OAAQs7E,IAAM,CACnD,IAAIgT,EAAM9X,EAAG8E,GACT0V,EAAgB1C,EAAIE,WAAWlO,SAC/B0Q,GAAiBA,EAAczQ,aAAeA,GAC9C+N,EAAIp/C,IAEJo/C,EAAIp/C,GAAGmB,UAAUC,IAAI,iBAKrCg9E,EAAgBv+G,UAAU4gH,qBAAuB,SAAUpvC,GACvD,GAAIA,EACA,IAAK,IAAIjF,EAAK,EAAG9E,EAAKliF,KAAK65F,KAAM7S,EAAK9E,EAAGx2E,OAAQs7E,IAAM,CACnD,IAAIgT,EAAM9X,EAAG8E,GACTgT,EAAIp/C,IACJo/C,EAAIp/C,GAAGmB,UAAUG,OAAO,iBAKjC88E,EA9MyB,GAiNpC,SAAS0B,GAAmB1gC,GACxB,IAAIjQ,EAAWiQ,EAAIE,WAAWpO,IAC1B5iD,EAAQ8wD,EAAIE,WAAWlO,SAAS9iD,MAChCtS,EAAQsS,EAAMtS,MAAQsS,EAAMtS,MAAMq5C,UAAY,EAC9CxpC,EAAMyC,EAAMzC,IAAMyC,EAAMzC,IAAIwpC,UAAY,EAC5C,OAAOiZ,GAAS,GAAIa,EAAS0M,cAAe1M,EAAU,CAAEr9E,GAAIq9E,EAAS0L,SAAU7+D,MAAOA,EAClF6P,IAAKA,EAAKlO,SAAUkO,EAAM7P,EAAO8yD,OAAQ58E,OAAOi9E,EAASL,QAASixC,KAAM3gC,IAOhF,IAAIshC,GAA8B,WAC9B,SAASA,IACLt7H,KAAKu7H,WAAa,MAClBv7H,KAAKw7H,eAAiB,GACtBx7H,KAAKy7H,mBAAqB,GAC1Bz7H,KAAK07H,WAAa,GA4GtB,OA1GAJ,EAAa7gH,UAAUkhH,cAAgB,SAAUz5H,GAC7C,OAAOlC,KAAK07H,WAAWx5H,IAAS,IAEpCo5H,EAAa7gH,UAAUw+G,WAAa,SAAU/2H,EAAMqyB,EAASslE,GACzD,IAAI3X,EACJliF,KAAKu0B,QAAUA,EACf,IAAIqnG,EAAe57H,KAAKo5H,aAAal3H,EAAM23F,GACvCgiC,EAAe77H,KAAKq5H,WAAWn3H,EAAM05H,GACrCC,IACC35C,EAAMliF,KAAKy7H,mBAAmBv5H,KAAUlC,KAAKy7H,mBAAmBv5H,GAAQ,KAAMoL,KAAKgO,MAAM4mE,EAAI25C,GAElG77H,KAAK07H,WAAWx5H,GAAQ05H,EACX,YAAT15H,GACAy4F,GAAoBpmE,EAASqnG,GAAc,GAE/C57H,KAAKw7H,eAAet5H,IAAQ,GAGhCo5H,EAAa7gH,UAAUyqF,SAAW,SAAUhjG,EAAMqyB,GAC9C,IAAIslE,EAAO75F,KAAK07H,WAAWx5H,GACvB23F,IACa,YAAT33F,GACAg5F,GAAsB3mE,EAASslE,GAAM,GAEzC75F,KAAKu5H,WAAWr3H,EAAM23F,KAK9ByhC,EAAa7gH,UAAU2+G,aAAe,SAAUl3H,EAAM23F,GAClD,IAEInhF,EAFA4tF,EAAQtmG,KACR0D,EAAO,GAEX,GAAIm2F,EAAKnuF,OAAQ,CAEb,IAAKgN,EAAI,EAAGA,EAAImhF,EAAKnuF,OAAQgN,IACzBhV,GAAQ1D,KAAK85H,cAAc53H,EAAM23F,EAAKnhF,IAI1Cw/D,EAAex0E,GAAMuB,SAAQ,SAAU21C,EAAIliC,GACvC,IAAIshF,EAAMH,EAAKnhF,GACXkiC,IACAo/C,EAAIp/C,GAAKA,MAGJ,YAAT14C,IACA23F,EAAOD,GAAiB55F,KAAKu0B,QAASslE,GAAM,IAIhDA,EAAOA,EAAKvpD,QAAO,SAAU0pD,GACzB,OAAOzgB,EAAeygB,EAAIp/C,GAAI0rD,EAAMi1B,eAG5C,OAAO1hC,GAGXyhC,EAAa7gH,UAAUq/G,cAAgB,SAAU53H,EAAM83F,GACnD,IAAIl9C,EAAM,KACNy7C,EAAa,GAejB,MAda,cAATr2F,GAAiC,kBAATA,IACxB46C,EAAM,CACF,mBAAoBk9C,EAAIE,WAAW7D,GAAGj5D,kBAGjC,cAATl7B,IACAq2F,EAAaA,EAAWjyE,OAAO0zE,EAAIE,WAAW7D,GAAGkC,aAExC,kBAATr2F,EACAq2F,EAAWjrF,KAAK,cAGhBirF,EAAWjrF,KAAK,MAAQpL,EAAKoU,eAE1B,IAAMtW,KAAKu7H,YACbhjC,EAAW7sF,OAAS,WAAa6sF,EAAW/jF,KAAK,KAAO,IAAM,KAC9DsoC,EAAM,WAAaklD,GAASllD,GAAO,IAAM,IAC1C,MAAQ98C,KAAKu7H,WAAa,KAElCD,EAAa7gH,UAAU8+G,WAAa,SAAUr3H,EAAM23F,GAChD,IAAIgiC,EAAe77H,KAAKy7H,mBAAmBv5H,GACvC25H,IACAA,EAAa52H,QAAQ6zE,UACd94E,KAAKy7H,mBAAmBv5H,KAGvCo5H,EAAa7gH,UAAUmgH,aAAe,SAAUC,GAC5C,IAAK,IAAI34H,KAAQlC,KAAK07H,YACdb,GAAS76H,KAAKw7H,eAAet5H,KAC7BlC,KAAK86H,gBAAgB96H,KAAK07H,WAAWx5H,KAIjDo5H,EAAa7gH,UAAUsgH,YAAc,SAAUF,GAC3C,IAAK,IAAI34H,KAAQlC,KAAK07H,YACdb,GAAS76H,KAAKw7H,eAAet5H,KAC7BlC,KAAKg7H,eAAeh7H,KAAK07H,WAAWx5H,IAG5ClC,KAAKw7H,eAAiB,IAE1BF,EAAa7gH,UAAUqgH,gBAAkB,SAAUjhC,KAEnDyhC,EAAa7gH,UAAUugH,eAAiB,SAAUnhC,KAE3CyhC,EAjHsB,GAwI7BQ,IApBmC,WACnC,SAASC,EAAkB/rC,GACvBhwF,KAAKgwF,aAAeA,GAFU,GAoBD,WACjC,SAAS8rC,EAAgBlhF,GACrB56C,KAAKg8H,QAAU,IAAIxxB,GAavB,OAXAsxB,EAAgBrhH,UAAU/M,QAAU,aAEpCouH,EAAgBrhH,UAAUwhH,mBAAqB,SAAUhT,KAGzD6S,EAAgBrhH,UAAUyhH,qBAAuB,SAAUjT,KAG3D6S,EAAgBrhH,UAAU0hH,qBAAuB,SAAUlT,KAGpD6S,EAfyB,IAqDpC,IAAIM,GAAkB,CAClBrjG,UAAWkpD,GACX1pD,SAAU0pD,GACV12D,OAAQq8D,QACRuD,SAAU7lF,QAEV+2H,GAAqB,CACrB9wG,QAAQ,GAEZ,SAAS+wG,GAAc54G,GACnB,IAAI8jE,EAAgB,GAChBC,EAAUJ,GAAY3jE,EAAK04G,GAAiBC,GAAoB70C,GAEpE,OADAC,EAAQD,cAAgBA,EACjBC,EAIX,SAAS80C,GAA4BC,EAAsBz0C,GAGvD,OAAKy0C,GAAwBz0C,EAAS,GAC3B,CAAEra,QAAS,SAEbqa,EAAS,EACP,CAAEra,QAAS,QAASnC,MAAO,UAAWF,IAAK,UAAWykB,YAAY,GAGlE,CAAEpiB,QAAS,QAG1B,SAAS+uD,GAAe1Z,EAAY/lB,EAAaw/B,EAAsBE,EAAQC,EAAepoG,EAASqoG,EAASC,GAC5G,IAMIv0B,EANA5f,EAAUn0D,EAAQm0D,QAAS2gB,EAAQ90E,EAAQ80E,MAAO57F,EAAU8mB,EAAQ9mB,QACpEqvH,EAAc7tC,GAAoB+N,EAAYI,YAAa2lB,GAC3DxqB,EAAa,CACb,gBACA8Q,EAAMK,SAAS,iBAsBnB,OAlBIpB,EADoC,oBAA7B76F,EAAQsvH,iBACHtvH,EAAQsvH,iBAAiBr0C,EAAQwP,OAAO6qB,IAEX,oBAA7Bt1G,EAAQuvH,iBACRj7B,GAAWt0F,EAAQuvH,iBAAiBt0C,EAAQwP,OAAO6qB,KAGnDhhB,GAAWrZ,EAAQ7yB,OAAOktD,EAAY4Z,IAGlDH,EACAjkC,EAAaA,EAAWjyE,OAGxB2iF,GAAc8Z,EAAY/lB,EAAazoE,GAAS,IAGhDgkE,EAAWjrF,KAAK,MAAQgxE,EAAQykC,EAAW7hC,cAG3C,cAAgBqX,EAAW/jF,KAAK,KAAO,KACrCsoH,GAAeN,EACb,eAAiB9zC,EAAQ+f,UAAUsa,EAAY,CAAEra,UAAU,IAAU,IACrE,KACHk0B,EAAU,EACP,aAAeA,EAAU,IACzB,KACHC,EACG,IAAMA,EACN,IACJ,KACCC,EAEG30B,GAAoB16F,EAASi7E,EAAS,CAAEra,KAAM00C,EAAYxa,UAAWi0B,GAAmC,IAAXE,GAAgBp0B,GAE7GA,GACJ,QAGR,IAAI20B,GAA2B,SAAUxyB,GAErC,SAASwyB,EAAUtR,GACf,IAAIrlB,EAAQmE,EAAOjxF,KAAKxZ,OAASA,KAGjC,OAFAsmG,EAAM+iB,eAAiB1kB,GAAiB2B,EAAMgjB,gBAAiBhjB,EAAMijB,mBACrEjjB,EAAMqlB,SAAWA,EACVrlB,EAsCX,OA3CAtd,GAAUi0C,EAAWxyB,GAOrBwyB,EAAUxiH,UAAU3a,OAAS,SAAU6K,EAAO4pB,GAC1C,IAAI2oG,EAAQvyH,EAAMuyH,MAAOV,EAAuB7xH,EAAM6xH,qBAClDrpH,EAAQ,GACZnT,KAAKqpH,eAAe90F,GAChB5pB,EAAMwyH,iBACNhqH,EAAM7F,KAAK3C,EAAMwyH,mBAIrB,IAFA,IAAIR,EAAgBroC,GAAgB//D,EAAQ9mB,QAAQ2vH,oBAChDb,GAA4BC,EAAsBU,EAAMxxH,SACnDs7E,EAAK,EAAGq2C,EAAUH,EAAOl2C,EAAKq2C,EAAQ3xH,OAAQs7E,IAAM,CACzD,IAAI3Y,EAAOgvD,EAAQr2C,GACnB7zE,EAAM7F,KAAKmvH,GAAepuD,EAAM1jE,EAAMqyF,YAAaw/B,EAAsBU,EAAMxxH,OAAQixH,EAAepoG,IAEtGA,EAAQ4+D,OACRhgF,EAAM6X,UAEVhrB,KAAKs9H,MAAMzlD,UAAY,OAAS1kE,EAAMqB,KAAK,IAAM,SAErDyoH,EAAUxiH,UAAU/M,QAAU,WAC1B+8F,EAAOhwF,UAAU/M,QAAQ8L,KAAKxZ,MAC9BA,KAAKqpH,eAAenkB,YAExB+3B,EAAUxiH,UAAU6uG,gBAAkB,SAAU/0F,GAC5C,IAAI80E,EAAQ90E,EAAQ80E,MAChBsiB,EAAW3rH,KAAK2rH,SACpBA,EAAS9zC,UAAY,GACrB8zC,EAAS1gF,YAAYjrC,KAAK46C,GAAKm9B,EAAc,sBAAwBsxB,EAAMK,SAAS,aAAvC,mBACtBL,EAAMK,SAAS,aADO,oCAK7C1pG,KAAKs9H,MAAQt9H,KAAK46C,GAAG2xE,cAAc,UAEvC0Q,EAAUxiH,UAAU8uG,kBAAoB,WACpCzwC,EAAc94E,KAAK46C,KAEhBqiF,EA5CmB,CA6C5B3tB,IAEEiuB,GAA2B,WAC3B,SAASA,EAAUr0F,EAAOwhF,GACtB,IAAIr8C,EAAOnlC,EAAMtS,MACb6P,EAAMyC,EAAMzC,IACZ+2F,EAAU,GACVN,EAAQ,GACRO,GAAY,EAChB,MAAOpvD,EAAO5nC,EACNikF,EAAqBrJ,YAAYhzC,GACjCmvD,EAAQlwH,KAAKmwH,EAAW,KAGxBA,IACAD,EAAQlwH,KAAKmwH,GACbP,EAAM5vH,KAAK+gE,IAEfA,EAAOqQ,EAAQrQ,EAAM,GAEzBruE,KAAKk9H,MAAQA,EACbl9H,KAAKw9H,QAAUA,EACfx9H,KAAKyjH,IAAMyZ,EAAMxxH,OAwCrB,OAtCA6xH,EAAU9iH,UAAUijH,WAAa,SAAUx0F,GACvC,IAAIy0F,EAAa39H,KAAK49H,gBAAgB10F,EAAMtS,OACxCinG,EAAY79H,KAAK49H,gBAAgBl/C,EAAQx1C,EAAMzC,KAAM,IACrDq3F,EAAoB5sH,KAAKmN,IAAI,EAAGs/G,GAChCI,EAAmB7sH,KAAKkN,IAAIpe,KAAKyjH,IAAM,EAAGoa,GAI9C,OAFAC,EAAoB5sH,KAAK8oD,KAAK8jE,GAC9BC,EAAmB7sH,KAAKD,MAAM8sH,GAC1BD,GAAqBC,EACd,CACHJ,WAAYG,EACZD,UAAWE,EACX3kC,QAASukC,IAAeG,EACxBzkC,MAAOwkC,IAAcE,GAIlB,MAQfR,EAAU9iH,UAAUmjH,gBAAkB,SAAUvvD,GAC5C,IAAImvD,EAAUx9H,KAAKw9H,QACfQ,EAAY9sH,KAAKD,MAAM8tE,EAAS/+E,KAAKk9H,MAAM,GAAI7uD,IACnD,OAAI2vD,EAAY,EACLR,EAAQ,GAAK,EAEfQ,GAAaR,EAAQ9xH,OACnB8xH,EAAQA,EAAQ9xH,OAAS,GAAK,EAG9B8xH,EAAQQ,IAGhBT,EA5DmB,GA+D1BU,GAA0B,WAC1B,SAASA,EAASC,EAAWC,GACzB,IACIC,EACAhiB,EACAiiB,EAHAnB,EAAQgB,EAAUhB,MAItB,GAAIiB,EAAc,CAGd,IADA/hB,EAAW8gB,EAAM,GAAGh8C,YACfk9C,EAAa,EAAGA,EAAalB,EAAMxxH,OAAQ0yH,IAC5C,GAAIlB,EAAMkB,GAAYl9C,cAAgBk7B,EAClC,MAGRiiB,EAASntH,KAAK8oD,KAAKkjE,EAAMxxH,OAAS0yH,QAGlCC,EAAS,EACTD,EAAalB,EAAMxxH,OAEvB1L,KAAKq+H,OAASA,EACdr+H,KAAK08H,OAAS0B,EACdp+H,KAAKk+H,UAAYA,EACjBl+H,KAAKs+H,MAAQt+H,KAAKu+H,aAClBv+H,KAAKw+H,YAAcx+H,KAAKy+H,mBA+C5B,OA7CAR,EAASxjH,UAAU8jH,WAAa,WAE5B,IADA,IAAIG,EAAO,GACFh0H,EAAM,EAAGA,EAAM1K,KAAKq+H,OAAQ3zH,IAAO,CAExC,IADA,IAAI4zH,EAAQ,GACHK,EAAM,EAAGA,EAAM3+H,KAAK08H,OAAQiC,IACjCL,EAAMhxH,KAAKtN,KAAK4+H,UAAUl0H,EAAKi0H,IAEnCD,EAAKpxH,KAAKgxH,GAEd,OAAOI,GAEXT,EAASxjH,UAAUmkH,UAAY,SAAUl0H,EAAKi0H,GAC1C,MAAO,CACHtwD,KAAMruE,KAAKk+H,UAAUhB,MAAMxyH,EAAM1K,KAAK08H,OAASiC,KAGvDV,EAASxjH,UAAUgkH,iBAAmB,WAElC,IADA,IAAIvB,EAAQ,GACHyB,EAAM,EAAGA,EAAM3+H,KAAK08H,OAAQiC,IACjCzB,EAAM5vH,KAAKtN,KAAKs+H,MAAM,GAAGK,GAAKtwD,MAElC,OAAO6uD,GAEXe,EAASxjH,UAAUijH,WAAa,SAAUx0F,GACtC,IAAIwzF,EAAS18H,KAAK08H,OACdmC,EAAY7+H,KAAKk+H,UAAUR,WAAWx0F,GACtC2wD,EAAO,GACX,GAAIglC,EAAW,CACX,IAAIlB,EAAakB,EAAUlB,WAAYE,EAAYgB,EAAUhB,UACzD17H,EAAQw7H,EACZ,MAAOx7H,GAAS07H,EAAW,CACvB,IAAInzH,EAAMwG,KAAKD,MAAM9O,EAAQu6H,GACzBoC,EAAY5tH,KAAKkN,KAAK1T,EAAM,GAAKgyH,EAAQmB,EAAY,GACzDhkC,EAAKvsF,KAAK,CACN5C,IAAKA,EACLq0H,SAAU58H,EAAQu6H,EAClBsC,SAAUF,EAAY,GAAKpC,EAC3BtjC,QAASylC,EAAUzlC,SAAWj3F,IAAUw7H,EACxCtkC,MAAOwlC,EAAUxlC,OAAUylC,EAAY,IAAOjB,IAElD17H,EAAQ28H,GAGhB,OAAOjlC,GAEJokC,EAvEkB,GA0EzBgB,GAAwB,WACxB,SAASA,IACLj/H,KAAKk/H,mBAAqB9vC,GAAQpvF,KAAKm/H,qBACvCn/H,KAAKo/H,mBAAqBhwC,GAAQpvF,KAAKq/H,gBACvCr/H,KAAKw4F,gBAAkBpJ,GAAQpvF,KAAKs/H,kBACpCt/H,KAAKu/H,eAAiBnwC,GAAQpvF,KAAKw/H,mBACnCx/H,KAAKy/H,iBAAmBrwC,GAAQpvF,KAAKw/H,mBAuHzC,OArHAP,EAAOxkH,UAAUilH,WAAa,SAAU/0H,EAAOqyF,EAAa/U,EAAkBmD,EAAUpnF,GAEpF,IADA,IAAI27H,EAAY,GACP34C,EAAK,EAAGA,EAAK/tE,UAAUvN,OAAQs7E,IACpC24C,EAAU34C,EAAK,GAAK/tE,UAAU+tE,GAElC,IAAIyR,EAAe9tF,EAAM8tF,aACrBmnC,EAAY5/H,KAAKw4F,gBAAgBl9E,MAAMtb,KAAM,CAAC2K,EAAM2gF,WAAYmN,EAAcuE,EAAa/U,EAAkBjkF,GAAWsiB,OAAOq5G,IACnI,MAAO,CACHE,kBAAmB7/H,KAAKo/H,mBAAmB9jH,MAAMtb,KAAM,CAAC2K,EAAM2zF,cAAe7F,EAAcz0F,GAAWsiB,OAAOq5G,IAC7GG,iBAAkB9/H,KAAKk/H,mBAAmB5jH,MAAMtb,KAAM,CAAC2K,EAAM6zF,cAAexB,EAAa/U,EAAkBmD,EAAUpnF,GAAWsiB,OAAOq5G,IACvII,YAAaH,EAAUlmC,GACvBsmC,YAAaJ,EAAUnmC,GACvB2E,UAAWp+F,KAAKu/H,eAAejkH,MAAMtb,KAAM,CAAC2K,EAAMyzF,UAAW3F,EAAcuE,EAAa/U,EAAkBjkF,GAAWsiB,OAAOq5G,IAC5HjhC,YAAa1+F,KAAKy/H,iBAAiBnkH,MAAMtb,KAAM,CAAC2K,EAAM+zF,YAAajG,EAAcuE,EAAa/U,EAAkBjkF,GAAWsiB,OAAOq5G,IAClIlhC,eAAgB9zF,EAAM8zF,iBAG9BwgC,EAAOxkH,UAAUwlH,aAAe,SAChC5xD,EAAMrqE,GAEF,IADA,IAAI27H,EAAY,GACP34C,EAAK,EAAGA,EAAK/tE,UAAUvN,OAAQs7E,IACpC24C,EAAU34C,EAAK,GAAK/tE,UAAU+tE,GAElC,OAAOhnF,KAAKq/H,eAAe/jH,MAAMtb,KAAM,CAAC,CAAEkpC,MAAO,CAAEtS,MAAOy3C,EAAM5nC,IAAKk4C,EAAMtQ,EAAM,IAAMqb,QAAQ,GAC3F,GACA1lF,GAAWsiB,OAAOq5G,KAE1BV,EAAOxkH,UAAU0kH,oBAAsB,SAAU3gC,EAAexB,EAAa/U,EAAkBmD,EAAUpnF,GAErG,IADA,IAAI27H,EAAY,GACP34C,EAAK,EAAGA,EAAK/tE,UAAUvN,OAAQs7E,IACpC24C,EAAU34C,EAAK,GAAK/tE,UAAU+tE,GAElC,OAAKwX,EAGEx+F,KAAKs/H,iBAAiBhkH,MAAMtb,KAAM,CAACksF,GAAgBsS,EAAe0hC,GAAmBljC,EAAapV,QAAQK,IAAoBmD,GACjI,GACA4R,EACA/U,EACAjkF,GAAWsiB,OAAOq5G,IAAYlmC,GANvB,IAQfwlC,EAAOxkH,UAAU6kH,iBAAmB,SAAUh0C,EAAYmN,EAAcuE,EAAa/U,EAAkBjkF,GAEnG,IADA,IAAI27H,EAAY,GACP34C,EAAK,EAAGA,EAAK/tE,UAAUvN,OAAQs7E,IACpC24C,EAAU34C,EAAK,GAAK/tE,UAAU+tE,GAElC,GAAIsE,EAAY,CACZ,IAAI60C,EAAW3nC,GAAgBlN,EAAYmN,EAAcynC,GAAmBljC,EAAapV,QAAQK,IAAoBA,GACrH,MAAO,CACHwR,GAAIz5F,KAAKogI,iBAAiBD,EAAS1mC,GAAIz1F,EAAW27H,GAClDjmC,GAAI15F,KAAKogI,iBAAiBD,EAASzmC,GAAI11F,EAAW27H,IAItD,MAAO,CAAElmC,GAAI,GAAIC,GAAI,KAG7BulC,EAAOxkH,UAAU+kH,kBAAoB,SAAUthC,EAAazF,EAAcuE,EAAa/U,EAAkBjkF,GAErG,IADA,IAAI27H,EAAY,GACP34C,EAAK,EAAGA,EAAK/tE,UAAUvN,OAAQs7E,IACpC24C,EAAU34C,EAAK,GAAK/tE,UAAU+tE,GAElC,IAAKkX,EACD,OAAO,KAEX,IAAIiiC,EAAW3nC,GAAgB0F,EAAYe,cAAexG,EAAcynC,GAAmBljC,EAAapV,QAAQK,IAAoBA,GACpI,MAAO,CACH4R,KAAM75F,KAAKogI,iBAAiBD,EAASzmC,GAAI11F,EAAW27H,GACpDU,kBAAmBniC,EAAYsB,eAAej1C,UAC9C80C,QAASnB,EAAYmB,QACrBihC,UAAWpiC,EAAY4J,UAG/Bm3B,EAAOxkH,UAAU4kH,eAAiB,SAAUn4B,EAAUzO,EAAcz0F,GAEhE,IADA,IAAI27H,EAAY,GACP34C,EAAK,EAAGA,EAAK/tE,UAAUvN,OAAQs7E,IACpC24C,EAAU34C,EAAK,GAAK/tE,UAAU+tE,GAElC,IAAKkgB,EACD,MAAO,GAIX,IAFA,IAAIhN,EAAakqB,GAAoBld,EAAUzO,EAAcz0F,EAAUuwB,QAAQ62D,UAC3EyO,EAAO75F,KAAK09H,WAAWpiH,MAAMtb,KAAM,CAACknG,EAASh+D,OAAO5iB,OAAOq5G,IACtDz9C,EAAK,EAAGiY,EAASN,EAAM3X,EAAKiY,EAAOzuF,OAAQw2E,IAAM,CACtD,IAAI8X,EAAMG,EAAOjY,GACjB8X,EAAIh2F,UAAYA,EAChBg2F,EAAIE,WAAaA,EAErB,OAAOL,GAKXolC,EAAOxkH,UAAU2lH,iBAAmB,SAAUG,EAAav8H,EAC3D27H,GAEI,IADA,IAAI9lC,EAAO,GACF7S,EAAK,EAAGw5C,EAAgBD,EAAav5C,EAAKw5C,EAAc90H,OAAQs7E,IAAM,CAC3E,IAAIkT,EAAasmC,EAAcx5C,GAC/B6S,EAAKvsF,KAAKgO,MAAMu+E,EAAM75F,KAAKygI,gBAAgBvmC,EAAYl2F,EAAW27H,IAEtE,OAAO9lC,GAKXolC,EAAOxkH,UAAUgmH,gBAAkB,SAAUvmC,EAAYl2F,EACzD27H,GAEI,IADA,IAAI9lC,EAAO75F,KAAK09H,WAAWpiH,MAAMtb,KAAM,CAACk6F,EAAWhxD,OAAO5iB,OAAOq5G,IACxD34C,EAAK,EAAG6T,EAAShB,EAAM7S,EAAK6T,EAAOnvF,OAAQs7E,IAAM,CACtD,IAAIgT,EAAMa,EAAO7T,GACjBgT,EAAIh2F,UAAYA,EAChBg2F,EAAIE,WAAaA,EACjBF,EAAIZ,QAAUc,EAAWd,SAAWY,EAAIZ,QACxCY,EAAIX,MAAQa,EAAWb,OAASW,EAAIX,MAExC,OAAOQ,GAEJolC,EA7HgB,GAoI3B,SAASiB,GAAmBljC,EAAa0jC,GACrC,IAAIx3F,EAAQ8zD,EAAYI,YACxB,OAAIsjC,EACOx3F,EAEJ,CACHtS,MAAO+nD,EAAMz1C,EAAMtS,MAAOomE,EAAYoa,QAAQ13B,cAC9Cj5C,IAAKk4C,EAAMz1C,EAAMzC,IAAKu2D,EAAYqa,QAAQ33B,aAAe,U,6DC73QjE,W,2CCAA,IAAI5/E,EAAS,WAAa,IAAIC,EAAIC,KAASC,EAAGF,EAAIG,eAAmBC,EAAGJ,EAAIK,MAAMD,IAAIF,EAAG,OAAOE,EAAG,eAAe,CAACW,IAAI,WAAWT,MAAM,CAAC,YAAc,eAAe,QAAUN,EAAI4gI,gBAAgB,OAAS5gI,EAAIgqD,OAAO,YAAa,EAAK,OAAShqD,EAAIg3G,OAAO,YAAch3G,EAAIy4G,YAAY,cAAe,EAAK,UAAW,GAAMj4G,GAAG,CAAC,UAAYR,EAAI6gI,cACjVr+H,EAAkB,G,6CCuBlBumF,EAAgB,SAAShnC,EAAG3jC,GAI5B,OAHA2qE,EAAgB1kF,OAAO2kF,gBAClB,CAAE/wC,UAAW,cAAgBhrC,OAAS,SAAU80C,EAAG3jC,GAAK2jC,EAAE9J,UAAY75B,IACvE,SAAU2jC,EAAG3jC,GAAK,IAAK,IAAI8B,KAAK9B,EAAOA,EAAE/B,eAAe6D,KAAI6hC,EAAE7hC,GAAK9B,EAAE8B,KAClE6oE,EAAchnC,EAAG3jC,IAG5B,SAAS6qE,EAAUlnC,EAAG3jC,GAElB,SAAS8qE,IAAOjpF,KAAKwsB,YAAcs1B,EADnCgnC,EAAchnC,EAAG3jC,GAEjB2jC,EAAErnC,UAAkB,OAAN0D,EAAa/Z,OAAOmnB,OAAOpN,IAAM8qE,EAAGxuE,UAAY0D,EAAE1D,UAAW,IAAIwuE,GAGnF,IAAIC,EAAW,WAQX,OAPAA,EAAW9kF,OAAOC,QAAU,SAAkB8b,GAC1C,IAAK,IAAIpC,EAAGrF,EAAI,EAAGyD,EAAIlD,UAAUvN,OAAQgN,EAAIyD,EAAGzD,IAE5C,IAAK,IAAIuH,KADTlC,EAAI9E,UAAUP,GACAqF,EAAO3Z,OAAOqW,UAAU2B,eAAe5C,KAAKuE,EAAGkC,KAAIE,EAAEF,GAAKlC,EAAEkC,IAE9E,OAAOE,GAEJ+oE,EAAS5tE,MAAMtb,KAAMiZ,YAG5B,EAA6C,SAAUwxF,GAEvD,SAASo2B,IACL,OAAkB,OAAXp2B,GAAmBA,EAAOnvF,MAAMtb,KAAMiZ,YAAcjZ,KA2B/D,OA7BAgpF,EAAU63C,EAA6Bp2B,GAKvCo2B,EAA4BpmH,UAAU6lG,iBAAmB,SAAU9W,EAAcmW,EAAkBM,GAC/F,IAII6gB,EAJAp4C,EAAU1oF,KAAK0oF,QACfw3B,EAAczV,EAAOhwF,UAAU6lG,iBAAiB9mG,KAAKxZ,KAAMwpG,EAAcmW,EAAkBM,GAC3FrpF,EAAQspF,EAAYtpF,MACpB6P,EAAMy5E,EAAYz5E,IAYtB,GATI,iBAAiBh0B,KAAKktG,KACtB/oF,EAAQ8xD,EAAQq0B,YAAYnmF,GAE5BkqG,EAAYp4C,EAAQq0B,YAAYt2E,GAC5Bq6F,EAAU7wD,YAAcxpC,EAAIwpC,YAC5BxpC,EAAM,eAASq6F,EAAW,KAI9B9gI,KAAKyN,QAAQ87F,WACbvpG,KAAKyN,QAAQszH,eAAgB,CAC7B,IAAI1C,EAASntH,KAAK8oD,KAClB,gBAAUpjC,EAAO6P,IACjBA,EAAM,eAASA,EAAK,EAAI43F,GAE5B,MAAO,CAAEznG,MAAOA,EAAO6P,IAAKA,IAEzBo6F,EA9BqC,CA+B9C,QAeE,EAAyB,WACzB,SAASG,EAAQvzH,GACb,IAAI64F,EAAQtmG,KACZA,KAAKihI,UAAW,EAChBjhI,KAAK22C,OAAS,GAEd32C,KAAKkhI,kBAAoB,SAAU1jD,GAE3B8oB,EAAM1rD,KAAO0rD,EAAM1rD,GAAG0+B,SAASkE,EAAGp0D,SAClCk9E,EAAM66B,QAGdnhI,KAAKyN,QAAUA,EA6FnB,OA1FAuzH,EAAQvmH,UAAU2mH,KAAO,WACjBphI,KAAKihI,WACAjhI,KAAK46C,IACN56C,KAAKF,SAETE,KAAK46C,GAAGruC,MAAMskC,QAAU,GACxB7wC,KAAKwpC,WACLxpC,KAAKihI,UAAW,EAChBjhI,KAAKo7F,QAAQ,UAIrB4lC,EAAQvmH,UAAU0mH,KAAO,WAChBnhI,KAAKihI,WACNjhI,KAAK46C,GAAGruC,MAAMskC,QAAU,OACxB7wC,KAAKihI,UAAW,EAChBjhI,KAAKo7F,QAAQ,UAIrB4lC,EAAQvmH,UAAU3a,OAAS,WACvB,IAAIwmG,EAAQtmG,KACRyN,EAAUzN,KAAKyN,QACfmtC,EAAK56C,KAAK46C,GAAK,eAAc,MAAO,CACpCC,UAAW,eAAiBptC,EAAQotC,WAAa,IACjDtuC,MAAO,CACH6jB,IAAK,IACLD,KAAM,OAGiB,oBAApB1iB,EAAQiqE,SACfjqE,EAAQiqE,QAAQ98B,GAEpBntC,EAAQk+G,SAAS1gF,YAAY2P,GAE7B,gBAAiBA,EAAI,QAAS,aAAa,SAAU4iC,GACjD8oB,EAAM66B,UAEN1zH,EAAQ4zH,UACRt2F,SAAS+O,iBAAiB,YAAa95C,KAAKkhI,oBAIpDF,EAAQvmH,UAAU/M,QAAU,WACxB1N,KAAKmhI,OACDnhI,KAAK46C,KACL,gBAAc56C,KAAK46C,IACnB56C,KAAK46C,GAAK,MAEd7P,SAASoP,oBAAoB,YAAan6C,KAAKkhI,oBAGnDF,EAAQvmH,UAAU+uB,SAAW,WACzB,IAKIpZ,EACAD,EANA1iB,EAAUzN,KAAKyN,QACfmtC,EAAK56C,KAAK46C,GACV0mF,EAAS1mF,EAAG4Y,wBACZ/5C,EAAS,eAAYmhC,EAAGkB,cACxBylF,EAAe,eAAoB9zH,EAAQk+G,UAI/Cv7F,EAAM3iB,EAAQ2iB,KAAO,EAEjBD,OADiBhsB,IAAjBsJ,EAAQ0iB,KACD1iB,EAAQ0iB,UAEQhsB,IAAlBsJ,EAAQ4iB,MACN5iB,EAAQ4iB,MAAQixG,EAAO30H,MAGvB,EAGXyjB,EAAMlf,KAAKkN,IAAIgS,EAAKmxG,EAAajxG,OAASgxG,EAAO10H,OAAS5M,KAAK22C,QAC/DvmB,EAAMlf,KAAKmN,IAAI+R,EAAKmxG,EAAanxG,IAAMpwB,KAAK22C,QAC5CxmB,EAAOjf,KAAKkN,IAAI+R,EAAMoxG,EAAalxG,MAAQixG,EAAO30H,MAAQ3M,KAAK22C,QAC/DxmB,EAAOjf,KAAKmN,IAAI8R,EAAMoxG,EAAapxG,KAAOnwB,KAAK22C,QAC/C,eAAWiE,EAAI,CACXxqB,IAAKA,EAAM3W,EAAO2W,IAClBD,KAAMA,EAAO1W,EAAO0W,QAO5B6wG,EAAQvmH,UAAU2gF,QAAU,SAAU/rF,GAC9BrP,KAAKyN,QAAQ4B,IACbrP,KAAKyN,QAAQ4B,GAAMiM,MAAMtb,KAAMgN,MAAMyN,UAAUnP,MAAMkO,KAAKP,UAAW,KAGtE+nH,EAzGiB,GA+GxB,EAA4C,SAAUv2B,GAEtD,SAAS+2B,IACL,OAAkB,OAAX/2B,GAAmBA,EAAOnvF,MAAMtb,KAAMiZ,YAAcjZ,KA+D/D,OAjEAgpF,EAAUw4C,EAA4B/2B,GAKtC+2B,EAA2B/mH,UAAUq/G,cAAgB,SAAU9/B,EAAKk/B,GAChE,IAWIuI,EACAC,EAZAntG,EAAUv0B,KAAKu0B,QACf2lE,EAAaF,EAAIE,WACjBnQ,EAAWmQ,EAAWpO,IACtByP,EAAUrB,EAAW7D,GACrB3M,EAASK,EAASL,OAClBswC,EAAc,eAAsBzlG,EAASw1D,EAAUwR,GACvDomC,EAAuBj4C,GAAUsQ,EAAIZ,SAAW,eAA2B7kE,EAASw1D,EAAUwR,GAC9FqmC,EAAqBl4C,GAAUsQ,EAAIX,OAAS,eAAyB9kE,EAASw1D,EAAUwR,GACxF+N,EAAUtpG,KAAK+5H,cAAc//B,EAAKggC,EAAa2H,GAAwBC,EAAoB1I,GAC3F2I,EAAU,eAAS7hI,KAAKu6H,WAAWh/B,IACnCumC,EAAW,GAef,OAZAx4B,EAAQ/0F,QAAQ,oBAAqB,cAEjCylF,EAAIZ,UACJqoC,EAAWzhI,KAAKo6H,YAAYlgC,GACxBunC,IACAK,EAAW,yBAA2B,gBAAWL,GAAY,YAGrEC,EACI,2BACK,gBAAW33C,EAAStmF,OAAS,KAAO,UACrC,UACD,aAAe6lG,EAAQ90F,KAAK,KAAO,KACrCu1E,EAASnlF,IACN,UAAY,gBAAWmlF,EAASnlF,KAAO,IACvC,KACHi9H,EACG,WAAaA,EAAU,IACvB,IAND,6BASsB,QAAxBttG,EAAQ9mB,QAAQ0hG,IACbuyB,EAAY,IAAMI,EAClBA,EAAW,IAAMJ,GAErB,UACCC,EACG,kDACA,KACHC,EACG,gDACA,IACJ,QAGRJ,EAA2B/mH,UAAUk/G,uBAAyB,WAC1D,MAAO,CACHvuD,KAAM,UACND,OAAQ,UACRykB,gBAAgB,EAChBC,SAAU,WAGlB2xC,EAA2B/mH,UAAUo/G,uBAAyB,WAC1D,OAAO,GAEJ2H,EAlEoC,CAmE7C,QAIE,EAAsC,SAAU/2B,GAEhD,SAASs3B,EAAqBC,GAC1B,IAAI17B,EAAQmE,EAAOjxF,KAAKxZ,OAASA,KAEjC,OADAsmG,EAAM07B,QAAUA,EACT17B,EA+KX,OAnLAtd,EAAU+4C,EAAsBt3B,GAOhCs3B,EAAqBtnH,UAAU4+G,WAAa,SAAUx/B,EAAMq/B,GACxD,IAAI+I,EAAajiI,KAAKiiI,WAAajiI,KAAKkiI,cAAcroC,GAEtD75F,KAAKgiI,QAAQG,OAAOl9H,SAAQ,SAAUm9H,EAAS1pH,GAC3C0pH,EAAQ7V,cAAc,gCAAgCthF,YAAYg3F,EAAWvpH,GAAG2pH,YAG/EnJ,GACDl5H,KAAKgiI,QAAQM,oBAIrBP,EAAqBtnH,UAAU8+G,WAAa,WACxC,IACIgJ,EADAN,EAAajiI,KAAKiiI,YAAc,GAEpC,MAAQM,EAAYN,EAAW5uH,MAC3B,gBAAckvH,EAAUF,SAE5BriI,KAAKiiI,WAAa,MAKtBF,EAAqBtnH,UAAUynH,cAAgB,SAAUroC,GACrD,IACI2oC,EACA93H,EAFAu3H,EAAa,GAKjB,IAFAO,EAAUxiI,KAAKyiI,aAAa5oC,GAEvBnvF,EAAM,EAAGA,EAAM83H,EAAQ92H,OAAQhB,IAChCu3H,EAAW30H,KAAKtN,KAAK0iI,aAAah4H,EAAK83H,EAAQ93H,KAEnD,OAAOu3H,GAKXF,EAAqBtnH,UAAUioH,aAAe,SAAUh4H,EAAKi4H,GACzD,IASIjqH,EACAkqH,EACAjE,EACAkE,EACA72F,EACAguD,EACA8oC,EAfA3vC,EAAQnzF,KAAKu0B,QAAQ4+D,MACrB6uC,EAAUhiI,KAAKgiI,QACftF,EAASsF,EAAQtF,OACjBqG,EAAY/iI,KAAKgjI,eAAeL,GAChCM,EAAW/xH,KAAKmN,IAAI,EAAG0kH,EAAUr3H,QACjCw3H,EAAQn4F,SAASz+B,cAAc,SAC/B62H,EAAY,GACZC,EAAa,GACbC,EAAiB,GASrB,SAASC,EAAgBC,GACrB,MAAO5E,EAAM4E,EAETT,GAAMO,EAAe3qH,EAAI,IAAM,IAAIimH,GAC/BmE,EACAA,EAAGvrD,SAAWurD,EAAGvrD,SAAW,GAAK,GAGjCurD,EAAK/3F,SAASz+B,cAAc,MAC5Bu2H,EAAG53F,YAAY63F,IAEnBM,EAAW1qH,GAAGimH,GAAOmE,EACrBO,EAAe3qH,GAAGimH,GAAOmE,EACzBnE,IAGR,IAAKjmH,EAAI,EAAGA,EAAIuqH,EAAUvqH,IAAK,CAS3B,GARAkqH,EAAYG,EAAUrqH,GACtBimH,EAAM,EACNkE,EAAK93F,SAASz+B,cAAc,MAC5B62H,EAAU71H,KAAK,IACf81H,EAAW91H,KAAK,IAChB+1H,EAAe/1H,KAAK,IAGhBs1H,EACA,IAAK52F,EAAI,EAAGA,EAAI42F,EAAUl3H,OAAQsgC,IAAK,CACnCguD,EAAM4oC,EAAU52F,GAChB,IAAIw3F,EAAUrwC,EAASupC,EAAS,EAAI1iC,EAAIglC,QAAWhlC,EAAI+kC,SACnD0E,EAAWtwC,EAASupC,EAAS,EAAI1iC,EAAI+kC,SAAY/kC,EAAIglC,QACzDsE,EAAgBE,GAEhBV,EAAK,eAAc,KAAM,CAAEjoF,UAAW,sBAAwBm/C,EAAIp/C,IAC9D4oF,IAAYC,EACZX,EAAGxrD,QAAUmsD,EAAWD,EAAU,EAGlCH,EAAe3qH,GAAGimH,GAAOmE,EAE7B,MAAOnE,GAAO8E,EACVL,EAAW1qH,GAAGimH,GAAOmE,EACrBK,EAAUzqH,GAAGimH,GAAO3kC,EACpB2kC,IAEJkE,EAAG53F,YAAY63F,GAGvBQ,EAAgB5G,GAChB,IAAIgH,EAAY1B,EAAQ2B,YAAYxG,kBAChCuG,IACIvwC,EACA,eAAgB0vC,EAAIa,GAGpB,gBAAiBb,EAAIa,IAG7BR,EAAMj4F,YAAY43F,GAEtB,MAAO,CACHn4H,IAAKA,EACL23H,QAASa,EACTE,WAAYA,EACZD,UAAWA,EACXJ,UAAWA,EACXlpC,KAAM8oC,IAKdZ,EAAqBtnH,UAAUuoH,eAAiB,SAAUnpC,GACtD,IAGInhF,EACAshF,EACAhuD,EALAmnD,EAAQnzF,KAAKu0B,QAAQ4+D,MACrBupC,EAAS18H,KAAKgiI,QAAQtF,OACtBkH,EAAS,GAOb,IADA/pC,EAAO75F,KAAKw6H,cAAc3gC,GACrBnhF,EAAI,EAAGA,EAAImhF,EAAKnuF,OAAQgN,IAAK,CAG9B,IAFAshF,EAAMH,EAAKnhF,GAENszB,EAAI,EAAGA,EAAI43F,EAAOl4H,OAAQsgC,IAC3B,IAAK63F,EAAkB7pC,EAAK4pC,EAAO53F,IAC/B,MAIRguD,EAAIryE,MAAQqkB,EACZguD,EAAIwpC,QAAUrwC,EAASupC,EAAS,EAAI1iC,EAAIglC,QAAWhlC,EAAI+kC,SACvD/kC,EAAIypC,SAAWtwC,EAASupC,EAAS,EAAI1iC,EAAI+kC,SAAY/kC,EAAIglC,SAExD4E,EAAO53F,KAAO43F,EAAO53F,GAAK,KAAK1+B,KAAK0sF,GAGzC,IAAKhuD,EAAI,EAAGA,EAAI43F,EAAOl4H,OAAQsgC,IAC3B43F,EAAO53F,GAAG7mC,KAAK2+H,GAEnB,OAAOF,GAGX7B,EAAqBtnH,UAAUgoH,aAAe,SAAU5oC,GACpD,IACInhF,EADA8pH,EAAU,GAEd,IAAK9pH,EAAI,EAAGA,EAAI1Y,KAAKgiI,QAAQ3D,OAAQ3lH,IACjC8pH,EAAQl1H,KAAK,IAEjB,IAAKoL,EAAI,EAAGA,EAAImhF,EAAKnuF,OAAQgN,IACzB8pH,EAAQ3oC,EAAKnhF,GAAGhO,KAAK4C,KAAKusF,EAAKnhF,IAEnC,OAAO8pH,GAGXT,EAAqBtnH,UAAUo/G,uBAAyB,WACpD,OAA+B,IAAxB75H,KAAKgiI,QAAQtF,QAEjBqF,EApL8B,CAqLvC,GAEF,SAAS8B,EAAkB7pC,EAAK+pC,GAC5B,IAAIrrH,EACAsrH,EACJ,IAAKtrH,EAAI,EAAGA,EAAIqrH,EAAUr4H,OAAQgN,IAE9B,GADAsrH,EAAWD,EAAUrrH,GACjBsrH,EAASjF,UAAY/kC,EAAIglC,SACzBgF,EAAShF,SAAWhlC,EAAI+kC,SACxB,OAAO,EAGf,OAAO,EAGX,SAAS+E,EAAkBvkH,EAAGpB,GAC1B,OAAOoB,EAAEikH,QAAUrlH,EAAEqlH,QAGzB,IAAI,EAAuC,SAAU/4B,GAEjD,SAASw5B,IACL,OAAkB,OAAXx5B,GAAmBA,EAAOnvF,MAAMtb,KAAMiZ,YAAcjZ,KA2B/D,OA7BAgpF,EAAUi7C,EAAuBx5B,GAIjCw5B,EAAsBxpH,UAAU4+G,WAAa,SAAUx/B,EAAMq/B,GACzD,IAAIoH,EAAYpH,EAAWoH,UACvB2B,EAAajiI,KAAKiiI,WAAajiI,KAAKkiI,cAAcroC,GAEtD75F,KAAKgiI,QAAQG,OAAOl9H,SAAQ,SAAUm9H,EAAS13H,GAC3C,IACIw5H,EACAC,EAFAC,EAAa,gBAAc,yDAI3B9D,GAAaA,EAAU51H,MAAQA,EAC/Bw5H,EAAgB5D,EAAU1lF,IAG1BspF,EAAgB9B,EAAQ7V,cAAc,8BACjC2X,IACDA,EAAgB9B,EAAQ7V,cAAc,gCAG9C4X,EAAcD,EAAc1wE,wBAAwBpjC,IAChDgyG,EAAQ5uE,wBAAwBpjC,IACpCg0G,EAAW73H,MAAM6jB,IAAM+zG,EAAc,KACrCC,EAAW7X,cAAc,SAASthF,YAAYg3F,EAAWv3H,GAAK23H,SAC9DD,EAAQn3F,YAAYm5F,OAGrBH,EA9B+B,CA+BxC,GAEEI,EAAkB,wCAClB,EAAqC,SAAU55B,GAE/C,SAAS65B,EAAoBtC,GACzB,IAAI17B,EAAQmE,EAAOjxF,KAAKxZ,OAASA,KAGjC,OAFAsmG,EAAMi1B,WAAa,KACnBj1B,EAAM07B,QAAUA,EACT17B,EAqEX,OA1EAtd,EAAUs7C,EAAqB75B,GAO/B65B,EAAoB7pH,UAAUw+G,WAAa,SAAU/2H,EAAMqyB,EAASslE,GAEnD,YAAT33F,IACA23F,EAAOA,EAAKvpD,QAAO,SAAU0pD,GACzB,OAAOA,EAAIE,WAAWpO,IAAIpC,WAGlC+gB,EAAOhwF,UAAUw+G,WAAWz/G,KAAKxZ,KAAMkC,EAAMqyB,EAASslE,IAE1DyqC,EAAoB7pH,UAAU4+G,WAAa,SAAUn3H,EAAM23F,GACvD,IACInhF,EACAshF,EACAoqC,EAHAxrD,EAAM,GAIV,IAAKlgE,EAAI,EAAGA,EAAImhF,EAAKnuF,OAAQgN,IACzBshF,EAAMH,EAAKnhF,GACX0rH,EAAapkI,KAAKukI,cAAcriI,EAAM83F,GACtCh6F,KAAKgiI,QAAQG,OAAOnoC,EAAItvF,KAAKugC,YAAYm5F,GACzCxrD,EAAItrE,KAAK82H,GAEb,OAAOxrD,GAGX0rD,EAAoB7pH,UAAU8pH,cAAgB,SAAUriI,EAAM83F,GAC1D,IAOIn/C,EACAupF,EACAI,EATAxC,EAAUhiI,KAAKgiI,QACf7uC,EAAQnzF,KAAKu0B,QAAQ4+D,MACrBupC,EAASsF,EAAQtF,OACjB8G,EAAUrwC,EAASupC,EAAS,EAAI1iC,EAAIglC,QAAWhlC,EAAI+kC,SACnD0E,EAAWtwC,EAASupC,EAAS,EAAI1iC,EAAI+kC,SAAY/kC,EAAIglC,QACrDyF,EAAWjB,EACXD,EAASE,EAAW,EAKpB5oF,EADS,kBAAT34C,EACY,UAGAA,EAAKoU,cAErB8tH,EAAa,gBAAc,kBAAoBvpF,EAApB,6CAG3B2pF,EAAOJ,EAAWM,qBAAqB,MAAM,GACzCD,EAAW,GACX,eAAgBD,EAEhB,IAAIx3H,MAAMy3H,EAAW,GAAGjwH,KAAK6vH,IAEjCrqC,EAAIp/C,GAAG08B,QAAUisD,EAASkB,EAC1BD,EAAKv5F,YAAY+uD,EAAIp/C,IACjB2oF,EAAS7G,GACT,eAAgB8H,EAEhB,IAAIx3H,MAAM0vH,EAAS6G,EAAS,GAAG/uH,KAAK6vH,IAExC,IAAIX,EAAY1B,EAAQ2B,YAAYxG,kBASpC,OARIuG,IACIvwC,EACA,eAAgBqxC,EAAMd,GAGtB,gBAAiBc,EAAMd,IAGxBU,GAEJE,EA3E6B,CA4EtC,QAEE,EAAyB,SAAU75B,GAEnC,SAASk6B,EAAQ/pF,GACb,IAAI0rD,EAAQmE,EAAOjxF,KAAKxZ,KAAM46C,IAAO56C,KACjC4kI,EAAgBt+B,EAAMs+B,cAAgB,IAAI,EAAqBt+B,GAC/Du+B,EAAcv+B,EAAMu+B,YAAc,gBAAiBv+B,EAAMw+B,cAK7D,OAJAx+B,EAAMy+B,eAAiB,gBAAiBH,EAAc3L,WAAW19E,KAAKqpF,GAAgBA,EAAc1/B,SAAS3pD,KAAKqpF,GAAgB,CAACC,IACnIv+B,EAAM+wB,qBAAuB,gBAAiBuN,EAAcxJ,mBAAmB7/E,KAAKqpF,GAAgBA,EAAcvJ,qBAAqB9/E,KAAKqpF,GAAgB,CAACt+B,EAAMy+B,iBACnKz+B,EAAMixB,gBAAkB,gBAAiBqN,EAAc3J,WAAW1/E,KAAKqpF,GAAgBA,EAAczJ,WAAW5/E,KAAKqpF,GAAgB,CAACC,IACtIv+B,EAAMmxB,kBAAoB,gBAAiBmN,EAAc3J,WAAW1/E,KAAKqpF,GAAgBA,EAAczJ,WAAW5/E,KAAKqpF,GAAgB,CAACC,IACjIv+B,EAwDX,OAjEAtd,EAAU27C,EAASl6B,GAWnBk6B,EAAQlqH,UAAUw1F,aAAe,SAAU17E,GACvCA,EAAQ62D,SAASioC,6BAA6BrzH,KAAM,CAChD46C,GAAI56C,KAAK46C,GACTqxE,gBAAgB,KAGxB0Y,EAAQlqH,UAAU3a,OAAS,SAAU6K,EAAO4pB,GACxCv0B,KAAK6kI,YAAYl6H,EAAM0jE,MACvBruE,KAAK+kI,eAAexwG,EAAS5pB,EAAMq6H,QACnChlI,KAAKq3H,qBAAqB1sH,EAAM8zF,gBAChCz+F,KAAKu3H,gBAAgB5sH,EAAMs6H,oBAC3BjlI,KAAKy3H,kBAAkB9sH,EAAMu6H,uBAEjCP,EAAQlqH,UAAU/M,QAAU,WACxB+8F,EAAOhwF,UAAU/M,QAAQ8L,KAAKxZ,MAC9BA,KAAK6kI,YAAY3/B,WACjBllG,KAAKu0B,QAAQ62D,SAASuoC,+BAA+B3zH,OAEzD2kI,EAAQlqH,UAAUqqH,aAAe,SAAUz2D,GACvC,IAAI6T,EAAKliF,KAAKu0B,QAAS80E,EAAQnnB,EAAGmnB,MAAO3gB,EAAUxG,EAAGwG,QAASj7E,EAAUy0E,EAAGz0E,QACxEhK,EAAQilF,EAAQ7yB,OAAOwY,EAAM,eAAgB5gE,EAAQyqG,mBAEzDl4G,KAAK46C,GAAGi9B,UACJ,yBAA2BwxB,EAAMK,SAAS,iBAA1C,4BAEI,gBAAWjmG,GAFf,gCAI+B4lG,EAAMuF,aAAa,SAJlD,sCAM6BvF,EAAMK,SAAS,kBAN5C,iDASJ1pG,KAAKmlI,eAAiBnlI,KAAK46C,GAAG2xE,cAAc,wBAEhDoY,EAAQlqH,UAAU41F,SAAW,SAAUC,EAAcC,EAAaC,EAASC,GACvE,IAAIpiC,EAAOruE,KAAK2K,MAAM0jE,KACtB,GAAIiiC,EAAeE,GAAWD,EAAcE,EACxC,MAAO,CACHzsG,UAAWhE,KACXknG,SAAU,CACNxd,QAAQ,EACRxgD,MAAO,CAAEtS,MAAOy3C,EAAM5nC,IAAK,eAAQ4nC,EAAM,KAE7CgmD,MAAOr0H,KAAK46C,GACZlqB,KAAM,CACFP,KAAM,EACNC,IAAK,EACLC,MAAOmgF,EACPlgF,OAAQmgF,GAEZ20B,MAAO,IAIZT,EAlEiB,CAmE1B,QACE,EAAsC,SAAUl6B,GAEhD,SAAS46B,EAAqBC,GAC1B,IAAIh/B,EAAQmE,EAAOjxF,KAAKxZ,OAASA,KAEjC,OADAsmG,EAAMg/B,QAAUA,EACTh/B,EAcX,OAlBAtd,EAAUq8C,EAAsB56B,GAMhC46B,EAAqB5qH,UAAU4+G,WAAa,SAAUx/B,GAClD,IAAK,IAAI7S,EAAK,EAAGmT,EAASN,EAAM7S,EAAKmT,EAAOzuF,OAAQs7E,IAAM,CACtD,IAAIgT,EAAMG,EAAOnT,GACjBhnF,KAAKslI,QAAQH,eAAel6F,YAAY+uD,EAAIp/C,MAGpDyqF,EAAqB5qH,UAAU8+G,WAAa,SAAU1/B,GAClD,IAAK,IAAI7S,EAAK,EAAG6T,EAAShB,EAAM7S,EAAK6T,EAAOnvF,OAAQs7E,IAAM,CACtD,IAAIgT,EAAMa,EAAO7T,GACjB,gBAAcgT,EAAIp/C,MAGnByqF,EAnB8B,CAoBvC,GAEEE,EAA0B,WAC1B,SAASA,EAAShxG,GACdv0B,KAAKu0B,QAAUA,EAmBnB,OAjBAgxG,EAAS9qH,UAAU+qH,WAAa,SAAU76H,GACtC,IAAIwI,EAAQ,GACRxI,EAAMwyH,iBACNhqH,EAAM7F,KAAK3C,EAAMwyH,mBAErB,IAAK,IAAIn2C,EAAK,EAAG9E,EAAKv3E,EAAM2zH,MAAOt3C,EAAK9E,EAAGx2E,OAAQs7E,IAAM,CACrD,IAAIy+C,EAAOvjD,EAAG8E,GACd7zE,EAAM7F,KAAKo4H,EAAeD,EAAKp3D,KAAM1jE,EAAMqyF,YAAah9F,KAAKu0B,QAASkxG,EAAKE,YAQ/E,OANKh7H,EAAM2zH,MAAM5yH,QACbyH,EAAM7F,KAAK,qBAAuBtN,KAAKu0B,QAAQ80E,MAAMK,SAAS,iBAAmB,WAEpD,QAA7B1pG,KAAKu0B,QAAQ9mB,QAAQ0hG,KACrBh8F,EAAM6X,UAEH,OAAS7X,EAAMqB,KAAK,IAAM,SAE9B+wH,EArBkB,GAuB7B,SAASG,EAAer3D,EAAM2uB,EAAazoE,EAASsoG,GAChD,IAAIn0C,EAAUn0D,EAAQm0D,QAAS2gB,EAAQ90E,EAAQ80E,MAC3CyzB,EAAc,gBAAoB9/B,EAAYI,YAAa/uB,GAC3Di7B,EAAU,gBAAcj7B,EAAM2uB,EAAazoE,GAE/C,OADA+0E,EAAQ/0F,QAAQ,SAAU80F,EAAMK,SAAS,kBAClC,cAAgBJ,EAAQ90F,KAAK,KAAO,KACtCsoH,EACG,eAAiBp0C,EAAQ+f,UAAUp6B,EAAM,CAAEq6B,UAAU,IAAU,IAC/D,KACHm0B,EACG,IAAMA,EACN,IACJ,SAGR,IAAI+I,EAAiB,eAAgB,CAAEv6D,IAAK,YACxCw6D,EAAkB,eAAgB,CAAEv6D,KAAM,YAC1C,EAAyB,SAAUm/B,GAEnC,SAASq7B,EAAQlrF,EAAI+oF,GACjB,IAAIr9B,EAAQmE,EAAOjxF,KAAKxZ,KAAM46C,IAAO56C,KACrCsmG,EAAMy/B,mBAAqB,EAC3Bz/B,EAAM0/B,kBAAmB,EACzB1/B,EAAMq9B,YAAcA,EACpB,IAAIiB,EAAgBt+B,EAAMs+B,cAAgB,IAAI,EAAqBt+B,GAC/D2/B,EAAe3/B,EAAM2/B,aAAe,IAAI,EAAoB3/B,GAChEA,EAAM4/B,eAAiB,IAAI,EAAsB5/B,GACjD,IAAI6/B,EAAc7/B,EAAM6/B,YAAc,gBAAiB7/B,EAAM8/B,aAAc9/B,EAAM+/B,gBAQjF,OAPA//B,EAAMsvB,oBAAsB,gBAAiBqQ,EAAahN,WAAW19E,KAAK0qF,EAAc,iBAAkBA,EAAa/gC,SAAS3pD,KAAK0qF,EAAc,iBAAkB,CAACE,IACtK7/B,EAAM4wB,oBAAsB,gBAAiB+O,EAAahN,WAAW19E,KAAK0qF,EAAc,aAAcA,EAAa/gC,SAAS3pD,KAAK0qF,EAAc,aAAc,CAACE,IAC9J7/B,EAAMggC,eAAiB,gBAAiBL,EAAahN,WAAW19E,KAAK0qF,EAAc,WAAYA,EAAa/gC,SAAS3pD,KAAK0qF,EAAc,WAAY,CAACE,IACrJ7/B,EAAMy+B,eAAiB,gBAAiBH,EAAc3L,WAAW19E,KAAKqpF,GAAgBA,EAAc1/B,SAAS3pD,KAAKqpF,GAAgB,CAACuB,IACnI7/B,EAAM+wB,qBAAuB,gBAAiBuN,EAAcxJ,mBAAmB7/E,KAAKqpF,GAAgBA,EAAcvJ,qBAAqB9/E,KAAKqpF,GAAgB,CAACt+B,EAAMy+B,iBACnKz+B,EAAMixB,gBAAkB,gBAAiBjxB,EAAMigC,iBAAkBjgC,EAAMkgC,mBAAoB,CAACL,IAC5F7/B,EAAMmxB,kBAAoB,gBAAiBnxB,EAAMmgC,mBAAoBngC,EAAMogC,qBAAsB,CAACP,IAC3F7/B,EAgiBX,OAjjBAtd,EAAU88C,EAASr7B,GAmBnBq7B,EAAQrrH,UAAU3a,OAAS,SAAU6K,EAAO4pB,GACxC,IAAI+pG,EAAQ3zH,EAAM2zH,MAClBt+H,KAAKq+H,OAASC,EAAM5yH,OACpB1L,KAAK08H,OAAS4B,EAAM,GAAG5yH,OACvB1L,KAAKmmI,YAAY7H,EAAO3zH,EAAMg8H,SAC9B3mI,KAAK41H,oBAAoBrhG,EAAS5pB,EAAMm1H,kBACxC9/H,KAAKk3H,oBAAoB3iG,EAAS5pB,EAAMk1H,mBACxC7/H,KAAKsmI,eAAe/xG,EAAS5pB,EAAMq1H,aACnChgI,KAAK+kI,eAAexwG,EAAS5pB,EAAMo1H,aACnC//H,KAAKq3H,qBAAqB1sH,EAAM8zF,gBAChCz+F,KAAKu3H,gBAAgB5sH,EAAMyzF,WAC3Bp+F,KAAKy3H,kBAAkB9sH,EAAM+zF,aACzB1+F,KAAK4mI,gBACL5mI,KAAK6mI,wBAGbf,EAAQrrH,UAAU/M,QAAU,WACxB+8F,EAAOhwF,UAAU/M,QAAQ8L,KAAKxZ,MAC9BA,KAAKmmI,YAAYjhC,YAErB4gC,EAAQrrH,UAAUqsH,aAAe,SAAUp8H,EAAKi0H,GAC5C,IAAI/nG,EAAQ52B,KAAK2K,MAAM2zH,MAAM5zH,GAAKi0H,GAAKtwD,KACnC5nC,EAAM,eAAQ7P,EAAO,GACzB,MAAO,CAAEA,MAAOA,EAAO6P,IAAKA,IAEhCq/F,EAAQrrH,UAAUosH,qBAAuB,SAAUx4D,EAAMwrB,GACrD,IAAIktC,EAAW/mI,KAAK2K,MACpB3K,KAAK4mI,eAAej3B,aAAa,CAC7BthC,KAAMA,GAAQruE,KAAK4mI,eAAej8H,MAAM0jE,KACxC22D,OAAQnrC,GAAQ75F,KAAK4mI,eAAej8H,MAAMq6H,OAC1CvmC,eAAgBsoC,EAAStoC,eACzBwmC,mBAAoB8B,EAAS3oC,UAAY2oC,EAAS3oC,UAAUiiC,kBAAoB,KAChF6E,qBAAsB6B,EAASroC,YAAcqoC,EAASroC,YAAY2hC,kBAAoB,MACvFrgI,KAAKu0B,UAIZuxG,EAAQrrH,UAAU2rH,aAAe,SAAU9H,EAAOqI,GAC9C,IAGIj8H,EACAi0H,EAJAz8C,EAAKliF,KAAKu0B,QAAS62D,EAAWlJ,EAAGkJ,SAAUv0D,EAAOqrD,EAAGrrD,KAAMs8D,EAAQjR,EAAGiR,MAAOzK,EAAUxG,EAAGwG,QAC1FqN,EAAK/1F,KAAMq+H,EAAStoC,EAAGsoC,OAAQ3B,EAAS3mC,EAAG2mC,OAC3Ch5H,EAAO,GAGX,IAAKgH,EAAM,EAAGA,EAAM2zH,EAAQ3zH,IACxBhH,GAAQ1D,KAAKgnI,iBAAiBt8H,EAAKi8H,GAcvC,IAZA3mI,KAAK46C,GAAGi9B,UAAYn0E,EACpB1D,KAAKmiI,OAAS,gBAAaniI,KAAK46C,GAAI,WACpC56C,KAAKinI,QAAU,gBAAajnI,KAAK46C,GAAI,6BACjCu4C,GACAnzF,KAAKinI,QAAQj8G,UAEjBhrB,KAAKknI,aAAe,IAAI,OAAclnI,KAAK46C,GAAI56C,KAAKmiI,QAAQ,GAAO,GAEnEniI,KAAKmnI,aAAe,IAAI,OAAcnnI,KAAK46C,GAAI56C,KAAKinI,QAAQ37H,MAAM,EAAGoxH,IACrE,GAAM,GAGDhyH,EAAM,EAAGA,EAAM2zH,EAAQ3zH,IACxB,IAAKi0H,EAAM,EAAGA,EAAMjC,EAAQiC,IACxBvzC,EAAS6O,gBAAgB,YAAa,CAClC,CACI5rB,KAAMqa,EAAQwP,OAAOomC,EAAM5zH,GAAKi0H,GAAKtwD,MACrCzzB,GAAI56C,KAAKonI,UAAU18H,EAAKi0H,GACxB9nG,KAAMA,KAKtB72B,KAAKgmI,kBAAmB,GAE5BF,EAAQrrH,UAAU4rH,eAAiB,WAC/BrmI,KAAKsiI,oBAITwD,EAAQrrH,UAAUusH,iBAAmB,SAAUt8H,EAAKi8H,GAChD,IAAIt9B,EAAQrpG,KAAKu0B,QAAQ80E,MACrBC,EAAU,CAAC,SAAU,UAAWD,EAAMK,SAAS,WAC/Ci9B,GACAr9B,EAAQh8F,KAAK,YAEjB,IAAI+5H,EAAQ,IAAI9B,EAASvlI,KAAKu0B,SAC9B,MACI,eAAiB+0E,EAAQ90F,KAAK,KAD3B,sCAGgB60F,EAAMK,SAAS,aAAe,KACjD29B,EAAM7B,WAAW,CACblH,MAAOt+H,KAAK2K,MAAM2zH,MAAM5zH,GACxBsyF,YAAah9F,KAAK2K,MAAMqyF,YACxBmgC,gBAAiBn9H,KAAK2jI,YAAY2D,oBAPnC,0DAaFtnI,KAAKunI,sBACF,UACIvnI,KAAKwnI,mBAAmB98H,GACxB,WACJ,IAjBD,wBAsBXo7H,EAAQrrH,UAAU8sH,oBAAsB,WACpC,OAAOvnI,KAAKynI,0BACRznI,KAAK2jI,YAAY+D,wBACjB1nI,KAAK2jI,YAAYgE,uBAEzB7B,EAAQrrH,UAAUgtH,uBAAyB,WACvC,OAAOznI,KAAKq+H,OAAS,GAIzByH,EAAQrrH,UAAU+sH,mBAAqB,SAAU98H,GAC7C,IAAIyoF,EAAQnzF,KAAKu0B,QAAQ4+D,MACrBy0C,EAAQ5nI,KAAK2jI,YAAYkE,sBAAsBn9H,EAAK1K,MACxD,MACI,QACCmzF,EAAQ,GAAKy0C,GACd5nI,KAAK8nI,sBAAsBp9H,IAC1ByoF,EAAQy0C,EAAQ,IACjB,SAER9B,EAAQrrH,UAAUqtH,sBAAwB,SAAUp9H,GAChD,IACIi0H,EACAtwD,EAFA05D,EAAQ,GAGZ,IAAKpJ,EAAM,EAAGA,EAAM3+H,KAAK08H,OAAQiC,IAC7BtwD,EAAOruE,KAAK2K,MAAM2zH,MAAM5zH,GAAKi0H,GAAKtwD,KAClC05D,EAAMz6H,KAAKtN,KAAKgoI,qBAAqB35D,IAKzC,OAHIruE,KAAKu0B,QAAQ4+D,OACb40C,EAAM/8G,UAEH+8G,EAAMvzH,KAAK,KAItBsxH,EAAQrrH,UAAUutH,qBAAuB,SAAU35D,GAC/C,IAIIi7B,EACA2+B,EALA/lD,EAAKliF,KAAKu0B,QAASm0D,EAAUxG,EAAGwG,QAASj7E,EAAUy0E,EAAGz0E,QACtD/J,EAAO,GACPo5H,EAAc,gBAAoB98H,KAAK2K,MAAMqyF,YAAYI,YAAa/uB,GACtE65D,EAAqBloI,KAAKynI,0BAA4B3K,EAG1D,OAAKoL,GAAuBloI,KAAK2jI,YAAY+D,wBAI7Cp+B,EAAU,gBAAcj7B,EAAMruE,KAAK2K,MAAMqyF,YAAah9F,KAAKu0B,SAC3D+0E,EAAQ/0F,QAAQ,cACZvU,KAAK2jI,YAAY+D,yBACjBO,EAAmBv/C,EAAQwzB,SAE/Bx4G,GAAQ,cAAgB4lG,EAAQ90F,KAAK,KAAO,KACvCsoH,EACG,eAAiBp0C,EAAQ+f,UAAUp6B,EAAM,CAAEq6B,UAAU,IAAU,IAC/D,IACJ,IACA1oG,KAAK2jI,YAAY+D,wBAA2Br5D,EAAK6S,cAAgB+mD,IACjEvkI,GAAQ,eAAoB+J,EAASi7E,EAAS,CAAEra,KAAMA,EAAMnsE,KAAM,QAAU,CAAE,MAAS,kBAAoBwmF,EAAQ7yB,OAAOwY,EAAMw3D,KAGhIqC,IACAxkI,GAAQ,eAAoB+J,EAASi7E,EAASra,EAAM,CAAE,MAAS,iBAAmBqa,EAAQ7yB,OAAOwY,EAAMu3D,KAG3GliI,GAAQ,QACDA,GArBI,aAyBfoiI,EAAQrrH,UAAUuvG,WAAa,SAAUkB,GACrC,IAAI9/B,EAAWprF,KAAKu0B,QAAQ62D,SACxBlJ,EAAKliF,KAAMimI,EAAe/jD,EAAG+jD,aAAcrB,EAAgB1iD,EAAG0iD,cAAesB,EAAiBhkD,EAAGgkD,gBACjGhb,GACAlrH,KAAKgmI,kBACL56C,EAAS+jC,mBAETnvH,KAAKowG,sBACLpwG,KAAKgmI,kBAAmB,GAE5BC,EAAarL,aAAa1P,GAC1B0Z,EAAchK,aAAa1P,GAC3Bgb,EAAetL,aAAa1P,GAC5B+a,EAAalL,YAAY7P,GACzB0Z,EAAc7J,YAAY7P,GAC1Bgb,EAAenL,YAAY7P,IAE/B4a,EAAQrrH,UAAU21F,oBAAsB,WACpCpwG,KAAKmoI,oBACLnoI,KAAKooI,qBAETtC,EAAQrrH,UAAU0tH,kBAAoB,WAClCnoI,KAAKmnI,aAAa/7B,SAEtB06B,EAAQrrH,UAAU2tH,kBAAoB,WAClCpoI,KAAKknI,aAAa97B,QAClBprG,KAAKknI,aAAar7B,QAAQ7rG,KAAKq+H,OAAS,IAAMr+H,KAAK+lI,oBAIvDD,EAAQrrH,UAAU4tH,cAAgB,SAAUt8B,EAAcE,GACtD,IAAI/pB,EAAKliF,KAAMmnI,EAAejlD,EAAGilD,aAAcD,EAAehlD,EAAGglD,aAC7DvI,EAAMwI,EAAar7B,YAAYC,GAC/BrhG,EAAMw8H,EAAal7B,WAAWC,GAClC,GAAW,MAAPvhG,GAAsB,MAAPi0H,EACf,MAAO,CACHj0H,IAAKA,EACLi0H,IAAKA,EACLz3B,SAAU,CACNh+D,MAAOlpC,KAAK8mI,aAAap8H,EAAKi0H,GAC9Bj1C,QAAQ,GAEZ2qC,MAAOr0H,KAAKonI,UAAU18H,EAAKi0H,GAC3B2J,aAAc,CACVn4G,KAAMg3G,EAAa17B,MAAMkzB,GACzBtuG,MAAO82G,EAAaz7B,OAAOizB,GAC3BvuG,IAAK82G,EAAat7B,KAAKlhG,GACvB4lB,OAAQ42G,EAAar7B,QAAQnhG,MAQ7Co7H,EAAQrrH,UAAU2sH,UAAY,SAAU18H,EAAKi0H,GACzC,OAAO3+H,KAAKinI,QAAQv8H,EAAM1K,KAAK08H,OAASiC,IAI5CmH,EAAQrrH,UAAU8rH,iBAAmB,SAAUzjI,GACvCA,IACA9C,KAAK4kI,cAAc3J,WAAWn4H,EAAMu9H,mBACpCrgI,KAAKimI,aAAahN,WAAW,YAAaj5H,KAAKu0B,QAASzxB,EAAM+2F,QAGtEisC,EAAQrrH,UAAU+rH,mBAAqB,SAAU1jI,GACzCA,IACA9C,KAAK4kI,cAAczJ,WAAWr4H,EAAMu9H,mBACpCrgI,KAAKimI,aAAa/gC,SAAS,YAAallG,KAAKu0B,WAKrDuxG,EAAQrrH,UAAUgsH,mBAAqB,SAAU3jI,GACzCA,IACA9C,KAAK4kI,cAAc3J,WAAWn4H,EAAMu9H,mBACpCrgI,KAAKimI,aAAahN,WAAW,YAAaj5H,KAAKu0B,QAASzxB,EAAM+2F,MAC9D75F,KAAKkmI,eAAejN,WAAWj5H,KAAKu0B,QAASzxB,EAAM+2F,KAAM,CAAEsgC,YAAY,EAAMmG,UAAWx9H,EAAMw9H,cAGtGwF,EAAQrrH,UAAUisH,qBAAuB,SAAU5jI,GAC3CA,IACA9C,KAAK4kI,cAAczJ,WAAWr4H,EAAMu9H,mBACpCrgI,KAAKimI,aAAa/gC,SAAS,YAAallG,KAAKu0B,SAC7Cv0B,KAAKkmI,eAAehhC,SAASllG,KAAKu0B,QAASzxB,EAAM+2F,KAAM,CAAEsgC,YAAY,EAAMmG,UAAWx9H,EAAMw9H,cAKpGwF,EAAQrrH,UAAU6nH,iBAAmB,WAC7BtiI,KAAKuoI,YACLvoI,KAAKuoI,WAAWpH,QAKxB2E,EAAQrrH,UAAU+tH,UAAY,SAAUC,GACpC,IACI/9H,EACAg+H,EAFAzG,EAAajiI,KAAK4kI,cAAc3C,YAAc,GAGlD,IAAKv3H,EAAM,EAAGA,EAAMu3H,EAAWv2H,OAAQhB,IACnC1K,KAAK2oI,WAAWj+H,GAKZg+H,IAJCD,IAG0B,kBAAfA,EACIA,EAGAzoI,KAAK4oI,qBAAqBl+H,KAExB,IAAlBg+H,GACA1oI,KAAK6oI,SAASn+H,EAAKg+H,IAO/B5C,EAAQrrH,UAAUmuH,qBAAuB,SAAUl+H,GAC/C,IAGIgO,EACA8rH,EAJA5gD,EAAQ5jF,KAAKmiI,OAAOz3H,GACpBo+H,EAAYllD,EAAMpwB,wBAAwBljC,OAC1Cy4G,EAAQ,gBAAa/oI,KAAK4kI,cAAc3C,WAAWv3H,GAAK23H,SAI5D,IAAK3pH,EAAI,EAAGA,EAAIqwH,EAAMr9H,OAAQgN,IAG1B,GAFA8rH,EAAOuE,EAAMrwH,GACb8rH,EAAKzoF,UAAUG,OAAO,cAClBsoF,EAAKhxE,wBAAwBljC,OAASw4G,EACtC,OAAOpwH,EAGf,OAAO,GAKXotH,EAAQrrH,UAAUouH,SAAW,SAAUn+H,EAAK+9H,GACxC,IAMI7F,EACAQ,EACA4F,EACAtwH,EACAshF,EACAivC,EACAC,EACAC,EACArG,EACAvrD,EACA6xD,EACAp9F,EACAq9F,EACAC,EACAC,EApBAjjC,EAAQtmG,KACR08H,EAAS18H,KAAK08H,OACdvpC,EAAQnzF,KAAKu0B,QAAQ4+D,MACrBovC,EAAYviI,KAAK4kI,cAAc3C,WAAWv3H,GAC1C8+H,EAAY,GACZ7K,EAAM,EAiBN2E,EAAkB,SAAUC,GAC5B,MAAO5E,EAAM4E,EACT0F,EAAY3iC,EAAMmjC,YAAY/+H,EAAKi0H,EAAK8J,GACpCQ,EAAUv9H,SACVo3H,EAAKM,EAAWqF,EAAa,GAAG9J,GAChC4K,EAAWjjC,EAAMojC,eAAeh/H,EAAKi0H,EAAKsK,GAC1CK,EAAW,eAAc,MAAO,KAAMC,GACtCzG,EAAG73F,YAAYq+F,GACfE,EAAUl8H,KAAKg8H,IAEnB3K,KAGR,GAAI8J,GAAcA,EAAalG,EAAUQ,UAAUr3H,OAAQ,CAQvD,IAPAk3H,EAAYL,EAAUQ,UAAU0F,EAAa,GAC7CrF,EAAab,EAAUa,WACvB4F,EAAe,gBAAazG,EAAUF,SAAS/2H,MAAMm9H,GACrDO,EAAa/jI,SAAQ,SAAU6d,GAC3BA,EAAKi5B,UAAUC,IAAI,iBAGlBtjC,EAAI,EAAGA,EAAIkqH,EAAUl3H,OAAQgN,IAAK,CACnCshF,EAAM4oC,EAAUlqH,GAChB,IAAI8qH,EAAUrwC,EAASupC,EAAS,EAAI1iC,EAAIglC,QAAWhlC,EAAI+kC,SACnD0E,EAAWtwC,EAASupC,EAAS,EAAI1iC,EAAI+kC,SAAY/kC,EAAIglC,QACzDsE,EAAgBE,GAEhB2F,EAAe,GACfD,EAAiB,EACjB,MAAOvK,GAAO8E,EACVwF,EAAYjpI,KAAKypI,YAAY/+H,EAAKi0H,EAAK8J,GACvCU,EAAa77H,KAAK27H,GAClBC,GAAkBD,EAAUv9H,OAC5BizH,IAEJ,GAAIuK,EAAgB,CAKhB,IAJApG,EAAKM,EAAWqF,EAAa,GAAGjF,GAChCjsD,EAAUurD,EAAGvrD,SAAW,EACxB6xD,EAAe,GAEVp9F,EAAI,EAAGA,EAAIm9F,EAAaz9H,OAAQsgC,IACjCq9F,EAAS,eAAc,KAAM,CAAExuF,UAAW,eAAgB08B,QAASA,IACnE0xD,EAAYE,EAAan9F,GACzBu9F,EAAWvpI,KAAK0pI,eAAeh/H,EAAK84H,EAAUx3F,EAAG,CAACguD,GAAK1zE,OAAO2iH,IAE9DK,EAAW,eAAc,MAAO,KAAMC,GACtCF,EAAOp+F,YAAYq+F,GACnBF,EAAa97H,KAAK+7H,GAClBG,EAAUl8H,KAAK+7H,GAEnBvG,EAAG/mF,UAAUC,IAAI,cACjB,gBAAmB8mF,EAAIsG,GACvBJ,EAAa17H,KAAKw1H,IAG1BQ,EAAgBtjI,KAAK08H,QACrB6F,EAAUoH,QAAUH,EACpBjH,EAAUqH,WAAaZ,IAK/BlD,EAAQrrH,UAAUkuH,WAAa,SAAUj+H,GACrC,IAAI63H,EAAYviI,KAAK4kI,cAAc3C,WAAWv3H,GAC1C63H,EAAUoH,UACVpH,EAAUoH,QAAQ1kI,QAAQ,SAC1Bs9H,EAAUoH,QAAU,MAEpBpH,EAAUqH,aACVrH,EAAUqH,WAAW3kI,SAAQ,SAAU4kI,GACnCA,EAAU9tF,UAAUG,OAAO,iBAE/BqmF,EAAUqH,WAAa,OAK/B9D,EAAQrrH,UAAUivH,eAAiB,SAAUh/H,EAAKi0H,EAAKmL,GACnD,IAAIxjC,EAAQtmG,KACRkiF,EAAKliF,KAAKu0B,QAAS62D,EAAWlJ,EAAGkJ,SAAUv0D,EAAOqrD,EAAGrrD,KAAM6xD,EAAUxG,EAAGwG,QAASj7E,EAAUy0E,EAAGz0E,QAAS0lF,EAAQjR,EAAGiR,MAClH5zE,EAAI,eAAc,IAAK,CAAEs7B,UAAW,YAkCxC,OAjCAt7B,EAAEypG,UAAYhpH,KAAK+pI,gBAAgBD,EAAWp+H,QAC9C6T,EAAEu6B,iBAAiB,SAAS,SAAU0jC,GAClC,IAAIwsD,EAAcv8H,EAAQwqG,gBACtBgyB,EAAO92C,EAAQmT,EAAMo2B,OAASiC,EAAM,EAAIA,EACxCtwD,EAAOi4B,EAAM37F,MAAM2zH,MAAM5zH,GAAKu/H,GAAM57D,KACpC67D,EAAS1sD,EAAG2sD,cACZ9V,EAAQ/tB,EAAM8gC,UAAU18H,EAAKi0H,GAC7ByL,EAAU9jC,EAAMmjC,YAAY/+H,EAAKi0H,GAEjC0L,EAAkB/jC,EAAMgkC,eAAeF,EAAS/7D,GAChDk8D,EAAqBjkC,EAAMgkC,eAAeR,EAAYz7D,GAC/B,oBAAhB27D,IAEPA,EAAc5+C,EAAS6O,gBAAgB,kBAAmB,CACtD,CACI5rB,KAAMqa,EAAQwP,OAAO7pB,GACrBqb,QAAQ,EACR2qC,MAAOA,EACP6V,OAAQA,EACRrwC,KAAMwwC,EACNP,WAAYS,EACZ/d,QAAShvC,EACT3mD,KAAMA,MAIE,YAAhBmzG,EACA1jC,EAAMkkC,eAAe9/H,EAAKi0H,EAAKuL,EAAQG,GAEX,kBAAhBL,GACZ5+C,EAAS+kC,OAAO9hD,EAAM27D,MAGvBzqH,GAGXumH,EAAQrrH,UAAU+vH,eAAiB,SAAU9/H,EAAKi0H,EAAK4K,EAAU1vC,GAC7D,IAII4wC,EACAh9H,EALA64F,EAAQtmG,KACRkiF,EAAKliF,KAAKu0B,QAAS62D,EAAWlJ,EAAGkJ,SAAUv0D,EAAOqrD,EAAGrrD,KAAMwyE,EAAQnnB,EAAGmnB,MAAOlW,EAAQjR,EAAGiR,MACxF82C,EAAO92C,EAAQnzF,KAAK08H,OAASiC,EAAM,EAAIA,EACvC2K,EAAWC,EAASjtF,WAIpBmuF,EADgB,IAAhBzqI,KAAKq+H,OACGxnG,EAAK+jB,GAGL56C,KAAKmiI,OAAOz3H,GAExB+C,EAAU,CACNotC,UAAW,mBAAqBwuD,EAAMK,SAAS,WAC/CiiB,SAAU90F,EAAK+jB,GACfxqB,IAAK,eAAYq6G,GAAOr6G,IACxBixG,UAAU,EACV3pD,QAAS,SAAU98B,GACf0rD,EAAMsgC,eAAiB,IAAI,EAAQhsF,GACnC0rD,EAAMugC,qBAAqBvgC,EAAM37F,MAAM2zH,MAAM5zH,GAAKu/H,GAAM57D,KAAMwrB,IAElEsnC,KAAM,WACF76B,EAAMsgC,eAAel5H,UACrB44F,EAAMsgC,eAAiB,KACvBtgC,EAAMiiC,WAAW76H,UACjB44F,EAAMiiC,WAAa,OAKvBp1C,EACA1lF,EAAQ4iB,MAAQ,eAAYi5G,GAAUj5G,MAAQ,EAG9C5iB,EAAQ0iB,KAAO,eAAYm5G,GAAUn5G,KAAO,EAEhDnwB,KAAKuoI,WAAa,IAAI,EAAQ96H,GAC9BzN,KAAKuoI,WAAWnH,OAChBh2C,EAASgmC,8BAGb0U,EAAQrrH,UAAU6vH,eAAiB,SAAUzwC,EAAM6wC,GAK/C,IAJA,IAAI3pD,EAAW2pD,EACXC,EAAS,eAAQ5pD,EAAU,GAC3B6pD,EAAW,CAAEh0G,MAAOmqD,EAAUt6C,IAAKkkG,GACnCE,EAAU,GACL7jD,EAAK,EAAGmT,EAASN,EAAM7S,EAAKmT,EAAOzuF,OAAQs7E,IAAM,CACtD,IAAIgT,EAAMG,EAAOnT,GACbkT,EAAaF,EAAIE,WACjBjB,EAAYiB,EAAWhxD,MACvBiwD,EAAc,gBAAgBF,EAAW2xC,GACzCzxC,GACA0xC,EAAQv9H,KAAK47E,EAAS,GAAI8Q,EAAK,CAAEE,WAAY,CACrCpO,IAAKoO,EAAWpO,IAChBuK,GAAInN,EAAS,GAAIgR,EAAW7D,GAAI,CAAEE,kBAAkB,IACpDvK,SAAUkO,EAAWlO,SACrB9iD,MAAOiwD,GACRC,QAASY,EAAIZ,SAAWD,EAAYviE,MAAMq5C,YAAcgpB,EAAUriE,MAAMq5C,UAAWopB,MAAOW,EAAIX,OAASF,EAAY1yD,IAAIwpC,YAAcgpB,EAAUxyD,IAAIwpC,aAGlK,OAAO46D,GAGX/E,EAAQrrH,UAAUsvH,gBAAkB,SAAUzkH,GAC1C,IAAI+nE,EAAMrtF,KAAKu0B,QAAQ9mB,QAAQ8rG,eAC/B,MAAmB,oBAARlsB,EACAA,EAAI/nE,GAGJ,IAAMA,EAAM,IAAM+nE,GAKjCy4C,EAAQrrH,UAAUgvH,YAAc,SAAU/+H,EAAKi0H,EAAKmM,GAChD,IAGI9wC,EAHAmpC,EAAYnjI,KAAK4kI,cAAc3C,WAAWv3H,GAAKy4H,UAC/Cx7G,EAAQmjH,GAAc,EACtBjxC,EAAO,GAEX,MAAOlyE,EAAQw7G,EAAUz3H,OACrBsuF,EAAMmpC,EAAUx7G,GAAOg3G,GACnB3kC,GACAH,EAAKvsF,KAAK0sF,GAEdryE,IAEJ,OAAOkyE,GAEJisC,EAljBiB,CAmjB1B,QAEEiF,EAAoB,eAAgB,CAAEz/D,KAAM,YAK5C,EAAqC,SAAUm/B,GAE/C,SAASugC,IACL,IAAI1kC,EAAmB,OAAXmE,GAAmBA,EAAOnvF,MAAMtb,KAAMiZ,YAAcjZ,KAkDhE,OAjDAsmG,EAAM2kC,eAAiB,gBAAQ3kC,EAAM4kC,iBACrC5kC,EAAM+iB,eAAiB,gBAAiB/iB,EAAMgjB,gBAAiBhjB,EAAMijB,mBAIrEjjB,EAAM6kC,oBAAsB,WACxB,IAAIjpD,EAAKokB,EAAM/xE,QAAS80E,EAAQnnB,EAAGmnB,MAAO57F,EAAUy0E,EAAGz0E,QACvD,OAAI64F,EAAMqhC,sBAEF,6BAA+Bt+B,EAAMK,SAAS,gBAAkB,KAAOpD,EAAM8kC,sBAD1E,UAGH,gBAAW39H,EAAQykF,WAHhB,eAOJ,IAKXoU,EAAM+kC,6BAA+B,SAAU3gI,EAAKs3H,GAChD,IAAI9/C,EAAKokB,EAAM/xE,QAAS9mB,EAAUy0E,EAAGz0E,QAASi7E,EAAUxG,EAAGwG,QACvD4iD,EAAYtJ,EAAQr3H,MAAM2zH,MAAM5zH,GAAK,GAAG2jE,KAC5C,OAAIi4B,EAAMqhC,sBAEF,8BAAgCrhC,EAAM8kC,sBAAwB,IAC9D,eACA39H,EAASi7E,EAAS,CAAEra,KAAMi9D,EAAWppI,KAAM,OAAQqmG,SAA6B,IAAnBy5B,EAAQtF,QAAgBh0C,EAAQ7yB,OAAOy1E,EAAWP,IAE/G,QAED,IAGXzkC,EAAMilC,yBAA2B,WAC7B,IAAIliC,EAAQ/C,EAAM/xE,QAAQ80E,MAC1B,OAAI/C,EAAMqhC,sBACC,6BAA+Bt+B,EAAMK,SAAS,iBAAmB,KAAOpD,EAAM8kC,sBAAwB,SAE1G,IAIX9kC,EAAMklC,uBAAyB,WAC3B,OAAIllC,EAAMqhC,sBACC,8BAAgCrhC,EAAM8kC,sBAAwB,SAElE,IAEJ9kC,EAkLX,OAtOAtd,EAAUgiD,EAAqBvgC,GAsD/BugC,EAAoBvwH,UAAUywH,gBAAkB,SAAUz9H,GAClDA,EAAQwpG,YACJxpG,EAAQg+H,uBACRzrI,KAAK0nI,wBAAyB,EAC9B1nI,KAAK2nI,uBAAwB,IAG7B3nI,KAAK0nI,wBAAyB,EAC9B1nI,KAAK2nI,uBAAwB,IAIjC3nI,KAAK2nI,uBAAwB,EAC7B3nI,KAAK0nI,wBAAyB,IAGtCsD,EAAoBvwH,UAAU3a,OAAS,SAAU6K,EAAO4pB,GACpDk2E,EAAOhwF,UAAU3a,OAAO0Z,KAAKxZ,KAAM2K,EAAO4pB,GAC1Cv0B,KAAKirI,eAAe12G,EAAQ9mB,SAC5BzN,KAAKqpH,eAAe90F,IAExBy2G,EAAoBvwH,UAAU/M,QAAU,WACpC+8F,EAAOhwF,UAAU/M,QAAQ8L,KAAKxZ,MAC9BA,KAAKqpH,eAAenkB,YAExB8lC,EAAoBvwH,UAAU6uG,gBAAkB,SAAU/0F,GACtDv0B,KAAK46C,GAAGmB,UAAUC,IAAI,mBACtBh8C,KAAK46C,GAAGi9B,UAAY73E,KAAK0rI,qBACzB1rI,KAAK2rI,SAAW,IAAI,OAAgB,SACpC,QAEA,IAAIC,EAAqB5rI,KAAK2rI,SAAS/wF,GACvC56C,KAAK46C,GAAG2xE,cAAc,sBAAsBthF,YAAY2gG,GACxDA,EAAmB7vF,UAAUC,IAAI,yBACjC,IAAI6vF,EAAY,eAAc,MAAO,CAAEhxF,UAAW,gBAClD+wF,EAAmB3gG,YAAY4gG,GAC/B7rI,KAAKgiI,QAAU,IAAI,EAAQ6J,EAAW,CAClChE,sBAAuB7nI,KAAKqrI,6BAC5B/D,kBAAmBtnI,KAAKurI,yBACxBpO,gBAAiBn9H,KAAKwrI,uBACtB7D,sBAAuB3nI,KAAK2nI,sBAC5BD,uBAAwB1nI,KAAK0nI,0BAGrCsD,EAAoBvwH,UAAU8uG,kBAAoB,WAC9CvpH,KAAK46C,GAAGmB,UAAUG,OAAO,mBACzBl8C,KAAKgiI,QAAQt0H,UACb1N,KAAK2rI,SAASj+H,WAIlBs9H,EAAoBvwH,UAAUixH,mBAAqB,WAC/C,IAAIxpD,EAAKliF,KAAKu0B,QAAS80E,EAAQnnB,EAAGmnB,MAAO57F,EAAUy0E,EAAGz0E,QACtD,MACI,iBAAmB47F,EAAMK,SAAS,aAAe,MAChDj8F,EAAQqpG,aACL,2DAEsCzN,EAAMK,SAAS,gBAFrD,6BAKA,IARD,yCAWaL,EAAMK,SAAS,iBAX5B,gCAiBXshC,EAAoBvwH,UAAU2wH,oBAAsB,WAChD,OAA4B,MAAxBprI,KAAK8rI,gBACE,gBAAkB9rI,KAAK8rI,gBAAkB,MAE7C,IAGXd,EAAoBvwH,UAAUsxH,aAAe,WACzC,IAAI/zB,EAAah4G,KAAKu0B,QAAQ9mB,QAAQuqG,WACtC,OAAOA,GAAoC,kBAAfA,GAIhCgzB,EAAoBvwH,UAAUuvG,WAAa,SAAUkB,EAAUG,EAAYwL,GACvEpsB,EAAOhwF,UAAUuvG,WAAWxwG,KAAKxZ,KAAMkrH,EAAUG,EAAYwL,GAC7D72H,KAAKgiI,QAAQhY,WAAWkB,IAG5B8f,EAAoBvwH,UAAUq8G,eAAiB,SAAU5L,EAAUG,EAAYwL,GAC3E,IAGImV,EACAnoD,EAJAm+C,EAAUhiI,KAAKgiI,QACfhqB,EAAah4G,KAAKu0B,QAAQ9mB,QAAQuqG,WAClCi0B,EAAYjsI,KAAK+2G,OAAS/2G,KAAK+2G,OAAOn8D,GAAK,KAK1ConF,EAAQG,QAOTniI,KAAK2nI,wBAEL3nI,KAAK8rI,gBAAkB,gBAAgB,gBAAa9rI,KAAK46C,GAAI,qBAGjE56C,KAAK2rI,SAAS97G,QACVo8G,GACA,gBAAmBA,GAEvBjK,EAAQM,mBAEJtqB,GAAoC,kBAAfA,GACrBgqB,EAAQwG,UAAUxwB,GAItBg0B,EAAiBhsI,KAAKksI,sBAAsB7gB,GAC5CrrH,KAAKmsI,cAAcH,EAAgBnV,GAE/B7e,GAAoC,kBAAfA,GACrBgqB,EAAQwG,UAAUxwB,GAEjB6e,IACD72H,KAAK2rI,SAAS79B,UAAUk+B,GACxBnoD,EAAkB7jF,KAAK2rI,SAAS39B,sBAC5BnqB,EAAgB1zD,MAAQ0zD,EAAgBxzD,SACpC47G,GACA,eAAiBA,EAAWpoD,GAGhCmoD,EAAiBhsI,KAAKksI,sBAAsB7gB,GAC5CrrH,KAAK2rI,SAAS79B,UAAUk+B,IAG5BhsI,KAAK2rI,SAAS59B,aAAalqB,KAxCtBgzC,IACDmV,EAAiBhsI,KAAKksI,sBAAsB7gB,GAC5CrrH,KAAK2rI,SAAS79B,UAAUk+B,KA0CpChB,EAAoBvwH,UAAUyxH,sBAAwB,SAAU7gB,GAC5D,OAAOA,EACH,gBAAsBrrH,KAAK46C,GAAI56C,KAAK2rI,SAAS/wF,KAGrDowF,EAAoBvwH,UAAU0xH,cAAgB,SAAUv/H,EAAQiqH,GACxD72H,KAAKu0B,QAAQ9mB,QAAQ87F,WAEjBstB,IACAjqH,GAAU5M,KAAKgiI,QAAQ3D,OAAS,GAEpC,gBAAiBr+H,KAAKgiI,QAAQG,OAAQv1H,GAASiqH,IAG3CA,EACA,gBAAmB72H,KAAKgiI,QAAQG,QAGhC,gBAAiBniI,KAAKgiI,QAAQG,OAAQv1H,GAAQ,IAM1Do+H,EAAoBvwH,UAAUq+G,kBAAoB,SAAUvgG,GACxD,MAAO,CAAEnI,IAAK,IAElB46G,EAAoBvwH,UAAUo+G,gBAAkB,WAC5C,MAAO,CAAEzoG,IAAKpwB,KAAK2rI,SAAS3+B,iBAEhCg+B,EAAoBvwH,UAAUs+G,gBAAkB,SAAUprB,QACnCxpG,IAAfwpG,EAAOv9E,KACPpwB,KAAK2rI,SAASr+B,aAAaK,EAAOv9E,MAGnC46G,EAvO6B,CAwOtC,QACF,EAAoBvwH,UAAU03G,0BAA4B,EAE1D,IAAIia,EAA+B,SAAU3hC,GAEzC,SAAS2hC,EAAcpK,GACnB,IAAI17B,EAAQmE,EAAOjxF,KAAKxZ,KAAMgiI,EAAQpnF,KAAO56C,KAG7C,OAFAsmG,EAAM+lC,OAAS,IAAIC,EACnBhmC,EAAM07B,QAAUA,EACT17B,EAmCX,OAxCAtd,EAAUojD,EAAe3hC,GAOzB2hC,EAAc3xH,UAAUw1F,aAAe,SAAU17E,GAC7CA,EAAQ62D,SAASioC,6BAA6BrzH,KAAM,CAAE46C,GAAI56C,KAAKgiI,QAAQpnF,MAE3EwxF,EAAc3xH,UAAU/M,QAAU,WAC9B+8F,EAAOhwF,UAAU/M,QAAQ8L,KAAKxZ,MAC9BA,KAAKu0B,QAAQ62D,SAASuoC,+BAA+B3zH,OAEzDosI,EAAc3xH,UAAU3a,OAAS,SAAU6K,EAAO4pB,GAC9C,IAAIytG,EAAUhiI,KAAKgiI,QACfhlC,EAAcryF,EAAMqyF,YAAauvC,EAAW5hI,EAAM4hI,SACtDvK,EAAQpyB,eAAer7E,GACvBytG,EAAQryB,aAAazmB,EAAS,GAAIlpF,KAAKqsI,OAAO3M,WAAW/0H,EAAOqyF,EAAaryF,EAAMs9E,iBAAkB1zD,EAAQ62D,SAAU42C,EAASuK,GAAW,CAAEvvC,YAAaA,EAAashC,MAAOiO,EAASjO,MAAOqI,QAASh8H,EAAMg8H,UAAYpyG,IAE7N63G,EAAc3xH,UAAU21F,oBAAsB,WAC1CpwG,KAAKgiI,QAAQ5xB,uBAEjBg8B,EAAc3xH,UAAU41F,SAAW,SAAUC,EAAcC,GACvD,IAAIi8B,EAASxsI,KAAKgiI,QAAQqG,cAAc/3B,EAAcC,GACtD,GAAIi8B,EACA,MAAO,CACHxoI,UAAWhE,KAAKgiI,QAChB96B,SAAUslC,EAAOtlC,SACjBmtB,MAAOmY,EAAOnY,MACd3jG,KAAM,CACFP,KAAMq8G,EAAOlE,aAAan4G,KAC1BE,MAAOm8G,EAAOlE,aAAaj4G,MAC3BD,IAAKo8G,EAAOlE,aAAal4G,IACzBE,OAAQk8G,EAAOlE,aAAah4G,QAEhC80G,MAAO,IAIZgH,EAzCuB,CA0ChC,QACEE,EAA+B,SAAU7hC,GAEzC,SAAS6hC,IACL,OAAkB,OAAX7hC,GAAmBA,EAAOnvF,MAAMtb,KAAMiZ,YAAcjZ,KAK/D,OAPAgpF,EAAUsjD,EAAe7hC,GAIzB6hC,EAAc7xH,UAAUijH,WAAa,SAAUrvC,EAAWk+C,GACtD,OAAOA,EAAS7O,WAAWrvC,IAExBi+C,EARuB,CAShC,QAEE,EAA6B,SAAU7hC,GAEvC,SAASgiC,IACL,IAAInmC,EAAmB,OAAXmE,GAAmBA,EAAOnvF,MAAMtb,KAAMiZ,YAAcjZ,KAEhE,OADAsmG,EAAMomC,cAAgB,gBAAQA,GACvBpmC,EA2CX,OA/CAtd,EAAUyjD,EAAahiC,GAMvBgiC,EAAYhyH,UAAU3a,OAAS,SAAU6K,EAAO4pB,GAC5Ck2E,EAAOhwF,UAAU3a,OAAO0Z,KAAKxZ,KAAM2K,EAAO4pB,GAC1C,IAAIyoE,EAAch9F,KAAK2K,MAAMqyF,YACzBuvC,EAAWvsI,KAAKusI,SAChBvsI,KAAK0sI,cAAc1vC,EAAaryF,EAAM+/G,sBACtC1qH,KAAK+2G,QACL/2G,KAAK+2G,OAAOpH,aAAa,CACrB3S,YAAaA,EACbkgC,MAAOqP,EAAS/N,YAChBhC,qBAA0C,IAApB+P,EAASlO,OAC/BlB,gBAAiBn9H,KAAKmrI,qBACvB52G,GAEPv0B,KAAK2sI,cAAch9B,aAAa,CAC5B3S,YAAaA,EACbuvC,SAAUA,EACV/tC,cAAe7zF,EAAM6zF,cACrBF,cAAe3zF,EAAM2zF,cACrBhT,WAAY3gF,EAAM2gF,WAClBmN,aAAc9tF,EAAM8tF,aACpBgG,eAAgB9zF,EAAM8zF,eACtBL,UAAWzzF,EAAMyzF,UACjBM,YAAa/zF,EAAM+zF,YACnBioC,QAAS3mI,KAAK+rI,eACd9jD,iBAAkBjoF,KAAKu0B,QAAQ0zD,kBAChC1zD,IAEPk4G,EAAYhyH,UAAU6uG,gBAAkB,SAAU/0F,GAC9Ck2E,EAAOhwF,UAAU6uG,gBAAgB9vG,KAAKxZ,KAAMu0B,GACxCA,EAAQ9mB,QAAQqpG,eAChB92G,KAAK+2G,OAAS,IAAI,OAAU/2G,KAAK46C,GAAG2xE,cAAc,wBAEtDvsH,KAAK2sI,cAAgB,IAAIP,EAAcpsI,KAAKgiI,UAEhDyK,EAAYhyH,UAAU8uG,kBAAoB,WACtC9e,EAAOhwF,UAAU8uG,kBAAkB/vG,KAAKxZ,MACpCA,KAAK+2G,QACL/2G,KAAK+2G,OAAOrpG,UAEhB1N,KAAK2sI,cAAcj/H,WAEhB++H,EAhDqB,CAiD9B,GACF,SAASC,EAAc1vC,EAAa0tB,GAChC,IAAIwT,EAAY,IAAI,OAAUlhC,EAAYkjB,YAAawK,GACvD,OAAO,IAAI,OAASwT,EAAW,kBAAkBzrH,KAAKuqF,EAAY2iB,mBAGtE,IAAIitB,EAAO,eAAa,CACpB39E,YAAa,eACbyiD,MAAO,CACHswB,QAAS,EACT6K,WAAY,CACR3qI,KAAM,UACNq2B,SAAU,CAAEknD,KAAM,IAEtBqtD,YAAa,CACT5qI,KAAM,UACNq2B,SAAU,CAAEmqD,MAAO,IAEvBqqD,aAAc,CACV7qI,KAAM,UACNq2B,SAAU,CAAEinD,OAAQ,GACpB+pB,WAAW,EACXw3B,gBAAgB,MAKb,IC7lDX,EAAgB,SAASj/E,EAAG3jC,GAI5B,OAHA,EAAgB/Z,OAAO2kF,gBAClB,CAAE/wC,UAAW,cAAgBhrC,OAAS,SAAU80C,EAAG3jC,GAAK2jC,EAAE9J,UAAY75B,IACvE,SAAU2jC,EAAG3jC,GAAK,IAAK,IAAI8B,KAAK9B,EAAOA,EAAE/B,eAAe6D,KAAI6hC,EAAE7hC,GAAK9B,EAAE8B,KAClE,EAAc6hC,EAAG3jC,IAG5B,SAAS,EAAU2jC,EAAG3jC,GAElB,SAAS8qE,IAAOjpF,KAAKwsB,YAAcs1B,EADnC,EAAcA,EAAG3jC,GAEjB2jC,EAAErnC,UAAkB,OAAN0D,EAAa/Z,OAAOmnB,OAAOpN,IAAM8qE,EAAGxuE,UAAY0D,EAAE1D,UAAW,IAAIwuE,GAGnF,IAAI,EAAW,WAQX,OAPA,EAAW7kF,OAAOC,QAAU,SAAkB8b,GAC1C,IAAK,IAAIpC,EAAGrF,EAAI,EAAGyD,EAAIlD,UAAUvN,OAAQgN,EAAIyD,EAAGzD,IAE5C,IAAK,IAAIuH,KADTlC,EAAI9E,UAAUP,GACAqF,EAAO3Z,OAAOqW,UAAU2B,eAAe5C,KAAKuE,EAAGkC,KAAIE,EAAEF,GAAKlC,EAAEkC,IAE9E,OAAOE,GAEJ,EAAS7E,MAAMtb,KAAMiZ,YAGhC,OAAO+zH,qBAAuB,IAC9B,IAAIC,EAAmB,EACnBC,EAAc,EACdC,GAA6B,EAc7B,EAAiC,WACjC,SAASC,EAAgBC,GACrB,IAAI/mC,EAAQtmG,KACZA,KAAKstI,UAAY,KACjBttI,KAAKutI,OAAS,KAEdvtI,KAAKo5E,SAAW,GAChBp5E,KAAKwtI,eAAiB,GACtBxtI,KAAKytI,kBAAmB,EACxBztI,KAAK0tI,mBAAoB,EAEzB1tI,KAAKk6H,YAAa,EAClBl6H,KAAK2tI,iBAAkB,EACvB3tI,KAAK4tI,gBAAiB,EAGtB5tI,KAAK6tI,gBAAkB,SAAUrwD,GAC7B,IAAK8oB,EAAMwnC,qBACPC,EAAqBvwD,IACrB8oB,EAAM0nC,SAASxwD,GAAK,CACpB,IAAIy2C,EAAM3tB,EAAM2nC,qBAAqBzwD,GAAI,GACzC8oB,EAAM01B,QAAQ5gC,QAAQ,cAAe64B,GACrC3tB,EAAM4nC,gBAAgBja,GACjB3tB,EAAMmnC,kBACP1iG,SAAS+O,iBAAiB,YAAawsD,EAAM6nC,iBAEjDpjG,SAAS+O,iBAAiB,UAAWwsD,EAAM8nC,iBAGnDpuI,KAAKmuI,gBAAkB,SAAU3wD,GAC7B,IAAIy2C,EAAM3tB,EAAM2nC,qBAAqBzwD,GACrC8oB,EAAM+nC,aAAapa,GACnB3tB,EAAM01B,QAAQ5gC,QAAQ,cAAe64B,IAEzCj0H,KAAKouI,cAAgB,SAAU5wD,GAC3BzyC,SAASoP,oBAAoB,YAAamsD,EAAM6nC,iBAChDpjG,SAASoP,oBAAoB,UAAWmsD,EAAM8nC,eAC9C9nC,EAAM01B,QAAQ5gC,QAAQ,YAAakL,EAAM2nC,qBAAqBzwD,IAC9D8oB,EAAMgoC,WAIVtuI,KAAKuuI,iBAAmB,SAAU/wD,GAC9B,GAAI8oB,EAAM0nC,SAASxwD,GAAK,CACpB8oB,EAAMqnC,iBAAkB,EACxB,IAAI1Z,EAAM3tB,EAAMkoC,qBAAqBhxD,GAAI,GACzC8oB,EAAM01B,QAAQ5gC,QAAQ,cAAe64B,GACrC3tB,EAAM4nC,gBAAgBja,GAGtB,IAAI7qG,EAASo0D,EAAGp0D,OACXk9E,EAAMmnC,kBACPrkH,EAAO0wB,iBAAiB,YAAawsD,EAAMmoC,iBAE/CrlH,EAAO0wB,iBAAiB,WAAYwsD,EAAMooC,gBAC1CtlH,EAAO0wB,iBAAiB,cAAewsD,EAAMooC,gBAI7C5kH,OAAOgwB,iBAAiB,SAAUwsD,EAAMqoC,mBAAmB,KAInE3uI,KAAKyuI,gBAAkB,SAAUjxD,GAC7B,IAAIy2C,EAAM3tB,EAAMkoC,qBAAqBhxD,GACrC8oB,EAAM+nC,aAAapa,GACnB3tB,EAAM01B,QAAQ5gC,QAAQ,cAAe64B,IAEzCj0H,KAAK0uI,eAAiB,SAAUlxD,GAC5B,GAAI8oB,EAAM4zB,WAAY,CAClB,IAAI9wG,EAASo0D,EAAGp0D,OAChBA,EAAO+wB,oBAAoB,YAAamsD,EAAMmoC,iBAC9CrlH,EAAO+wB,oBAAoB,WAAYmsD,EAAMooC,gBAC7CtlH,EAAO+wB,oBAAoB,cAAemsD,EAAMooC,gBAChD5kH,OAAOqwB,oBAAoB,SAAUmsD,EAAMqoC,mBAAmB,GAC9DroC,EAAM01B,QAAQ5gC,QAAQ,YAAakL,EAAMkoC,qBAAqBhxD,IAC9D8oB,EAAMgoC,UACNhoC,EAAMqnC,iBAAkB,EACxBiB,MAGR5uI,KAAK2uI,kBAAoB,WACrBroC,EAAMsnC,gBAAiB,GAE3B5tI,KAAK6uI,aAAe,SAAUrxD,GAC1B,IAAK8oB,EAAMmnC,iBAAkB,CACzB,IAAIqB,EAAShlH,OAAO8yD,YAAc0pB,EAAMyoC,YAAezoC,EAAM0oC,UACzDC,EAASnlH,OAAO+yD,YAAcypB,EAAM4oC,YAAe5oC,EAAM6oC,UAC7D7oC,EAAM01B,QAAQ5gC,QAAQ,cAAe,CACjC+4B,UAAW32C,EACX4xD,QAAS9oC,EAAMqnC,gBACfL,UAAWhnC,EAAMgnC,UACjBwB,MAAOA,EACPG,MAAOA,EACPl7F,OAAQ+6F,EAAQxoC,EAAM+oC,UACtBr7F,OAAQi7F,EAAQ3oC,EAAMgpC,cAIlCtvI,KAAKqtI,YAAcA,EACnBrtI,KAAKg8H,QAAU,IAAI,OACnBqR,EAAYvzF,iBAAiB,YAAa95C,KAAK6tI,iBAC/CR,EAAYvzF,iBAAiB,aAAc95C,KAAKuuI,iBAAkB,CAAEv0F,SAAS,IAC7Eu1F,IA6HJ,OA3HAnC,EAAgB3yH,UAAU/M,QAAU,WAChC1N,KAAKqtI,YAAYlzF,oBAAoB,YAAan6C,KAAK6tI,iBACvD7tI,KAAKqtI,YAAYlzF,oBAAoB,aAAcn6C,KAAKuuI,iBAAkB,CAAEv0F,SAAS,IACrFw1F,KAEJpC,EAAgB3yH,UAAUuzH,SAAW,SAAUxwD,GAC3C,IAAI8vD,EAAYttI,KAAKyvI,eAAejyD,GAChC+vD,EAAS/vD,EAAGp0D,OAChB,SAAIkkH,GACEttI,KAAKwtI,iBAAkB,gBAAeD,EAAQvtI,KAAKwtI,mBACrDxtI,KAAKstI,UAAYA,EACjBttI,KAAKutI,OAASA,EACdvtI,KAAKk6H,YAAa,EAClBl6H,KAAK4tI,gBAAiB,GACf,IAIfR,EAAgB3yH,UAAU6zH,QAAU,WAChCnB,GAA6B,EAC7BntI,KAAKk6H,YAAa,EAClBl6H,KAAKstI,UAAY,KACjBttI,KAAKutI,OAAS,KAEdvtI,KAAK0vI,sBAETtC,EAAgB3yH,UAAUg1H,eAAiB,SAAUjyD,GACjD,OAAIx9E,KAAKo5E,SACE,gBAAeoE,EAAGp0D,OAAQppB,KAAKo5E,UAG/Bp5E,KAAKqtI,aAGpBD,EAAgB3yH,UAAUqzH,kBAAoB,WAC1C,OAAOb,GAAoBjtI,KAAK2tI,iBAGpCP,EAAgB3yH,UAAUk1H,kBAAoB,WACtC3vI,KAAKk6H,aACLiT,GAA6B,IAKrCC,EAAgB3yH,UAAUyzH,gBAAkB,SAAU1wD,GAC9Cx9E,KAAK0tI,oBACL1tI,KAAKquI,aAAa7wD,GAClB1zD,OAAOgwB,iBAAiB,SAAU95C,KAAK6uI,cAAc,KAG7DzB,EAAgB3yH,UAAU4zH,aAAe,SAAU7wD,GAC3Cx9E,KAAK0tI,oBACL1tI,KAAKgvI,UAAYxxD,EAAGsxD,MACpB9uI,KAAKmvI,UAAY3xD,EAAGyxD,MACpBjvI,KAAK+uI,YAAcjlH,OAAO8yD,YAC1B58E,KAAKkvI,YAAcplH,OAAO+yD,cAGlCuwD,EAAgB3yH,UAAUi1H,mBAAqB,WACvC1vI,KAAK0tI,mBACL5jH,OAAOqwB,oBAAoB,SAAUn6C,KAAK6uI,cAAc,IAKhEzB,EAAgB3yH,UAAUwzH,qBAAuB,SAAUzwD,EAAIoyD,GAC3D,IAAI77F,EAAS,EACTC,EAAS,EAUb,OARI47F,GACA5vI,KAAKqvI,UAAY7xD,EAAGsxD,MACpB9uI,KAAKsvI,UAAY9xD,EAAGyxD,QAGpBl7F,EAASypC,EAAGsxD,MAAQ9uI,KAAKqvI,UACzBr7F,EAASwpC,EAAGyxD,MAAQjvI,KAAKsvI,WAEtB,CACHnb,UAAW32C,EACX4xD,SAAS,EACT9B,UAAWttI,KAAKstI,UAChBwB,MAAOtxD,EAAGsxD,MACVG,MAAOzxD,EAAGyxD,MACVl7F,OAAQA,EACRC,OAAQA,IAGhBo5F,EAAgB3yH,UAAU+zH,qBAAuB,SAAUhxD,EAAIoyD,GAC3D,IACId,EACAG,EAFAx7E,EAAU+pB,EAAG/pB,QAGb1f,EAAS,EACTC,EAAS,EAoBb,OAjBIyf,GAAWA,EAAQ/nD,QACnBojI,EAAQr7E,EAAQ,GAAGq7E,MACnBG,EAAQx7E,EAAQ,GAAGw7E,QAGnBH,EAAQtxD,EAAGsxD,MACXG,EAAQzxD,EAAGyxD,OAGXW,GACA5vI,KAAKqvI,UAAYP,EACjB9uI,KAAKsvI,UAAYL,IAGjBl7F,EAAS+6F,EAAQ9uI,KAAKqvI,UACtBr7F,EAASi7F,EAAQjvI,KAAKsvI,WAEnB,CACHnb,UAAW32C,EACX4xD,SAAS,EACT9B,UAAWttI,KAAKstI,UAChBwB,MAAOA,EACPG,MAAOA,EACPl7F,OAAQA,EACRC,OAAQA,IAGTo5F,EApOyB,GAuOpC,SAASW,EAAqBvwD,GAC1B,OAAqB,IAAdA,EAAGgwC,SAAiBhwC,EAAGqyD,QAIlC,SAASjB,IACL3B,IACA95E,YAAW,WACP85E,MACD,OAAOD,sBAId,SAASuC,IACCrC,KACFpjH,OAAOgwB,iBAAiB,YAAag2F,EAAmB,CAAE91F,SAAS,IAG3E,SAASw1F,MACGtC,GACJpjH,OAAOqwB,oBAAoB,YAAa21F,EAAmB,CAAE91F,SAAS,IAG9E,SAAS81F,EAAkBtyD,GACnB2vD,GACA3vD,EAAGp8E,iBASX,IAAI,EAA+B,WAC/B,SAAS2uI,IACL/vI,KAAKgwI,WAAY,EACjBhwI,KAAKiwI,SAAW,KAChBjwI,KAAKkwI,SAAW,KAChBlwI,KAAKmwI,aAAe,KAEpBnwI,KAAKs8C,WAAavR,SAASkZ,KAC3BjkD,KAAKowI,OAAS,KACdpwI,KAAKqwI,eAAiB,EA6G1B,OA3GAN,EAAct1H,UAAUmc,MAAQ,SAAUq5G,EAAUnB,EAAOG,GACvDjvI,KAAKiwI,SAAWA,EAChBjwI,KAAKmwI,aAAenwI,KAAKiwI,SAASz8E,wBAClCxzD,KAAKswI,YAAcxB,EAAQhlH,OAAO8yD,YAClC58E,KAAKuwI,YAActB,EAAQnlH,OAAO+yD,YAClC78E,KAAK+zC,OAAS,EACd/zC,KAAKg0C,OAAS,EACdh0C,KAAKwwI,oBAETT,EAAct1H,UAAUg2H,WAAa,SAAU3B,EAAOG,GAClDjvI,KAAK+zC,OAAU+6F,EAAQhlH,OAAO8yD,YAAe58E,KAAKswI,YAClDtwI,KAAKg0C,OAAUi7F,EAAQnlH,OAAO+yD,YAAe78E,KAAKuwI,YAClDvwI,KAAKwwI,oBAGTT,EAAct1H,UAAUi2H,aAAe,SAAUznB,GACzCA,EACKjpH,KAAKgwI,YACFhwI,KAAKkwI,WACLlwI,KAAKkwI,SAAS3jI,MAAMskC,QAAU,IAElC7wC,KAAKgwI,UAAY/mB,EACjBjpH,KAAKwwI,oBAILxwI,KAAKgwI,YACDhwI,KAAKkwI,WACLlwI,KAAKkwI,SAAS3jI,MAAMskC,QAAU,QAElC7wC,KAAKgwI,UAAY/mB,IAK7B8mB,EAAct1H,UAAUowC,KAAO,SAAU8lF,EAAsB/uI,GAC3D,IAAI0kG,EAAQtmG,KACR4wI,EAAO,WACPtqC,EAAMgoC,UACN1sI,KAEA+uI,GACA3wI,KAAKkwI,UACLlwI,KAAKgwI,WACLhwI,KAAKqwI,iBACJrwI,KAAK+zC,QAAU/zC,KAAKg0C,QAErBh0C,KAAK6wI,kBAAkBD,EAAM5wI,KAAKqwI,gBAGlCl9E,WAAWy9E,EAAM,IAGzBb,EAAct1H,UAAUo2H,kBAAoB,SAAUjvI,EAAUyuI,GAC5D,IAAIH,EAAWlwI,KAAKkwI,SAChBY,EAAoB9wI,KAAKiwI,SAASz8E,wBACtC08E,EAAS3jI,MAAMorB,WACX,OAAS04G,EAAT,WACcA,EAAiB,KACnC,eAAWH,EAAU,CACjB//G,KAAM2gH,EAAkB3gH,KACxBC,IAAK0gH,EAAkB1gH,MAE3B,gBAAmB8/G,GAAU,WACzBA,EAAS3jI,MAAMorB,WAAa,GAC5B/1B,QAGRmuI,EAAct1H,UAAU6zH,QAAU,WAC1BtuI,KAAKkwI,WACL,gBAAclwI,KAAKkwI,UACnBlwI,KAAKkwI,SAAW,MAEpBlwI,KAAKiwI,SAAW,MAEpBF,EAAct1H,UAAU+1H,iBAAmB,WACnCxwI,KAAKiwI,UAAYjwI,KAAKgwI,WACtB,eAAWhwI,KAAK+wI,cAAe,CAC3B5gH,KAAMnwB,KAAKmwI,aAAahgH,KAAOnwB,KAAK+zC,OACpC3jB,IAAKpwB,KAAKmwI,aAAa//G,IAAMpwB,KAAKg0C,UAI9C+7F,EAAct1H,UAAUs2H,YAAc,WAClC,IAAIZ,EAAenwI,KAAKmwI,aACpBD,EAAWlwI,KAAKkwI,SAoBpB,OAnBKA,IACDA,EAAWlwI,KAAKkwI,SAAWlwI,KAAKiwI,SAASe,WAAU,GAGnDd,EAASn0F,UAAUC,IAAI,mBACvBk0F,EAASn0F,UAAUC,IAAI,eACvB,eAAWk0F,EAAU,CACjB1mG,SAAU,QACV4mG,OAAQpwI,KAAKowI,OACblV,WAAY,GACZ+V,UAAW,aACXtkI,MAAOwjI,EAAa9/G,MAAQ8/G,EAAahgH,KACzCvjB,OAAQujI,EAAa7/G,OAAS6/G,EAAa//G,IAC3CC,MAAO,OACPC,OAAQ,OACRqmB,OAAQ,IAEZ32C,KAAKs8C,WAAWrR,YAAYilG,IAEzBA,GAEJH,EAtHuB,GAiI9BmB,EAAiC,SAAUzmC,GAE3C,SAASymC,EAAgBC,EAAkBC,GACvC,IAAI9qC,EAAQmE,EAAOjxF,KAAKxZ,OAASA,KAkBjC,OAjBAsmG,EAAMuoC,aAAe,WACjBvoC,EAAMjrD,UAAYirD,EAAM6qC,iBAAiBnkC,eACzC1G,EAAMlrD,WAAakrD,EAAM6qC,iBAAiBhkC,gBAC1C7G,EAAM+qC,sBAEV/qC,EAAM6qC,iBAAmBA,EACzB7qC,EAAM8qC,cAAgBA,EACtB9qC,EAAMjrD,UAAYirD,EAAMgrC,cAAgBH,EAAiBnkC,eACzD1G,EAAMlrD,WAAakrD,EAAMirC,eAAiBJ,EAAiBhkC,gBAC3D7G,EAAMkH,YAAc2jC,EAAiBxkC,iBACrCrG,EAAMmH,aAAe0jC,EAAiB3kC,kBACtClG,EAAM/pD,YAAc40F,EAAiBvkC,iBACrCtG,EAAMjyC,aAAe88E,EAAiB1kC,kBACtCnG,EAAMkrC,WAAalrC,EAAMmrC,oBACrBnrC,EAAM8qC,eACN9qC,EAAMorC,iBAAiB53F,iBAAiB,SAAUwsD,EAAMuoC,cAErDvoC,EA6CX,OAjEA,EAAU4qC,EAAiBzmC,GAsB3BymC,EAAgBz2H,UAAU/M,QAAU,WAC5B1N,KAAKoxI,eACLpxI,KAAK0xI,iBAAiBv3F,oBAAoB,SAAUn6C,KAAK6uI,eAGjEqC,EAAgBz2H,UAAUuyF,aAAe,WACrC,OAAOhtG,KAAKq7C,WAEhB61F,EAAgBz2H,UAAU0yF,cAAgB,WACtC,OAAOntG,KAAKo7C,YAEhB81F,EAAgBz2H,UAAU6yF,aAAe,SAAUl9E,GAC/CpwB,KAAKmxI,iBAAiB7jC,aAAal9E,GAC9BpwB,KAAKoxI,gBAGNpxI,KAAKq7C,UAAYnqC,KAAKmN,IAAInN,KAAKkN,IAAIgS,EAAKpwB,KAAKusG,mBAAoB,GACjEvsG,KAAKqxI,uBAGbH,EAAgBz2H,UAAU8yF,cAAgB,SAAUn9E,GAChDpwB,KAAKmxI,iBAAiB5jC,cAAcn9E,GAC/BpwB,KAAKoxI,gBAGNpxI,KAAKo7C,WAAalqC,KAAKmN,IAAInN,KAAKkN,IAAIgS,EAAKpwB,KAAK0sG,oBAAqB,GACnE1sG,KAAKqxI,uBAGbH,EAAgBz2H,UAAUmyF,eAAiB,WACvC,OAAO5sG,KAAKu8C,aAEhB20F,EAAgBz2H,UAAUgyF,gBAAkB,WACxC,OAAOzsG,KAAKq0D,cAEhB68E,EAAgBz2H,UAAUkyF,eAAiB,WACvC,OAAO3sG,KAAKwtG,aAEhB0jC,EAAgBz2H,UAAU+xF,gBAAkB,WACxC,OAAOxsG,KAAKytG,cAEhByjC,EAAgBz2H,UAAU42H,mBAAqB,aAExCH,EAlEyB,CAmElC,QACE,EAAwC,SAAUzmC,GAElD,SAASknC,EAAuB/2F,EAAIw2F,GAChC,OAAO3mC,EAAOjxF,KAAKxZ,KAAM,IAAI,OAAwB46C,GAAKw2F,IAAkBpxI,KAQhF,OAVA,EAAU2xI,EAAwBlnC,GAIlCknC,EAAuBl3H,UAAUi3H,eAAiB,WAC9C,OAAO1xI,KAAKmxI,iBAAiBv2F,IAEjC+2F,EAAuBl3H,UAAUg3H,kBAAoB,WACjD,OAAO,eAAiBzxI,KAAKmxI,iBAAiBv2F,KAE3C+2F,EAXgC,CAYzCT,GACE,EAAuC,SAAUzmC,GAEjD,SAASmnC,EAAsBR,GAC3B,OAAO3mC,EAAOjxF,KAAKxZ,KAAM,IAAI,OAA0BoxI,IAAkBpxI,KAkB7E,OApBA,EAAU4xI,EAAuBnnC,GAIjCmnC,EAAsBn3H,UAAUi3H,eAAiB,WAC7C,OAAO5nH,QAEX8nH,EAAsBn3H,UAAUg3H,kBAAoB,WAChD,MAAO,CACHthH,KAAMnwB,KAAKo7C,WACX/qB,MAAOrwB,KAAKo7C,WAAap7C,KAAKu8C,YAC9BnsB,IAAKpwB,KAAKq7C,UACV/qB,OAAQtwB,KAAKq7C,UAAYr7C,KAAKq0D,eAKtCu9E,EAAsBn3H,UAAU42H,mBAAqB,WACjDrxI,KAAKwxI,WAAaxxI,KAAKyxI,qBAEpBG,EArB+B,CAsBxCV,GAKEjpI,EAAiC,oBAAhB4pI,YAA6BA,YAAY1pI,IAAMD,KAAKC,IAOrE2pI,EAA8B,WAC9B,SAASA,IACL,IAAIxrC,EAAQtmG,KAEZA,KAAK+xI,WAAY,EACjB/xI,KAAKgyI,YAAc,CAACloH,OAAQ,gBAC5B9pB,KAAKiyI,cAAgB,GACrBjyI,KAAKkyI,YAAc,IAEnBlyI,KAAKmyI,eAAiB,KACtBnyI,KAAKoyI,eAAiB,KACtBpyI,KAAKqyI,aAAc,EACnBryI,KAAKsyI,aAAe,KAEpBtyI,KAAKuyI,aAAc,EACnBvyI,KAAKwyI,eAAgB,EACrBxyI,KAAKyyI,eAAgB,EACrBzyI,KAAK0yI,gBAAiB,EACtB1yI,KAAKgnE,QAAU,WACX,GAAIs/B,EAAM+rC,YAAa,CACnB,IAAIluG,EAAOmiE,EAAMqsC,gBAAgBrsC,EAAM6rC,eAAiBroH,OAAO8yD,YAAa0pB,EAAM8rC,eAAiBtoH,OAAO+yD,aAC1G,GAAI14C,EAAM,CACN,IAAIh8B,EAAMF,IACVq+F,EAAMssC,WAAWzuG,GAAOh8B,EAAMm+F,EAAMusC,gBAAkB,KACtDvsC,EAAMwsC,iBAAiB3qI,QAGvBm+F,EAAM+rC,aAAc,IAwIpC,OAnIAP,EAAar3H,UAAUmc,MAAQ,SAAUk4G,EAAOG,GACxCjvI,KAAK+xI,YACL/xI,KAAKsyI,aAAetyI,KAAK+yI,cACzB/yI,KAAKmyI,eAAiB,KACtBnyI,KAAKoyI,eAAiB,KACtBpyI,KAAKuyI,aAAc,EACnBvyI,KAAKwyI,eAAgB,EACrBxyI,KAAKyyI,eAAgB,EACrBzyI,KAAK0yI,gBAAiB,EACtB1yI,KAAKywI,WAAW3B,EAAOG,KAG/B6C,EAAar3H,UAAUg2H,WAAa,SAAU3B,EAAOG,GACjD,GAAIjvI,KAAK+xI,UAAW,CAChB,IAAII,EAAiBrD,EAAQhlH,OAAO8yD,YAChCw1D,EAAiBnD,EAAQnlH,OAAO+yD,YAChCm2D,EAAiC,OAAxBhzI,KAAKoyI,eAA0B,EAAIA,EAAiBpyI,KAAKoyI,eAClEa,EAAiC,OAAxBjzI,KAAKmyI,eAA0B,EAAIA,EAAiBnyI,KAAKmyI,eAClEa,EAAS,EACThzI,KAAKuyI,aAAc,EAEdS,EAAS,IACdhzI,KAAKwyI,eAAgB,GAErBS,EAAS,EACTjzI,KAAKyyI,eAAgB,EAEhBQ,EAAS,IACdjzI,KAAK0yI,gBAAiB,GAE1B1yI,KAAKmyI,eAAiBA,EACtBnyI,KAAKoyI,eAAiBA,EACjBpyI,KAAKqyI,cACNryI,KAAKqyI,aAAc,EACnBryI,KAAK8yI,iBAAiB7qI,QAIlC6pI,EAAar3H,UAAUowC,KAAO,WAC1B,GAAI7qD,KAAK+xI,UAAW,CAChB/xI,KAAKqyI,aAAc,EACnB,IAAK,IAAIrrD,EAAK,EAAG9E,EAAKliF,KAAKsyI,aAActrD,EAAK9E,EAAGx2E,OAAQs7E,IAAM,CAC3D,IAAIksD,EAAchxD,EAAG8E,GACrBksD,EAAYxlI,UAEhB1N,KAAKsyI,aAAe,OAG5BR,EAAar3H,UAAUq4H,iBAAmB,SAAU3qI,GAChDnI,KAAK6yI,eAAiB1qI,EACtB8wB,sBAAsBj5B,KAAKgnE,UAE/B8qE,EAAar3H,UAAUm4H,WAAa,SAAUzuG,EAAMq+C,GAChD,IAAI0wD,EAAc/uG,EAAK+uG,YACnBjB,EAAgBjyI,KAAKiyI,cACrBkB,EAAclB,EAAgB9tG,EAAK9kB,SACnC+zH,EACFD,EAAcA,GAAgBlB,EAAgBA,GAC5CjyI,KAAKkyI,YAAc1vD,EACnBnyB,EAAO,EACX,OAAQlsB,EAAK90B,MACT,IAAK,OACDghD,GAAQ,EAEZ,IAAK,QACD6iF,EAAY3lC,cAAc2lC,EAAY/lC,gBAAkBimC,EAAW/iF,GACnE,MACJ,IAAK,MACDA,GAAQ,EAEZ,IAAK,SACD6iF,EAAY5lC,aAAa4lC,EAAYlmC,eAAiBomC,EAAW/iF,GACjE,QAIZyhF,EAAar3H,UAAUk4H,gBAAkB,SAAUxiH,EAAMC,GAGrD,IAFA,IAAI6hH,EAAgBjyI,KAAKiyI,cACrBoB,EAAW,KACNrsD,EAAK,EAAG9E,EAAKliF,KAAKsyI,aAActrD,EAAK9E,EAAGx2E,OAAQs7E,IAAM,CAC3D,IAAIksD,EAAchxD,EAAG8E,GACjBt2D,EAAOwiH,EAAY1B,WACnB8B,EAAWnjH,EAAOO,EAAKP,KACvBojH,EAAY7iH,EAAKL,MAAQF,EACzBqjH,EAAUpjH,EAAMM,EAAKN,IACrBqjH,EAAa/iH,EAAKJ,OAASF,EAE3BkjH,GAAY,GAAKC,GAAa,GAAKC,GAAW,GAAKC,GAAc,IAC7DD,GAAWvB,GAAiBjyI,KAAKuyI,aAAeW,EAAYnmC,iBAC1DsmC,GAAYA,EAASh0H,SAAWm0H,KAClCH,EAAW,CAAEH,YAAaA,EAAa7jI,KAAM,MAAOgQ,SAAUm0H,IAE9DC,GAAcxB,GAAiBjyI,KAAKwyI,eAAiBU,EAAYjmC,mBAC/DomC,GAAYA,EAASh0H,SAAWo0H,KAClCJ,EAAW,CAAEH,YAAaA,EAAa7jI,KAAM,SAAUgQ,SAAUo0H,IAEjEH,GAAYrB,GAAiBjyI,KAAKyyI,eAAiBS,EAAYhmC,mBAC7DmmC,GAAYA,EAASh0H,SAAWi0H,KAClCD,EAAW,CAAEH,YAAaA,EAAa7jI,KAAM,OAAQgQ,SAAUi0H,IAE/DC,GAAatB,GAAiBjyI,KAAK0yI,gBAAkBQ,EAAY9lC,oBAC/DimC,GAAYA,EAASh0H,SAAWk0H,KAClCF,EAAW,CAAEH,YAAaA,EAAa7jI,KAAM,QAASgQ,SAAUk0H,KAI5E,OAAOF,GAEXvB,EAAar3H,UAAUs4H,YAAc,WACjC,OAAO/yI,KAAK0zI,iBAAiBrwI,KAAI,SAAUu3C,GACvC,OAAIA,IAAO9wB,OACA,IAAI,GAAsB,GAG1B,IAAI,EAAuB8wB,GAAI,OAIlDk3F,EAAar3H,UAAUi5H,eAAiB,WAEpC,IADA,IAAI96D,EAAM,GACDoO,EAAK,EAAG9E,EAAKliF,KAAKgyI,YAAahrD,EAAK9E,EAAGx2E,OAAQs7E,IAAM,CAC1D,IAAIzuE,EAAQ2pE,EAAG8E,GACM,kBAAVzuE,EACPqgE,EAAItrE,KAAKiL,GAGTqgE,EAAItrE,KAAKgO,MAAMs9D,EAAK5rE,MAAMyN,UAAUnP,MAAMkO,KAAKuxB,SAASgvC,iBAAiBxhE,KAGjF,OAAOqgE,GAEJk5D,EAnKsB,GA4K7B,GAA2C,SAAUrnC,GAErD,SAASkpC,EAA0BtG,GAC/B,IAAI/mC,EAAQmE,EAAOjxF,KAAKxZ,KAAMqtI,IAAgBrtI,KAG9CsmG,EAAMsxB,MAAQ,KACdtxB,EAAM/yD,YAAc,EACpB+yD,EAAMstC,oBAAqB,EAC3BttC,EAAMutC,mBAAoB,EAC1BvtC,EAAMwtC,eAAgB,EACtBxtC,EAAM4zB,YAAa,EACnB5zB,EAAMytC,cAAe,EACrBztC,EAAM0tC,qBAAsB,EAC5B1tC,EAAM2tC,eAAiB,KACvB3tC,EAAM4tC,cAAgB,SAAU12D,GACvB8oB,EAAM4zB,aACP5zB,EAAMwtC,eAAgB,EACtBxtC,EAAMytC,cAAe,EACrBztC,EAAM0tC,qBAAsB,EAC5B,gBAAiBjpG,SAASkZ,MAC1B,gBAAmBlZ,SAASkZ,MAIvBu5B,EAAG4xD,SACJ5xD,EAAG22C,UAAU/yH,iBAEjBklG,EAAM01B,QAAQ5gC,QAAQ,cAAe5d,GAChC8oB,EAAMzyF,QAAQ45H,mBAEfnnC,EAAM1rC,OAAO81E,cAAa,GAC1BpqC,EAAM1rC,OAAOhkC,MAAM4mD,EAAG8vD,UAAW9vD,EAAGsxD,MAAOtxD,EAAGyxD,OAC9C3oC,EAAM6tC,WAAW32D,GACZ8oB,EAAM/yD,aACP+yD,EAAM8tC,wBAAwB52D,MAK9C8oB,EAAM+tC,cAAgB,SAAU72D,GAC5B,GAAI8oB,EAAMwtC,cAAe,CAErB,GADAxtC,EAAM01B,QAAQ5gC,QAAQ,cAAe5d,IAChC8oB,EAAM0tC,oBAAqB,CAC5B,IAAIzgG,EAAc+yD,EAAM/yD,YACpB+gG,OAAa,EACbvgG,EAASypC,EAAGzpC,OAAQC,EAASwpC,EAAGxpC,OACpCsgG,EAAavgG,EAASA,EAASC,EAASA,EACpCsgG,GAAc/gG,EAAcA,GAC5B+yD,EAAM8tC,wBAAwB52D,GAGlC8oB,EAAM4zB,aAEoB,WAAtB18C,EAAG22C,UAAUjyH,OACbokG,EAAM1rC,OAAO61E,WAAWjzD,EAAGsxD,MAAOtxD,EAAGyxD,OACrC3oC,EAAMiuC,aAAa9D,WAAWjzD,EAAGsxD,MAAOtxD,EAAGyxD,QAE/C3oC,EAAM01B,QAAQ5gC,QAAQ,WAAY5d,MAI9C8oB,EAAMkuC,YAAc,SAAUh3D,GACtB8oB,EAAMwtC,gBACNxtC,EAAMwtC,eAAgB,EACtB,eAAe/oG,SAASkZ,MACxB,eAAiBlZ,SAASkZ,MAC1BqiD,EAAM01B,QAAQ5gC,QAAQ,YAAa5d,GAC/B8oB,EAAM4zB,aACN5zB,EAAMiuC,aAAa1pF,OACnBy7C,EAAMmuC,YAAYj3D,IAElB8oB,EAAM2tC,iBACN1b,aAAajyB,EAAM2tC,gBACnB3tC,EAAM2tC,eAAiB,QAInC,IAAIpgI,EAAUyyF,EAAMzyF,QAAU,IAAI,EAAgBw5H,GAMlD,OALAx5H,EAAQmoH,QAAQz7H,GAAG,cAAe+lG,EAAM4tC,eACxCrgI,EAAQmoH,QAAQz7H,GAAG,cAAe+lG,EAAM+tC,eACxCxgI,EAAQmoH,QAAQz7H,GAAG,YAAa+lG,EAAMkuC,aACtCluC,EAAM1rC,OAAS,IAAI,EACnB0rC,EAAMiuC,aAAe,IAAIzC,EAClBxrC,EA6DX,OAhJA,EAAUqtC,EAA2BlpC,GAqFrCkpC,EAA0Bl5H,UAAU/M,QAAU,WAC1C1N,KAAK6T,QAAQnG,WAEjBimI,EAA0Bl5H,UAAU05H,WAAa,SAAU32D,GACvD,IAAI8oB,EAAQtmG,KACc,kBAAfA,KAAK43H,MACZ53H,KAAKi0I,eAAiB9gF,YAAW,WAC7BmzC,EAAM2tC,eAAiB,KACvB3tC,EAAMouC,eAAel3D,KACtBx9E,KAAK43H,OAGR53H,KAAK00I,eAAel3D,IAG5Bm2D,EAA0Bl5H,UAAUi6H,eAAiB,SAAUl3D,GAC3Dx9E,KAAK+zI,cAAe,EACpB/zI,KAAK20I,aAAan3D,IAEtBm2D,EAA0Bl5H,UAAU25H,wBAA0B,SAAU52D,GACpEx9E,KAAKg0I,qBAAsB,EAC3Bh0I,KAAK20I,aAAan3D,IAEtBm2D,EAA0Bl5H,UAAUk6H,aAAe,SAAUn3D,GACrDx9E,KAAK+zI,cAAgB/zI,KAAKg0I,sBACrBh0I,KAAK6T,QAAQ+5H,iBAAkB5tI,KAAK4zI,qBACrC5zI,KAAKk6H,YAAa,EAClBl6H,KAAK6zI,mBAAoB,EACzB7zI,KAAKu0I,aAAa39G,MAAM4mD,EAAGsxD,MAAOtxD,EAAGyxD,OACrCjvI,KAAKg8H,QAAQ5gC,QAAQ,YAAa5d,IACF,IAA5Bx9E,KAAK4zI,oBACL5zI,KAAK6T,QAAQ87H,uBAK7BgE,EAA0Bl5H,UAAUg6H,YAAc,SAAUj3D,GAGxDx9E,KAAK46D,OAAO/P,KAAK7qD,KAAK6zI,kBAAmB7zI,KAAK40I,SAASr5F,KAAKv7C,KAAMw9E,KAGtEm2D,EAA0Bl5H,UAAUm6H,SAAW,SAAUp3D,GACrDx9E,KAAKk6H,YAAa,EAClBl6H,KAAKg8H,QAAQ5gC,QAAQ,UAAW5d,IAGpCm2D,EAA0Bl5H,UAAUo6H,cAAgB,SAAU5rB,GAC1DjpH,KAAK6T,QAAQ45H,iBAAmBxkB,GAEpC0qB,EAA0Bl5H,UAAUwhH,mBAAqB,SAAUhT,GAC/DjpH,KAAK46D,OAAO81E,aAAaznB,IAE7B0qB,EAA0Bl5H,UAAUyhH,qBAAuB,SAAUjT,GACjEjpH,KAAK6zI,kBAAoB5qB,GAE7B0qB,EAA0Bl5H,UAAU0hH,qBAAuB,SAAUlT,GACjEjpH,KAAKu0I,aAAaxC,UAAY9oB,GAE3B0qB,EAjJmC,CAkJ5C,QAUE,GAA+B,WAC/B,SAASmB,EAAcl6F,GACnB56C,KAAK+0I,SAAW,eAAYn6F,GAE5B56C,KAAKsyI,aAAe,gBAAmB13F,GAAIv3C,KAAI,SAAUu3C,GACrD,OAAO,IAAI,EAAuBA,GAAI,MAoC9C,OAjCAk6F,EAAcr6H,UAAU/M,QAAU,WAC9B,IAAK,IAAIs5E,EAAK,EAAG9E,EAAKliF,KAAKsyI,aAActrD,EAAK9E,EAAGx2E,OAAQs7E,IAAM,CAC3D,IAAIksD,EAAchxD,EAAG8E,GACrBksD,EAAYxlI,YAGpBonI,EAAcr6H,UAAUu6H,YAAc,WAElC,IADA,IAAI7kH,EAAOnwB,KAAK+0I,SAAS5kH,KAChB62D,EAAK,EAAG9E,EAAKliF,KAAKsyI,aAActrD,EAAK9E,EAAGx2E,OAAQs7E,IAAM,CAC3D,IAAIksD,EAAchxD,EAAG8E,GACrB72D,GAAQ+iH,EAAY3B,eAAiB2B,EAAY/lC,gBAErD,OAAOh9E,GAEX2kH,EAAcr6H,UAAUw6H,WAAa,WAEjC,IADA,IAAI7kH,EAAMpwB,KAAK+0I,SAAS3kH,IACf42D,EAAK,EAAG9E,EAAKliF,KAAKsyI,aAActrD,EAAK9E,EAAGx2E,OAAQs7E,IAAM,CAC3D,IAAIksD,EAAchxD,EAAG8E,GACrB52D,GAAO8iH,EAAY5B,cAAgB4B,EAAYlmC,eAEnD,OAAO58E,GAEX0kH,EAAcr6H,UAAUy6H,iBAAmB,SAAUpG,EAAOG,GAExD,IADA,IAAIr9G,EAAQ,CAAEzB,KAAM2+G,EAAO1+G,IAAK6+G,GACvBjoD,EAAK,EAAG9E,EAAKliF,KAAKsyI,aAActrD,EAAK9E,EAAGx2E,OAAQs7E,IAAM,CAC3D,IAAIksD,EAAchxD,EAAG8E,GACrB,IAAKmuD,GAAkBjC,EAAYxB,oBAC9B,gBAAgB9/G,EAAOshH,EAAY1B,YACpC,OAAO,EAGf,OAAO,GAEJsD,EAzCuB,GA6ClC,SAASK,GAAkBryH,GACvB,IAAI20D,EAAU30D,EAAK20D,QACnB,MAAmB,SAAZA,GAAkC,SAAZA,EAgBjC,IAAI,GAA6B,WAC7B,SAAS29D,EAAYC,EAAUC,GAC3B,IAAIhvC,EAAQtmG,KAEZA,KAAKu1I,kBAAmB,EACxBv1I,KAAKw1I,gBAAiB,EACtBx1I,KAAKy1I,WAAa,KAClBz1I,KAAK01I,UAAY,KACjB11I,KAAK21I,SAAW,KAChB31I,KAAK41I,kBAAoB,SAAUp4D,GAC/B,IAAI63D,EAAW/uC,EAAM+uC,SACrB/uC,EAAMmvC,WAAa,KACnBnvC,EAAMovC,UAAY,KAClBpvC,EAAMqvC,SAAW,KACjBrvC,EAAMuvC,cACNvvC,EAAMwvC,kBAAkBt4D,GACpB8oB,EAAMmvC,aAAenvC,EAAMkvC,gBAC3BH,EAASR,eAAc,GACvBvuC,EAAM01B,QAAQ5gC,QAAQ,cAAe5d,IAGrC63D,EAASR,eAAc,IAG/B70I,KAAK+1I,gBAAkB,SAAUv4D,GAC7B8oB,EAAM01B,QAAQ5gC,QAAQ,YAAa5d,GACnC8oB,EAAMmqC,WAAWjzD,GAAI,IAEzBx9E,KAAKg2I,eAAiB,SAAUx4D,GAC5B8oB,EAAM01B,QAAQ5gC,QAAQ,WAAY5d,GAClC8oB,EAAMmqC,WAAWjzD,IAErBx9E,KAAKi2I,gBAAkB,SAAUz4D,GAC7B8oB,EAAM4vC,cACN5vC,EAAM01B,QAAQ5gC,QAAQ,YAAa5d,IAEvCx9E,KAAKm2I,cAAgB,SAAU34D,GACvB8oB,EAAMovC,WACNpvC,EAAM01B,QAAQ5gC,QAAQ,YAAa,MAAM,EAAM5d,GAEnD8oB,EAAMqvC,SAAWrvC,EAAMovC,UACvBpvC,EAAMovC,UAAY,KAClBpvC,EAAM01B,QAAQ5gC,QAAQ,UAAW5d,IAErCx9E,KAAKs1I,eAAiBA,EACtBD,EAASrZ,QAAQz7H,GAAG,cAAeP,KAAK41I,mBACxCP,EAASrZ,QAAQz7H,GAAG,YAAaP,KAAK+1I,iBACtCV,EAASrZ,QAAQz7H,GAAG,WAAYP,KAAKg2I,gBACrCX,EAASrZ,QAAQz7H,GAAG,YAAaP,KAAKi2I,iBACtCZ,EAASrZ,QAAQz7H,GAAG,UAAWP,KAAKm2I,eACpCn2I,KAAKq1I,SAAWA,EAChBr1I,KAAKg8H,QAAU,IAAI,OAoFvB,OAhFAoZ,EAAY36H,UAAUq7H,kBAAoB,SAAUt4D,GAChD,IAGI44D,EAHAC,EAAY,CAAElmH,KAAMqtD,EAAGsxD,MAAO1+G,IAAKotD,EAAGyxD,OACtCqH,EAAgBD,EAChB/I,EAAY9vD,EAAG8vD,UAEfA,IAAcviG,WACdqrG,EAAc,eAAY9I,GAC1BgJ,EAAgB,eAAeA,EAAeF,IAElD,IAAIX,EAAaz1I,KAAKy1I,WAAaz1I,KAAKu2I,kBAAkBD,EAAcnmH,KAAMmmH,EAAclmH,KAC5F,GAAIqlH,EAAY,CACZ,GAAIz1I,KAAKu1I,kBAAoBa,EAAa,CACtC,IAAII,EAAoB,gBAAeJ,EAAaX,EAAW/kH,MAC3D8lH,IACAF,EAAgB,gBAAcE,IAGtCx2I,KAAKy2I,YAAc,eAAWH,EAAeD,QAG7Cr2I,KAAKy2I,YAAc,CAAEtmH,KAAM,EAAGC,IAAK,IAG3CglH,EAAY36H,UAAUg2H,WAAa,SAAUjzD,EAAIk5D,GAC7C,IAAIC,EAAM32I,KAAKu2I,kBAAkB/4D,EAAGsxD,MAAQ9uI,KAAKy2I,YAAYtmH,KAAMqtD,EAAGyxD,MAAQjvI,KAAKy2I,YAAYrmH,MAC3FsmH,GAAgBE,GAAY52I,KAAK01I,UAAWiB,KAC5C32I,KAAK01I,UAAYiB,EACjB32I,KAAKg8H,QAAQ5gC,QAAQ,YAAau7C,GAAK,EAAOn5D,KAGtD43D,EAAY36H,UAAUo7H,YAAc,WAChC71I,KAAK62I,eAAiB,gBAAQ72I,KAAKs1I,gBAAgB,SAAUwB,GAEzD,OADAA,EAAoB9yI,UAAUosG,sBACvB,IAAI,GAAc0mC,EAAoBl8F,QAGrDw6F,EAAY36H,UAAUy7H,YAAc,WAChC,IAAIW,EAAiB72I,KAAK62I,eAC1B,IAAK,IAAInqI,KAAMmqI,EACXA,EAAenqI,GAAIgB,UAEvB1N,KAAK62I,eAAiB,IAE1BzB,EAAY36H,UAAU87H,kBAAoB,SAAUv3E,EAAY+3E,GAC5D,IAAI70D,EAAKliF,KAAMs1I,EAAiBpzD,EAAGozD,eAAgBuB,EAAiB30D,EAAG20D,eACnEG,EAAU,KACd,IAAK,IAAItqI,KAAM4oI,EAAgB,CAC3B,IAAItxI,EAAYsxI,EAAe5oI,GAAI1I,UAC/BizI,EAAgBJ,EAAenqI,GACnC,GAAIuqI,EAAc/B,iBAAiBl2E,EAAY+3E,GAAY,CACvD,IAAIG,EAAaD,EAAcjC,cAC3BmC,EAAYF,EAAchC,aAC1B3kC,EAAetxC,EAAak4E,EAC5B3mC,EAAcwmC,EAAYI,EAC1BpC,EAAWkC,EAAclC,SACzBpoI,EAAQooI,EAAS1kH,MAAQ0kH,EAAS5kH,KAClCvjB,EAASmoI,EAASzkH,OAASykH,EAAS3kH,IACxC,GAEAkgF,GAAgB,GAAKA,EAAe3jG,GAChC4jG,GAAe,GAAKA,EAAc3jG,EAAQ,CAC1C,IAAI+pI,EAAM3yI,EAAUqsG,SAASC,EAAcC,EAAa5jG,EAAOC,IAC3D+pI,GAGC3yI,EAAU2G,MAAMqyF,cACb,gBAAmBh5F,EAAU2G,MAAMqyF,YAAYI,YAAau5C,EAAIzvC,SAASh+D,QAC3E8tG,KAAWL,EAAIvR,MAAQ4R,EAAQ5R,SAEjCuR,EAAIjmH,KAAKP,MAAQ+mH,EACjBP,EAAIjmH,KAAKL,OAAS6mH,EAClBP,EAAIjmH,KAAKN,KAAO+mH,EAChBR,EAAIjmH,KAAKJ,QAAU6mH,EACnBH,EAAUL,KAK1B,OAAOK,GAEJ5B,EAvIqB,GAyIhC,SAASwB,GAAYQ,EAAMC,GACvB,OAAKD,IAASC,GAGVzvD,QAAQwvD,KAAUxvD,QAAQyvD,IAGvB,gBAAiBD,EAAKlwC,SAAUmwC,EAAKnwC,UAOhD,IAAI,GAA8B,SAAUuD,GAExC,SAAS6sC,EAAav7B,GAClB,IAAIzV,EAAQmE,EAAOjxF,KAAKxZ,KAAM+7G,IAAa/7G,KAC3CsmG,EAAMsvC,kBAAoB,SAAUp4D,GAChC,IAAI63D,EAAW/uC,EAAM+uC,SAErBA,EAASR,eAAevuC,EAAMtiG,UAAU8sG,kBAAkBukC,EAASxhI,QAAQ05H,UAG/EjnC,EAAM6vC,cAAgB,SAAU34D,GAC5B,IAAIx5E,EAAYsiG,EAAMtiG,UAClBk+E,EAAKl+E,EAAUuwB,QAAS62D,EAAWlJ,EAAGkJ,SAAUv0D,EAAOqrD,EAAGrrD,KAC1DhjB,EAAUyyF,EAAM+uC,SAASxhI,QAC7B,IAAKA,EAAQ+5H,eAAgB,CACzB,IAAI73C,EAAKuQ,EAAMixC,YAAa9B,EAAa1/C,EAAG0/C,WAAYE,EAAW5/C,EAAG4/C,SAClEF,GAAcE,GAAYiB,GAAYnB,EAAYE,IAClDvqD,EAASgpC,iBAAiBqhB,EAAWvuC,SAAUuuC,EAAWphB,MAAOx9F,EAAM2mD,EAAG22C,aAItF,IAAInwH,EAAY+3G,EAAS/3G,UAEzBsiG,EAAM+uC,SAAW,IAAI,GAA0BrxI,EAAU42C,IACzD0rD,EAAM+uC,SAASd,aAAaxC,WAAY,EACxC,IAAIwF,EAAcjxC,EAAMixC,YAAc,IAAI,GAAYjxC,EAAM+uC,SAAU,gBAA2Bt5B,IAGjG,OAFAw7B,EAAYvb,QAAQz7H,GAAG,cAAe+lG,EAAMsvC,mBAC5C2B,EAAYvb,QAAQz7H,GAAG,UAAW+lG,EAAM6vC,eACjC7vC,EAKX,OAhCA,EAAUgxC,EAAc7sC,GA6BxB6sC,EAAa78H,UAAU/M,QAAU,WAC7B1N,KAAKq1I,SAAS3nI,WAEX4pI,EAjCsB,CAkC/B,QAME,GAA+B,SAAU7sC,GAEzC,SAAS+sC,EAAcz7B,GACnB,IAAIzV,EAAQmE,EAAOjxF,KAAKxZ,KAAM+7G,IAAa/7G,KAC3CsmG,EAAMmxC,cAAgB,KACtBnxC,EAAMsvC,kBAAoB,SAAUp4D,GAChC,IAAI0E,EAAKokB,EAAOtiG,EAAYk+E,EAAGl+E,UAAWqxI,EAAWnzD,EAAGmzD,SACpD5nI,EAAUzJ,EAAUuwB,QAAQ9mB,QAC5BiqI,EAAYjqI,EAAQkqI,YACpB3zI,EAAU8sG,kBAAkBtzB,EAAG22C,UAAU/qG,QAE7CisH,EAASR,eAAe6C,GAExBrC,EAASzd,MAAQp6C,EAAG4xD,QAAUwI,GAAuB5zI,GAAa,MAEtEsiG,EAAMyvC,gBAAkB,SAAUv4D,GAC9B8oB,EAAMtiG,UAAUuwB,QAAQ62D,SAASunC,SAASn1C,IAE9C8oB,EAAMuxC,gBAAkB,SAAUlB,EAAKmB,GACnC,IAAI1sD,EAAWkb,EAAMtiG,UAAUuwB,QAAQ62D,SACnCqsD,EAAgB,KAChBM,GAAY,EACZpB,IACAc,EAAgBO,GAAsB1xC,EAAMixC,YAAY9B,WAAYkB,EAAKvrD,EAASiB,aAAaC,MAAMilB,2BAChGkmC,GAAkBnxC,EAAMtiG,UAAUq6F,qBAAqBo5C,KACxDM,GAAY,EACZN,EAAgB,OAGpBA,EACArsD,EAASkK,SAAS,CAAEpzF,KAAM,eAAgB8+F,UAAWy2C,IAE/CK,GACN1sD,EAASkK,SAAS,CAAEpzF,KAAM,mBAEzB61I,EAID,kBAHA,kBAKCD,IACDxxC,EAAMmxC,cAAgBA,IAG9BnxC,EAAM2vC,gBAAkB,SAAUhiB,GAC1B3tB,EAAMmxC,gBAENnxC,EAAMtiG,UAAUuwB,QAAQ62D,SAAS4oC,kBAAkB1tB,EAAMmxC,cAAexjB,GACxE3tB,EAAMmxC,cAAgB,OAG9B,IAAIzzI,EAAY+3G,EAAS/3G,UACrByJ,EAAUzJ,EAAUuwB,QAAQ9mB,QAC5B4nI,EAAW/uC,EAAM+uC,SAAW,IAAI,GAA0BrxI,EAAU42C,IACxEy6F,EAASzB,oBAAqB,EAC9ByB,EAAS9hG,YAAc9lC,EAAQwqI,mBAAqB,EACpD5C,EAASd,aAAaxC,UAAYtkI,EAAQmqG,WAC1C,IAAI2/B,EAAcjxC,EAAMixC,YAAc,IAAI,GAAYjxC,EAAM+uC,SAAU,gBAA2Bt5B,IAKjG,OAJAw7B,EAAYvb,QAAQz7H,GAAG,cAAe+lG,EAAMsvC,mBAC5C2B,EAAYvb,QAAQz7H,GAAG,YAAa+lG,EAAMyvC,iBAC1CwB,EAAYvb,QAAQz7H,GAAG,YAAa+lG,EAAMuxC,iBAC1CN,EAAYvb,QAAQz7H,GAAG,YAAa+lG,EAAM2vC,iBACnC3vC,EAKX,OAnEA,EAAUkxC,EAAe/sC,GAgEzB+sC,EAAc/8H,UAAU/M,QAAU,WAC9B1N,KAAKq1I,SAAS3nI,WAEX8pI,EApEuB,CAqEhC,QACF,SAASI,GAAuB5zI,GAC5B,IAAIyJ,EAAUzJ,EAAUuwB,QAAQ9mB,QAC5BmqH,EAAQnqH,EAAQyqI,qBAIpB,OAHa,MAATtgB,IACAA,EAAQnqH,EAAQ4qG,gBAEbuf,EAEX,SAASogB,GAAsBZ,EAAMC,EAAM9lC,GACvC,IAAI4mC,EAAYf,EAAKlwC,SACjBkxC,EAAYf,EAAKnwC,SACjBzkB,EAAK,CACL01D,EAAUjvG,MAAMtS,MAChBuhH,EAAUjvG,MAAMzC,IAChB2xG,EAAUlvG,MAAMtS,MAChBwhH,EAAUlvG,MAAMzC,KAEpBg8C,EAAGt9E,KAAK,QAER,IADA,IAAIwF,EAAQ,GACHq8E,EAAK,EAAGqxD,EAA8B9mC,EAA2BvqB,EAAKqxD,EAA4B3sI,OAAQs7E,IAAM,CACrH,IAAI2U,EAAc08C,EAA4BrxD,GAC1CltD,EAAM6hE,EAAYy7C,EAAMC,GAC5B,IAAY,IAARv9G,EACA,OAAO,KAEFA,GACL,EAASnvB,EAAOmvB,GAKxB,OAFAnvB,EAAMu+B,MAAQ,CAAEtS,MAAO6rD,EAAG,GAAIh8C,IAAKg8C,EAAG,IACtC93E,EAAM++E,OAASyuD,EAAUzuD,OAClB/+E,EAGX,IAAI,GAA+B,SAAU8/F,GAEzC,SAAS6tC,EAAcv8B,GACnB,IAAIzV,EAAQmE,EAAOjxF,KAAKxZ,KAAM+7G,IAAa/7G,KAE3CsmG,EAAMiyC,WAAa,KACnBjyC,EAAM4zB,YAAa,EACnB5zB,EAAMpM,WAAa,KACnBoM,EAAMkyC,eAAiB,KACvBlyC,EAAMmyC,kBAAoB,KAC1BnyC,EAAMoyC,cAAgB,KACtBpyC,EAAMqyC,sBAAwB,KAC9BryC,EAAMsvC,kBAAoB,SAAUp4D,GAChC,IAAIo7D,EAAap7D,EAAG22C,UAAU/qG,OAC1B84D,EAAKokB,EAAOtiG,EAAYk+E,EAAGl+E,UAAWqxI,EAAWnzD,EAAGmzD,SACpDz6E,EAASy6E,EAASz6E,OAClBntD,EAAUzJ,EAAUuwB,QAAQ9mB,QAC5BorI,EAAkB70I,EAAUuwB,QAAQ62D,SACpCmtD,EAAajyC,EAAMiyC,WAAa,gBAAS/6D,EAAG8vD,WAC5CpzC,EAAaoM,EAAMpM,WAAaq+C,EAAWr+C,WAC3CkpB,EAAkBlpB,EAAWlO,SAASC,WAC1Cqa,EAAMkyC,eAAiB,gBAAkBK,EAAgB/1I,MAAMwoF,WAAY83B,GAC3EiyB,EAAS9hG,YAAciqC,EAAG4xD,QAAU,EAAI3hI,EAAQ6qG,qBAChD+8B,EAASzd,MAEJp6C,EAAG4xD,SAAWhsB,IAAoBp/G,EAAU2G,MAAM8zF,eAC/Cq6C,GAAyB90I,GACzB,KACR42D,EAAOte,WAAau8F,EAAgBj+F,GACpCggB,EAAOy1E,eAAiB5iI,EAAQkqG,mBAChC,IAAI3xF,EAAUhiB,EAAU2sG,iBAAiBioC,KACpC,gBAAeA,EAAY,eAChCvD,EAASR,eAAe7uH,GAGxBsgF,EAAM4zB,WAAal0G,GACfw3D,EAAG8vD,UAAUvxF,UAAUu9B,SAAS,iBAExCgtB,EAAMyvC,gBAAkB,SAAUv4D,GAC9B,IAAIjpD,EAAU+xE,EAAMtiG,UAAUuwB,QAC1BskH,EAAkBtkH,EAAQ62D,SAC1B8O,EAAaoM,EAAMpM,WACnBkpB,EAAkBlpB,EAAWlO,SAASC,WACtCzO,EAAG4xD,QAEChsB,IAAoB9c,EAAMtiG,UAAU2G,MAAM8zF,gBAC1Co6C,EAAgBvjD,SAAS,CAAEpzF,KAAM,eAAgBkhH,gBAAiBA,IAKtEy1B,EAAgBvjD,SAAS,CAAEpzF,KAAM,mBAEjCokG,EAAM4zB,aACN2e,EAAgBlmB,SAASn1C,GACzBq7D,EAAgB5+C,gBAAgB,iBAAkB,CAC9C,CACIr/C,GAAI0rD,EAAMiyC,WAAW39F,GACrBL,MAAO,IAAI,OAASs+F,EAAiB3+C,EAAWpO,IAAKoO,EAAWlO,UAChEwgC,QAAShvC,EAAG22C,UACZt9F,KAAMtC,EAAQsC,UAK9ByvE,EAAMuxC,gBAAkB,SAAUlB,EAAKmB,GACnC,GAAKxxC,EAAM4zB,WAAX,CAGA,IAAIse,EAAiBlyC,EAAMkyC,eACvB/C,EAAanvC,EAAMixC,YAAY9B,WAC/BoD,EAAkBvyC,EAAMtiG,UAAUuwB,QAAQ62D,SAE1CqtD,EAAoB,KACpB1gD,EAAW,KACX4gD,EAAwB,KACxBZ,GAAY,EACZ75C,EAAc,CACdsB,eAAgBg5C,EAChBv5C,cAAe,iBACfI,SAAS,EACTyI,QAASxB,EAAMiyC,YAEnB,GAAI5B,EAAK,CACL,IAAIoC,EAAqBpC,EAAI3yI,UAC7By0I,EAAoBM,EAAmBxkH,QAAQ62D,SAC/C,IAAI4tD,EAAmBD,EAAmBxkH,QAAQ9mB,QAC9CorI,IAAoBJ,GACpBO,EAAiB32C,UAAY22C,EAAiBC,WAC9ClhD,EAAWmhD,GAAqBzD,EAAYkB,EAAK8B,EAAkBpsD,aAAaC,MAAMglB,4BAClFvZ,IACA4gD,EAAwB,eAA0BH,EAAgBC,EAAkBhgD,aAAcV,EAAU0gD,GAC5Gv6C,EAAYe,cAAgB05C,EACvBI,EAAmB96C,mBAAmBC,KACvC65C,GAAY,EACZhgD,EAAW,KACX4gD,EAAwB,KACxBz6C,EAAYe,cAAgB,oBAKpCw5C,EAAoB,KAG5BnyC,EAAM6yC,YAAYV,EAAmBv6C,GAChC65C,EAID,kBAHA,kBAKCD,IACGe,IAAoBJ,GACpB7B,GAAYnB,EAAYkB,KACxB5+C,EAAW,MAEfuO,EAAM+uC,SAASnZ,sBAAsBnkC,GAGrCuO,EAAM+uC,SAASpZ,oBAAoB0a,IAAQ5rG,SAASwhF,cAAc,eAElEjmB,EAAMmyC,kBAAoBA,EAC1BnyC,EAAMoyC,cAAgB3gD,EACtBuO,EAAMqyC,sBAAwBA,KAGtCryC,EAAM2vC,gBAAkB,WACf3vC,EAAM4zB,YACP5zB,EAAMgoC,WAGdhoC,EAAM6vC,cAAgB,SAAU34D,GAC5B,GAAI8oB,EAAM4zB,WAAY,CAClB,IAAI3lG,EAAU+xE,EAAMtiG,UAAUuwB,QAC1B6kH,EAAoB7kH,EAAQ62D,SAC5BiuD,EAAc9kH,EAAQsC,KACtBqrD,EAAKokB,EAAOmyC,EAAoBv2D,EAAGu2D,kBAAmBC,EAAgBx2D,EAAGw2D,cACzE3uD,EAAWuc,EAAMpM,WAAWpO,IAC5B4Q,EAAgB4J,EAAMpM,WAAWlO,SACjC2U,EAAW,IAAI,OAASy4C,EAAmBrvD,EAAU2S,GACrD48C,EAAmBhzC,EAAMkyC,eACzBG,EAAwBryC,EAAMqyC,sBAC9BhD,EAAWrvC,EAAMixC,YAAY5B,SAUjC,GATArvC,EAAMizC,YACNH,EAAkBn/C,gBAAgB,gBAAiB,CAC/C,CACIr/C,GAAI0rD,EAAMiyC,WAAW39F,GACrBL,MAAOomD,EACP6rB,QAAShvC,EAAG22C,UACZt9F,KAAMwiH,KAGVX,GAEA,GAAID,IAAsBW,EAAmB,CACzCA,EAAkB9jD,SAAS,CACvBpzF,KAAM,eACNopF,WAAYqtD,IAGhB,IADA,IAAIa,EAAc,GACTxyD,EAAK,EAAG+O,EAAKqjD,EAAkB/sD,aAAaC,MAAMylB,sBAAuB/qB,EAAK+O,EAAGrqF,OAAQs7E,IAAM,CACpG,IAAI2U,EAAc5F,EAAG/O,GACrB,EAASwyD,EAAa79C,EAAY+8C,EAAeU,IAErD,IAAIK,EAAe,EAAS,GAAID,EAAa,CAAE5+F,GAAI4iC,EAAG8vD,UAAWhvH,MAAOo6H,EAAc1hD,WAAY0iD,SAAU/4C,EAAUpmD,MAAO,IAAI,OAC7H6+F,EAAmBT,EAAsB9sD,KAAK9B,EAASgC,OAAQ2Q,EAAgBi8C,EAAsBpuF,UAAUmyC,EAAczQ,YAAc,MAAO0tD,OAAQ,WACtJP,EAAkB9jD,SAAS,CACvBpzF,KAAM,eACNopF,WAAYguD,KAEjB9sB,QAAShvC,EAAG22C,UAAWt9F,KAAMwiH,IACpCD,EAAkBn/C,gBAAgB,YAAa,CAACw/C,SAG/C,GAAIhB,EAAmB,CACxBW,EAAkBn/C,gBAAgB,aAAc,CAC5C,CACI2/C,UAAWp8D,EAAG8vD,UACd/yF,MAAOomD,EACP9pE,KAAMwiH,KAGdD,EAAkB9jD,SAAS,CACvBpzF,KAAM,yBACNqoD,UAAW+7C,EAAMqyC,sBAAsBpuF,YAE3CkuF,EAAkBnjD,SAAS,CACvBpzF,KAAM,eACNopF,WAAYgb,EAAMqyC,wBAElBn7D,EAAG4xD,SACHqJ,EAAkBnjD,SAAS,CACvBpzF,KAAM,eACNkhH,gBAAiB1mB,EAAczQ,aAGvC,IAAI4tD,EAAU,EAAS,GAAIpB,EAAkBv0B,kBAAkByxB,EAASzuC,UAAW,CAAE0yC,UAAWp8D,EAAG8vD,UAAW9gB,QAAShvC,EAAG22C,UAAWt9F,KAAM8+G,EAAS3xI,YAEpJy0I,EAAkBx+C,gBAAgB,OAAQ,CAAC4/C,IAC3CpB,EAAkBx+C,gBAAgB,eAAgB,CAC9C,CACI2/C,UAAWp8D,EAAG8vD,UACd/yF,MAAO,IAAI,OACXk+F,EAAmBE,EAAsB9sD,KAAK9B,EAASgC,OAAQ4sD,EAAsBpuF,UAAUmyC,EAAczQ,aAC7Gp1D,KAAM8+G,EAAS3xI,mBAM3Bo1I,EAAkBn/C,gBAAgB,gBAG1CqM,EAAMgoC,WAEV,IAAItqI,EAAYsiG,EAAMtiG,UAClByJ,EAAUzJ,EAAUuwB,QAAQ9mB,QAC5B4nI,EAAW/uC,EAAM+uC,SAAW,IAAI,GAA0BrxI,EAAU42C,IACxEy6F,EAASxhI,QAAQulE,SAAWk/D,EAAcwB,SAC1CzE,EAASzB,oBAAqB,EAC9ByB,EAASd,aAAaxC,UAAYtkI,EAAQmqG,WAC1C,IAAI2/B,EAAcjxC,EAAMixC,YAAc,IAAI,GAAYjxC,EAAM+uC,SAAU,SAOtE,OANAkC,EAAYhC,iBAAmBx5B,EAASkQ,eACxCsrB,EAAYvb,QAAQz7H,GAAG,cAAe+lG,EAAMsvC,mBAC5C2B,EAAYvb,QAAQz7H,GAAG,YAAa+lG,EAAMyvC,iBAC1CwB,EAAYvb,QAAQz7H,GAAG,YAAa+lG,EAAMuxC,iBAC1CN,EAAYvb,QAAQz7H,GAAG,YAAa+lG,EAAM2vC,iBAC1CsB,EAAYvb,QAAQz7H,GAAG,UAAW+lG,EAAM6vC,eACjC7vC,EAsDX,OA1RA,EAAUgyC,EAAe7tC,GAsOzB6tC,EAAc79H,UAAU/M,QAAU,WAC9B1N,KAAKq1I,SAAS3nI,WAGlB4qI,EAAc79H,UAAU0+H,YAAc,SAAUY,EAAcj3I,GAC1D,IAAI+1I,EAAkB74I,KAAKgE,UAAUuwB,QAAQ62D,SACzC4uD,EAAeh6I,KAAKy4I,kBAEpBuB,GAAgBA,IAAiBD,IAG7BC,IAAiBnB,EACjBmB,EAAa1kD,SAAS,CAClBpzF,KAAM,iBACNY,MAAO,CACH08F,eAAgB18F,EAAM08F,eACtBP,cAAe,iBACfI,SAAS,EACTyI,QAAShlG,EAAMglG,WAMvBkyC,EAAa1kD,SAAS,CAAEpzF,KAAM,sBAGlC63I,GACAA,EAAazkD,SAAS,CAAEpzF,KAAM,iBAAkBY,MAAOA,KAG/Dw1I,EAAc79H,UAAU8+H,UAAY,WAChC,IAAIV,EAAkB74I,KAAKgE,UAAUuwB,QAAQ62D,SACzCqtD,EAAoBz4I,KAAKy4I,kBACzBA,GACAA,EAAkBnjD,SAAS,CAAEpzF,KAAM,qBAGnC22I,IAAoBJ,GACpBI,EAAgBvjD,SAAS,CAAEpzF,KAAM,sBAGzCo2I,EAAc79H,UAAU6zH,QAAU,WAC9BtuI,KAAKu4I,WAAa,KAClBv4I,KAAKk6H,YAAa,EAClBl6H,KAAKk6F,WAAa,KAClBl6F,KAAKw4I,eAAiB,KACtBx4I,KAAKy4I,kBAAoB,KACzBz4I,KAAK04I,cAAgB,KACrB14I,KAAK24I,sBAAwB,MAEjCL,EAAcwB,SAAW,+BAClBxB,EA3RuB,CA4RhC,QACF,SAASY,GAAqB9B,EAAMC,EAAM4C,GACtC,IAAI9B,EAAYf,EAAKlwC,SACjBkxC,EAAYf,EAAKnwC,SACjB1e,EAAQ2vD,EAAUjvG,MAAMtS,MACxB6xD,EAAQ2vD,EAAUlvG,MAAMtS,MACxBu/D,EAAgB,GAChBgiD,EAAUzuD,SAAW0uD,EAAU1uD,SAC/ByM,EAAczM,OAAS0uD,EAAU1uD,OACjCyM,EAAciB,OAASigD,EAAKrzI,UAAUuwB,QAAQ9mB,QAAQoqG,uBAClDugC,EAAU1uD,SAGVlB,EAAQ,gBAAWA,KAG3B,IAAIlqE,EAAQ,eAAUkqE,EAAOC,EAAO2uD,EAAKpzI,UAAUuwB,QAAQm0D,QAAS0uD,EAAKpzI,YAAcqzI,EAAKrzI,UACxFozI,EAAKpzI,UAAU2kF,UACf,MACArqE,EAAMohE,eACNyW,EAAczM,QAAS,GAM3B,IAJA,IAAIqO,EAAW,CACXf,WAAY14E,EACZ63E,cAAeA,GAEVnP,EAAK,EAAGkzD,EAAcD,EAAWjzD,EAAKkzD,EAAYxuI,OAAQs7E,IAAM,CACrE,IAAImzD,EAAWD,EAAYlzD,GAC3BmzD,EAASpiD,EAAUq/C,EAAMC,GAE7B,OAAOt/C,EAEX,SAAS+gD,GAAyB90I,GAC9B,IAAIyJ,EAAUzJ,EAAUuwB,QAAQ9mB,QAC5BmqH,EAAQnqH,EAAQ2sI,oBAIpB,OAHa,MAATxiB,IACAA,EAAQnqH,EAAQ4qG,gBAEbuf,EAGX,IAAIyiB,GAAiC,SAAU5vC,GAE3C,SAAS6tC,EAAcv8B,GACnB,IAAIzV,EAAQmE,EAAOjxF,KAAKxZ,KAAM+7G,IAAa/7G,KAE3CsmG,EAAMg0C,YAAc,KACpBh0C,EAAMpM,WAAa,KACnBoM,EAAMkyC,eAAiB,KACvBlyC,EAAMoyC,cAAgB,KACtBpyC,EAAMqyC,sBAAwB,KAC9BryC,EAAMsvC,kBAAoB,SAAUp4D,GAChC,IAAIx5E,EAAYsiG,EAAMtiG,UAClBg2F,EAAMsM,EAAMi0C,SAAS/8D,GACrB0c,EAAaoM,EAAMpM,WAAaF,EAAIE,WACxCoM,EAAM+uC,SAAS9hG,YAAcvvC,EAAUuwB,QAAQ9mB,QAAQ6qG,qBAEvDhS,EAAM+uC,SAASR,eAAevuC,EAAMtiG,UAAU2sG,iBAAiBnzB,EAAG22C,UAAU/qG,SACvEo0D,EAAG4xD,SAAW9oC,EAAMtiG,UAAU2G,MAAM8zF,iBAAmBvE,EAAWlO,SAASC,aAEpFqa,EAAMyvC,gBAAkB,SAAUv4D,GAC9B,IAAI0E,EAAKokB,EAAMtiG,UAAUuwB,QAAS62D,EAAWlJ,EAAGkJ,SAAUv0D,EAAOqrD,EAAGrrD,KAChEqjE,EAAaoM,EAAMpM,WACvBoM,EAAMkyC,eAAiB,gBAAkBptD,EAAStoF,MAAMwoF,WAAYgb,EAAMpM,WAAWlO,SAASC,YAC9Fqa,EAAMg0C,YAAch0C,EAAMi0C,SAAS/8D,GACnC4N,EAASunC,WACTvnC,EAAS6O,gBAAgB,mBAAoB,CACzC,CACIr/C,GAAI0rD,EAAMg0C,YAAY1/F,GACtBL,MAAO,IAAI,OAAS6wC,EAAU8O,EAAWpO,IAAKoO,EAAWlO,UACzDwgC,QAAShvC,EAAG22C,UACZt9F,KAAMA,MAIlByvE,EAAMuxC,gBAAkB,SAAUlB,EAAKmB,EAASt6D,GAC5C,IAAI4N,EAAWkb,EAAMtiG,UAAUuwB,QAAQ62D,SACnCotD,EAAiBlyC,EAAMkyC,eACvB/C,EAAanvC,EAAMixC,YAAY9B,WAC/B/4C,EAAgB4J,EAAMpM,WAAWlO,SACjC+L,EAAW,KACX4gD,EAAwB,KACxBZ,GAAY,EACZ75C,EAAc,CACdsB,eAAgBg5C,EAChBv5C,cAAe,iBACfI,SAAS,EACTyI,QAASxB,EAAMg0C,aAEf3D,IACA5+C,EAAWyiD,GAAgB/E,EAAYkB,EAAKn5D,EAAG8vD,UAAUvxF,UAAUu9B,SAAS,oBAAqBojB,EAAcxzD,MAAOkiD,EAASiB,aAAaC,MAAMulB,4BAElJ9Z,IACA4gD,EAAwB,eAA0BH,EAAgBptD,EAASqN,aAAcV,EAAU3M,GACnG8S,EAAYe,cAAgB05C,EACvBryC,EAAMtiG,UAAUi6F,mBAAmBC,KACpC65C,GAAY,EACZhgD,EAAW,KACX4gD,EAAwB,KACxBz6C,EAAYe,cAAgB,OAGhC05C,EACAvtD,EAASkK,SAAS,CACdpzF,KAAM,mBACNY,MAAOo7F,IAIX9S,EAASkK,SAAS,CAAEpzF,KAAM,uBAEzB61I,EAID,kBAHA,kBAKCD,IACG//C,GAAY6+C,GAAYnB,EAAYkB,KACpC5+C,EAAW,MAEfuO,EAAMoyC,cAAgB3gD,EACtBuO,EAAMqyC,sBAAwBA,IAGtCryC,EAAM6vC,cAAgB,SAAU34D,GAC5B,IAAI0E,EAAKokB,EAAMtiG,UAAUuwB,QAAS62D,EAAWlJ,EAAGkJ,SAAUv0D,EAAOqrD,EAAGrrD,KAChEkzD,EAAWuc,EAAMpM,WAAWpO,IAC5B4Q,EAAgB4J,EAAMpM,WAAWlO,SACjC2U,EAAW,IAAI,OAASvV,EAAUrB,EAAU2S,GAC5C87C,EAAiBlyC,EAAMkyC,eACvBG,EAAwBryC,EAAMqyC,sBAClCvtD,EAAS6O,gBAAgB,kBAAmB,CACxC,CACIr/C,GAAI0rD,EAAMg0C,YAAY1/F,GACtBL,MAAOomD,EACP6rB,QAAShvC,EAAG22C,UACZt9F,KAAMA,KAGVyvE,EAAMoyC,eACNttD,EAASkK,SAAS,CACdpzF,KAAM,eACNopF,WAAYqtD,IAEhBvtD,EAAS6O,gBAAgB,cAAe,CACpC,CACIr/C,GAAI0rD,EAAMg0C,YAAY1/F,GACtBi8C,WAAYyP,EAAMoyC,cAAc7hD,YAAc,eAAe,GAC7DM,SAAUmP,EAAMoyC,cAAcvhD,UAAY,eAAe,GACzDsjD,UAAW95C,EACXpmD,MAAO,IAAI,OACX6wC,EAAUutD,EAAsB9sD,KAAK9B,EAASgC,OAAQ2Q,EAAgBi8C,EAAsBpuF,UAAUmyC,EAAczQ,YAAc,MAClI0tD,OAAQ,WACJvuD,EAASkK,SAAS,CACdpzF,KAAM,eACNopF,WAAYktD,KAGpBhsB,QAAShvC,EAAG22C,UACZt9F,KAAMA,MAKdu0D,EAAS6O,gBAAgB,kBAG7BqM,EAAMg0C,YAAc,KACpBh0C,EAAMkyC,eAAiB,KACvBlyC,EAAMoyC,cAAgB,MAG1B,IAAI10I,EAAY+3G,EAAS/3G,UACrBqxI,EAAW/uC,EAAM+uC,SAAW,IAAI,GAA0BrxI,EAAU42C,IACxEy6F,EAASxhI,QAAQulE,SAAW,cAC5Bi8D,EAASzB,oBAAqB,EAC9ByB,EAASd,aAAaxC,UAAY/tI,EAAUuwB,QAAQ9mB,QAAQmqG,WAC5D,IAAI2/B,EAAcjxC,EAAMixC,YAAc,IAAI,GAAYjxC,EAAM+uC,SAAU,gBAA2Bt5B,IAKjG,OAJAw7B,EAAYvb,QAAQz7H,GAAG,cAAe+lG,EAAMsvC,mBAC5C2B,EAAYvb,QAAQz7H,GAAG,YAAa+lG,EAAMyvC,iBAC1CwB,EAAYvb,QAAQz7H,GAAG,YAAa+lG,EAAMuxC,iBAC1CN,EAAYvb,QAAQz7H,GAAG,UAAW+lG,EAAM6vC,eACjC7vC,EAQX,OArJA,EAAUgyC,EAAe7tC,GA+IzB6tC,EAAc79H,UAAU/M,QAAU,WAC9B1N,KAAKq1I,SAAS3nI,WAElB4qI,EAAc79H,UAAU8/H,SAAW,SAAU/8D,GACzC,OAAO,gBAAS,gBAAeA,EAAG8vD,UAAWttI,KAAKgE,UAAUgtG,iBAEzDsnC,EAtJyB,CAuJlC,QACF,SAASkC,GAAgBpD,EAAMC,EAAMqD,EAAa9jD,EAAe+jD,GAM7D,IALA,IAAIjyD,EAAU0uD,EAAKpzI,UAAUuwB,QAAQm0D,QACjCF,EAAQ4uD,EAAKlwC,SAASh+D,MAAMtS,MAC5B6xD,EAAQ4uD,EAAKnwC,SAASh+D,MAAMtS,MAC5BtY,EAAQ,eAAUkqE,EAAOC,EAAOC,EAAS0uD,EAAKpzI,UAAU2kF,WACxDh+E,EAAQ,GACHq8E,EAAK,EAAG4zD,EAAeD,EAAY3zD,EAAK4zD,EAAalvI,OAAQs7E,IAAM,CACxE,IAAIikC,EAAY2vB,EAAa5zD,GACzBltD,EAAMmxF,EAAUmsB,EAAMC,GAC1B,IAAY,IAARv9G,EACA,OAAO,KAEFA,GACL,EAASnvB,EAAOmvB,GAGxB,GAAI4gH,GACA,GAAIhyD,EAAQ1sC,IAAI46C,EAAchgE,MAAOtY,GAASs4E,EAAcnwD,IAExD,OADA97B,EAAMksF,WAAav4E,EACZ3T,OAIX,GAAI+9E,EAAQ1sC,IAAI46C,EAAcnwD,IAAKnoB,GAASs4E,EAAchgE,MAEtD,OADAjsB,EAAMwsF,SAAW74E,EACV3T,EAGf,OAAO,KAGX,IAAI,GAA8B,WAC9B,SAASkwI,EAAazvD,GAClB,IAAIkb,EAAQtmG,KACZA,KAAK86I,2BAA4B,EACjC96I,KAAK+6I,SAAW,SAAUC,GAClBA,EAAWxuB,UACXlmB,EAAMw0C,2BAA4B,IAG1C96I,KAAKi7I,oBAAsB,SAAUhnB,GACjC,IAAI/xC,EAAKokB,EAAOlb,EAAWlJ,EAAGkJ,SAAU8vD,EAAkBh5D,EAAGg5D,gBACzDp4I,EAAQsoF,EAAStoF,MAErB,IAAKo4I,EAAgBtN,eAAgB,CACjC,GAAI9qI,EAAMw7F,gBACLgI,EAAMw0C,0BACT,CACE,IAAIhjC,EAAe1sB,EAAS8kC,QAAQ,gBAChCirB,EAAiB/vD,EAAS8kC,QAAQ,mBAClCpY,GAAkBA,GAAiB,gBAAeojC,EAAgB3N,OAAQ4N,IAC1E/vD,EAASunC,SAASsB,GAGtBnxH,EAAM27F,iBACL,gBAAey8C,EAAgB3N,OAAQ,GAAcuM,WAEtD1uD,EAASkK,SAAS,CAAEpzF,KAAM,mBAGlCokG,EAAMw0C,2BAA4B,GAEtC96I,KAAKorF,SAAWA,EAChB,IAAI8vD,EAAkBl7I,KAAKk7I,gBAAkB,IAAI,EAAgBnwG,UACjEmwG,EAAgBzN,kBAAmB,EACnCyN,EAAgBxN,mBAAoB,EACpCwN,EAAgBlf,QAAQz7H,GAAG,YAAaP,KAAKi7I,qBAI7C7vD,EAAS7qF,GAAG,SAAUP,KAAK+6I,UAM/B,OAJAF,EAAapgI,UAAU/M,QAAU,WAC7B1N,KAAKorF,SAAS0f,IAAI,SAAU9qG,KAAK+6I,UACjC/6I,KAAKk7I,gBAAgBxtI,WAElBmtI,EA7CsB,GAqD7B,GAAyC,WACzC,SAASO,EAAwB/F,EAAUgG,GACvC,IAAI/0C,EAAQtmG,KACZA,KAAKy4I,kBAAoB,KACzBz4I,KAAKs7I,eAAiB,KACtBt7I,KAAKq7I,iBAAmB,KACxBr7I,KAAKu7I,SAAW,KAChBv7I,KAAK+1I,gBAAkB,SAAUv4D,GAC7B8oB,EAAMi1C,SAAWj1C,EAAMk1C,cAAch+D,EAAG8vD,YAE5CttI,KAAK63I,gBAAkB,SAAUlB,EAAKmB,EAASt6D,GAC3C,IAAI63D,EAAW/uC,EAAMixC,YAAYlC,SAC7BoD,EAAoB,KACpB6C,EAAiB,KACjBvD,GAAY,EACZ75C,EAAc,CACdsB,eAAgB,iBAChBP,cAAe,iBACfI,QAASiH,EAAMi1C,SAAShwH,OACxBu8E,QAAS,MAET6uC,IACA8B,EAAoB9B,EAAI3yI,UAAUuwB,QAAQ62D,SACtCkb,EAAMm1C,oBAAoBj+D,EAAG8vD,UAAWmL,KACxC6C,EAAiBI,GAAwB/E,EAAIzvC,SAAUZ,EAAMi1C,SAAU9C,GACvEv6C,EAAYe,cAAgB,gBAAkBq8C,GAC9CvD,GAAa,gBAAmB75C,EAAau6C,GACzCV,IACA75C,EAAYe,cAAgB,iBAC5Bq8C,EAAiB,QAI7Bh1C,EAAM6yC,YAAYV,EAAmBv6C,GAGrCm3C,EAASpZ,mBAAmB6b,IAAYwD,IAAmBvwG,SAASwhF,cAAc,eAC7EwrB,EAID,kBAHA,kBAKCD,IACDzC,EAASnZ,sBAAsBof,GAC/Bh1C,EAAMmyC,kBAAoBA,EAC1BnyC,EAAMg1C,eAAiBA,IAG/Bt7I,KAAKm2I,cAAgB,SAAUliB,GAC3B,IAAI/xC,EAAKokB,EAAOmyC,EAAoBv2D,EAAGu2D,kBAAmB6C,EAAiBp5D,EAAGo5D,eAE9E,GADAh1C,EAAMizC,YACFd,GAAqB6C,EAAgB,CACrC,IAAI3F,EAAWrvC,EAAMixC,YAAY5B,SAC7BgG,EAAYhG,EAAS3xI,UAAUuwB,QAAQsC,KACvC0kH,EAAWj1C,EAAMi1C,SACjBtoC,EAAM,EAAS,GAAIwlC,EAAkBv0B,kBAAkByxB,EAASzuC,UAAW,CAAE0yC,UAAW3lB,EAAIqZ,UAAW9gB,QAASyH,EAAIE,UAAWt9F,KAAM8kH,IACzIlD,EAAkBx+C,gBAAgB,OAAQ,CAACgZ,IACvCsoC,EAAShwH,SACTktH,EAAkBnjD,SAAS,CACvBpzF,KAAM,eACNopF,WAAY,gBAAkBgwD,KAE9BrnB,EAAImb,SACJqJ,EAAkBnjD,SAAS,CACvBpzF,KAAM,eACNkhH,gBAAiBk4B,EAAetvD,SAASC,aAIjDwsD,EAAkBx+C,gBAAgB,eAAgB,CAC9C,CACI2/C,UAAW3lB,EAAIqZ,UACf/yF,MAAO,IAAI,OAASk+F,EAAmB6C,EAAexvD,IAAKwvD,EAAetvD,UAC1En1D,KAAM8kH,MAKtBr1C,EAAMmyC,kBAAoB,KAC1BnyC,EAAMg1C,eAAiB,MAE3B,IAAI/D,EAAcv3I,KAAKu3I,YAAc,IAAI,GAAYlC,EAAU,SAC/DkC,EAAY/B,gBAAiB,EAC7B+B,EAAYvb,QAAQz7H,GAAG,YAAaP,KAAK+1I,iBACzCwB,EAAYvb,QAAQz7H,GAAG,YAAaP,KAAK63I,iBACzCN,EAAYvb,QAAQz7H,GAAG,UAAWP,KAAKm2I,eACvCn2I,KAAKq7I,iBAAmBA,EAqC5B,OAnCAD,EAAwB3gI,UAAU+gI,cAAgB,SAAUlO,GACxD,MAAqC,kBAA1BttI,KAAKq7I,iBACL,gBAAcr7I,KAAKq7I,kBAEY,oBAA1Br7I,KAAKq7I,iBACV,gBAAcr7I,KAAKq7I,iBAAiB/N,IAGpCsO,GAAkBtO,IAGjC8N,EAAwB3gI,UAAU0+H,YAAc,SAAUY,EAAcj3I,GACpE,IAAIk3I,EAAeh6I,KAAKy4I,kBACpBuB,GAAgBA,IAAiBD,GACjCC,EAAa1kD,SAAS,CAAEpzF,KAAM,qBAE9B63I,GACAA,EAAazkD,SAAS,CAAEpzF,KAAM,iBAAkBY,MAAOA,KAG/Ds4I,EAAwB3gI,UAAU8+H,UAAY,WACtCv5I,KAAKy4I,mBACLz4I,KAAKy4I,kBAAkBnjD,SAAS,CAAEpzF,KAAM,sBAGhDk5I,EAAwB3gI,UAAUghI,oBAAsB,SAAU7gG,EAAI69F,GAClE,IAAI1gC,EAAa0gC,EAAkBprD,IAAI,cACvC,MAA0B,oBAAf0qB,EACAA,EAAWn9D,GAES,kBAAfm9D,IAA2BA,GAChCnwB,QAAQ,gBAAehtC,EAAIm9D,KAInCqjC,EA5HiC,GAgI5C,SAASM,GAAwBx0C,EAAUq0C,EAAUnwD,GAEjD,IADA,IAAIywD,EAAW,EAAS,GAAIN,EAAS/zD,eAC5BR,EAAK,EAAG9E,EAAKkJ,EAASiB,aAAaC,MAAMslB,sBAAuB5qB,EAAK9E,EAAGx2E,OAAQs7E,IAAM,CAC3F,IAAIikC,EAAY/oC,EAAG8E,GACnB,EAAS60D,EAAU5wB,EAAU/jB,EAAUq0C,IAE3C,IAAIzvD,EAAM,gBAAc+vD,EAAUN,EAASpwD,SAAU+b,EAASxd,OAAQ0B,EAASiC,IAAI,uBAAyBzF,QAAQ2zD,EAAShjH,UAC7H6yD,GACIx0D,EAAQswE,EAASh+D,MAAMtS,MAGvBswE,EAASxd,QAAU6xD,EAASxiH,YAC5BnC,EAAQw0D,EAAS1C,QAAQ1sC,IAAIplB,EAAO2kH,EAASxiH,YAEjD,IAAI0N,EAAM80G,EAAShjH,SACf6yD,EAAS1C,QAAQ1sC,IAAIplB,EAAO2kH,EAAShjH,UACrC6yD,EAASyR,mBAAmBqK,EAASxd,OAAQ9yD,GAC7Co1D,EAAW,eAAoBF,EAAIC,MAAO,CAAEn1D,MAAOA,EAAO6P,IAAKA,IACnE,MAAO,CAAEqlD,IAAKA,EAAKE,SAAUA,GAIjC,SAAS4vD,GAAkBhhG,GACvB,IAAIr1B,EAAMu2H,GAAkBlhG,EAAI,SAC5B12C,EAAMqhB,EACNqjF,KAAKhzC,MAAMrwC,GACX,CAAEgG,QAAQ,GACd,OAAO,gBAAcrnB,GAGzB,SAAS43I,GAAkBlhG,EAAIvrC,GAC3B,IAAIo6C,EAAS,OAAOsyF,eAChBC,GAAgBvyF,EAASA,EAAS,IAAM,IAAMp6C,EAClD,OAAOurC,EAAGtB,aAAa,QAAU0iG,IAAiB,GAJtD,OAAOD,eAAiB,IAYe,WACnC,SAASE,EAAkBrhG,EAAImhE,GAC3B,IAAIzV,EAAQtmG,UACK,IAAb+7G,IAAuBA,EAAW,IACtC/7G,KAAK41I,kBAAoB,SAAUp4D,GAC/B,IAAI63D,EAAW/uC,EAAM+uC,SACjBnzD,EAAKokB,EAAMyV,SAAUxoE,EAAc2uC,EAAG3uC,YAAa8kE,EAAiBn2B,EAAGm2B,eAC3Eg9B,EAAS9hG,YACU,MAAfA,EACIA,EACCiqC,EAAG4xD,QAAU,EAAI,QAAe92B,qBACzC+8B,EAASzd,MACLp6C,EAAG4xD,QACoB,MAAlB/2B,EAAyBA,EAAiB,QAAeA,eAC1D,GAEZr4G,KAAK+1I,gBAAkB,SAAUv4D,GACzBA,EAAG4xD,SACH9oC,EAAM+uC,SAASzd,OACfp6C,EAAG8vD,UAAUvxF,UAAUu9B,SAAS,aAChCgtB,EAAM+uC,SAASz6E,OAAOm2E,cAAch1F,UAAUC,IAAI,gBAG1Dh8C,KAAK+7G,SAAWA,EAChB,IAAIs5B,EAAWr1I,KAAKq1I,SAAW,IAAI,GAA0Bz6F,GAC7Dy6F,EAASzB,oBAAqB,EACD,MAAzB73B,EAASmgC,eACT7G,EAASxhI,QAAQulE,SAAW2iC,EAASmgC,cAEhB,MAArBngC,EAASogC,WACT9G,EAASz6E,OAAOte,WAAay/D,EAASogC,UAE1C9G,EAASrZ,QAAQz7H,GAAG,cAAeP,KAAK41I,mBACxCP,EAASrZ,QAAQz7H,GAAG,YAAaP,KAAK+1I,iBACtC,IAAI,GAAwBV,EAAUt5B,EAASqgC,WAEnDH,EAAkBxhI,UAAU/M,QAAU,WAClC1N,KAAKq1I,SAAS3nI,YArCgB,GAAtC,IAgDI2uI,GAAyC,SAAU5xC,GAEnD,SAAS4xC,EAAwBhP,GAC7B,IAAI/mC,EAAQmE,EAAOjxF,KAAKxZ,KAAMqtI,IAAgBrtI,KAC9CsmG,EAAMmnC,kBAAmB,EACzBnnC,EAAMg2C,eAAiB,GACvBh2C,EAAMi2C,gBAAkB,KACxBj2C,EAAMsvC,kBAAoB,SAAUp4D,GAChC8oB,EAAM01B,QAAQ5gC,QAAQ,cAAe5d,GAChC8oB,EAAMmnC,kBAEPnnC,EAAM01B,QAAQ5gC,QAAQ,YAAa5d,IAG3C8oB,EAAMk2C,kBAAoB,SAAUh/D,GAC3B8oB,EAAMmnC,kBACPnnC,EAAM01B,QAAQ5gC,QAAQ,WAAY5d,IAG1C8oB,EAAM2vC,gBAAkB,SAAUz4D,GAC9B8oB,EAAM01B,QAAQ5gC,QAAQ,YAAa5d,GAC9B8oB,EAAMmnC,kBAEPnnC,EAAM01B,QAAQ5gC,QAAQ,UAAW5d,IAGzC,IAAI3pE,EAAUyyF,EAAMzyF,QAAU,IAAI,EAAgBw5H,GAIlD,OAHAx5H,EAAQmoH,QAAQz7H,GAAG,cAAe+lG,EAAMsvC,mBACxC/hI,EAAQmoH,QAAQz7H,GAAG,cAAe+lG,EAAMk2C,mBACxC3oI,EAAQmoH,QAAQz7H,GAAG,YAAa+lG,EAAM2vC,iBAC/B3vC,EA2BX,OAxDA,EAAU+1C,EAAyB5xC,GA+BnC4xC,EAAwB5hI,UAAU/M,QAAU,WACxC1N,KAAK6T,QAAQnG,WAEjB2uI,EAAwB5hI,UAAUo6H,cAAgB,SAAU5rB,GACxDjpH,KAAKytI,iBAAmBxkB,GAE5BozB,EAAwB5hI,UAAUwhH,mBAAqB,SAAUhT,GAC7D,GAAIA,EAGIjpH,KAAKu8I,kBACLv8I,KAAKu8I,gBAAgBhwI,MAAM2uH,WAAa,GACxCl7H,KAAKu8I,gBAAkB,UAG1B,CACD,IAAIrM,EAAWlwI,KAAKs8I,eAChBvxG,SAASwhF,cAAcvsH,KAAKs8I,gBAC5B,KACApM,IACAlwI,KAAKu8I,gBAAkBrM,EACvBA,EAAS3jI,MAAM2uH,WAAa,YAIjCmhB,EAzDiC,CA0D1C,QAqCE,IA/BqC,WACrC,SAASI,EAAoBC,EAAqB3gC,GAC9C,IAAIsxB,EAActiG,SAGlB2xG,IAAwB3xG,UACpB2xG,aAA+BxlH,SAC/Bm2G,EAAcqP,EACd3gC,EAAWA,GAAY,IAGvBA,EAAY2gC,GAAuB,GAEvC,IAAIrH,EAAWr1I,KAAKq1I,SAAW,IAAIgH,GAAwBhP,GACtB,kBAA1BtxB,EAASmgC,aAChB7G,EAASxhI,QAAQulE,SAAW2iC,EAASmgC,aAEhC7O,IAAgBtiG,WACrBsqG,EAASxhI,QAAQulE,SAAW,gBAEO,kBAA5B2iC,EAASugC,iBAChBjH,EAASiH,eAAiBvgC,EAASugC,gBAEvC,IAAI,GAAwBjH,EAAUt5B,EAASqgC,WAEnDK,EAAoBhiI,UAAU/M,QAAU,WACpC1N,KAAKq1I,SAAS3nI,WA1BkB,GA+B7B,eAAa,CACpBskG,sBAAuB,CAAC,GAAc,GAAe,GAAeqoC,IACpEpoC,qBAAsB,CAAC,IACvBI,oBAAqB,MAGV,MClkEX,GAAgB,SAASvwD,EAAG3jC,GAI5B,OAHA,GAAgB/Z,OAAO2kF,gBAClB,CAAE/wC,UAAW,cAAgBhrC,OAAS,SAAU80C,EAAG3jC,GAAK2jC,EAAE9J,UAAY75B,IACvE,SAAU2jC,EAAG3jC,GAAK,IAAK,IAAI8B,KAAK9B,EAAOA,EAAE/B,eAAe6D,KAAI6hC,EAAE7hC,GAAK9B,EAAE8B,KAClE,GAAc6hC,EAAG3jC,IAG5B,SAAS,GAAU2jC,EAAG3jC,GAElB,SAAS8qE,IAAOjpF,KAAKwsB,YAAcs1B,EADnC,GAAcA,EAAG3jC,GAEjB2jC,EAAErnC,UAAkB,OAAN0D,EAAa/Z,OAAOmnB,OAAOpN,IAAM8qE,EAAGxuE,UAAY0D,EAAE1D,UAAW,IAAIwuE,GAGnF,IAAI,GAAW,WAQX,OAPA,GAAW7kF,OAAOC,QAAU,SAAkB8b,GAC1C,IAAK,IAAIpC,EAAGrF,EAAI,EAAGyD,EAAIlD,UAAUvN,OAAQgN,EAAIyD,EAAGzD,IAE5C,IAAK,IAAIuH,KADTlC,EAAI9E,UAAUP,GACAqF,EAAO3Z,OAAOqW,UAAU2B,eAAe5C,KAAKuE,EAAGkC,KAAIE,EAAEF,GAAKlC,EAAEkC,IAE9E,OAAOE,GAEJ,GAAS7E,MAAMtb,KAAMiZ,YAO5B,GAAuC,SAAUwxF,GAEjD,SAASkyC,EAAsBC,GAC3B,IAAIt2C,EAAQmE,EAAOjxF,KAAKxZ,OAASA,KAEjC,OADAsmG,EAAMs2C,SAAWA,EACVt2C,EAoPX,OAxPA,GAAUq2C,EAAuBlyC,GAMjCkyC,EAAsBliI,UAAUw+G,WAAa,SAAU1kG,EAASslE,EAAMq/B,GAClEzuB,EAAOhwF,UAAUw+G,WAAWz/G,KAAKxZ,KAAMu0B,EAASslE,EAAMq/B,GAEtDl5H,KAAK68I,eAAiB,eAAgB,CAClCzxE,KAAM,UACND,OAAQ,UACRwkB,UAAW3vF,KAAKu0B,QAAQ9mB,QAAQkpG,yBAKxCgmC,EAAsBliI,UAAU4+G,WAAa,SAAUx/B,EAAMq/B,GAIzD,IAHA,IAAI4jB,EAAY98I,KAAK48I,SAASG,eAAeljD,GAGpC8kC,EAAM,EAAGA,EAAMme,EAAUpxI,OAAQizH,IACtCme,EAAUne,GAAO3+H,KAAKw6H,cAAcsiB,EAAUne,IAElD3+H,KAAK88I,UAAYA,EACjB98I,KAAK48I,SAASI,gBAAgBF,EAAW98I,KAAK48I,SAASK,iBAE3DN,EAAsBliI,UAAU8+G,WAAa,SAAU1/B,GACnDA,EAAK50F,SAAQ,SAAU+0F,GACnB,gBAAcA,EAAIp/C,OAEtB56C,KAAK88I,UAAY,MAErBH,EAAsBliI,UAAUqgH,gBAAkB,SAAUsP,GACxD,IAAIloD,EAAKliF,KAAM48I,EAAW16D,EAAG06D,SAAUE,EAAY56D,EAAG46D,UAClDpgB,EAASkgB,EAASlgB,OAEtB,GADAkgB,EAASM,oBAAoB9S,GACzB0S,EACA,IAAK,IAAIne,EAAM,EAAGA,EAAMjC,EAAQiC,IAC5B3+H,KAAKm9I,sBAAsBL,EAAUne,KAIjDge,EAAsBliI,UAAUugH,eAAiB,SAAUoP,GACvD,IAAIloD,EAAKliF,KAAM48I,EAAW16D,EAAG06D,SAAUE,EAAY56D,EAAG46D,UAClDpgB,EAASkgB,EAASlgB,OAEtB,GADAkgB,EAASQ,mBAAmBhT,GACxB0S,EACA,IAAK,IAAIne,EAAM,EAAGA,EAAMjC,EAAQiC,IAC5B3+H,KAAKq9I,aAAaP,EAAUne,KAKxCge,EAAsBliI,UAAUk/G,uBAAyB,WACrD,MAAO,CACHvuD,KAAM,UACND,OAAQ,UACR0kB,UAAU,IAIlB8sD,EAAsBliI,UAAUo/G,uBAAyB,WACrD,OAAO,GAGX8iB,EAAsBliI,UAAUq/G,cAAgB,SAAU9/B,EAAKk/B,GAC3D,IASIuI,EACA6b,EACAC,EAXArjD,EAAaF,EAAIE,WACjBnQ,EAAWmQ,EAAWpO,IACtByP,EAAUrB,EAAW7D,GACrB3M,EAASK,EAASL,OAClBswC,EAAc,eAAsBh6H,KAAKu0B,QAASw1D,EAAUwR,GAC5DomC,EAAuB3nC,EAAIZ,SAAW,eAA2Bp5F,KAAKu0B,QAASw1D,EAAUwR,GACzFqmC,EAAqB5nC,EAAIX,OAAS,eAAyBr5F,KAAKu0B,QAASw1D,EAAUwR,GACnF+N,EAAUtpG,KAAK+5H,cAAc//B,EAAKggC,EAAa2H,GAAwBC,EAAoB1I,GAC3F2I,EAAU,eAAS7hI,KAAKu6H,WAAWh/B,IAMvC,GAFA+N,EAAQ/0F,QAAQ,sBAEZ,gBAAgB2lF,EAAWhxD,QAI3B,GAAI8wD,EAAIZ,SAAWY,EAAIX,MAAO,CAC1B,IAAImkD,EAAexjD,EAAIpjE,MACnB6mH,EAAazjD,EAAIvzD,IACrBg7F,EAAWzhI,KAAKs6H,aAAakjB,EAAcC,EAAY/zD,GACvD4zD,EAAet9I,KAAKs6H,aAAakjB,EAAcC,EAAY/zD,EAAQ1pF,KAAK68I,gBACxEU,EAAgBv9I,KAAKs6H,aAAakjB,EAAcC,EAAY/zD,EAAQ,MAAM,SAK9E+3C,EAAWzhI,KAAKo6H,YAAYlgC,GAC5BojD,EAAet9I,KAAKo6H,YAAYlgC,EAAYl6F,KAAK68I,gBACjDU,EAAgBv9I,KAAKo6H,YAAYlgC,EAAY,MAAM,GAEvD,MAAO,aAAeoP,EAAQ90F,KAAK,KAAO,KACrCu1E,EAASnlF,IACN,UAAY,gBAAWmlF,EAASnlF,KAAO,IACvC,KACHi9H,EACG,WAAaA,EAAU,IACvB,IAND,6BASFJ,EACG,oCACsB,gBAAW8b,GADjC,gBAEqB,gBAAWD,GAFhC,WAIe,gBAAW7b,GAJ1B,gBAMA,KACH13C,EAAStmF,MACN,yBACI,gBAAWsmF,EAAStmF,OACpB,SACJ,IACJ,UAOCm+H,EACG,gDACA,IACJ,QAKR+a,EAAsBliI,UAAU0iI,sBAAwB,SAAUtjD,GAC9D,IAAI+pC,EACA8Z,EACAhlI,EAGJ,GAFAkrH,EAAS+Z,GAAmB9jD,GAC5B+jD,GAAuBha,GAClB8Z,EAAS9Z,EAAO,GAAK,CACtB,IAAKlrH,EAAI,EAAGA,EAAIglI,EAAOhyI,OAAQgN,IAC3BmlI,GAAwBH,EAAOhlI,IAEnC,IAAKA,EAAI,EAAGA,EAAIglI,EAAOhyI,OAAQgN,IAC3B1Y,KAAK89I,sBAAsBJ,EAAOhlI,GAAI,EAAG,KAYrDikI,EAAsBliI,UAAUqjI,sBAAwB,SAAU9jD,EAAK+jD,EAAwBC,GAC3F,IACItlI,EADAulI,EAAcjkD,EAAIikD,YAEtB,QAAyB95I,IAArB61F,EAAIkkD,aAmBJ,IAlBKD,EAAYvyI,QAMb1L,KAAKm+I,gBAAgBF,GAGrBj+I,KAAK89I,sBAAsBG,EAAY,GAAIF,EAAyB,EAAGC,GACvEhkD,EAAIkkD,aAAeD,EAAY,GAAGG,eARlCpkD,EAAIkkD,aAAe,EAWvBlkD,EAAIokD,cAAgBpkD,EAAIkkD,cACnBlkD,EAAIkkD,aAAeF,IACfD,EAAyB,GAG7BrlI,EAAI,EAAGA,EAAIulI,EAAYvyI,OAAQgN,IAChC1Y,KAAK89I,sBAAsBG,EAAYvlI,GAAI,EAAGshF,EAAIkkD,eAI9DvB,EAAsBliI,UAAU0jI,gBAAkB,SAAUF,GACxD,IAAIxjB,EAAOwjB,EAAY56I,IAAIg7I,IACvB14D,EAAQ,CAER,CAAEE,MAAO,kBAAmB35B,OAAQ,GAEpC,CAAE25B,MAAO,gBAAiB35B,MAAO,IACnC5lC,OAAOtmB,KAAKu0B,QAAQ66E,iBAItB,OAHAqrB,EAAKt1H,MAAK,SAAU6gF,EAAMC,GACtB,OAAO,eAAoBD,EAAMC,EAAMN,MAEpC80C,EAAKp3H,KAAI,SAAUwb,GACtB,OAAOA,EAAE87G,SAKjBgiB,EAAsBliI,UAAU4iI,aAAe,SAAUxjD,GACrD,IAAK,IAAI7S,EAAK,EAAGmT,EAASN,EAAM7S,EAAKmT,EAAOzuF,OAAQs7E,IAAM,CACtD,IAAIgT,EAAMG,EAAOnT,GACjB,eAAWgT,EAAIp/C,GAAI56C,KAAKs+I,eAAetkD,IACnCA,EAAIryE,MAAQ,GACZqyE,EAAIp/C,GAAGmB,UAAUC,IAAI,4BAIrBg+C,EAAIE,WAAWpO,IAAIroF,OAASu2F,EAAI1pE,OAAS0pE,EAAI5pE,IAAM,IACnD4pE,EAAIp/C,GAAGmB,UAAUC,IAAI,cAMjC2gG,EAAsBliI,UAAU6jI,eAAiB,SAAUtkD,GACvD,IAKI7pE,EACAE,EANAkuH,EAAgBv+I,KAAKu0B,QAAQ9mB,QAAQ+wI,iBACrCJ,EAAgBpkD,EAAIokD,cACpBF,EAAelkD,EAAIkkD,aACnBvzI,EAAQ3K,KAAK48I,SAAS6B,uBAAuBzkD,GAC7C7G,EAAQnzF,KAAKu0B,QAAQ4+D,MAsBzB,OAnBIorD,IAEAL,EAAehtI,KAAKkN,IAAI,EAAGggI,EAAiD,GAAhCF,EAAeE,KAE3DjrD,GACAhjE,EAAO,EAAI+tH,EACX7tH,EAAQ+tH,IAGRjuH,EAAOiuH,EACP/tH,EAAQ,EAAI6tH,GAEhBvzI,EAAMylI,OAASp2C,EAAIryE,MAAQ,EAC3Bhd,EAAMwlB,KAAc,IAAPA,EAAa,IAC1BxlB,EAAM0lB,MAAgB,IAARA,EAAc,IACxBkuH,GAAiBvkD,EAAI0kD,kBAErB/zI,EAAMwoF,EAAQ,aAAe,eAAiB,IAE3CxoF,GAEJgyI,EAzP+B,CA0PxC,QAGF,SAASgB,GAAmB9jD,GACxB,IACInhF,EACAshF,EACAhuD,EAHA43F,EAAS,GAIb,IAAKlrH,EAAI,EAAGA,EAAImhF,EAAKnuF,OAAQgN,IAAK,CAG9B,IAFAshF,EAAMH,EAAKnhF,GAENszB,EAAI,EAAGA,EAAI43F,EAAOl4H,OAAQsgC,IAC3B,IAAK2yG,GAAyB3kD,EAAK4pC,EAAO53F,IAAItgC,OAC1C,MAGRsuF,EAAIryE,MAAQqkB,GACX43F,EAAO53F,KAAO43F,EAAO53F,GAAK,KAAK1+B,KAAK0sF,GAEzC,OAAO4pC,EAIX,SAASga,GAAuBha,GAC5B,IAAIlrH,EACAiP,EACAqkB,EACAguD,EACAh7E,EACJ,IAAKtG,EAAI,EAAGA,EAAIkrH,EAAOl4H,OAAQgN,IAE3B,IADAiP,EAAQi8G,EAAOlrH,GACVszB,EAAI,EAAGA,EAAIrkB,EAAMjc,OAAQsgC,IAG1B,IAFAguD,EAAMryE,EAAMqkB,GACZguD,EAAIikD,YAAc,GACbj/H,EAAItG,EAAI,EAAGsG,EAAI4kH,EAAOl4H,OAAQsT,IAC/B2/H,GAAyB3kD,EAAK4pC,EAAO5kH,GAAIg7E,EAAIikD,aAO7D,SAASJ,GAAwB7jD,GAC7B,IAEIthF,EACAkmI,EAHAX,EAAcjkD,EAAIikD,YAClBS,EAAkB,EAGtB,QAA4Bv6I,IAAxB61F,EAAI0kD,gBAA+B,CACnC,IAAKhmI,EAAI,EAAGA,EAAIulI,EAAYvyI,OAAQgN,IAChCkmI,EAAaX,EAAYvlI,GAEzBmlI,GAAwBe,GAGxBF,EAAkBxtI,KAAKmN,IAAIqgI,EAAiB,EAAIE,EAAWF,iBAE/D1kD,EAAI0kD,gBAAkBA,GAK9B,SAASC,GAAyB3kD,EAAK+pC,EAAW8a,QAC9B,IAAZA,IAAsBA,EAAU,IACpC,IAAK,IAAInmI,EAAI,EAAGA,EAAIqrH,EAAUr4H,OAAQgN,IAC9BomI,GAAmB9kD,EAAK+pC,EAAUrrH,KAClCmmI,EAAQvxI,KAAKy2H,EAAUrrH,IAG/B,OAAOmmI,EAGX,SAASC,GAAmBC,EAAMC,GAC9B,OAAOD,EAAKzuH,OAAS0uH,EAAK5uH,KAAO2uH,EAAK3uH,IAAM4uH,EAAK1uH,OAErD,SAAS+tH,GAA2BrkD,GAChC,IAAI91F,EAAM,eAAmB81F,GAG7B,OAFA91F,EAAIw6I,gBAAkB1kD,EAAI0kD,gBAC1Bx6I,EAAIk6I,cAAgBpkD,EAAIokD,cACjBl6I,EAGX,IAAI+6I,GAAwC,SAAUx0C,GAElD,SAASw0C,IACL,OAAkB,OAAXx0C,GAAmBA,EAAOnvF,MAAMtb,KAAMiZ,YAAcjZ,KAmB/D,OArBA,GAAUi/I,EAAwBx0C,GAIlCw0C,EAAuBxkI,UAAU4+G,WAAa,SAAUx/B,EAAMq/B,GAC1Dl5H,KAAK88I,UAAY98I,KAAK48I,SAASG,eAAeljD,GAC9C75F,KAAK48I,SAASI,gBAAgBh9I,KAAK88I,UAAW98I,KAAK48I,SAASsC,oBAC5Dl/I,KAAKsgI,UAAYpH,EAAWoH,WAEhC2e,EAAuBxkI,UAAU6jI,eAAiB,SAAUtkD,GACxD,IAAIrvF,EAAQ8/F,EAAOhwF,UAAU6jI,eAAe9kI,KAAKxZ,KAAMg6F,GACnDsmC,EAAYtgI,KAAKsgI,UACrB,GAAIA,GAAaA,EAAU3B,MAAQ3kC,EAAI2kC,IAAK,CACxC,IAAIwgB,EAAiB10C,EAAOhwF,UAAU6jI,eAAe9kI,KAAKxZ,KAAMsgI,GAChE31H,EAAMwlB,KAAOgvH,EAAehvH,KAC5BxlB,EAAM0lB,MAAQ8uH,EAAe9uH,MAC7B1lB,EAAMm5E,WAAaq7D,EAAer7D,WAClCn5E,EAAMo5E,YAAco7D,EAAep7D,YAEvC,OAAOp5E,GAEJs0I,EAtBgC,CAuBzC,IAEEG,GAAsC,SAAU30C,GAEhD,SAAS20C,EAAqBxC,GAC1B,IAAIt2C,EAAQmE,EAAOjxF,KAAKxZ,OAASA,KAEjC,OADAsmG,EAAMs2C,SAAWA,EACVt2C,EA0BX,OA9BA,GAAU84C,EAAsB30C,GAMhC20C,EAAqB3kI,UAAU4+G,WAAa,SAAUn3H,EAAM23F,GACxD,IACIgiC,EADA+gB,EAAW58I,KAAK48I,SAapB,MAVa,YAAT16I,EACA25H,EAAe+gB,EAASyC,eAEV,kBAATn9I,EACL25H,EAAe+gB,EAAS0C,qBAEV,cAATp9I,IACL25H,EAAe+gB,EAAS2C,uBAE5B3C,EAASI,gBAAgBJ,EAASG,eAAeljD,GAAOgiC,GACjDhiC,EAAKx2F,KAAI,SAAU22F,GACtB,OAAOA,EAAIp/C,OAGnBwkG,EAAqB3kI,UAAUqgH,gBAAkB,SAAUjhC,GACvD75F,KAAK48I,SAASM,oBAAoBrjD,IAEtCulD,EAAqB3kI,UAAUugH,eAAiB,SAAUnhC,GACtD75F,KAAK48I,SAASQ,mBAAmBvjD,IAE9BulD,EA/B8B,CAgCvC,QAMEI,GAA6B,CAC7B,CAAEl9D,MAAO,GACT,CAAEC,QAAS,IACX,CAAEA,QAAS,IACX,CAAEC,QAAS,IACX,CAAEA,QAAS,KAEX,GAA0B,SAAUioB,GAEpC,SAASg1C,EAAS7kG,EAAI+oF,GAClB,IAAIr9B,EAAQmE,EAAOjxF,KAAKxZ,KAAM46C,IAAO56C,KACrCsmG,EAAMo5C,kBAAmB,EACzBp5C,EAAMq5C,iBAAkB,EACxBr5C,EAAM2kC,eAAiB,gBAAQ3kC,EAAM4kC,iBACrC5kC,EAAM+iB,eAAiB,gBAAiB/iB,EAAMgjB,iBAC9ChjB,EAAMs5C,YAAc,gBAAiBt5C,EAAMu5C,aAAc,KAAM,CAACv5C,EAAM+iB,iBACtE/iB,EAAMw5C,cAAgB,gBAAiBx5C,EAAMy5C,eAAgBz5C,EAAM05C,iBAAkB,CAAC15C,EAAM+iB,iBAC5F/iB,EAAMq9B,YAAcA,EACpB,IAAImc,EAAgBx5C,EAAMw5C,cACtBlb,EAAgBt+B,EAAMs+B,cAAgB,IAAI,GAAsBt+B,GAChE2/B,EAAe3/B,EAAM2/B,aAAe,IAAImZ,GAAqB94C,GASjE,OARAA,EAAM4/B,eAAiB,IAAI+Y,GAAuB34C,GAClDA,EAAMsvB,oBAAsB,gBAAiBqQ,EAAahN,WAAW19E,KAAK0qF,EAAc,iBAAkBA,EAAa/gC,SAAS3pD,KAAK0qF,EAAc,iBAAkB,CAAC6Z,IACtKx5C,EAAM4wB,oBAAsB,gBAAiB5wB,EAAM25C,qBAAsB35C,EAAM45C,uBAAwB,CAACJ,IACxGx5C,EAAMy+B,eAAiB,gBAAiBH,EAAc3L,WAAW19E,KAAKqpF,GAAgBA,EAAc1/B,SAAS3pD,KAAKqpF,GAAgB,CAACkb,IACnIx5C,EAAMggC,eAAiB,gBAAiBL,EAAahN,WAAW19E,KAAK0qF,EAAc,WAAYA,EAAa/gC,SAAS3pD,KAAK0qF,EAAc,WAAY,CAAC6Z,IACrJx5C,EAAM+wB,qBAAuB,gBAAiBuN,EAAcxJ,mBAAmB7/E,KAAKqpF,GAAgBA,EAAcvJ,qBAAqB9/E,KAAKqpF,GAAgB,CAACt+B,EAAMy+B,iBACnKz+B,EAAMixB,gBAAkB,gBAAiBjxB,EAAMigC,iBAAkBjgC,EAAMkgC,mBAAoB,CAACsZ,IAC5Fx5C,EAAMmxB,kBAAoB,gBAAiBnxB,EAAMmgC,mBAAoBngC,EAAMogC,qBAAsB,CAACoZ,IAC3Fx5C,EA4cX,OAjeA,GAAUm5C,EAAUh1C,GA2BpBg1C,EAAShlI,UAAUywH,gBAAkB,SAAUz9H,GAC3C,IACI0yI,EACA/tI,EAFAguI,EAAe3yI,EAAQ2yI,aAAcC,EAAe5yI,EAAQ4yI,aAGhED,EAAe,eAAeA,GAC9BC,EAAeA,EAAe,eAAeA,GAAgBD,EAC7DD,EAAe,gBAAqBC,EAAcC,GAC7B,OAAjBF,IACAE,EAAeD,EACfD,EAAe,GAGnBngJ,KAAKogJ,aAAeA,EACpBpgJ,KAAKqgJ,aAAeA,EACpBrgJ,KAAKmgJ,aAAeA,EAGpB/tI,EAAQ3E,EAAQ6yI,gBACZtzI,MAAMsd,QAAQlY,KACdA,EAAQA,EAAMA,EAAM1G,OAAS,IAEjC1L,KAAKugJ,YAAc,eAAgBnuI,GAAS,CACxCg5D,KAAM,UACND,OAAQ,UACRykB,gBAAgB,EAChBC,SAAU,UAEdz9E,EAAQ3E,EAAQ+yI,kBAChBxgJ,KAAKygJ,cAAgBruI,EACjB,eAAeA,GACfpS,KAAK0gJ,qBAAqBN,IAGlCX,EAAShlI,UAAUimI,qBAAuB,SAAUN,GAChD,IAAI1nI,EACA+nI,EACAE,EAEJ,IAAKjoI,EAAI8mI,GAA2B9zI,OAAS,EAAGgN,GAAK,EAAGA,IAGpD,GAFA+nI,EAAgB,eAAejB,GAA2B9mI,IAC1DioI,EAAgB,gBAAqBF,EAAeL,GAC9B,OAAlBO,GAA0BA,EAAgB,EAC1C,OAAOF,EAGf,OAAOL,GAIXX,EAAShlI,UAAU3a,OAAS,SAAU6K,EAAO4pB,GACzCv0B,KAAKirI,eAAe12G,EAAQ9mB,SAC5B,IAAI6wH,EAAQ3zH,EAAM2zH,MAClBt+H,KAAK08H,OAAS4B,EAAM5yH,OACpB1L,KAAKqpH,eAAe90F,EAAQ80E,OAC5BrpG,KAAK4/I,YAAYj1I,EAAMqyF,aACvBh9F,KAAK8/I,cAAcn1I,EAAM2zH,MAAO3zH,EAAMqyF,aACtCh9F,KAAK41H,oBAAoBrhG,EAAS5pB,EAAMm1H,kBACxC9/H,KAAKk3H,oBAAoBvsH,EAAMk1H,mBAC/B7/H,KAAK+kI,eAAexwG,EAAS5pB,EAAMo1H,aACnC//H,KAAKsmI,eAAe/xG,EAAS5pB,EAAMq1H,aACnChgI,KAAKq3H,qBAAqB1sH,EAAM8zF,gBAChCz+F,KAAKu3H,gBAAgB5sH,EAAMyzF,WAC3Bp+F,KAAKy3H,kBAAkB9sH,EAAM+zF,cAEjC+gD,EAAShlI,UAAU/M,QAAU,WACzB+8F,EAAOhwF,UAAU/M,QAAQ8L,KAAKxZ,MAE9BA,KAAK4/I,YAAY16C,WACjBllG,KAAK8/I,cAAc56C,WACnBllG,KAAKqpH,eAAenkB,YAExBu6C,EAAShlI,UAAUuvG,WAAa,SAAUkB,GACtC,IAAIhpC,EAAKliF,KAAMimI,EAAe/jD,EAAG+jD,aAAcrB,EAAgB1iD,EAAG0iD,cAAesB,EAAiBhkD,EAAGgkD,gBACjGhb,GAAYlrH,KAAK0/I,oBACjB1/I,KAAK4gJ,qBACL5gJ,KAAK0/I,kBAAmB,IAExBx0B,GAAYlrH,KAAK2/I,mBACjB3/I,KAAKmoI,oBACLnoI,KAAK2/I,iBAAkB,GAE3B1Z,EAAarL,aAAa1P,GAC1B0Z,EAAchK,aAAa1P,GAC3Bgb,EAAetL,aAAa1P,GAC5B+a,EAAalL,YAAY7P,GACzB0Z,EAAc7J,YAAY7P,GAC1Bgb,EAAenL,YAAY7P,IAE/Bu0B,EAAShlI,UAAU6uG,gBAAkB,SAAUjgB,GAC3C,IAAIzuD,EAAK56C,KAAK46C,GACdA,EAAGi9B,UACC,8EAE+BwxB,EAAMK,SAAS,gBAAkB,4BACpE1pG,KAAK6gJ,kBAAoBjmG,EAAG2xE,cAAc,UAC1CvsH,KAAK8gJ,gBAAkBlmG,EAAG2xE,cAAc,aACxCvsH,KAAK+gJ,aAAenmG,EAAG2xE,cAAc,gBAEzCkzB,EAAShlI,UAAUolI,aAAe,SAAU7iD,GACxC,IAAIqM,EAAQrpG,KAAKu0B,QAAQ80E,MACzBrpG,KAAK8gJ,gBAAgBjpE,UACjB,iBAAmBwxB,EAAMK,SAAS,aAAe,KAC7C1pG,KAAKghJ,kBAAkBhkD,GACvB,WACRh9F,KAAKihJ,QAAU,gBAAajhJ,KAAK8gJ,gBAAiB,MAClD9gJ,KAAKkhJ,cAAgB,IAAI,OAAclhJ,KAAK46C,GAAI56C,KAAKihJ,SAAS,GAAO,GAErEjhJ,KAAK0/I,kBAAmB,GAG5BD,EAAShlI,UAAUumI,kBAAoB,SAAUhkD,GAC7C,IAKImkD,EACAC,EACAC,EAPAn/D,EAAKliF,KAAKu0B,QAASm0D,EAAUxG,EAAGwG,QAAS2gB,EAAQnnB,EAAGmnB,MAAOlW,EAAQjR,EAAGiR,MACtEzvF,EAAO,GACPq9E,EAAW,gBAAWic,EAAYkjB,YAAYtpF,OAC9C0qH,EAAWtkD,EAAYoa,QACvBmqC,EAAe,eAAe,GAKlC,MAAO,eAAUD,GAAY,eAAUtkD,EAAYqa,SAC/C8pC,EAAWz4D,EAAQ1sC,IAAI+kC,EAAUugE,GACjCF,EAAuE,OAA3D,gBAAqBG,EAAcvhJ,KAAKygJ,eACpDY,EACI,8BAAgCh4C,EAAMK,SAAS,iBAAmB,MAC7D03C,EACG,SACI,gBAAW14D,EAAQ7yB,OAAOsrF,EAAUnhJ,KAAKugJ,cACzC,UACJ,IACJ,QACR78I,GACI,kBAAoB,gBAAoBy9I,GAAY,KAC/CC,EAAY,GAAK,qBAClB,KACEjuD,EAAmB,GAAXkuD,GACV,cAAgBh4C,EAAMK,SAAS,iBAAmB,WACjDvW,EAAQkuD,EAAW,IACpB,QACRC,EAAW,eAAaA,EAAUthJ,KAAKogJ,cACvCmB,EAAe,eAAaA,EAAcvhJ,KAAKogJ,cAEnD,OAAO18I,GAEX+7I,EAAShlI,UAAUslI,eAAiB,SAAUzhB,EAAOthC,GACjD,IAAI9a,EAAKliF,KAAKu0B,QAAS62D,EAAWlJ,EAAGkJ,SAAUv0D,EAAOqrD,EAAGrrD,KAAMs8D,EAAQjR,EAAGiR,MAAOkW,EAAQnnB,EAAGmnB,MAAO3gB,EAAUxG,EAAGwG,QAC5G2+C,EAAQ,IAAI9B,EAASvlI,KAAKu0B,SAC9Bv0B,KAAK6gJ,kBAAkBhpE,UACnB,iBAAmBwxB,EAAMK,SAAS,aAAe,KAC7C29B,EAAM7B,WAAW,CACblH,MAAOA,EACPthC,YAAaA,EACbmgC,gBAAiBn9H,KAAK2jI,YAAY2D,oBAEtC,WACRtnI,KAAKwhJ,OAAS,gBAAaxhJ,KAAK46C,GAAI,6BACpC,IAAK,IAAI+jF,EAAM,EAAGA,EAAM3+H,KAAK08H,OAAQiC,IACjCvzC,EAAS6O,gBAAgB,YAAa,CAClC,CACI5rB,KAAMqa,EAAQwP,OAAOomC,EAAMK,GAAKtwD,MAChCzzB,GAAI56C,KAAKwhJ,OAAO7iB,GAChB9nG,KAAMA,KAIds8D,GACAnzF,KAAKwhJ,OAAOx2H,UAEhBhrB,KAAKmnI,aAAe,IAAI,OAAcnnI,KAAK46C,GAAI56C,KAAKwhJ,QAAQ,GAC5D,GACAxhJ,KAAKyhJ,wBACLzhJ,KAAK2/I,iBAAkB,GAE3BF,EAAShlI,UAAUulI,iBAAmB,WAClChgJ,KAAK0hJ,2BAKTjC,EAAShlI,UAAUgnI,sBAAwB,WACvC,IAEIrd,EAFAjxC,EAAQnzF,KAAKu0B,QAAQ4+D,MACrBhgF,EAAQ,GAEZA,EAAM7F,KAAKtN,KAAK2jI,YAAYxG,mBAC5B,IAAK,IAAIzkH,EAAI,EAAGA,EAAI1Y,KAAK08H,OAAQhkH,IAC7BvF,EAAM7F,KAAK,0QAUX6lF,GACAhgF,EAAM6X,UAEVo5G,EAAapkI,KAAK2hJ,kBAAoB,gBAAc,+CAEvCxuI,EAAMqB,KAAK,IAF4B,uBAKpDxU,KAAK4hJ,gBAAkB,gBAAaxd,EAAY,mBAChDpkI,KAAKk/I,mBAAqB,gBAAa9a,EAAY,wBACnDpkI,KAAKi9I,eAAiB,gBAAa7Y,EAAY,iDAC/CpkI,KAAKq/I,eAAiB,gBAAajb,EAAY,yBAC/CpkI,KAAKu/I,sBAAwB,gBAAanb,EAAY,2BACtDpkI,KAAKs/I,qBAAuB,gBAAalb,EAAY,0BACjDjxC,IACAnzF,KAAK4hJ,gBAAgB52H,UACrBhrB,KAAKk/I,mBAAmBl0H,UACxBhrB,KAAKi9I,eAAejyH,UACpBhrB,KAAKq/I,eAAer0H,UACpBhrB,KAAKu/I,sBAAsBv0H,UAC3BhrB,KAAKs/I,qBAAqBt0H,WAE9BhrB,KAAK46C,GAAG3P,YAAYm5F,IAExBqb,EAAShlI,UAAUinI,wBAA0B,WACzC,gBAAc1hJ,KAAK2hJ,oBAGvBlC,EAAShlI,UAAUsiI,eAAiB,SAAUljD,GAC1C,IACInhF,EADAokI,EAAY,GAEhB,IAAKpkI,EAAI,EAAGA,EAAI1Y,KAAK08H,OAAQhkH,IACzBokI,EAAUxvI,KAAK,IAEnB,IAAKoL,EAAI,EAAGA,EAAImhF,EAAKnuF,OAAQgN,IACzBokI,EAAUjjD,EAAKnhF,GAAGimH,KAAKrxH,KAAKusF,EAAKnhF,IAErC,OAAOokI,GAIX2C,EAAShlI,UAAUuiI,gBAAkB,SAAUF,EAAWjhB,GACtD,IAAI8C,EACA9kC,EACAnhF,EACJ,IAAKimH,EAAM,EAAGA,EAAM3+H,KAAK08H,OAAQiC,IAE7B,IADA9kC,EAAOijD,EAAUne,GACZjmH,EAAI,EAAGA,EAAImhF,EAAKnuF,OAAQgN,IACzBmjH,EAAa8C,GAAK1zF,YAAY4uD,EAAKnhF,GAAGkiC,KAMlD6kG,EAAShlI,UAAUs9G,oBAAsB,WACrC,MAAO,UAEX0nB,EAAShlI,UAAU49G,mBAAqB,SAAUx+B,EAAMxrB,GAEpD,GAAKruE,KAAK4hJ,gBAAV,CAGA,IAEIlpI,EAFA0X,EAAMpwB,KAAK6hJ,eAAexzE,GAC1ByzE,EAAQ,GAGZ,IAAKppI,EAAI,EAAGA,EAAImhF,EAAKnuF,OAAQgN,IAAK,CAC9B,IAAIqpI,EAAS,eAAc,MAAO,CAAElnG,UAAW,2CAC/CknG,EAAOx1I,MAAM6jB,IAAMA,EAAM,KACzBpwB,KAAK4hJ,gBAAgB/nD,EAAKnhF,GAAGimH,KAAK1zF,YAAY82G,GAC9CD,EAAMx0I,KAAKy0I,GAGf,GAAIloD,EAAKnuF,OAAS,EAAG,CACjB,IAAIs2I,EAAU,eAAc,MAAO,CAAEnnG,UAAW,4CAChDmnG,EAAQz1I,MAAM6jB,IAAMA,EAAM,KAC1BpwB,KAAK2hJ,kBAAkB12G,YAAY+2G,GACnCF,EAAMx0I,KAAK00I,GAEfhiJ,KAAKiiJ,gBAAkBH,IAE3BrC,EAAShlI,UAAU29G,qBAAuB,WAClCp4H,KAAKiiJ,kBACLjiJ,KAAKiiJ,gBAAgBh9I,QAAQ,SAC7BjF,KAAKiiJ,gBAAkB,OAK/BxC,EAAShlI,UAAUynI,mBAAqB,WACpC,OAAOliJ,KAAK8gJ,gBAAgBttF,wBAAwB5mD,QAIxD6yI,EAAShlI,UAAUonI,eAAiB,SAAUM,EAAMC,GAIhD,OAHKA,IACDA,EAAiB,gBAAWD,IAEzBniJ,KAAKqiJ,eAAe,eAAeF,EAAKlyE,UAAYmyE,EAAenyE,aAG9EwvE,EAAShlI,UAAU4nI,eAAiB,SAAU9pH,GAC1C,IAGI+pH,EACAC,EAJAjgI,EAAMtiB,KAAKihJ,QAAQv1I,OACnBsxF,EAAch9F,KAAK2K,MAAMqyF,YACzBwlD,GAAgBjqH,EAASmnD,aAAe,eAAUsd,EAAYoa,UAAY,eAAUp3G,KAAKogJ,cAe7F,OATAoC,EAAetxI,KAAKmN,IAAI,EAAGmkI,GAC3BA,EAAetxI,KAAKkN,IAAIkE,EAAKkgI,GAG7BF,EAAYpxI,KAAKD,MAAMuxI,GACvBF,EAAYpxI,KAAKkN,IAAIkkI,EAAWhgI,EAAM,GAGtCigI,EAAgBC,EAAeF,EACxBtiJ,KAAKkhJ,cAAct1C,KAAK02C,GAC3BtiJ,KAAKkhJ,cAAc90C,UAAUk2C,GAAaC,GAGlD9C,EAAShlI,UAAUyiI,oBAAsB,SAAUrjD,GAC/C,IAEInhF,EACAshF,EACA0wC,EAJAj9H,EAAUzN,KAAKu0B,QAAQ9mB,QACvBg1I,EAAiBh1I,EAAQgqG,uBAI7B,IAAK/+F,EAAI,EAAGA,EAAImhF,EAAKnuF,OAAQgN,IACzBshF,EAAMH,EAAKnhF,GACXgyH,EAAU1qI,KAAK2K,MAAM2zH,MAAMtkC,EAAI2kC,KAAKtwD,KACpC2rB,EAAI5pE,IAAMpwB,KAAK6hJ,eAAe7nD,EAAIpjE,MAAO8zG,GACzC1wC,EAAI1pE,OAASpf,KAAKmN,IAAI27E,EAAI5pE,IAAMqyH,EAAgBziJ,KAAK6hJ,eAAe7nD,EAAIvzD,IAAKikG,KAKrF+U,EAAShlI,UAAU2iI,mBAAqB,SAAUvjD,GAC9C,IAAInhF,EACAshF,EACJ,IAAKthF,EAAI,EAAGA,EAAImhF,EAAKnuF,OAAQgN,IACzBshF,EAAMH,EAAKnhF,GACX,eAAWshF,EAAIp/C,GAAI56C,KAAKy+I,uBAAuBzkD,KAIvDylD,EAAShlI,UAAUgkI,uBAAyB,SAAUzkD,GAClD,MAAO,CACH5pE,IAAK4pE,EAAI5pE,IACTE,QAAS0pE,EAAI1pE,SAKrBmvH,EAAShlI,UAAU21F,oBAAsB,WACrCpwG,KAAKmoI,oBACLnoI,KAAK4gJ,sBAETnB,EAAShlI,UAAU0tH,kBAAoB,WACnCnoI,KAAKmnI,aAAa/7B,SAEtBq0C,EAAShlI,UAAUmmI,mBAAqB,WACpC5gJ,KAAKkhJ,cAAc91C,SAIvBq0C,EAAShlI,UAAU4tH,cAAgB,SAAU/3B,EAAcC,GACvD,IAAI7nB,EAAU1oF,KAAKu0B,QAAQm0D,QACvBxG,EAAKliF,KAAMmgJ,EAAej+D,EAAGi+D,aAAce,EAAgBh/D,EAAGg/D,cAAe/Z,EAAejlD,EAAGilD,aAC/Fub,EAAWvb,EAAar7B,YAAYwE,GACpCgyC,EAAYpB,EAAcl1C,WAAWuE,GACzC,GAAgB,MAAZmyC,GAAiC,MAAbJ,EAAmB,CACvC,IAAIK,EAAUzB,EAAct1C,KAAK02C,GAC7BM,EAAa1B,EAAc90C,UAAUk2C,GACrCO,GAAWtyC,EAAcoyC,GAAWC,EACpCE,EAAiB5xI,KAAKD,MAAM4xI,EAAU1C,GACtC4C,EAAYT,EAAYnC,EAAe2C,EACvCpY,EAAU1qI,KAAK2K,MAAM2zH,MAAMokB,GAAUr0E,KACrCrmE,EAAO,eAAahI,KAAK2K,MAAMqyF,YAAYoa,QAAS,gBAAiBp3G,KAAKqgJ,aAAc0C,IACxFnsH,EAAQ8xD,EAAQ1sC,IAAI0uF,EAAS1iI,GAC7By+B,EAAMiiD,EAAQ1sC,IAAIplB,EAAO52B,KAAKqgJ,cAClC,MAAO,CACH1hB,IAAK+jB,EACLx7C,SAAU,CACNh+D,MAAO,CAAEtS,MAAOA,EAAO6P,IAAKA,GAC5BijD,QAAQ,GAEZ2qC,MAAOr0H,KAAKwhJ,OAAOkB,GACnBpa,aAAc,CACVn4G,KAAMg3G,EAAa17B,MAAMi3C,GACzBryH,MAAO82G,EAAaz7B,OAAOg3C,GAC3BtyH,IAAKuyH,EACLryH,OAAQqyH,EAAUC,MAOlCnD,EAAShlI,UAAU8rH,iBAAmB,SAAUzjI,GACxCA,IACA9C,KAAK4kI,cAAc3J,WAAWn4H,EAAMu9H,mBAChCv9H,EAAMu8F,QACNr/F,KAAKkmI,eAAejN,WAAWj5H,KAAKu0B,QAASzxB,EAAM+2F,KAAM,CAAEqgC,YAAY,EAAMoG,UAAWx9H,EAAMw9H,YAG9FtgI,KAAKimI,aAAahN,WAAW,YAAaj5H,KAAKu0B,QAASzxB,EAAM+2F,QAI1E4lD,EAAShlI,UAAU+rH,mBAAqB,SAAU1jI,GAC1CA,IACA9C,KAAK4kI,cAAczJ,WAAWr4H,EAAMu9H,mBAChCv9H,EAAMu8F,QACNr/F,KAAKkmI,eAAehhC,SAASllG,KAAKu0B,QAASzxB,EAAM+2F,KAAM,CAAEqgC,YAAY,EAAMoG,UAAWx9H,EAAMw9H,YAG5FtgI,KAAKimI,aAAa/gC,SAAS,YAAallG,KAAKu0B,WAMzDkrH,EAAShlI,UAAUgsH,mBAAqB,SAAU3jI,GAC1CA,IACA9C,KAAK4kI,cAAc3J,WAAWn4H,EAAMu9H,mBACpCrgI,KAAKkmI,eAAejN,WAAWj5H,KAAKu0B,QAASzxB,EAAM+2F,KAAM,CAAEsgC,YAAY,EAAMmG,UAAWx9H,EAAMw9H,cAGtGmf,EAAShlI,UAAUisH,qBAAuB,SAAU5jI,GAC5CA,IACA9C,KAAK4kI,cAAczJ,WAAWr4H,EAAMu9H,mBACpCrgI,KAAKkmI,eAAehhC,SAASllG,KAAKu0B,QAASzxB,EAAM+2F,KAAM,CAAEsgC,YAAY,EAAMmG,UAAWx9H,EAAMw9H,cAMpGmf,EAAShlI,UAAUwlI,qBAAuB,SAAUpmD,GAC5CA,IACI75F,KAAKu0B,QAAQ9mB,QAAQu1I,aACrBhjJ,KAAKkmI,eAAejN,WAAWj5H,KAAKu0B,QAASslE,EAAM,CAAEopD,aAAa,IAGlEjjJ,KAAKimI,aAAahN,WAAW,YAAaj5H,KAAKu0B,QAASslE,KAIpE4lD,EAAShlI,UAAUylI,uBAAyB,SAAUrmD,GAC9CA,IACI75F,KAAKu0B,QAAQ9mB,QAAQu1I,aACrBhjJ,KAAKkmI,eAAehhC,SAASllG,KAAKu0B,QAASslE,EAAM,CAAEopD,aAAa,IAGhEjjJ,KAAKimI,aAAa/gC,SAAS,YAAallG,KAAKu0B,WAIlDkrH,EAlekB,CAme3B,QAEE,GAAgC,SAAUh1C,GAE1C,SAASy4C,IACL,OAAkB,OAAXz4C,GAAmBA,EAAOnvF,MAAMtb,KAAMiZ,YAAcjZ,KA2B/D,OA7BA,GAAUkjJ,EAAgBz4C,GAI1By4C,EAAezoI,UAAU+rF,WAAa,WAClC,MAAO,CACH9c,OAAQ,GACRy5D,MAAO,KAGfD,EAAezoI,UAAU2sF,mBAAqB,SAAUF,GACpD,OAAIA,EAASxd,OACF,CAAC,UAGD,CAAC,UAGhBw5D,EAAezoI,UAAU6sF,mBAAqB,SAAUvd,GACpD,OAAKA,EAASL,OAGL,gBAAeK,GACb,CAAC,QAAS,UAGV,CAAC,UAND,CAAC,UASTm5D,EA9BwB,CA+BjC,QAEEE,GAA+B,EAC/BC,GAAqB,eAAgB,CAAE/3E,KAAM,UAK7C,GAAsC,SAAUm/B,GAEhD,SAAS64C,IACL,IAAIh9C,EAAmB,OAAXmE,GAAmBA,EAAOnvF,MAAMtb,KAAMiZ,YAAcjZ,KAqDhE,OApDAsmG,EAAMi9C,SAAW,IAAI,GACrBj9C,EAAM+iB,eAAiB,gBAAiB/iB,EAAMgjB,gBAAiBhjB,EAAMijB,mBAIrEjjB,EAAM6kC,oBAAsB,WACxB,IAGIqY,EAHAthE,EAAKokB,EAAM/xE,QAAS80E,EAAQnnB,EAAGmnB,MAAO3gB,EAAUxG,EAAGwG,QAASj7E,EAAUy0E,EAAGz0E,QACzEy7B,EAAQo9D,EAAM37F,MAAMqyF,YAAYkjB,YAChCn4B,EAAS,eAAS7+C,EAAMtS,MAAOsS,EAAMzC,KAEzC,OAAIh5B,EAAQwpG,aACRusC,EAAW96D,EAAQ7yB,OAAO3sB,EAAMtS,MAAOysH,IAEnC,qCAAuCh6C,EAAMK,SAAS,gBAAkB,KAAOpD,EAAMm9C,gBAAkB,IACvG,eACAh2I,EAASi7E,EAAS,CAAEra,KAAMnlC,EAAMtS,MAAO10B,KAAM,OAAQqmG,SAAUxgB,EAAS,GAAK,gBAAWy7D,IAExF,SAGG,sBAAwBn6C,EAAMK,SAAS,gBAAkB,KAAOpD,EAAMm9C,gBAAkB,UAMvGn9C,EAAMo9C,0BAA4B,WAC9B,IAAIr6C,EAAQ/C,EAAM/xE,QAAQ80E,MAC1B,MAAO,sBAAwBA,EAAMK,SAAS,iBAAmB,KAAOpD,EAAMm9C,gBAAkB,UAIpGn9C,EAAMq9C,wBAA0B,WAC5B,MAAO,uBAAyBr9C,EAAMm9C,gBAAkB,UAK5Dn9C,EAAMilC,yBAA2B,WAC7B,IAAIrpD,EAAKokB,EAAM/xE,QAAS80E,EAAQnnB,EAAGmnB,MAAO57F,EAAUy0E,EAAGz0E,QACvD,MACI,sBAAwB47F,EAAMK,SAAS,iBAAmB,KAAOpD,EAAMm9C,gBADpE,UAGH,gBAAch2I,GAHX,gBASX64F,EAAMklC,uBAAyB,WAC3B,MAAO,uBAAyBllC,EAAMm9C,gBAAkB,UAErDn9C,EAyLX,OAhPA,GAAUg9C,EAAsB74C,GAyDhC64C,EAAqB7oI,UAAU3a,OAAS,SAAU6K,EAAO4pB,GACrDk2E,EAAOhwF,UAAU3a,OAAO0Z,KAAKxZ,KAAM2K,EAAO4pB,GAC1Cv0B,KAAKqpH,eAAe90F,IAExB+uH,EAAqB7oI,UAAU/M,QAAU,WACrC+8F,EAAOhwF,UAAU/M,QAAQ8L,KAAKxZ,MAC9BA,KAAKqpH,eAAenkB,YAExBo+C,EAAqB7oI,UAAU6uG,gBAAkB,SAAU/0F,GACvDv0B,KAAK46C,GAAGmB,UAAUC,IAAI,oBACtBh8C,KAAK46C,GAAGi9B,UAAY73E,KAAK0rI,qBACzB1rI,KAAK2rI,SAAW,IAAI,OAAgB,SACpC,QAEA,IAAIiY,EAAiB5jJ,KAAK2rI,SAAS/wF,GACnC56C,KAAK46C,GAAG2xE,cAAc,sBAAsBthF,YAAY24G,GACxDA,EAAe7nG,UAAUC,IAAI,0BAC7B,IAAI6nG,EAAa,eAAc,MAAO,CAAEhpG,UAAW,iBAMnD,GALA+oG,EAAe34G,YAAY44G,GAC3B7jJ,KAAK48I,SAAW,IAAI,GAASiH,EAAY,CACrCvc,kBAAmBtnI,KAAK0jJ,0BACxBvmB,gBAAiBn9H,KAAK2jJ,0BAEtBpvH,EAAQ9mB,QAAQq2I,WAAY,CAC5B9jJ,KAAKgiI,QAAU,IAAI,EACnBhiI,KAAK46C,GAAG2xE,cAAc,gBAAiB,CACnCsb,sBAAuB7nI,KAAKwrI,uBAC5BlE,kBAAmBtnI,KAAKurI,yBACxBpO,gBAAiBn9H,KAAKwrI,uBACtB7D,uBAAuB,EACvBD,wBAAwB,IAG5B,IAAIqc,EAAY/jJ,KAAK46C,GAAG2xE,cAAc,eACtCvsH,KAAKgiI,QAAQ+D,mBAAqBge,EAAUvwF,wBAAwB5mD,SAG5E02I,EAAqB7oI,UAAU8uG,kBAAoB,WAC/CvpH,KAAK46C,GAAGmB,UAAUG,OAAO,oBACzBl8C,KAAK48I,SAASlvI,UACV1N,KAAKgiI,SACLhiI,KAAKgiI,QAAQt0H,UAEjB1N,KAAK2rI,SAASj+H,WAMlB41I,EAAqB7oI,UAAUixH,mBAAqB,WAChD,IAAIxpD,EAAKliF,KAAKu0B,QAAS80E,EAAQnnB,EAAGmnB,MAAO57F,EAAUy0E,EAAGz0E,QACtD,MACI,iBAAmB47F,EAAMK,SAAS,aAAe,MAChDj8F,EAAQqpG,aACL,2DAEsCzN,EAAMK,SAAS,gBAFrD,6BAKA,IARD,yCAWaL,EAAMK,SAAS,iBAAmB,MACjDj8F,EAAQq2I,WACL,wDAC+Bz6C,EAAMK,SAAS,gBAAkB,OAChE,IAfD,8BAuBX45C,EAAqB7oI,UAAUs9G,oBAAsB,WACjD,OAAO/3H,KAAK48I,SAAS7kB,uBAKzBurB,EAAqB7oI,UAAU29G,qBAAuB,WAClDp4H,KAAK48I,SAASxkB,wBAIlBkrB,EAAqB7oI,UAAUuvG,WAAa,SAAUkB,EAAUG,EAAYwL,GACxEpsB,EAAOhwF,UAAUuvG,WAAWxwG,KAAKxZ,KAAMkrH,EAAUG,EAAYwL,GAC7D72H,KAAK48I,SAAS5yB,WAAWkB,GACrBlrH,KAAKgiI,SACLhiI,KAAKgiI,QAAQhY,WAAWkB,IAIhCo4B,EAAqB7oI,UAAUq8G,eAAiB,SAAU5L,EAAUG,EAAYwL,GAC5E,IACI7e,EACAg0B,EACAnoD,EAHAyiB,EAAQtmG,KAQZ,GAHAA,KAAK2gE,UAAY,gBAAgB,gBAAa3gE,KAAK46C,GAAI,aAGlD56C,KAAK48I,SAAS4E,OAAnB,CAQA,IAAIwC,EAAiB,gBAAahkJ,KAAK46C,GAAI,WAAWtK,QAAO,SAAUxtB,GACnE,OAAQwjF,EAAMqlC,SAAS/wF,GAAG0+B,SAASx2D,MAGvC9iB,KAAK48I,SAASmE,aAAax0I,MAAMskC,QAAU,OAC3C7wC,KAAK2rI,SAAS97G,QACdm0H,EAAe/+I,QAAQ,SAEnBjF,KAAKgiI,UACLhiI,KAAKgiI,QAAQM,mBACbtqB,EAAah4G,KAAKu0B,QAAQ9mB,QAAQuqG,WAC9BA,GAAoC,kBAAfA,IACrBA,EAAaorC,IAEbprC,GACAh4G,KAAKgiI,QAAQwG,UAAUxwB,IAG1B6e,IACDmV,EAAiBhsI,KAAKksI,sBAAsB7gB,GAC5CrrH,KAAK2rI,SAAS79B,UAAUk+B,GACxBnoD,EAAkB7jF,KAAK2rI,SAAS39B,sBAC5BnqB,EAAgB1zD,MAAQ0zD,EAAgBxzD,SAExC2zH,EAAe/+I,SAAQ,SAAU2+E,GAC7B,eAAiBA,EAAOC,MAI5BmoD,EAAiBhsI,KAAKksI,sBAAsB7gB,GAC5CrrH,KAAK2rI,SAAS79B,UAAUk+B,IAG5BhsI,KAAK2rI,SAAS59B,aAAalqB,GAGvB7jF,KAAK48I,SAASsF,qBAAuBlW,IACrChsI,KAAK48I,SAASmE,aAAax0I,MAAMskC,QAAU,UA5C1CgmF,IACDmV,EAAiBhsI,KAAKksI,sBAAsB7gB,GAC5CrrH,KAAK2rI,SAAS79B,UAAUk+B,KA+CpCsX,EAAqB7oI,UAAUyxH,sBAAwB,SAAU7gB,GAC7D,OAAOA,EACH,gBAAsBrrH,KAAK46C,GAAI56C,KAAK2rI,SAAS/wF,KAKrD0oG,EAAqB7oI,UAAUq+G,kBAAoB,SAAUvgG,GACzD,IAAInI,EAAMpwB,KAAK48I,SAASyF,eAAe9pH,GAMvC,OAJAnI,EAAMlf,KAAK8oD,KAAK5pC,GACZA,GACAA,IAEG,CAAEA,IAAKA,IAElBkzH,EAAqB7oI,UAAUo+G,gBAAkB,WAC7C,MAAO,CAAEzoG,IAAKpwB,KAAK2rI,SAAS3+B,iBAEhCs2C,EAAqB7oI,UAAUs+G,gBAAkB,SAAUprB,QACpCxpG,IAAfwpG,EAAOv9E,KACPpwB,KAAK2rI,SAASr+B,aAAaK,EAAOv9E,MAI1CkzH,EAAqB7oI,UAAUgpI,cAAgB,WAC3C,OAAsB,MAAlBzjJ,KAAK2gE,UACE,gBAAkB3gE,KAAK2gE,UAAY,MAEvC,IAEJ2iF,EAjP8B,CAkPvC,QACF,GAAqB7oI,UAAUumG,gBAAiB,EAEhD,IAAI,GAAgC,SAAUvW,GAE1C,SAASw5C,EAAerH,GACpB,IAAIt2C,EAAQmE,EAAOjxF,KAAKxZ,KAAM48I,EAAShiG,KAAO56C,KAI9C,OAHAsmG,EAAM49C,eAAiB,gBAAQA,IAC/B59C,EAAM+lC,OAAS,IAAI,GACnB/lC,EAAMs2C,SAAWA,EACVt2C,EA0CX,OAhDA,GAAU29C,EAAgBx5C,GAQ1Bw5C,EAAexpI,UAAUw1F,aAAe,SAAU17E,GAC9CA,EAAQ62D,SAASioC,6BAA6BrzH,KAAM,CAChD46C,GAAI56C,KAAK48I,SAAShiG,MAG1BqpG,EAAexpI,UAAU/M,QAAU,WAC/B+8F,EAAOhwF,UAAU/M,QAAQ8L,KAAKxZ,MAC9BA,KAAKu0B,QAAQ62D,SAASuoC,+BAA+B3zH,OAEzDikJ,EAAexpI,UAAU3a,OAAS,SAAU6K,EAAO4pB,GAC/C,IAAIm0D,EAAU1oF,KAAKu0B,QAAQm0D,QACvBsU,EAAcryF,EAAMqyF,YAAauvC,EAAW5hI,EAAM4hI,SAClD4X,EAAYnkJ,KAAKmkJ,UAAYnkJ,KAAKkkJ,eAAe3X,EAAUvvC,EAAatU,GACxEk0D,EAAW58I,KAAK48I,SACpBA,EAAShtC,eAAer7E,GACxBqoH,EAASjtC,aAAa,GAAS,GAAI3vG,KAAKqsI,OAAO3M,WAAW/0H,EAAOqyF,EAAa,KAAMzoE,EAAQ62D,SAAUwxD,EAAUuH,GAAY,CAAEnnD,YAAaA,EAAashC,MAAOiO,EAASjO,MAAM,KAAO/pG,IAEzL0vH,EAAexpI,UAAU49G,mBAAqB,SAAUhqD,GACpDruE,KAAK48I,SAASvkB,mBAAmBr4H,KAAKqsI,OAAOpM,aAAa5xD,EAAMruE,KAAK48I,SAAU58I,KAAKmkJ,WAAY91E,IAEpG41E,EAAexpI,UAAU21F,oBAAsB,WAC3CpwG,KAAK48I,SAASxsC,uBAElB6zC,EAAexpI,UAAU41F,SAAW,SAAUC,EAAcC,GACxD,IAAIi8B,EAASxsI,KAAK48I,SAASvU,cAAc/3B,EAAcC,GACvD,GAAIi8B,EACA,MAAO,CACHxoI,UAAWhE,KAAK48I,SAChB11C,SAAUslC,EAAOtlC,SACjBmtB,MAAOmY,EAAOnY,MACd3jG,KAAM,CACFP,KAAMq8G,EAAOlE,aAAan4G,KAC1BE,MAAOm8G,EAAOlE,aAAaj4G,MAC3BD,IAAKo8G,EAAOlE,aAAal4G,IACzBE,OAAQk8G,EAAOlE,aAAah4G,QAEhC80G,MAAO,IAIZ6e,EAjDwB,CAkDjC,QACF,SAASC,GAAe3X,EAAUvvC,EAAatU,GAE3C,IADA,IAAIyF,EAAS,GACJnH,EAAK,EAAG9E,EAAKqqD,EAAS/N,YAAax3C,EAAK9E,EAAGx2E,OAAQs7E,IAAM,CAC9D,IAAI3Y,EAAO6T,EAAG8E,GACdmH,EAAO7gF,KAAK,CACRspB,MAAO8xD,EAAQ1sC,IAAIqyB,EAAM2uB,EAAYoa,SACrC3wE,IAAKiiD,EAAQ1sC,IAAIqyB,EAAM2uB,EAAYqa,WAG3C,OAAOlpB,EAEX,IAAI,GAAgC,SAAUsc,GAE1C,SAAS25C,IACL,OAAkB,OAAX35C,GAAmBA,EAAOnvF,MAAMtb,KAAMiZ,YAAcjZ,KAkB/D,OApBA,GAAUokJ,EAAgB35C,GAI1B25C,EAAe3pI,UAAUijH,WAAa,SAAUx0F,EAAOi7G,GAEnD,IADA,IAAItqD,EAAO,GACF8kC,EAAM,EAAGA,EAAMwlB,EAAUz4I,OAAQizH,IAAO,CAC7C,IAAI0lB,EAAW,gBAAgBn7G,EAAOi7G,EAAUxlB,IAC5C0lB,GACAxqD,EAAKvsF,KAAK,CACNspB,MAAOytH,EAASztH,MAChB6P,IAAK49G,EAAS59G,IACd2yD,QAASirD,EAASztH,MAAMq5C,YAAc/mC,EAAMtS,MAAMq5C,UAClDopB,MAAOgrD,EAAS59G,IAAIwpC,YAAc/mC,EAAMzC,IAAIwpC,UAC5C0uD,IAAKA,IAIjB,OAAO9kC,GAEJuqD,EArBwB,CAsBjC,QAEE,GAA8B,SAAU35C,GAExC,SAAS65C,IACL,IAAIh+C,EAAmB,OAAXmE,GAAmBA,EAAOnvF,MAAMtb,KAAMiZ,YAAcjZ,KAEhE,OADAsmG,EAAMomC,cAAgB,gBAAQ,IACvBpmC,EAgDX,OApDA,GAAUg+C,EAAc75C,GAMxB65C,EAAa7pI,UAAU3a,OAAS,SAAU6K,EAAO4pB,GAC7Ck2E,EAAOhwF,UAAU3a,OAAO0Z,KAAKxZ,KAAM2K,EAAO4pB,GAC1C,IAAI2tD,EAAKliF,KAAK2K,MAAOqyF,EAAc9a,EAAG8a,YAAa0tB,EAAuBxoC,EAAGwoC,qBACzEziC,EAAmB1zD,EAAQ0zD,iBAC3BskD,EAAWvsI,KAAK0sI,cAAc1vC,EAAa0tB,GAC3CrkB,EAAarmG,KAAKujJ,SAASl9C,WAAW17F,GACtC3K,KAAK+2G,QACL/2G,KAAK+2G,OAAOpH,aAAa,CACrB3S,YAAaA,EACbkgC,MAAOqP,EAAS/N,YAChBhC,sBAAsB,EACtBW,gBAAiBn9H,KAAKmrI,qBACvB52G,GAEPv0B,KAAKukJ,eAAe50C,aAAa,GAAS,GAAItJ,EAAW,SAAU,CAAErJ,YAAaA,EAC9EuvC,SAAUA,IAAah4G,GACvBv0B,KAAK2sI,eACL3sI,KAAK2sI,cAAch9B,aAAa,GAAS,GAAItJ,EAAW,UAAW,CAAErJ,YAAaA,EAC9EuvC,SAAUA,EACVtkD,iBAAkBA,EAAkB0+C,SAAS,IAAUpyG,GAE/Dv0B,KAAK23H,kBAAkB36B,EAAa0tB,IAExC45B,EAAa7pI,UAAU6uG,gBAAkB,SAAU/0F,GAC/Ck2E,EAAOhwF,UAAU6uG,gBAAgB9vG,KAAKxZ,KAAMu0B,GACxCA,EAAQ9mB,QAAQqpG,eAChB92G,KAAK+2G,OAAS,IAAI,OAAU/2G,KAAK46C,GAAG2xE,cAAc,wBAEtDvsH,KAAKukJ,eAAiB,IAAI,GAAevkJ,KAAK48I,UAC1C58I,KAAKgiI,UACLhiI,KAAK2sI,cAAgB,IAAIP,EAAcpsI,KAAKgiI,WAGpDsiB,EAAa7pI,UAAU8uG,kBAAoB,WACvC9e,EAAOhwF,UAAU8uG,kBAAkB/vG,KAAKxZ,MACpCA,KAAK+2G,QACL/2G,KAAK+2G,OAAOrpG,UAEhB1N,KAAKukJ,eAAe72I,UAChB1N,KAAK2sI,eACL3sI,KAAK2sI,cAAcj/H,WAG3B42I,EAAa7pI,UAAU49G,mBAAqB,SAAUhqD,GAClDruE,KAAKukJ,eAAelsB,mBAAmBhqD,IAEpCi2E,EArDsB,CAsD/B,IACF,SAAS,GAActnD,EAAa0tB,GAChC,IAAIwT,EAAY,IAAI,OAAUlhC,EAAYkjB,YAAawK,GACvD,OAAO,IAAI,OAASwT,GAAW,GAGnC,IAAI,GAAO,eAAa,CACpBjvE,YAAa,eACbyiD,MAAO,CACHkrC,SAAU,CACN52I,MAAO,GACP89I,YAAY,EACZ1D,aAAc,WACd5B,kBAAkB,GAEtBgG,YAAa,CACTtiJ,KAAM,WACNq2B,SAAU,CAAEknD,KAAM,IAEtBglE,aAAc,CACVviJ,KAAM,WACNq2B,SAAU,CAAEmqD,MAAO,OAKhB,MCx1Cf,YACA,oBACA,iBACA,gBACA,IACElgF,WAAY,CACVkiJ,aAAJ,QAEEjiJ,KAJF,WAKI,MAAO,CACLk+H,gBAAiB,CAAC,EAAxB,OACM5pB,OAAQ,CACN7uE,OAAQ,wCACR7X,MAAO,mBAETmoF,YAAa,CACXuV,MAAO,WACPtvF,KAAM,4BACN8H,KAAM,6BACNkyE,SAAU,4BACVC,SAAU,8BAEZ3uD,OAAQ,CACd,CACQ,MAAR,gBACQ,MAAR,kBACQ,UAAR,iBAEA,CACQ,GAAR,IACQ,MAAR,kBACQ,MAAR,yBACQ,QAAR,EACQ,UAAR,cAEA,CACQ,GAAR,IACQ,MAAR,kBACQ,MAAR,yBACQ,QAAR,EACQ,UAAR,cAEA,CACQ,MAAR,UACQ,MAAR,2BACQ,QAAR,EACQ,UAAR,eAEA,CACQ,MAAR,QACQ,MAAR,0BACQ,IAAR,0BACQ,QAAR,EACQ,UAAR,aAEA,CACQ,MAAR,gBACQ,MAAR,0BACQ,QAAR,EACQ,UAAR,eAEA,CACQ,MAAR,iBACQ,MAAR,0BACQ,IAAR,2BACQ,QAAR,EACQ,UAAR,eAEA,CACQ,MAAR,yBACQ,MAAR,mBACQ,IAAR,mBACQ,IAAR,+BACQ,UAAR,gBAEA,CACQ,MAAR,mBACQ,MAAR,mBACQ,IAAR,mBACQ,IAAR,+BACQ,UAAR,mBAKEnmD,QAAS,CACPg9H,UAAW,SAAf,cAEM,EAAN,QACQn9H,MAAO,kBACPC,KAAM,iHAGNihJ,kBAAkB,EAClBC,mBAAoB,kBACpBC,kBAAmB,iBACnBC,gBAAgB,IACxB,iBACQ,IAAIC,EAAah6G,SAASwS,eAAe,cAAc57C,MACvD,GAAIojJ,EAAY,CACd,IAAV,4BACUC,EAAYrnG,SAAS,CACnBl6C,MAAOshJ,EACPnuH,MAAOpC,EAAK2vF,QACZz6B,QAAQ,WC7H4V,M,yBCQ5W,GAAY,gBACd,GACA5pF,EACAyC,GACA,EACA,KACA,KACA,MAIa,gB,4DCnBT0iJ,E,wBAWJ,aAAsB,IAAV/gJ,EAAU,uDAAJ,GAAI,+CATQ,GASR,qBARR,MAQQ,kCAPK,MAOL,0BANRC,GAMQ,4BALNA,GAKM,0BAJH,GAIG,2CAHc,GAGd,gBAFb,MAGPC,OAAOC,OAAOrE,KAAMkE,G,YAIxBI,EAAOC,QAAU0gJ,G,yCChBjB,IAAInlJ,EAAS,WAAa,IAAIC,EAAIC,KAASC,EAAGF,EAAIG,eAAmBC,EAAGJ,EAAIK,MAAMD,IAAIF,EAAG,OAAOE,EAAG,QAAQ,CAACE,MAAM,CAAC,KAAON,EAAImlJ,UAAU,WAAY,IAAQ,CAAC/kJ,EAAG,KAAK,CAACM,YAAY,iBAAiBJ,MAAM,CAAC,KAAO,UAAUK,KAAK,UAAU,CAACX,EAAIY,GAAG,IAAIZ,EAAIa,GAAGb,EAAIc,GAAGd,EAAI0D,QAAQ,OAAOtD,EAAG,qBAAqB,CAACW,IAAI,OAAOC,YAAYhB,EAAIiB,GAAG,CAAC,CAACC,IAAI,UAAUC,GAAG,SAASJ,GAC1W,IAAIK,EAAeL,EAAIK,aACvB,MAAO,CAAChB,EAAG,OAAO,CAACI,GAAG,CAAC,OAAS,SAASC,GAAgC,OAAxBA,EAAOY,iBAAwBD,EAAapB,EAAIolJ,WAAW,CAAChlJ,EAAG,MAAM,CAACM,YAAY,OAAO,CAACN,EAAG,MAAM,CAACM,YAAY,aAAa,CAACN,EAAG,MAAM,CAACM,YAAY,wBAAwB,CAACN,EAAG,QAAQ,CAACM,YAAY,kBAAkB,CAACV,EAAIY,GAAGZ,EAAIa,GAAGb,EAAIc,GAAG,sCAAsCV,EAAG,qBAAqB,CAACE,MAAM,CAAC,KAAON,EAAIc,GAAG,kCAAkC,MAAQ,YAAYE,YAAYhB,EAAIiB,GAAG,CAAC,CAACC,IAAI,UAAUC,GAAG,SAASJ,GACvd,IAAIoF,EAASpF,EAAIoF,OACbC,EAASrF,EAAIqF,OACjB,MAAO,CAAChG,EAAG,WAAW,CAACE,MAAM,CAAC,KAAO,OAAO,MAAQ8F,EAASpG,EAAIc,GAAG,wBAA0B,KAAK,WAAaqF,EAAO,YAAcnG,EAAIc,GAAG,mCAAmCa,MAAM,CAACC,MAAO5B,EAAIkD,KAAW,OAAErB,SAAS,SAAUC,GAAM9B,EAAI+B,KAAK/B,EAAIkD,KAAM,SAAUpB,IAAME,WAAW,qBAAqB,MAAK,MAAS,GAAG5B,EAAG,MAAM,CAACM,YAAY,wBAAwB,CAACN,EAAG,QAAQ,CAACM,YAAY,kBAAkB,CAACV,EAAIY,GAAGZ,EAAIa,GAAGb,EAAIc,GAAG,sCAAsCV,EAAG,qBAAqB,CAACE,MAAM,CAAC,KAAON,EAAIc,GAAG,kCAAkC,MAAQ,kBAAkBE,YAAYhB,EAAIiB,GAAG,CAAC,CAACC,IAAI,UAAUC,GAAG,SAASJ,GACzmB,IAAIoF,EAASpF,EAAIoF,OACbC,EAASrF,EAAIqF,OACjB,MAAO,CAAChG,EAAG,WAAW,CAACE,MAAM,CAAC,KAAO,QAAQ,MAAQ8F,EAASpG,EAAIc,GAAG,wBAA0B,KAAK,WAAaqF,EAAO,YAAcnG,EAAIc,GAAG,mCAAmCa,MAAM,CAACC,MAAO5B,EAAIkD,KAAW,OAAErB,SAAS,SAAUC,GAAM9B,EAAI+B,KAAK/B,EAAIkD,KAAM,SAAUpB,IAAME,WAAW,qBAAqB,MAAK,MAAS,GAAG5B,EAAG,MAAM,CAACM,YAAY,wBAAwB,CAACN,EAAG,QAAQ,CAACJ,EAAIY,GAAGZ,EAAIa,GAAGb,EAAIc,GAAG,2CAA2CV,EAAG,YAAY,CAACE,MAAM,CAAC,KAAO,QAAQ,WAAa,GAAG,YAAcN,EAAIc,GAAG,+CAA+Ca,MAAM,CAACC,MAAO5B,EAAIkD,KAAgB,YAAErB,SAAS,SAAUC,GAAM9B,EAAI+B,KAAK/B,EAAIkD,KAAM,cAAepB,IAAME,WAAW,qBAAqB,CAAC5B,EAAG,YAAY,CAACE,MAAM,CAAC,MAAQ,EAAE,MAAQN,EAAIc,GAAG,iDAAiDd,EAAIuB,GAAIvB,EAAIqlJ,UAAc,MAAE,SAASljJ,EAAKC,GAAO,OAAOhC,EAAG,YAAY,CAACc,IAAI,aAAakB,EAAM9B,MAAM,CAAC,MAAQ+B,SAASD,GAAO,MAAQpC,EAAIc,GAAG,2BAA2BqB,UAAY,IAAI,GAAKnC,EAAIkD,KAAKoiJ,QAA6mBtlJ,EAAIkH,KAAxmB9G,EAAG,MAAM,CAACM,YAAY,wBAAwB,CAACN,EAAG,QAAQ,CAACJ,EAAIY,GAAGZ,EAAIa,GAAGb,EAAIc,GAAG,sCAAsCV,EAAG,YAAY,CAACE,MAAM,CAAC,KAAO,QAAQ,WAAa,GAAG,YAAcN,EAAIc,GAAG,0CAA0Ca,MAAM,CAACC,MAAO5B,EAAIkD,KAAgB,YAAErB,SAAS,SAAUC,GAAM9B,EAAI+B,KAAK/B,EAAIkD,KAAM,cAAepB,IAAME,WAAW,qBAAqB,CAAC5B,EAAG,YAAY,CAACE,MAAM,CAAC,MAAQ,EAAE,MAAQN,EAAIc,GAAG,4CAA4Cd,EAAIuB,GAAIvB,EAAS,OAAE,SAASulJ,GAAK,OAASA,EAAID,QAAsFtlJ,EAAIkH,KAAjF9G,EAAG,YAAY,CAACc,IAAIqkJ,EAAIC,MAAMllJ,MAAM,CAAC,MAAQilJ,EAAIC,MAAM,MAAQD,EAAIh/I,cAAsB,IAAI,GAAYnG,EAAG,MAAM,CAACM,YAAY,uBAAuBuB,YAAY,CAAC,aAAa,SAAS,CAAC7B,EAAG,MAAM,CAACM,YAAY,OAAO,CAACN,EAAG,MAAM,CAACM,YAAY,SAAS,CAACN,EAAG,QAAQ,CAAC6B,YAAY,CAAC,eAAe,SAAS,CAACjC,EAAIY,GAAGZ,EAAIa,GAAGb,EAAIc,GAAG,sBAAsB,QAAQ,CAACV,EAAG,WAAW,CAACuB,MAAM,CAACC,MAAO5B,EAAIkD,KAAW,OAAErB,SAAS,SAAUC,GAAM9B,EAAI+B,KAAK/B,EAAIkD,KAAM,SAAUpB,IAAME,WAAW,gBAAgB,CAAC5B,EAAG,IAAI,CAACM,YAAY,0BAA0BJ,MAAM,CAAC,KAAO,MAAMK,KAAK,OAAOP,EAAG,IAAI,CAACM,YAAY,kCAAkCJ,MAAM,CAAC,KAAO,OAAOK,KAAK,YAAY,GAAGP,EAAG,MAAM,CAACM,YAAY,SAAS,CAACN,EAAG,QAAQ,CAAC6B,YAAY,CAAC,eAAe,SAAS,CAACjC,EAAIY,GAAGZ,EAAIa,GAAGb,EAAIc,GAAG,mCAAmC,MAAMV,EAAG,SAAS,CAACJ,EAAIY,GAAGZ,EAAIa,GAAGb,EAAIkD,KAAKoiJ,QAAUtlJ,EAAIc,GAAG,sCAAwCd,EAAIc,GAAG,kDAAoDd,EAAIkD,KAAKoiJ,QAAurBtlJ,EAAIkH,KAAlrB9G,EAAG,MAAM,CAACM,YAAY,wBAAwB,CAACN,EAAG,QAAQ,CAACJ,EAAIY,GAAGZ,EAAIa,GAAGb,EAAIc,GAAG,8CAA8CV,EAAG,YAAY,CAACE,MAAM,CAAC,KAAO,QAAQ,WAAa,GAAG,YAAcN,EAAIc,GAAG,kDAAkDa,MAAM,CAACC,MAAO5B,EAAIkD,KAAgC,4BAAErB,SAAS,SAAUC,GAAM9B,EAAI+B,KAAK/B,EAAIkD,KAAM,8BAA+BpB,IAAME,WAAW,qCAAqC,CAAC5B,EAAG,YAAY,CAACE,MAAM,CAAC,MAAQ,EAAE,MAAQN,EAAIc,GAAG,oDAAoDd,EAAIuB,GAAIvB,EAAiB,eAAE,SAASylJ,GAAK,OAAOrlJ,EAAG,YAAY,CAACc,IAAIukJ,EAAIt2I,eAAe7O,MAAM,CAAC,MAAQmlJ,EAAIt2I,eAAe,MAAQs2I,EAAIl/I,cAAa,IAAI,OAAgBnG,EAAG,MAAM,CAACM,YAAY,aAAauB,YAAY,CAAC,aAAa,OAAO,cAAc,OAAO,aAAa,UAAU3B,MAAM,CAAC,KAAO,UAAUK,KAAK,UAAU,CAACP,EAAG,WAAW,CAACM,YAAY,YAAY4B,SAAS,CAAC,MAAQ,SAAS7B,GAAQ,OAAOT,EAAI0lJ,OAAOjlJ,MAAW,CAACT,EAAIY,GAAGZ,EAAIa,GAAGb,EAAIc,GAAG,0BAA0BV,EAAG,oBAAoB,CAACE,MAAM,CAAC,WAAa,WAAW,OAAS,YAAY,CAACF,EAAG,WAAW,CAACE,MAAM,CAAC,cAAc,SAAS,KAAO,YAAY,CAACN,EAAIY,GAAGZ,EAAIa,GAAGb,EAAIc,GAAG,yBAAyB,IAAI,aAAa,IACzmH0B,EAAkB,G,iFCqJtB,GACE8M,KAAM,iBACN1E,MAAF,CACI+6I,MAAO,CACLxjJ,KAAM8K,MACNH,QAAS,WAAf,WAEI84I,cAAe,CACbzjJ,KAAM8K,MACNH,QAAS,WAAf,YAGEnK,SAAU,OAAZ,OAAY,CAAZ,GACA,oCAEED,KAfF,WAgBI,MAAO,CACLgB,MAAO,8BACPs5F,OAAQ,MACRmoD,WAAW,EACXE,UAAW,IAAI,EAArB,EACMniJ,KAAM,CACJC,UAAW,EACXoD,OAAQ,GACRs/I,OAAQ,GACRC,MAAO,GACP/hJ,QAAQ,EACRuhJ,SAAS,EACTS,YAAa,EACbC,4BAA6B,EAC7BC,YAAa,KAiBnB1iJ,QA/CF,WA+CA,WACIC,SAASC,IAAI,cAAjB,sIACA,sCACA,eACA,eAHA,4CAKID,SAASC,IAAI,eAAjB,wJACA,uCACA,6BACA,uBACA,uBACA,qBACA,uBACA,yBACA,iCACA,iEACA,iCAEA,gBACA,eAbA,oGAgBEI,QAAS,CACP6hJ,OADJ,WAEMzlJ,KAAKiD,KAAO,CACVC,UAAW,EACXoD,OAAQ,GACRs/I,OAAQ,GACRC,MAAO,GACP/hJ,QAAQ,EACRuhJ,SAAS,EACTS,YAAa,EACbC,4BAA6B,EAC7BC,YAAa,GAEfhmJ,KAAKklJ,WAAY,GAEnB,OAfJ,WAeA,mKACA,cACA,8BACA,KACA,0IACA,uBALA,SASA,mBATA,sBASA,yDATA,UAUA,mBAVA,sBAUA,oDAVA,UAWA,mDAXA,sBAWA,4DAXA,wBAaA,cAbA,WAaA,EAbA,OAcA,kBAdA,uBAcA,wDAdA,aAiBA,SAjBA,OAkBA,QAlBA,QAqBA,SArBA,0CAmBA,YAnBA,eAmBA,EAnBA,qDAsBA,aAtBA,eAsBA,EAtBA,oCA0BA,IACA,2DACA,qCACA,YA7BA,qDAiCA,uCAjCA,QAoCA,gBApCA,6DAuCI,QAtDJ,WAsDA,gLACA,+CADA,cACA,EADA,OAEA,mCACA,UACA,mDAJA,kBAMA,GANA,8CAQI,SA9DJ,WA8DA,8KACA,iDADA,UACA,EADA,OAEA,kBAFA,uBAGA,yCAHA,kBAIA,MAJA,gCAMA,kCANA,8CAQI,UAtEJ,WAsEA,8KACA,wDADA,cACA,EADA,yBAEA,kCAFA,gDCzSsX,I,YCOlXlhJ,EAAY,eACd,EACAlE,EACAyC,GACA,EACA,KACA,WACA,MAIa,aAAAyB,E,oEClBf,W,yCCAA,IAAIlE,EAAS,WAAa,IAAIC,EAAIC,KAASC,EAAGF,EAAIG,eAAmBC,EAAGJ,EAAIK,MAAMD,IAAIF,EAAG,OAAOE,EAAG,QAAQ,CAACE,MAAM,CAAC,KAAON,EAAIO,UAAU,WAAY,IAAQ,CAACH,EAAG,KAAK,CAACM,YAAY,iBAAiBJ,MAAM,CAAC,KAAO,UAAUK,KAAK,UAAU,CAACX,EAAIY,GAAG,IAAIZ,EAAIa,GAAGb,EAAI0D,OAAO,OAAOtD,EAAG,OAAO,CAACI,GAAG,CAAC,OAAS,SAASC,GAAQA,EAAOY,oBAAqB,CAACjB,EAAG,MAAM,CAACM,YAAY,OAAO,CAACN,EAAG,MAAM,CAACM,YAAY,SAAS,CAACN,EAAG,WAAW,CAACM,YAAY,gBAAgBuF,MAAMjG,EAAI2pG,SAAS3pG,EAAIkmJ,UAAUC,UAAU7lJ,MAAM,CAAC,KAAO,OAAO,MAAQN,EAAIc,GAAG,yDAAyD,YAAcd,EAAIc,GAAG,yDAAyD,SAAW,GAAG,aAAed,EAAI2pG,SAAS3pG,EAAIkmJ,UAAUC,UAAU,MAAQnmJ,EAAIiH,SAAS,eAA0C,MAA1BjH,EAAIkmJ,UAAUC,SAAkB/lJ,EAAG,OAAO,CAACJ,EAAIY,GAAG,IAAIZ,EAAIa,GAAGb,EAAIc,GAAG,4DAA4D,KAAKd,EAAIa,GAAGb,EAAI+F,KAAKogJ,UAAU,OAAOnmJ,EAAIkH,MAAM,KAAK9G,EAAG,MAAM,CAACM,YAAY,MAAMuB,YAAY,CAAC,aAAa,SAAS,CAAC7B,EAAG,MAAM,CAACM,YAAY,SAAS,CAACN,EAAG,WAAW,CAAC6F,MAAMjG,EAAI2pG,SAAS3pG,EAAIkmJ,UAAUE,KAAK9lJ,MAAM,CAAC,KAAO,OAAO,MAAQN,EAAIc,GAAG,uDAAuD,YAAcd,EAAIc,GAAG,uDAAuD,SAAW,GAAG,aAAed,EAAI2pG,SAAS3pG,EAAIkmJ,UAAUE,KAAK,MAAQpmJ,EAAIiH,SAAS,UAAgC,MAArBjH,EAAIkmJ,UAAUE,IAAahmJ,EAAG,OAAO,CAACJ,EAAIY,GAAG,IAAIZ,EAAIa,GAAGb,EAAIc,GAAG,4DAA4D,KAAKd,EAAIa,GAAGb,EAAI+F,KAAKqgJ,KAAK,OAAOpmJ,EAAIkH,KAAK9G,EAAG,WAAW,CAAC6F,MAAMjG,EAAI2pG,SAAS3pG,EAAIkmJ,UAAUG,OAAO/lJ,MAAM,CAAC,KAAO,OAAO,MAAQN,EAAIc,GAAG,0DAA0D,YAAcd,EAAIc,GAAG,0DAA0D,SAAW,GAAG,aAAed,EAAI2pG,SAAS3pG,EAAIkmJ,UAAUG,OAAO,MAAQrmJ,EAAIiH,SAAS,YAAoC,MAAvBjH,EAAIkmJ,UAAUG,MAAejmJ,EAAG,OAAO,CAACJ,EAAIY,GAAG,IAAIZ,EAAIa,GAAGb,EAAIc,GAAG,4DAA4D,KAAKd,EAAIa,GAAGb,EAAI+F,KAAKsgJ,OAAO,OAAOrmJ,EAAIkH,KAAK9G,EAAG,WAAW,CAAC6F,MAAMjG,EAAI2pG,SAAS3pG,EAAIkmJ,UAAUI,aAAahmJ,MAAM,CAAC,KAAO,OAAO,MAAQN,EAAIc,GAAG,0DAA0D,YAAcd,EAAIc,GAAG,0DAA0D,SAAW,GAAG,aAAed,EAAI2pG,SAAS3pG,EAAIkmJ,UAAUI,aAAa,MAAQtmJ,EAAIiH,SAAS,kBAAgD,MAA7BjH,EAAIkmJ,UAAUI,YAAqBlmJ,EAAG,OAAO,CAACJ,EAAIY,GAAG,IAAIZ,EAAIa,GAAGb,EAAIc,GAAG,4DAA4D,KAAKd,EAAIa,GAAGb,EAAI+F,KAAKugJ,aAAa,OAAOtmJ,EAAIkH,KAAK9G,EAAG,WAAW,CAAC6F,MAAMjG,EAAI2pG,SAAS3pG,EAAIkmJ,UAAUK,aAAajmJ,MAAM,CAAC,KAAO,OAAO,MAAQN,EAAIc,GAAG,0DAA0D,YAAcd,EAAIc,GAAG,0DAA0D,SAAW,GAAG,aAAed,EAAI2pG,SAAS3pG,EAAIkmJ,UAAUK,aAAa,MAAQvmJ,EAAIiH,SAAS,kBAAgD,MAA7BjH,EAAIkmJ,UAAUK,YAAqBnmJ,EAAG,OAAO,CAACJ,EAAIY,GAAG,IAAIZ,EAAIa,GAAGb,EAAIc,GAAG,4DAA4D,KAAKd,EAAIa,GAAGb,EAAI+F,KAAKwgJ,aAAa,OAAOvmJ,EAAIkH,KAAK9G,EAAG,WAAW,CAAC6F,MAAMjG,EAAI2pG,SAAS3pG,EAAIkmJ,UAAUM,SAASlmJ,MAAM,CAAC,KAAO,OAAO,MAAQN,EAAIc,GAAG,yDAAyD,YAAcd,EAAIc,GAAG,yDAAyD,SAAW,GAAG,aAAed,EAAI2pG,SAAS3pG,EAAIkmJ,UAAUM,SAAS,MAAQxmJ,EAAIiH,SAAS,cAAwC,MAAzBjH,EAAIkmJ,UAAUM,QAAiBpmJ,EAAG,OAAO,CAACJ,EAAIY,GAAG,IAAIZ,EAAIa,GAAGb,EAAIc,GAAG,4DAA4D,KAAKd,EAAIa,GAAGb,EAAI+F,KAAKygJ,SAAS,OAAOxmJ,EAAIkH,KAAK9G,EAAG,WAAW,CAAC6F,MAAMjG,EAAI2pG,SAAS3pG,EAAIkmJ,UAAUO,qBAAqBnmJ,MAAM,CAAC,KAAO,OAAO,MAAQN,EAAIc,GAAG,gEAAgE,YAAcd,EAAIc,GAAG,gEAAgE,SAAW,GAAG,aAAed,EAAI2pG,SAAS3pG,EAAIkmJ,UAAUO,qBAAqB,MAAQzmJ,EAAIiH,SAAS,0BAAgE,MAArCjH,EAAIkmJ,UAAUO,oBAA6BrmJ,EAAG,OAAO,CAACJ,EAAIY,GAAG,IAAIZ,EAAIa,GAAGb,EAAIc,GAAG,4DAA4D,KAAKd,EAAIa,GAAGb,EAAI+F,KAAK0gJ,qBAAqB,OAAOzmJ,EAAIkH,MAAM,GAAG9G,EAAG,MAAM,CAACM,YAAY,SAAS,CAACN,EAAG,WAAW,CAAC6F,MAAMjG,EAAI2pG,SAAS3pG,EAAIkmJ,UAAUQ,QAAQpmJ,MAAM,CAAC,KAAO,OAAO,MAAQN,EAAIc,GAAG,yDAAyD,YAAcd,EAAIc,GAAG,yDAAyD,SAAW,GAAG,aAAed,EAAI2pG,SAAS3pG,EAAIkmJ,UAAUQ,QAAQ,MAAQ1mJ,EAAIiH,SAAS,aAAsC,MAAxBjH,EAAIkmJ,UAAUQ,OAAgBtmJ,EAAG,OAAO,CAACJ,EAAIY,GAAG,IAAIZ,EAAIa,GAAGb,EAAIc,GAAG,4DAA4D,KAAKd,EAAIa,GAAGb,EAAI+F,KAAK2gJ,QAAQ,OAAO1mJ,EAAIkH,KAAK9G,EAAG,WAAW,CAAC6F,MAAMjG,EAAI2pG,SAAS3pG,EAAIkmJ,UAAUS,MAAMrmJ,MAAM,CAAC,KAAO,OAAO,MAAQN,EAAIc,GAAG,2DAA2D,YAAcd,EAAIc,GAAG,2DAA2D,SAAW,GAAG,aAAed,EAAI2pG,SAAS3pG,EAAIkmJ,UAAUS,MAAM,MAAQ3mJ,EAAIiH,SAAS,WAAkC,MAAtBjH,EAAIkmJ,UAAUS,KAAcvmJ,EAAG,OAAO,CAACJ,EAAIY,GAAG,IAAIZ,EAAIa,GAAGb,EAAIc,GAAG,4DAA4D,KAAKd,EAAIa,GAAGb,EAAI+F,KAAK4gJ,MAAM,OAAO3mJ,EAAIkH,KAAK9G,EAAG,WAAW,CAAC6F,MAAMjG,EAAI2pG,SAAS3pG,EAAIkmJ,UAAUU,WAAWtmJ,MAAM,CAAC,KAAO,OAAO,MAAQN,EAAIc,GAAG,0DAA0D,YAAcd,EAAIc,GAAG,0DAA0D,SAAW,GAAG,aAAed,EAAI2pG,SAAS3pG,EAAIkmJ,UAAUU,WAAW,MAAQ5mJ,EAAIiH,SAAS,gBAA4C,MAA3BjH,EAAIkmJ,UAAUU,UAAmBxmJ,EAAG,OAAO,CAACJ,EAAIY,GAAG,IAAIZ,EAAIa,GAAGb,EAAIc,GAAG,4DAA4D,KAAKd,EAAIa,GAAGb,EAAI+F,KAAK6gJ,WAAW,OAAO5mJ,EAAIkH,KAAK9G,EAAG,WAAW,CAAC6F,MAAMjG,EAAI2pG,SAAS3pG,EAAIkmJ,UAAUW,WAAWvmJ,MAAM,CAAC,KAAO,OAAO,MAAQN,EAAIc,GAAG,0DAA0D,YAAcd,EAAIc,GAAG,0DAA0D,SAAW,GAAG,aAAed,EAAI2pG,SAAS3pG,EAAIkmJ,UAAUW,WAAW,MAAQ7mJ,EAAIiH,SAAS,gBAA4C,MAA3BjH,EAAIkmJ,UAAUW,UAAmBzmJ,EAAG,OAAO,CAACJ,EAAIY,GAAG,IAAIZ,EAAIa,GAAGb,EAAIc,GAAG,4DAA4D,KAAKd,EAAIa,GAAGb,EAAI+F,KAAK8gJ,WAAW,OAAO7mJ,EAAIkH,KAAK9G,EAAG,WAAW,CAAC6F,MAAMjG,EAAI2pG,SAAS3pG,EAAIkmJ,UAAUY,cAAcxmJ,MAAM,CAAC,KAAO,OAAO,MAAQN,EAAIc,GAAG,+DAA+D,YAAcd,EAAIc,GAAG,+DAA+D,SAAW,GAAG,aAAed,EAAI2pG,SAAS3pG,EAAIkmJ,UAAUY,cAAc,MAAQ9mJ,EAAIiH,SAAS,mBAAkD,MAA9BjH,EAAIkmJ,UAAUY,aAAsB1mJ,EAAG,OAAO,CAACJ,EAAIY,GAAG,IAAIZ,EAAIa,GAAGb,EAAIc,GAAG,4DAA4D,KAAKd,EAAIa,GAAGb,EAAI+F,KAAK+gJ,cAAc,OAAO9mJ,EAAIkH,MAAM,KAAK9G,EAAG,MAAM,CAACM,YAAY,aAAauB,YAAY,CAAC,aAAa,OAAO,cAAc,OAAO,aAAa,UAAU3B,MAAM,CAAC,KAAO,UAAUK,KAAK,UAAU,CAACP,EAAG,WAAW,CAACM,YAAY,0BAA0B4B,SAAS,CAAC,MAAQ,SAAS7B,GAAQ,OAAOT,EAAIguH,WAAW,CAAChuH,EAAIY,GAAGZ,EAAIa,GAAGb,EAAIc,GAAG,0BAA2Bd,EAAIkmJ,UAAUhyC,SAAWl0G,EAAI+mJ,YAAYC,UAAW,CAAC5mJ,EAAG,WAAW,CAAC6B,YAAY,CAAC,eAAe,QAAQ3B,MAAM,CAAC,KAAO,YAAY,SAAWN,EAAIinJ,YAAY3kJ,SAAS,CAAC,MAAQ,SAAS7B,GAAQ,OAAOT,EAAIknJ,cAAc,CAAClnJ,EAAIY,GAAGZ,EAAIa,GAAGb,EAAIc,GAAG,8DAA8DV,EAAG,WAAW,CAACE,MAAM,CAAC,KAAO,UAAU,SAAWN,EAAIinJ,YAAY3kJ,SAAS,CAAC,MAAQ,SAAS7B,GAAQ,OAAOT,EAAImnJ,YAAY,CAACnnJ,EAAIY,GAAGZ,EAAIa,GAAGb,EAAIc,GAAG,4EAA6Ed,EAAIkmJ,UAAUhyC,SAAWl0G,EAAI+mJ,YAAYK,YAAa,CAAChnJ,EAAG,WAAW,CAACE,MAAM,CAAC,KAAO,UAAU,SAAWN,EAAIinJ,YAAY3kJ,SAAS,CAAC,MAAQ,SAAS7B,GAAQ,OAAOT,EAAIqnJ,eAAe,CAACrnJ,EAAIY,GAAGZ,EAAIa,GAAGb,EAAIc,GAAG,iEAAiEd,EAAIkH,MAAM,QACrqP1E,EAAkB,G,yDCyLtB,GACEC,WAAY,GACZC,KAFF,WAGI,MAAO,CACLgB,MAAOzD,KAAKa,GAAG,wDACfP,WAAW,EACX0mJ,YAAY,EACZlhJ,KAAM,CACJogJ,SAAU,GACVmB,MAAO,GACPlB,IAAK,GACLM,OAAQ,GACRL,MAAO,GACPM,KAAM,GACNJ,YAAa,GACbD,YAAa,GACbE,QAAS,GACTM,aAAc,GACdL,oBAAqB,GACrBG,UAAW,GACXC,UAAW,GACXU,UAAW,IAEbR,YAAa,IAAI,EAAvB,EACMb,UAAW,CACTsB,yBAA0B,GAC1BrB,SAAU,GACVmB,MAAO,GACPlB,IAAK,GACLM,OAAQ,GACRL,MAAO,GACPM,KAAM,GACNJ,YAAa,GACbD,YAAa,GACbE,QAAS,GACTM,aAAc,GACdL,oBAAqB,GACrBG,UAAW,GACXC,UAAW,GACXU,UAAW,GACXrzC,OAAQ,KAId3wG,QA5CF,WA4CA,WACIC,SAASC,IAAI,yBAAyB,SAA1C,GACM,EAAN,YACM,EAAN,wBACM,EAAN,iBAGEI,QAAS,CACP,WADJ,SACA,4KACA,GACA,MAFA,SAKA,mDALA,OAKA,EALA,OAMA,mCAEA,IACA,iBATA,8CAYI,OAbJ,WAaA,yKACA,cACA,8BACA,KACA,0IACA,uBAEA,gBAEA,GACA,+DAVA,SAaA,kEAbA,OAaA,EAbA,OAcA,mCAEA,gBACA,gBAEA,IACA,UACA,4CArBA,+CAwBI,SArCJ,WAqCA,oLACA,kBADA,UACA,EADA,QAGA,QAHA,wBAIA,cACA,8BACA,KACA,0IACA,uBAEA,gBAEA,GACA,8DACA,eACA,iCAfA,SAkBA,gEAlBA,OAkBA,EAlBA,OAmBA,mCAEA,gBACA,gBAEA,IACA,UACA,4CA1BA,+CA8BI,UAnEJ,WAmEA,yKACA,cACA,8BACA,KACA,0IACA,uBAEA,gBAEA,GACA,+DAVA,SAaA,kEAbA,OAaA,EAbA,OAcA,mCAEA,gBACA,gBAEA,IACA,UACA,4CArBA,+CAwBI+F,cA3FJ,WA2FA,WACM,OAAO3J,KAAK6O,MAAM24I,KAAK,CACrB/jJ,MAAOzD,KAAKa,GAAG,iEACfuR,MAAO,OACPq1I,iBAAkBznJ,KAAKa,GAAG,0DAC1BqB,KAAM,UACNyiJ,kBAAkB,EAClBC,mBAAoB,2BACpBC,kBAAmB,0BACnB6C,kBAAmB1nJ,KAAKa,GAAG,kBAC3B8mJ,iBAAkB3nJ,KAAKa,GAAG,sBAC1BikJ,gBAAgB,EAEhB8C,eAAgB,SAAxB,GACU,IAAKjmJ,EACH,OAAO,EAAnB,uEAKI+nG,SA/GJ,SA+GA,GACM,IAAN,mBACM,OAAe,MAARm+C,EAAeC,EAAS,sBAAwBA,GAEzD9gJ,SAnHJ,SAmHA,GACM,OAAgC,MAAzBhH,KAAKimJ,UAAUpgE,GAAiB7lF,KAAKimJ,UAAUpgE,GAAS7lF,KAAK8F,KAAK+/E,IAE3EkoC,MAtHJ,WAuHM/tH,KAAKM,WAAY,EACjBN,KAAK8F,KAAO,CACV,yBAAR,GACQ,SAAR,GACQ,MAAR,GACQ,IAAR,GACQ,OAAR,GACQ,MAAR,GACQ,KAAR,GACQ,YAAR,GACQ,YAAR,GACQ,QAAR,GACQ,aAAR,GACQ,oBAAR,GACQ,UAAR,GACQ,UAAR,GACQ,UAAR,IAEM9F,KAAKgnJ,YAAa,KCtX4V,I,wBCQhXhjJ,EAAY,eACd,EACAlE,EACAyC,GACA,EACA,KACA,KACA,MAIa,aAAAyB,E,2ECnBf,IAAIlE,EAAS,WAAa,IAAIC,EAAIC,KAASC,EAAGF,EAAIG,eAAmBC,EAAGJ,EAAIK,MAAMD,IAAIF,EAAG,OAAOE,EAAG,QAAQ,CAACE,MAAM,CAAC,KAAON,EAAIqI,cAAc7H,GAAG,CAAC,cAAc,SAASC,GAAQT,EAAIqI,aAAa5H,KAAU,CAACL,EAAG,KAAK,CAACM,YAAY,oBAAoBJ,MAAM,CAAC,KAAO,UAAUK,KAAK,UAAU,CAACX,EAAIY,GAAG,IAAIZ,EAAIa,GAAGb,EAAIc,GAAG,mDAAmD,OAAOV,EAAG,qBAAqB,CAACW,IAAI,UAAUC,YAAYhB,EAAIiB,GAAG,CAAC,CAACC,IAAI,UAAUC,GAAG,SAASJ,GACrc,IAAIK,EAAeL,EAAIK,aACvB,MAAO,CAAChB,EAAG,OAAO,CAACI,GAAG,CAAC,OAAS,SAASC,GAAgC,OAAxBA,EAAOY,iBAAwBD,EAAapB,EAAI8F,kBAAkB,CAAC1F,EAAG,MAAM,CAACM,YAAY,aAAa,CAACN,EAAG,MAAM,CAACM,YAAY,OAAO,CAACN,EAAG,MAAM,CAACM,YAAY,iBAAiB,CAACN,EAAG,MAAM,CAAC6F,MAAMjG,EAAIkG,OAAO,CAAC9F,EAAG,YAAY,CAACM,YAAY,UAAUJ,MAAM,CAAC,KAAO,QAAQ,YAAcN,EAAIc,GAAG,qCAAqCN,GAAG,CAAC,OAASR,EAAImH,cAAcxF,MAAM,CAACC,MAAO5B,EAAI+F,KAAmB,eAAElE,SAAS,SAAUC,GAAM9B,EAAI+B,KAAK/B,EAAI+F,KAAM,iBAAkBjE,IAAME,WAAW,wBAAwBhC,EAAIuB,GAAIvB,EAAa,WAAE,SAAS6H,GAAS,OAAOzH,EAAG,YAAY,CAACc,IAAI2G,EAAQvB,gBAAgBhG,MAAM,CAAC,MAAQuH,EAAQvB,gBAAgB,MAAQuB,EAAQtB,aAAY,GAAIvG,EAAuB,oBAAEI,EAAG,MAAM,CAACM,YAAY,+BAA+BuB,YAAY,CAAC,QAAU,UAAU,CAACjC,EAAIY,GAAG,IAAIZ,EAAIa,GAAGb,EAAIqG,eAAe,OAAOrG,EAAIkH,MAAM,GAAG9G,EAAG,MAAM,CAAC6F,MAAMjG,EAAIkG,OAAO,CAAC9F,EAAG,YAAY,CAACW,IAAI,SAASL,YAAY,oBAAoBJ,MAAM,CAAC,OAAS,IAAI,KAAO,UAAU,UAAW,EAAM,YAAYN,EAAI+H,WAAW,YAAY/H,EAAIgoJ,WAAW,eAAc,EAAM,OAAS,+CAA+C,CAAC5nJ,EAAG,WAAW,CAACE,MAAM,CAAC,KAAO,UAAU,KAAO,QAAQ,KAAO,UAAU,GAAK,YAAYgC,SAAS,CAAC,MAAQ,SAAS7B,GAAQ,OAAOT,EAAIyrC,QAAQhrC,KAAUE,KAAK,WAAW,CAACX,EAAIY,GAAGZ,EAAIa,GAAGb,EAAIc,GAAG,8BAA8BV,EAAG,MAAM,CAACM,YAAY,iBAAiBJ,MAAM,CAAC,KAAO,OAAOK,KAAK,OAAO,CAACX,EAAIY,GAAG,IAAIZ,EAAIa,GAAGb,EAAIc,GAAG,6CAA6C,QAAQ,GAAId,EAAa,UAAEI,EAAG,MAAM,CAACM,YAAY,+BAA+BuB,YAAY,CAAC,QAAU,UAAU,CAACjC,EAAIY,GAAG,IAAIZ,EAAIa,GAAGb,EAAIqG,eAAe,OAAOrG,EAAIkH,MAAM,GAAG9G,EAAG,MAAM,CAAC6F,MAAMjG,EAAIkG,OAAO,CAAC9F,EAAG,WAAW,CAACE,MAAM,CAAC,cAAc,SAAS,KAAO,YAAY,CAACF,EAAG,IAAI,CAACM,YAAY,+BAA+BJ,MAAM,CAAC,KAAO,SAASK,KAAK,UAAUX,EAAIY,GAAG,IAAIZ,EAAIa,GAAGb,EAAIc,GAAG,yCAAyC,WAAWV,EAAG,MAAM,CAACM,YAAY,aAAauB,YAAY,CAAC,aAAa,OAAO,cAAc,OAAO,aAAa,UAAU3B,MAAM,CAAC,KAAO,UAAUK,KAAK,UAAU,CAACP,EAAG,WAAW,CAACM,YAAY,YAAY4B,SAAS,CAAC,MAAQ,SAAS7B,GAAQ,OAAOT,EAAIuC,UAAU9B,MAAW,CAACT,EAAIY,GAAGZ,EAAIa,GAAGb,EAAIc,GAAG,0BAA0B,WAAW,IAC7sE0B,EAAkB,G,0ECwFtB,GACEC,WAAY,GACZC,KAFF,WAGI,MAAO,CACL2F,cAAc,EACdC,aAAc,CAAC,MAAO,MAAO,MAAO,OAAQ,QAC5CC,SAAU,GACV0/I,qBAAqB,EACrBz/I,WAAW,EACXC,UAAW,GACXK,eAAe,EACfzC,cAAepG,KAAKa,GAAG,wBACvBoF,MAAO,6BACPH,KAAM,CAAZ,oBAGEoG,MAAO,GACPxJ,SAAU,GACVC,QAlBF,aAmBE,QAnBF,WAmBA,+JACA,wLACA,2BACA,kBAFA,kGAIA,wBACA,cACA,8BACA,KACA,0IACA,uBAVA,SAYA,oBAZA,OAaA,gBAbA,8CAeEiB,QAAS,CACPsD,aADJ,SACA,GACMmiB,QAAQyL,IAAInV,IAEd7V,kBAJJ,SAIA,GACM,MAAO,MAAMC,KAAKC,GAAY,SAASD,KAAKC,GAAU,QAAK7F,GAE7DqnC,QAPJ,WAQMxrC,KAAKwG,MAAMyD,OAAOC,aAClBlK,KAAKsI,SAAW,IAElB,gBAXJ,WAWA,qKACA,GACA,KACA,gCACA,sCACA,eALA,SAOA,QACA,4DACA,KAFA,yDAGA,+FACA,mBACA,uCACA,kBACA,kBACA,mDAGA,mDARA,2CAHA,uDAcA,YACA,eACA,sDAGA,wBA1BA,8CA+BI,cA1CJ,WA0CA,wJACA,oBACA,0BACA,yBACA,gCACA,wBACA,oCACA,gBAEA,eACA,4BACA,oBACA,eAGA,yBAfA,8CAkBI,SA5DJ,WA4DA,qKAEA,eACA,2DACA,SACA,gCACA,uBAEA,oDACA,4BACA,cACA,8BACA,KACA,0IACA,uBAdA,SAgBA,QACA,qDACA,SACA,wCAGA,KANA,yDAOA,+FACA,2DAIA,cALA,2CAPA,uDAcA,YACA,sDAGA,wBAlCA,OAmCA,gBAnCA,8CAqCIhG,UAjGJ,WAkGMtC,KAAKwG,MAAMyD,OAAOC,aAClBlK,KAAKwG,MAAMC,QAAQC,QACnB1G,KAAK8F,KAAKjC,gBAAkB,GAC5B7D,KAAKoI,cAAe,EACpBpI,KAAK8F,KAAKwD,eAAiB,GAE7BxB,WAxGJ,SAwGA,GACM,GAAImN,EAAM,CACR,IAAIgzI,EAAYjoJ,KAAK8J,kBAAkBmL,EAAK5F,MACxC44I,GACEjoJ,KAAKqI,aAAa6/I,SAASD,GAC7BjoJ,KAAKsI,SAAW2M,EAAKyO,KAUvB1jB,KAAKsI,SAAW,GAChBtI,KAAKwG,MAAMyD,OAAOC,aAClBlK,KAAKmoJ,cACf,UACA,8DAKI,WAhIJ,SAgIA,2JACA,cADA,gDC7PsX,I,wBCQlXnkJ,EAAY,eACd,EACAlE,EACAyC,GACA,EACA,KACA,KACA,MAIa,aAAAyB,E,oDCnBf,IAAIlE,EAAS,WAAa,IAAIC,EAAIC,KAASC,EAAGF,EAAIG,eAAmBC,EAAGJ,EAAIK,MAAMD,IAAIF,EAAG,OAAOE,EAAG,MAAM,CAACA,EAAG,MAAM,CAACM,YAAY,qCAAqC,CAACN,EAAG,MAAM,CAACM,YAAY,6BAA6B,CAACN,EAAG,gBAAgB,CAACA,EAAG,WAAW,CAACO,KAAK,UAAU,CAACP,EAAG,KAAK,CAACM,YAAY,cAAc,CAACV,EAAIY,GAAG,wBAAwBR,EAAG,KAAK,CAACM,YAAY,eAAe,CAACV,EAAIY,GAAG,2DAA2DR,EAAG,aAAa,CAACE,MAAM,CAAC,gBAAgB,WAAc,OAAON,EAAIqoJ,aAAa,YAAc,CAACjoJ,EAAG,WAAW,CAACO,KAAK,SAAS,CAACP,EAAG,IAAI,CAACM,YAAY,iCAAiCV,EAAIY,GAAG,aAAaR,EAAG,aAAa,CAACW,IAAI,QAAQP,GAAG,CAAC,eAAeR,EAAIsoJ,oBAAoB,GAAGloJ,EAAG,aAAa,CAACE,MAAM,CAAC,gBAAgB,WAAc,OAAON,EAAIqoJ,aAAa,YAAc,CAACjoJ,EAAG,WAAW,CAACO,KAAK,SAAS,CAACP,EAAG,IAAI,CAACM,YAAY,uCAAuCV,EAAIY,GAAG,eAAeR,EAAG,cAAc,CAACW,IAAI,QAAQP,GAAG,CAAC,eAAeR,EAAIsoJ,oBAAoB,GAAGloJ,EAAG,aAAa,CAACE,MAAM,CAAC,gBAAgB,WAAc,OAAON,EAAIqoJ,aAAa,YAAc,CAACjoJ,EAAG,WAAW,CAACO,KAAK,SAAS,CAACP,EAAG,IAAI,CAACM,YAAY,+BAA+BV,EAAIY,GAAG,eAAeR,EAAG,aAAa,CAACW,IAAI,QAAQP,GAAG,CAAC,eAAeR,EAAIuoJ,mBAAmB,IAAI,IAAI,QAC7uC/lJ,EAAkB,G,YCDlB,EAAS,WAAa,IAAIxC,EAAIC,KAASC,EAAGF,EAAIG,eAAmBC,EAAGJ,EAAIK,MAAMD,IAAIF,EAAG,OAAOE,EAAG,qBAAqB,CAACW,IAAI,QAAQ,CAACX,EAAG,OAAO,CAACI,GAAG,CAAC,OAAS,SAASC,GAAgC,OAAxBA,EAAOY,iBAAwBrB,EAAIwoJ,SAAS/nJ,MAAW,CAACL,EAAG,KAAK,CAACM,YAAY,aAAa,CAACV,EAAIY,GAAG,gEAAgER,EAAG,MAAM,CAACM,YAAY,8BAA8B,CAACN,EAAG,MAAM,CAACM,YAAY,YAAY,CAACN,EAAG,MAAM,CAACM,YAAY,qBAAqB,CAACN,EAAG,YAAY,CAACM,YAAY,UAAUJ,MAAM,CAAC,OAAS,8CAA8C,YAAYN,EAAIyoJ,cAAc,eAAc,EAAM,kBAAiB,IAAQ,CAAEzoJ,EAAY,SAAEI,EAAG,MAAM,CAACM,YAAY,cAAcJ,MAAM,CAAC,IAAMN,EAAI0oJ,YAAY1oJ,EAAIkH,OAAO9G,EAAG,KAAK,CAACM,YAAY,eAAe,CAACV,EAAIY,GAAG,qBAAqB,KAAKR,EAAG,MAAM,CAACM,YAAY,YAAY,CAACN,EAAG,qBAAqB,CAACE,MAAM,CAAC,KAAO,YAAY,MAAQ,YAAYU,YAAYhB,EAAIiB,GAAG,CAAC,CAACC,IAAI,UAAUC,GAAG,SAASJ,GAC/7B,IAAIoF,EAASpF,EAAIoF,OACbC,EAASrF,EAAIqF,OACjB,MAAO,CAAChG,EAAG,WAAW,CAACM,YAAY,kBAAkBJ,MAAM,CAAC,KAAO,OAAO,MAAQ8F,EAAS,mCAAqC,KAAK,WAAaD,EAAO,YAAc,wBAAwB,kBAAkB,gCAAgCxE,MAAM,CAACC,MAAO5B,EAAa,UAAE6B,SAAS,SAAUC,GAAM9B,EAAI2oJ,UAAU7mJ,GAAKE,WAAW,sBAAsB5B,EAAG,qBAAqB,CAACE,MAAM,CAAC,KAAO,WAAW,MAAQ,YAAYU,YAAYhB,EAAIiB,GAAG,CAAC,CAACC,IAAI,UAAUC,GAAG,SAASJ,GAChd,IAAIoF,EAASpF,EAAIoF,OACbC,EAASrF,EAAIqF,OACjB,MAAO,CAAChG,EAAG,WAAW,CAACM,YAAY,kBAAkBJ,MAAM,CAAC,MAAQ8F,EAAS,kCAAoC,KAAK,WAAaD,EAAO,YAAc,uBAAuB,kBAAkB,gCAAgCxE,MAAM,CAACC,MAAO5B,EAAY,SAAE6B,SAAS,SAAUC,GAAM9B,EAAI4oJ,SAAS9mJ,GAAKE,WAAW,sBAAsB,GAAG5B,EAAG,MAAM,CAACM,YAAY,yBAAyB,CAACN,EAAG,qBAAqB,CAACE,MAAM,CAAC,KAAO,QAAQ,MAAQ,kBAAkBU,YAAYhB,EAAIiB,GAAG,CAAC,CAACC,IAAI,UAAUC,GAAG,SAASJ,GACpf,IAAIoF,EAASpF,EAAIoF,OACbC,EAASrF,EAAIqF,OACjB,MAAO,CAAChG,EAAG,WAAW,CAACM,YAAY,kBAAkBJ,MAAM,CAAC,MAAQ8F,EAAS,8BAAgC,KAAK,WAAaD,EAAO,KAAO,QAAQ,YAAc,mBAAmB,kBAAkB,gCAAgCxE,MAAM,CAACC,MAAO5B,EAAS,MAAE6B,SAAS,SAAUC,GAAM9B,EAAIsnJ,MAAMxlJ,GAAKE,WAAW,mBAAmB,UACnU,EAAkB,G,mICwEtB,kCACA,+BAEA,I,EAAA,GACES,WAAY,OAAd,OAAc,CAAd,GACA,SADA,KAGEC,KAJF,WAKI,MAAO,CACLimJ,UAAW,GACXC,SAAU,GACVtB,MAAO,GACPoB,SAAU,2BAGd7kJ,QAAS,CACP4kJ,cADJ,SACA,GACMxoJ,KAAK0B,MAAM+mJ,SAAW5jJ,IAAIqW,gBAAgBjG,EAAKyO,MAEjD6kI,SAJJ,WAIA,WACM,OAAOvoJ,KAAKwG,MAAMoiJ,KAAKL,WAAWv+C,MAAK,SAA7C,GAEQ,OADA,EAAR,wBACelwE,QCxGiX,I,YCO5X91B,EAAY,eACd,EACA,EACA,GACA,EACA,KACA,KACA,MAIa,EAAAA,E,QClBX,EAAS,WAAa,IAAIjE,EAAIC,KAASC,EAAGF,EAAIG,eAAmBC,EAAGJ,EAAIK,MAAMD,IAAIF,EAAG,OAAOE,EAAG,MAAM,CAACA,EAAG,KAAK,CAACM,YAAY,aAAa,CAACV,EAAIY,GAAG,sCAAsCR,EAAG,MAAM,CAACM,YAAY,8BAA8B,CAACN,EAAG,MAAM,CAACM,YAAY,aAAa,CAACN,EAAG,MAAM,CAACM,YAAY,OAAO,CAACN,EAAG,MAAM,CAACM,YAAY,YAAY,CAACN,EAAG,gBAAgB,CAACE,MAAM,CAAC,KAAO,qCAAqC,MAAQ,UAAUqB,MAAM,CAACC,MAAO5B,EAAI2B,MAAY,OAAEE,SAAS,SAAUC,GAAM9B,EAAI+B,KAAK/B,EAAI2B,MAAO,SAAUG,IAAME,WAAW,mBAAmB,GAAG5B,EAAG,MAAM,CAACM,YAAY,YAAY,CAACN,EAAG,gBAAgB,CAACE,MAAM,CAAC,KAAO,gCAAgC,MAAQ,QAAQqB,MAAM,CAACC,MAAO5B,EAAI2B,MAAU,KAAEE,SAAS,SAAUC,GAAM9B,EAAI+B,KAAK/B,EAAI2B,MAAO,OAAQG,IAAME,WAAW,iBAAiB,GAAG5B,EAAG,MAAM,CAACM,YAAY,YAAY,CAACN,EAAG,gBAAgB,CAACE,MAAM,CAAC,KAAO,uBAAuB,MAAQ,WAAWqB,MAAM,CAACC,MAAO5B,EAAI2B,MAAa,QAAEE,SAAS,SAAUC,GAAM9B,EAAI+B,KAAK/B,EAAI2B,MAAO,UAAWG,IAAME,WAAW,oBAAoB,YACjgC,EAAkB,G,YCqCtB,GACES,WAAY,CACVqmJ,aAAJ,QAEEpmJ,KAJF,WAKI,MAAO,CACLf,MAAO,CACLonJ,QAAQ,EACRj0I,MAAM,EACNk0I,SAAS,KAIfnlJ,QAAS,CACP2kJ,SADJ,WAGM,OADAvoJ,KAAKgM,MAAM,gBAAgB,EAAMhM,KAAK0B,OAC/BsnJ,QAAQ30H,SAAQ,MCtDoW,ICO7X,EAAY,eACd,EACA,EACA,GACA,EACA,KACA,KACA,MAIa,I,QClBX,EAAS,WAAa,IAAIt0B,EAAIC,KAASC,EAAGF,EAAIG,eAAmBC,EAAGJ,EAAIK,MAAMD,IAAIF,EAAG,OAAOE,EAAG,qBAAqB,CAACW,IAAI,QAAQ,CAACX,EAAG,OAAO,CAACI,GAAG,CAAC,OAAS,SAASC,GAAgC,OAAxBA,EAAOY,iBAAwBrB,EAAIwoJ,SAAS/nJ,MAAW,CAACL,EAAG,MAAM,CAACM,YAAY,8BAA8B,CAACN,EAAG,MAAM,CAACM,YAAY,aAAa,CAACN,EAAG,KAAK,CAACM,YAAY,aAAa,CAACV,EAAIY,GAAG,sCAAsCR,EAAG,MAAM,CAACM,YAAY,YAAY,CAACN,EAAG,qBAAqB,CAACE,MAAM,CAAC,KAAO,aAAa,MAAQ,YAAYU,YAAYhB,EAAIiB,GAAG,CAAC,CAACC,IAAI,UAAUC,GAAG,SAASJ,GAC1iB,IAAIoF,EAASpF,EAAIoF,OACbC,EAASrF,EAAIqF,OACjB,MAAO,CAAChG,EAAG,WAAW,CAACE,MAAM,CAAC,MAAQ,cAAc,MAAQ8F,EAAS,oCAAsC,KAAK,WAAaD,GAAQxE,MAAM,CAACC,MAAO5B,EAAc,WAAE6B,SAAS,SAAUC,GAAM9B,EAAIkpJ,WAAWpnJ,GAAKE,WAAW,wBAAwB,GAAG5B,EAAG,MAAM,CAACM,YAAY,YAAY,CAACN,EAAG,qBAAqB,CAACE,MAAM,CAAC,KAAO,eAAe,MAAQ,YAAYU,YAAYhB,EAAIiB,GAAG,CAAC,CAACC,IAAI,UAAUC,GAAG,SAASJ,GAClZ,IAAIoF,EAASpF,EAAIoF,OACbC,EAASrF,EAAIqF,OACjB,MAAO,CAAChG,EAAG,WAAW,CAACE,MAAM,CAAC,MAAQ,YAAY,KAAO,gBAAgB,MAAQ8F,EAAS,sCAAwC,KAAK,WAAaD,GAAQxE,MAAM,CAACC,MAAO5B,EAAY,SAAE6B,SAAS,SAAUC,GAAM9B,EAAImpJ,SAASrnJ,GAAKE,WAAW,sBAAsB,GAAG5B,EAAG,MAAM,CAACM,YAAY,YAAY,CAACN,EAAG,qBAAqB,CAACE,MAAM,CAAC,KAAO,OAAO,MAAQ,YAAYU,YAAYhB,EAAIiB,GAAG,CAAC,CAACC,IAAI,UAAUC,GAAG,SAASJ,GAC3Z,IAAIoF,EAASpF,EAAIoF,OACbC,EAASrF,EAAIqF,OACjB,MAAO,CAAChG,EAAG,WAAW,CAACE,MAAM,CAAC,MAAQ,OAAO,MAAQ8F,EAAS,6BAA+B,KAAK,WAAaD,EAAO,KAAO,QAAQxE,MAAM,CAACC,MAAO5B,EAAQ,KAAE6B,SAAS,SAAUC,GAAM9B,EAAIopJ,KAAKtnJ,GAAKE,WAAW,kBAAkB,GAAG5B,EAAG,MAAM,CAACM,YAAY,YAAY,CAACN,EAAG,QAAQ,CAACJ,EAAIY,GAAG,aAAaR,EAAG,qBAAqB,CAACE,MAAM,CAAC,KAAO,UAAU,MAAQ,YAAYU,YAAYhB,EAAIiB,GAAG,CAAC,CAACC,IAAI,UAAUC,GAAG,SAASJ,GAC3Z,IAAIqF,EAASrF,EAAIqF,OACjB,MAAO,CAAChG,EAAG,WAAW,CAACE,MAAM,CAAC,MAAQ8F,EAAS,gCAAkC,OAAO,CAAChG,EAAG,YAAY,CAACM,YAAY,iBAAiBJ,MAAM,CAAC,KAAO,WAAWqB,MAAM,CAACC,MAAO5B,EAAW,QAAE6B,SAAS,SAAUC,GAAM9B,EAAIqpJ,QAAQvnJ,GAAKE,WAAW,YAAYhC,EAAIuB,GAAIvB,EAAkB,gBAAE,SAASqpJ,GAAS,OAAOjpJ,EAAG,YAAY,CAACc,IAAImoJ,EAAQ3oJ,YAAY,iBAAiBJ,MAAM,CAAC,MAAQ+oJ,EAAQ,MAAQA,QAAa,IAAI,WAAW,UACha,EAAkB,G,kEC2EtB,kCACA,+BAEA,OACE5mJ,YAAF,sBACA,SADA,sBAEA,SAFA,QAIEC,KALF,WAMI,MAAO,CACLwmJ,WAAY,GACZC,SAAU,GACVC,KAAM,GACNC,QAAS,GACTx1B,OAAQ,KACRy1B,eAAgB,CAAC,MAAO,MAAO,QAAS,OAAQ,OAAQ,SAG5DzlJ,QAAS,CACP2kJ,SADJ,WACA,WACM,OAAOvoJ,KAAKwG,MAAMoiJ,KAAKL,WAAWv+C,MAAK,SAA7C,GACQ,GAAKlwE,EAIL,OADA,EAAR,wBACeA,QChHiX,ICO5X,EAAY,eACd,EACA,EACA,GACA,EACA,KACA,KACA,MAIa,I,6BCmCf,GACEr3B,KADF,WAEI,MAAO,CACL6mJ,YAAa,KAGjB9mJ,WAAY,CACV+mJ,UAAJ,EACIC,WAAJ,EACIC,UAAJ,EACIC,aAAJ,OACIC,UAAJ,QAEE/lJ,QAAS,CACPwkJ,aADJ,SACA,GACM,OAAOpoJ,KAAKwG,MAAM1F,GAAKynJ,YAEzBF,gBAJJ,SAIA,KACMroJ,KAAKspJ,YAAc,OAAzB,OAAyB,CAAzB,wCAEIhB,eAPJ,WAQM,EAAN,QACQ7kJ,MAAO,YACP8nC,KAAM,iCACNrpC,KAAM,UACN0iJ,mBAAoB,kBACpBE,gBAAgB,OC/EsV,ICO1W,EAAY,eACd,EACAhlJ,EACAyC,GACA,EACA,KACA,KACA,MAIa,e,sEClBf,W,oCCAA,W,mDCAMqnJ,E,wBAWJ,aAAsB,IAAV1lJ,EAAU,uDAAJ,GAAI,mCATJ,GASI,gBARb,IAQa,qBAPR,IAOQ,uBANN,IAMM,2BALF,IAKE,qBAJR,GAIQ,0BAHH,GAGG,gBAFb,MAGPE,OAAOC,OAAOrE,KAAMkE,G,YAIxBI,EAAOC,QAAUqlJ,G,6DCdjB,IAAIC,EAAS,WACT9xI,EAAO,GACP+xI,EAAO,EACPC,EAAO,GACPC,EAAO,GACPC,EAAO,IACPC,EAAc,GACdC,EAAW,IACXC,EAAY,IACZC,EAAgB,eAChBC,EAAkB,yBAClBC,EAAiB,kDACjBC,EAAgBzyI,EAAO+xI,EACvB74I,EAAQC,KAAKD,MACbw5I,EAAqBnlJ,OAAOolJ,aAS5BC,EAAa,SAAU/0I,GACzB,IAAI8E,EAAS,GACTkwI,EAAU,EACVl/I,EAASkK,EAAOlK,OACpB,MAAOk/I,EAAUl/I,EAAQ,CACvB,IAAI/J,EAAQiU,EAAOi1I,WAAWD,KAC9B,GAAIjpJ,GAAS,OAAUA,GAAS,OAAUipJ,EAAUl/I,EAAQ,CAE1D,IAAIi9D,EAAQ/yD,EAAOi1I,WAAWD,KACN,QAAX,MAARjiF,GACHjuD,EAAOpN,OAAe,KAAR3L,IAAkB,KAAe,KAARgnE,GAAiB,QAIxDjuD,EAAOpN,KAAK3L,GACZipJ,UAGFlwI,EAAOpN,KAAK3L,GAGhB,OAAO+Y,GAMLowI,EAAe,SAAUC,GAG3B,OAAOA,EAAQ,GAAK,IAAMA,EAAQ,KAOhCC,EAAQ,SAAU1sI,EAAO2sI,EAAWC,GACtC,IAAIlsI,EAAI,EAGR,IAFAV,EAAQ4sI,EAAYj6I,EAAMqN,EAAQ2rI,GAAQ3rI,GAAS,EACnDA,GAASrN,EAAMqN,EAAQ2sI,GAChB3sI,EAAQksI,EAAgBT,GAAQ,EAAG/qI,GAAKjH,EAC7CuG,EAAQrN,EAAMqN,EAAQksI,GAExB,OAAOv5I,EAAM+N,GAAKwrI,EAAgB,GAAKlsI,GAASA,EAAQ0rI,KAQtDmB,EAAS,SAAU/4I,GACrB,IAAIsI,EAAS,GAGbtI,EAAQu4I,EAAWv4I,GAGnB,IAMIsG,EAAG0yI,EANHC,EAAcj5I,EAAM1G,OAGpByQ,EAAIguI,EACJ7rI,EAAQ,EACRgtI,EAAOpB,EAIX,IAAKxxI,EAAI,EAAGA,EAAItG,EAAM1G,OAAQgN,IAC5B0yI,EAAeh5I,EAAMsG,GACjB0yI,EAAe,KACjB1wI,EAAOpN,KAAKm9I,EAAmBW,IAInC,IAAIG,EAAc7wI,EAAOhP,OACrB8/I,EAAiBD,EAGjBA,GACF7wI,EAAOpN,KAAK88I,GAId,MAAOoB,EAAiBH,EAAa,CAEnC,IAAItsI,EAAI8qI,EACR,IAAKnxI,EAAI,EAAGA,EAAItG,EAAM1G,OAAQgN,IAC5B0yI,EAAeh5I,EAAMsG,GACjB0yI,GAAgBjvI,GAAKivI,EAAersI,IACtCA,EAAIqsI,GAKR,IAAIK,EAAwBD,EAAiB,EAC7C,GAAIzsI,EAAI5C,EAAIlL,GAAO44I,EAASvrI,GAASmtI,GACnC,MAAMC,WAAWnB,GAMnB,IAHAjsI,IAAUS,EAAI5C,GAAKsvI,EACnBtvI,EAAI4C,EAECrG,EAAI,EAAGA,EAAItG,EAAM1G,OAAQgN,IAAK,CAEjC,GADA0yI,EAAeh5I,EAAMsG,GACjB0yI,EAAejvI,KAAOmC,EAAQurI,EAChC,MAAM6B,WAAWnB,GAEnB,GAAIa,GAAgBjvI,EAAG,CAGrB,IADA,IAAI+D,EAAI5B,EACCU,EAAIjH,GAA0BiH,GAAKjH,EAAM,CAChD,IAAIoI,EAAInB,GAAKssI,EAAOxB,EAAQ9qI,GAAKssI,EAAOvB,EAAOA,EAAO/qI,EAAIssI,EAC1D,GAAIprI,EAAIC,EAAG,MACX,IAAIwrI,EAAUzrI,EAAIC,EACdyrI,EAAa7zI,EAAOoI,EACxBzF,EAAOpN,KAAKm9I,EAAmBK,EAAa3qI,EAAIwrI,EAAUC,KAC1D1rI,EAAIjP,EAAM06I,EAAUC,GAGtBlxI,EAAOpN,KAAKm9I,EAAmBK,EAAa5qI,KAC5CorI,EAAON,EAAM1sI,EAAOmtI,EAAuBD,GAAkBD,GAC7DjtI,EAAQ,IACNktI,KAIJltI,IACAnC,EAEJ,OAAOzB,EAAOlG,KAAK,KAGrBlQ,EAAOC,QAAU,SAAU6N,GACzB,IAEIsG,EAAGvK,EAFH09I,EAAU,GACVlvI,EAASvK,EAAMkE,cAAcmC,QAAQ6xI,EAAiB,KAAUl3I,MAAM,KAE1E,IAAKsF,EAAI,EAAGA,EAAIiE,EAAOjR,OAAQgN,IAC7BvK,EAAQwO,EAAOjE,GACfmzI,EAAQv+I,KAAK+8I,EAAc53I,KAAKtE,GAAS,OAASg9I,EAAOh9I,GAASA,GAEpE,OAAO09I,EAAQr3I,KAAK,O,2CCtKtB,IAAI1U,EAAS,WAAa,IAAIC,EAAIC,KAASC,EAAGF,EAAIG,eAAmBC,EAAGJ,EAAIK,MAAMD,IAAIF,EAAG,OAAOE,EAAG,MAAM,CAACM,YAAY,OAAO,CAACN,EAAG,MAAM,CAACM,YAAY,UAAU,CAACN,EAAG,MAAM,CAACM,YAAY,QAAQ,CAACN,EAAG,MAAM,CAACM,YAAY,eAAe,CAACN,EAAG,KAAK,CAACM,YAAY,cAAc,CAACV,EAAIY,GAAG,IAAIZ,EAAIa,GAAGb,EAAIc,GAAG,2CAA2C,SAASV,EAAG,MAAM,CAACM,YAAY,aAAa,CAACN,EAAG,qBAAqB,CAACW,IAAI,UAAUC,YAAYhB,EAAIiB,GAAG,CAAC,CAACC,IAAI,UAAUC,GAAG,SAASJ,GAC/c,IAAIK,EAAeL,EAAIK,aACvB,MAAO,CAAChB,EAAG,OAAO,CAACI,GAAG,CAAC,OAAS,SAASC,GAAgC,OAAxBA,EAAOY,iBAAwBD,EAAapB,EAAIolJ,WAAW,CAAChlJ,EAAG,MAAM,CAACM,YAAY,OAAO,CAACN,EAAG,MAAM,CAACM,YAAY,SAAS,CAACV,EAAIY,GAAG,IAAIZ,EAAIa,GAAGb,EAAIc,GAAG,4CAA4C,KAAKV,EAAG,WAAW,CAACA,EAAG,WAAW,CAACE,MAAM,CAAC,KAAO,OAAO,UAAY,GAAG,YAAcN,EAAIc,GAAG,2CAA2C,gBAAgB,cAAca,MAAM,CAACC,MAAO5B,EAAI+rJ,QAAuB,gBAAElqJ,SAAS,SAAUC,GAAM9B,EAAI+B,KAAK/B,EAAI+rJ,QAAS,kBAAmBjqJ,IAAME,WAAW,8BAA8B,IAAI,GAAG5B,EAAG,MAAM,CAACM,YAAY,SAAS,CAACV,EAAIY,GAAG,IAAIZ,EAAIa,GAAGb,EAAIc,GAAG,2CAA2C,KAAKV,EAAG,WAAW,CAACA,EAAG,WAAW,CAACE,MAAM,CAAC,KAAO,OAAO,UAAY,GAAG,YAAcN,EAAIc,GAAG,2CAA2C,gBAAgB,cAAca,MAAM,CAACC,MAAO5B,EAAI+rJ,QAAyB,kBAAElqJ,SAAS,SAAUC,GAAM9B,EAAI+B,KAAK/B,EAAI+rJ,QAAS,oBAAqBjqJ,IAAME,WAAW,gCAAgC,IAAI,GAAG5B,EAAG,MAAM,CAACM,YAAY,SAAS,CAACV,EAAIY,GAAG,IAAIZ,EAAIa,GAAGb,EAAIc,GAAG,6CAA6C,KAAKV,EAAG,WAAW,CAACA,EAAG,WAAW,CAACE,MAAM,CAAC,KAAO,OAAO,UAAY,GAAG,YAAcN,EAAIc,GAAG,4CAA4C,gBAAgB,cAAca,MAAM,CAACC,MAAO5B,EAAI+rJ,QAAyB,kBAAElqJ,SAAS,SAAUC,GAAM9B,EAAI+B,KAAK/B,EAAI+rJ,QAAS,oBAAqBjqJ,IAAME,WAAW,gCAAgC,IAAI,KAAK5B,EAAG,MAAM,CAACM,YAAY,OAAO,CAACN,EAAG,MAAM,CAACM,YAAY,SAAS,CAACV,EAAIY,GAAG,IAAIZ,EAAIa,GAAGb,EAAIc,GAAG,kDAAkD,KAAKV,EAAG,WAAW,CAACA,EAAG,WAAW,CAACE,MAAM,CAAC,KAAO,OAAO,UAAY,GAAG,YAAcN,EAAIc,GAAG,iDAAiD,gBAAgB,cAAca,MAAM,CAACC,MAAO5B,EAAI+rJ,QAA2B,oBAAElqJ,SAAS,SAAUC,GAAM9B,EAAI+B,KAAK/B,EAAI+rJ,QAAS,sBAAuBjqJ,IAAME,WAAW,kCAAkC,IAAI,GAAG5B,EAAG,MAAM,CAACM,YAAY,SAAS,CAACV,EAAIY,GAAG,IAAIZ,EAAIa,GAAGb,EAAIc,GAAG,gDAAgD,KAAKV,EAAG,WAAW,CAACA,EAAG,iBAAiB,CAACE,MAAM,CAAC,KAAO,OAAO,YAAc,eAAeqB,MAAM,CAACC,MAAO5B,EAAI+rJ,QAAqB,cAAElqJ,SAAS,SAAUC,GAAM9B,EAAI+B,KAAK/B,EAAI+rJ,QAAS,gBAAiBjqJ,IAAME,WAAW,4BAA4B,IAAI,GAAG5B,EAAG,MAAM,CAACM,YAAY,SAAS,CAACV,EAAIY,GAAG,IAAIZ,EAAIa,GAAGb,EAAIc,GAAG,gDAAgD,KAAKV,EAAG,WAAW,CAACA,EAAG,iBAAiB,CAACE,MAAM,CAAC,KAAO,OAAO,YAAc,eAAeqB,MAAM,CAACC,MAAO5B,EAAI+rJ,QAAqB,cAAElqJ,SAAS,SAAUC,GAAM9B,EAAI+B,KAAK/B,EAAI+rJ,QAAS,gBAAiBjqJ,IAAME,WAAW,4BAA4B,IAAI,KAAK5B,EAAG,MAAM,CAACM,YAAY,aAAauB,YAAY,CAAC,aAAa,OAAO,cAAc,OAAO,aAAa,UAAU3B,MAAM,CAAC,KAAO,UAAUK,KAAK,UAAU,CAACP,EAAG,WAAW,CAACE,MAAM,CAAC,cAAc,SAAS,KAAO,YAAY,CAACN,EAAIY,GAAGZ,EAAIa,GAAGb,EAAIc,GAAG,0BAA0B,aAAa,UACz1F0B,EAAkB,G,oCCgItB,GACE8M,KAAM,0BACN5M,KAFF,WAGI,MAAO,CACLqpJ,QAAS,CACPC,gBAAiB,GACjBC,kBAAmB,GACnBC,kBAAmB,GACnBC,oBAAqB,GACrBC,cAAe,GACfC,cAAe,MAIrB9oJ,QAdF,aAgBEM,QAAS,CACP,OADJ,WACA,yKACA,cACA,yBACA,KACA,0IACA,uBAGA,GACA,uCACA,wCACA,2CACA,2CACA,oCACA,oCAdA,SAiBA,2DAjBA,OAiBA,EAjBA,OAkBA,mCAEA,GACA,mBACA,mCAEA,mDAEA,gBA1BA,gDCpJ+X,I,YCO3XI,EAAY,eACd,EACAlE,EACAyC,GACA,EACA,KACA,WACA,MAIa,aAAAyB,E,2CCTf,SAASsmB,EAAQ3oB,GACf,OAAQqL,MAAMsd,QAEVtd,MAAMsd,QAAQ3oB,GADI,mBAAlB0qJ,EAAO1qJ,GAKb,MAAM2qJ,EAAW,IACjB,SAASC,EAAa5qJ,GAEpB,GAAoB,iBAATA,EACT,OAAOA,EAET,IAAIoD,EAASpD,EAAQ,GACrB,MAAiB,KAAVoD,GAAiB,EAAIpD,IAAU2qJ,EAAW,KAAOvnJ,EAG1D,SAAS0P,EAAS9S,GAChB,OAAgB,MAATA,EAAgB,GAAK4qJ,EAAa5qJ,GAG3C,SAAS6qJ,EAAS7qJ,GAChB,MAAwB,kBAAVA,EAGhB,SAASm2B,EAASn2B,GAChB,MAAwB,kBAAVA,EAIhB,SAAS8qJ,EAAU9qJ,GACjB,OACY,IAAVA,IACU,IAAVA,GACC+qJ,EAAa/qJ,IAA2B,oBAAjB0qJ,EAAO1qJ,GAInC,SAAS6oB,EAAS7oB,GAChB,MAAwB,kBAAVA,EAIhB,SAAS+qJ,EAAa/qJ,GACpB,OAAO6oB,EAAS7oB,IAAoB,OAAVA,EAG5B,SAASgrJ,EAAUhrJ,GACjB,YAAiBwC,IAAVxC,GAAiC,OAAVA,EAGhC,SAASirJ,EAAQjrJ,GACf,OAAQA,EAAMq2E,OAAOtsE,OAKvB,SAAS2gJ,EAAO1qJ,GACd,OAAgB,MAATA,OACOwC,IAAVxC,EACE,qBACA,gBACFyC,OAAOqW,UAAUhG,SAAS+E,KAAK7X,GAGrC,MAEMkrJ,EAAuB,yBAEvBC,EAAwC7rJ,GAC5C,yBAAyBA,EAErB8rJ,EAA4B1uI,GAChC,iCAAiCA,KAE7B2uI,EAAwB39I,GAAS,WAAWA,oBAE5C49I,EAA4BhsJ,GAChC,6BAA6BA,gCAEzBisJ,EAAS9oJ,OAAOqW,UAAU2B,eAEhC,MAAM+wI,EACJ,YAAY9qI,GACVriB,KAAKotJ,MAAQ,GACbptJ,KAAKqtJ,QAAU,GAEf,IAAIC,EAAc,EAElBjrI,EAAKpd,QAAShE,IACZ,IAAIiD,EAAMqpJ,EAAUtsJ,GAEpBqsJ,GAAeppJ,EAAI4kB,OAEnB9oB,KAAKotJ,MAAM9/I,KAAKpJ,GAChBlE,KAAKqtJ,QAAQnpJ,EAAIwI,IAAMxI,EAEvBopJ,GAAeppJ,EAAI4kB,SAIrB9oB,KAAKotJ,MAAMnoJ,QAAShE,IAClBA,EAAI6nB,QAAUwkI,IAGlB,IAAIE,GACF,OAAOxtJ,KAAKqtJ,QAAQG,GAEtB,OACE,OAAOxtJ,KAAKotJ,MAEd,SACE,OAAOxkD,KAAKC,UAAU7oG,KAAKotJ,QAI/B,SAASG,EAAUtsJ,GACjB,IAAIiV,EAAO,KACPxJ,EAAK,KACLyf,EAAM,KACNrD,EAAS,EAEb,GAAI0jI,EAASvrJ,IAAQqpB,EAAQrpB,GAC3BkrB,EAAMlrB,EACNiV,EAAOu3I,EAAcxsJ,GACrByL,EAAKghJ,EAAYzsJ,OACZ,CACL,IAAKisJ,EAAO1zI,KAAKvY,EAAK,QACpB,MAAM,IAAI2M,MAAMo/I,EAAqB,SAGvC,MAAM39I,EAAOpO,EAAIoO,KAGjB,GAFA8c,EAAM9c,EAEF69I,EAAO1zI,KAAKvY,EAAK,YACnB6nB,EAAS7nB,EAAI6nB,OAETA,GAAU,GACZ,MAAM,IAAIlb,MAAMq/I,EAAyB59I,IAI7C6G,EAAOu3I,EAAcp+I,GACrB3C,EAAKghJ,EAAYr+I,GAGnB,MAAO,CAAE6G,OAAMxJ,KAAIoc,SAAQqD,OAG7B,SAASshI,EAAcxsJ,GACrB,OAAOqpB,EAAQrpB,GAAOA,EAAMA,EAAImS,MAAM,KAGxC,SAASs6I,EAAYzsJ,GACnB,OAAOqpB,EAAQrpB,GAAOA,EAAIuT,KAAK,KAAOvT,EAGxC,SAASoE,EAAInB,EAAKgS,GAChB,IAAI40B,EAAO,GACPssB,GAAM,EAEV,MAAMu2F,EAAU,CAACzpJ,EAAKgS,EAAM/T,KAC1B,GAAKwqJ,EAAUzoJ,GAGf,GAAKgS,EAAK/T,GAGH,CACL,IAAIlB,EAAMiV,EAAK/T,GAEf,MAAMR,EAAQuC,EAAIjD,GAElB,IAAK0rJ,EAAUhrJ,GACb,OAKF,GACEQ,IAAU+T,EAAKxK,OAAS,IACvB8gJ,EAAS7qJ,IAAUm2B,EAASn2B,IAAU8qJ,EAAU9qJ,IAEjDmpC,EAAKx9B,KAAKmH,EAAS9S,SACd,GAAI2oB,EAAQ3oB,GAAQ,CACzBy1D,GAAM,EAEN,IAAK,IAAI1+C,EAAI,EAAG4J,EAAM3gB,EAAM+J,OAAQgN,EAAI4J,EAAK5J,GAAK,EAChDi1I,EAAQhsJ,EAAM+W,GAAIxC,EAAM/T,EAAQ,QAEzB+T,EAAKxK,QAEdiiJ,EAAQhsJ,EAAOuU,EAAM/T,EAAQ,QAzB/B2oC,EAAKx9B,KAAKpJ,IAiCd,OAFAypJ,EAAQzpJ,EAAKsoJ,EAASt2I,GAAQA,EAAK9C,MAAM,KAAO8C,EAAM,GAE/CkhD,EAAMtsB,EAAOA,EAAK,GAG3B,MAAM8iH,EAAe,CAInBC,gBAAgB,EAGhBC,gBAAgB,EAEhBC,mBAAoB,GAGhBC,EAAe,CAGnBC,iBAAiB,EAEjBC,cAAc,EAEd7rI,KAAM,GAEN8rI,YAAY,EAEZC,OAAQ,CAAC7uI,EAAGpB,IACVoB,EAAE8uI,QAAUlwI,EAAEkwI,MAAS9uI,EAAE4+B,IAAMhgC,EAAEggC,KAAO,EAAI,EAAK5+B,EAAE8uI,MAAQlwI,EAAEkwI,OAAS,EAAI,GAGxEC,EAAe,CAEnB5hC,SAAU,EAGV6hC,UAAW,GAMXlvI,SAAU,KAGNmvI,EAAkB,CAEtBC,mBAAmB,EAGnBC,MAAOrpJ,EAIPspJ,gBAAgB,EAIhBC,iBAAiB,GAGnB,IAAIC,EAAS,IACRb,KACAJ,KACAU,KACAE,GAGL,MAAMM,EAAQ,SAId,SAASC,EAAKC,EAAW,GACvB,MAAMvwG,EAAQ,IAAIwwG,IAElB,MAAO,CACL,IAAIttJ,GACF,MAAMutJ,EAAYvtJ,EAAMggB,MAAMmtI,GAAOpjJ,OAErC,GAAI+yC,EAAMtuC,IAAI++I,GACZ,OAAOzwG,EAAMp5C,IAAI6pJ,GAGnB,MAAM/yI,EAAI4I,YAAY,EAAI7T,KAAK6P,KAAKmuI,IAAYn4F,QAAQi4F,IAIxD,OAFAvwG,EAAM3tC,IAAIo+I,EAAW/yI,GAEdA,GAET,QACEsiC,EAAM5uB,UAKZ,MAAMs/H,EACJ,aAAY,MAAET,EAAQG,EAAOH,OAAU,IACrC1uJ,KAAK+uJ,KAAOA,EAAK,GACjB/uJ,KAAK0uJ,MAAQA,EACb1uJ,KAAKovJ,WAAY,EAEjBpvJ,KAAKqvJ,kBAEP,WAAWC,EAAO,IAChBtvJ,KAAKsvJ,KAAOA,EAEd,gBAAgBC,EAAU,IACxBvvJ,KAAKuvJ,QAAUA,EAEjB,QAAQltI,EAAO,IACbriB,KAAKqiB,KAAOA,EACZriB,KAAKwvJ,SAAW,GAChBntI,EAAKpd,QAAQ,CAAChE,EAAKk9C,KACjBn+C,KAAKwvJ,SAASvuJ,EAAIyL,IAAMyxC,IAG5B,UACMn+C,KAAKovJ,WAAcpvJ,KAAKsvJ,KAAK5jJ,SAIjC1L,KAAKovJ,WAAY,EAGb5C,EAASxsJ,KAAKsvJ,KAAK,IACrBtvJ,KAAKsvJ,KAAKrqJ,QAAQ,CAACwqJ,EAAKC,KACtB1vJ,KAAK2vJ,WAAWF,EAAKC,KAIvB1vJ,KAAKsvJ,KAAKrqJ,QAAQ,CAACwqJ,EAAKC,KACtB1vJ,KAAK4vJ,WAAWH,EAAKC,KAIzB1vJ,KAAK+uJ,KAAKl/H,SAGZ,IAAI4/H,GACF,MAAMtxG,EAAMn+C,KAAK+wB,OAEby7H,EAASiD,GACXzvJ,KAAK2vJ,WAAWF,EAAKtxG,GAErBn+C,KAAK4vJ,WAAWH,EAAKtxG,GAIzB,SAASA,GACPn+C,KAAKuvJ,QAAQvgJ,OAAOmvC,EAAK,GAGzB,IAAK,IAAIzlC,EAAIylC,EAAK77B,EAAMtiB,KAAK+wB,OAAQrY,EAAI4J,EAAK5J,GAAK,EACjD1Y,KAAKuvJ,QAAQ72I,GAAGA,GAAK,EAGzB,uBAAuB5S,EAAM0nJ,GAC3B,OAAO1nJ,EAAK9F,KAAKwvJ,SAAShC,IAE5B,OACE,OAAOxtJ,KAAKuvJ,QAAQ7jJ,OAEtB,WAAW+jJ,EAAKC,GACd,IAAK/C,EAAU8C,IAAQ7C,EAAQ6C,GAC7B,OAGF,IAAII,EAAS,CACXnxI,EAAG+wI,EACH/2I,EAAGg3I,EACHvzI,EAAGnc,KAAK+uJ,KAAK1pJ,IAAIoqJ,IAGnBzvJ,KAAKuvJ,QAAQjiJ,KAAKuiJ,GAEpB,WAAWJ,EAAKC,GACd,IAAIG,EAAS,CAAEn3I,EAAGg3I,EAAU9/I,EAAG,IAG/B5P,KAAKqiB,KAAKpd,QAAQ,CAAChE,EAAK6uJ,KAEtB,IAAInuJ,EAAQ3B,KAAK0uJ,MAAMe,EAAKxuJ,EAAIiV,MAEhC,GAAKy2I,EAAUhrJ,GAIf,GAAI2oB,EAAQ3oB,GAAQ,CAClB,IAAIouJ,EAAa,GACjB,MAAM9oH,EAAQ,CAAC,CAAE+oH,gBAAiB,EAAGruJ,UAErC,MAAOslC,EAAMv7B,OAAQ,CACnB,MAAM,eAAEskJ,EAAc,MAAEruJ,GAAUslC,EAAM5zB,MAExC,GAAKs5I,EAAUhrJ,GAIf,GAAI6qJ,EAAS7qJ,KAAWirJ,EAAQjrJ,GAAQ,CACtC,IAAIsuJ,EAAY,CACdvxI,EAAG/c,EACH+W,EAAGs3I,EACH7zI,EAAGnc,KAAK+uJ,KAAK1pJ,IAAI1D,IAGnBouJ,EAAWziJ,KAAK2iJ,QACP3lI,EAAQ3oB,IACjBA,EAAMsD,QAAQ,CAACa,EAAMkZ,KACnBioB,EAAM35B,KAAK,CACT0iJ,eAAgBhxI,EAChBrd,MAAOmE,MAKf+pJ,EAAOjgJ,EAAEkgJ,GAAYC,OAChB,IAAKnD,EAAQjrJ,GAAQ,CAC1B,IAAIsuJ,EAAY,CACdvxI,EAAG/c,EACHwa,EAAGnc,KAAK+uJ,KAAK1pJ,IAAI1D,IAGnBkuJ,EAAOjgJ,EAAEkgJ,GAAYG,KAIzBjwJ,KAAKuvJ,QAAQjiJ,KAAKuiJ,GAEpB,SACE,MAAO,CACLxtI,KAAMriB,KAAKqiB,KACXktI,QAASvvJ,KAAKuvJ,UAKpB,SAASW,EAAY7tI,EAAMitI,GAAM,MAAEZ,EAAQG,EAAOH,OAAU,IAC1D,MAAMyB,EAAU,IAAIhB,EAAU,CAAET,UAIhC,OAHAyB,EAAQC,QAAQ/tI,EAAKhf,IAAIkqJ,IACzB4C,EAAQE,WAAWf,GACnBa,EAAQ5kI,SACD4kI,EAGT,SAASG,EAAW7tJ,GAAM,MAAEisJ,EAAQG,EAAOH,OAAU,IACnD,MAAM,KAAErsI,EAAI,QAAEktI,GAAY9sJ,EACpB0tJ,EAAU,IAAIhB,EAAU,CAAET,UAGhC,OAFAyB,EAAQC,QAAQ/tI,GAChB8tI,EAAQd,gBAAgBE,GACjBY,EAGT,SAASI,EAAiBxrJ,EAAQtC,GAChC,MAAMoxB,EAAU9uB,EAAO8uB,QACvBpxB,EAAKoxB,QAAU,GAEV84H,EAAU94H,IAIfA,EAAQ5uB,QAAS0c,IACf,IAAKgrI,EAAUhrI,EAAM67G,WAAa77G,EAAM67G,QAAQ9xH,OAC9C,OAGF,MAAM,QAAE8xH,EAAO,MAAE77H,GAAUggB,EAE3B,IAAIzd,EAAM,CACRs5H,UACA77H,SAGEggB,EAAM1gB,MACRiD,EAAIjD,IAAM0gB,EAAM1gB,IAAIkrB,KAGlBxK,EAAMw8B,KAAO,IACfj6C,EAAIssJ,SAAW7uI,EAAMw8B,KAGvB17C,EAAKoxB,QAAQvmB,KAAKpJ,KAItB,SAASusJ,EAAe1rJ,EAAQtC,GAC9BA,EAAK4rJ,MAAQtpJ,EAAOspJ,MAGtB,SAASqC,EACPC,GACA,OACEC,EAAS,EAAC,gBACVC,EAAkB,EAAC,iBACnBC,EAAmB,EAAC,SACpBzxI,EAAWwvI,EAAOxvI,SAAQ,eAC1BsvI,EAAiBE,EAAOF,gBACtB,IAEJ,MAAMoC,EAAWH,EAASD,EAAQjlJ,OAElC,GAAIijJ,EACF,OAAOoC,EAGT,MAAMC,EAAY9/I,KAAK8xB,IAAI8tH,EAAmBD,GAE9C,OAAKxxI,EAKE0xI,EAAWC,EAAY3xI,EAHrB2xI,EAAY,EAAMD,EAM7B,SAASE,EACPC,EAAY,GACZnD,EAAqBc,EAAOd,oBAE5B,IAAIvwB,EAAU,GACV5mG,GAAS,EACT6P,GAAO,EACP/tB,EAAI,EAER,IAAK,IAAI4J,EAAM4uI,EAAUxlJ,OAAQgN,EAAI4J,EAAK5J,GAAK,EAAG,CAChD,IAAIiJ,EAAQuvI,EAAUx4I,GAClBiJ,IAAoB,IAAXiV,EACXA,EAAQle,EACEiJ,IAAoB,IAAXiV,IACnB6P,EAAM/tB,EAAI,EACN+tB,EAAM7P,EAAQ,GAAKm3H,GACrBvwB,EAAQlwH,KAAK,CAACspB,EAAO6P,IAEvB7P,GAAS,GASb,OAJIs6H,EAAUx4I,EAAI,IAAMA,EAAIke,GAASm3H,GACnCvwB,EAAQlwH,KAAK,CAACspB,EAAOle,EAAI,IAGpB8kH,EAIT,MAAM2zB,EAAW,GAEjB,SAAS/2I,EACPmxB,EACAolH,EACAS,GACA,SACE1kC,EAAWmiC,EAAOniC,SAAQ,SAC1BrtG,EAAWwvI,EAAOxvI,SAAQ,UAC1BkvI,EAAYM,EAAON,UAAS,eAC5BT,EAAiBe,EAAOf,eAAc,mBACtCC,EAAqBc,EAAOd,mBAAkB,eAC9CF,EAAiBgB,EAAOhB,eAAc,eACtCc,EAAiBE,EAAOF,gBACtB,IAEJ,GAAIgC,EAAQjlJ,OAASylJ,EACnB,MAAM,IAAIvjJ,MAAMm/I,EAAyBoE,IAG3C,MAAME,EAAaV,EAAQjlJ,OAErB4lJ,EAAU/lH,EAAK7/B,OAEfolJ,EAAmB5/I,KAAKmN,IAAI,EAAGnN,KAAKkN,IAAIsuG,EAAU4kC,IAExD,IAAIC,EAAmBhD,EAEnBiD,EAAeV,EAInB,MAAMW,EAAiB1D,EAAqB,GAAKF,EAE3C6D,EAAYD,EAAiBzkJ,MAAMskJ,GAAW,GAEpD,IAAInvJ,EAGJ,OAAQA,EAAQopC,EAAKthB,QAAQ0mI,EAASa,KAAkB,EAAG,CACzD,IAAInD,EAAQqC,EAAaC,EAAS,CAChCE,gBAAiB1uJ,EACjB2uJ,mBACAzxI,WACAsvI,mBAMF,GAHA4C,EAAmBrgJ,KAAKkN,IAAIiwI,EAAOkD,GACnCC,EAAervJ,EAAQkvJ,EAEnBI,EAAgB,CAClB,IAAI/4I,EAAI,EACR,MAAOA,EAAI24I,EACTK,EAAUvvJ,EAAQuW,GAAK,EACvBA,GAAK,GAMX84I,GAAgB,EAEhB,IAAIG,EAAa,GACbC,EAAa,EACbC,EAASR,EAAaC,EAE1B,MAAMQ,EAAO,GAAMT,EAAa,EAEhC,IAAK,IAAI34I,EAAI,EAAGA,EAAI24I,EAAY34I,GAAK,EAAG,CAItC,IAAIq5I,EAAS,EACTC,EAASH,EAEb,MAAOE,EAASC,EAAQ,CACtB,MAAM3D,EAAQqC,EAAaC,EAAS,CAClCC,OAAQl4I,EACRm4I,gBAAiBC,EAAmBkB,EACpClB,mBACAzxI,WACAsvI,mBAGEN,GAASkD,EACXQ,EAASC,EAETH,EAASG,EAGXA,EAAS9gJ,KAAKD,OAAO4gJ,EAASE,GAAU,EAAIA,GAI9CF,EAASG,EAET,IAAIp7H,EAAQ1lB,KAAKmN,IAAI,EAAGyyI,EAAmBkB,EAAS,GAChDC,EAASnE,EACTwD,EACApgJ,KAAKkN,IAAI0yI,EAAmBkB,EAAQV,GAAWD,EAG/Ca,EAASllJ,MAAMilJ,EAAS,GAE5BC,EAAOD,EAAS,IAAM,GAAKv5I,GAAK,EAEhC,IAAK,IAAIszB,EAAIimH,EAAQjmH,GAAKpV,EAAOoV,GAAK,EAAG,CACvC,IAAI6kH,EAAkB7kH,EAAI,EACtBmmH,EAAYf,EAAgB7lH,EAAKj5B,OAAOu+I,IAgB5C,GAdIY,IAEFC,EAAUb,MAAsBsB,GAIlCD,EAAOlmH,IAAOkmH,EAAOlmH,EAAI,IAAM,EAAK,GAAKmmH,EAGrCz5I,IACFw5I,EAAOlmH,KACH2lH,EAAW3lH,EAAI,GAAK2lH,EAAW3lH,KAAO,EAAK,EAAI2lH,EAAW3lH,EAAI,IAGhEkmH,EAAOlmH,GAAK8lH,IACdF,EAAalB,EAAaC,EAAS,CACjCC,OAAQl4I,EACRm4I,kBACAC,mBACAzxI,WACAsvI,mBAKEiD,GAAcL,GAAkB,CAMlC,GAJAA,EAAmBK,EACnBJ,EAAeX,EAGXW,GAAgBV,EAClB,MAIFl6H,EAAQ1lB,KAAKmN,IAAI,EAAG,EAAIyyI,EAAmBU,IAMjD,MAAMnD,EAAQqC,EAAaC,EAAS,CAClCC,OAAQl4I,EAAI,EACZm4I,gBAAiBC,EACjBA,mBACAzxI,WACAsvI,mBAGF,GAAIN,EAAQkD,EACV,MAGFI,EAAaO,EAGf,MAAMntJ,EAAS,CACbqtJ,QAASZ,GAAgB,EAEzBnD,MAAOn9I,KAAKmN,IAAI,KAAOuzI,IAGzB,GAAIH,EAAgB,CAClB,MAAMj0B,EAAUyzB,EAAqBS,EAAW3D,GAC3CvwB,EAAQ9xH,OAEFmiJ,IACT9oJ,EAAOy4H,QAAUA,GAFjBz4H,EAAOqtJ,SAAU,EAMrB,OAAOrtJ,EAGT,SAASstJ,EAAsB1B,GAC7B,IAAImB,EAAO,GAEX,IAAK,IAAIp5I,EAAI,EAAG4J,EAAMquI,EAAQjlJ,OAAQgN,EAAI4J,EAAK5J,GAAK,EAAG,CACrD,MAAM5E,EAAO68I,EAAQr+I,OAAOoG,GAC5Bo5I,EAAKh+I,IAASg+I,EAAKh+I,IAAS,GAAM,GAAMwO,EAAM5J,EAAI,EAGpD,OAAOo5I,EAGT,MAAMQ,EACJ,YACE3B,GACA,SACEjkC,EAAWmiC,EAAOniC,SAAQ,UAC1B6hC,EAAYM,EAAON,UAAS,SAC5BlvI,EAAWwvI,EAAOxvI,SAAQ,eAC1BwuI,EAAiBgB,EAAOhB,eAAc,eACtCC,EAAiBe,EAAOf,eAAc,mBACtCC,EAAqBc,EAAOd,mBAAkB,gBAC9CE,EAAkBY,EAAOZ,gBAAe,eACxCU,EAAiBE,EAAOF,gBACtB,IAiBJ,GAfA3uJ,KAAKyN,QAAU,CACbi/G,WACA6hC,YACAlvI,WACAwuI,iBACAC,iBACAC,qBACAE,kBACAU,kBAGF3uJ,KAAK2wJ,QAAU1C,EAAkB0C,EAAUA,EAAQr6I,cAEnDtW,KAAKuyJ,OAAS,IAETvyJ,KAAK2wJ,QAAQjlJ,OAChB,OAGF,MAAM8mJ,EAAW,CAAC7B,EAAS7gG,KACzB9vD,KAAKuyJ,OAAOjlJ,KAAK,CACfqjJ,UACA8B,SAAUJ,EAAsB1B,GAChC7gG,gBAIExtC,EAAMtiB,KAAK2wJ,QAAQjlJ,OAEzB,GAAI4W,EAAM6uI,EAAU,CAClB,IAAIz4I,EAAI,EACR,MAAMg6I,EAAYpwI,EAAM6uI,EAClB1qH,EAAMnkB,EAAMowI,EAElB,MAAOh6I,EAAI+tB,EACT+rH,EAASxyJ,KAAK2wJ,QAAQpmI,OAAO7R,EAAGy4I,GAAWz4I,GAC3CA,GAAKy4I,EAGP,GAAIuB,EAAW,CACb,MAAM5iG,EAAaxtC,EAAM6uI,EACzBqB,EAASxyJ,KAAK2wJ,QAAQpmI,OAAOulC,GAAaA,SAG5C0iG,EAASxyJ,KAAK2wJ,QAAS,GAI3B,SAASplH,GACP,MAAM,gBAAE0iH,EAAe,eAAEJ,GAAmB7tJ,KAAKyN,QAOjD,GALKwgJ,IACH1iH,EAAOA,EAAKj1B,eAIVtW,KAAK2wJ,UAAYplH,EAAM,CACzB,IAAIxmC,EAAS,CACXqtJ,SAAS,EACT/D,MAAO,GAOT,OAJIR,IACF9oJ,EAAOy4H,QAAU,CAAC,CAAC,EAAGjyF,EAAK7/B,OAAS,KAG/B3G,EAIT,MAAM,SACJ2nH,EAAQ,SACRrtG,EAAQ,UACRkvI,EAAS,eACTT,EAAc,mBACdC,EAAkB,eAClBY,GACE3uJ,KAAKyN,QAET,IAAIklJ,EAAa,GACbC,EAAa,EACbC,GAAa,EAEjB7yJ,KAAKuyJ,OAAOttJ,QAAQ,EAAG0rJ,UAAS8B,WAAU3iG,iBACxC,MAAM,QAAEsiG,EAAO,MAAE/D,EAAK,QAAE7wB,GAAYpjH,EAAOmxB,EAAMolH,EAAS8B,EAAU,CAClE/lC,SAAUA,EAAW58D,EACrBzwC,WACAkvI,YACAT,iBACAC,qBACAF,iBACAc,mBAGEyD,IACFS,GAAa,GAGfD,GAAcvE,EAEV+D,GAAW50B,IACbm1B,EAAa,IAAIA,KAAen1B,MAIpC,IAAIz4H,EAAS,CACXqtJ,QAASS,EACTxE,MAAOwE,EAAaD,EAAa5yJ,KAAKuyJ,OAAO7mJ,OAAS,GAOxD,OAJImnJ,GAAchF,IAChB9oJ,EAAOy4H,QAAUm1B,GAGZ5tJ,GAIX,MAAM+tJ,EACJ,YAAYnC,GACV3wJ,KAAK2wJ,QAAUA,EAEjB,oBAAoBA,GAClB,OAAOoC,EAASpC,EAAS3wJ,KAAKgzJ,YAEhC,qBAAqBrC,GACnB,OAAOoC,EAASpC,EAAS3wJ,KAAKizJ,aAEhC,WAGF,SAASF,EAASpC,EAASlrF,GACzB,MAAM5xC,EAAU88H,EAAQhvI,MAAM8jD,GAC9B,OAAO5xC,EAAUA,EAAQ,GAAK,KAKhC,MAAMq/H,UAAmBJ,EACvB,YAAYnC,GACVwC,MAAMxC,GAER,kBACE,MAAO,QAET,wBACE,MAAO,YAET,yBACE,MAAO,UAET,OAAOplH,GACL,MAAM6mH,EAAU7mH,IAASvrC,KAAK2wJ,QAE9B,MAAO,CACLyB,UACA/D,MAAO+D,EAAU,EAAI,EACrB50B,QAAS,CAAC,EAAGx9H,KAAK2wJ,QAAQjlJ,OAAS,KAOzC,MAAM0nJ,UAA0BN,EAC9B,YAAYnC,GACVwC,MAAMxC,GAER,kBACE,MAAO,gBAET,wBACE,MAAO,YAET,yBACE,MAAO,UAET,OAAOplH,GACL,MAAMppC,EAAQopC,EAAKthB,QAAQjqB,KAAK2wJ,SAC1ByB,GAAqB,IAAXjwJ,EAEhB,MAAO,CACLiwJ,UACA/D,MAAO+D,EAAU,EAAI,EACrB50B,QAAS,CAAC,EAAGjyF,EAAK7/B,OAAS,KAOjC,MAAM2nJ,UAAyBP,EAC7B,YAAYnC,GACVwC,MAAMxC,GAER,kBACE,MAAO,eAET,wBACE,MAAO,aAET,yBACE,MAAO,WAET,OAAOplH,GACL,MAAM6mH,EAAU7mH,EAAK+nH,WAAWtzJ,KAAK2wJ,SAErC,MAAO,CACLyB,UACA/D,MAAO+D,EAAU,EAAI,EACrB50B,QAAS,CAAC,EAAGx9H,KAAK2wJ,QAAQjlJ,OAAS,KAOzC,MAAM6nJ,UAAgCT,EACpC,YAAYnC,GACVwC,MAAMxC,GAER,kBACE,MAAO,uBAET,wBACE,MAAO,cAET,yBACE,MAAO,YAET,OAAOplH,GACL,MAAM6mH,GAAW7mH,EAAK+nH,WAAWtzJ,KAAK2wJ,SAEtC,MAAO,CACLyB,UACA/D,MAAO+D,EAAU,EAAI,EACrB50B,QAAS,CAAC,EAAGjyF,EAAK7/B,OAAS,KAOjC,MAAM8nJ,UAAyBV,EAC7B,YAAYnC,GACVwC,MAAMxC,GAER,kBACE,MAAO,eAET,wBACE,MAAO,aAET,yBACE,MAAO,WAET,OAAOplH,GACL,MAAM6mH,EAAU7mH,EAAKkoH,SAASzzJ,KAAK2wJ,SAEnC,MAAO,CACLyB,UACA/D,MAAO+D,EAAU,EAAI,EACrB50B,QAAS,CAACjyF,EAAK7/B,OAAS1L,KAAK2wJ,QAAQjlJ,OAAQ6/B,EAAK7/B,OAAS,KAOjE,MAAMgoJ,UAAgCZ,EACpC,YAAYnC,GACVwC,MAAMxC,GAER,kBACE,MAAO,uBAET,wBACE,MAAO,cAET,yBACE,MAAO,YAET,OAAOplH,GACL,MAAM6mH,GAAW7mH,EAAKkoH,SAASzzJ,KAAK2wJ,SACpC,MAAO,CACLyB,UACA/D,MAAO+D,EAAU,EAAI,EACrB50B,QAAS,CAAC,EAAGjyF,EAAK7/B,OAAS,KAKjC,MAAMioJ,UAAmBb,EACvB,YACEnC,GACA,SACEjkC,EAAWmiC,EAAOniC,SAAQ,UAC1B6hC,EAAYM,EAAON,UAAS,SAC5BlvI,EAAWwvI,EAAOxvI,SAAQ,eAC1BwuI,EAAiBgB,EAAOhB,eAAc,eACtCC,EAAiBe,EAAOf,eAAc,mBACtCC,EAAqBc,EAAOd,mBAAkB,gBAC9CE,EAAkBY,EAAOZ,gBAAe,eACxCU,EAAiBE,EAAOF,gBACtB,IAEJwE,MAAMxC,GACN3wJ,KAAK4zJ,aAAe,IAAItB,EAAY3B,EAAS,CAC3CjkC,WACA6hC,YACAlvI,WACAwuI,iBACAC,iBACAC,qBACAE,kBACAU,mBAGJ,kBACE,MAAO,QAET,wBACE,MAAO,WAET,yBACE,MAAO,SAET,OAAOpjH,GACL,OAAOvrC,KAAK4zJ,aAAaC,SAAStoH,IAMtC,MAAMuoH,UAAqBhB,EACzB,YAAYnC,GACVwC,MAAMxC,GAER,kBACE,MAAO,UAET,wBACE,MAAO,YAET,yBACE,MAAO,UAET,OAAOplH,GACL,IACIppC,EADAuqH,EAAW,EAGf,MAAM8Q,EAAU,GACV6zB,EAAarxJ,KAAK2wJ,QAAQjlJ,OAGhC,OAAQvJ,EAAQopC,EAAKthB,QAAQjqB,KAAK2wJ,QAASjkC,KAAc,EACvDA,EAAWvqH,EAAQkvJ,EACnB7zB,EAAQlwH,KAAK,CAACnL,EAAOuqH,EAAW,IAGlC,MAAM0lC,IAAY50B,EAAQ9xH,OAE1B,MAAO,CACL0mJ,UACA/D,MAAO+D,EAAU,EAAI,EACrB50B,YAMN,MAAMu2B,GAAY,CAChBb,EACAY,EACAT,EACAE,EACAG,EACAF,EACAJ,EACAO,GAGIK,GAAeD,GAAUroJ,OAGzBuoJ,GAAW,mCACXC,GAAW,IAKjB,SAASC,GAAWxD,EAASljJ,EAAU,IACrC,OAAOkjJ,EAAQv9I,MAAM8gJ,IAAU7wJ,IAAKyC,IAClC,IAAIyS,EAAQzS,EACTkyE,OACA5kE,MAAM6gJ,IACN3jH,OAAQxqC,GAASA,KAAUA,EAAKkyE,QAE/B6mE,EAAU,GACd,IAAK,IAAInmI,EAAI,EAAG4J,EAAM/J,EAAM7M,OAAQgN,EAAI4J,EAAK5J,GAAK,EAAG,CACnD,MAAM07I,EAAY77I,EAAMG,GAGxB,IAAI27I,GAAQ,EACRl2G,GAAO,EACX,OAAQk2G,KAAWl2G,EAAM61G,GAAc,CACrC,MAAMM,EAAWP,GAAU51G,GAC3B,IAAIunC,EAAQ4uE,EAASC,aAAaH,GAC9B1uE,IACFm5D,EAAQvxI,KAAK,IAAIgnJ,EAAS5uE,EAAOj4E,IACjC4mJ,GAAQ,GAIZ,IAAIA,EAAJ,CAKAl2G,GAAO,EACP,QAASA,EAAM61G,GAAc,CAC3B,MAAMM,EAAWP,GAAU51G,GAC3B,IAAIunC,EAAQ4uE,EAASE,cAAcJ,GACnC,GAAI1uE,EAAO,CACTm5D,EAAQvxI,KAAK,IAAIgnJ,EAAS5uE,EAAOj4E,IACjC,SAKN,OAAOoxI,IAMX,MAAM4V,GAAgB,IAAIC,IAAI,CAACf,EAAWzxJ,KAAM4xJ,EAAa5xJ,OA8B7D,MAAMyyJ,GACJ,YACEhE,GACA,gBACE1C,EAAkBY,EAAOZ,gBAAe,eACxCJ,EAAiBgB,EAAOhB,eAAc,mBACtCE,EAAqBc,EAAOd,mBAAkB,eAC9CY,EAAiBE,EAAOF,eAAc,eACtCb,EAAiBe,EAAOf,eAAc,SACtCphC,EAAWmiC,EAAOniC,SAAQ,UAC1B6hC,EAAYM,EAAON,UAAS,SAC5BlvI,EAAWwvI,EAAOxvI,UAChB,IAEJrf,KAAKuY,MAAQ,KACbvY,KAAKyN,QAAU,CACbwgJ,kBACAJ,iBACAE,qBACAD,iBACAa,iBACAjiC,WACA6hC,YACAlvI,YAGFrf,KAAK2wJ,QAAU1C,EAAkB0C,EAAUA,EAAQr6I,cACnDtW,KAAKuY,MAAQ47I,GAAWn0J,KAAK2wJ,QAAS3wJ,KAAKyN,SAG7C,iBAAiBmnJ,EAAGnnJ,GAClB,OAAOA,EAAQghJ,kBAGjB,SAASljH,GACP,MAAMhzB,EAAQvY,KAAKuY,MAEnB,IAAKA,EACH,MAAO,CACL65I,SAAS,EACT/D,MAAO,GAIX,MAAM,eAAER,EAAc,gBAAEI,GAAoBjuJ,KAAKyN,QAEjD89B,EAAO0iH,EAAkB1iH,EAAOA,EAAKj1B,cAErC,IAAIu+I,EAAa,EACblC,EAAa,GACbC,EAAa,EAGjB,IAAK,IAAIl6I,EAAI,EAAGo8I,EAAOv8I,EAAM7M,OAAQgN,EAAIo8I,EAAMp8I,GAAK,EAAG,CACrD,MAAMq7I,EAAYx7I,EAAMG,GAGxBi6I,EAAWjnJ,OAAS,EACpBmpJ,EAAa,EAGb,IAAK,IAAI7oH,EAAI,EAAG+oH,EAAOhB,EAAUroJ,OAAQsgC,EAAI+oH,EAAM/oH,GAAK,EAAG,CACzD,MAAMsoH,EAAWP,EAAU/nH,IACrB,QAAEomH,EAAO,QAAE50B,EAAO,MAAE6wB,GAAUiG,EAASl6I,OAAOmxB,GAEpD,IAAI6mH,EAWG,CACLQ,EAAa,EACbiC,EAAa,EACblC,EAAWjnJ,OAAS,EACpB,MAZA,GAFAmpJ,GAAc,EACdjC,GAAcvE,EACVR,EAAgB,CAClB,MAAM3rJ,EAAOoyJ,EAAS9nI,YAAYtqB,KAC9BuyJ,GAActkJ,IAAIjO,GACpBywJ,EAAa,IAAIA,KAAen1B,GAEhCm1B,EAAWrlJ,KAAKkwH,IAYxB,GAAIq3B,EAAY,CACd,IAAI9vJ,EAAS,CACXqtJ,SAAS,EACT/D,MAAOuE,EAAaiC,GAOtB,OAJIhH,IACF9oJ,EAAOy4H,QAAUm1B,GAGZ5tJ,GAKX,MAAO,CACLqtJ,SAAS,EACT/D,MAAO,IAKb,MAAM2G,GAAsB,GAE5B,SAAS/2G,MAAY/8B,GACnB8zI,GAAoB1nJ,QAAQ4T,GAG9B,SAAS+zI,GAAetE,EAASljJ,GAC/B,IAAK,IAAIiL,EAAI,EAAG4J,EAAM0yI,GAAoBtpJ,OAAQgN,EAAI4J,EAAK5J,GAAK,EAAG,CACjE,IAAIw8I,EAAgBF,GAAoBt8I,GACxC,GAAIw8I,EAAcC,UAAUxE,EAASljJ,GACnC,OAAO,IAAIynJ,EAAcvE,EAASljJ,GAItC,OAAO,IAAI6kJ,EAAY3B,EAASljJ,GAGlC,MAAM2nJ,GAAkB,CACtBC,IAAK,OACLC,GAAI,OAGAC,GAAU,CACd99I,KAAM,QACN+9I,QAAS,QAGLC,GAAgBl9I,MACjBA,EAAM68I,GAAgBC,OAAQ98I,EAAM68I,GAAgBE,KAEnDI,GAAUn9I,KAAYA,EAAMg9I,GAAQ99I,MAEpCk+I,GAAUp9I,IACb+R,EAAQ/R,IAAUiS,EAASjS,KAAWk9I,GAAal9I,GAEhDq9I,GAAqBr9I,IAAU,CACnC,CAAC68I,GAAgBC,KAAMjxJ,OAAOie,KAAK9J,GAAOlV,IAAKpC,IAAQ,CACrD,CAACA,GAAMsX,EAAMtX,QAMjB,SAAS20D,GAAMr9C,EAAO9K,GAAS,KAAEooJ,GAAO,GAAS,IAC/C,MAAMtvH,EAAQhuB,IACZ,IAAI8J,EAAOje,OAAOie,KAAK9J,GAEvB,MAAMu9I,EAAcJ,GAAOn9I,GAE3B,IAAKu9I,GAAezzI,EAAK3W,OAAS,IAAM+pJ,GAAal9I,GACnD,OAAOguB,EAAKqvH,GAAkBr9I,IAGhC,GAAIo9I,GAAOp9I,GAAQ,CACjB,MAAMtX,EAAM60J,EAAcv9I,EAAMg9I,GAAQ99I,MAAQ4K,EAAK,GAE/CsuI,EAAUmF,EAAcv9I,EAAMg9I,GAAQC,SAAWj9I,EAAMtX,GAE7D,IAAKurJ,EAASmE,GACZ,MAAM,IAAI/iJ,MAAMk/I,EAAqC7rJ,IAGvD,MAAMiD,EAAM,CACVspJ,MAAOE,EAAYzsJ,GACnB0vJ,WAOF,OAJIkF,IACF3xJ,EAAIowJ,SAAWW,GAAetE,EAASljJ,IAGlCvJ,EAGT,IAAI4e,EAAO,CACTo3D,SAAU,GACV67E,SAAU1zI,EAAK,IAajB,OAVAA,EAAKpd,QAAShE,IACZ,MAAMU,EAAQ4W,EAAMtX,GAEhBqpB,EAAQ3oB,IACVA,EAAMsD,QAASa,IACbgd,EAAKo3D,SAAS5sE,KAAKi5B,EAAKzgC,QAKvBgd,GAOT,OAJK2yI,GAAal9I,KAChBA,EAAQq9I,GAAkBr9I,IAGrBguB,EAAKhuB,GAGd,MAAMy9I,GACJ,YAAY1G,EAAM7hJ,EAAU,GAAItL,GAC9BnC,KAAKyN,QAAU,IAAKohJ,KAAWphJ,GAG7BzN,KAAKyN,QAAQghJ,kBAMfzuJ,KAAKi2J,UAAY,IAAI9I,EAASntJ,KAAKyN,QAAQ4U,MAE3CriB,KAAKk2J,cAAc5G,EAAMntJ,GAG3B,cAAcmtJ,EAAMntJ,GAGlB,GAFAnC,KAAKm2J,MAAQ7G,EAETntJ,KAAWA,aAAiBgtJ,GAC9B,MAAM,IAAIvhJ,MAAMi/I,GAGlB7sJ,KAAKo2J,SACHj0J,GACA+tJ,EAAYlwJ,KAAKyN,QAAQ4U,KAAMriB,KAAKm2J,MAAO,CACzCzH,MAAO1uJ,KAAKyN,QAAQihJ,QAI1B,IAAIe,GACG9C,EAAU8C,KAIfzvJ,KAAKm2J,MAAM7oJ,KAAKmiJ,GAChBzvJ,KAAKo2J,SAASp6G,IAAIyzG,IAGpB,OAAO4G,EAAY,MAAoB,IACrC,MAAMxX,EAAU,GAEhB,IAAK,IAAInmI,EAAI,EAAG4J,EAAMtiB,KAAKm2J,MAAMzqJ,OAAQgN,EAAI4J,EAAK5J,GAAK,EAAG,CACxD,MAAM+2I,EAAMzvJ,KAAKm2J,MAAMz9I,GACnB29I,EAAU5G,EAAK/2I,KACjB1Y,KAAKs2J,SAAS59I,GACdA,GAAK,EACL4J,GAAO,EAEPu8H,EAAQvxI,KAAKmiJ,IAIjB,OAAO5Q,EAGT,SAAS1gG,GACPn+C,KAAKm2J,MAAMnnJ,OAAOmvC,EAAK,GACvBn+C,KAAKo2J,SAASE,SAASn4G,GAGzB,WACE,OAAOn+C,KAAKo2J,SAGd,OAAO79I,GAAO,MAAEg+I,GAAQ,GAAO,IAC7B,MAAM,eACJ1I,EAAc,aACdK,EAAY,WACZC,EAAU,OACVC,EAAM,gBACNQ,GACE5uJ,KAAKyN,QAET,IAAIoxI,EAAU2N,EAASj0I,GACnBi0I,EAASxsJ,KAAKm2J,MAAM,IAClBn2J,KAAKw2J,kBAAkBj+I,GACvBvY,KAAKy2J,kBAAkBl+I,GACzBvY,KAAK02J,eAAen+I,GAYxB,OAVAo+I,GAAe9X,EAAS,CAAE+P,oBAEtBT,GACFtP,EAAQ15I,KAAKipJ,GAGXt2H,EAASy+H,IAAUA,GAAS,IAC9B1X,EAAUA,EAAQvzI,MAAM,EAAGirJ,IAGtB1gG,GAAOgpF,EAAS7+I,KAAKm2J,MAAO,CACjCtI,iBACAK,iBAIJ,kBAAkB31I,GAChB,MAAM+7I,EAAWW,GAAe18I,EAAOvY,KAAKyN,UACtC,QAAE8hJ,GAAYvvJ,KAAKo2J,SACnBvX,EAAU,GAmBhB,OAhBA0Q,EAAQtqJ,QAAQ,EAAGyZ,EAAG6sB,EAAM7yB,EAAGylC,EAAKhiC,EAAG4yI,MACrC,IAAKpC,EAAUphH,GACb,OAGF,MAAM,QAAE6mH,EAAO,MAAE/D,EAAK,QAAE7wB,GAAY82B,EAAST,SAAStoH,GAElD6mH,GACFvT,EAAQvxI,KAAK,CACXxH,KAAMylC,EACN4S,MACAtqB,QAAS,CAAC,CAAEw6H,QAAO1sJ,MAAO4pC,EAAMwjH,OAAMvxB,gBAKrCqhB,EAGT,eAAetmI,GAEb,MAAMxW,EAAa6zD,GAAMr9C,EAAOvY,KAAKyN,SAE/BmpJ,EAAW,CAAC9zI,EAAMhd,EAAMq4C,KAC5B,IAAKr7B,EAAKo3D,SAAU,CAClB,MAAM,MAAEszE,EAAK,SAAE8G,GAAaxxI,EAEtB+Q,EAAU7zB,KAAK62J,aAAa,CAChC51J,IAAKjB,KAAKi2J,UAAU5wJ,IAAImoJ,GACxB7rJ,MAAO3B,KAAKo2J,SAASU,uBAAuBhxJ,EAAM0nJ,GAClD8G,aAGF,OAAIzgI,GAAWA,EAAQnoB,OACd,CACL,CACEyyC,MACAr4C,OACA+tB,YAKC,GAIT,OAAQ/Q,EAAKizI,UACX,KAAKX,GAAgBC,IAAK,CACxB,MAAMv7H,EAAM,GACZ,IAAK,IAAIphB,EAAI,EAAG4J,EAAMQ,EAAKo3D,SAASxuE,OAAQgN,EAAI4J,EAAK5J,GAAK,EAAG,CAC3D,MAAMq+I,EAAQj0I,EAAKo3D,SAASxhE,GACtB3T,EAAS6xJ,EAASG,EAAOjxJ,EAAMq4C,GACrC,IAAIp5C,EAAO2G,OAGT,MAAO,GAFPouB,EAAIxsB,QAAQvI,GAKhB,OAAO+0B,EAET,KAAKs7H,GAAgBE,GAAI,CACvB,MAAMx7H,EAAM,GACZ,IAAK,IAAIphB,EAAI,EAAG4J,EAAMQ,EAAKo3D,SAASxuE,OAAQgN,EAAI4J,EAAK5J,GAAK,EAAG,CAC3D,MAAMq+I,EAAQj0I,EAAKo3D,SAASxhE,GACtB3T,EAAS6xJ,EAASG,EAAOjxJ,EAAMq4C,GACrC,GAAIp5C,EAAO2G,OAAQ,CACjBouB,EAAIxsB,QAAQvI,GACZ,OAGJ,OAAO+0B,KAKPy1H,EAAUvvJ,KAAKo2J,SAAS7G,QACxByH,EAAY,GACZnY,EAAU,GAmBhB,OAjBA0Q,EAAQtqJ,QAAQ,EAAG2K,EAAG9J,EAAM4S,EAAGylC,MAC7B,GAAIwuG,EAAU7mJ,GAAO,CACnB,IAAImxJ,EAAaL,EAAS70J,EAAY+D,EAAMq4C,GAExC84G,EAAWvrJ,SAERsrJ,EAAU74G,KACb64G,EAAU74G,GAAO,CAAEA,MAAKr4C,OAAM+tB,QAAS,IACvCgrH,EAAQvxI,KAAK0pJ,EAAU74G,KAEzB84G,EAAWhyJ,QAAQ,EAAG4uB,cACpBmjI,EAAU74G,GAAKtqB,QAAQvmB,QAAQumB,SAMhCgrH,EAGT,kBAAkBtmI,GAChB,MAAM+7I,EAAWW,GAAe18I,EAAOvY,KAAKyN,UACtC,KAAE4U,EAAI,QAAEktI,GAAYvvJ,KAAKo2J,SACzBvX,EAAU,GA8BhB,OA3BA0Q,EAAQtqJ,QAAQ,EAAG2K,EAAG9J,EAAM4S,EAAGylC,MAC7B,IAAKwuG,EAAU7mJ,GACb,OAGF,IAAI+tB,EAAU,GAGdxR,EAAKpd,QAAQ,CAAChE,EAAK6uJ,KACjBj8H,EAAQvmB,QACHtN,KAAK62J,aAAa,CACnB51J,MACAU,MAAOmE,EAAKgqJ,GACZwE,gBAKFzgI,EAAQnoB,QACVmzI,EAAQvxI,KAAK,CACX6wC,MACAr4C,OACA+tB,cAKCgrH,EAET,cAAa,IAAE59I,EAAG,MAAEU,EAAK,SAAE2yJ,IACzB,IAAK3H,EAAUhrJ,GACb,MAAO,GAGT,IAAIkyB,EAAU,GAEd,GAAIvJ,EAAQ3oB,GACVA,EAAMsD,QAAQ,EAAGyZ,EAAG6sB,EAAM7yB,EAAGylC,EAAKhiC,EAAG4yI,MACnC,IAAKpC,EAAUphH,GACb,OAGF,MAAM,QAAE6mH,EAAO,MAAE/D,EAAK,QAAE7wB,GAAY82B,EAAST,SAAStoH,GAElD6mH,GACFv+H,EAAQvmB,KAAK,CACX+gJ,QACAptJ,MACAU,MAAO4pC,EACP4S,MACA4wG,OACAvxB,kBAID,CACL,MAAQ9+G,EAAG6sB,EAAMpvB,EAAG4yI,GAASptJ,GAEvB,QAAEywJ,EAAO,MAAE/D,EAAK,QAAE7wB,GAAY82B,EAAST,SAAStoH,GAElD6mH,GACFv+H,EAAQvmB,KAAK,CAAE+gJ,QAAOptJ,MAAKU,MAAO4pC,EAAMwjH,OAAMvxB,YAIlD,OAAO3pG,GAKX,SAAS8iI,GAAe9X,GAAS,gBAAE+P,EAAkBC,EAAOD,kBAC1D/P,EAAQ55I,QAASF,IACf,IAAI6tJ,EAAa,EAEjB7tJ,EAAO8uB,QAAQ5uB,QAAQ,EAAGhE,MAAK8tJ,OAAMV,YACnC,MAAMvlI,EAAS7nB,EAAMA,EAAI6nB,OAAS,KAElC8pI,GAAc1hJ,KAAKC,IACP,IAAVk9I,GAAevlI,EAAShc,OAAOglD,QAAUu8F,GACxCvlI,GAAU,IAAM8lI,EAAkB,EAAIG,MAI3ChqJ,EAAOspJ,MAAQuE,IAInB,SAAS/8F,GACPgpF,EACAyQ,GACA,eACEzB,EAAiBgB,EAAOhB,eAAc,aACtCK,EAAeW,EAAOX,cACpB,IAEJ,MAAM1yD,EAAe,GAKrB,OAHIqyD,GAAgBryD,EAAaluF,KAAKijJ,GAClCrC,GAAc1yD,EAAaluF,KAAKmjJ,GAE7B5R,EAAQx7I,IAAK0B,IAClB,MAAM,IAAEo5C,GAAQp5C,EAEVtC,EAAO,CACXqD,KAAMwpJ,EAAKnxG,GACXqyG,SAAUryG,GASZ,OANIq9C,EAAa9vF,QACf8vF,EAAav2F,QAAS02F,IACpBA,EAAY52F,EAAQtC,KAIjBA,IAIXuzJ,GAAKkB,QAAU,QACflB,GAAK9F,YAAcA,EACnB8F,GAAK1F,WAAaA,EAClB0F,GAAK9mH,OAAS2/G,EAGZmH,GAAK7B,WAAav+F,GAIlB3X,GAAS02G,IAGI,W,mCC9uDf,W,2CCAA,IAAI70J,EAAS,WAAa,IAAIC,EAAIC,KAASC,EAAGF,EAAIG,eAAmBC,EAAGJ,EAAIK,MAAMD,IAAIF,EAAG,OAAOE,EAAG,MAAM,CAACM,YAAY,OAAO,CAACN,EAAG,MAAM,CAACM,YAAY,YAAY,CAACN,EAAG,OAAO,CAACM,YAAY,eAAeJ,MAAM,CAAC,MAAQ,iBAAiB,CAACF,EAAG,KAAK,CAACM,YAAY,aAAaJ,MAAM,CAAC,KAAO,UAAUK,KAAK,UAAU,CAACX,EAAIY,GAAG,oBAAoBR,EAAG,OAAO,CAACE,MAAM,CAAC,OAAS,IAAI,OAAS,KAAKE,GAAG,CAAC,OAAS,SAASC,GAAQA,EAAOY,oBAAqB,CAACjB,EAAG,MAAM,CAACA,EAAG,WAAW,CAACE,MAAM,CAAC,MAAQ,gBAAgB,KAAO,QAAQ,YAAc,iBAAiBF,EAAG,WAAW,CAACE,MAAM,CAAC,MAAQ,WAAW,KAAO,WAAW,YAAc,cAAcF,EAAG,MAAM,CAACM,YAAY,cAAc,CAACN,EAAG,WAAW,CAACJ,EAAIY,GAAG,8BAA8B,GAAGR,EAAG,WAAW,CAACE,MAAM,CAAC,KAAO,YAAY,CAACN,EAAIY,GAAG,aAAa,QAAQ,GAAGR,EAAG,MAAM,CAACM,YAAY,YAAY,CAACN,EAAG,OAAO,CAACE,MAAM,CAAC,MAAQ,oBAAoB,CAACF,EAAG,KAAK,CAACM,YAAY,aAAaJ,MAAM,CAAC,KAAO,UAAUK,KAAK,UAAU,CAACX,EAAIY,GAAG,uBAAuBR,EAAG,OAAO,CAACM,YAAY,kBAAkBJ,MAAM,CAAC,OAAS,IAAI,OAAS,KAAKE,GAAG,CAAC,OAAS,SAASC,GAAQA,EAAOY,oBAAqB,CAACjB,EAAG,MAAM,CAACM,YAAY,OAAO,CAACN,EAAG,QAAQ,CAACM,YAAY,2BAA2B,CAACV,EAAIY,GAAG,cAAcR,EAAG,MAAM,CAACM,YAAY,YAAY,CAACN,EAAG,WAAW,CAACE,MAAM,CAAC,YAAc,eAAe,KAAKF,EAAG,MAAM,CAACM,YAAY,OAAO,CAACN,EAAG,QAAQ,CAACM,YAAY,2BAA2B,CAACV,EAAIY,GAAG,WAAWR,EAAG,MAAM,CAACM,YAAY,YAAY,CAACN,EAAG,WAAW,CAACE,MAAM,CAAC,YAAc,QAAQ,KAAO,YAAY,KAAKF,EAAG,MAAM,CAACM,YAAY,OAAO,CAACN,EAAG,QAAQ,CAACM,YAAY,2BAA2B,CAACV,EAAIY,GAAG,cAAcR,EAAG,MAAM,CAACM,YAAY,YAAY,CAACN,EAAG,WAAW,CAACE,MAAM,CAAC,YAAc,WAAW,KAAO,eAAe,KAAKF,EAAG,MAAM,CAACM,YAAY,OAAO,CAACN,EAAG,QAAQ,CAACM,YAAY,4BAA4BN,EAAG,MAAM,CAACM,YAAY,YAAY,CAACN,EAAG,WAAW,CAACJ,EAAIY,GAAG,kBAAkB,OAAOR,EAAG,MAAM,CAACM,YAAY,OAAO,CAACN,EAAG,MAAM,CAACM,YAAY,+BAA+B,CAACN,EAAG,WAAW,CAACE,MAAM,CAAC,cAAc,SAAS,KAAO,YAAY,CAACN,EAAIY,GAAG,gBAAgB,QAAQ,GAAGR,EAAG,MAAM,CAACM,YAAY,aAAa,CAACN,EAAG,OAAO,CAACA,EAAG,WAAW,CAACO,KAAK,UAAU,CAACP,EAAG,KAAK,CAACM,YAAY,cAAc,CAACV,EAAIY,GAAG,qBAAqBR,EAAG,MAAM,CAACA,EAAG,OAAO,CAACM,YAAY,kBAAkBJ,MAAM,CAAC,OAAS,MAAM,OAAS,MAAM,CAACF,EAAG,MAAM,CAACM,YAAY,OAAO,CAACN,EAAG,QAAQ,CAACM,YAAY,2BAA2B,CAACV,EAAIY,GAAG,eAAeR,EAAG,MAAM,CAACM,YAAY,aAAa,CAACN,EAAG,WAAW,CAACE,MAAM,CAAC,YAAc,gBAAgB,CAACF,EAAG,OAAO,CAACM,YAAY,YAAYJ,MAAM,CAAC,KAAO,aAAaK,KAAK,aAAa,CAACX,EAAIY,GAAG,2DAA2D,KAAKR,EAAG,MAAM,CAACM,YAAY,OAAO,CAACN,EAAG,QAAQ,CAACM,YAAY,2BAA2B,CAACV,EAAIY,GAAG,cAAcR,EAAG,MAAM,CAACM,YAAY,aAAa,CAACN,EAAG,WAAW,CAACE,MAAM,CAAC,KAAO,WAAW,MAAQ,eAAe,KAAKF,EAAG,MAAM,CAACM,YAAY,OAAO,CAACN,EAAG,QAAQ,CAACM,YAAY,2BAA2B,CAACV,EAAIY,GAAG,iBAAiBR,EAAG,MAAM,CAACM,YAAY,aAAa,CAACN,EAAG,WAAW,CAACE,MAAM,CAAC,YAAc,kBAAkB,KAAKF,EAAG,MAAM,CAACM,YAAY,OAAO,CAACN,EAAG,QAAQ,CAACM,YAAY,2BAA2B,CAACV,EAAIY,GAAG,cAAcR,EAAG,MAAM,CAACM,YAAY,aAAa,CAACN,EAAG,WAAW,CAACE,MAAM,CAAC,MAAQ,wBAAwB,SAAW,OAAO,KAAKF,EAAG,MAAM,CAACM,YAAY,OAAO,CAACN,EAAG,QAAQ,CAACM,YAAY,2BAA2B,CAACV,EAAIY,GAAG,oBAAoBR,EAAG,MAAM,CAACM,YAAY,aAAa,CAACN,EAAG,WAAW,CAACA,EAAG,IAAI,CAACM,YAAY,uBAAuB,CAACV,EAAIY,GAAG,+BAA+B,KAAKR,EAAG,MAAM,CAACM,YAAY,OAAO,CAACN,EAAG,QAAQ,CAACM,YAAY,2BAA2B,CAACV,EAAIY,GAAG,2BAA2BR,EAAG,MAAM,CAACM,YAAY,6BAA6B,CAACN,EAAG,WAAW,CAACuB,MAAM,CAACC,MAAO5B,EAAIo3J,WAAgB,MAAEv1J,SAAS,SAAUC,GAAM9B,EAAI+B,KAAK/B,EAAIo3J,WAAY,QAASt1J,IAAME,WAAW,qBAAqB,CAAChC,EAAIY,GAAG,oBAAoBR,EAAG,WAAW,CAACuB,MAAM,CAACC,MAAO5B,EAAIo3J,WAAiB,OAAEv1J,SAAS,SAAUC,GAAM9B,EAAI+B,KAAK/B,EAAIo3J,WAAY,SAAUt1J,IAAME,WAAW,sBAAsB,CAAChC,EAAIY,GAAG,qBAAqBR,EAAG,QAAQ,CAACE,MAAM,CAAC,MAAQ,KAAKqB,MAAM,CAACC,MAAO5B,EAAIq3J,OAAa,OAAEx1J,SAAS,SAAUC,GAAM9B,EAAI+B,KAAK/B,EAAIq3J,OAAQ,SAAUv1J,IAAME,WAAW,kBAAkB,CAAChC,EAAIY,GAAG,iBAAiBR,EAAG,QAAQ,CAACE,MAAM,CAAC,MAAQ,KAAKqB,MAAM,CAACC,MAAO5B,EAAIq3J,OAAa,OAAEx1J,SAAS,SAAUC,GAAM9B,EAAI+B,KAAK/B,EAAIq3J,OAAQ,SAAUv1J,IAAME,WAAW,kBAAkB,CAAChC,EAAIY,GAAG,mBAAmB,KAAKR,EAAG,MAAM,CAACM,YAAY,OAAO,CAACN,EAAG,QAAQ,CAACM,YAAY,2BAA2B,CAACV,EAAIY,GAAG,uBAAuBR,EAAG,MAAM,CAACM,YAAY,6BAA6B,CAACN,EAAG,WAAW,CAACE,MAAM,CAAC,OAAS,IAAIqB,MAAM,CAACC,MAAO5B,EAAIo3J,WAAY,EAAEv1J,SAAS,SAAUC,GAAM9B,EAAI+B,KAAK/B,EAAIo3J,WAAY,IAAKt1J,IAAME,WAAW,iBAAiB,CAAChC,EAAIY,GAAG,OAAOR,EAAG,WAAW,CAACE,MAAM,CAAC,OAAS,IAAIqB,MAAM,CAACC,MAAO5B,EAAIo3J,WAAY,EAAEv1J,SAAS,SAAUC,GAAM9B,EAAI+B,KAAK/B,EAAIo3J,WAAY,IAAKt1J,IAAME,WAAW,iBAAiB,CAAChC,EAAIY,GAAG,OAAOR,EAAG,WAAW,CAACE,MAAM,CAAC,OAAS,IAAIqB,MAAM,CAACC,MAAO5B,EAAIo3J,WAAY,EAAEv1J,SAAS,SAAUC,GAAM9B,EAAI+B,KAAK/B,EAAIo3J,WAAY,IAAKt1J,IAAME,WAAW,iBAAiB,CAAChC,EAAIY,GAAG,QAAQ,UAAU,IAAI,GAAGR,EAAG,MAAM,CAACM,YAAY,aAAa,CAACN,EAAG,OAAO,CAACA,EAAG,KAAK,CAACM,YAAY,aAAaJ,MAAM,CAAC,KAAO,UAAUK,KAAK,UAAU,CAACX,EAAIY,GAAG,oBAAoBR,EAAG,OAAO,CAACM,YAAY,kBAAkBJ,MAAM,CAAC,OAAS,MAAM,OAAS,MAAM,CAACF,EAAG,MAAM,CAACM,YAAY,OAAO,CAACN,EAAG,QAAQ,CAACM,YAAY,2BAA2B,CAACV,EAAIY,GAAG,gCAAgCR,EAAG,MAAM,CAACM,YAAY,4CAA4C,CAACN,EAAG,WAAW,CAACJ,EAAIY,GAAG,eAAeR,EAAG,WAAW,CAACE,MAAM,CAAC,SAAU,IAAO,CAACN,EAAIY,GAAG,aAAaR,EAAG,WAAW,CAACE,MAAM,CAAC,SAAW,KAAK,CAACN,EAAIY,GAAG,sBAAsBR,EAAG,WAAW,CAACE,MAAM,CAAC,SAAW,GAAG,SAAU,IAAO,CAACN,EAAIY,GAAG,uBAAuB,GAAGR,EAAG,MAAM,CAACM,YAAY,4BAA4B,CAACN,EAAG,QAAQ,CAACE,MAAM,CAAC,MAAQ,KAAKqB,MAAM,CAACC,MAAO5B,EAAIq3J,OAAc,QAAEx1J,SAAS,SAAUC,GAAM9B,EAAI+B,KAAK/B,EAAIq3J,OAAQ,UAAWv1J,IAAME,WAAW,mBAAmB,CAAChC,EAAIY,GAAG,iBAAiBR,EAAG,QAAQ,CAACE,MAAM,CAAC,MAAQ,KAAKqB,MAAM,CAACC,MAAO5B,EAAIq3J,OAAc,QAAEx1J,SAAS,SAAUC,GAAM9B,EAAI+B,KAAK/B,EAAIq3J,OAAQ,UAAWv1J,IAAME,WAAW,mBAAmB,CAAChC,EAAIY,GAAG,kBAAkBR,EAAG,QAAQ,CAACE,MAAM,CAAC,MAAQ,IAAI,SAAW,IAAIqB,MAAM,CAACC,MAAO5B,EAAIq3J,OAAe,SAAEx1J,SAAS,SAAUC,GAAM9B,EAAI+B,KAAK/B,EAAIq3J,OAAQ,WAAYv1J,IAAME,WAAW,oBAAoB,CAAChC,EAAIY,GAAG,iBAAiBR,EAAG,QAAQ,CAACE,MAAM,CAAC,MAAQ,IAAI,SAAW,IAAIqB,MAAM,CAACC,MAAO5B,EAAIq3J,OAAe,SAAEx1J,SAAS,SAAUC,GAAM9B,EAAI+B,KAAK/B,EAAIq3J,OAAQ,WAAYv1J,IAAME,WAAW,oBAAoB,CAAChC,EAAIY,GAAG,mBAAmB,KAAKR,EAAG,MAAM,CAACM,YAAY,OAAO,CAACN,EAAG,QAAQ,CAACM,YAAY,2BAA2B,CAACV,EAAIY,GAAG,wBAAwBR,EAAG,MAAM,CAACM,YAAY,aAAa,CAACN,EAAG,WAAW,CAACM,YAAY,cAAcJ,MAAM,CAAC,MAAQ,cAAc,KAAKF,EAAG,MAAM,CAACM,YAAY,OAAO,CAACN,EAAG,QAAQ,CAACM,YAAY,2BAA2B,CAACV,EAAIY,GAAG,sBAAsBR,EAAG,MAAM,CAACM,YAAY,aAAa,CAACN,EAAG,WAAW,CAACM,YAAY,aAAaJ,MAAM,CAAC,MAAQ,YAAY,KAAKF,EAAG,MAAM,CAACM,YAAY,OAAO,CAACN,EAAG,QAAQ,CAACM,YAAY,2BAA2B,CAACV,EAAIY,GAAG,mBAAmBR,EAAG,MAAM,CAACM,YAAY,aAAa,CAACN,EAAG,MAAM,CAACM,YAAY,OAAO,CAACN,EAAG,MAAM,CAACM,YAAY,YAAY,CAACN,EAAG,WAAW,CAACE,MAAM,CAAC,YAAc,gBAAgB,GAAGF,EAAG,MAAM,CAACM,YAAY,YAAY,CAACN,EAAG,WAAW,CAACE,MAAM,CAAC,YAAc,gBAAgB,GAAGF,EAAG,MAAM,CAACM,YAAY,YAAY,CAACN,EAAG,WAAW,CAACE,MAAM,CAAC,YAAc,gBAAgB,cAAc,MACp0OkC,EAAkB,G,YCmNtB,GACEC,WAAY,CACV60J,SAAJ,OACIC,MAAJ,QAEE70J,KALF,WAMI,MAAO,CACL20J,OAAQ,CACNG,OAAQ,IACRC,OAAQ,IACRC,OAAQ,IACRC,QAAS,IACTC,SAAU,KAEZR,WAAY,CACV1+F,OAAO,EACP3iD,QAAQ,EACRyJ,GAAG,EACHpB,GAAG,EACHU,GAAG,EACH+4I,WAAW,EACXC,SAAS,EACTC,mBAAmB,EACnBC,iBAAiB,MC3O2V,I,YCOhX/zJ,EAAY,eACd,EACAlE,EACAyC,GACA,EACA,KACA,KACA,MAIa,aAAAyB,E,6CClBf,W,2CCAA,IAAIlE,EAAS,WAAa,IAAIC,EAAIC,KAASC,EAAGF,EAAIG,eAAmBC,EAAGJ,EAAIK,MAAMD,IAAIF,EAAG,OAAOE,EAAG,MAAM,CAACM,YAAY,OAAO,CAACN,EAAG,MAAM,CAACM,YAAY,UAAU,CAACN,EAAG,OAAO,CAACE,MAAM,CAAC,oBAAoB,mBAAmB,iBAAiB,KAAK,CAACF,EAAG,MAAM,CAACA,EAAG,MAAM,CAACM,YAAY,6EAA6E,CAACN,EAAG,KAAK,CAACM,YAAY,0BAA0B,CAACV,EAAIY,GAAG,IAAIZ,EAAIa,GAAGb,EAAIc,GAAG,gCAAgC,SAASV,EAAG,MAAM,CAACM,YAAY,UAAU,CAACN,EAAG,qBAAqB,CAACW,IAAI,UAAUC,YAAYhB,EAAIiB,GAAG,CAAC,CAACC,IAAI,UAAUC,GAAG,SAASJ,GACtkB,IAAIK,EAAeL,EAAIK,aACvB,MAAO,CAAChB,EAAG,OAAO,CAACI,GAAG,CAAC,OAAS,SAASC,GAAgC,OAAxBA,EAAOY,iBAAwBD,EAAapB,EAAIi4J,kBAAkB,CAAC73J,EAAG,KAAK,CAACA,EAAG,QAAQ,CAACJ,EAAIY,GAAG,oBAAoBZ,EAAIuB,GAAIvB,EAAI+F,KAAU,OAAE,SAAStE,GAAM,OAAOrB,EAAG,MAAM,CAACc,IAAIO,EAAKy2J,YAAY,CAAC93J,EAAG,MAAM,CAACM,YAAY,OAAO,CAACN,EAAG,MAAM,CAACM,YAAY,YAAY,CAACN,EAAG,qBAAqB,CAACE,MAAM,CAAC,KAAO,YAAY,MAAQ,kBAAkBU,YAAYhB,EAAIiB,GAAG,CAAC,CAACC,IAAI,UAAUC,GAAG,SAASJ,GAC/a,IAAIoF,EAASpF,EAAIoF,OACbC,EAASrF,EAAIqF,OACjB,MAAO,CAAChG,EAAG,WAAW,CAACE,MAAM,CAAC,KAAO,OAAO,YAAcmB,EAAKC,OAAO,MAAQ0E,EAC9C,6CACA,KAAK,WAAaD,EAAO,KAAO,YAAY,MAAQ,kBAAkBxE,MAAM,CAACC,MAAOH,EAAW,OAAEI,SAAS,SAAUC,GAAM9B,EAAI+B,KAAKN,EAAM,SAAUK,IAAME,WAAW,qBAAqB,MAAK,MAAS,GAAG5B,EAAG,MAAM,CAACM,YAAY,YAAY,CAACN,EAAG,qBAAqB,CAACE,MAAM,CAAC,KAAO,YAAY,MAAQ,kBAAkBU,YAAYhB,EAAIiB,GAAG,CAAC,CAACC,IAAI,UAAUC,GAAG,SAASJ,GAC3W,IAAIoF,EAASpF,EAAIoF,OACbC,EAASrF,EAAIqF,OAC/C,MAAO,CAAChG,EAAG,WAAW,CAACE,MAAM,CAAC,KAAO,OAAO,YAAcmB,EAAKC,OAAO,MAAQ0E,EAC9C,6CACA,KAAK,WAAaD,EAAO,KAAO,YAAY,MAAQ,eAAexE,MAAM,CAACC,MAAOH,EAAgB,YAAEI,SAAS,SAAUC,GAAM9B,EAAI+B,KAAKN,EAAM,cAAeK,IAAME,WAAW,0BAA0B,MAAK,MAAS,UAAS5B,EAAG,KAAK,CAACA,EAAG,QAAQ,CAACJ,EAAIY,GAAG,gBAAgBR,EAAG,MAAM,CAACM,YAAY,wBAAwB,CAACN,EAAG,MAAM,CAACM,YAAY,aAAa,CAACN,EAAG,WAAW,CAAC6B,YAAY,CAAC,MAAQ,QAAQ3B,MAAM,CAAC,OAAS,GAAG,KAAON,EAAI6L,YAAY,CAACzL,EAAG,kBAAkB,CAACE,MAAM,CAAC,KAAO,SAAS,MAAQ,YAAYF,EAAG,kBAAkB,CAACE,MAAM,CAAC,KAAO,eAAe,MAAQ,YAAYU,YAAYhB,EAAIiB,GAAG,CAAC,CAACC,IAAI,UAAUC,GAAG,SAASuJ,GAAO,OAAO1K,EAAIuB,GAAImJ,EAAMC,IAAY,UAAE,SAASwtJ,GAAS,OAAO/3J,EAAG,aAAa,CAACc,IAAIi3J,EAAQC,gBAAgB93J,MAAM,CAAC,MAAQ63J,EAAQA,SAASx2J,MAAM,CAACC,MAAOu2J,EAAc,OAAEt2J,SAAS,SAAUC,GAAM9B,EAAI+B,KAAKo2J,EAAS,SAAUr2J,IAAME,WAAW,mBAAmB,CAAChC,EAAIY,GAAG,IAAIZ,EAAIa,GAAGs3J,EAAQA,SAAS,aAAY,MAAK,MAAS,IAAI,KAAK/3J,EAAG,MAAM,CAACM,YAAY,iCAAiC,CAACN,EAAG,MAAM,CAACM,YAAY,OAAO,CAACN,EAAG,QAAQ,CAAC6B,YAAY,CAAC,cAAc,SAAS,CAACjC,EAAIY,GAAG,sBAAsB,CAACR,EAAG,WAAW,CAACuB,MAAM,CAACC,MAAO5B,EAAI+F,KAAW,OAAElE,SAAS,SAAUC,GAAM9B,EAAI+B,KAAK/B,EAAI+F,KAAM,SAAUjE,IAAME,WAAW,gBAAgB,CAAC5B,EAAG,IAAI,CAACM,YAAY,0BAA0BJ,MAAM,CAAC,KAAO,MAAMK,KAAK,OAAOP,EAAG,IAAI,CAACM,YAAY,kCAAkCJ,MAAM,CAAC,KAAO,OAAOK,KAAK,YAAY,GAAGP,EAAG,MAAM,CAACM,YAAY,aAAauB,YAAY,CAAC,aAAa,OAAO,cAAc,OAAO,aAAa,UAAU3B,MAAM,CAAC,KAAO,UAAUK,KAAK,UAAU,CAACP,EAAG,cAAc,CAACM,YAAY,QAAQJ,MAAM,CAAC,GAAK,CAAEgP,KAAM,WAAY,CAAClP,EAAG,WAAW,CAACM,YAAY,2BAA2B,CAACV,EAAIY,GAAGZ,EAAIa,GAAGb,EAAIc,GAAG,2BAA2B,GAAGV,EAAG,WAAW,CAACE,MAAM,CAAC,cAAc,SAAS,KAAO,YAAY,CAACN,EAAIY,GAAGZ,EAAIa,GAAGb,EAAIc,GAAG,yBAAyB,IAAI,WAAW,QAAQ,MAC13D0B,EAAkB,G,sGCgItB,GACEC,WAAY,GACZC,KAFF,WAGI,MAAO,CACLwD,MAAO,qBACP2F,UAAW,GACXwsJ,SAAU,GACVC,aAAc,GACd3rJ,IAAI,EACJ4rJ,kBAAkB,EAElBxyJ,KAAM,CACJy/I,MAAO,EACPl2I,KAAM,GACNkpJ,UAAW,EACXjqJ,QAAQ,EACR+2I,SAAS,GAEXmT,UAAW,GACXt2J,KAAM,CAAC,GAAI,OAAQ,UAAW,UAAW,UACzCu2J,cAAe,CACbC,WAAW,GAEb/yJ,OAAQ,CACNC,SAAS,EACT+yJ,QAAQ,EACRC,MAAM,KAIZl2J,SAAU,OAAZ,OAAY,CAAZ,GACA,oCAEEC,QAjCF,WAkCI3C,KAAK8F,KAAK+yJ,MAAQ74J,KAAKoD,eAAeC,KAAI,SAA9C,UACA,2BACA,gBACA,UACA,oBAGEC,QAzCF,WA0CItD,KAAK4L,UAAY,GACjB5L,KAAKo4J,SAAW,GAChBp4J,KAAK84J,gBAmBPl1J,QAAS,CACPm1J,WADJ,WAEM,IAAI1qF,EAAO,IAAInmE,KACXqd,EACV,gBACA,KACA,gBACA,IACA,YACA,IACA,aACA,IACA,eACA,IACA,eACM,OAAOA,GAETjjB,UAjBJ,WAkBMtC,KAAK8F,KAAKuJ,KAAO,GACjBrP,KAAK8F,KAAKyyJ,UAAY,GACtBv4J,KAAK8F,KAAKwI,QAAS,EACnBtO,KAAK2F,OAAOC,SAAU,EACtB5F,KAAKwG,MAAMC,QAAQC,SAErB,aAxBJ,WAwBA,8KACA,6BADA,OACA,EADA,OAEA,eAFA,8CAKIsyJ,oBA7BJ,SA6BA,GACUr3J,EAAQ,IACV3B,KAAKs4J,kBAAmB,IAG5B,gBAlCJ,WAkCA,qKACA,wBACA,GACA,KACA,eACA,WAEA,eAPA,SAQA,QACA,2CACA,KAFA,yDAGA,iHACA,sBACA,uCACA,gCAFA,iBAKA,YALA,IAKA,sCACA,KADA,iBAEA,gBAFA,IAEA,qCACA,QACA,kCACA,kBACA,YANA,8BAUA,kBACA,uBACA,QACA,sBACA,cAnBA,oCAuBA,mDAxBA,2CAHA,uDA8BA,YACA,sDAGA,wBA1CA,8CA4CI,cA9EJ,WA8EA,+JACA,cACA,8BACA,KACA,0IACA,uBALA,SAOA,eAPA,OAQA,gBARA,8CAUI,WAxFJ,WAwFA,wKACA,iBACA,mCACA,0BAGA,KANA,iBAOA,cAPA,IAOA,qCACA,QACA,KACA,gBAVA,qCAaA,GACA,QACA,SAGA,gDACA,4DAnBA,UAqBA,QACA,oCACA,KAFA,yDAEA,kGACA,kBADA,oBAEA,aAFA,gBAGA,kFAHA,sCAKA,QACA,+CACA,KAFA,yDAGA,0HACA,kBADA,iBAEA,wCACA,uBAHA,iBAMA,aANA,IAMA,qCACA,kBAPA,+CAWA,cAXA,IAWA,qCACA,oBACA,sBACA,kBACA,wBAfA,+CAiBA,aAjBA,IAiBA,qCACA,uBAlBA,qCAoBA,GACA,aACA,gCACA,sCACA,2BAEA,0CACA,eA3BA,UA4BA,QACA,yCACA,KAFA,yDAGA,8GACA,eACA,kBAFA,wBAGA,sCAGA,GACA,gCACA,sCAEA,4BAVA,SAYA,QACA,yCACA,KAFA,yDAGA,+FACA,eACA,mBACA,gBACA,UACA,sBAEA,gCAEA,gBACA,SACA,wBAXA,2CAHA,uDAkBA,YACA,gBACA,SACA,2BAIA,wBArCA,OAwCA,KAxCA,iBAyCA,cAzCA,IAyCA,qCACA,oBACA,uBACA,mBACA,gBACA,iBACA,YA/CA,sDAkDA,gBACA,SACA,0BApDA,4CAHA,uDA2DA,YACA,gBACA,SACA,6BAIA,wBA9FA,gCAiGA,mDAjGA,4CAHA,uDAuGA,YACA,sDAGA,wBAhHA,2CAFA,uDArBA,iDCpSmX,I,wBCQ/Wt0J,EAAY,eACd,EACAlE,EACAyC,GACA,EACA,KACA,KACA,MAIa,aAAAyB,E,kFC6JJi1J,E,YCzKPC,EAA6B,WAC7B,SAASA,KAkJT,OA5IAA,EAAYC,cAAgB,WAuBxB,IAAIC,EAAYtvI,OAAOuvI,OACvB,GAAID,GAAaA,EAAUE,gBAAiB,CACxC,IAAIphJ,EAAS,IAAIqhJ,WAAW,IAQ5B,OAPAH,EAAUE,gBAAgBphJ,GAE1BA,EAAO,IAAM,GACbA,EAAO,IAAM,GAEbA,EAAO,IAAM,IACbA,EAAO,IAAM,IACNghJ,EAAYM,aAAathJ,EAAO,IAAMghJ,EAAYM,aAAathJ,EAAO,IACvEghJ,EAAYM,aAAathJ,EAAO,IAAMghJ,EAAYM,aAAathJ,EAAO,IACtE,IAAMghJ,EAAYM,aAAathJ,EAAO,IAAMghJ,EAAYM,aAAathJ,EAAO,IAC5E,IAAMghJ,EAAYM,aAAathJ,EAAO,IAAMghJ,EAAYM,aAAathJ,EAAO,IAC5E,IAAMghJ,EAAYM,aAAathJ,EAAO,IAAMghJ,EAAYM,aAAathJ,EAAO,IAC5E,IAAMghJ,EAAYM,aAAathJ,EAAO,KAAOghJ,EAAYM,aAAathJ,EAAO,KAC7EghJ,EAAYM,aAAathJ,EAAO,KAAOghJ,EAAYM,aAAathJ,EAAO,KACvEghJ,EAAYM,aAAathJ,EAAO,KAAOghJ,EAAYM,aAAathJ,EAAO,KAO7E,IAJA,IAAIuhJ,EAAa,uCACbt8I,EAAM,mBACNc,EAAI,EACJy7I,EAAe,GACVhhJ,EAAI,EAAGA,EAAI,GAAIA,IACE,MAAlB+gJ,EAAW/gJ,IAAgC,MAAlB+gJ,EAAW/gJ,KAEpCuF,EAAoB,GAAhB/M,KAAKyoJ,SAAgB,GAEP,MAAlBF,EAAW/gJ,GACXghJ,GAAgBv8I,EAAIc,GAEG,MAAlBw7I,EAAW/gJ,IAEhBuF,GAAK,EACLA,GAAK,EACLy7I,GAAgBv8I,EAAIc,IAGpBy7I,GAAgBD,EAAW/gJ,GAGnC,OAAOghJ,GAOfR,EAAYU,OAAS,SAAU3qD,GAC3B,IAAI4qD,EAAY,6EAChB,OAAOA,EAAUpnJ,KAAKw8F,IAO1BiqD,EAAYM,aAAe,SAAUl0I,GACjC,IAAInI,EAAMmI,EAAI7Q,SAAS,IACvB,MAAO0I,EAAIzR,OAAS,EAChByR,EAAM,IAAMA,EAEhB,OAAOA,GAQX+7I,EAAYY,aAAe,SAAU1nJ,GACjC,OAAO2nJ,KAAKjlJ,mBAAmB1C,GAAOqG,QAAQ,mBAAmB,SAAsBkJ,EAAOkwD,GAC1F,OAAOvsE,OAAOolJ,aAAa59I,OAAO,KAAO+kE,SAQjDqnF,EAAYc,aAAe,SAAU5nJ,GACjC,IAAI6nJ,EAAgB7nJ,EAAMqG,QAAQ,KAAM,KAAKA,QAAQ,KAAM,KAC3D,OAAQwhJ,EAAcvuJ,OAAS,GAC3B,KAAK,EACD,MACJ,KAAK,EACDuuJ,GAAiB,KACjB,MACJ,KAAK,EACDA,GAAiB,IACjB,MACJ,QACI,MAAM,IAAIrsJ,MAAM,yBAExB,OAAOssJ,mBAAmBC,KAAKF,GAAe7mJ,MAAM,IAAI/P,KAAI,SAAUwb,GAClE,MAAO,KAAO,KAAOA,EAAEgsI,WAAW,GAAGp2I,SAAS,KAAKnJ,OAAO,MAC3DkJ,KAAK,MAOZ0kJ,EAAYkB,YAAc,SAAU7hJ,GAChC,IAAIoJ,EACA04I,EAAK,MACLjgJ,EAAS,oBACTkgJ,EAAS,SAAUv8I,GAAK,OAAOm8I,mBAAmBn8I,EAAEtF,QAAQ4hJ,EAAI,OAChEn2J,EAAM,GACVyd,EAAQvH,EAAOrQ,KAAKwO,GACpB,MAAOoJ,EACHzd,EAAIo2J,EAAO34I,EAAM,KAAO24I,EAAO34I,EAAM,IACrCA,EAAQvH,EAAOrQ,KAAKwO,GAExB,OAAOrU,GAEJg1J,EAnJqB,GDC5BqB,EAA2B,WAC3B,SAASA,KAiKT,OA/JAn2J,OAAOsZ,eAAe68I,EAAW,cAAe,CAC5Cl1J,IAAK,WAAc,MAAO,WAE1B2V,YAAY,EACZD,cAAc,IAElB3W,OAAOsZ,eAAe68I,EAAW,SAAU,CACvCl1J,IAAK,WAAc,MAAO,UAC1B2V,YAAY,EACZD,cAAc,IAElB3W,OAAOsZ,eAAe68I,EAAW,WAAY,CACzCl1J,IAAK,WAAc,MAAO,YAC1B2V,YAAY,EACZD,cAAc,IAElB3W,OAAOsZ,eAAe68I,EAAW,cAAe,CAC5Cl1J,IAAK,WAAc,MAAO,gBAC1B2V,YAAY,EACZD,cAAc,IAElB3W,OAAOsZ,eAAe68I,EAAW,cAAe,CAC5Cl1J,IAAK,WAAc,MAAO,QAC1B2V,YAAY,EACZD,cAAc,IAElB3W,OAAOsZ,eAAe68I,EAAW,SAAU,CACvCl1J,IAAK,WAAc,MAAO,UAC1B2V,YAAY,EACZD,cAAc,IAElB3W,OAAOsZ,eAAe68I,EAAW,aAAc,CAC3Cl1J,IAAK,WAAc,MAAO,cAC1B2V,YAAY,EACZD,cAAc,IAElB3W,OAAOsZ,eAAe68I,EAAW,MAAO,CACpCl1J,IAAK,WAAc,MAAO,OAC1B2V,YAAY,EACZD,cAAc,IAElB3W,OAAOsZ,eAAe68I,EAAW,cAAe,CAC5Cl1J,IAAK,WAAc,MAAO,eAC1B2V,YAAY,EACZD,cAAc,IAElB3W,OAAOsZ,eAAe68I,EAAW,wBAAyB,CACtDl1J,IAAK,WAAc,MAAO,0BAC1B2V,YAAY,EACZD,cAAc,IAElB3W,OAAOsZ,eAAe68I,EAAW,cAAe,CAC5Cl1J,IAAK,WAAc,MAAO,gBAC1B2V,YAAY,EACZD,cAAc,IAElB3W,OAAOsZ,eAAe68I,EAAW,SAAU,CACvCl1J,IAAK,WAAc,MAAO,UAC1B2V,YAAY,EACZD,cAAc,IAElB3W,OAAOsZ,eAAe68I,EAAW,yBAA0B,CACvDl1J,IAAK,WAAc,MAAO,2BAC1B2V,YAAY,EACZD,cAAc,IAElB3W,OAAOsZ,eAAe68I,EAAW,oBAAqB,CAClDl1J,IAAK,WAAc,MAAO,KAC1B2V,YAAY,EACZD,cAAc,IAElB3W,OAAOsZ,eAAe68I,EAAW,iBAAkB,CAC/Cl1J,IAAK,WAAc,MAAO,KAC1B2V,YAAY,EACZD,cAAc,IAElB3W,OAAOsZ,eAAe68I,EAAW,aAAc,CAC3Cl1J,IAAK,WAAc,OAAOrF,KAAKw6J,aAC/B1pJ,IAAK,SAAUnE,GACX3M,KAAKw6J,YAAc7tJ,GAEvBqO,YAAY,EACZD,cAAc,IAElB3W,OAAOsZ,eAAe68I,EAAW,cAAe,CAC5Cl1J,IAAK,WAAc,OAAOrF,KAAKy6J,cAC/B3pJ,IAAK,SAAUlE,GACX5M,KAAKy6J,aAAe7tJ,GAExBoO,YAAY,EACZD,cAAc,IAElB3W,OAAOsZ,eAAe68I,EAAW,QAAS,CACtCl1J,IAAK,WAAc,MAAO,SAC1B2V,YAAY,EACZD,cAAc,IAElB3W,OAAOsZ,eAAe68I,EAAW,aAAc,CAC3Cl1J,IAAK,WAAc,MAAO,eAC1B2V,YAAY,EACZD,cAAc,IAElB3W,OAAOsZ,eAAe68I,EAAW,UAAW,CACxCl1J,IAAK,WAAc,MAAO,WAC1B2V,YAAY,EACZD,cAAc,IAElB3W,OAAOsZ,eAAe68I,EAAW,OAAQ,CACrCl1J,IAAK,WAAc,MAAO,QAC1B2V,YAAY,EACZD,cAAc,IAElB3W,OAAOsZ,eAAe68I,EAAW,wBAAyB,CACtDl1J,IAAK,WAAc,MAAO,yBAC1B2V,YAAY,EACZD,cAAc,IAElB3W,OAAOsZ,eAAe68I,EAAW,SAAU,CACvCl1J,IAAK,WAAc,MAAO,UAC1B2V,YAAY,EACZD,cAAc,IAElB3W,OAAOsZ,eAAe68I,EAAW,cAAe,CAC5Cl1J,IAAK,WAAc,MAAO,UAC1B2V,YAAY,EACZD,cAAc,IAElB3W,OAAOsZ,eAAe68I,EAAW,eAAgB,CAC7Cl1J,IAAK,WAAc,MAAO,WAC1B2V,YAAY,EACZD,cAAc,IAElB3W,OAAOsZ,eAAe68I,EAAW,aAAc,CAC3Cl1J,IAAK,WAAc,MAAO,CAACrF,KAAK06J,YAAa16J,KAAK26J,eAClD3/I,YAAY,EACZD,cAAc,IAElB3W,OAAOsZ,eAAe68I,EAAW,0BAA2B,CACxDl1J,IAAK,WAAc,MAAO,uBAC1B2V,YAAY,EACZD,cAAc,IAElB3W,OAAOsZ,eAAe68I,EAAW,uBAAwB,CACrDl1J,IAAK,WAAc,MAAO,oBAC1B2V,YAAY,EACZD,cAAc,IAElB3W,OAAOsZ,eAAe68I,EAAW,wBAAyB,CACtDl1J,IAAK,WAAc,MAAO,qBAC1B2V,YAAY,EACZD,cAAc,IAElB3W,OAAOsZ,eAAe68I,EAAW,aAAc,CAC3Cl1J,IAAK,WAAc,MAAO,cAC1B2V,YAAY,EACZD,cAAc,IAElBw/I,EAAUC,YAAc,IACxBD,EAAUE,aAAe,IAClBF,EAlKmB,IAyK9B,SAAWtB,GACPA,EAAoB,SAAW,QAC/BA,EAAoB,SAAW,QAC/BA,EAAoB,SAAW,QAC/BA,EAAoB,qBAAuB,oBAC3CA,EAAoB,gBAAkB,eACtCA,EAAoB,YAAc,WAClCA,EAAoB,cAAgB,aACpCA,EAAoB,iBAAmB,gBACvCA,EAAoB,eAAiB,eATzC,CAUGA,IAAwBA,EAAsB,KAQ1C,IASI2B,EAeAC,EAKAC,EA7BAC,EAAgB,CACvBC,SAAU,WACVt1E,MAAO,QACPu1E,eAAgB,mBAOpB,SAAWL,GACPA,EAAmB,aAAe,YAClCA,EAAmB,yBAA2B,sBAC9CA,EAAmB,iBAAmB,gBACtCA,EAAmB,eAAiB,cACpCA,EAAmB,mBAAqB,qBACxCA,EAAmB,eAAiB,cACpCA,EAAmB,iBAAmB,gBACtCA,EAAmB,iBAAmB,gBACtCA,EAAmB,gBAAkB,qBACrCA,EAAmB,YAAc,UACjCA,EAAmB,sBAAwB,qBAC3CA,EAAmB,oBAAsB,oBAZ7C,CAaGA,IAAuBA,EAAqB,KAE/C,SAAWC,GACPA,EAAoB,WAAa,UACjCA,EAAoB,eAAiB,cAFzC,CAGGA,IAAwBA,EAAsB,KAEjD,SAAWC,GACPA,EAAe,eAAiB,cAChCA,EAAe,SAAW,QAC1BA,EAAe,cAAgB,oBAHnC,CAIGA,IAAmBA,EAAiB,KAChC,IAOII,EAPAC,EAAoB,4CACpBC,EAAkCD,EAAoB,8DACtDE,EAAoB,oCAM/B,SAAWH,GACPA,EAAS,WAAa,UACtBA,EAAS,OAAS,MAClBA,EAAS,cAAgB,aACzBA,EAAS,iBAAmB,gBAC5BA,EAAS,YAAc,WACvBA,EAAS,cAAgB,oBACzBA,EAAS,kBAAoB,yBAPjC,CAQGA,IAAaA,EAAW,KAIpB,IAAII,EAAsB,CAC7BJ,EAASK,IACTL,EAASM,YAEFC,EAAqB,CAC5BC,IAAK,MACLC,KAAM,QAQCC,EAAc,CACrBC,MAAO,QACPC,eAAgB,iBAChBC,QAAS,UACTC,KAAM,QAKCC,EAAc,CACrBC,eAAgB,mBAChBC,YAAa,kBAKV,SAASC,IACZ,MAAO,QEpRJ,ICQIC,EDRAC,EAAmB,CAC1BC,gBAAiB,CACb1nJ,KAAM,mBACN2nJ,KAAM,uCAEVC,oBAAqB,CACjB5nJ,KAAM,mBACN2nJ,KAAM,yCAMV,EAA2B,SAAU/xD,GAErC,SAASiyD,EAAUC,EAAW9nD,GAC1B,IAAIvO,EAAQmE,EAAOjxF,KAAKxZ,KAAM60G,IAAiB70G,KAK/C,OAJAoE,OAAO2kF,eAAeud,EAAOo2D,EAAUjiJ,WACvC6rF,EAAMq2D,UAAYA,EAClBr2D,EAAMuO,aAAeA,EACrBvO,EAAMj3F,KAAO,YACNi3F,EAQX,OAfA,OAAkBo2D,EAAWjyD,GAS7BiyD,EAAUE,sBAAwB,SAAUC,GACxC,OAAO,IAAIH,EAAUJ,EAAiBC,gBAAgB1nJ,KAAMynJ,EAAiBC,gBAAgBC,KAAO,KAAOK,IAE/GH,EAAUI,0BAA4B,SAAUD,GAC5C,OAAO,IAAIH,EAAUJ,EAAiBG,oBAAoB5nJ,KAAMynJ,EAAiBG,oBAAoBD,KAAO,IAAMK,IAE/GH,EAhBmB,CAiB5B9uJ,OE5BEmvJ,EAA6B,WAC7B,SAASA,KA8BT,OAvBAA,EAAYC,QAAU,SAAUz3I,GAC5B,MAAuB,qBAARA,IAAwBA,GAAO,IAAMA,EAAI7Z,QAO5DqxJ,EAAYE,6BAA+B,SAAU13I,GACjD,IACI,IAAI23I,EAAYt0D,KAAKhzC,MAAMrwC,GAO3B,OAAQ23I,GAAkC,kBAAdA,EAA0BA,EAAY,KAEtE,MAAOviJ,GACH,OAAO,OAGRoiJ,EA/BqB,GCArBI,EAAyB,CAChCC,yBAA0B,CACtBvoJ,KAAM,uBACN2nJ,KAAM,gFAEVa,wBAAyB,CACrBxoJ,KAAM,6BACN2nJ,KAAM,2EAEVc,iBAAkB,CACdzoJ,KAAM,qBACN2nJ,KAAM,4GAEVe,kBAAmB,CACf1oJ,KAAM,sBACN2nJ,KAAM,kDAEVgB,eAAgB,CACZ3oJ,KAAM,mBACN2nJ,KAAM,4BAEViB,kBAAmB,CACf5oJ,KAAM,sBACN2nJ,KAAM,kBAEVkB,mBAAoB,CAChB7oJ,KAAM,uBACN2nJ,KAAM,2CAEVmB,mBAAoB,CAChB9oJ,KAAM,uBACN2nJ,KAAM,8EAEVoB,0BAA2B,CACvB/oJ,KAAM,8BACN2nJ,KAAM,qFAEVqB,mBAAoB,CAChBhpJ,KAAM,iBACN2nJ,KAAM,4BAEVsB,cAAe,CACXjpJ,KAAM,iBACN2nJ,KAAM,uDAEVuB,uBAAwB,CACpBlpJ,KAAM,mBACN2nJ,KAAM,2FAEVwB,sBAAuB,CACnBnpJ,KAAM,oBACN2nJ,KAAM,wDAEVyB,wBAAyB,CACrBppJ,KAAM,6BACN2nJ,KAAM,+GAEV0B,4BAA6B,CACzBrpJ,KAAM,kCACN2nJ,KAAM,iGAEV2B,mBAAoB,CAChBtpJ,KAAM,yBACN2nJ,KAAM,sFAEV4B,iBAAkB,CACdvpJ,KAAM,yBACN2nJ,KAAM,iFAEV6B,mBAAoB,CAChBxpJ,KAAM,uBACN2nJ,KAAM,qDAEV8B,uBAAwB,CACpBzpJ,KAAM,2BACN2nJ,KAAM,uEAEV+B,gBAAiB,CACb1pJ,KAAM,qBACN2nJ,KAAM,iEAEVgC,iCAAkC,CAC9B3pJ,KAAM,uBACN2nJ,KAAM,8CAMV,EAAiC,SAAU/xD,GAE3C,SAASg0D,EAAgB9B,EAAW9nD,GAChC,IAAIvO,EAAQmE,EAAOjxF,KAAKxZ,KAAM28J,EAAW9nD,IAAiB70G,KAG1D,OAFAsmG,EAAMj3F,KAAO,kBACbjL,OAAO2kF,eAAeud,EAAOm4D,EAAgBhkJ,WACtC6rF,EA4EX,OAjFA,OAAkBm4D,EAAiBh0D,GAOnCg0D,EAAgBC,8BAAgC,SAAUC,GACtD,IAAI9pD,EAAesoD,EAAuBE,wBAAwBb,KAIlE,OAHImC,IAAc5B,EAAYC,QAAQ2B,KAClC9pD,GAAgB,aAAe8pD,GAE5B,IAAIF,EAAgBtB,EAAuBE,wBAAwBxoJ,KAAMggG,IAEpF4pD,EAAgBG,sCAAwC,SAAUn0J,GAC9D,OAAO,IAAIg0J,EAAgBtB,EAAuBC,yBAAyBvoJ,KAAM,yBAA2BpK,EAAQ,KAAO0yJ,EAAuBC,yBAAyBZ,KAAO,MAEtLiC,EAAgBI,uBAAyB,SAAUF,GAC/C,IAAI9pD,EAAesoD,EAAuBG,iBAAiBd,KAI3D,OAHImC,IAAc5B,EAAYC,QAAQ2B,KAClC9pD,GAAgB,aAAe8pD,GAE5B,IAAIF,EAAgBtB,EAAuBG,iBAAiBzoJ,KAAMggG,IAE7E4pD,EAAgBK,+BAAiC,WAC7C,OAAO,IAAIL,EAAgBtB,EAAuBI,kBAAkB1oJ,KAAMsoJ,EAAuBI,kBAAkBf,OAEvHiC,EAAgBM,0BAA4B,SAAUC,GAClD,OAAO,IAAIP,EAAgBtB,EAAuBK,eAAe3oJ,KAAMsoJ,EAAuBK,eAAehB,KAAO,iBAAmBwC,IAG3IP,EAAgBQ,wBAA0B,SAAUC,EAAcC,GAC9D,OAAO,IAAIV,EAAgBtB,EAAuBM,kBAAkB5oJ,KAAMsoJ,EAAuBM,kBAAkBjB,KAAO,IAAM0C,EAAe,sBAAwBC,EAAc,MAGzLV,EAAgBW,yBAA2B,SAAUC,EAAcC,GAC/D,OAAO,IAAIb,EAAgBtB,EAAuBO,mBAAmB7oJ,KAAMsoJ,EAAuBO,mBAAmBlB,KAAO,IAAM6C,EAAe,sBAAwBC,EAAc,MAE3Lb,EAAgBc,2BAA6B,WACzC,OAAO,IAAId,EAAgBtB,EAAuBQ,mBAAmB9oJ,KAAMsoJ,EAAuBQ,mBAAmBnB,OAEzHiC,EAAgBe,kCAAoC,WAChD,OAAO,IAAIf,EAAgBtB,EAAuBS,0BAA0B/oJ,KAAMsoJ,EAAuBS,0BAA0BpB,OAEvIiC,EAAgBgB,yBAA2B,WACvC,OAAO,IAAIhB,EAAgBtB,EAAuBU,mBAAmBhpJ,KAAMsoJ,EAAuBU,mBAAmBrB,OAEzHiC,EAAgBiB,8BAAgC,SAAUC,GACtD,OAAO,IAAIlB,EAAgBtB,EAAuBW,cAAcjpJ,KAAMsoJ,EAAuBW,cAActB,KAAO,IAAMmD,EAAY,MAExIlB,EAAgBmB,6BAA+B,WAC3C,OAAO,IAAInB,EAAgBtB,EAAuBY,uBAAuBlpJ,KAAMsoJ,EAAuBY,uBAAuBvB,OAEjIiC,EAAgBoB,4BAA8B,WAC1C,OAAO,IAAIpB,EAAgBtB,EAAuBa,sBAAsBnpJ,KAAMsoJ,EAAuBa,sBAAsBxB,OAE/HiC,EAAgBqB,8BAAgC,SAAUC,GACtD,OAAO,IAAItB,EAAgBtB,EAAuBc,wBAAwBppJ,KAAMsoJ,EAAuBc,wBAAwBzB,KAAO,uBAAyBuD,IAEnKtB,EAAgBuB,kCAAoC,SAAUD,GAC1D,OAAO,IAAItB,EAAgBtB,EAAuBe,4BAA4BrpJ,KAAMsoJ,EAAuBe,4BAA4B1B,KAAO,uBAAyBuD,IAE3KtB,EAAgBwB,8BAAgC,SAAUC,GACtD,OAAO,IAAIzB,EAAgBtB,EAAuBgB,mBAAmBtpJ,KAAMsoJ,EAAuBgB,mBAAmB3B,KAAO,wBAA0B0D,IAE1JzB,EAAgB0B,0BAA4B,SAAUC,GAClD,OAAO,IAAI3B,EAAgBtB,EAAuBiB,iBAAiBvpJ,KAAMsoJ,EAAuBiB,iBAAiB5B,KAAO,uBAAyB4D,IAErJ3B,EAAgB4B,yBAA2B,SAAUC,GACjD,OAAO,IAAI7B,EAAgBtB,EAAuBkB,mBAAmBxpJ,KAAMsoJ,EAAuBkB,mBAAmB7B,KAAO,yBAA2B8D,IAE3J7B,EAAgB8B,kCAAoC,WAChD,OAAO,IAAI9B,EAAgBtB,EAAuBmB,uBAAuBzpJ,KAAMsoJ,EAAuBmB,uBAAuB9B,OAEjIiC,EAAgB+B,sBAAwB,SAAUv/J,GAC9C,IAAI4zG,EAAe,gBAAkB5zG,EAAM,KAAOk8J,EAAuBoB,gBAAgB/B,KACzF,OAAO,IAAIiC,EAAgBtB,EAAuBoB,gBAAgB1pJ,KAAMggG,IAE5E4pD,EAAgBgC,4CAA8C,WAC1D,OAAO,IAAIhC,EAAgBtB,EAAuBqB,iCAAiC3pJ,KAAMsoJ,EAAuBqB,iCAAiChC,OAE9IiC,EAlFyB,CAmFlC,GC7KSiC,EAAkC,CACzCC,oBAAqB,CACjB9rJ,KAAM,gBACN2nJ,KAAM,uHAEVoE,oBAAqB,CACjB/rJ,KAAM,wBACN2nJ,KAAM,qDAEVqE,uBAAwB,CACpBhsJ,KAAM,wBACN2nJ,KAAM,iQAGVsE,sBAAuB,CACnBjsJ,KAAM,0BACN2nJ,KAAM,4KAGVuE,eAAgB,CACZlsJ,KAAM,kBACN2nJ,KAAM,kDAEVwE,YAAa,CACTnsJ,KAAM,2BACN2nJ,KAAM,2CAEVyE,eAAgB,CACZpsJ,KAAM,8BACN2nJ,KAAM,yCAEV0E,cAAe,CACXrsJ,KAAM,uBACN2nJ,KAAM,+EAEV2E,qBAAsB,CAClBtsJ,KAAM,yBACN2nJ,KAAM,qIAEV4E,qBAAsB,CAClBvsJ,KAAM,yBACN2nJ,KAAM,kCAEV6E,wBAAyB,CACrBxsJ,KAAM,6BACN2nJ,KAAM,mCAEV8E,+BAAgC,CAC5BzsJ,KAAM,mCACN2nJ,KAAM,sEAEV+E,mBAAoB,CAChB1sJ,KAAM,sBACN2nJ,KAAM,6JAEVgF,2BAA4B,CACxB3sJ,KAAM,iCACN2nJ,KAAM,mDAEViF,0BAA2B,CACvB5sJ,KAAM,gCACN2nJ,KAAM,kFAEVkF,0BAA2B,CACvB7sJ,KAAM,+BACN2nJ,KAAM,oDAEVmF,kBAAmB,CACf9sJ,KAAM,sBACN2nJ,KAAM,+BAEVoF,0BAA2B,CACvB/sJ,KAAM,qCACN2nJ,KAAM,gDAEVqF,qBAAsB,CAClBhtJ,KAAM,yBACN2nJ,KAAM,2DAEVsF,eAAgB,CACZjtJ,KAAM,mBACN2nJ,KAAM,iDAEVuF,8BAA+B,CAC3BltJ,KAAM,2BACN2nJ,KAAM,iIAMV,EAA0C,SAAU/xD,GAEpD,SAASu3D,EAAyBrF,EAAW9nD,GACzC,IAAIvO,EAAQmE,EAAOjxF,KAAKxZ,KAAM28J,EAAW9nD,IAAiB70G,KAG1D,OAFAsmG,EAAMj3F,KAAO,2BACbjL,OAAO2kF,eAAeud,EAAO07D,EAAyBvnJ,WAC/C6rF,EAgEX,OArEA,OAAkB07D,EAA0Bv3D,GAO5Cu3D,EAAyBC,8BAAgC,WACrD,OAAO,IAAID,EAAyBtB,EAAgCC,oBAAoB9rJ,KAAM,GAAK6rJ,EAAgCC,oBAAoBnE,OAE3JwF,EAAyBE,+BAAiC,SAAUC,GAChE,OAAO,IAAIH,EAAyBtB,EAAgCE,oBAAoB/rJ,KAAM6rJ,EAAgCE,oBAAoBpE,KAAO,oBAAsB2F,IAEnLH,EAAyBI,mCAAqC,WAC1D,OAAO,IAAIJ,EAAyBtB,EAAgCG,uBAAuBhsJ,KAAM6rJ,EAAgCG,uBAAuBrE,OAE5JwF,EAAyBK,iCAAmC,SAAUC,GAClE,OAAO,IAAIN,EAAyBtB,EAAgCI,sBAAsBjsJ,KAAM6rJ,EAAgCI,sBAAsBtE,KAAO,uCAAyC8F,IAE1MN,EAAyBO,4BAA8B,SAAUC,GAC7D,OAAO,IAAIR,EAAyBtB,EAAgCM,YAAYnsJ,KAAM6rJ,EAAgCM,YAAYxE,KAAO,iBAAmBgG,EAAc,MAE9KR,EAAyBS,0BAA4B,SAAUD,GAC3D,OAAO,IAAIR,EAAyBtB,EAAgCO,eAAepsJ,KAAM6rJ,EAAgCO,eAAezE,KAAO,iBAAmBgG,EAAc,MAEpLR,EAAyBU,0BAA4B,SAAUF,GAC3D,OAAO,IAAIR,EAAyBtB,EAAgCK,eAAelsJ,KAAM6rJ,EAAgCK,eAAevE,KAAO,iBAAmBgG,IAEtKR,EAAyBW,yBAA2B,SAAUC,GAC1D,OAAO,IAAIZ,EAAyBtB,EAAgCQ,cAAcrsJ,KAAM6rJ,EAAgCQ,cAAc1E,KAAO,iBAAmBoG,IAEpKZ,EAAyBa,gCAAkC,SAAUC,GACjE,OAAO,IAAId,EAAyBtB,EAAgCgB,0BAA0B7sJ,KAAM6rJ,EAAgCgB,0BAA0BlF,KAAO,iBAAmBsG,IAE5Ld,EAAyBe,wBAA0B,WAC/C,IAAI7gF,EAAKw+E,EAAgCiB,kBAAmB9sJ,EAAOqtE,EAAGrtE,KAAM2nJ,EAAOt6E,EAAGs6E,KACtF,OAAO,IAAIwF,EAAyBntJ,EAAM2nJ,IAE9CwF,EAAyBgB,gCAAkC,WACvD,OAAO,IAAIhB,EAAyBtB,EAAgCkB,0BAA0B/sJ,KAAM6rJ,EAAgCkB,0BAA0BpF,OAElKwF,EAAyBiB,kCAAoC,WACzD,OAAO,IAAIjB,EAAyBtB,EAAgCe,0BAA0B5sJ,KAAM6rJ,EAAgCe,0BAA0BjF,OAElKwF,EAAyBkB,gCAAkC,WACvD,OAAO,IAAIlB,EAAyBtB,EAAgCS,qBAAqBtsJ,KAAM6rJ,EAAgCS,qBAAqB3E,OAExJwF,EAAyBmB,8BAAgC,SAAU19J,GAC/D,OAAO,IAAIu8J,EAAyBtB,EAAgCa,mBAAmB1sJ,KAAM6rJ,EAAgCa,mBAAmB/E,KAAO,wBAA0B/2J,IAErLu8J,EAAyBoB,2BAA6B,SAAUl0H,GAC5D,IAAIgzC,EAAKw+E,EAAgCmB,qBAAsBhtJ,EAAOqtE,EAAGrtE,KAAM2nJ,EAAOt6E,EAAGs6E,KACrF6G,EAAe,CACfC,gBAAiB,SACjBC,mBAAoB,SACpBC,iBAAkB,YAElBC,EAAcr/J,OAAOie,KAAKghJ,GACzBl/G,QAAO,SAAU9hC,EAAMphB,GACxB,OAAOiuC,EAAOjuC,GAAOohB,EAAOA,EAAKiE,OAAO,CAACrlB,EAAM,KAAOoiK,EAAapiK,GAAO,QAC3E,IACH,OAAO,IAAI+gK,EAAyBntJ,EAAM2nJ,EAAO,mBAAqBiH,EAAYjvJ,KAAK,OAE3FwtJ,EAAyB0B,qBAAuB,WAC5C,OAAO,IAAI1B,EAAyBtB,EAAgCoB,eAAejtJ,KAAM6rJ,EAAgCoB,eAAetF,OAE5IwF,EAAyB2B,oCAAsC,WAC3D,OAAO,IAAI3B,EAAyBtB,EAAgCqB,8BAA8BltJ,KAAM6rJ,EAAgCqB,8BAA8BvF,OAEnKwF,EAtEkC,CAuE3C,GClKE,EAA0B,WAC1B,SAAS4B,KAwMT,OA/LAA,EAASC,qBAAuB,SAAUC,EAAcC,GAGpD,IAFA,IAAIC,EAAwBhkK,KAAKikK,+BAA+BH,EAAax4J,SACzE44J,EAAgBlkK,KAAKikK,+BAA+BF,EAAOz4J,SACtDoN,EAAI,EAAGA,EAAIwrJ,EAAcx4J,OAAQgN,IACtC,GAAIsrJ,EAAsB/5I,QAAQi6I,EAAcxrJ,GAAGpC,gBAAkB,EACjE,OAAO,EAGf,OAAO,GAQXstJ,EAASO,cAAgB,SAAUL,EAAcC,GAC7C,IAAIC,EAAwBhkK,KAAKikK,+BAA+BH,EAAax4J,SACzE44J,EAAgBlkK,KAAKikK,+BAA+BF,EAAOz4J,SAC/D,OAAO44J,EAAcE,OAAM,SAAUziK,GAAS,OAAOqiK,EAAsB/5I,QAAQtoB,EAAM8S,WAAW6B,gBAAkB,MAQ1HstJ,EAASS,0BAA4B,SAAU55J,GAC3C,OAAOA,EAAMutE,OAAO1hE,eAMxBstJ,EAASK,+BAAiC,SAAUF,GAChD,IAAIz9D,EAAQtmG,KACZ,OAAO+jK,EAAO1gK,KAAI,SAAUoH,GAAS,OAAO67F,EAAM+9D,0BAA0B55J,OAMhFm5J,EAASU,WAAa,SAAUP,GAC5B,OAAOA,EAAO1gK,KAAI,SAAUoH,GAAS,OAAOA,EAAMutE,WAStD4rF,EAAS9qF,cAAgB,SAAUirF,EAAQt5J,GACvC,IAAI85J,EAAWvkK,KAAKqkK,0BAA0B55J,GAC9C,OAAOs5J,EAAOzzH,QAAO,SAAU3uC,GAAS,OAAOA,IAAU4iK,MAM7DX,EAASY,WAAa,SAAUT,GAC5B,IAAIU,EAAY,GAChB,GAAIV,EACA,IAAK,IAAIrrJ,EAAI,EAAGA,EAAIqrJ,EAAOr4J,SAAUgN,EACjC+rJ,GAAc/rJ,IAAMqrJ,EAAOr4J,OAAS,EAAKq4J,EAAOrrJ,GAAK,IAAMqrJ,EAAOrrJ,GAG1E,OAAO+rJ,GAUXb,EAASc,mBAAqB,SAAUX,EAAQhD,GAC5C,GAAKgD,EAAL,CASA,IAAK/2J,MAAMsd,QAAQy5I,GACf,MAAM,EAAyBtB,0BAA0BsB,GAG7D,GAAIA,EAAOr4J,OAAS,GAAKq1J,EACrB,MAAM,EAAyBwB,4BAA4BwB,EAAOtvJ,iBAblE,GAAIssJ,EACA,MAAM,EAAyB2B,0BAA0BqB,IAuBrEH,EAASe,kBAAoB,SAAU7hK,GACnC,GAAIA,EAAO,CACP,IAAI8hK,EAAa9hK,EAAMmnB,QAAQswI,EAAUsK,mBACzC,GAAID,GAAc,GAAKA,EAAa,EAAI9hK,EAAM4I,OAC1C,OAAO5I,EAAM4e,UAAUkjJ,EAAa,GAG5C,MAAO,IAOXhB,EAASkB,aAAe,SAAUC,EAAWC,GACzC,GAAID,EAAW,CACX,IAAIE,EAAuBD,EAA0BhlK,KAAKikK,+BAA+Be,EAAwB15J,SAAW,KACxH45J,EAAqBllK,KAAKikK,+BAA+Bc,EAAUz5J,SACvE,OAAO25J,EAAuBC,EAAmB5+I,OAAO2+I,GAAwBC,EAEpF,OAAO,MAOXtB,EAASuB,uBAAyB,SAAUpB,GACxC,IAAIqB,EAAcrB,EAAOr4J,OACrB25J,EAAkB,EAOtB,OANItB,EAAO95I,QAAQswI,EAAUG,cAAgB,IACzC2K,GAAmB,GAEnBtB,EAAO95I,QAAQswI,EAAUI,eAAiB,IAC1C0K,GAAmB,GAEfD,EAAc,GAAKA,IAAgBC,GAM/CzB,EAAS0B,sBAAwB,SAAUvB,GACvC,IAAIwB,EAAsBxB,EAAO95I,QAAQswI,EAAUG,cAAgB,EAC/D8K,EAAuBzB,EAAO95I,QAAQswI,EAAUI,eAAiB,EACrE,OAAQ4K,GAAuBC,GAMnC5B,EAAS6B,qBAAuB,SAAU1B,EAAQ2B,GAE9C,QAAS3B,GAAWA,EAAO95I,QAAQy7I,IAAa,GAAuB,IAAlB3B,EAAOr4J,QAOhEk4J,EAAS+B,oBAAsB,SAAU5B,GACrC,IAAI6B,EAAiB7B,EAOrB,OANuD,IAAnD6B,EAAe37I,QAAQswI,EAAUG,cACjCkL,EAAet4J,KAAKitJ,EAAUG,cAEsB,IAApDkL,EAAe37I,QAAQswI,EAAUI,eACjCiL,EAAet4J,KAAKitJ,EAAUI,cAE3BiL,GAMXhC,EAASiC,oBAAsB,SAAU9B,GACrC,OAAOA,EAAOzzH,QAAO,SAAU7lC,GAC3B,OAAQA,IAAU8vJ,EAAUG,aAAejwJ,IAAU8vJ,EAAUI,iBASvEiJ,EAASkC,+BAAiC,SAAU/B,EAAQ2B,GACxD,OAAO1lK,KAAKylK,qBAAqB1B,EAAQ2B,GAAYnL,EAAUwL,WAAahC,GAEzEH,EAzMkB,GCKzB,EAA0B,WAC1B,SAASoC,KAkOT,OA5NAA,EAASC,kBAAoB,SAAUC,GACnC,IAAI3gJ,EAAMvlB,KAAKmmK,0BAA0BD,GACrCE,EAAeF,EAAoBG,kBAAkBC,sBAErDF,EAAan8I,QAAQ,KAAO,EAC5Bm8I,GAAgB,IAGhBA,GAAgB,IAEpB,IAAIG,EAAa,GAAKH,EAAe7gJ,EAAI/Q,KAAK,KAC9C,OAAO+xJ,GAMXP,EAASG,0BAA4B,SAAUD,GAC3C,IAAInC,EAAS,EAAS4B,oBAAoBO,EAAoBnC,QAC1Dx+I,EAAM,GAuBV,OAtBAA,EAAIjY,KAAK,iBAAmB44J,EAAoBM,cAChDjhJ,EAAIjY,KAAK,SAAWwH,mBAAmB,EAAS0vJ,WAAWT,KAC3Dx+I,EAAIjY,KAAK,aAAewH,mBAAmBoxJ,EAAoBR,WAC/DngJ,EAAIjY,KAAK,gBAAkBwH,mBAAmBoxJ,EAAoBO,cAClElhJ,EAAIjY,KAAK,SAAWwH,mBAAmBoxJ,EAAoBpjK,QAC3DyiB,EAAIjY,KAAK,SAAWwH,mBAAmBoxJ,EAAoBQ,QAC3DnhJ,EAAIjY,KAAK,iBACTiY,EAAIjY,KAAK,gBAAkB44J,EAAoBS,YAC/CphJ,EAAIjY,KAAK,gBAAkB44J,EAAoBU,YAC3CV,EAAoBtD,aACpBr9I,EAAIjY,KAAK,UAAYwH,mBAAmBoxJ,EAAoBtD,cAE5DsD,EAAoBW,aACpBthJ,EAAIjY,KAAK,UAAYwH,mBAAmBoxJ,EAAoBW,cAE5DX,EAAoBY,iBACpBvhJ,EAAIjY,KAAK44J,EAAoBY,iBAE7BZ,EAAoBa,sBACpBxhJ,EAAIjY,KAAK44J,EAAoBa,sBAEjCxhJ,EAAIjY,KAAK,qBAAuBwH,mBAAmBoxJ,EAAoBc,gBAChEzhJ,GAKXygJ,EAASiB,cAAgB,WACrB,OAAOn9I,OAAO4iG,SAAStnH,KAAKgO,MAAM,KAAK,GAAGA,MAAM,KAAK,IAKzD4yJ,EAASkB,kBAAoB,SAAUtiK,GACnC,OAAOA,EAAIwO,MAAM,KAAK,IAO1B4yJ,EAASmB,kBAAoB,SAAUviK,EAAKwiK,GACxC,IAAIC,EAAeziK,EAAI0R,cACnBgxJ,EAAYtnK,KAAKunK,iBAAiBF,GAClCG,EAAYF,EAAUG,aAI1B,OAHIL,GAAkC,IAArBI,EAAU97J,QAAiB87J,EAAU,KAAOjN,EAAUtvF,QAAUu8F,EAAU,KAAOtM,EAASwM,gBACvGF,EAAU,GAAKJ,GAEZpnK,KAAK2nK,gCAAgCL,EAAWE,IAE3DxB,EAAS2B,gCAAkC,SAAUL,EAAWE,GAC5D,OAAOxnK,KAAK4nK,gBAAgBN,EAAUO,SAAW,KAAOP,EAAUQ,gBAAkB,IAAMN,EAAUhzJ,KAAK,OAO7GwxJ,EAAS+B,kBAAoB,SAAUnjK,GACnC,IAAIojK,EAAYhoK,KAAK4nK,gBAAgBhjK,GACjC4iK,EAAYxnK,KAAKunK,iBAAiBS,GAAWP,aACjD,OAA6B,IAArBD,EAAU97J,QAAgB87J,EAAU,KAAOjN,EAAUtvF,QAOjE+6F,EAASiC,yBAA2B,SAAUrjK,GAC1C,IAAIojK,EAAYhoK,KAAK4nK,gBAAgBhjK,GACjC4iK,EAAYxnK,KAAKunK,iBAAiBS,GAAWP,aACjD,OAA6B,IAArBD,EAAU97J,QAAgB87J,EAAU,KAAOtM,EAASwM,eAMhE1B,EAASuB,iBAAmB,SAAU3iK,GAClC,IAAKA,EACD,KAAM,eAGV,IAAIsjK,EAAQC,OAAO,8DACfxmJ,EAAQ/c,EAAI+c,MAAMumJ,GACtB,IAAKvmJ,GAASA,EAAMjW,OAAS,EACzB,KAAM,qBAEV,IAAI08J,EAAgB,CAChBP,SAAUlmJ,EAAM,GAChBmmJ,gBAAiBnmJ,EAAM,GACvB0mJ,aAAc1mJ,EAAM,IAEpB2mJ,EAAeF,EAAcC,aAAaj1J,MAAM,KASpD,OARAk1J,EAAeA,EAAah4H,QAAO,SAAU3wB,GAAO,OAAOA,GAAOA,EAAIjU,OAAS,KAC/E08J,EAAcX,aAAea,EACzB3mJ,EAAM,KACNymJ,EAAcG,OAAS5mJ,EAAM,IAE7BA,EAAM,KACNymJ,EAAcI,KAAO7mJ,EAAM,IAExBymJ,GAOXpC,EAAS4B,gBAAkB,SAAUhjK,GAOjC,OANIA,IACAA,EAAMA,EAAI0R,eAEV1R,IAAQohK,EAASvS,SAAS7uJ,EAAK,OAC/BA,GAAO,KAEJA,GASXohK,EAASvS,SAAW,SAAU7uJ,EAAK6jK,GAC/B,SAAK7jK,IAAQ6jK,KAG+C,IAArD7jK,EAAIqlB,QAAQw+I,EAAQ7jK,EAAI8G,OAAS+8J,EAAO/8J,SAOnDs6J,EAAS0C,8BAAgC,SAAU9jK,EAAKyK,GACpD,GAAI0tJ,EAAYC,QAAQp4J,GACpB,OAAOA,EAEX,IAAI+jK,EAAQ,IAAIR,OAAO,OAAS94J,EAAO,WAQvC,OAPAzK,EAAMA,EAAI6T,QAAQkwJ,EAAO,IAEzBA,EAAQ,IAAIR,OAAO,IAAM94J,EAAO,YAChCzK,EAAMA,EAAI6T,QAAQkwJ,EAAO,IAEzBA,EAAQ,IAAIR,OAAO,IAAM94J,EAAO,WAChCzK,EAAMA,EAAI6T,QAAQkwJ,EAAO,IAClB/jK,GAQXohK,EAAS4C,eAAiB,SAAUC,GAChC,IAAIC,EAAaD,EAAoB5+I,QAAQ,KACzC8+I,EAAaF,EAAoB5+I,QAAQ,MAC7C,OAAI8+I,GAAc,EACPF,EAAoBnnJ,UAAUqnJ,EAAa,GAE7CD,GAAc,EACZD,EAAoBnnJ,UAAUonJ,EAAa,GAE/CD,GAOX7C,EAASgD,gBAAkB,SAAU9vJ,GACjC,IAAI+vJ,EAAajD,EAASkD,gBAAgBhwJ,GAC1C,OAAQ+vJ,EAAW7sJ,eAAe68I,EAAoBkQ,oBAClDF,EAAW7sJ,eAAe68I,EAAoBmQ,QAC9CH,EAAW7sJ,eAAe68I,EAAoBoQ,eAC9CJ,EAAW7sJ,eAAe68I,EAAoBqQ,WAOtDtD,EAASkD,gBAAkB,SAAUK,GACjC,IAAI7jK,EAAOsgK,EAAS4C,eAAeW,GACnC,OAAOrQ,EAAYkB,YAAY10J,IASnCsgK,EAASwD,eAAiB,SAAUC,GAEhC,IAAIC,EAAepkK,OAAOmkK,GAAKhxJ,QAAQ,iBAAkB,IAEzD,OADAixJ,EAAeA,EAAat2J,MAAM,KAAK,GAChCs2J,GAEJ1D,EAnOkB,GCFzB,EAAgC,WAChC,SAAS2D,EAAe3B,EAAWtC,EAAU3B,EAAQ35I,EAAKw/I,GACtD5pK,KAAKgoK,UAAY,EAASJ,gBAAgBI,GAC1ChoK,KAAK0lK,SAAWA,EAChB1lK,KAAK+jK,OAASA,EACd/jK,KAAK6pK,sBAAwB3Q,EAAYY,aAAa1vI,GAAO,IAAM8uI,EAAYY,aAAa8P,GAEhG,OAAOD,EAPwB,GCF/BG,EAAkC,WAClC,SAASA,EAAiBC,EAAa/K,EAASgL,EAAWH,GACvD7pK,KAAK+pK,YAAcA,EACnB/pK,KAAKg/J,QAAUA,EACfh/J,KAAKgqK,UAAYA,EACjBhqK,KAAK6pK,sBAAwBA,EAEjC,OAAOC,EAP0B,GCMjC,EAAyC,WAUzC,SAASG,EAAwBjC,EAAWtC,EAAUc,EAAcC,EAAa1C,EAAQjhK,EAAOkkK,GAC5FhnK,KAAKqmK,kBAAoB2B,EACzBhoK,KAAK0lK,SAAWA,EAChB1lK,KAAK0mK,MAAQxN,EAAYC,gBAEzBn5J,KAAK+jK,OAASA,EAASA,EAAOz4J,QAAUivJ,EAAUwL,WAClD/lK,KAAK+jK,OAAS,EAASO,WAAWtkK,KAAK+jK,QAEvC/jK,KAAK8C,MAAQA,EAEb9C,KAAKgnK,cAAgBA,EAErBhnK,KAAK2mK,WAAa,UAClB3mK,KAAK4mK,WAAaxK,IAClBp8J,KAAKwmK,aAAeA,EACpBxmK,KAAKymK,YAAcA,EAmNvB,OAjNAriK,OAAOsZ,eAAeusJ,EAAwBxvJ,UAAW,YAAa,CAClEpV,IAAK,WACD,OAAOrF,KAAKqmK,kBAAoBrmK,KAAKqmK,kBAAkB6D,mBAAqB,MAEhFlvJ,YAAY,EACZD,cAAc,IAUlBkvJ,EAAwBxvJ,UAAU0vJ,oBAAsB,SAAUC,EAASxxI,EAASyxI,EAAmBC,GACnG,IAAIxD,EAAkB,GAClBluI,IAEIA,EAAQ2xI,SACRvqK,KAAK4iK,YAAchqI,EAAQ2xI,QAG3B3xI,EAAQ4xI,gBACRxqK,KAAK6mK,YAAcjuI,EAAQ4xI,eAG3BP,EAAwBQ,WAAW7xI,KACnCkuI,EAAkB9mK,KAAK0qK,oCAAoC9xI,EAAS,QAGxEyxI,IACAvD,EAAkB9mK,KAAK0qK,oCAAoC,KAAML,IAMrEvD,EAAkB9mK,KAAK2qK,kBAAkBP,EAAStD,GAElD,IAAI8D,EAAWhyI,EAAUA,EAAQmuI,qBAAuB,KAExD/mK,KAAK8mK,gBAAkBmD,EAAwBY,8BAA8B/D,GAC7E9mK,KAAK+mK,qBAAuBkD,EAAwBY,8BAA8BD,EAAUN,IAYhGL,EAAwBxvJ,UAAUiwJ,oCAAsC,SAAU9xI,EAASkyI,GAEvF,IAAIC,EACAC,EACAC,EAAiB,GAErB,GAAIryI,EACA,GAAIA,EAAQwxI,QAAS,CACjB,IAAIA,EAAUxxI,EAAQwxI,QAClBA,EAAQc,KACRH,EAAU7P,EAASK,IACnByP,EAAUZ,EAAQc,KAEbd,EAAQe,WACbJ,EAAU7P,EAASM,WACnBwP,EAAUZ,EAAQe,eAIjBvyI,EAAQsyI,KACbH,EAAU7P,EAASK,IACnByP,EAAUpyI,EAAQsyI,KAGbtyI,EAAQwyI,YACbL,EAAU7P,EAASM,WACnBwP,EAAUpyI,EAAQwyI,gBAIjBN,GACDA,EAAc1uJ,eAAem+I,EAAU8Q,OACvCN,EAAU7P,EAASoO,SACnB0B,EAAUF,EAAcO,KAIhC,OADAJ,EAAiBjrK,KAAKsrK,gBAAgBP,EAASC,GACxCC,GAgBXhB,EAAwBxvJ,UAAUkwJ,kBAAoB,SAAUP,EAASmB,GAKrE,GAAInB,IAAYmB,EAAQrQ,EAASK,KAAM,CAEnC,IAAIiQ,GAAeD,EAAQrQ,EAASM,aAAe4O,EAAQc,KAAOlrK,KAAK4iK,cAAgBhH,EAAYI,KACnG,GAAIwP,EACAD,EAAUvrK,KAAKsrK,gBAAgBpQ,EAASK,IAAK6O,EAAQc,IAAKK,OAGzD,CACD,IAAIE,GAAqBF,EAAQrQ,EAASM,aAAe4O,EAAQe,WAAapO,EAAYC,QAAQoN,EAAQe,UACtGM,IACAF,EAAUvrK,KAAKsrK,gBAAgBpQ,EAASM,WAAY4O,EAAQe,SAAUI,KAIlF,OAAOA,GAMXtB,EAAwBxvJ,UAAU6wJ,gBAAkB,SAAUP,EAASC,EAASU,GAI5E,GAHKA,IACDA,EAAW,KAEVV,EACD,OAAOU,EAEX,OAAQX,GACJ,KAAK7P,EAASK,IACVmQ,EAASxQ,EAASK,KAAOyP,EACzB,MAEJ,KAAK9P,EAASoO,SACVoC,EAASxQ,EAASM,YAAcwP,EAChC,MAEJ,KAAK9P,EAASM,WACVkQ,EAASxQ,EAASM,YAAcwP,EAChC,MAGR,OAAOU,GAMXzB,EAAwBY,8BAAgC,SAAU/D,EAAiBwD,GAC/E,IAAIqB,EAAe,KAenB,OAdI7E,GACA1iK,OAAOie,KAAKykJ,GAAiB7hK,SAAQ,SAAUhE,GAEvCA,IAAQs5J,EAAUqR,cAAgBtB,GAAcxD,EAAgB5L,EAASK,QAGzD,MAAhBoQ,EACAA,EAAe1qK,EAAM,IAAM6T,mBAAmBgyJ,EAAgB7lK,IAG9D0qK,GAAgB,IAAM1qK,EAAM,IAAM6T,mBAAmBgyJ,EAAgB7lK,QAI1E0qK,GAOX1B,EAAwBQ,WAAa,SAAU7xI,GAC3C,OAAOA,IAAYA,EAAQwxI,SAAWxxI,EAAQsyI,KAAOtyI,EAAQwyI,YAQjEnB,EAAwB4B,sBAAwB,SAAUC,EAAe/H,GAErE,OAAI,EAASoB,uBAAuBpB,GACzBhJ,EAAcC,SAGlB,EAAkBh7J,KAAK+rK,gCAAgChI,GAAUhJ,EAAcE,gBAO1FgP,EAAwB8B,gCAAkC,SAAUhI,GAEhE,OAAQ,EAASuB,sBAAsBvB,GAAWhJ,EAAcE,eAAiBF,EAAcr1E,OAE5FukF,EA5OiC,GCHxC,EAA2B,WAC3B,SAAS+B,KAwDT,OAtDAA,EAAUvxJ,UAAUwxJ,iBAAmB,SAAUrnK,EAAKi1B,EAAQqyI,GAC1D,IAAI5lE,EAAQtmG,KACZ,OAAO,IAAIgpJ,SAAQ,SAAU30H,EAAS83I,GAClC,IAAIv4D,EAAM,IAAIC,eA4Bd,GA3BAD,EAAIE,KAAKj6E,EAAQj1B,GAAkB,GAOnCgvG,EAAII,OAAS,WAIT,IAAIo4D,GAHAx4D,EAAIK,OAAS,KAAOL,EAAIK,QAAU,MAClCk4D,EAAO7lE,EAAM+lE,YAAYz4D,EAAIM,eAGjC,IACIk4D,EAAexjE,KAAKhzC,MAAMg+C,EAAIM,cAElC,MAAOn4F,GACHowJ,EAAO7lE,EAAM+lE,YAAYz4D,EAAIM,eAEjC,IAAIo4D,EAAW,CACXC,WAAY34D,EAAIK,OAChBhwD,KAAMmoH,GAEV/3I,EAAQi4I,IAEZ14D,EAAIQ,QAAU,WACV+3D,EAAOv4D,EAAIK,SAEXp6E,IAAW4hI,EAAmBC,IAI9B,KAAM,kBAHN9nD,EAAIS,WAOhB23D,EAAUvxJ,UAAU4xJ,YAAc,SAAUn4D,GACxC,IAAIk4D,EACJ,IAEI,GADAA,EAAexjE,KAAKhzC,MAAMs+C,GACtBk4D,EAAazxJ,MACb,OAAOyxJ,EAAazxJ,MAGpB,MAAMu5F,EAGd,MAAOn4F,GACH,OAAOm4F,IAGR83D,EAzDmB,GCF1B,EAAkC,WAClC,SAASQ,KAiFT,OA1EAA,EAAiBC,gCAAkC,SAAUC,EAAmBC,GACxED,IAAsB1sK,KAAK4sK,qBAAqBlhK,QAChDihK,EAAiB1nK,SAAQ,SAAU+iK,GAC/BwE,EAAiBK,gBAAgBv/J,KAAK06J,EAAU1xJ,mBAS5Dk2J,EAAiBM,WAAa,SAAUC,EAAmBC,EAAkBhG,GACzE,OAAO,OAAkBhnK,UAAM,OAAQ,GAAQ,WAC3C,IAAIitK,EAAQC,EAAYC,EAA2BC,EACnD,OAAO,OAAoBptK,MAAM,SAAUkiF,GAKvC,OAJA+qF,EAAS,IAAI,EACbC,EAAazR,EAAmBC,IAChCyR,EAA4B,GAAK/R,EAAkC2R,EAAoB,wBACvFK,EAAYJ,EAAiBK,wBAAwBrG,EAAekG,EAAYC,EAA2B,cACpG,CAAC,EAAcF,EAAOhB,iBAAiBkB,EAA2BD,GAAY,GAC5EljE,MAAK,SAAUsiE,GAGhB,OAFAc,EAAUE,mBAAqBhB,EAASC,WACxCS,EAAiBO,UAAUH,GACpBd,EAASroH,KAAKhR,YAEpBu6H,OAAM,SAAUr5D,GAGjB,MAFAi5D,EAAUK,gBAAkBt5D,EAC5B64D,EAAiBO,UAAUH,GACrBj5D,aAU1Bq4D,EAAiBkB,iCAAmC,SAAUX,EAAmBC,EAAkBhG,GAC/F,OAAO,OAAkBhnK,UAAM,OAAQ,GAAQ,WAC3C,IAAIizC,EAAUxtC,EACd,OAAO,OAAoBzF,MAAM,SAAUkiF,GACvC,OAAQA,EAAG/zE,OACP,KAAK,EAAG,MAAO,CAAC,EAAanO,KAAK8sK,WAAWC,EAAmBC,EAAkBhG,IAClF,KAAK,EAaD,OAZA/zH,EAAWivC,EAAGyrF,OACd16H,EAAShuC,SAAQ,SAAU2oK,GACvB,IAAIC,EAAcD,EAAME,QACxBD,EAAY5oK,SAAQ,SAAU+iK,GAC1BwE,EAAiBK,gBAAgBv/J,KAAK06J,EAAU1xJ,qBAGxD7Q,EAAO,EAAS8hK,iBAAiBwF,GAAmBjF,gBAChD0E,EAAiBI,qBAAqBlhK,SAAW8gK,EAAiBuB,oBAAoBtoK,IAEtF+mK,EAAiBK,gBAAgBv/J,KAAK7H,EAAK6Q,eAExC,CAAC,WAK5Bk2J,EAAiBI,mBAAqB,WAClC,OAAO5sK,KAAK6sK,iBAMhBL,EAAiBuB,oBAAsB,SAAUtoK,GAC7C,OAAOzF,KAAK6sK,gBAAgB5iJ,QAAQxkB,EAAK6Q,gBAAkB,GAE/Dk2J,EAAiBK,gBAAkB,GAC5BL,EAlF0B,IVMrC,SAAWnQ,GACPA,EAAcA,EAAc,WAAa,GAAK,UAC9CA,EAAcA,EAAc,QAAU,GAAK,QAF/C,CAGGA,IAAkBA,EAAgB,KAIrC,IWfW2R,EXeP,EAA2B,WAC3B,SAASC,EAAUjG,EAAW0E,EAAmBwB,GAC7CluK,KAAKmuK,oBAAsBzB,EAC3B1sK,KAAKkqK,mBAAqBlC,EAC1BhoK,KAAKouK,gBACLpuK,KAAKquK,wBAA0BH,EA8KnC,OA5KAD,EAAUK,OAAS,SAAUC,GACzB,IAAI/rK,EAAa,EAAS+kK,iBAAiBgH,GACvCjG,EAAe9lK,EAAWilK,aAC9B,OAAQa,EAAa58J,QAAU48J,EAAa,GAAGhyJ,gBAAkBikJ,EAAUiU,MAE/EpqK,OAAOsZ,eAAeuwJ,EAAUxzJ,UAAW,gBAAiB,CACxDpV,IAAK,WACD,OAAO4oK,EAAUK,OAAOtuK,KAAKyuK,oBAAsBpS,EAAcqS,KAAOrS,EAAcsS,SAE1F3zJ,YAAY,EACZD,cAAc,IAElB3W,OAAOsZ,eAAeuwJ,EAAUxzJ,UAAW,SAAU,CACjDpV,IAAK,WACD,OAAOrF,KAAK4uK,gCAAgCnH,aAAa,IAE7DzsJ,YAAY,EACZD,cAAc,IAElB3W,OAAOsZ,eAAeuwJ,EAAUxzJ,UAAW,wBAAyB,CAChEpV,IAAK,WAED,OADArF,KAAK6uK,mBACE7uK,KAAKquK,wBAAwB/H,sBAAsB7tJ,QAAQ,uBAAwBzY,KAAK8uK,SAEnG9zJ,YAAY,EACZD,cAAc,IAElB3W,OAAOsZ,eAAeuwJ,EAAUxzJ,UAAW,qBAAsB,CAC7DpV,IAAK,WAED,OADArF,KAAK6uK,mBACE7uK,KAAKquK,wBAAwBU,mBAAmBt2J,QAAQ,uBAAwBzY,KAAK8uK,SAEhG9zJ,YAAY,EACZD,cAAc,IAElB3W,OAAOsZ,eAAeuwJ,EAAUxzJ,UAAW,wBAAyB,CAChEpV,IAAK,WAED,OADArF,KAAK6uK,mBACE7uK,KAAKquK,wBAAwBW,OAAOv2J,QAAQ,uBAAwBzY,KAAK8uK,SAEpF9zJ,YAAY,EACZD,cAAc,IAElBkzJ,EAAUxzJ,UAAUo0J,iBAAmB,WACnC,IAAK7uK,KAAKivK,oBACN,KAAM,2CAGd7qK,OAAOsZ,eAAeuwJ,EAAUxzJ,UAAW,qBAAsB,CAI7DpV,IAAK,WACD,OAAOrF,KAAKyuK,oBAEhB39J,IAAK,SAAUlM,GACX5E,KAAKyuK,mBAAqB,EAAS7G,gBAAgBhjK,GACnD5E,KAAKkvK,gCAAkC,MAE3Cl0J,YAAY,EACZD,cAAc,IAElB3W,OAAOsZ,eAAeuwJ,EAAUxzJ,UAAW,kCAAmC,CAC1EpV,IAAK,WAID,OAHKrF,KAAKkvK,kCACNlvK,KAAKkvK,gCAAkC,EAAS3H,iBAAiBvnK,KAAKkqK,qBAEnElqK,KAAKkvK,iCAEhBl0J,YAAY,EACZD,cAAc,IAElB3W,OAAOsZ,eAAeuwJ,EAAUxzJ,UAAW,qCAAsC,CAE7EpV,IAAK,WACD,OAAQrF,KAAKq8J,gBAAkBA,EAAcqS,KAAQ,GAAK1uK,KAAKkqK,mBAAqB7O,EAAoBr7J,KAAKkqK,mBAAqB,QAAU7O,GAEhJrgJ,YAAY,EACZD,cAAc,IAKlBkzJ,EAAUxzJ,UAAU2zJ,cAAgB,WAChC,IAAI5rK,EACJ,IACIA,EAAaxC,KAAK4uK,gCAEtB,MAAO7yJ,GACH,MAAM2kJ,EAAgCS,qBAE1C,IAAK3+J,EAAWqlK,UAAkD,WAAtCrlK,EAAWqlK,SAASvxJ,cAC5C,MAAMoqJ,EAAgCU,qBAE1C,IAAK5+J,EAAWilK,cAAgBjlK,EAAWilK,aAAa/7J,OAAS,EAC7D,MAAMg1J,EAAgCW,yBAM9C4M,EAAUxzJ,UAAU00J,kBAAoB,SAAUC,EAA6BpC,EAAkBhG,GAC7F,IAAIiG,EAAS,IAAI,EACbC,EAAazR,EAAmBC,IAChC0R,EAAYJ,EAAiBK,wBAAwBrG,EAAekG,EAAYkC,EAA6B,+BACjH,OAAOnC,EAAOhB,iBAAiBmD,EAA6BlC,GAAiC,GACxFljE,MAAK,SAAUsiE,GAGhB,OAFAc,EAAUE,mBAAqBhB,EAASC,WACxCS,EAAiBO,UAAUH,GACpB,CACH9G,sBAAuBgG,EAASroH,KAAKorH,uBACrCN,mBAAoBzC,EAASroH,KAAKqrH,qBAClCN,OAAQ1C,EAASroH,KAAKsrH,WAGzB/B,OAAM,SAAUr5D,GAGjB,MAFAi5D,EAAUK,gBAAkBt5D,EAC5B64D,EAAiBO,UAAUH,GACrBj5D,MASd85D,EAAUxzJ,UAAU+0J,sBAAwB,SAAUxC,EAAkBhG,GACpE,OAAO,OAAkBhnK,UAAM,OAAQ,GAAQ,WAC3C,IAAIyF,EAAMgqK,EAAqCvtF,EAC/C,OAAO,OAAoBliF,MAAM,SAAU+1F,GACvC,OAAQA,EAAG5nF,OACP,KAAK,EACD,OAAKnO,KAAKmuK,qBACV1oK,EAAOzF,KAAKkvK,gCAAgCpH,gBACW,IAAjD,EAAiB8E,qBAAqBlhK,OAAsB,CAAC,EAAa,GACzE,CAAC,EAAa,EAAiBgiK,iCAAiC1tK,KAAKyuK,mBAAoBzB,EAAkBhG,KAH5E,CAAC,EAAa,GAIxD,KAAK,EACDjxE,EAAG43E,OACH53E,EAAG5nF,MAAQ,EACf,KAAK,EACD,IAAK,EAAiB4/J,oBAAoBtoK,GACtC,MAAM,EAAyB09J,8BAA8B19J,GAEjEswF,EAAG5nF,MAAQ,EACf,KAAK,EAGD,OAFAshK,EAAsCzvK,KAAK0vK,iCAC3CxtF,EAAKliF,KACE,CAAC,EAAaA,KAAKmvK,kBAAkBM,EAAqCzC,EAAkBhG,IACvG,KAAK,EAED,OADA9kF,EAAGmsF,wBAA0Bt4E,EAAG43E,OACzB,CAAC,EAAc3tK,KAAKquK,iCAQ/CJ,EAAUxzJ,UAAUw0J,kBAAoB,WACpC,SAAUjvK,KAAKquK,yBACXruK,KAAKquK,wBAAwB/H,uBAC7BtmK,KAAKquK,wBAAwBU,oBAC7B/uK,KAAKquK,wBAAwBW,SAMrCf,EAAUxzJ,UAAUi1J,+BAAiC,WACjD,OAAO1vK,KAAK2vK,oCAET1B,EAnLmB,GYX1B,EAA4B,WAC5B,SAAS2B,EAAWC,EAAe7H,GAC/B,IAAK6H,GAAiB9S,EAAYC,QAAQ6S,GAGtC,OAFA7vK,KAAKoqB,IAAM,QACXpqB,KAAK4pK,KAAO,IAGhB,IACI,IAAIkG,EAAoB5W,EAAYc,aAAa6V,GAC7CE,EAAannE,KAAKhzC,MAAMk6G,GACxBC,IACIA,EAAW3zJ,eAAe,SAC1Bpc,KAAKoqB,IAAM49I,EAAY4H,EAAWI,mBAAmBD,EAAW3lJ,IAAK49I,GAAa+H,EAAW3lJ,KAE7F2lJ,EAAW3zJ,eAAe,UAC1Bpc,KAAK4pK,KAAOmG,EAAWnG,OAInC,MAAO7tJ,GACH,MAAM,EAAgB+jJ,8BAA8B/jJ,IAoD5D,OAjDA3X,OAAOsZ,eAAekyJ,EAAWn1J,UAAW,MAAO,CAC/CpV,IAAK,WACD,OAAOrF,KAAKiwK,KAAOjwK,KAAKiwK,KAAO,IAEnCn/J,IAAK,SAAUsZ,GACXpqB,KAAKiwK,KAAO7lJ,GAEhBpP,YAAY,EACZD,cAAc,IAElB3W,OAAOsZ,eAAekyJ,EAAWn1J,UAAW,OAAQ,CAChDpV,IAAK,WACD,OAAOrF,KAAKkwK,MAAQlwK,KAAKkwK,MAAQ,IAErCp/J,IAAK,SAAU84J,GACX5pK,KAAKkwK,MAAQtG,GAEjB5uJ,YAAY,EACZD,cAAc,IAElB60J,EAAWO,4BAA8B,SAAUnR,EAASgJ,GACxD,IAAI+H,EAAa,CACb3lJ,IAAK40I,EAAQoR,QACbxG,KAAM,IAEV,OAAO,IAAIgG,EAAW1W,EAAYY,aAAalxD,KAAKC,UAAUknE,IAAc/H,IAEhF4H,EAAWI,mBAAqB,SAAU5lJ,EAAK49I,GAC3C,IAAIqI,EAAcjmJ,EAAIhX,MAAM,KAExBk9J,EAActI,EAAU50J,MAAM,KAAK4X,UACnCulJ,EAAS,GAQb,OAPKxT,EAAYC,QAAQsT,EAAY,IAG5BA,EAAY5kK,OAAS,IAE1B6kK,EAASD,EAAY,IAJrBC,EAASD,EAAY,GAMrBD,EAAYA,EAAY3kK,OAAS,KAAO6kK,EAEjCF,EAAY/kK,MAAM,EAAG+kK,EAAY3kK,OAAS,GAAG8I,KAAK,KAEtD4V,GAEXwlJ,EAAWn1J,UAAU+1J,iBAAmB,WACpC,IAAIT,EAAannE,KAAKC,UAAU,CAAEz+E,IAAKpqB,KAAKoqB,IAAKw/I,KAAM5pK,KAAK4pK,OAC5D,OAAO1Q,EAAYY,aAAaiW,IAE7BH,EAxEoB,GCH3Ba,EAA2B,WAC3B,SAASA,KA0BT,OAnBAA,EAAUC,eAAiB,SAAU1G,GAKjC,OAHKA,IACDA,EAAY,QAET5nK,SAAS4nK,EAAW,KAK/ByG,EAAUtoK,IAAM,WACZ,OAAO+I,KAAKiQ,OAAM,IAAIjZ,MAAOD,UAAY,MAK7CwoK,EAAUE,cAAgB,WACtB,OAAO7mJ,OAAO+nH,YAAY1pI,OAEvBsoK,EA3BmB,GCG1B,EAA4B,WAC5B,SAASG,KA0DT,OAnDAA,EAAWC,UAAY,SAAUC,GAC7B,GAAI/T,EAAYC,QAAQ8T,GACpB,OAAO,KAEX,IAAIC,EAAoB,uCACpBl9I,EAAUk9I,EAAkBhnK,KAAK+mK,GACrC,IAAKj9I,GAAWA,EAAQnoB,OAAS,EAE7B,OAAO,KAEX,IAAIslK,EAAe,CACfj6D,OAAQljF,EAAQ,GAChBo9I,WAAYp9I,EAAQ,GACpBq9I,OAAQr9I,EAAQ,IAEpB,OAAOm9I,GAMXJ,EAAWO,iCAAmC,SAAUC,EAAYC,GAChE,IAAI1qI,EAAS0qI,GAA6B,IAC1C,OAAOD,GAAeA,EAAaX,EAAUtoK,MAAQw+B,GAOzDiqI,EAAWU,eAAiB,SAAUC,GAElC,IAAIC,EAAexxK,KAAK6wK,UAAUU,GAClC,IAAKC,EACD,OAAO,KAEX,IACI,IAAIC,EAAgBD,EAAaP,WAC7BS,EAAgBxY,EAAYc,aAAayX,GAC7C,OAAKC,EAKE9oE,KAAKhzC,MAAM87G,GAHP,KAKf,MAAOv9D,IAGP,OAAO,MAEJy8D,EA3DoB,GCA3B,EAAyB,WAEzB,SAASe,EAAQC,GACb,GAAI7U,EAAYC,QAAQ4U,GACpB,MAAM,EAAgB3R,8BAA8B2R,GAExD,IACI5xK,KAAK4xK,WAAaA,EAClB5xK,KAAK6xK,OAAS,EAAWP,eAAeM,GACpC5xK,KAAK6xK,SACD7xK,KAAK6xK,OAAOz1J,eAAe,SAC3Bpc,KAAKuvK,OAASvvK,KAAK6xK,OAAO,QAE1B7xK,KAAK6xK,OAAOz1J,eAAe,SAC3Bpc,KAAK8xK,SAAW9xK,KAAK6xK,OAAO,QAE5B7xK,KAAK6xK,OAAOz1J,eAAe,SAC3Bpc,KAAKowK,QAAUpwK,KAAK6xK,OAAO,QAE3B7xK,KAAK6xK,OAAOz1J,eAAe,SAC3Bpc,KAAKonK,SAAWpnK,KAAK6xK,OAAO,QAE5B7xK,KAAK6xK,OAAOz1J,eAAe,SAC3Bpc,KAAKk3J,QAAUl3J,KAAK6xK,OAAO,QAE3B7xK,KAAK6xK,OAAOz1J,eAAe,sBAC3Bpc,KAAK+xK,cAAgB/xK,KAAK6xK,OAAO,sBAE5B7xK,KAAK6xK,OAAOz1J,eAAe,SAChCpc,KAAK+xK,cAAgB/xK,KAAK6xK,OAAO,QAEjC7xK,KAAK6xK,OAAOz1J,eAAe,UAC3Bpc,KAAKqP,KAAOrP,KAAK6xK,OAAO,SAExB7xK,KAAK6xK,OAAOz1J,eAAe,WAC3Bpc,KAAK0mK,MAAQ1mK,KAAK6xK,OAAO,UAEzB7xK,KAAK6xK,OAAOz1J,eAAe,SAC3Bpc,KAAKoxK,WAAapxK,KAAK6xK,OAAO,QAE9B7xK,KAAK6xK,OAAOz1J,eAAe,cAC3Bpc,KAAKgyK,aAAehyK,KAAK6xK,OAAO,aAEhC7xK,KAAK6xK,OAAOz1J,eAAe,SAC3Bpc,KAAKkrK,IAAMlrK,KAAK6xK,OAAO,QAEvB7xK,KAAK6xK,OAAOz1J,eAAe,8BAC3Bpc,KAAKiyK,cAAgBjyK,KAAK6xK,OAAO,8BAK7C,MAAO91J,GAKH,MAAM,EAAgBokJ,0BAA0BpkJ,IAGxD,OAAO41J,EA5DiB,GCHxBO,EAAsC,WACtC,SAASA,EAAqBjxK,EAAKU,GAC/B3B,KAAKiB,IAAMA,EACXjB,KAAK2B,MAAQA,EAEjB,OAAOuwK,EAL8B,GCErC,EAAgC,WAChC,SAASC,EAAeC,GACpB,IAAKtoJ,OACD,MAAM,EAAUgzI,0BAA0B,sDAE9C,IAAIuV,EAAoD,qBAA1BvoJ,OAAOsoJ,IAA2D,MAAzBtoJ,OAAOsoJ,GAC9E,IAAKC,EACD,MAAM,EAAyBnQ,+BAA+BkQ,GAElEpyK,KAAKoyK,cAAgBA,EAsFzB,OA9EAD,EAAe13J,UAAU63J,QAAU,SAAUrxK,EAAKU,EAAO4wK,GACrDzoJ,OAAO9pB,KAAKoyK,eAAeE,QAAQrxK,EAAKU,GACpC4wK,GACAvyK,KAAKwyK,cAAcvxK,EAAKU,IAQhCwwK,EAAe13J,UAAUg4J,QAAU,SAAUxxK,EAAKsxK,GAC9C,OAAIA,GAAuBvyK,KAAK0yK,cAAczxK,GACnCjB,KAAK0yK,cAAczxK,GAEvB6oB,OAAO9pB,KAAKoyK,eAAeK,QAAQxxK,IAM9CkxK,EAAe13J,UAAUk4J,WAAa,SAAU1xK,GAC5C,OAAO6oB,OAAO9pB,KAAKoyK,eAAeO,WAAW1xK,IAKjDkxK,EAAe13J,UAAUoV,MAAQ,WAC7B,OAAO/F,OAAO9pB,KAAKoyK,eAAeviJ,SAQtCsiJ,EAAe13J,UAAU+3J,cAAgB,SAAUI,EAAOC,EAAQC,GAC9D,IAAIC,EAAYH,EAAQ,IAAMC,EAAS,WACvC,GAAIC,EAAS,CACT,IAAIE,EAAahzK,KAAKizK,wBAAwBH,GAC9CC,GAAa,WAAaC,EAAa,IAE3CjoI,SAASmoI,OAASH,GAMtBZ,EAAe13J,UAAUi4J,cAAgB,SAAUE,GAG/C,IAFA,IAAIvjK,EAAOujK,EAAQ,IACfx/E,EAAKroD,SAASmoI,OAAO9/J,MAAM,KACtBsF,EAAI,EAAGA,EAAI06E,EAAG1nF,OAAQgN,IAAK,CAChC,IAAImG,EAAIu0E,EAAG16E,GACX,MAAuB,MAAhBmG,EAAEvM,OAAO,GACZuM,EAAIA,EAAE6C,UAAU,GAEpB,GAAwB,IAApB7C,EAAEoL,QAAQ5a,GACV,OAAOwP,EAAE6C,UAAUrS,EAAK3D,OAAQmT,EAAEnT,QAG1C,MAAO,IAMXymK,EAAe13J,UAAU04J,gBAAkB,SAAUP,GACjD5yK,KAAKwyK,cAAcI,EAAO,IAAK,IAMnCT,EAAe13J,UAAUw4J,wBAA0B,SAAUG,GACzD,IAAI95D,EAAQ,IAAIpxG,KACZmrK,EAAO,IAAInrK,KAAKoxG,EAAMrxG,UAA6B,GAAjBmrK,EAAsB,GAAK,GAAK,KACtE,OAAOC,EAAKC,eAETnB,EA/FwB,GCM/B,EAA8B,WAC9B,SAASoB,KAmKT,OAvJAA,EAAaC,gBAAkB,SAAU56I,EAAS66I,EAAa/N,EAAUgO,GAErE,IAAKD,IAAgB76I,EACjB,MAAM,EAAyBmqI,0BAEnC,IAAIgB,EACAgD,EACAnuI,IAEAmrI,EAAS0P,EAAc,EAAS3O,aAAalsI,EAAQmrI,OAAQnrI,EAAQ+6I,sBAAwB/6I,EAAQmrI,OACrG,EAASW,mBAAmBX,GAAS0P,GACrC1P,EAAS,EAAS+B,+BAA+B/B,EAAQ2B,GAEzD1lK,KAAK4zK,wBAAwBh7I,EAAQ2xI,QAErCxD,EAAuB/mK,KAAK6zK,qBAAqBj7I,EAAQmuI,qBAAsBnuI,EAAQ4xI,eAEvFxqK,KAAK8zK,sBAAsBl7I,EAAQ4xI,gBAGvC,IAAI1nK,EAAQ9C,KAAK+zK,yBAAyBn7I,GAAWA,EAAQ91B,MAAO4wK,GAChE1M,EAAgBhnK,KAAKg0K,iCAAiCp7I,GAAWA,EAAQouI,eACzEiN,EAAmB,OAAiB,GAAIr7I,EAAS,CAAEmuI,qBAAsBA,EACzEhD,OAAQA,EACRjhK,MAAOA,EACPkkK,cAAeA,IACnB,OAAOiN,GAQXV,EAAaK,wBAA0B,SAAUrJ,GAC7C,GAAIA,GACI,CAAC3O,EAAYC,MAAOD,EAAYE,eAAgBF,EAAYG,QAASH,EAAYI,MAAM/xI,QAAQsgJ,GAAU,EACzG,MAAM,EAAyB5H,yBAAyB4H,IAUpEgJ,EAAaM,qBAAuB,SAAU9M,EAAsByD,GAChE,IAAII,EAAW,OAAiB,GAAI7D,GACpC,OAAK6D,GAGDJ,UAEOI,EAASrQ,EAAUsX,QAE9BvW,EAAoBr2J,SAAQ,SAAU+jE,GAC9B4hG,EAAS5hG,WAEF4hG,EAAS5hG,MAGjB4hG,GAZI,MAqBf2I,EAAaO,sBAAwB,SAAUtJ,GAC3C,GAAKA,EAGL,IACI5hE,KAAKhzC,MAAM40G,GAEf,MAAOzuJ,GACH,MAAM,EAAyB8mJ,gCAAgC9mJ,KAUvEw3J,EAAaQ,yBAA2B,SAAUG,EAAWR,GACzD,OAAQ3W,EAAYC,QAAQkX,GAAiHX,EAAaY,qBAAqBT,GAAtI,GAAKH,EAAaY,qBAAqBT,GAAmBnZ,EAAUsK,kBAAoBqP,GAOrIX,EAAaY,qBAAuB,SAAUT,GAC1C,IAAIU,EAAc,CACd1nK,GAAIwsJ,EAAYC,gBAChBkb,GAAI5D,EAAUtoK,MACd0xB,OAAQ65I,GAERY,EAAc1rE,KAAKC,UAAUurE,GACjC,OAAOlb,EAAYY,aAAawa,IAQpCf,EAAagB,kBAAoB,SAAUzxK,GACvC,IAAI0xK,EAAeta,mBAAmBp3J,GAAOsQ,MAAMmnJ,EAAUsK,mBAAmB,GAChF,GAAI3L,EAAYU,OAAO4a,GAEnB,MAAO,CACH9nK,GAAI8nK,EACJH,GAAI5D,EAAUtoK,MACd0xB,OAAQ0gI,EAAUka,yBAG1B,IACI,IAAIH,EAAcpb,EAAYc,aAAawa,GACvCJ,EAAcxrE,KAAKhzC,MAAM0+G,GAC7B,OAAOF,EAEX,MAAOr4J,GACH,MAAM,EAAgBkjJ,wBAAwBn8J,EAAO,QAS7DywK,EAAaS,iCAAmC,SAAUhN,GAEtD,GAAIA,IAAkB9N,EAAYU,OAAOoN,GACrC,MAAM,EAAyBhE,kCAEnC,OAAO9J,EAAYU,OAAOoN,GAAiBA,EAAgB9N,EAAYC,iBAM3Eoa,EAAamB,uBAAyB,SAAU97I,GAC5C,MAAO,GAAKA,EAAQmrI,OAAOvvJ,KAAK,KAAK8B,cAAgBikJ,EAAUsK,kBAAoBjsI,EAAQovI,WAExFuL,EApKsB,GCF7B,EAA2B,SAAU9oE,GAErC,SAASkqE,EAAUjP,EAAU0M,EAAewC,GACxC,IAAItuE,EAAQmE,EAAOjxF,KAAKxZ,KAAMoyK,IAAkBpyK,KAKhD,OAJAsmG,EAAMo/D,SAAWA,EAEjBp/D,EAAMuuE,iBAAkB,EACxBvuE,EAAMwuE,oBAAoBF,GACnBtuE,EA2RX,OAlSA,OAAkBquE,EAAWlqE,GAa7BkqE,EAAUl6J,UAAUq6J,oBAAsB,SAAUF,GAChD,IAAItuE,EAAQtmG,KACR+0K,EAAaxa,EAAUya,YAAc,IAAMna,EAAoBoa,QAC/DC,EAAgB3a,EAAUya,YAAc,IAAMna,EAAoBsa,YAClEC,EAAW7a,EAAUya,YAAc,IAAMla,EAAesO,MACxDiM,EAAe9a,EAAUya,YAAc,IAAMla,EAAewa,WAC5DC,EAAe9qE,EAAOhwF,UAAUg4J,QAAQj5J,KAAKxZ,KAAM+0K,GACnDS,EAAkB/qE,EAAOhwF,UAAUg4J,QAAQj5J,KAAKxZ,KAAMk1K,GACtDO,EAAahrE,EAAOhwF,UAAUg4J,QAAQj5J,KAAKxZ,KAAMo1K,GACjDM,EAAiBjrE,EAAOhwF,UAAUg4J,QAAQj5J,KAAKxZ,KAAMq1K,GACrD3vJ,EAAS,CAAC6vJ,EAAcC,EAAiBC,EAAYC,GACrDC,EAAgB,CAAC9a,EAAoBoa,QAASpa,EAAoBsa,YAAara,EAAesO,MAAOtO,EAAewa,YACxHK,EAAc1wK,SAAQ,SAAU2wK,EAAUzzK,GAAS,OAAOmkG,EAAMuvE,oBAAoBD,EAAUlwJ,EAAOvjB,GAAQyyK,OAQjHD,EAAUl6J,UAAUo7J,oBAAsB,SAAUC,EAAQn0K,EAAOizK,GAC3DjzK,GACA3B,KAAKsyK,QAAQwD,EAAQn0K,EAAOizK,IAQpCD,EAAUl6J,UAAUs7J,iBAAmB,SAAU90K,EAAK+0K,GAClD,IAGI,OADAptE,KAAKhzC,MAAM30D,GACJA,EAEX,MAAO8a,GACH,OAAgD,IAA5C9a,EAAIgpB,QAAQ,GAAKswI,EAAUya,cAA6D,IAAvC/zK,EAAIgpB,QAAQswI,EAAU0b,aAChEh1K,EAEJ+0K,EAAgBzb,EAAUya,YAAc,IAAMh1K,KAAK0lK,SAAW,IAAMzkK,EAAMs5J,EAAUya,YAAc,IAAM/zK,IAYvH0zK,EAAUl6J,UAAUy7J,gBAAkB,SAAUj1K,EAAKykK,EAAUmE,EAAuBsM,GAElF,IAAIjZ,EAAYH,EAAYE,6BAA6Bh8J,GACzD,IAAKi8J,EACD,OAAO,KAGX,IAAIkZ,EAAiBn1K,EAAI0gB,MAAM+jJ,IAAazkK,EAAI0gB,MAAMkoJ,GAElDwM,GAAmB,EACvB,OAAQF,GACJ,KAAKld,EAAoBoQ,aAErBgN,IAAqBp1K,EAAI0gB,MAAM44I,EAAUwJ,QACzC,MACJ,KAAK9K,EAAoBqQ,SAErB+M,GAAoBp1K,EAAI0gB,MAAM44I,EAAUwJ,QACxC,MAER,OAAQqS,GAAkBC,EAAoBnZ,EAAY,MAQ9DyX,EAAUl6J,UAAU63J,QAAU,SAAUrxK,EAAKU,EAAO4wK,GAChD9nE,EAAOhwF,UAAU63J,QAAQ94J,KAAKxZ,KAAMA,KAAK+1K,iBAAiB90K,GAAK,GAAOU,EAAO4wK,GAEzEvyK,KAAK60K,kBAAoBtC,GACzB9nE,EAAOhwF,UAAU63J,QAAQ94J,KAAKxZ,KAAMA,KAAK+1K,iBAAiB90K,GAAK,GAAQU,EAAO4wK,IAQtFoC,EAAUl6J,UAAUg4J,QAAU,SAAUxxK,EAAKsxK,GACzC,OAAO9nE,EAAOhwF,UAAUg4J,QAAQj5J,KAAKxZ,KAAMA,KAAK+1K,iBAAiB90K,GAAK,GAAOsxK,IAMjFoC,EAAUl6J,UAAUk4J,WAAa,SAAU1xK,GACvCwpG,EAAOhwF,UAAUk4J,WAAWn5J,KAAKxZ,KAAMA,KAAK+1K,iBAAiB90K,GAAK,IAC9DjB,KAAK60K,iBACLpqE,EAAOhwF,UAAUk4J,WAAWn5J,KAAKxZ,KAAMA,KAAK+1K,iBAAiB90K,GAAK,KAM1E0zK,EAAUl6J,UAAU67J,gBAAkB,WAClC,IACIr1K,EADAs1K,EAAUzsJ,OAAO9pB,KAAKoyK,eAE1B,IAAKnxK,KAAOs1K,EAEJA,EAAQn6J,eAAenb,KAAiD,IAAxCA,EAAIgpB,QAAQswI,EAAUya,cACtDvqE,EAAOhwF,UAAUk4J,WAAWn5J,KAAKxZ,KAAMiB,IAQnD0zK,EAAUl6J,UAAU+7J,oBAAsB,SAAU1zK,GAChD,IAAIwjG,EAAQtmG,KACRy2K,EAAU3zK,GAAS,EAAayxK,kBAAkBzxK,GAAO4J,GACzDgqK,EAA2B12K,KAAK22K,uBAAuB7zK,GACvDyzK,EAAUzsJ,OAAO9pB,KAAKoyK,eAEtBqE,IAAYC,GACZtyK,OAAOie,KAAKk0J,GAAStxK,SAAQ,SAAUhE,IACL,IAA1BA,EAAIgpB,QAAQwsJ,KACZnwE,EAAMqsE,WAAW1xK,GACjBwpG,EAAOhwF,UAAU04J,gBAAgB35J,KAAK8sF,EAAOrlG,OAKzDjB,KAAK2yK,WAAW/X,EAAmBgc,oBACnC52K,KAAK2yK,WAAW/X,EAAmBic,mBAQvClC,EAAUl6J,UAAU+3J,cAAgB,SAAUI,EAAOC,EAAQC,GACzDroE,EAAOhwF,UAAU+3J,cAAch5J,KAAKxZ,KAAMA,KAAK+1K,iBAAiBnD,GAAO,GAAOC,EAAQC,GAClF9yK,KAAK60K,iBACLpqE,EAAOhwF,UAAU+3J,cAAch5J,KAAKxZ,KAAMA,KAAK+1K,iBAAiBnD,GAAO,GAAQC,EAAQC,IAG/F6B,EAAUl6J,UAAU04J,gBAAkB,SAAUP,GAC5CnoE,EAAOhwF,UAAU04J,gBAAgB35J,KAAKxZ,KAAMA,KAAK+1K,iBAAiBnD,GAAO,IACrE5yK,KAAK60K,iBACLpqE,EAAOhwF,UAAU04J,gBAAgB35J,KAAKxZ,KAAMA,KAAK+1K,iBAAiBnD,GAAO,KAOjF+B,EAAUl6J,UAAUi4J,cAAgB,SAAUE,GAC1C,OAAOnoE,EAAOhwF,UAAUi4J,cAAcl5J,KAAKxZ,KAAMA,KAAK+1K,iBAAiBnD,GAAO,KAQlF+B,EAAUl6J,UAAUq8J,mBAAqB,SAAUpR,EAAUmE,EAAuBsM,GAChF,IAAI7vE,EAAQtmG,KACR6+I,EAAUz6I,OAAOie,KAAKyH,OAAO9pB,KAAKoyK,gBAAgBjuH,QAAO,SAAUyhC,EAAQ3kF,GAC3E,IAAI81K,EAAkBzwE,EAAM4vE,gBAAgBj1K,EAAKykK,EAAUmE,EAAuBsM,GAClF,GAAIY,EAAiB,CACjB,IAAIp1K,EAAQ2kG,EAAMmsE,QAAQxxK,GAC1B,GAAIU,EACA,IACI,IAAIq1K,EAA0B,IAAI9E,EAAqB6E,EAAiBnuE,KAAKhzC,MAAMj0D,IACnF,OAAOikF,EAAOt/D,OAAO,CAAC0wJ,IAE1B,MAAO7iE,GAEH,OAAOvuB,GAInB,OAAOA,IACR,IACH,OAAOi5D,GAOX81B,EAAUl6J,UAAUw8J,mBAAqB,SAAUvR,EAAUmE,GACzD,OAAO7pK,KAAK82K,mBAAmBpR,EAAUmE,EAAuB5Q,EAAoBoQ,eAMxFsL,EAAUl6J,UAAUy8J,eAAiB,SAAUxR,EAAUmE,GACrD,OAAO7pK,KAAK82K,mBAAmBpR,EAAUmE,EAAuB5Q,EAAoBqQ,WAOxFqL,EAAUl6J,UAAU08J,aAAe,SAAUzR,EAAUmE,GACnD,IAAIuN,EAAep3K,KAAKi3K,mBAAmBvR,EAAUmE,GACjDwN,EAAWr3K,KAAKk3K,eAAexR,EAAUmE,GAC7C,OAAOuN,EAAa9wJ,OAAO+wJ,IAO/B1C,EAAUl6J,UAAUk8J,uBAAyB,SAAUW,GACnD,IAAIC,EAAcv3K,KAAKyyK,QAAQkC,EAAU6C,0BAA0B5c,EAAmB6c,aAAcH,IACpG,SAAUC,GAAeA,IAAgBhd,EAAUvT,aAKvD2tB,EAAUl6J,UAAUi9J,gBAAkB,SAAU50K,GAC5C,IAAIwjG,EAAQtmG,KAKZ,GAAI8C,EACA9C,KAAKmzK,gBAAgBwB,EAAU6C,0BAA0B5c,EAAmB+c,cAAe70K,IAC3F9C,KAAKmzK,gBAAgBwB,EAAU6C,0BAA0B5c,EAAmBgd,YAAa90K,IACzF9C,KAAKmzK,gBAAgBwB,EAAU6C,0BAA0B5c,EAAmBid,cAAe/0K,IAC3F9C,KAAKmzK,gBAAgBwB,EAAU6C,0BAA0B5c,EAAmBkd,gBAAiBh1K,QAE5F,CACD,IAAIi1K,EAAUhtI,SAASmoI,OAAO9/J,MAAM,KACpC2kK,EAAQ9yK,SAAQ,SAAU+yK,GACtB,IAAIC,EAAaD,EAAahgG,OAAO5kE,MAAM,KAAK,GAC5C6kK,EAAWhuJ,QAAQswI,EAAUya,cAAgB,GAC7CvqE,EAAOhwF,UAAU04J,gBAAgB35J,KAAK8sF,EAAO2xE,QAU7DtD,EAAUuD,+BAAiC,SAAUC,EAAWr1K,GAC5D,IAAI2zK,EAAU,EAAalC,kBAAkBzxK,GAAO4J,GACpD,MAAO,GAAKkuJ,EAAmBwd,sBAAwB7d,EAAUsK,kBAAoBsT,EAAY5d,EAAUsK,kBAAoB4R,GAMnI9B,EAAU0D,qBAAuB,SAAUv1K,GACvC,OAAO6xK,EAAU6C,0BAA0B5c,EAAmB3jJ,UAAWnU,IAO7E6xK,EAAU6C,0BAA4B,SAAUc,EAAcx1K,GAE1D,IAAI2zK,EAAU,EAAalC,kBAAkBzxK,GAAO4J,GACpD,MAAO,GAAK4rK,EAAe/d,EAAUsK,kBAAoB4R,GAEtD9B,EAnSmB,CAoS5B,GClSE,EAAyB,WAWzB,SAAS4D,EAAQC,EAAmB3O,EAAuBsB,EAAU97J,EAAMopK,EAAevN,EAAKwN,GAC3F14K,KAAKw4K,kBAAoBA,EACzBx4K,KAAK6pK,sBAAwBA,EAC7B7pK,KAAKmrK,SAAWA,EAChBnrK,KAAKqP,KAAOA,EAEZrP,KAAKg/J,QAAUyZ,EACfz4K,KAAKy4K,cAAgBA,EACrBz4K,KAAKkrK,IAAMA,EACXlrK,KAAK04K,YAAcA,EAoCvB,OA7BAH,EAAQI,cAAgB,SAAU3Z,EAAS+Q,GAEvC,IAIIlG,EAJA2O,EAAoBxZ,EAAQ8S,UAAY9S,EAAQoR,QAEhDhmJ,EAAM2lJ,EAAaA,EAAW3lJ,IAAM,GACpCw/I,EAAOmG,EAAaA,EAAWnG,KAAO,GAK1C,OAHK7M,EAAYC,QAAQ5yI,KACrBy/I,EAAwB9M,EAAYC,QAAQ4M,GAAQ1Q,EAAYY,aAAa1vI,GAAO8uI,EAAYY,aAAa1vI,GAAO,IAAM8uI,EAAYY,aAAa8P,IAEhJ,IAAI2O,EAAQC,EAAmB3O,EAAuB7K,EAAQ+S,cAAe/S,EAAQ3vJ,KAAM2vJ,EAAQ6S,OAAQ7S,EAAQkM,IAAKlM,EAAQuQ,SAQ3IgJ,EAAQK,gBAAkB,SAAUztJ,EAAI0tJ,GACpC,SAAK1tJ,IAAO0tJ,OAGR1tJ,EAAG0+I,wBAAyBgP,EAAGhP,uBAC3B1+I,EAAG0+I,wBAA0BgP,EAAGhP,wBAMrC0O,EAxDiB,GCPxB,EAA6B,WAC7B,SAASO,KAsTT,OA/SAA,EAAYC,WAAa,WACrB,OAAOjvJ,OAAOvH,SAAWuH,QAO7BgvJ,EAAYE,UAAY,WACpB,SAAUlvJ,OAAOmvJ,QAAUnvJ,OAAOmvJ,SAAWnvJ,SAQjDgvJ,EAAYI,kBAAoB,SAAUzvH,EAAQ0vH,GAC9C,MAAO,GAAK1vH,EAAS8wG,EAAUsK,kBAAoBsU,GAOvDL,EAAYM,qBAAuB,SAAUC,EAAelyF,EAASmyF,EAAaC,GAC9E,OAAO,IAAIvwB,SAAQ,SAAU30H,EAAS83I,GAKlC,IAAIqN,EAAU/I,EAAUE,gBACpB8I,EAAcD,EAAUryF,EAC5BoyF,EAAOG,QAAQ,0CACf,IAAIC,EAAaxhD,aAAY,WACzB,GAAIs4C,EAAUE,gBAAkB8I,EAK5B,OAJAF,EAAO5+J,MAAM,+DACb4+J,EAAOK,SAAS,mDAAqDN,GACrE9gD,cAAcmhD,QACdxN,EAAO,EAAgBrN,kCAG3B,IAAI15J,EACJ,IAMIA,EAAOi0K,EAAc3sD,SAAStnH,KAElC,MAAO2W,IACH3W,GAAQ,EAAS4jK,gBAAgB5jK,KACjCm0K,EAAOG,QAAQ,0CACflhD,cAAcmhD,GACdtlJ,EAAQglJ,EAAc3sD,SAAShnH,SAEpCozK,EAAYe,yBAQvBf,EAAYgB,oBAAsB,SAAUT,EAAelyF,EAASmyF,EAAaC,GAC7E,OAAO,IAAIvwB,SAAQ,SAAU30H,EAAS83I,GAKlC,IAAI3oG,EAAW2jB,EAAU2xF,EAAYe,oBACjC/qI,EAAQ,EACZyqI,EAAOG,QAAQ,wCACf,IAAIC,EAAaxhD,aAAY,WACzB,GAAIkhD,EAAcU,OAId,OAHAR,EAAO5+J,MAAM,sCACb69G,cAAcmhD,QACdxN,EAAO,EAAgB1M,4BAG3B,IAAIr6J,EACJ,IAMIA,EAAOi0K,EAAc3sD,SAAStnH,KAElC,MAAO2W,IAEF3W,GAAiB,gBAATA,IAOb0pC,IACI1pC,GAAQ,EAAS4jK,gBAAgB5jK,IACjCm0K,EAAOG,QAAQ,yCACflhD,cAAcmhD,GACdtlJ,EAAQglJ,EAAc3sD,SAAShnH,OAE1BopC,EAAQ00B,IACb+1G,EAAO5+J,MAAM,8DACb4+J,EAAOK,SAAS,kDAAoDN,GACpE9gD,cAAcmhD,GACdxN,EAAO,EAAgBrN,sCAE5Bga,EAAYe,yBAQvBf,EAAYkB,UAAY,SAAUV,EAAaW,EAAWC,EAAWX,GACjE,IAAIjzE,EAAQtmG,KAMZ,OADAu5K,EAAOY,QAAQ,cAAgBF,GACxB,IAAIjxB,SAAQ,SAAU30H,EAAS83I,GAClCh5G,YAAW,WACP,IAAIinH,EAAc9zE,EAAM+zE,cAAcf,EAAaW,EAAWV,GACzDa,EAIL/lJ,EAAQ+lJ,GAHJjO,EAAO,oCAAsC8N,KAIlDC,OAUXpB,EAAYuB,cAAgB,SAAUf,EAAaW,EAAWV,GAC1D,IAAIa,EAActB,EAAYwB,gBAAgBL,EAAWV,GAEzD,OAAKa,GAGwB,KAApBA,EAAYjuJ,KAAkC,gBAApBiuJ,EAAYjuJ,MAC3CiuJ,EAAYjuJ,IAAMmtJ,EAClBC,EAAOY,QAAQ,gBAAkBF,EAAY,kBAAoBX,IAE9Dc,GANI,MAaftB,EAAYwB,gBAAkB,SAAUC,EAAUhB,GAC9C,GAAwB,qBAAbgB,EACP,OAAO,KAEXhB,EAAOY,QAAQ,8BAAgCI,GAC/C,IAAIC,EAAYzvI,SAASwS,eAAeg9H,GACxC,IAAKC,EAAW,CACZ,GAAIzvI,SAASz+B,eACTy+B,SAASsuC,kBAC4C,IAApDvvD,OAAO2wJ,UAAUC,UAAUzwJ,QAAQ,YAAqB,CACzD,IAAI0wJ,EAAM5vI,SAASz+B,cAAc,UACjCquK,EAAI3vI,aAAa,KAAMuvI,GACvBI,EAAI3vI,aAAa,cAAe,QAChC2vI,EAAIpuK,MAAM2uH,WAAa,SACvBy/C,EAAIpuK,MAAMi9B,SAAW,WACrBmxI,EAAIpuK,MAAMI,MAAQguK,EAAIpuK,MAAMK,OAAS,IACrC+tK,EAAIpuK,MAAMo4B,OAAS,IACnBg2I,EAAI3vI,aAAa,UAAW,+CAC5BwvI,EAAYzvI,SAAS25F,qBAAqB,QAAQ,GAAGz5F,YAAY0vI,QAE5D5vI,SAASkZ,MAAQlZ,SAASkZ,KAAK22H,oBACpC7vI,SAASkZ,KAAK22H,mBAAmB,YAAa,iBAAmBL,EAAW,SAAWA,EAAW,oCAElGzwJ,OAAO+wJ,QAAU/wJ,OAAO+wJ,OAAON,KAC/BC,EAAY1wJ,OAAO+wJ,OAAON,IAGlC,OAAOC,GAOX1B,EAAYgC,mBAAqB,SAAUC,GACnChwI,SAASkZ,OAAS82H,EAAOz+H,YACzBvR,SAASkZ,KAAKtH,YAAYo+H,IAQlCjC,EAAYkC,kBAAoB,SAAUt1K,GACtC,IAAIu1K,EAAUlwI,SAAS25F,qBAAqB,UACxCw2C,EAAcluK,MAAMsO,MAAM,KAAMtO,MAAMiuK,EAAQvvK,SAASrI,KAAI,SAAU03K,EAAQ54K,GAAS,OAAO84K,EAAQn1K,KAAK3D,MAC9G,OAAO+4K,EAAY5qI,QAAO,SAAUyqI,GAChC,IACI,OAAOA,EAAO1B,cAAc3sD,SAAShnH,OAASA,EAElD,MAAOqW,GACH,OAAO,MAEZ,IAOP+8J,EAAYqC,UAAY,WAIpB,OAHKrxJ,OAAOsxJ,gBACRtxJ,OAAOsxJ,cAAgB,IAEpBtxJ,OAAOsxJ,eAOlBtC,EAAYuC,iBAAmB,SAAU31K,GACrC,OAAOozK,EAAYqC,YAAY7qI,QAAO,SAAUgrI,GAC5C,IACI,OAAOA,EAAM5uD,SAAShnH,OAASA,EAEnC,MAAOqW,GACH,OAAO,MAEZ,IAOP+8J,EAAYyC,WAAa,SAAUD,GAC/BxC,EAAYqC,YAAY7tK,KAAKguK,IAOjCxC,EAAY0C,YAAc,WACtB1C,EAAYqC,YAAYl2K,SAAQ,SAAUq2K,GAAS,OAAOA,EAAMvtD,YAOpE+qD,EAAY2C,2BAA6B,WAErC,GAAI,EAASzS,gBAAgBl/I,OAAO4iG,SAAShnH,OAASozK,EAAYC,aAC9D,MAAM,EAAgBtY,+CAO9BqY,EAAY4C,2BAA6B,SAAUC,GAC/C,IAAIC,EAAgBD,EAAalJ,QAAQ7X,EAAmBic,kBAE5D,GAAI+E,IAAkB,EAAS5S,gBAAgBl/I,OAAO4iG,SAAShnH,MAAO,CAClE,IAAIm2K,EAAaD,EAAcxoK,MAAMmnJ,EAAUsK,mBAC/CgX,EAAWhjK,QACX,IAAI/V,EAAQ+4K,EAAWnwK,OAAS,EAAImwK,EAAWrnK,KAAK+lJ,EAAUsK,mBAAqB,KACnF8W,EAAanF,oBAAoB1zK,KAMzCg2K,EAAYgD,iBAAmB,WAES,oBAAzBC,QAAQC,aAEfD,QAAQC,aAAa,KAAM,KAAM,GAAKlyJ,OAAO4iG,SAAS1nH,SAAW8kB,OAAO4iG,SAAStyG,QAGjF0P,OAAO4iG,SAAShnH,KAAO,IAQ/BozK,EAAYe,oBAAsB,GAC3Bf,EAvTqB,GCK5B,EAA+B,WAC/B,SAASmD,KA+BT,OA7BAA,EAAcC,mBAAqB,SAAUC,EAAkBC,GAC3D,IAAKD,EACD,OAAO,KAEN,IAAKC,EACN,OAAOD,EAEX,IAAI12G,EAAM34D,OAAOsvK,EAAWhL,YAI5B,OAHI3rG,IAAQ02G,EAAiBE,YACzBF,EAAiBE,UAAY,IAAIn0K,KAAW,IAANu9D,IAEnC,OAAiB,GAAI02G,EAAkB,CAAEnd,QAASod,EAAY3D,cAAe2D,EAAWvK,OAAQyK,SAAUF,EAAWtK,UAAYsK,EAAWhM,QAAShJ,SAAUgV,EAAWhV,YAErL6U,EAAcM,kBAAoB,SAAUvd,EAASwd,EAAcC,EAA6BrS,EAASrG,EAAQ2Y,GAC7G,OAAQD,EAA4BjW,cAChC,KAAKzL,EAAcC,SAGf,OAFAwhB,EAAe,OAAiB,GAAIA,EAAc,CAAErG,UAAWld,EAAoBqQ,SAAUc,QAASA,EAASrG,OAAQA,EAAQ2Y,aAAcA,IAC7IF,EAAeP,EAAcC,mBAAmBM,EAAcxd,GACtDwd,EAAoB,QAAIA,EAAe,KACnD,KAAKzhB,EAAcE,eAEf,OADAuhB,EAAeP,EAAcC,mBAAmBM,EAAcxd,GACtDwd,GAAgBA,EAAazS,aAAeyS,EAAaxd,QAAWwd,EAAe,KAC/F,KAAKzhB,EAAcr1E,MAEf,OADA82F,EAAeP,EAAcC,mBAAmBM,EAAcxd,GACvDwd,EACX,QACI,OAAO,OAGZP,EAhCuB,GCF9B,EAAkC,WAClC,SAASU,KAoDT,OAlDAA,EAAiBC,wBAA0B,SAAUvW,EAAmB2G,EAAkBhG,GACtF,OAAO,OAAkBhnK,UAAM,OAAQ,GAAQ,WAC3C,IAAIizC,EACJ,OAAO,OAAoBjzC,MAAM,SAAUkiF,GACvC,OAAQA,EAAG/zE,OACP,KAAK,EAAG,MAAO,CAAC,EAAak4J,EAAkBmJ,sBAAsBxC,EAAkBhG,IACvF,KAAK,EAGD,OAFA/zH,EAAWivC,EAAGyrF,OACd3tK,KAAK68K,YAAY/rK,IAAIu1J,EAAkB6D,mBAAoBj3H,GACpD,CAAC,EAAcA,WAK1C0pI,EAAiBG,YAAc,SAAUvO,GACrC,OAAOvuK,KAAK68K,YAAYx3K,IAAIkpK,IAEhCoO,EAAiBI,uBAAyB,SAAUxO,EAAcyO,GAC9D,IACI,GAAIA,EAAuB,CACvB,IAAIC,EAAiBr0E,KAAKhzC,MAAMonH,GAChC,IAAKC,EAAe5N,yBAA2B4N,EAAe3N,uBAAyB2N,EAAe1N,OAClG,MAAM,EAAyB5L,sCAEnC3jK,KAAK68K,YAAY/rK,IAAIy9J,EAAc,CAC/BjI,sBAAuB2W,EAAe5N,uBACtCN,mBAAoBkO,EAAe3N,qBACnCN,OAAQiO,EAAe1N,UAInC,MAAOxzJ,GACH,MAAM,EAAyB4nJ,wCAOvCgZ,EAAiBO,eAAiB,SAAU3O,EAAc7B,EAAmBwB,GACzE,OAAInR,EAAYC,QAAQuR,GACb,MAEPL,GAEAluK,KAAK+8K,uBAAuBxO,EAAcL,GAEvC,IAAI,EAAUK,EAAc7B,EAAmB1sK,KAAK68K,YAAYx3K,IAAIkpK,MAE/EoO,EAAiBE,YAAc,IAAI5tB,IAC5B0tB,EArD0B,IZJrC,SAAW3O,GACPA,EAASA,EAAS,SAAW,GAAK,QAClCA,EAASA,EAAS,WAAa,GAAK,UACpCA,EAASA,EAAS,QAAU,GAAK,OACjCA,EAASA,EAAS,WAAa,GAAK,WAJxC,CAKGA,IAAaA,EAAW,KAC3B,IAAI,EAAwB,WACxB,SAASmP,EAAOC,EAAe3vK,QACX,IAAZA,IAAsBA,EAAU,IAIpCzN,KAAK2nB,MAAQqmJ,EAASqP,KACtB,IAAIn7F,EAAKz0E,EAAQu5J,cAAeA,OAAuB,IAAP9kF,EAAgB,GAAKA,EAAI6T,EAAKtoF,EAAQka,MAAOA,OAAe,IAAPouE,EAAgBi4E,EAASqP,KAAOtnF,EAAI51F,EAAKsN,EAAQ6vK,kBAAmBA,OAA2B,IAAPn9K,GAAwBA,EACrNH,KAAKo9K,cAAgBA,EACrBp9K,KAAKgnK,cAAgBA,EACrBhnK,KAAK2nB,MAAQA,EACb3nB,KAAKs9K,kBAAoBA,EA8E7B,OAzEAH,EAAO1iK,UAAU8iK,WAAa,SAAUC,EAAUD,EAAYE,GAC1D,KAAKD,EAAWx9K,KAAK2nB,QAAY3nB,KAAKs9K,mBAAqBG,GAA3D,CAGA,IACI3oJ,EADAw5C,GAAY,IAAIpmE,MAAOorK,cAMvBx+I,EAJCioI,EAAYC,QAAQh9J,KAAKgnK,eAIpB14F,EAAY,IAAM8tF,IAAmB,IAAM4R,EAASwP,IAAaC,EAAc,OAAS,IAAM,IAAMF,EAHpGjvG,EAAY,IAAMtuE,KAAKgnK,cAAgB,IAAM5K,IAAmB,IAAM4R,EAASwP,IAAaC,EAAc,OAAS,IAAM,IAAMF,EAKzIv9K,KAAK09K,gBAAgBF,EAAU1oJ,EAAK2oJ,KAKxCN,EAAO1iK,UAAUijK,gBAAkB,SAAU/1J,EAAOmtF,EAAS2oE,GACrDz9K,KAAKo9K,eACLp9K,KAAKo9K,cAAcz1J,EAAOmtF,EAAS2oE,IAM3CN,EAAO1iK,UAAUE,MAAQ,SAAUm6F,GAC/B90G,KAAKu9K,WAAWvP,EAASpgK,MAAOknG,GAAS,IAK7CqoE,EAAO1iK,UAAUm/J,SAAW,SAAU9kE,GAClC90G,KAAKu9K,WAAWvP,EAASpgK,MAAOknG,GAAS,IAK7CqoE,EAAO1iK,UAAUkjK,QAAU,SAAU7oE,GACjC90G,KAAKu9K,WAAWvP,EAAS4P,QAAS9oE,GAAS,IAK/CqoE,EAAO1iK,UAAUojK,WAAa,SAAU/oE,GACpC90G,KAAKu9K,WAAWvP,EAAS4P,QAAS9oE,GAAS,IAK/CqoE,EAAO1iK,UAAU+Z,KAAO,SAAUsgF,GAC9B90G,KAAKu9K,WAAWvP,EAASqP,KAAMvoE,GAAS,IAK5CqoE,EAAO1iK,UAAU0/J,QAAU,SAAUrlE,GACjC90G,KAAKu9K,WAAWvP,EAASqP,KAAMvoE,GAAS,IAK5CqoE,EAAO1iK,UAAUi/J,QAAU,SAAU5kE,GACjC90G,KAAKu9K,WAAWvP,EAAS8P,QAAShpE,GAAS,IAK/CqoE,EAAO1iK,UAAUsjK,WAAa,SAAUjpE,GACpC90G,KAAKu9K,WAAWvP,EAAS8P,QAAShpE,GAAS,IAE/CqoE,EAAO1iK,UAAUujK,oBAAsB,WACnC,OAAOh+K,KAAKs9K,mBAETH,EAzFgB,GaHvBc,EAAgB,IAChBC,EAAS,IACTC,EAAsB,IACtBC,EAAuB,CACvB1Y,SAAU,GACVsC,UAAW,KACX0E,mBAAmB,EACnBwB,kBAAmB,GACnBvB,iBAAkB,GAClBlG,YAAa,WAAc,OAAO,EAASQ,iBAC3CoX,sBAAuB,WAAc,OAAO,EAASpX,iBACrDqX,2BAA2B,GAE3BC,GAAwB,CACxBnM,cAAe,iBACfwC,wBAAwB,GAExB4J,GAAyB,CACzBjF,OAAQ,IAAI,EAAO,MACnBkF,iBAAkBR,EAClB5M,0BAA2B6M,EAC3BQ,kBAAmBP,GAEnBQ,GAA4B,CAC5BC,WAAW,EACXC,qBAAsB,IAAI7xK,MAC1B8xK,qBAAsB,IAAI7vB,KAavB,SAAS8vB,GAAmB78F,GAC/B,IAAI88F,EAAO98F,EAAG88F,KAAMjpF,EAAK7T,EAAGzjC,MAAOA,OAAe,IAAPs3C,EAAgB,GAAKA,EAAI51F,EAAK+hF,EAAG+8F,OAAQA,OAAgB,IAAP9+K,EAAgB,GAAKA,EAAI++K,EAAKh9F,EAAGi9F,UAAWA,OAAmB,IAAPD,EAAgB,GAAKA,EACtKE,EAAkB,CAClBJ,KAAM,OAAiB,GAAIZ,EAAsBY,GACjDvgI,MAAO,OAAiB,GAAI8/H,GAAuB9/H,GACnDwgI,OAAQ,OAAiB,GAAIT,GAAwBS,GACrDE,UAAW,OAAiB,GAAIR,GAA2BQ,IAE/D,OAAOC,ECnDJ,IAAIC,GAAqB,CAC5BC,kBAAmB,CACfzqK,KAAM,qBACN2nJ,KAAM,sCAEV+iB,mBAAoB,CAChB1qK,KAAM,yBAMV,GAA6B,SAAU41F,GAEvC,SAAS+0E,EAAY7iB,EAAW9nD,GAC5B,IAAIvO,EAAQmE,EAAOjxF,KAAKxZ,KAAM28J,EAAW9nD,IAAiB70G,KAG1D,OAFAsmG,EAAMj3F,KAAO,cACbjL,OAAO2kF,eAAeud,EAAOk5E,EAAY/kK,WAClC6rF,EAQX,OAbA,OAAkBk5E,EAAa/0E,GAO/B+0E,EAAYC,6BAA+B,WACvC,OAAO,IAAID,EAAYH,GAAmBC,kBAAkBzqK,KAAMwqK,GAAmBC,kBAAkB9iB,OAE3GgjB,EAAYE,yBAA2B,SAAU/f,GAC7C,OAAO,IAAI6f,EAAYH,GAAmBE,mBAAmB1qK,KAAM8qJ,IAEhE6f,EAdqB,CAe9B,GC3BSG,GAAsC,CAC7CC,oBAAqB,CACjB/qK,KAAM,wBAEVgrK,gBAAiB,CACbhrK,KAAM,oBAEVirK,cAAe,CACXjrK,KAAM,mBAMV,GAA8C,SAAU41F,GAExD,SAASs1E,EAA6BpjB,EAAW9nD,GAC7C,IAAIvO,EAAQmE,EAAOjxF,KAAKxZ,KAAM28J,EAAW9nD,IAAiB70G,KAG1D,OAFAsmG,EAAMj3F,KAAO,+BACbjL,OAAO2kF,eAAeud,EAAOy5E,EAA6BtlK,WACnD6rF,EAmBX,OAxBA,OAAkBy5E,EAA8Bt1E,GAOhDs1E,EAA6BC,2BAA6B,SAAUC,GAChE,IAAIC,EAA2B,CAC3BP,GAAoCC,oBAAoB/qK,KACxD8qK,GAAoCE,gBAAgBhrK,KACpD8qK,GAAoCG,cAAcjrK,MAEtD,OAAOorK,GAAeC,EAAyBj2J,QAAQg2J,IAAgB,GAE3EF,EAA6BI,6BAA+B,SAAUxgB,GAClE,OAAO,IAAIogB,EAA6BJ,GAAoCG,cAAcjrK,KAAM8qJ,IAEpGogB,EAA6BK,mCAAqC,SAAUzgB,GACxE,OAAO,IAAIogB,EAA6BJ,GAAoCC,oBAAoB/qK,KAAM8qJ,IAE1GogB,EAA6BM,+BAAiC,SAAU1gB,GACpE,OAAO,IAAIogB,EAA6BJ,GAAoCE,gBAAgBhrK,KAAM8qJ,IAE/FogB,EAzBsC,CA0B/C,IC1CK,SAASO,GAAuBx9K,GACnC,MAAO,CACHw5K,SAAU,GACVlV,SAAU,GACV+O,UAAW,GACXnX,QAAS,KACTyZ,cAAe,KACf1O,YAAa,GACbhG,OAAQ,KACRsY,UAAW,KACXjS,QAAS,KACTsS,aAAc55K,EACdy9K,WAAW,GCZZ,ICAH,GAeOC,GASAC,GDxBAC,GAAoB,QACpBC,GAAiB,aACjBC,GAAiB,aACjBC,GAAmB,eACnBC,GAA6B,CACpCC,6BAA8B,gCAC9BC,sBAAuB,oBACvBC,iBAAkB,cAClBC,qBAAsB,4BACtBC,2BAA4B,mCAC5BC,gCAAiC,kCACjCC,eAAgB,qBAChBC,0BAA2B,GAC3BC,wBAAyB,+BACzBC,wBAAyB,+BACzBC,oBAAqB,2BACrBC,8BAA+B,iCAGxBC,GAAqB,WEfrBC,GAAqB,SAAUnY,GACtC,IAAI7kK,EAAM,EAAS2iK,iBAAiBkC,GAEpC,GAAI,EAAU6E,OAAO7E,GAMjB,OAAOA,EAEX,IAAIoY,EAAaj9K,EAAI6iK,aACrB,GAAIoa,GAAcA,EAAWn2K,QAAU,EAAG,CACtC,IAAIo2K,EAAmC,QAAlBD,EAAW,GAAe,EAAI,EAC/CC,EAAiBD,EAAWn2K,SAC5Bm2K,EAAWC,GAAkBH,IAGrC,OAAO/8K,EAAIijK,SAAW,KAAOjjK,EAAIkjK,gBAAkB,IAAM+Z,EAAWrtK,KAAK,MAElEutK,GAAyB,SAAUC,GAM1C,OAAO9oB,EAAYY,aAAakoB,IAEzBC,GAAyB,SAAUxZ,GAAU,MAAO,GAAKiY,IAAqBjY,GAAU,KACxFyZ,GAA6B,WAAc,SAA4B,qBAAXp4J,QACnE,gBAAiBA,QACjBA,OAAO+nH,YAAYswC,MACnBr4J,OAAO+nH,YAAYuwC,UACZC,GAAmC,SAAUC,EAAaC,EAAWC,GACxEN,OACAp4J,OAAO+nH,YAAYswC,KAAKK,GACxB14J,OAAO+nH,YAAYuwC,QAAQE,EAAaC,EAAWC,GACnD14J,OAAO+nH,YAAY4wC,cAAcH,GACjCx4J,OAAO+nH,YAAY6wC,WAAWH,GAC9Bz4J,OAAO+nH,YAAY6wC,WAAWF,KAG3BG,GAAqC,SAAUJ,GAClDL,MACAp4J,OAAO+nH,YAAYswC,KAAKI,IC5C5B,GAAgC,WAChC,SAASK,EAAevkG,EAAW2oF,EAAe6b,GAC9C,IAAI3gG,EACJliF,KAAK8iL,QAAU5pB,EAAYC,gBAC3Bn5J,KAAKmO,MAAQ00K,EACb7iL,KAAKu6C,OAAS2nC,EAAK,GACfA,EAAG+/F,GAAuBtB,KAAmBtiG,EAC7C6D,EAAG+/F,GAAuBpB,MAAsB,EAChD3+F,EAAG,GAAK4+F,GAA2BC,8BAAgC/Z,EACnE9kF,GA+DR,OA7DA0gG,EAAenoK,UAAUsoK,eAAiB,SAAU/6K,GAChDhI,KAAKu6C,MAAM0nI,GAAuBpB,KAAqB74K,GAE3D46K,EAAenoK,UAAUowC,KAAO,WAE5B7qD,KAAK+iL,gBAAgB76K,KAAKC,OAASnI,KAAKgjL,gBACxCX,GAAiCriL,KAAKijL,YAAajjL,KAAKkjL,cAAeljL,KAAKmjL,cAEhFP,EAAenoK,UAAUmc,MAAQ,WAC7B52B,KAAKgjL,eAAiB96K,KAAKC,MAC3BnI,KAAKu6C,MAAM0nI,GAAuBrB,KAAmB5gL,KAAKgjL,eAC1DL,GAAmC3iL,KAAKkjL,gBAE5C9+K,OAAOsZ,eAAeklK,EAAenoK,UAAW,yBAA0B,CACtEpV,IAAK,WACD,OAAOrF,KAAKu6C,MAAM,GAAKumI,GAA2BC,+BAEtDjwK,IAAK,SAAUnP,GACX3B,KAAKu6C,MAAM,GAAKumI,GAA2BC,8BAAgCp/K,GAE/EqZ,YAAY,EACZD,cAAc,IAElB3W,OAAOsZ,eAAeklK,EAAenoK,UAAW,YAAa,CACzDpV,IAAK,WACD,OAAOrF,KAAKu6C,MAAM0nI,GAAuBtB,MAE7C3lK,YAAY,EACZD,cAAc,IAElB6nK,EAAenoK,UAAUpV,IAAM,WAC3B,OAAO,OAAiB,GAAIrF,KAAKu6C,MAAO,CAAEuoI,QAAS9iL,KAAK8iL,WAE5D1+K,OAAOsZ,eAAeklK,EAAenoK,UAAW,MAAO,CACnDpV,IAAK,WACD,OAAOrF,KAAKojL,uBAAyB,IAAMpjL,KAAK8iL,QAAU,IAAM9iL,KAAKq+E,WAEzErjE,YAAY,EACZD,cAAc,IAElB3W,OAAOsZ,eAAeklK,EAAenoK,UAAW,cAAe,CAC3DpV,IAAK,WACD,MAAO,QAAUrF,KAAKmO,MAAQ,IAAMnO,KAAKojL,wBAE7CpoK,YAAY,EACZD,cAAc,IAElB3W,OAAOsZ,eAAeklK,EAAenoK,UAAW,gBAAiB,CAC7DpV,IAAK,WACD,MAAO,SAAWrF,KAAKiB,KAE3B+Z,YAAY,EACZD,cAAc,IAElB3W,OAAOsZ,eAAeklK,EAAenoK,UAAW,cAAe,CAC3DpV,IAAK,WACD,MAAO,OAASrF,KAAKiB,KAEzB+Z,YAAY,EACZD,cAAc,IAEX6nK,EAxEwB,GA0EpB,MC1EX,GAA8B,SAAUn4E,GAGxC,SAAS44E,EAAavlI,EAAUkpH,EAAetB,EAAU4d,GACrD,IAAIh9E,EAAQmE,EAAOjxF,KAAKxZ,KAAMiiL,GAAuB,iBAAkBjb,EAAe,iBAAmBhnK,KAUzG,OATAsmG,EAAM/rD,MAAM0nI,GAAuB,cAAgBvc,EACnDp/D,EAAM/rD,MAAM0nI,GAAuB,gBAAkBnkI,EAASylI,IAC9Dj9E,EAAM/rD,MAAM0nI,GAAuB,gBAAkBnkI,EAAS0lI,WAC9Dl9E,EAAM/rD,MAAM0nI,GAAuB,qBAAuBnkI,EAASwlH,gBACnEh9D,EAAM/rD,MAAM0nI,GAAuB,wBAA0BnkI,EAASylH,mBACtEj9D,EAAM/rD,MAAM0nI,GAAuB,+BAAiCnkI,EAAS2lI,oBAAsB3lI,EAAS2lI,mBAAmBC,gBAC/Hp9E,EAAM/rD,MAAM,GAAKumI,GAA2BY,+BAAiCp7E,EAAMq9E,cAAc1B,GAAuB,YAAaqB,GACrIh9E,EAAM/rD,MAAM,GAAKumI,GAA2BM,iCAAmC96E,EAAMq9E,cAAc1B,GAAuB,cAAeqB,GACzIh9E,EAAM/rD,MAAM,GAAKumI,GAA2BK,4BAA8B76E,EAAMq9E,cAAc1B,GAAuB,eAAgBqB,GAC9Hh9E,EASX,OAtBA,OAAkB+8E,EAAc54E,GAgBhC44E,EAAa5oK,UAAUkpK,cAAgB,SAAUtlG,EAAWilG,GACxD,OAAKA,EAAWjlG,GAGTilG,EAAWjlG,GAFP,GAIRglG,EAvBsB,CAwB/B,IACa,MHxBJO,GAAa,CACpB3sK,UAAWgrK,GAAuB,aAClC4B,eAAgB5B,GAAuB,kBACvC6B,OAAQ7B,GAAuB,eAC/B8B,UAAW9B,GAAuB,aAClC+B,QAAS/B,GAAuB,WAChCgC,cAAehC,GAAuB,kBACtCiC,eAAgBjC,GAAuB,kBACvCzmB,WAAYymB,GAAuB,gBAGvC,SAAWzB,GACPA,EAASA,EAAS,wBAA0B,MAAQ,uBACpDA,EAASA,EAAS,sBAAwB,MAAQ,qBAClDA,EAASA,EAAS,qBAAuB,MAAQ,oBACjDA,EAASA,EAAS,iBAAmB,MAAQ,gBAC7CA,EAASA,EAAS,cAAgB,MAAQ,aAC1CA,EAASA,EAAS,UAAY,MAAQ,UAN1C,CAOGA,KAAaA,GAAW,KAE3B,SAAWC,GACPA,EAAqB,wBAA0B,uBAC/CA,EAAqB,sBAAwB,qBAC7CA,EAAqB,qBAAuB,oBAC5CA,EAAqB,iBAAmB,gBACxCA,EAAqB,cAAgB,aACrCA,EAAqB,UAAY,SANrC,CAOGA,KAAyBA,GAAuB,KACnD,IAAI0D,IAA2B,GAAK,GAChC,GAAG1D,GAAqB2D,oBAAsB5D,GAAS4D,mBACvD,GAAG3D,GAAqB4D,mBAAqB7D,GAAS6D,kBACtD,GAAG5D,GAAqB6D,sBAAwB9D,GAAS8D,qBACzD,GAAG7D,GAAqB8D,YAAc/D,GAAS+D,WAC/C,GAAG9D,GAAqB+D,eAAiBhE,GAASgE,cAClD,GAAG/D,GAAqBgE,QAAUjE,GAASiE,OAC3C,IACA,GAA0B,SAAUh6E,GAEpC,SAASi6E,EAAS1d,EAAe2d,EAAYC,GACzC,IAAIt+E,EAAQmE,EAAOjxF,KAAKxZ,KAAMiiL,GAAuB,aAAcjb,EAAe4d,IAAuB5kL,KAMzG,OALI4kL,IACAt+E,EAAMu+E,QAAUV,GAAwBS,GACxCt+E,EAAMs+E,mBAAqBA,GAE/Bt+E,EAAMq+E,WAAaA,EACZr+E,EAiFX,OAzFA,OAAkBo+E,EAAUj6E,GAU5BrmG,OAAOsZ,eAAegnK,EAASjqK,UAAW,qBAAsB,CAC5D3J,IAAK,SAAU8zK,GACX5kL,KAAKu6C,MAAMumI,GAA2BE,uBAAyB4D,GAEnE5pK,YAAY,EACZD,cAAc,IAElB3W,OAAOsZ,eAAegnK,EAASjqK,UAAW,UAAW,CACjD3J,IAAK,SAAU+zK,GACX7kL,KAAKu6C,MAAMumI,GAA2BG,kBAAoB4D,GAE9D7pK,YAAY,EACZD,cAAc,IAElB3W,OAAOsZ,eAAegnK,EAASjqK,UAAW,YAAa,CACnD3J,IAAK,SAAU24J,GACXzpK,KAAKu6C,MAAMqpI,GAAW3sK,WAAa2qK,GAAmBnY,GAAKnzJ,eAE/D0E,YAAY,EACZD,cAAc,IAElB3W,OAAOsZ,eAAegnK,EAASjqK,UAAW,eAAgB,CACtD3J,IAAK,SAAU6rJ,GACX38J,KAAKu6C,MAAMqpI,GAAWM,gBAAkBvnB,GAE5C3hJ,YAAY,EACZD,cAAc,IAElB3W,OAAOsZ,eAAegnK,EAASjqK,UAAW,WAAY,CAClD3J,IAAK,SAAUs2J,GACXpnK,KAAKu6C,MAAMqpI,GAAWG,WAAa/jL,KAAK2kL,YAAcvd,EAClD2a,GAAuB3a,GACrB,MAEVpsJ,YAAY,EACZD,cAAc,IAElB3W,OAAOsZ,eAAegnK,EAASjqK,UAAW,YAAa,CACnD3J,IAAK,SAAUqnK,GACXn4K,KAAKu6C,MAAMqpI,GAAWI,SAAWhkL,KAAK2kL,YAAcxM,EAChD4J,GAAuB5J,GACrB,MAEVn9J,YAAY,EACZD,cAAc,IAElB3W,OAAOsZ,eAAegnK,EAASjqK,UAAW,gBAAiB,CACvDpV,IAAK,WACD,OAAgD,IAAzCrF,KAAKu6C,MAAMqpI,GAAWK,gBAEjCnzK,IAAK,SAAUg0K,GACX9kL,KAAKu6C,MAAMqpI,GAAWK,eAAiBa,GAE3C9pK,YAAY,EACZD,cAAc,IAElB3W,OAAOsZ,eAAegnK,EAASjqK,UAAW,YAAa,CACnD3J,IAAK,SAAUs6J,GACXprK,KAAKu6C,MAAMqpI,GAAWpoB,YAAcx7J,KAAK2kL,YAAcvZ,EACnD2W,GAAuB3W,GACrB,MAEVpwJ,YAAY,EACZD,cAAc,IAElB3W,OAAOsZ,eAAegnK,EAASjqK,UAAW,gBAAiB,CACvD3J,IAAK,SAAUi0K,GACX/kL,KAAKu6C,MAAMqpI,GAAWC,gBAAkBkB,EAAczuK,eAE1D0E,YAAY,EACZD,cAAc,IAElB3W,OAAOsZ,eAAegnK,EAASjqK,UAAW,aAAc,CACpD3J,IAAK,SAAUk0K,GACXhlL,KAAKu6C,MAAMqpI,GAAWE,QAAUkB,EAAW1uK,eAE/C0E,YAAY,EACZD,cAAc,IAEX2pK,EA1FkB,CA2F3B,IACa,MIjIJ,GAAa,CACpBO,UAAWhD,GAAuB,aAClCiD,WAAYjD,GAAuB,cACnCkD,iBAAkBlD,GAAuB,oBACzCmD,YAAanD,GAAuB,eACpCoD,cAAepD,GAAuB,iBACtCqD,kBAAmBrD,GAAuB,oBAC1CsD,YAAatD,GAAuB,eACpCuD,kBAAmBvD,GAAuB,qBAC1CwD,SAAUxD,GAAuB,YACjCyD,kBAAmBzD,GAAuB,qBAC1C0D,sBAAuB1D,GAAuB,yBAC9Cp9K,IAAKo9K,GAAuB,QAE5B,GAA2B,SAAUx3E,GAErC,SAASm7E,EAAU5e,EAAe6b,GAC9B,OAAOp4E,EAAOjxF,KAAKxZ,KAAMiiL,GAAuB,cAAejb,EAAe6b,IAAe7iL,KA4FjG,OA9FA,OAAkB4lL,EAAWn7E,GAI7BrmG,OAAOsZ,eAAekoK,EAAUnrK,UAAW,MAAO,CAC9C3J,IAAK,SAAUlM,GACX,IAAIihL,EAAcjE,GAAmBh9K,GACrC5E,KAAKu6C,MAAM,GAAW11C,KAAOghL,GAAeA,EAAYvvK,eAE5D0E,YAAY,EACZD,cAAc,IAElB3W,OAAOsZ,eAAekoK,EAAUnrK,UAAW,WAAY,CACnD3J,IAAK,SAAUg1K,GACX9lL,KAAKu6C,MAAM,GAAW0qI,WAAarD,GAAmBkE,GAAUxvK,eAEpE0E,YAAY,EACZD,cAAc,IAElB3W,OAAOsZ,eAAekoK,EAAUnrK,UAAW,YAAa,CACpD3J,IAAK,SAAU4pK,GACX16K,KAAKu6C,MAAM,GAAW2qI,YAAcxK,GAExC1/J,YAAY,EACZD,cAAc,IAElB3W,OAAOsZ,eAAekoK,EAAUnrK,UAAW,cAAe,CACtD3J,IAAK,SAAUi1K,GACX/lL,KAAKu6C,MAAM,GAAW4qI,kBAAoB,EAAwBta,8BAA8Bkb,IAEpG/qK,YAAY,EACZD,cAAc,IAElB3W,OAAOsZ,eAAekoK,EAAUnrK,UAAW,aAAc,CACrD3J,IAAK,SAAUk1K,GACXhmL,KAAKu6C,MAAM,GAAW6qI,aAAeY,EAAW1vK,eAEpD0E,YAAY,EACZD,cAAc,IAElB3W,OAAOsZ,eAAekoK,EAAUnrK,UAAW,qBAAsB,CAC7D3J,IAAK,SAAUy7J,GACXvsK,KAAKu6C,MAAM,GAAW8qI,eAAiB9Y,GAE3CvxJ,YAAY,EACZD,cAAc,IAElB3W,OAAOsZ,eAAekoK,EAAUnrK,UAAW,iBAAkB,CACzD3J,IAAK,SAAU6rJ,GACX38J,KAAKu6C,MAAM,GAAW+qI,mBAAqB3oB,GAE/C3hJ,YAAY,EACZD,cAAc,IAElB3W,OAAOsZ,eAAekoK,EAAUnrK,UAAW,aAAc,CACrD3J,IAAK,SAAUo8J,GACXltK,KAAKu6C,MAAM,GAAWgrI,aAAerY,GAEzClyJ,YAAY,EACZD,cAAc,IAElB3W,OAAOsZ,eAAekoK,EAAUnrK,UAAW,kBAAmB,CAC1D3J,IAAK,SAAUm1K,GACXjmL,KAAKu6C,MAAM,GAAWirI,mBAAqBS,GAE/CjrK,YAAY,EACZD,cAAc,IAElB3W,OAAOsZ,eAAekoK,EAAUnrK,UAAW,UAAW,CAMlD3J,IAAK,SAAUo1K,GACXlmL,KAAKu6C,MAAM,GAAWkrI,UAAYS,GAEtClrK,YAAY,EACZD,cAAc,IAElB3W,OAAOsZ,eAAekoK,EAAUnrK,UAAW,kBAAmB,CAC1D3J,IAAK,SAAU6rJ,GACX38J,KAAKu6C,MAAM,GAAWmrI,mBAAqB/oB,GAE/C3hJ,YAAY,EACZD,cAAc,IAElB3W,OAAOsZ,eAAekoK,EAAUnrK,UAAW,qBAAsB,CAC7D3J,IAAK,SAAUq1K,GACXnmL,KAAKu6C,MAAM,GAAWorI,uBAAyBQ,GAEnDnrK,YAAY,EACZD,cAAc,IAEX6qK,EA/FmB,CAgG5B,IACa,MC9GX,GAAkC,WAClC,SAASQ,EAAiBl3I,EAAQs0H,EAAkB+V,GAEhDv5K,KAAKqmL,gBAAkB,GAEvBrmL,KAAKsmL,iBAAmB,GAExBtmL,KAAKumL,0BAA4B,GAEjCvmL,KAAKwmL,0BAA2B,EAEhCxmL,KAAKymL,kBAAoB,OAAiB,CAAElD,IAAKhpB,EAAUmsB,YAAalD,WAAYpnB,IAAkBqnB,mBAAoB,CAElHC,gBAAsC,qBAAdjJ,WAA6BA,UAAUkM,YAAclM,UAAUkM,WAAWC,gBACjG13I,EAAO4O,UAChB99C,KAAK0lK,SAAWx2H,EAAOw2H,SACvB1lK,KAAKwmL,yBAA2Bt3I,EAAOs3I,yBAMvCxmL,KAAKwjK,iBAAmBA,EACxBxjK,KAAKu5K,OAASA,EAyGlB,OAvGA6M,EAAiBS,wBAA0B,SAAUnhB,EAAU6T,GAC3D,IAAIjW,EAAkB,YAClBC,EAAqB,MACrBC,EAAmB,aACnBijB,EAAoB,CACpBnjB,gBAAiBA,EACjBC,mBAAoBA,GAEpBujB,EAAyB,CACzBhpI,SAAU2oI,EACV/gB,SAAUA,GAEd,OAAO,IAAI1lK,KAAK8mL,EAAwBtjB,EAAkB+V,IAE9D6M,EAAiB3rK,UAAUssK,WAAa,SAAUxsI,GAC9Cv6C,KAAKu5K,OAAOG,QAAQ,4BAA8Bn/H,EAAMt5C,KACnDjB,KAAKwjK,mBAGVjpH,EAAM3jB,QACN52B,KAAKsmL,iBAAiB/rI,EAAMt5C,KAAOs5C,IAEvC6rI,EAAiB3rK,UAAU8yJ,UAAY,SAAUhzH,GAE7C,GADAv6C,KAAKu5K,OAAOG,QAAQ,4BAA8Bn/H,EAAMt5C,KACnDjB,KAAKwjK,kBAAqBxjK,KAAKsmL,iBAAiB/rI,EAAMt5C,KAA3D,CAGAs5C,EAAMsQ,OACN7qD,KAAKgnL,oBAAoBzsI,GACzB,IAAI8rI,EAAkBrmL,KAAKqmL,gBAAgB9rI,EAAM6oI,wBACjDpjL,KAAKqmL,gBAAgB9rI,EAAM6oI,yBAA2BiD,GAAmB,IAAI//J,OAAO,CAACi0B,WAC9Ev6C,KAAKsmL,iBAAiB/rI,EAAMt5C,OAEvCmlL,EAAiB3rK,UAAUwsK,MAAQ,SAAUjgB,GACzC,IAAI1gE,EAAQtmG,KAGZ,GAFAA,KAAKu5K,OAAOG,QAAQ,8BAAgC1S,GAE/ChnK,KAAKwjK,kBAAqBxjK,KAAKqmL,gBAAgBrf,GAApD,CAGA,IAAIkgB,EAAiBlnL,KAAKmnL,kBAAkBngB,GAC5CkgB,EAAejiL,SAAQ,SAAUs1C,GAAS,OAAO+rD,EAAM0gF,oBAAoBzsI,MAC3E,IAAI6sI,EAAgBpnL,KAAKqmL,gBAAgBrf,GAAe1gJ,OAAO4gK,UACxDlnL,KAAKqmL,gBAAgBrf,GAC5B,IAAIqgB,EAAqBrnL,KAAKumL,0BAA0Bvf,GAGxD,UAFOhnK,KAAKumL,0BAA0Bvf,GAEjCogB,GAAkBA,EAAc17K,OAArC,CAGA,IAAI47K,EAAe,IAAI,GAAatnL,KAAKymL,kBAAmBzf,EAAehnK,KAAK0lK,SAAU2hB,GACtFE,EAAyBH,EAAc9gK,OAAO,CAACghK,IACnDtnL,KAAKwjK,iBAAiB+jB,EAAuBlkL,KAAI,SAAU0Y,GAAK,OAAOA,EAAE1W,aAE7E+gL,EAAiB3rK,UAAU+sK,uBAAyB,SAAUxgB,EAAe4d,GACzE,IAAI6C,EAAW,IAAI,GAASzgB,EAAehnK,KAAKu5K,OAAOyE,sBAAuB4G,GAE9E,OADA5kL,KAAK+mL,WAAWU,GACTA,GAEXrB,EAAiB3rK,UAAUitK,qBAAuB,SAAU1gB,EAAeygB,EAAU3C,EAAenoB,GAChG8qB,EAAS3C,cAAgBA,EACrBnoB,IACA8qB,EAASE,aAAehrB,GAE5B38J,KAAKutK,UAAUka,GACfznL,KAAKinL,MAAMjgB,IAEfof,EAAiB3rK,UAAU4yJ,wBAA0B,SAAUua,EAAa1a,EAAYtoK,EAAKi+K,GACzF,IAAIzV,EAAY,IAAI,GAAUwa,EAAa/E,GAI3C,OAHAzV,EAAUxoK,IAAMA,EAChBwoK,EAAUF,WAAaA,EACvBltK,KAAK+mL,WAAW3Z,GACTA,GAEXgZ,EAAiB3rK,UAAUusK,oBAAsB,SAAUzsI,GACvD,IAAI2nC,EAKA7D,EAAY9jC,EAAM8jC,UAClBilG,EAAatjL,KAAKumL,0BAA0BhsI,EAAM6oI,wBACjDE,EAMDA,EAAWjlG,GAAailG,EAAWjlG,GAAailG,EAAWjlG,GAAa,EAAI,EAL5Er+E,KAAKumL,0BAA0BhsI,EAAM6oI,yBAA2BlhG,EAAK,GACjEA,EAAG7D,GAAa,EAChB6D,IAMZkkG,EAAiB3rK,UAAU0sK,kBAAoB,SAAUngB,GACrD,IAAI1gE,EAAQtmG,KACZ,OAAOoE,OAAOie,KAAKriB,KAAKsmL,kBACnBniI,QAAO,SAAU0jI,EAAMC,GACxB,IAAyC,IAArCA,EAAS79J,QAAQ+8I,GAAuB,CACxC,IAAI+gB,EAAUzhF,EAAMggF,iBAAiBwB,GAErC,cADOxhF,EAAMggF,iBAAiBwB,GACvBD,EAAKvhK,OAAO,CAACyhK,IAExB,OAAOF,IACR,KAEAzB,EAhI0B,GAkItB,MClIX,GAAgC,WAChC,SAAS4B,KAmBT,OAjBAA,EAAeC,6BAA+B,SAAUC,EAAiBhkB,GACrE,OAAOgkB,EAAgB53I,QAAO,SAAU63I,GACpC,IAAIrkB,EAAeqkB,EAAUlnL,IAAI8iK,OAAO3wJ,MAAM,KAC1Cg1K,EAAe,EAASviB,oBAAoB3B,GAEhD,OAA+B,IAAxBkkB,EAAa18K,OAAe,EAASy4J,cAAcL,EAAcI,GAAiB,EAASC,cAAcL,EAAcskB,OAGtIJ,EAAeK,iCAAmC,SAAUH,EAAiBlgB,GACzE,OAAOkgB,EAAgB53I,QAAO,SAAU63I,GAAa,OAAO,EAASvgB,gBAAgBugB,EAAUlnL,IAAI+mK,aAAeA,MAEtHggB,EAAeM,8BAAgC,SAAUJ,EAAiBK,GACtE,OAAOL,EAAgB53I,QAAO,SAAU63I,GACpC,IAAIK,EAAkB,EAASjhB,iBAAiB4gB,EAAUlnL,IAAI+mK,WAAWF,gBACzE,OAAO0gB,IAAoBD,MAG5BP,EApBwB,GC2B/B,GAAoB,2CAMpB,GAAsC,WAsBtC,SAASS,EAAqBtxJ,GAE1Bn3B,KAAK0oL,qBAAuB,KAC5B1oL,KAAK2oL,sBAAwB,KAC7B3oL,KAAK4oL,sBAAwB,KAE7B5oL,KAAKkvC,OAAS6vI,GAAmB5nJ,GACjCn3B,KAAKu5K,OAASv5K,KAAKkvC,OAAO+vI,OAAO1F,OACjCv5K,KAAK0lK,SAAW1lK,KAAKkvC,OAAO8vI,KAAKtZ,SACjC1lK,KAAK6oL,SAAW7oL,KAAKkvC,OAAOuP,MAAMm2H,uBAClC50K,KAAKgtK,iBAAmBhtK,KAAK8oL,8BAA8B9oL,KAAKkvC,OAAO+vI,OAAO8J,UAAW/oL,KAAK0lK,UAC9F,EAAiB+G,gCAAgCzsK,KAAKkvC,OAAO8vI,KAAKtS,kBAAmB1sK,KAAKkvC,OAAO8vI,KAAKrS,kBACtG,EAAiBoQ,uBAAuB/8K,KAAKkvC,OAAO8vI,KAAKhX,UAAWhoK,KAAKkvC,OAAO8vI,KAAK9Q,mBAErFluK,KAAKgoK,UAAYhoK,KAAKkvC,OAAO8vI,KAAKhX,WAAa,GAE/ChoK,KAAK27K,aAAe,IAAI,EAAU37K,KAAK0lK,SAAU1lK,KAAKkvC,OAAOuP,MAAM2zH,cAAepyK,KAAK6oL,UAEvF/+J,OAAOk/J,eAAiB,GACxBl/J,OAAOm/J,YAAc,GACrBn/J,OAAOo/J,4BAA8B,GACrCp/J,OAAOq/J,2BAA6B,GACpCr/J,OAAOs/J,KAAOppL,KACd,IAAIqpL,EAAUv/J,OAAO4iG,SAAShnH,KAC1BsjK,EAAkB,EAASA,gBAAgBqgB,GAI/C,GAFA,EAAY3N,2BAA2B17K,KAAK27K,cAExC3S,EAAiB,CACjB,IAAIsgB,EAAYtpL,KAAKupL,iBAAiBF,GAClCC,EAAUzvJ,SAAW0gI,EAAUka,yBAC/Bz0K,KAAKwpL,qCAAqCH,IA4+DtD,OAx+DAjlL,OAAOsZ,eAAe+qK,EAAqBhuK,UAAW,YAAa,CAM/DpV,IAAK,WACD,OAAOrF,KAAKqmK,kBAAkB6D,oBAOlCp5J,IAAK,SAAU6O,GACX3f,KAAKqmK,kBAAoB,EAAiB6W,eAAev9J,EAAK3f,KAAKkvC,OAAO8vI,KAAKtS,oBAEnF1xJ,YAAY,EACZD,cAAc,IAOlB0tK,EAAqBhuK,UAAUgvK,qBAAuB,WAClD,OAAOzpL,KAAKqmK,mBAEhBoiB,EAAqBhuK,UAAUivK,uBAAyB,SAAUC,EAAqBf,GACnF,IAAKe,EACD,MAAM,EAAyBtnB,iCAAiCsnB,GAGhEf,GACA5oL,KAAK2oL,sBAAwBgB,EAC7B3pL,KAAK4oL,sBAAwBA,EAC7B5oL,KAAKu5K,OAAOoE,QAAQ,kKAGpB39K,KAAK0oL,qBAAuBiB,EAE5B3pL,KAAK4pL,cACL5pL,KAAK6pL,iBAAiBtvB,EAAUka,wBAAyBz0K,KAAK4pL,cAAe5pL,KAAK8pL,kBAE7E9pL,KAAK8pL,kBACV9pL,KAAK+pL,oBAAoBxvB,EAAUka,wBAAyBz0K,KAAK8pL,mBAOzErB,EAAqBhuK,UAAUuuJ,gBAAkB,SAAUtjK,GAEvD,OADA1F,KAAKu5K,OAAOG,QAAQ,mCACb,EAAS1Q,gBAAgBtjK,IAEpC+iL,EAAqBhuK,UAAUsvK,oBAAsB,SAAUrW,EAAiBpH,EAAUj4I,GAEtF,GADAr0B,KAAKu5K,OAAOG,QAAQ,uCAChBhG,IAAoBnZ,EAAUka,wBAC9Bz0K,KAAKu5K,OAAOG,QAAQ,gCAChB15K,KAAK4oL,uBACL5oL,KAAKu5K,OAAOG,QAAQ,iGACpB15K,KAAK2oL,sBAAsBrc,IAEtBtsK,KAAK0oL,uBACV1oL,KAAKu5K,OAAOG,QAAQ,mGACpB15K,KAAK0oL,qBAAqB,KAAMpc,QAGnC,IAAIoH,IAAoBnZ,EAAUyvB,qBAKnC,MAAM,EAAgBzpB,oCAJtBvgK,KAAKu5K,OAAOG,QAAQ,wCACpBrlJ,EAAQi4I,KAMhBmc,EAAqBhuK,UAAUovK,iBAAmB,SAAUnW,EAAiBuW,EAAS3d,EAAUH,GAI5F,GAHAnsK,KAAKu5K,OAAOG,QAAQ,oCAEpB15K,KAAK27K,aAAahJ,WAAW/X,EAAmBgc,oBAC5ClD,IAAoBnZ,EAAUka,wBAE9B,GADAz0K,KAAKu5K,OAAOG,QAAQ,gCAChB15K,KAAK4oL,sBACL5oL,KAAKu5K,OAAOG,QAAQ,iFACpB15K,KAAK4oL,sBAAsBqB,EAAS3d,EAASoQ,kBAE5C,KAAI18K,KAAK0oL,qBAMV,MADA1oL,KAAKu5K,OAAOG,QAAQ,8FACduQ,EALNjqL,KAAKu5K,OAAOG,QAAQ,gGACpB15K,KAAK0oL,qBAAqBuB,EAAS3d,OAOtC,IAAIoH,IAAoBnZ,EAAUyvB,qBAKnC,MAAM,EAAgBzpB,oCAJtBvgK,KAAKu5K,OAAOG,QAAQ,wCACpBvN,EAAO8d,KAWfxB,EAAqBhuK,UAAUyvK,cAAgB,SAAUC,GACrDnqL,KAAKu5K,OAAOG,QAAQ,iCAEpB,IAAI9gJ,EAAU,EAAa46I,gBAAgB2W,GAAa,EAAMnqL,KAAK0lK,SAAUnL,EAAUka,yBACvFz0K,KAAKoqL,wBAAwB7vB,EAAUka,yBAAyB,EAAM77I,EAAS,KAAM,OAQzF6vJ,EAAqBhuK,UAAU4vK,qBAAuB,SAAUF,GAC5DnqL,KAAKu5K,OAAOG,QAAQ,wCAEpB,IAAI9gJ,EAAU,EAAa46I,gBAAgB2W,GAAa,EAAOnqL,KAAK0lK,SAAUnL,EAAUka,yBACxFz0K,KAAKoqL,wBAAwB7vB,EAAUka,yBAAyB,EAAO77I,EAAS,KAAM,OAS1F6vJ,EAAqBhuK,UAAU6vK,WAAa,SAAUH,GAClD,IAAI7jF,EAAQtmG,KACZA,KAAKu5K,OAAOG,QAAQ,8BAEpB,IAAI9gJ,EAAU,EAAa46I,gBAAgB2W,GAAa,EAAMnqL,KAAK0lK,SAAUnL,EAAUyvB,sBACnFvC,EAAWznL,KAAKgtK,iBAAiBwa,uBAAuB5uJ,EAAQouI,cAAeyZ,GAAqB8D,YACxG,OAAO,IAAIv7B,SAAQ,SAAU30H,EAAS83I,GAClC7lE,EAAM8jF,wBAAwB7vB,EAAUyvB,sBAAsB,EAAMpxJ,EAASvE,EAAS83I,MAErFniE,MAAK,SAAUugF,GAGhB,OAFAjkF,EAAMizE,OAAOG,QAAQ,0BACrBpzE,EAAM0mE,iBAAiB0a,qBAAqB9uJ,EAAQouI,cAAeygB,GAAU,GACtE8C,KAEN/c,OAAM,SAAU7yJ,GAGjB,MAFA2rF,EAAMq1E,aAAanF,oBAAoB59I,EAAQ91B,OAC/CwjG,EAAM0mE,iBAAiB0a,qBAAqB9uJ,EAAQouI,cAAeygB,GAAU,EAAO9sK,EAAMgiJ,WACpFhiJ,MAUd8tK,EAAqBhuK,UAAU+vK,kBAAoB,SAAUL,GACzD,IAAI7jF,EAAQtmG,KACZA,KAAKu5K,OAAOG,QAAQ,qCAEpB,IAAI9gJ,EAAU,EAAa46I,gBAAgB2W,GAAa,EAAOnqL,KAAK0lK,SAAUnL,EAAUyvB,sBACpFvC,EAAWznL,KAAKgtK,iBAAiBwa,uBAAuB5uJ,EAAQouI,cAAeyZ,GAAqB4D,mBACxG,OAAO,IAAIr7B,SAAQ,SAAU30H,EAAS83I,GAClC7lE,EAAM8jF,wBAAwB7vB,EAAUyvB,sBAAsB,EAAOpxJ,EAASvE,EAAS83I,MAEtFniE,MAAK,SAAUugF,GAGhB,OAFAjkF,EAAMizE,OAAOG,QAAQ,+BACrBpzE,EAAM0mE,iBAAiB0a,qBAAqB9uJ,EAAQouI,cAAeygB,GAAU,GACtE8C,KAEN/c,OAAM,SAAU7yJ,GAGjB,MAFA2rF,EAAMq1E,aAAanF,oBAAoB59I,EAAQ91B,OAC/CwjG,EAAM0mE,iBAAiB0a,qBAAqB9uJ,EAAQouI,cAAeygB,GAAU,EAAO9sK,EAAMgiJ,WACpFhiJ,MAWd8tK,EAAqBhuK,UAAU2vK,wBAA0B,SAAU1W,EAAiBD,EAAa76I,EAASvE,EAAS83I,GAC/G,IAAI7lE,EAAQtmG,KACZA,KAAKu5K,OAAOG,QAAQ,2CAEpB,EAAY+B,6BACZ,IAaIrR,EAbAqgB,EAAsBzqL,KAAK27K,aAAalJ,QAAQ7X,EAAmBgc,oBAKvE,GAJIlD,IAAoBnZ,EAAUka,yBAC9Bz0K,KAAK27K,aAAarJ,QAAQ1X,EAAmBic,iBAAkB,GAAKtc,EAAUvT,WAAauT,EAAUsK,kBAAoBjsI,EAAQ91B,OAGjI2nL,IAAwBlwB,EAAUvT,WAAY,CAC9C,IAAI0jC,EAAcjX,EAAc,EAAgBlU,6BAA+B,EAAgBC,oCAC3FmrB,EAAoBrK,GAAuBtgL,KAAK4qL,gBAAgBhyJ,EAAQ91B,QAG5E,OAFA9C,KAAK27K,aAAanF,oBAAoB59I,EAAQ91B,YAC9C9C,KAAK6pL,iBAAiBnW,EAAiBgX,EAAaC,EAAmBxe,GAc3E,GATIvzI,GAAWA,EAAQwxI,UAAYqJ,GAC/BrJ,EAAUxxI,EAAQwxI,QAClBpqK,KAAKu5K,OAAOG,QAAQ,8BAGpBtP,EAAUpqK,KAAK6qL,aACf7qL,KAAKu5K,OAAOG,QAAQ,gCAGnBtP,GAAY,EAAwBK,WAAW7xI,GAuChD54B,KAAKu5K,OAAOG,QAAQ,2CACpB15K,KAAK8qL,mBAAmB1gB,EAASsJ,EAAiBD,EAAa76I,EAASvE,EAAS83I,OAxCvB,CAC1D,IAAIsH,EA2BC,CACDzzK,KAAKu5K,OAAOG,QAAQ,kDACpB15K,KAAKu5K,OAAO/kJ,KAAK,0BACbm2J,EAAoBrK,GAAuBtgL,KAAK4qL,gBAAgBhyJ,EAAQ91B,QAG5E,OAFA9C,KAAK27K,aAAanF,oBAAoB59I,EAAQ91B,YAC9C9C,KAAK6pL,iBAAiBnW,EAAiB,EAAgB9T,+BAAgC+qB,EAAmBxe,GA9B1G,IAAI8J,EAAcj2K,KAAK+qL,qBAEvB,GAAI9U,IAAgBr9I,EAAQmrI,OAAQ,CAChC/jK,KAAKu5K,OAAO/kJ,KAAK,2EACjB,IAAIw2J,EAAehrL,KAAKirL,oBAAoBryJ,GAC5C54B,KAAKkrL,aAAc,EACnBlrL,KAAKmrL,mBAAmBH,GAAchhF,MAAK,SAAUsiE,GACjDhmE,EAAM4kF,aAAc,EACpB5kF,EAAMizE,OAAO/kJ,KAAK,oCAClB8xE,EAAMyjF,oBAAoBrW,EAAiBpH,EAAUj4I,MAEtD,SAAU1Z,GACT2rF,EAAM4kF,aAAc,EACpB5kF,EAAMizE,OAAO5+J,MAAM,4CAA8CA,GAEjE2rF,EAAMwkF,mBAAmB,KAAMpX,EAAiBD,EAAa76I,EAASvE,EAAS83I,WAKnFnsK,KAAKu5K,OAAOG,QAAQ,mDACpB15K,KAAK8qL,mBAAmB,KAAMpX,EAAiBD,EAAa76I,EAASvE,EAAS83I,KAyB9Fsc,EAAqBhuK,UAAUqwK,mBAAqB,SAAU1gB,EAASsJ,EAAiBD,EAAa76I,EAASvE,EAAS83I,GACnH,OAAO,OAAkBnsK,UAAM,OAAQ,GAAQ,WAC3C,IAAIm5K,EAAkBsD,EAA6B2O,EAAuBC,EAAa7kB,EAAc8kB,EAAgBhS,EAAa5zK,EAAM6lL,EAASC,EAAUC,EAC3J,OAAO,OAAoBzrL,MAAM,SAAUkiF,GACvC,OAAQA,EAAG/zE,OACP,KAAK,EACDnO,KAAKu5K,OAAOG,QAAQ,sCACpB15K,KAAKu5K,OAAOG,QAAQ,qBAAuBhG,EAAkB,kBAAoBD,GAEjFzzK,KAAK27K,aAAarJ,QAAQ1X,EAAmBgc,mBAAoBrc,EAAUvT,YAC3EmyB,EAAmBvgJ,EAAQmrI,OAASnrI,EAAQmrI,OAAOvvJ,KAAK,KAAK8B,cAAgBikJ,EAAUwL,WAAWvxJ,KAAK,KACvGxU,KAAKu5K,OAAOwE,WAAW,sBAAwB5E,GAC/CiS,EAAyBxyJ,GAAWA,EAAQovI,UAAa,EAAiBkV,eAAetkJ,EAAQovI,UAAWhoK,KAAKkvC,OAAO8vI,KAAKtS,kBAAmB9zI,EAAQs1I,mBAAqBluK,KAAKqmK,kBAClLnkF,EAAG/zE,MAAQ,EACf,KAAK,EAED,OADA+zE,EAAGwpG,KAAKp+K,KAAK,CAAC,EAAG,GAAI,CAAE,KACjB89K,EAAsBnc,oBAA4B,CAAC,EAAa,IACtEjvK,KAAKu5K,OAAOG,QAAQ,oCACb,CAAC,EAAa,EAAiBkD,wBAAwBwO,EAAuBprL,KAAKgtK,iBAAkBp0I,EAAQouI,iBACxH,KAAK,EAED,OADA9kF,EAAGyrF,OACI,CAAC,EAAa,GACzB,KAAK,EACD3tK,KAAKu5K,OAAOG,QAAQ,uCACpBx3F,EAAG/zE,MAAQ,EACf,KAAK,EAYD,GAXAq4J,EAAeiN,EAAc1Y,EAAcC,SAAWh7J,KAAK2rL,aAAavhB,EAASxxI,EAAQmrI,QACzFunB,EAAiB1yJ,EAAQgzJ,mBAAqB9hK,OAAO4iG,SAAStnH,KAC9Dq3K,EAA8B,IAAI,EAAwB2O,EAAuBprL,KAAK0lK,SAAUc,EAAcxmK,KAAK6rL,eAAejzJ,GAAWA,EAAQ6tI,aAAc7tI,EAAQmrI,OAAQnrI,EAAQ91B,MAAO81B,EAAQouI,eAC1MhnK,KAAKu5K,OAAOG,QAAQ,mDACpB15K,KAAK8rL,mBAAmBrP,EAA6BrS,EAASqJ,EAAa6X,GAC3EtrL,KAAKu5K,OAAOG,QAAQ,0BAEpB+C,EAA4BtS,oBAAoBC,EAASxxI,GACzD54B,KAAKu5K,OAAOG,QAAQ,2CACpBJ,EAAc,EAASrT,kBAAkBwW,GAA+BliB,EAAUwxB,uBAE9ErY,IAAoBnZ,EAAUka,wBACzBhB,EAMDzzK,KAAKu5K,OAAOG,QAAQ,uEALpB15K,KAAK27K,aAAarJ,QAAQ,EAAUkF,0BAA0B5c,EAAmBkd,gBAAiBl/I,EAAQ91B,OAAQ25K,EAA4B35K,MAAO9C,KAAK6oL,UAC1J7oL,KAAKu5K,OAAOG,QAAQ,6BACpB15K,KAAKu5K,OAAOwE,WAAW,iBAAmBtB,EAA4B35K,YAMzE,IAAI4wK,IAAoBnZ,EAAUyvB,qBAUnC,MADAhqL,KAAKu5K,OAAOG,QAAQ,+CACd,EAAgBnZ,oCATtBz2I,OAAOm/J,YAAY37K,KAAKmvK,EAA4B35K,OACpDgnB,OAAOkiK,YAAcvY,EAAclZ,EAAU0xB,MAAQ1xB,EAAU2xB,WAC/DlsL,KAAKu5K,OAAOG,QAAQ,yBACpB15K,KAAKu5K,OAAOwE,WAAW,gBAAkBtB,EAA4B35K,OAErE9C,KAAKmsL,iBAAiB1P,EAA4B35K,MAAOq2K,EAAkB9kJ,EAAS83I,GAMxF,GAAMuH,IAAoBnZ,EAAUyvB,qBAAuB,MAAO,CAAC,EAAa,GAChFhqL,KAAKu5K,OAAOG,QAAQ,sDAEpB,IACI2R,EAAcrrL,KAAKosL,UAAU9S,EAAa,OAAQ/e,EAAU8xB,WAAY9xB,EAAU+xB,aAElF,EAAY/Q,WAAW8P,GAE3B,MAAOtvK,GAIH,GAHA/b,KAAKu5K,OAAO/kJ,KAAK2oI,EAAuBG,iBAAiBzoJ,KAAO,IAAMsoJ,EAAuBG,iBAAiBd,MAC9Gx8J,KAAK27K,aAAarJ,QAAQxX,EAAesO,MAAOjM,EAAuBG,iBAAiBzoJ,MACxF7U,KAAK27K,aAAarJ,QAAQxX,EAAewa,WAAYnY,EAAuBG,iBAAiBd,MACzF2P,EAEA,OADAA,EAAO,EAAgBtN,0BAChB,CAAC,GAGhB,IAAKwsB,EAAa,MAAO,CAAC,EAAa,GACvCnpG,EAAG/zE,MAAQ,EACf,KAAK,EAED,OADA+zE,EAAGwpG,KAAKp+K,KAAK,CAAC,EAAG,EAAG,CAAE,IACf,CAAC,EAAa,EAAYwsK,oBAAoBuR,EAAarrL,KAAKkvC,OAAO+vI,OAAOR,iBAAkBnF,EAAat5K,KAAKu5K,SAC7H,KAAK,EAWD,OAVA7zK,EAAOw8E,EAAGyrF,OACV3tK,KAAKusL,6BAA6B7mL,GAElC1F,KAAK27K,aAAahJ,WAAW/X,EAAmBgc,oBAChD52K,KAAKu5K,OAAO/kJ,KAAK,wBAEbx0B,KAAKkvC,OAAOiwI,UAAUP,WACtB5+K,KAAKwsL,UAAU,wBAAyB9mL,GAE5C,EAAY81K,cACL,CAAC,EAAa,GACzB,KAAK,EAaD,OAZA+P,EAAUrpG,EAAGyrF,OACTxB,GACAA,EAAOof,GAEPvrL,KAAKkvC,OAAOiwI,UAAUP,UACtB5+K,KAAKwsL,UAAU,mBAAoBjB,EAAQ5uB,UAAYpC,EAAUsK,kBAAoB0mB,EAAQ12E,eAI7F70G,KAAK27K,aAAahJ,WAAW/X,EAAmBgc,oBAChDyU,EAAYt9D,SAET,CAAC,EAAa,GACzB,KAAK,EAAG,MAAO,CAAC,EAAa,IAC7B,KAAK,EAEGn1F,EAAQ6zJ,oBACRzsL,KAAKu5K,OAAOG,QAAQ,wCACpB8R,EAAW5yJ,EAAQ6zJ,mBAAmBnT,IAErB,IAAbkS,GACAxrL,KAAKu5K,OAAOG,QAAQ,uDACpB15K,KAAK0sL,eAAepT,IAGpBt5K,KAAKu5K,OAAOG,QAAQ,4DAKxB15K,KAAKu5K,OAAOG,QAAQ,oCACpB15K,KAAK0sL,eAAepT,IAExBp3F,EAAG/zE,MAAQ,GACf,KAAK,GAAI,MAAO,CAAC,EAAa,IAC9B,KAAK,GAQD,OAPAs9K,EAAQvpG,EAAGyrF,OACX3tK,KAAKu5K,OAAO5+J,MAAM8wK,GAClBzrL,KAAK27K,aAAanF,oBAAoB59I,EAAQ91B,OAC9C9C,KAAK6pL,iBAAiBnW,EAAiB,EAAgBhV,8BAA8B+sB,EAAMh3K,UAAW6rK,GAAuB1nJ,EAAQ91B,OAAQqpK,GACzIkf,GACAA,EAAYt9D,QAET,CAAC,EAAa,IACzB,KAAK,GAAI,MAAO,CAAC,WASjC06D,EAAqBhuK,UAAUkyK,UAAY,SAAU/zJ,GAGjD,GAFA54B,KAAKu5K,OAAOG,QAAQ,8BAEf9gJ,EACD,MAAM,EAAyBmqI,0BAGnC,IAAKnqI,EAAQsyI,MAAQtyI,EAAQwyI,UACzB,MAAM,EAAyB1H,uBAEnC,OAAO1jK,KAAKmrL,mBAAmB,OAAiB,GAAIvyJ,EAAS,CAAEmrI,OAAQxJ,EAAUwL,eAcrF0iB,EAAqBhuK,UAAU0wK,mBAAqB,SAAUhB,GAC1D,IAAI7jF,EAAQtmG,KACZA,KAAKu5K,OAAOG,QAAQ,sCAEpB,IAAI9gJ,EAAU,EAAa46I,gBAAgB2W,GAAa,EAAOnqL,KAAK0lK,SAAUnL,EAAUqyB,uBACpFnF,EAAWznL,KAAKgtK,iBAAiBwa,uBAAuB5uJ,EAAQouI,cAAeyZ,GAAqB2D,oBACpGjL,EAAmB,EAAazE,uBAAuB97I,GAC3D,OAAO,IAAIowH,SAAQ,SAAU30H,EAAS83I,GAAU,OAAO,OAAkB7lE,OAAO,OAAQ,GAAQ,WAC5F,IAAI77F,EAAO2/J,EAAS6L,EAAazP,EAAciW,EAA6BpS,EAAmBwiB,EAAqB5C,EAAS6C,EAAqBvP,EAAYwP,EAC9J,OAAO,OAAoB/sL,MAAM,SAAUkiF,GACvC,OAAQA,EAAG/zE,OACP,KAAK,EAeD,GAbA,EAAYstK,6BACZhxK,EAAQmuB,EAAQmrI,OAAOvvJ,KAAK,KAAK8B,cACjCtW,KAAKu5K,OAAOwE,WAAW,sBAAwBtzK,GAC3CmuB,EAAQwxI,SACRA,EAAUxxI,EAAQwxI,QAClBpqK,KAAKu5K,OAAOG,QAAQ,8BAGpBtP,EAAUpqK,KAAK6qL,aACf7qL,KAAKu5K,OAAOG,QAAQ,gCAExBzD,EAAcj2K,KAAK27K,aAAalJ,QAAQlY,EAAU0b,cAE7C7L,IAAaxxI,EAAQsyI,MAAOtyI,EAAQwyI,WAAcrO,EAAYC,QAAQiZ,GAGvE,OAFAj2K,KAAKu5K,OAAO/kJ,KAAK,0BAEV,CAAC,EAAc23I,EAAO,EAAgBvM,iCAsBjD,GApBA4G,EAAexmK,KAAK2rL,aAAavhB,EAASxxI,EAAQmrI,QAClD/jK,KAAKu5K,OAAOG,QAAQ,kBAAoBlT,GACxCiW,EAA8B,IAAI,EAAwB,EAAiBS,eAAetkJ,EAAQovI,UAAWhoK,KAAKkvC,OAAO8vI,KAAKtS,kBAAmB9zI,EAAQs1I,mBAAoBluK,KAAK0lK,SAAUc,EAAcxmK,KAAK6rL,eAAejzJ,EAAQ6tI,aAAc7tI,EAAQmrI,OAAQnrI,EAAQ91B,MAAO81B,EAAQouI,eAC3RhnK,KAAKu5K,OAAOG,QAAQ,mDAEhB,EAAwBjP,WAAW7xI,IAAYwxI,GAC/CqS,EAA4BtS,oBAAoBC,EAASxxI,EAAS,MAAM,GACxE54B,KAAKu5K,OAAOG,QAAQ,4DAGdtP,GAAYrN,EAAYC,QAAQiZ,GAMtCj2K,KAAKu5K,OAAOG,QAAQ,yCALpBrP,EAAoB,EAAWiH,eAAe2E,GAC9Cj2K,KAAKu5K,OAAOG,QAAQ,wGACpB+C,EAA4BtS,oBAAoBC,EAAS,KAAMC,GAAmB,IAKtFwiB,EAAsBj0J,EAAQ4xI,eAAiBiS,EAA4B5V,aAEtEgmB,IAAwBj0J,EAAQo0J,aACjC,IACIF,EAAsB9sL,KAAKitL,eAAexQ,EAA6BrS,GAE3E,MAAOruJ,GACHkuK,EAAUluK,EAGlB,OAAK+wK,GACL9sL,KAAKu5K,OAAOG,QAAQ,+BACpB15K,KAAKu5K,OAAOwE,WAAW,iBAAmBn1E,KAAKC,UAAUikF,EAAoB/oB,SAC7E1vI,EAAQy4J,GACD,CAAC,EAAc,OAJW,CAAC,EAAa,GAKnD,KAAK,EACD,OAAK7C,GACLjqL,KAAKu5K,OAAOY,QAAQ8P,EAAQttB,UAAY,IAAMstB,EAAQp1E,cACtDs3D,EAAO8d,GACA,CAAC,EAAc,OAHD,CAAC,EAAa,GAIvC,KAAK,EACD1M,OAAa,EAETA,EADAsP,EACa,+CAERj0J,EAAQo0J,aACA,yEAGA,uCAEjBhtL,KAAKu5K,OAAOG,QAAQ6D,GAEfd,EAA4BpW,oBAC7BoW,EAA4BpW,kBAAoBztI,EAAQovI,UACpD,EAAiBkV,eAAetkJ,EAAQovI,UAAWhoK,KAAKkvC,OAAO8vI,KAAKtS,kBAAmB9zI,EAAQs1I,mBAC7FluK,KAAKqmK,mBAEfrmK,KAAKu5K,OAAOwE,WAAW,uBAAyBtB,EAA4BzU,WAC5E9lF,EAAG/zE,MAAQ,EACf,KAAK,EAED,OADA+zE,EAAGwpG,KAAKp+K,KAAK,CAAC,EAAG,EAAG,CAAE,IAChBmvK,EAA4BpW,kBAAkB4I,oBAA4B,CAAC,EAAa,IAC9FjvK,KAAKu5K,OAAOG,QAAQ,oCACb,CAAC,EAAa,EAAiBkD,wBAAwBH,EAA4BpW,kBAAmBrmK,KAAKgtK,iBAAkBp0I,EAAQouI,iBAChJ,KAAK,EAGD,OAFA9kF,EAAGyrF,OACH3tK,KAAKu5K,OAAOG,QAAQ,+DACb,CAAC,EAAa,GACzB,KAAK,EACD15K,KAAKu5K,OAAOG,QAAQ,uCACpBx3F,EAAG/zE,MAAQ,EACf,KAAK,EA0BD,OArBI2b,OAAOk/J,eAAe7P,IACtBn5K,KAAKu5K,OAAOG,QAAQ,oDAEpB15K,KAAKmsL,iBAAiBriK,OAAOk/J,eAAe7P,GAAmBA,EAAkB9kJ,EAAS83I,IAGtFvzI,EAAQmrI,QAAU,EAASoB,uBAAuBvsI,EAAQmrI,SAK1D/jK,KAAKu5K,OAAOG,QAAQ,gDACpB15K,KAAKkrL,aAAc,EACnBlrL,KAAKktL,aAAa/T,EAAkB9kJ,EAAS83I,EAAQ/B,EAASqS,KAI9Dz8K,KAAKu5K,OAAOG,QAAQ,yBACpB15K,KAAKksL,WAAW/S,EAAkB9kJ,EAAS83I,EAAQ/B,EAASqS,IAG7D,CAAC,EAAa,GACzB,KAAK,EAID,OAHAsQ,EAAQ7qG,EAAGyrF,OACX3tK,KAAKu5K,OAAO5+J,MAAMoyK,GAClB5gB,EAAO,EAAgBzN,8BAA8BquB,EAAMt4K,aACpD,CAAC,EAAc,MAC1B,KAAK,EAAG,MAAO,CAAC,aAIvBu1F,MAAK,SAAUlwE,GAGhB,OAFAwsE,EAAMizE,OAAOG,QAAQ,+BACrBpzE,EAAM0mE,iBAAiB0a,qBAAqB9uJ,EAAQouI,cAAeygB,GAAU,GACtE3tJ,KAEN0zI,OAAM,SAAU7yJ,GAGjB,MAFA2rF,EAAMq1E,aAAanF,oBAAoB59I,EAAQ91B,OAC/CwjG,EAAM0mE,iBAAiB0a,qBAAqB9uJ,EAAQouI,cAAeygB,GAAU,EAAO9sK,EAAMgiJ,WACpFhiJ,MAiBd8tK,EAAqBhuK,UAAU2xK,UAAY,SAAU9S,EAAa71K,EAAO4oL,EAAYC,GACjFtsL,KAAKu5K,OAAOG,QAAQ,6BACpB,IAKI,IAAIyT,EAAUrjK,OAAOsjK,WAAatjK,OAAOsjK,WAAatjK,OAAOujK,QACzDC,EAASxjK,OAAOyjK,UAAYzjK,OAAOyjK,UAAYzjK,OAAO0jK,QAKtD7gL,EAAQmd,OAAO2jK,YAAc1iJ,SAASsuC,gBAAgB98B,aAAexR,SAASkZ,KAAK1H,YACnF3vC,EAASkd,OAAO4jK,aAAe3iJ,SAASsuC,gBAAgBhlB,cAAgBtpB,SAASkZ,KAAKoQ,aACtFlkC,EAASxjB,EAAQ,EAAM0/K,EAAa,EAAMc,EAC1CQ,EAAU/gL,EAAS,EAAM0/K,EAAc,EAAMgB,EAE7CM,EAAc9jK,OAAOgqF,KAAKwlE,EAAa71K,EAAO,SAAW4oL,EAAa,YAAcC,EAAc,SAAWqB,EAAQ,UAAYx9J,EAAO,oBAC5I,IAAKy9J,EACD,MAAM,EAAgB/uB,yBAK1B,OAHI+uB,EAAYC,OACZD,EAAYC,QAETD,EAEX,MAAO7xK,GAEH,MADA/b,KAAK27K,aAAahJ,WAAW/X,EAAmBgc,oBAC1C,EAAgB/X,uBAAuB9iJ,EAAEtH,cAWvDg0K,EAAqBhuK,UAAUqzK,kBAAoB,SAAUxU,EAAaW,EAAWd,GACjF,OAAO,OAAkBn5K,UAAM,OAAQ,GAAQ,WAC3C,IAAI+tL,EAAehT,EAAQ74F,EAAIx8E,EAAMsoL,EACrC,OAAO,OAAoBhuL,MAAM,SAAU+1F,GACvC,OAAQA,EAAG5nF,OACP,KAAK,EAID,OAHA4/K,EAAgBjkK,OAAOk/J,eAAe7P,GACtCn5K,KAAKu5K,OAAOwE,WAAW,qCAAuC5E,EAAmB,IAAM4U,GACvF/tL,KAAK27K,aAAarJ,QAAQ,EAAUkF,0BAA0B5c,EAAmB6c,aAAcsW,GAAgBxzB,EAAUvT,YACpHhnJ,KAAKkvC,OAAO+vI,OAAOP,kBACjB,CAAC,EAAa,EAAY1E,UAAUV,EAAaW,EAAWj6K,KAAKkvC,OAAO+vI,OAAOP,kBAAmB1+K,KAAKu5K,SAD5D,CAAC,EAAa,GAEpE,KAAK,EAED,OADAr3F,EAAK6T,EAAG43E,OACD,CAAC,EAAa,GACzB,KAAK,EACDzrF,EAAK,EAAYm4F,cAAcf,EAAaW,EAAWj6K,KAAKu5K,QAC5DxjF,EAAG5nF,MAAQ,EACf,KAAK,EACD4sK,EAAS74F,EACT6T,EAAG5nF,MAAQ,EACf,KAAK,EAED,OADA4nF,EAAG21F,KAAKp+K,KAAK,CAAC,EAAG,EAAG,CAAE,IACf,CAAC,EAAa,EAAY8rK,qBAAqB2B,EAAO1B,cAAer5K,KAAKkvC,OAAO+vI,OAAOR,iBAAkBnF,EAAat5K,KAAKu5K,SACvI,KAAK,EAKD,OAJA7zK,EAAOqwF,EAAG43E,OACNjoK,GACA1F,KAAKusL,6BAA6B7mL,GAE/B,CAAC,EAAa,GACzB,KAAK,EAYD,MAXAsoL,EAAUj4F,EAAG43E,OACT3tK,KAAK27K,aAAalJ,QAAQ,EAAU+E,0BAA0B5c,EAAmB6c,aAAcsW,MAAoBxzB,EAAUvT,aAE7HhnJ,KAAKu5K,OAAOG,QAAQ,sCAAyC15K,KAAKkvC,OAAO+vI,OAAOR,iBAAmB,IAAQ,gCAAkCtF,EAAmB,IAAM4U,GAElKA,GAAiBjkK,OAAOo/J,4BAA4B6E,IACpDjkK,OAAOo/J,4BAA4B6E,GAAe,KAAMC,GAE5DhuL,KAAK27K,aAAahJ,WAAW,EAAU6E,0BAA0B5c,EAAmB6c,aAAcsW,KAEtG,EAAYjT,mBAAmBC,GACzBiT,EACV,KAAK,EAED,OADA,EAAYlT,mBAAmBC,GACxB,CAAC,WAY5B0N,EAAqBhuK,UAAUiyK,eAAiB,SAAUpT,EAAasU,GAEnE,IAAItU,GAAgBvc,EAAYC,QAAQsc,GAQpC,MADAt5K,KAAKu5K,OAAO/kJ,KAAK,yBACX,EAAUooI,sBAAsB,yBAPtC,IAAI8vB,EAAiBkB,GAA4B9jK,OAC7CyzJ,EAAaqQ,EAAc,6BAA+BtU,EAAc,eAAiBA,EAC7Ft5K,KAAKu5K,OAAOY,QAAQoD,GACpBmP,EAAehgE,SAASroH,OAAOi1K,IAgBvCmP,EAAqBhuK,UAAU0xK,iBAAmB,SAAU4B,EAAe5U,EAAkB9kJ,EAAS83I,GAClG,IAAI7lE,EAAQtmG,KAEZ8pB,OAAOk/J,eAAe7P,GAAoB4U,EAErCjkK,OAAOq/J,2BAA2B4E,KACnCjkK,OAAOq/J,2BAA2B4E,GAAiB,IAGvDjkK,OAAOq/J,2BAA2B4E,GAAezgL,KAAK,CAAE+mB,QAASA,EAAS83I,OAAQA,IAE7EriJ,OAAOo/J,4BAA4B6E,KACpCjkK,OAAOo/J,4BAA4B6E,GAAiB,SAAUzhB,EAAU3xJ,GAEpEmP,OAAOk/J,eAAe7P,GAAoB,KAE1C,IAAK,IAAIzgK,EAAI,EAAGA,EAAIoR,OAAOq/J,2BAA2B4E,GAAeriL,SAAUgN,EAC3E,IACI,GAAIiC,EACAmP,OAAOq/J,2BAA2B4E,GAAer1K,GAAGyzJ,OAAOxxJ,OAE1D,KAAI2xJ,EAKL,MADAhmE,EAAMq1E,aAAanF,oBAAoBuX,GACjC,EAAUnxB,sBAAsB,oCAJtC9yI,OAAOq/J,2BAA2B4E,GAAer1K,GAAG2b,QAAQi4I,IAOpE,MAAOvwJ,GACHuqF,EAAMizE,OAAOoE,QAAQ5hK,GAI7B+N,OAAOq/J,2BAA2B4E,GAAiB,KACnDjkK,OAAOo/J,4BAA4B6E,GAAiB,QAUhEtF,EAAqBhuK,UAAUwzK,OAAS,SAAUjnB,GAC9ChnK,KAAKu5K,OAAOG,QAAQ,0BACpB15K,KAAKkuL,YAAYlnB,IAMrByhB,EAAqBhuK,UAAUyzK,YAAc,SAAUlnB,GACnD,OAAO,OAAkBhnK,UAAM,OAAQ,GAAQ,WAC3C,IAAImuL,EAAsB1G,EAAU2G,EAAoBC,EAAsB/U,EAAagV,EAC3F,OAAO,OAAoBtuL,MAAM,SAAUkiF,GACvC,OAAQA,EAAG/zE,OACP,KAAK,EACDggL,EAAuBnnB,GAAiB9N,EAAYC,gBACpDsuB,EAAWznL,KAAKgtK,iBAAiBwa,uBAAuB2G,EAAsB1N,GAAqBgE,QACnGzkL,KAAKuuL,aACLvuL,KAAKoqK,QAAU,KACfloF,EAAG/zE,MAAQ,EACf,KAAK,EAED,OADA+zE,EAAGwpG,KAAKp+K,KAAK,CAAC,EAAG,EAAG,CAAE,IAChBtN,KAAKqmK,kBAAkB4I,oBAA4B,CAAC,EAAa,IACvEjvK,KAAKu5K,OAAOG,QAAQ,oCACb,CAAC,EAAa,EAAiBkD,wBAAwB58K,KAAKqmK,kBAAmBrmK,KAAKgtK,iBAAkBhG,KACjH,KAAK,EAED,OADA9kF,EAAGyrF,OACI,CAAC,EAAa,GACzB,KAAK,EACD3tK,KAAKu5K,OAAOG,QAAQ,uCACpBx3F,EAAG/zE,MAAQ,EACf,KAAK,EAwBD,OAvBAigL,EAAqB,qBAAuBD,EAC5CE,OAAuB,EACnBruL,KAAKwuL,4BACLH,EAAuB,6BAA+Bv5K,mBAAmB9U,KAAKwuL,4BAC9ExuL,KAAKu5K,OAAOG,QAAQ,+BAGpB2U,EAAuB,GACvBruL,KAAKu5K,OAAOG,QAAQ,8DAExBJ,OAAc,EACVt5K,KAAKqmK,kBAAkB0I,oBACvBuK,EAAct5K,KAAKqmK,kBAAkB0I,mBAAqB,IAAMqf,EAAqBC,EACrFruL,KAAKu5K,OAAOG,QAAQ,gDACpB15K,KAAKu5K,OAAOwE,WAAW,uBAAyB/9K,KAAKqmK,kBAAkB0I,sBAGvEuK,EAAct5K,KAAKgoK,UAAY,sBAAwBomB,EAAqBC,EAC5EruL,KAAKu5K,OAAOG,QAAQ,4CAExB15K,KAAKgtK,iBAAiB0a,qBAAqByG,EAAsB1G,GAAU,GAC3EznL,KAAKu5K,OAAOG,QAAQ,oCACpB15K,KAAK0sL,eAAepT,GACb,CAAC,EAAa,GACzB,KAAK,EAGD,OAFAgV,EAAUpsG,EAAGyrF,OACb3tK,KAAKgtK,iBAAiB0a,qBAAqByG,EAAsB1G,GAAU,EAAO6G,EAAQ3xB,WACnF,CAAC,EAAa,GACzB,KAAK,EAAG,MAAO,CAAC,WAUhC8rB,EAAqBhuK,UAAU8zK,WAAa,WACxCvuL,KAAKu5K,OAAOG,QAAQ,kBACpB5vJ,OAAOm/J,YAAc,GAErB,IADA,IAAIf,EAAkBloL,KAAK27K,aAAaxE,aAAa5c,EAAUmL,SAAUnL,EAAUsP,uBAC1EnxJ,EAAI,EAAGA,EAAIwvK,EAAgBx8K,OAAQgN,IACxC1Y,KAAK27K,aAAahJ,WAAW/pE,KAAKC,UAAUq/E,EAAgBxvK,GAAGzX,MAEnEjB,KAAK27K,aAAarF,kBAClBt2K,KAAK27K,aAAajE,kBAClB13K,KAAKu5K,OAAOG,QAAQ,kBAQxB+O,EAAqBhuK,UAAUg0K,mBAAqB,SAAU1kB,GAC1D/pK,KAAKu5K,OAAOG,QAAQ,oCAEpB,IADA,IAAIgV,EAAmB1uL,KAAK27K,aAAa1E,mBAAmB1c,EAAUmL,SAAUnL,EAAUsP,uBACjFnxJ,EAAI,EAAGA,EAAIg2K,EAAiBhjL,OAAQgN,IAAK,CAC9C,IAAIgtE,EAAQgpG,EAAiBh2K,GACzBgtE,EAAM/jF,MAAMooK,cAAgBA,IAC5B/pK,KAAK27K,aAAahJ,WAAW/pE,KAAKC,UAAUnjB,EAAMzkF,MAClDjB,KAAKu5K,OAAOwE,WAAW,yBAA2Br4F,EAAMzkF,QAapEwnL,EAAqBhuK,UAAUk0K,WAAa,SAAUjpL,GAGlD,OAFA1F,KAAKu5K,OAAO/kJ,KAAK,8EACjBx0B,KAAKu5K,OAAOG,QAAQ,8BACb,EAAS1Q,gBAAgBtjK,IAOpC+iL,EAAqBhuK,UAAUm0K,gBAAkB,SAAUlpL,EAAM4jL,EAAWuF,GAOxE,IAAIviB,EACA2d,EAPJjqL,KAAKu5K,OAAO/kJ,KAAK,+EAEZ80J,IACDtpL,KAAKu5K,OAAOG,QAAQ,kDACpB4P,EAAYtpL,KAAKupL,iBAAiB7jL,IAKtC,IACI4mK,EAAWtsK,KAAK8uL,kBAAkBppL,EAAM4jL,GAE5C,MAAOn1E,GACH81E,EAAU91E,EAEd,IAEIn0G,KAAK27K,aAAajE,gBAAgB4R,EAAUxmL,OAC5C,IAAI45K,EAAe18K,KAAK4qL,gBAAgBtB,EAAUxmL,OAClD,GAAIwpK,GAeA,GAdKgd,EAAU0C,cAAgBzxB,EAAU2xB,YAAe5f,EAASvC,aACzDjgJ,OAAOvH,SAAWuH,OAClB9pB,KAAKu5K,OAAOG,QAAQ,iDAGpB15K,KAAKu5K,OAAOG,QAAQ,2CAExB15K,KAAKu5K,OAAOG,QAAQ,6BAA+BzgB,EAAoBoQ,cACvEiD,EAAS6J,UAAYld,EAAoBoQ,cAEpCigB,EAAU0C,cAAgBzxB,EAAU0xB,QACzCjsL,KAAKu5K,OAAOG,QAAQ,6BAA+BzgB,EAAoBqQ,UACvEgD,EAAS6J,UAAYld,EAAoBqQ,WAExCulB,EAGD,OAFA7uL,KAAKu5K,OAAOG,QAAQ,iCACpB15K,KAAK8pL,iBAAmBxd,QAI3B,IAAKuiB,EAKN,OAJA7uL,KAAKu5K,OAAOG,QAAQ,yDACpB15K,KAAK8pL,iBAAmBxJ,GAAuB5D,GAC/C18K,KAAK4pL,cAAgBK,OACrBjqL,KAAK27K,aAAanF,oBAAoB8S,EAAUxmL,OAGpD9C,KAAKu5K,OAAOG,QAAQ,gDACpBmV,EAAeviB,EAAU2d,GAE7B,MAAO91E,GAEH,MADAn0G,KAAKu5K,OAAO5+J,MAAM,uDAAyDw5F,GACrE,EAAgBurD,8BAA8BvrD,EAAI1/F,cAShEg0K,EAAqBhuK,UAAU8xK,6BAA+B,SAAU7mL,GACpE1F,KAAKu5K,OAAOG,QAAQ,gDAEpB,IAAIqV,EAAerpL,GAAQokB,OAAO4iG,SAAShnH,KAEvC4jL,EAAYtpL,KAAKupL,iBAAiBwF,GACtC/uL,KAAKu5K,OAAOG,QAAQ,gCACpB,IAAIsV,EAAwBllK,OAAOo/J,4BAA4BI,EAAUxmL,OACzE9C,KAAK4uL,gBAAgBG,EAAczF,EAAW0F,IAQlDvG,EAAqBhuK,UAAU+uK,qCAAuC,SAAU9jL,GAC5E1F,KAAKu5K,OAAO/kJ,KAAK,8BACjBx0B,KAAKu5K,OAAOG,QAAQ,wDAEpB,EAAYoC,mBACZ97K,KAAKu5K,OAAOG,QAAQ,gCAEpB,IAAI4P,EAAYtpL,KAAKupL,iBAAiB7jL,GAEtC,GAAI1F,KAAKkvC,OAAO8vI,KAAKV,2BAA6Bx0J,OAAOvH,SAAWuH,OAAQ,CACxE9pB,KAAKu5K,OAAOG,QAAQ,mHACpB,IAAIuV,EAAkBjvL,KAAK27K,aAAalJ,QAAQ,EAAU+E,0BAA0B5c,EAAmBid,cAAeyR,EAAUxmL,OAAQ9C,KAAK6oL,UAE7I,IAAKoG,GAAuC,SAApBA,EAGpB,OAFAjvL,KAAKu5K,OAAO5+J,MAAM,mFAClBmP,OAAO4iG,SAASroH,OAAO,KAIvBrE,KAAKu5K,OAAOG,QAAQ,+CACpB,IAAIwV,EAAa,EAAShoB,kBAAkBp9I,OAAO4iG,SAAStnH,MACxD+pL,EAAmB,EAASjoB,kBAAkB+nB,GAClD,GAAIC,IAAeC,EAIf,OAHAnvL,KAAKu5K,OAAOG,QAAQ,oDACpB15K,KAAKu5K,OAAOwE,WAAW,eAAiBmR,EAAa,uBAAyBC,QAC9ErlK,OAAO4iG,SAASroH,OAAO,GAAK8qL,EAAmBzpL,GAI/C1F,KAAKu5K,OAAOG,QAAQ,yCACpB,IAAI0V,EAA4B,EAAS7nB,iBAAiB0nB,GACtDG,EAA0B5mB,OAC1BxoK,KAAKu5K,OAAOG,QAAQ,4DACpB5vJ,OAAO4iG,SAAShnH,KAAO0pL,EAA0B5mB,WAKvDxoK,KAAKkvC,OAAO8vI,KAAKV,2BACvBt+K,KAAKu5K,OAAOG,QAAQ,2DAExB15K,KAAK4uL,gBAAgBlpL,EAAM4jL,EAAW,OAS1Cb,EAAqBhuK,UAAU8uK,iBAAmB,SAAU7jL,GACxD1F,KAAKu5K,OAAOG,QAAQ,oCACpB,IACI2V,EADApmB,EAAa,EAASC,gBAAgBxjK,GAE1C,IAAKujK,EACD,MAAM,EAAUrM,sBAAsB,kCAE1C,IAAIqM,EAAW7sJ,eAAe68I,EAAoBq2B,OAY9C,MAAM,EAAU1yB,sBAAsB,gCAXtC58J,KAAKu5K,OAAOG,QAAQ,kDACpB,IAAI6V,EAAc,EAAahb,kBAAkBtL,EAAWnmK,OAiBhE,GAhBIusL,EAAgB,CACZrD,YAAazxB,EAAUi1B,QACvB1sL,MAAOmmK,EAAWnmK,MAClBwrE,UAAWihH,EAAYlb,GACvBx6I,OAAQ01J,EAAY11J,OACpB41J,YAAY,GAWhBJ,EAAcvsL,QAAU9C,KAAK27K,aAAalJ,QAAQ,EAAU+E,0BAA0B5c,EAAmBgd,YAAayX,EAAcvsL,OAAQ9C,KAAK6oL,WAAawG,EAAcvsL,QAAU9C,KAAK0vL,0BAI3L,OAHA1vL,KAAKu5K,OAAOG,QAAQ,4DACpB2V,EAAcrD,YAAczxB,EAAU0xB,MACtCoD,EAAcI,YAAa,EACpBJ,EAGN,GAAIA,EAAcvsL,QAAU9C,KAAK27K,aAAalJ,QAAQ,EAAU+E,0BAA0B5c,EAAmBkd,gBAAiBuX,EAAcvsL,OAAQ9C,KAAK6oL,UAI1J,OAHA7oL,KAAKu5K,OAAOG,QAAQ,iEACpB2V,EAAcrD,YAAczxB,EAAU2xB,WACtCmD,EAAcI,YAAa,EACpBJ,EAGX,IAAKA,EAAcI,WAAY,CAC3BzvL,KAAKu5K,OAAOG,QAAQ,8EACpB2V,EAAcrD,YAAcliK,OAAOkiK,YAEnC,IADA,IAAI2D,EAAwB7lK,OAAOm/J,YAC1BvwK,EAAI,EAAGA,EAAIi3K,EAAsBjkL,OAAQgN,IAC9C,GAAIi3K,EAAsBj3K,KAAO22K,EAAcvsL,MAAO,CAClD9C,KAAKu5K,OAAOG,QAAQ,oCACpB2V,EAAcI,YAAa,EAC3B,MAGHJ,EAAcI,YACfzvL,KAAKu5K,OAAOG,QAAQ,wCAG5B,OAAO2V,GAUX5G,EAAqBhuK,UAAUwyK,eAAiB,SAAUxQ,EAA6BrS,GACnFpqK,KAAKu5K,OAAOG,QAAQ,kCACpB,IAAI3V,EAAS0Y,EAA4B1Y,OAKrC/E,EAAUh/J,KAAK4vL,iBAAiBnT,EAA6BrS,GAC7DoS,EAAex8K,KAAK6vL,qBAAqBpT,EAA6BrS,EAASrG,GAC/E2Y,EAAe18K,KAAK4qL,gBAAgBnO,EAA4B35K,OACpE,OAAO,EAAcy5K,kBAAkBvd,EAASwd,EAAcC,EAA6BrS,EAASrG,EAAQ2Y,IAchH+L,EAAqBhuK,UAAUq1K,6BAA+B,SAAU9nB,EAAWkgB,EAAiBhkB,EAAeiS,GAC/G,IACI4Z,EADAzpF,EAAQtmG,KAQZ,OALI+vL,EADA,EAAShoB,kBAAkBC,IAAc,EAASC,yBAAyBD,GAClD,GAAesgB,8BAA8BJ,EAAiB,EAAS3gB,iBAAiBS,GAAWF,iBAGnG,GAAeugB,iCAAiCH,EAAiBlgB,GAExD,IAAlC+nB,EAAuBrkL,OAChBqkL,EAAuB,GAEzBA,EAAuBrkL,OAAS,GACrC1L,KAAKu5K,OAAOoE,QAAQ,8EACpBoS,EAAuB9qL,SAAQ,SAAU+qL,GACrC1pF,EAAMq1E,aAAahJ,WAAW/pE,KAAKC,UAAUmnF,EAAqB/uL,SAE/D,OAGPjB,KAAKu5K,OAAOG,QAAQ,8BAAgCvD,EAAY,UACzD,OAYfsS,EAAqBhuK,UAAUm1K,iBAAmB,SAAUnT,EAA6BrS,GACrFpqK,KAAKu5K,OAAOG,QAAQ,8CACpB,IAAIuW,EAAoBjwL,KAAK27K,aAAazE,eAAel3K,KAAK0lK,SAAU0E,EAAUA,EAAQP,sBAAwB,MAC9GqmB,EAAiBzT,EAA4BzU,WAAahoK,KAAKgoK,UAC/DmoB,EAAmBnwL,KAAK8vL,6BAA6BI,EAAgBD,EAAmB,KAAMh3B,EAAoBqQ,UACtH,GAAI6mB,EAAkB,CAClBnwL,KAAKu5K,OAAOG,QAAQ,6BACpB,IAAI0W,EAAsBpwL,KAAKqwL,wBAAwBF,GACvD,GAAIC,EAAqB,CACrBpwL,KAAKu5K,OAAOG,QAAQ,uEACpB,IAAInE,EAAe4a,EAAiBxuL,MAOpC,OANI4zK,EACAv1K,KAAKu5K,OAAOG,QAAQ,kDAGpB15K,KAAKu5K,OAAOG,QAAQ,sCAEjB,EAAiB,IAAI,EAAQnE,EAAavW,SAAW,KAK5D,OAFAh/J,KAAKu5K,OAAOG,QAAQ,mDACpB15K,KAAK27K,aAAahJ,WAAW/pE,KAAKC,UAAUsnF,EAAiBlvL,MACtD,KAKX,OADAjB,KAAKu5K,OAAOG,QAAQ,mBACb,MAaf+O,EAAqBhuK,UAAUo1K,qBAAuB,SAAUpT,EAA6BrS,EAASrG,GAClG/jK,KAAKu5K,OAAOG,QAAQ,kDACpB,IAAIwO,EAAkBloL,KAAK27K,aAAa1E,mBAAmBj3K,KAAK0lK,SAAU0E,EAAUA,EAAQP,sBAAwB,MAChHymB,EAA+B,GAAerI,6BAA6BC,EAAiBnkB,GAC5FmsB,EAAiBzT,EAA4BzU,WAAahoK,KAAKgoK,UAE/DgoB,EAAuBhwL,KAAK8vL,6BAA6BI,EAAgBI,EAA8BvsB,EAAQ9K,EAAoBoQ,cACvI,GAAK2mB,EAUA,CACDvT,EAA4BpW,kBAAoB,EAAiB6W,eAAe8S,EAAqB/uL,IAAI+mK,UAAWhoK,KAAKkvC,OAAO8vI,KAAKtS,mBACrI1sK,KAAKu5K,OAAOG,QAAQ,iCACpB,IAAI6W,EAAoBvwL,KAAKqwL,wBAAwBL,GAErD,GAAIO,EAAmB,CAEnB,GADAvwL,KAAKu5K,OAAOG,QAAQ,gFACftP,IACDA,EAAUpqK,KAAK6qL,cACVzgB,GACD,MAAM,EAAUxN,sBAAsB,oCAG9C,IAAI4zB,EAASxwL,KAAK4qL,gBAAgBnO,EAA4B35K,OAC1DwpK,EAAW,CACXgQ,SAAU,GACVlV,SAAU,GACV+O,UAAWld,EAAoBoQ,aAC/BrK,QAAS,KACTyZ,cAAe,KACf1O,YAAaimB,EAAqBruL,MAAMooK,YACxChG,OAAQisB,EAAqB/uL,IAAI8iK,OAAO3wJ,MAAM,KAC9CipK,UAAW,IAAIn0K,KAAoD,IAA/C4E,OAAOkjL,EAAqBruL,MAAMqoK,YACtDI,QAASA,EACTsS,aAAc8T,EACdjQ,WAAW,GAEf,OAAOjU,EAKP,OAFAtsK,KAAKu5K,OAAOG,QAAQ,6CACpB15K,KAAK27K,aAAahJ,WAAW/pE,KAAKC,UAAUmnF,EAAqB/uL,MAC1D,KAzCXjB,KAAKu5K,OAAOG,QAAQ,iEACpB,IAAI+W,EAAgBzwL,KAAK0wL,mBAAmBxI,EAAiB,aAC7D,GAAIuI,EAAc/kL,OAAS,EACvB,MAAM,EAAgBkzJ,sCAAsCmF,EAAOtvJ,YAIvE,OAFAzU,KAAKu5K,OAAOG,QAAQ,oDACpB+C,EAA4BpW,kBAAoB,EAAiB6W,eAAeuT,EAAc,GAAIzwL,KAAKkvC,OAAO8vI,KAAKtS,mBAC5G,MA2Cf+b,EAAqBhuK,UAAU41K,wBAA0B,SAAUM,GAC/D,IAAIvf,EAAatkK,OAAO6jL,EAAehvL,MAAMqoK,WAC7C,OAAO,EAAWmH,iCAAiCC,EAAYpxK,KAAKkvC,OAAO+vI,OAAO5N,4BAQtFoX,EAAqBhuK,UAAUi2K,mBAAqB,SAAUE,EAAuBz3I,GACjFn5C,KAAKu5K,OAAOG,QAAQ,sCACpB,IAAI+W,EAAgB,GAChBI,EAAQ,GAOZ,OANAD,EAAsB3rL,SAAQ,SAAUo3B,GAChCA,EAAQp7B,IAAImb,eAAe+8B,KAAwD,IAA1C03I,EAAM5mK,QAAQoS,EAAQp7B,IAAIk4C,MACnE03I,EAAMvjL,KAAK+uB,EAAQp7B,IAAIk4C,IACvBs3I,EAAcnjL,KAAK+uB,EAAQp7B,IAAIk4C,QAGhCs3I,GAOXhI,EAAqBhuK,UAAUswK,mBAAqB,WAChD/qL,KAAKu5K,OAAOG,QAAQ,sCACpB,IAAIzD,EAAcj2K,KAAK27K,aAAalJ,QAAQlY,EAAU0b,aACtD,OAASlZ,EAAYC,QAAQiZ,GAAyD,KAAzC,EAAW3E,eAAe2E,IAO3EwS,EAAqBhuK,UAAUyxK,WAAa,SAAU/S,EAAkB9kJ,EAAS83I,EAAQ/B,EAASqS,GAC9Fz8K,KAAKu5K,OAAOG,QAAQ,8BACpB15K,KAAKu5K,OAAOwE,WAAW,mCAAqC5E,GAC5D,IAAIc,EAAY,EAAYf,kBAAkBjd,EAAYE,YAAagd,GACvE,EAAYmB,gBAAgBL,EAAWj6K,KAAKu5K,QAC5Cv5K,KAAK8rL,mBAAmBrP,EAA6BrS,GAAS,GAC9DpqK,KAAKu5K,OAAOwE,WAAW,8BAAgCtB,EAA4B35K,OAEnF,IAAIw2K,EAAc,EAAS5Q,8BAA8B,EAASzC,kBAAkBwW,GAA8BliB,EAAUgQ,QAAUhQ,EAAUu2B,YAAcv2B,EAAUwxB,uBACxKjiK,OAAOm/J,YAAY37K,KAAKmvK,EAA4B35K,OACpDgnB,OAAOkiK,YAAczxB,EAAU2xB,WAC/BlsL,KAAKu5K,OAAOG,QAAQ,yCACpB15K,KAAKmsL,iBAAiB1P,EAA4B35K,MAAOq2K,EAAkB9kJ,EAAS83I,GACpFnsK,KAAKu5K,OAAOY,QAAQ,gBAAkBb,GACtCt5K,KAAK8tL,kBAAkBxU,EAAaW,EAAWd,GAAkB3L,OAAM,SAAU7yJ,GAAS,OAAOwxJ,EAAOxxJ,OAO5G8tK,EAAqBhuK,UAAUyyK,aAAe,SAAU/T,EAAkB9kJ,EAAS83I,EAAQ/B,EAASqS,GAChGz8K,KAAKu5K,OAAO/kJ,KAAK,gCACjB,IAAIylJ,EAAY,EAAYf,kBAAkBjd,EAAYC,eAAgBid,GAC1E,EAAYmB,gBAAgBL,EAAWj6K,KAAKu5K,QAC5Cv5K,KAAK8rL,mBAAmBrP,EAA6BrS,GAAS,GAC9DpqK,KAAKu5K,OAAOG,QAAQ,gCAAkC+C,EAA4B35K,OAElF,IAAIw2K,EAAc,EAAS5Q,8BAA8B,EAASzC,kBAAkBwW,GAA8BliB,EAAUgQ,QAAUhQ,EAAUu2B,YAAcv2B,EAAUwxB,uBACpK/rL,KAAKkrL,aACLlrL,KAAKu5K,OAAOG,QAAQ,uDACpB5vJ,OAAOkiK,YAAczxB,EAAU0xB,MAC/BjsL,KAAK0vL,0BAA4BjT,EAA4B35K,QAG7D9C,KAAKu5K,OAAOG,QAAQ,2DACpB5vJ,OAAOkiK,YAAczxB,EAAU2xB,WAC/BpiK,OAAOm/J,YAAY37K,KAAKmvK,EAA4B35K,QAGxD9C,KAAKmsL,iBAAiB1P,EAA4B35K,MAAOq2K,EAAkB9kJ,EAAS83I,GACpFnsK,KAAKu5K,OAAOY,QAAQ,iBAAoBb,GACxCt5K,KAAK8tL,kBAAkBxU,EAAaW,EAAWd,GAAkB3L,OAAM,SAAU7yJ,GAAS,OAAOwxJ,EAAOxxJ,OAc5G8tK,EAAqBhuK,UAAUs2K,UAAY,SAAUzkB,EAAUtE,EAAWjE,EAAQgM,EAAYqB,GAC1F,IAAI4f,EAAiB,IAAI,EAAehpB,EAAWhoK,KAAK0lK,SAAU3B,EAAQgM,EAAW3lJ,IAAK2lJ,EAAWnG,MACjGqnB,EAAmB,IAAInnB,EAAiBwC,EAASvC,YAAauC,EAAStN,QAAQ4S,WAAYR,EAAW38J,WAAYs7J,EAAWS,oBASjI,OARAxwK,KAAK27K,aAAarJ,QAAQ1pE,KAAKC,UAAUmoF,GAAiBpoF,KAAKC,UAAUooF,IACrE7f,GACApxK,KAAKu5K,OAAOG,QAAQ,gCACpBpN,EAAS+P,UAAY,IAAIn0K,KAAkB,IAAbkpK,IAG9BpxK,KAAKu5K,OAAO5+J,MAAM,wDAEf2xJ,GAeXmc,EAAqBhuK,UAAUy2K,YAAc,SAAU5kB,EAAUtE,EAAWiB,EAAY8G,EAAYqM,GAChGp8K,KAAKu5K,OAAOG,QAAQ,+BACpB,IAEI3V,EAFAotB,EAAkB,OAAiB,GAAI7kB,GAG3C6kB,EAAgBptB,OAASxJ,EAAUwL,WACnCorB,EAAgBpnB,YAAcd,EAAWhQ,EAAoBqQ,UAC7D,IAAI8H,EAAatkK,OAAOsvK,EAAWhL,YAGnC,OADApxK,KAAKu5K,OAAOG,QAAQ,4BACb15K,KAAK+wL,UAAUI,EAAiBnpB,EAAWjE,EAAQgM,EAAYqB,IAa1EqX,EAAqBhuK,UAAU22K,gBAAkB,SAAU9kB,EAAUtE,EAAWiB,EAAY8G,GACxF/vK,KAAKu5K,OAAOG,QAAQ,mCACpB,IAAI2X,EAAsB,OAAiB,GAAI/kB,GAE3C7hK,EAAQw+J,EAAWhQ,EAAoBq4B,OACvCC,EAAkB9mL,EAAM2I,MAAM,KAE9Bw9K,EAAwB5wL,KAAK27K,aAAa1E,mBAAmBj3K,KAAK0lK,SAAUsC,GAChFhoK,KAAKu5K,OAAOG,QAAQ,mEACpB,IAAK,IAAIhhK,EAAI,EAAGA,EAAIk4K,EAAsBllL,OAAQgN,IAAK,CACnD,IAAIs3K,EAAuBY,EAAsBl4K,GACjD,GAAIs3K,EAAqB/uL,IAAI4oK,wBAA0ByC,EAASlC,QAAQP,sBAAuB,CAC3F,IAAI/F,EAAeksB,EAAqB/uL,IAAI8iK,OAAO3wJ,MAAM,KACrD,EAASywJ,qBAAqBC,EAAcytB,IAC5CvxL,KAAK27K,aAAahJ,WAAW/pE,KAAKC,UAAUmnF,EAAqB/uL,OAI7EowL,EAAoBtnB,YAAcd,EAAWhQ,EAAoBoQ,cACjEgoB,EAAoBttB,OAASwtB,EAC7B,IAAIvnB,EAAYyG,EAAUC,eAAezH,EAAWhQ,EAAoBu4B,aACpEjC,EAAc,EAAahb,kBAAkBtL,EAAWhQ,EAAoBq2B,QAC5Ele,EAAame,EAAYlb,GAAKrK,EAElC,OADAhqK,KAAKu5K,OAAOG,QAAQ,gCACb15K,KAAK+wL,UAAUM,EAAqBrpB,EAAWv9J,EAAOslK,EAAYqB,IAO7EqX,EAAqBhuK,UAAUq0K,kBAAoB,SAAUppL,EAAM4jL,GAC/DtpL,KAAKu5K,OAAOG,QAAQ,qCACpB15K,KAAKu5K,OAAO/kJ,KAAK,iBAAmB80J,EAAUmG,WAAa,mBAAqBnG,EAAU0C,aAC1F,IAaIrxK,EAbA2xJ,EAAW,CACXgQ,SAAU,GACVlV,SAAU,GACV+O,UAAW,GACXnX,QAAS,KACTyZ,cAAe,KACf1O,YAAa,KACbhG,OAAQ,GACRsY,UAAW,KACXjS,QAAS,KACTsS,aAAc,GACd6D,WAAW,GAGXkR,EAAa,EAASvoB,gBAAgBxjK,GACtCgsL,EAAe,GACfC,EAAyB,GACzBvV,EAAa,KAEjB,GAAIqV,EAAWr1K,eAAe68I,EAAoBkQ,oBAAsBsoB,EAAWr1K,eAAe68I,EAAoBmQ,OAAQ,CAY1H,GAXAppK,KAAKu5K,OAAOG,QAAQ,4BACpB15K,KAAKu5K,OAAOY,QAAQ,WAAasX,EAAWx4B,EAAoBmQ,OAAS,wBAA0BqoB,EAAWx4B,EAAoBkQ,oBAClInpK,KAAK27K,aAAarJ,QAAQxX,EAAesO,MAAOqoB,EAAWx4B,EAAoBmQ,QAC/EppK,KAAK27K,aAAarJ,QAAQxX,EAAewa,WAAYmc,EAAWx4B,EAAoBkQ,oBAEhFmgB,EAAU0C,cAAgBzxB,EAAU0xB,QACpCjsL,KAAKu5K,OAAOG,QAAQ,sEACpB15K,KAAK27K,aAAarJ,QAAQxX,EAAe82B,YAAaH,EAAWx4B,EAAoBkQ,mBAAqB,IAAMsoB,EAAWx4B,EAAoBmQ,QAC/IsoB,EAAe,EAAUrZ,qBAAqBiR,EAAUxmL,QAGxDwmL,EAAU0C,cAAgBzxB,EAAU2xB,WAAY,CAChDlsL,KAAKu5K,OAAOG,QAAQ,gEACpBgY,EAAe,EAAUrZ,qBAAqBiR,EAAUxmL,OACxD,IAAIsnK,EAAUpqK,KAAK6qL,aACf1S,OAAY,EACZ/N,IAAYrN,EAAYC,QAAQoN,EAAQP,wBACxCsO,EAAY/N,EAAQP,sBACpB7pK,KAAKu5K,OAAOG,QAAQ,sBAGpBvB,EAAY5d,EAAUs3B,WACtB7xL,KAAKu5K,OAAOG,QAAQ,mCAExBiY,EAAyB,EAAUzZ,+BAA+BC,EAAWmR,EAAUxmL,OAE3F,IAAIo/E,EAAK+2E,EAAoBmQ,MAAO0oB,EAAUL,EAAWvvG,GAAK6T,EAAKkjE,EAAoBkQ,kBAAmB4oB,EAAcN,EAAW17F,GAG/Hp7E,EAFA,GAA6BqlK,2BAA2B8R,IACxD,GAA6B9R,2BAA2B+R,GAChD,IAAI,GAA6BN,EAAWx4B,EAAoBmQ,OAAQqoB,EAAWx4B,EAAoBkQ,oBAGvG,IAAI,GAAYsoB,EAAWx4B,EAAoBmQ,OAAQqoB,EAAWx4B,EAAoBkQ,yBAOlG,GAFAnpK,KAAKu5K,OAAOG,QAAQ,0BAEhB4P,EAAUmG,WAAY,CACtBzvL,KAAKu5K,OAAO/kJ,KAAK,kBACbi9J,EAAWr1K,eAAe68I,EAAoB+4B,iBAC9ChyL,KAAKu5K,OAAOG,QAAQ,uCACpB15K,KAAK27K,aAAarJ,QAAQ,EAAUkF,0BAA0B5c,EAAmBo3B,cAAe1I,EAAUxmL,OAAQ2uL,EAAWx4B,EAAoB+4B,iBAErJ1lB,EAASoQ,aAAe18K,KAAK4qL,gBAAgBtB,EAAUxmL,OACvD,IAAIitK,OAAa,EAEjB,GAAI0hB,EAAWr1K,eAAe68I,EAAoBoQ,cAAe,CAC7DrpK,KAAKu5K,OAAO/kJ,KAAK,6BACjB83I,EAASvC,YAAc0nB,EAAWx4B,EAAoBoQ,cAClDooB,EAAWr1K,eAAe68I,EAAoBq4B,SAC9ChlB,EAASvI,OAAS0tB,EAAWx4B,EAAoBq4B,OAAOl+K,MAAM,MAG9Dq+K,EAAWr1K,eAAe68I,EAAoBqQ,WAC9CtpK,KAAKu5K,OAAOG,QAAQ,yBACpB0C,EAAa,IAAI,EAAQqV,EAAWx4B,EAAoBqQ,aAGxDtpK,KAAKu5K,OAAOG,QAAQ,sDACpB0C,EAAa,IAAI,EAAQp8K,KAAK27K,aAAalJ,QAAQ5X,EAAoBoa,WAE3E3I,EAAW,EAAc4P,mBAAmB5P,EAAU8P,GAEtD,IAAIpU,EAAYhoK,KAAKiyL,kBAAkB3I,EAAUxmL,MAAO9C,KAAK6oL,SAAU7oL,KAAK27K,aAAcS,GAC1Fp8K,KAAKu5K,OAAOG,QAAQ,4BAEhB+X,EAAWr1K,eAAe68I,EAAoBkc,cAC9Cn1K,KAAKu5K,OAAOG,QAAQ,2BACpB3J,EAAa,IAAI,EAAW0hB,EAAWx4B,EAAoBkc,aAAcnN,IAEpEhoK,KAAKqmK,kBAAkBhK,gBAAkBA,EAAcqS,KAC5DqB,EAAa,EAAWI,4BAA4BiM,EAAYpU,GAGhEhoK,KAAKu5K,OAAOoE,QAAQ,oDAExBrR,EAASlC,QAAU,EAAQuO,cAAcyD,EAAYrM,GACrD/vK,KAAKu5K,OAAOG,QAAQ,wCACpB,IAAIwY,OAAa,EACb5lB,EAASlC,UAAYrN,EAAYC,QAAQsP,EAASlC,QAAQP,wBAC1D7pK,KAAKu5K,OAAOG,QAAQ,kBACpBwY,EAAa5lB,EAASlC,QAAQP,wBAG9B7pK,KAAKu5K,OAAOG,QAAQ,gCACpBwY,EAAa33B,EAAUs3B,YAE3BF,EAAyB,EAAUzZ,+BAA+Bga,EAAY5I,EAAUxmL,OACxF,IAAIqvL,EAAmC,EAAUja,+BAA+B3d,EAAUs3B,WAAYvI,EAAUxmL,OAChH9C,KAAKu5K,OAAOG,QAAQ,oCACpB,IAAI0Y,EAAgBpyL,KAAK27K,aAAalJ,QAAQkf,GAC1CU,OAAsB,EAErBt1B,EAAYC,QAAQo1B,GAWfr1B,EAAYC,QAAQh9J,KAAK27K,aAAalJ,QAAQ0f,MACpDnyL,KAAKu5K,OAAOG,QAAQ,gDACpBpN,EAAWtsK,KAAKoxL,gBAAgB9kB,EAAUtE,EAAWypB,EAAY1hB,KAZjEsiB,EAAsBzpF,KAAKhzC,MAAMw8H,GACjCpyL,KAAKu5K,OAAOG,QAAQ,qDAChBpN,EAASlC,SAAWioB,GAAuB,EAAQzZ,gBAAgBtM,EAASlC,QAASioB,IACrF/lB,EAAWtsK,KAAKoxL,gBAAgB9kB,EAAUtE,EAAWypB,EAAY1hB,GACjE/vK,KAAKu5K,OAAO/kJ,KAAK,uGAGjBx0B,KAAKu5K,OAAOoE,QAAQ,+GAShC,GAAI8T,EAAWr1K,eAAe68I,EAAoBqQ,UAAW,CACzDtpK,KAAKu5K,OAAO/kJ,KAAK,wBAEjB4nJ,EAAa,IAAI,EAAQqV,EAAWx4B,EAAoBqQ,WAEpDtB,EAAYhoK,KAAKiyL,kBAAkB3I,EAAUxmL,MAAO9C,KAAK6oL,SAAU7oL,KAAK27K,aAAcS,GAe1F,GAdA9P,EAAW,EAAc4P,mBAAmB5P,EAAU8P,GAClDqV,EAAWr1K,eAAe68I,EAAoBkc,cAC9Cn1K,KAAKu5K,OAAOG,QAAQ,2BACpB3J,EAAa,IAAI,EAAW0hB,EAAWx4B,EAAoBkc,aAAcnN,IAEpEhoK,KAAKqmK,kBAAkBhK,gBAAkBA,EAAcqS,KAC5DqB,EAAa,EAAWI,4BAA4BiM,EAAYpU,GAGhEhoK,KAAKu5K,OAAOoE,QAAQ,oDAExB39K,KAAKoqK,QAAU,EAAQuO,cAAcyD,EAAYrM,GACjDzD,EAASlC,QAAUpqK,KAAKoqK,QACxBpqK,KAAKu5K,OAAOG,QAAQ,wCAChB0C,GAAcA,EAAW1V,MAAO,CAChC1mK,KAAKu5K,OAAOG,QAAQ,qBAEpB,IAAI4Y,EAActyL,KAAK27K,aAAalJ,QAAQ,EAAU+E,0BAA0B5c,EAAmB+c,cAAe2R,EAAUxmL,OAAQ9C,KAAK6oL,UACrIzM,EAAW1V,QAAU4rB,GACrBtyL,KAAKoqK,QAAU,KACfpqK,KAAK27K,aAAarJ,QAAQxX,EAAe82B,YAAa,mCAAqCU,EAArC,kBAA4ElW,EAAW1V,OAC7I1mK,KAAKu5K,OAAO5+J,MAAM,mCAAqC23K,EAAc,mBAAqBlW,EAAW1V,OACrG/rJ,EAAQ,EAAgBykJ,yBAAyBkzB,EAAalW,EAAW1V,SAIzE1mK,KAAKu5K,OAAOG,QAAQ,0CACpB15K,KAAK27K,aAAarJ,QAAQzX,EAAoBoa,QAASwc,EAAWx4B,EAAoBqQ,UAAWtpK,KAAK6oL,UACtG7oL,KAAK27K,aAAarJ,QAAQzX,EAAoBsa,YAAapF,EAAWS,mBAAoBxwK,KAAK6oL,UAE/F7oL,KAAKkxL,YAAY5kB,EAAUtE,EAAWypB,EAAY1hB,EAAYqM,SAIlEp8K,KAAKu5K,OAAOG,QAAQ,gEACpBgY,EAAepI,EAAUxmL,MACzB6uL,EAAyBrI,EAAUxmL,MACnC9C,KAAKu5K,OAAO5+J,MAAM,6CAClBA,EAAQ,EAAgBokJ,0BAA0Bqd,GAClDp8K,KAAK27K,aAAarJ,QAAQxX,EAAesO,MAAOzuJ,EAAMgiJ,WACtD38J,KAAK27K,aAAarJ,QAAQxX,EAAewa,WAAY36J,EAAMk6F,mBAKlE,CACD70G,KAAKu5K,OAAOG,QAAQ,kBACpBgY,EAAepI,EAAUxmL,MACzB6uL,EAAyBrI,EAAUxmL,MACnC,IAAIirL,EAAgB/tL,KAAK27K,aAAalJ,QAAQ,EAAU+E,0BAA0B5c,EAAmBgd,YAAa0R,EAAUxmL,OAAQ9C,KAAK6oL,UACzI7oL,KAAKu5K,OAAO5+J,MAAM,mCAAqCozK,EAAgB,mBAAqBzE,EAAUxmL,OACtG6X,EAAQ,EAAgBskJ,wBAAwBqqB,EAAUxmL,MAAOirL,GACjE/tL,KAAK27K,aAAarJ,QAAQxX,EAAesO,MAAOzuJ,EAAMgiJ,WACtD38J,KAAK27K,aAAarJ,QAAQxX,EAAewa,WAAY36J,EAAMk6F,cAanE,GATA70G,KAAK27K,aAAahJ,WAAW,EAAU6E,0BAA0B5c,EAAmB6c,aAAc6R,EAAUxmL,QAC5G9C,KAAK27K,aAAanF,oBAAoB8S,EAAUxmL,OAChD9C,KAAKu5K,OAAOG,QAAQ,mDAEhB15K,KAAK6oL,WACL7oL,KAAKu5K,OAAOG,QAAQ,oDACpB15K,KAAK27K,aAAanJ,cAAckf,EAAc,IAAK,GACnD1xL,KAAK27K,aAAajE,gBAAgB4R,EAAUxmL,QAE5C6X,EAEA,MAAMA,EAEV,IAAK2xJ,EACD,MAAM,EAAU1P,sBAAsB,oBAE1C,OAAO0P,GAUXmc,EAAqBhuK,UAAUw3K,kBAAoB,SAAUnvL,EAAO+lL,EAAUlN,EAAcS,GACxFp8K,KAAKu5K,OAAOG,QAAQ,qCACpB,IAAIgY,EAAe,EAAUrZ,qBAAqBv1K,GAC9CyvL,EAAkB5W,EAAalJ,QAAQif,EAAc7I,GAEzD,OAAO9rB,EAAYC,QAAQu1B,GAAmBA,EAAkB,EAASprB,kBAAkBorB,EAAiBnW,EAAWhV,WAW3HqhB,EAAqBhuK,UAAUowK,WAAa,WAExC,GAAI7qL,KAAKoqK,QACL,OAAOpqK,KAAKoqK,QAGhB,IAAIwH,EAAa5xK,KAAK27K,aAAalJ,QAAQ5X,EAAoBoa,QAASj1K,KAAK6oL,UACzEhZ,EAAgB7vK,KAAK27K,aAAalJ,QAAQ5X,EAAoBsa,YAAan1K,KAAK6oL,UACpF,IAAK9rB,EAAYC,QAAQ4U,KAAgB7U,EAAYC,QAAQ6S,GAAgB,CACzE,IAAI7Q,EAAU,IAAI,EAAQ4S,GACtB7B,EAAa,IAAI,EAAWF,EAAe,IAE/C,OADA7vK,KAAKoqK,QAAU,EAAQuO,cAAc3Z,EAAS+Q,GACvC/vK,KAAKoqK,QAGhB,OAAO,MASXqe,EAAqBhuK,UAAUmwK,gBAAkB,SAAU9nL,GACvD,GAAIA,EAAO,CACP,IAAI8hK,EAAa9hK,EAAMmnB,QAAQswI,EAAUsK,mBACzC,GAAID,GAAc,GAAKA,EAAa,EAAI9hK,EAAM4I,OAC1C,OAAO5I,EAAM4e,UAAUkjJ,EAAa,GAG5C,OAAO9hK,GAOX2lL,EAAqBhuK,UAAU+3K,eAAiB,WAG5C,IAFA,IAAIC,EAAW,GACX7B,EAAwB5wL,KAAK27K,aAAa1E,mBAAmB1c,EAAUmL,SAAUnL,EAAUsP,uBACtFnxJ,EAAI,EAAGA,EAAIk4K,EAAsBllL,OAAQgN,IAAK,CACnD,IAAIsmJ,EAAU,IAAI,EAAQ4xB,EAAsBl4K,GAAG/W,MAAMq9J,SACrD+Q,EAAa,IAAI,EAAW6gB,EAAsBl4K,GAAG/W,MAAMkoK,sBAAuB,IAClFO,EAAU,EAAQuO,cAAc3Z,EAAS+Q,GAC7C0iB,EAASnlL,KAAK88J,GAElB,OAAOpqK,KAAK0yL,kBAAkBD,IASlChK,EAAqBhuK,UAAUi4K,kBAAoB,SAAUD,GACzD,IAAKA,GAAYA,EAAS/mL,QAAU,EAChC,OAAO+mL,EAIX,IAFA,IAAI5B,EAAQ,GACR8B,EAAiB,GACZxwL,EAAQ,EAAGA,EAAQswL,EAAS/mL,SAAUvJ,EACvCswL,EAAStwL,GAAO0nK,wBAAmF,IAA1DgnB,EAAM5mK,QAAQwoK,EAAStwL,GAAO0nK,yBACvEgnB,EAAMvjL,KAAKmlL,EAAStwL,GAAO0nK,uBAC3B8oB,EAAerlL,KAAKmlL,EAAStwL,KAGrC,OAAOwwL,GAWXlK,EAAqBhuK,UAAU+xK,UAAY,SAAUnuG,EAAW57E,GAC5D,IAAI2wD,EAAM,IAAIw/H,YAAYv0G,EAAW,CAAEw0G,OAAQpwL,IAC/CqnB,OAAOgpK,cAAc1/H,IAYzBq1H,EAAqBhuK,UAAUs4K,uBAAyB,SAAUhvB,EAAQqG,EAAStnK,EAAOkkK,GAEtF,IAAIgsB,EAAgB5oB,GAAWpqK,KAAK6qL,aACpC,IAAKmI,EACD,OAAO,KAGX,IAAIC,EAAejzL,KAAKqmK,kBAAoBrmK,KAAKqmK,kBAAoB,EAAiB6W,eAAel9K,KAAKgoK,UAAWhoK,KAAKkvC,OAAO8vI,KAAKtS,mBAClIlG,EAAexmK,KAAK2rL,aAAaqH,EAAejvB,GAChD0Y,EAA8B,IAAI,EAAwBwW,EAAcjzL,KAAK0lK,SAAUc,EAAcxmK,KAAK6rL,iBAAkB9nB,EAAQjhK,EAAOkkK,GAE/I,OAAOhnK,KAAKitL,eAAexQ,EAA6BrS,IAU5Dqe,EAAqBhuK,UAAUy4K,qBAAuB,SAAUC,GAE5D,GAAInzL,KAAKkvC,OAAOiwI,UAAUN,qBAAqBnzK,OAAS,EACpD,IAAK,IAAIgN,EAAI,EAAGA,EAAI1Y,KAAKkvC,OAAOiwI,UAAUN,qBAAqBnzK,OAAQgN,IACnE,GAAIy6K,EAASlpK,QAAQjqB,KAAKkvC,OAAOiwI,UAAUN,qBAAqBnmK,KAAO,EACnE,OAAO,KAKnB,GAAI1Y,KAAKkvC,OAAOiwI,UAAUL,qBAAqB/tJ,KAAO,EAClD,IAAK,IAAIi2D,EAAK,EAAG9E,EAAKl1E,MAAMjC,KAAK/K,KAAKkvC,OAAOiwI,UAAUL,qBAAqBz8J,QAAS2kE,EAAK9E,EAAGx2E,OAAQs7E,IAAM,CACvG,IAAI/lF,EAAMihF,EAAG8E,GAEb,GAAImsG,EAASlpK,QAAQhpB,IAAQ,EACzB,OAAOjB,KAAKkvC,OAAOiwI,UAAUL,qBAAqBz5K,IAAIpE,GASlE,OAAIkyL,EAASlpK,QAAQ,YAAc,GAAKkpK,EAASlpK,QAAQ,aAAe,EAChE,EAASu/I,eAAe2pB,KAAc,EAAS3pB,eAAexpK,KAAK6rL,kBAC5D,IAAI7+K,MAAMhN,KAAK0lK,UAWvB,KAHI,IAAI14J,MAAMhN,KAAK0lK,WAS9B+iB,EAAqBhuK,UAAU24K,mBAAqB,WAChD,OAAOpzL,KAAK27K,aAAalJ,QAAQ7X,EAAmBgc,sBAAwBrc,EAAUvT,YAQ1FyhC,EAAqBhuK,UAAU44K,yBAA2B,SAAUrsC,GAC5DA,EACAhnJ,KAAK27K,aAAarJ,QAAQ1X,EAAmBgc,mBAAoBrc,EAAUvT,YAG3EhnJ,KAAK27K,aAAahJ,WAAW/X,EAAmBgc,qBASxD6R,EAAqBhuK,UAAU64K,mBAAqB,SAAUC,GAC1DvzL,KAAKqzL,yBAAyBE,IAQlC9K,EAAqBhuK,UAAU+4K,0BAA4B,WACvD,OAAOxzL,KAAK27K,aAAalJ,QAAQ7X,EAAmBgc,sBAAwBrc,EAAUvT,YAQ1FyhC,EAAqBhuK,UAAUg5K,0BAA4B,SAAUC,GACjE1zL,KAAKqzL,yBAAyBK,IAQlCjL,EAAqBhuK,UAAUk5K,UAAY,WACvC,OAAO3zL,KAAKu5K,QAMhBkP,EAAqBhuK,UAAUm5K,UAAY,SAAUra,GACjDv5K,KAAKu5K,OAASA,GAUlBkP,EAAqBhuK,UAAUoxK,eAAiB,SAAUgI,GACtD,OAAIA,IAG6C,oBAAjC7zL,KAAKkvC,OAAO8vI,KAAKvY,YACtBzmK,KAAKkvC,OAAO8vI,KAAKvY,cAErBzmK,KAAKkvC,OAAO8vI,KAAKvY,cAQ5BgiB,EAAqBhuK,UAAU+zK,yBAA2B,WACtD,MAAsD,oBAA3CxuL,KAAKkvC,OAAO8vI,KAAKX,sBACjBr+K,KAAKkvC,OAAO8vI,KAAKX,wBAErBr+K,KAAKkvC,OAAO8vI,KAAKX,uBAO5BoK,EAAqBhuK,UAAUq5K,wBAA0B,WACrD,IAAK9zL,KAAKkvC,OACN,MAAM,EAAyB+yH,gCAEnC,OAAOjiK,KAAKkvC,QAYhBu5I,EAAqBhuK,UAAUkxK,aAAe,SAAUqH,EAAejvB,GACnE,IAAI+H,EAAgB,EAAQ8M,gBAAgBoa,EAAehzL,KAAK6qL,cAChE,OAAO,EAAwBhf,sBAAsBC,EAAe/H,IAWxE0kB,EAAqBhuK,UAAUs5K,gBAAkB,SAAU3pB,EAAStnK,GAEhE,IAAIq1K,EAAY/N,EAAUpqK,KAAKg0L,aAAa5pB,GAAW7P,EAAUs3B,WAC7DF,EAAyB,EAAUzZ,+BAA+BC,EAAWr1K,GACjF9C,KAAK27K,aAAarJ,QAAQqf,EAAwB/oF,KAAKC,UAAUuhE,KAWrEqe,EAAqBhuK,UAAUw5K,kBAAoB,SAAUnxL,EAAOklK,GAEhE,IAAI0pB,EAAe,EAAUrZ,qBAAqBv1K,GAClD9C,KAAK27K,aAAarJ,QAAQof,EAAc,EAAS9pB,gBAAgBI,GAAYhoK,KAAK6oL,WAStFJ,EAAqBhuK,UAAUqxK,mBAAqB,SAAUrP,EAA6BrS,EAASqJ,EAAa6X,GAEzGA,GACAtrL,KAAK27K,aAAarJ,QAAQ,EAAUkF,0BAA0B5c,EAAmBid,cAAe4E,EAA4B35K,OAAQwoL,EAAgBtrL,KAAK6oL,UAGzJpV,EAEAzzK,KAAK27K,aAAarJ,QAAQ,EAAUkF,0BAA0B5c,EAAmBgd,YAAa6E,EAA4B35K,OAAQ25K,EAA4B35K,MAAO9C,KAAK6oL,UAG1K7oL,KAAK+zL,gBAAgB3pB,EAASqS,EAA4B35K,OAG9D9C,KAAKi0L,kBAAkBxX,EAA4B35K,MAAO25K,EAA4BzU,WAEtFhoK,KAAK27K,aAAarJ,QAAQ,EAAUkF,0BAA0B5c,EAAmB+c,cAAe8E,EAA4B35K,OAAQ25K,EAA4B/V,MAAO1mK,KAAK6oL,WAQhLJ,EAAqBhuK,UAAUu5K,aAAe,SAAU5pB,GAEpD,IAAI+N,EAOJ,OAFIA,EAJCpb,EAAYC,QAAQoN,EAAQP,uBAIjBtP,EAAUs3B,WAHVznB,EAAQP,sBAKjBsO,GAQXsQ,EAAqBhuK,UAAUwwK,oBAAsB,SAAUryJ,GAC3D,IAAIoyJ,EAAe,CACfjnB,OAAQxJ,EAAUwL,WAClBiC,UAAWhoK,KAAKgoK,UAChBoC,QAASpqK,KAAK6qL,aACd9jB,qBAAsBnuI,EAAQmuI,qBAC9BC,cAAepuI,EAAQouI,eAE3B,OAAOgkB,GASXvC,EAAqBhuK,UAAUquK,8BAAgC,SAAU55I,EAAQw2H,GAC7E,IAAKx2H,EACD,OAAO,GAAiB23I,wBAAwBnhB,EAAU1lK,KAAKu5K,QAGnE,IAAIjW,EAAkBp0H,EAAOo0H,gBAAiBC,EAAqBr0H,EAAOq0H,mBAAoBC,EAAmBt0H,EAAOs0H,iBACxH,IAAKF,IAAoBC,IAAuBC,EAC5C,MAAM,EAAyBJ,2BAA2Bl0H,GAG9D,IAAIu3I,EAAoB,CACpBnjB,gBAAiBA,EACjBC,mBAAoBA,GAEpBujB,EAAyB,CACzBhpI,SAAU2oI,EACV/gB,SAAUA,GAEd,OAAO,IAAI,GAAiBohB,EAAwBtjB,EAAkBxjK,KAAKu5K,SAExEkP,EAjiE8B,I,oCC1CzC,W,oECAA,IAAI3oL,EAAS,WAAa,IAAIC,EAAIC,KAASC,EAAGF,EAAIG,eAAmBC,EAAGJ,EAAIK,MAAMD,IAAIF,EAAG,OAAOE,EAAG,QAAQ,CAACE,MAAM,CAAC,KAAON,EAAIm0L,WAAW3zL,GAAG,CAAC,cAAc,SAASC,GAAQT,EAAIm0L,UAAU1zL,KAAU,CAACL,EAAG,KAAK,CAACM,YAAY,iBAAiBJ,MAAM,CAAC,KAAO,UAAUK,KAAK,UAAU,CAACX,EAAIY,GAAG,IAAIZ,EAAIa,GAAGb,EAAIc,GAAG,sCAAsC,OAAOV,EAAG,qBAAqB,CAACW,IAAI,WAAWC,YAAYhB,EAAIiB,GAAG,CAAC,CAACC,IAAI,UAAUC,GAAG,SAASJ,GAChb,IAAIK,EAAeL,EAAIK,aACvB,MAAO,CAAChB,EAAG,OAAO,CAACI,GAAG,CAAC,OAAS,SAASC,GAAgC,OAAxBA,EAAOY,iBAAwBD,EAAapB,EAAIo0L,YAAY,CAACh0L,EAAG,MAAM,CAACM,YAAY,OAAO,CAACN,EAAG,MAAM,CAACM,YAAY,aAAa,CAACN,EAAG,qBAAqB,CAACE,MAAM,CAAC,KAAO,YAAY,MAAQ,kBAAkBU,YAAYhB,EAAIiB,GAAG,CAAC,CAACC,IAAI,UAAUC,GAAG,SAASJ,GAC5S,IAAIoF,EAASpF,EAAIoF,OACbC,EAASrF,EAAIqF,OACjB,MAAO,CAAChG,EAAG,WAAW,CAACE,MAAM,CAAC,KAAO,OAAO,MAAQ8F,EAAS,6CAA+C,KAAK,WAAaD,EAAO,KAAO,YAAY,MAAQnG,EAAIc,GAAG,wCAAwCa,MAAM,CAACC,MAAO5B,EAAI+F,KAAW,OAAElE,SAAS,SAAUC,GAAM9B,EAAI+B,KAAK/B,EAAI+F,KAAM,SAAUjE,IAAME,WAAW,qBAAqB,MAAK,MAAS,KAAK5B,EAAG,MAAM,CAACM,YAAY,OAAO,CAACN,EAAG,MAAM,CAACM,YAAY,YAAY,CAACN,EAAG,qBAAqB,CAACE,MAAM,CAAC,KAAO,YAAY,MAAQ,kBAAkBU,YAAYhB,EAAIiB,GAAG,CAAC,CAACC,IAAI,UAAUC,GAAG,SAASJ,GAC1hB,IAAIoF,EAASpF,EAAIoF,OACbC,EAASrF,EAAIqF,OACjB,MAAO,CAAChG,EAAG,WAAW,CAACE,MAAM,CAAC,KAAO,OAAO,MAAQ8F,EAAS,6CAA+C,KAAK,WAAaD,EAAO,KAAO,YAAY,MAAQnG,EAAIc,GAAG,gDAAgDa,MAAM,CAACC,MAAO5B,EAAI+F,KAAgB,YAAElE,SAAS,SAAUC,GAAM9B,EAAI+B,KAAK/B,EAAI+F,KAAM,cAAejE,IAAME,WAAW,0BAA0B,MAAK,MAAS,KAAK5B,EAAG,MAAM,CAACM,YAAY,iCAAiC,CAACN,EAAG,MAAM,CAACM,YAAY,OAAO,CAACN,EAAG,QAAQ,CAAC6B,YAAY,CAAC,cAAc,SAAS,CAACjC,EAAIY,GAAG,eAAe,CAACR,EAAG,WAAW,CAACuB,MAAM,CAACC,MAAO5B,EAAI+F,KAAW,OAAElE,SAAS,SAAUC,GAAM9B,EAAI+B,KAAK/B,EAAI+F,KAAM,SAAUjE,IAAME,WAAW,gBAAgB,CAAC5B,EAAG,IAAI,CAACM,YAAY,0BAA0BJ,MAAM,CAAC,KAAO,MAAMK,KAAK,OAAOP,EAAG,IAAI,CAACM,YAAY,kCAAkCJ,MAAM,CAAC,KAAO,OAAOK,KAAK,YAAY,GAAGP,EAAG,MAAM,CAACM,YAAY,aAAauB,YAAY,CAAC,aAAa,OAAO,cAAc,OAAO,aAAa,UAAU3B,MAAM,CAAC,KAAO,UAAUK,KAAK,UAAU,CAACP,EAAG,WAAW,CAACM,YAAY,0BAA0B4B,SAAS,CAAC,MAAQ,SAAS7B,GAAQ,OAAOT,EAAIq0L,gBAAgB,CAACr0L,EAAIY,GAAGZ,EAAIa,GAAGb,EAAIc,GAAG,0BAA0BV,EAAG,WAAW,CAACE,MAAM,CAAC,cAAc,SAAS,KAAO,YAAY,CAACN,EAAIY,GAAGZ,EAAIa,GAAGb,EAAIc,GAAG,yBAAyB,aAAa,IACxvC0B,EAAkB,G,kCCuEtB,GACEC,WAAY,GACZC,KAFF,WAGI,MAAO,CACLqD,KAAM,CACJuuL,aAAc,EACd/tL,OAAQ,GACRguL,YAAa,GACbxwL,QAAQ,EACRy0J,UAAW,GAEbg8B,QAAS,CACPF,aAAc,EACd/tL,OAAQ,GACRguL,YAAa,GACbxwL,QAAQ,EACRy0J,UAAW,GAEbi8B,SAAU,CACRC,aAAa,GAEfj8B,UAAW,GACXt2J,KAAM,CAAC,GAAI,OAAQ,UAAW,UAAW,UACzCu2J,cAAe,CACbC,WAAW,GAEbw7B,WAAW,IAGf5wL,QA7BF,WA6BA,WACIC,SAASC,IAAI,eAAjB,wJACA,eACA,SACA,cACA,8BACA,KACA,0IACA,uBAEA,gBACA,eAVA,mGAaEI,QAAS,CACPwwL,WADJ,WAEMp0L,KAAKk0L,WAAY,EACjBl0L,KAAKwG,MAAMkuL,SAAShuL,SAEtB,QALJ,WAKA,+JACA,2CACA,+BACA,yCACA,+BACA,sBACA,uBANA,SAOA,QACA,oDACA,KAFA,yDAGA,+FACA,eACA,mBACA,2DACA,eACA,gCAEA,mDAPA,2CAHA,uDAaA,YACA,sDAGA,wBAxBA,gDChImX,I,wBCQ/W1C,EAAY,eACd,EACAlE,EACAyC,GACA,EACA,KACA,KACA,MAIa,aAAAyB,E,oDCnBf,IAAIlE,EAAS,WAAa,IAAIC,EAAIC,KAASC,EAAGF,EAAIG,eAAmBC,EAAGJ,EAAIK,MAAMD,IAAIF,EAAG,OAAOE,EAAG,MAAM,CAACM,YAAY,OAAO,CAACN,EAAG,MAAM,CAACM,YAAY,UAAU,CAACN,EAAG,MAAM,CAACM,YAAY,kBAAkB,CAACN,EAAG,oBAAoB,CAACE,MAAM,CAAC,WAAa,2BAA2B,OAAS,gCAAgC,CAACF,EAAG,WAAW,CAACE,MAAM,CAAC,KAAO,UAAU,MAAQ,IAAIgC,SAAS,CAAC,MAAQ,SAAS7B,GAAQ,OAAOT,EAAIkO,iBAAiB,CAAC9N,EAAG,IAAI,CAACM,YAAY,+BAA+BJ,MAAM,CAAC,KAAO,SAASK,KAAK,UAAUX,EAAIY,GAAG,IAAIZ,EAAIa,GAAGb,EAAIc,GAAG,oBAAoB,QAAQ,IAAI,GAAGV,EAAG,OAAO,CAACE,MAAM,CAAC,oBAAoB,mBAAmB,iBAAiB,KAAK,CAACF,EAAG,MAAM,CAACA,EAAG,MAAM,CAACM,YAAY,6EAA6E,CAACN,EAAG,KAAK,CAACM,YAAY,0BAA0B,CAACV,EAAIY,GAAGZ,EAAIa,GAAGb,EAAIc,GAAG,6CAA6CV,EAAG,WAAW,CAACA,EAAG,WAAW,CAACM,YAAY,OAAOuB,YAAY,CAAC,MAAQ,SAAS3B,MAAM,CAAC,KAAO,SAAS,UAAY,GAAG,cAAc,kBAAkB,YAAcN,EAAIc,GAAG,sBAAsB,gBAAgB,cAAca,MAAM,CAACC,MAAO5B,EAAe,YAAE6B,SAAS,SAAUC,GAAM9B,EAAIwK,YAAY1I,GAAKE,WAAW,kBAAkB,IAAI,GAAG5B,EAAG,WAAW,CAAC6B,YAAY,CAAC,MAAQ,QAAQ3B,MAAM,CAAC,OAAS,GAAG,KAAON,EAAIyK,cAAc,CAACzK,EAAIuB,GAAIvB,EAAgB,cAAE,SAASmO,GAAQ,OAAO/N,EAAG,kBAAkB,CAACc,IAAIiN,EAAOC,MAAM9N,MAAM,CAAC,SAAW6N,EAAOE,SAAS,KAAOF,EAAOG,KAAK,MAAQtO,EAAIc,GAAGqN,EAAOC,OAAO,UAAYD,EAAO2sC,UAAU,SAAW,SAAQ16C,EAAG,kBAAkB,CAACE,MAAM,CAAC,UAAY,YAAY,eAAiB,YAAY,MAAQN,EAAIc,GAAG,wDAAwD,SAAW,OAAOE,YAAYhB,EAAIiB,GAAG,CAAC,CAACC,IAAI,UAAUC,GAAG,SAASuJ,GAAO,MAAO,CAAC1K,EAAIY,GAAG,IAAIZ,EAAIa,GAAGb,EAAIc,GAAG,2CAA2C4J,EAAMC,IAAIkR,OAAO,YAAYzb,EAAG,kBAAkB,CAACE,MAAM,CAAC,UAAY,YAAY,eAAiB,YAAY,MAAQN,EAAIc,GAAG,kDAAkD,SAAW,OAAOE,YAAYhB,EAAIiB,GAAG,CAAC,CAACC,IAAI,UAAUC,GAAG,SAASuJ,GAAO,MAAO,CAACtK,EAAG,WAAW,CAACE,MAAM,CAAC,MAAQ,SAASE,GAAG,CAAC,MAAQ,SAASC,GAAQ,OAAOT,EAAIuO,OAAO7D,EAAMC,OAAOhJ,MAAM,CAACC,MAAO8I,EAAMC,IAAU,OAAE9I,SAAS,SAAUC,GAAM9B,EAAI+B,KAAK2I,EAAMC,IAAK,SAAU7I,IAAME,WAAW,qBAAqB,CAAC5B,EAAG,IAAI,CAACM,YAAY,0BAA0BJ,MAAM,CAAC,KAAO,MAAMK,KAAK,OAAOP,EAAG,IAAI,CAACM,YAAY,kCAAkCJ,MAAM,CAAC,KAAO,OAAOK,KAAK,iBAAiBP,EAAG,kBAAkB,CAACE,MAAM,CAAC,SAAW,IAAI,UAAY,YAAY,eAAiB,aAAaU,YAAYhB,EAAIiB,GAAG,CAAC,CAACC,IAAI,UAAUC,GAAG,SAASuJ,GAAO,OAAOtK,EAAG,MAAM,CAACM,YAAY,0BAA0B,CAACN,EAAG,aAAa,CAACE,MAAM,CAAC,UAAY,SAAS,MAAQ,MAAM,QAAU,UAAU,CAACF,EAAG,MAAM,CAACM,YAAY,OAAO,CAACN,EAAG,MAAM,CAACM,YAAY,kBAAkB,CAACN,EAAG,oBAAoB,CAACE,MAAM,CAAC,WAAa,2BAA2B,OAAS,mCAAmC,CAACF,EAAG,WAAW,CAACM,YAAY,iBAAiBJ,MAAM,CAAC,KAAO,UAAU,KAAO,MAAMgC,SAAS,CAAC,MAAQ,SAAS7B,GAAQ,OAAOT,EAAIqP,aAAa3E,EAAMC,QAAQ,CAAC3K,EAAIY,GAAG,IAAIZ,EAAIa,GAAGb,EAAIc,GAAG,qBAAqB,QAAQ,IAAI,KAAKV,EAAG,WAAW,CAAC6B,YAAY,CAAC,mBAAmB,SAAS3B,MAAM,CAAC,KAAO,YAAY,KAAO,KAAK,KAAO,IAAIK,KAAK,aAAa,CAACP,EAAG,IAAI,CAACM,YAAY,mBAAmBuB,YAAY,CAAC,MAAQ,cAAc,IAAI,UAAU,IAAI,GAAG7B,EAAG,MAAM,CAACM,YAAY,4EAA4EJ,MAAM,CAAC,KAAO,UAAUK,KAAK,UAAU,CAACP,EAAG,MAAM,GAAG,CAACA,EAAG,IAAI,CAACM,YAAY,iBAAiB,CAACV,EAAIY,GAAG,IAAIZ,EAAIa,GAAGb,EAAIc,GAAG,2BAA2B,IAAId,EAAIa,GAAGb,EAAIgL,KAAO,GAAG,IAAIhL,EAAIa,GAAGb,EAAIc,GAAG,sBAAsB,IAAId,EAAIa,GAAGb,EAAIiL,IAAI,IAAIjL,EAAIa,GAAGb,EAAIc,GAAG,sBAAsB,IAAId,EAAIa,GAAGb,EAAIkL,OAAO,IAAIlL,EAAIa,GAAGb,EAAIc,GAAG,2BAA2B,SAASV,EAAG,eAAe,CAACM,YAAY,uBAAuBJ,MAAM,CAAC,WAAWN,EAAImL,WAAWC,QAAQ,MAAQpL,EAAIkL,OAAOvJ,MAAM,CAACC,MAAO5B,EAAImL,WAAsB,YAAEtJ,SAAS,SAAUC,GAAM9B,EAAI+B,KAAK/B,EAAImL,WAAY,cAAerJ,IAAME,WAAW,6BAA6B,KAAK5B,EAAG,mCAAmC,MAC5iIoC,EAAkB,G,4FCkJtB,G,UAAA,CACEC,WAAY,CACVgM,YAAJ,OACImmL,4BAA6B,WAAjC,qFAEEhyL,QALF,aAQED,SAAU,OAAZ,OAAY,CAAZ,kBACA,0BADA,IAGI8H,YAHJ,WAIM,IAAN,oCACM,OAAOzF,EAAOuG,MAAMtL,KAAK+K,KAAM/K,KAAKgL,KAOtCA,GAZJ,WAaM,IAAN,oCAIM,OAHIhL,KAAKiL,MAAQM,IACfA,EAAYvL,KAAKiL,OAEZM,GAETR,KAnBJ,WAoBM,OAAO/K,KAAKkL,WAAWC,SAAWnL,KAAKkL,WAAWM,YAAc,IAElEP,MAtBJ,WAuBM,IAAN,oCACM,OAAOQ,EAAaC,OAAS,EACnC,SACA,yBAOEjJ,KAzCF,WA0CI,MAAO,CACLyI,WAAY,CACVC,QAAS,EACTK,YAAa,EACbG,eAAgB,CAAC,EAAG,GAAI,GAAI,IAC5BV,MAAO,GAGT0D,aAAc,CACpB,CACQ,KAAR,kBACQ,MAAR,+CACQ,SAAR,KAEA,CACQ,KAAR,4CACQ,MAAR,qDACQ,SAAR,MAGMpE,YAAa,GACbqB,UAAW,GACXH,aAAc,KAGlB7H,QAAS,CACP,KADJ,WACA,2KACA,IACA,cACA,8BACA,KACA,0IACA,uBAGA,GACA,KACA,gCACA,WAZA,SAeA,8EAfA,OAeA,EAfA,OAgBA,mCAEA,QACA,uCAEA,mDAEA,gBAvBA,8CAyBIqK,YA1BJ,WA2BM1K,SAASyI,MAAM,gCAEjBoD,aA7BJ,SA6BA,GACM7L,SAASyI,MAAM,+BAAgClG,IAEjD,OAhCJ,SAgCA,mLACA,wDADA,OACA,EADA,OAEA,mCAEA,6DAEA,mDANA,8CAuBIgG,aAvDJ,SAuDA,GAGM,OADA/G,EAAS,OAAf,mBAAe,CAAf,sCACaA,IAGXzB,QAhIF,WAgIA,WACItD,KAAKiP,OACL1L,SAASC,IAAI,mBAAmB,SAApC,GACM,EAAN,qBAEID,SAASC,IAAI,oBAAoB,WAC/B,EAAN,WAGE0I,MAAO,KC5RuX,I,kCCS5XlI,EAAY,eACd,EACAlE,EACAyC,GACA,EACA,KACA,WACA,MAIa,aAAAyB,E,sHCpBf,W,yCCAA,IAAIlE,EAAS,WAAa,IAAIC,EAAIC,KAASC,EAAGF,EAAIG,eAAmBC,EAAGJ,EAAIK,MAAMD,IAAIF,EAAG,OAAOE,EAAG,MAAM,CAACM,YAAY,OAAO,CAACN,EAAG,MAAM,CAACM,YAAY,UAAU,CAACN,EAAG,MAAM,CAACM,YAAY,QAAQ,CAACN,EAAG,MAAM,CAACM,YAAY,eAAe,CAACN,EAAG,KAAK,CAACM,YAAY,cAAc,CAACV,EAAIY,GAAG,IAAIZ,EAAIa,GAAGb,EAAIc,GAAGd,EAAI0D,QAAQ,SAAStD,EAAG,MAAM,CAACM,YAAY,aAAa,CAACN,EAAG,qBAAqB,CAACW,IAAI,UAAUC,YAAYhB,EAAIiB,GAAG,CAAC,CAACC,IAAI,UAAUC,GAAG,SAASJ,GAChb,IAAIK,EAAeL,EAAIK,aACvB,MAAO,CAAChB,EAAG,OAAO,CAACI,GAAG,CAAC,OAAS,SAASC,GAAgC,OAAxBA,EAAOY,iBAAwBD,EAAapB,EAAIi4J,kBAAkB,CAACj4J,EAAIuB,GAAIvB,EAAI60L,KAAiB,cAAE,SAASpzL,EAAKW,GAAO,OAAOhC,EAAG,MAAM,CAACc,IAAI,UAAYkB,EAAM1B,YAAY,OAAO,CAACN,EAAG,MAAM,CAACM,YAAY,SAAS,CAACN,EAAG,MAAM,CAACM,YAAY,wBAAwB,CAACN,EAAG,QAAQ,CAACJ,EAAIY,GAAGZ,EAAIa,GAAGY,EAAKC,OAAOA,eAAetB,EAAG,MAAM,CAACM,YAAY,SAAS,CAACN,EAAG,MAAM,CAACM,YAAY,wBAAwB,CAACN,EAAG,WAAW,CAACE,MAAM,CAAC,KAAO,OAAO,YAAcmB,EAAKC,OAAOA,OAAO,MAAQ1B,EAAIc,GAAG,mCAAmCa,MAAM,CAACC,MAAOH,EAAW,OAAEI,SAAS,SAAUC,GAAM9B,EAAI+B,KAAKN,EAAM,SAAUK,IAAME,WAAW,kBAAkB,KAAK5B,EAAG,MAAM,CAACM,YAAY,SAAS,CAACN,EAAG,MAAM,CAACM,YAAY,wBAAwB,CAACN,EAAG,QAAQ,CAACJ,EAAIY,GAAGZ,EAAIa,GAAGb,EAAIc,GAAG,6CAA6CV,EAAG,WAAW,CAACE,MAAM,CAAC,KAAO,WAAW,KAAO,EAAE,YAAcN,EAAIc,GAAG,0CAA0Ca,MAAM,CAACC,MAAOH,EAAgB,YAAEI,SAAS,SAAUC,GAAM9B,EAAI+B,KAAKN,EAAM,cAAeK,IAAME,WAAW,uBAAuB,UAAS5B,EAAG,MAAM,CAACM,YAAY,MAAMuB,YAAY,CAAC,aAAa,SAAS,CAAC7B,EAAG,MAAM,CAACM,YAAY,SAAS,CAACN,EAAG,QAAQ,CAAC6B,YAAY,CAAC,eAAe,SAAS,CAACjC,EAAIY,GAAGZ,EAAIa,GAAGb,EAAIc,GAAG,0CAA0CV,EAAG,WAAW,CAACuB,MAAM,CAACC,MAAO5B,EAAI60L,KAAY,QAAEhzL,SAAS,SAAUC,GAAM9B,EAAI+B,KAAK/B,EAAI60L,KAAM,UAAW/yL,IAAME,WAAW,iBAAiB,CAAC5B,EAAG,IAAI,CAACM,YAAY,0BAA0BJ,MAAM,CAAC,KAAO,MAAMK,KAAK,OAAOP,EAAG,IAAI,CAACM,YAAY,kCAAkCJ,MAAM,CAAC,KAAO,OAAOK,KAAK,WAAW,GAAGP,EAAG,MAAM,CAACM,YAAY,SAAS,CAACN,EAAG,MAAM,CAACM,YAAY,wBAAwB,CAACN,EAAG,QAAQ,CAAC6B,YAAY,CAAC,eAAe,SAAS,CAACjC,EAAIY,GAAGZ,EAAIa,GAAGb,EAAIc,GAAG,yBAAyBV,EAAG,WAAW,CAACuB,MAAM,CAACC,MAAO5B,EAAI60L,KAAW,OAAEhzL,SAAS,SAAUC,GAAM9B,EAAI+B,KAAK/B,EAAI60L,KAAM,SAAU/yL,IAAME,WAAW,gBAAgB,CAAC5B,EAAG,IAAI,CAACM,YAAY,0BAA0BJ,MAAM,CAAC,KAAO,MAAMK,KAAK,OAAOP,EAAG,IAAI,CAACM,YAAY,kCAAkCJ,MAAM,CAAC,KAAO,OAAOK,KAAK,WAAW,OAAOP,EAAG,KAAK,CAACA,EAAG,QAAQ,CAACJ,EAAIY,GAAG,gBAAgBR,EAAG,MAAM,CAACM,YAAY,wBAAwB,CAACN,EAAG,MAAM,CAACM,YAAY,UAAU,CAACN,EAAG,WAAW,CAACW,IAAI,gBAAgBkB,YAAY,CAAC,MAAQ,QAAQ3B,MAAM,CAAC,OAAS,GAAG,KAAON,EAAI80L,QAAQt0L,GAAG,CAAC,aAAaR,EAAI+0L,eAAe,OAAS/0L,EAAIg1L,iBAAiB,CAAC50L,EAAG,kBAAkB,CAACE,MAAM,CAAC,MAAQN,EAAIc,GAAG,oCAAoC,MAAQ,OAAOE,YAAYhB,EAAIiB,GAAG,CAAC,CAACC,IAAI,UAAUC,GAAG,SAASuJ,GAAO,MAAO,CAAC1K,EAAIY,GAAG,IAAIZ,EAAIa,GAAG6J,EAAMC,IAAI2E,MAAM,SAAS,MAAK,KAAQlP,EAAG,kBAAkB,CAACE,MAAM,CAAC,KAAO,YAAY,MAAQ,QAAQF,EAAG,kBAAkB,CAACE,MAAM,CAAC,MAAQ,YAAYU,YAAYhB,EAAIiB,GAAG,CAAC,CAACC,IAAI,UAAUC,GAAG,SAASuJ,GAAO,MAAO,CAACtK,EAAG,oBAAoB,CAACkC,SAAS,CAAC,OAAS,SAAS7B,GAAQ,OAAOT,EAAIi1L,sBAAsBvqL,EAAMC,OAAOhJ,MAAM,CAACC,MAAO8I,EAAMC,IAAmB,gBAAE9I,SAAS,SAAUC,GAAM9B,EAAI+B,KAAK2I,EAAMC,IAAK,kBAAmB7I,IAAME,WAAW,8BAA8B,CAAC5B,EAAG,MAAM,CAACM,YAAY,OAAOV,EAAIuB,GAAImJ,EAAMC,IAAY,UAAE,SAASwtJ,EAAQ/1J,GAAO,OAAOhC,EAAG,MAAM,CAACc,IAAI,YAAckB,EAAM1B,YAAY,yBAAyB,CAAmB,OAAjBy3J,EAAQ7oJ,KAAelP,EAAG,MAAM,CAACA,EAAG,aAAa,CAACc,IAAIi3J,EAAQn7D,OAAO18F,MAAM,CAAC,MAAQ63J,EAAQn7D,SAAS,CAACh9F,EAAIY,GAAG,IAAIZ,EAAIa,GAAoB,OAAjBs3J,EAAQ7oJ,KAAgB6oJ,EAAQ7oJ,KAAO6oJ,EAAQn7D,QAAQ,QAAQ,GAAGh9F,EAAIkH,UAAS,SAAS,MAAK,MAAS,IAAI,KAAK9G,EAAG,MAAM,CAACM,YAAY,aAAauB,YAAY,CAAC,aAAa,OAAO,cAAc,OAAO,aAAa,UAAU3B,MAAM,CAAC,KAAO,UAAUK,KAAK,UAAU,CAACP,EAAG,cAAc,CAACM,YAAY,QAAQJ,MAAM,CAAC,GAAK,CAAEgP,KAAM,WAAY,CAAClP,EAAG,WAAW,CAACM,YAAY,2BAA2B,CAACV,EAAIY,GAAGZ,EAAIa,GAAGb,EAAIc,GAAG,2BAA2B,GAAGV,EAAG,oBAAoB,CAACE,MAAM,CAAC,WAAa,QAAQ,OAAS,YAAY,CAACF,EAAG,WAAW,CAACE,MAAM,CAAC,cAAc,SAAS,KAAO,YAAY,CAACN,EAAIY,GAAGZ,EAAIa,GAAGb,EAAIc,GAAG,yBAAyB,IAAI,IAAI,WAAW,UACv2H0B,EAAkB,G,mKCqLtB,GACE8M,KAAM,kBACN5M,KAFF,WAGI,MAAO,CACLgB,MAAO,8BACPoxL,OAAQ,GACRD,KAAM,IAAI,EAAhB,IAGEjyL,QATF,WAUI3C,KAAK40L,KAAK1xL,UAAYlD,KAAK6C,OAAOC,MAAMG,KAAKC,UAC7ClD,KAAK40L,KAAKzxL,aAAenD,KAAK6C,OAAOC,MAAMM,eAAeC,KAC9D,YAAM,OACN,SACQ,iBAAR,WACQ,OAAR,SACU,SAAV,WACU,OAAV,SACU,MAAV,gBAKE,QAvBF,WAuBA,+JACA,cACA,8BACA,KACA,0IACA,uBALA,SAQA,iBARA,WAUA,mBAVA,uBAWA,uCAXA,SAYA,yCAZA,OAeA,gBAfA,8CAiBEO,QAAS,CACP,cADJ,WACA,uKACA,cACA,8BACA,KACA,0IACA,uBALA,WASA,mDATA,kCAUA,qBAVA,4DAUA,EAVA,QAWA,SAXA,uBAYA,UACA,yCACA,KACA,iBAfA,WAiBA,cAjBA,uBAkBA,UACA,gDACA,KACA,iBArBA,sJA2BA,mBA3BA,kCA4BA,aA5BA,QA4BA,EA5BA,gDA6BA,eA7BA,QA6BA,EA7BA,eA+BA,EACA,+BACA,mDAjCA,qDAmCA,uCAnCA,yBAqCA,gBArCA,6FAwCI,WAzCJ,WAyCA,qKACA,uCACA,uBAFA,SAGA,4CAHA,cAGA,EAHA,yBAIA,kCAJA,8CAMI,SA/CJ,WA+CA,qKACA,uCACA,uBAFA,SAGA,6CAHA,cAGA,EAHA,yBAIA,kCAJA,8CAMI,SArDJ,SAqDA,8KACA,GACA,KACA,iCAHA,SAKA,0CALA,OAKA,EALA,OAMA,mCAEA,IACA,iBAEA,2BACA,8BAEA,SACA,8BACA,sDACA,aACA,gCACA,iCAnBA,8CA0BI,aA/EJ,WA+EA,gLACA,6BADA,OACA,EADA,OAEA,SAEA,SACA,uBACA,OACA,YACA,YACA,mBACA,YACA,oBAGA,gCAEA,iBACA,gBACA,iBAIA,oBAtBA,8CA0BIkxL,eAzGJ,SAyGA,GACMzrK,QAAQyL,IAAI,8BACR+/J,EAAOnpL,SAAW1L,KAAK60L,OAAOnpL,OAChCmpL,EAAO5vL,SAAQ,SAAvB,GACUokB,QAAQyL,IAAImgK,GACZA,EAAMC,gBAAkBD,EAAME,SAAS9xL,KAAI,SAArD,yBAEA,cACQrD,KAAK60L,OAAO5vL,SAAQ,SAA5B,GACUgwL,EAAMC,gBAAkB,OAI9BH,eAtHJ,SAsHA,KACM1rK,QAAQyL,IAAI,6BACZzL,QAAQyL,IAAImgK,EAAMC,iBAClB7rK,QAAQyL,IAAImgK,EAAME,SAASzpL,QAE3BupL,EAAMC,gBACZ,6CACA,GACA,4BAAQ,OAAR,YACM7rK,QAAQyL,IAAImgK,EAAMC,kBAEpBF,sBAjIJ,SAiIA,GACM3rK,QAAQyL,IAAI,mBACZzL,QAAQyL,IAAImgK,GACZj1L,KAAKwG,MAAM4uL,cAAcC,mBAC/B,EACA,+CAGIC,mBAzIJ,WA0IM,IAAN,KASM,OARAt1L,KAAK60L,OAAO5vL,SAAQ,SAA1B,GACYgwL,EAAMC,gBAAgBxpL,OAAS,GACjC6pL,EAAajoL,KAAK,CAChB+B,KAAM4lL,EAAM5lL,KACZ8lL,SAAUF,EAAMC,qBAIftsF,KAAKC,UAAU0sF,MCnX2V,I,wBCQnXvxL,EAAY,eACd,EACAlE,EACAyC,GACA,EACA,KACA,WACA,MAIa,aAAAyB,E,sECnBf,W,4ECAMwxL,E,wBAaJ,aAAsB,IAAVtxL,EAAU,uDAAJ,GAAI,0CAXG,GAWH,4BAVD,IAUC,iBATb,GASa,6BARA,GAQA,gBAPb,IAOa,mBANV,IAMU,yBALJ,IAKI,4BAJD,GAIC,sBAFP,MAGbE,OAAOC,OAAOrE,KAAMkE,G,YAIxBI,EAAOC,QAAUixL,G,2CClBjB,IAAI11L,EAAS,WAAa,IAAIC,EAAIC,KAASC,EAAGF,EAAIG,eAAmBC,EAAGJ,EAAIK,MAAMD,IAAIF,EAAG,OAAOE,EAAG,QAAQ,CAACE,MAAM,CAAC,KAAON,EAAI4F,OAAOC,SAASrF,GAAG,CAAC,cAAc,SAASC,GAAQ,OAAOT,EAAI+B,KAAK/B,EAAI4F,OAAQ,UAAWnF,MAAW,CAACL,EAAG,KAAK,CAACM,YAAY,iBAAiBJ,MAAM,CAAC,KAAO,UAAUK,KAAK,UAAU,CAACX,EAAIY,GAAG,IAAIZ,EAAIa,GAAGb,EAAIc,GAAG,uCAAuC,OAAOV,EAAG,qBAAqB,CAACW,IAAI,UAAUC,YAAYhB,EAAIiB,GAAG,CAAC,CAACC,IAAI,UAAUC,GAAG,SAASJ,GAC/c,IAAIK,EAAeL,EAAIK,aACvB,MAAO,CAAChB,EAAG,OAAO,CAACI,GAAG,CAAC,OAAS,SAASC,GAAgC,OAAxBA,EAAOY,iBAAwBD,EAAapB,EAAI01L,0BAA0B,CAACt1L,EAAG,MAAM,CAACM,YAAY,OAAO,CAACN,EAAG,MAAM,CAACM,YAAY,aAAa,CAACN,EAAG,qBAAqB,CAACE,MAAM,CAAC,KAAO,YAAY,MAAQ,kBAAkBU,YAAYhB,EAAIiB,GAAG,CAAC,CAACC,IAAI,UAAUC,GAAG,SAASJ,GAC1T,IAAIoF,EAASpF,EAAIoF,OACbC,EAASrF,EAAIqF,OACjB,MAAO,CAAChG,EAAG,WAAW,CAACE,MAAM,CAAC,KAAO,OAAO,MAAQ8F,EAAS,6CAA+C,KAAK,WAAaD,EAAO,KAAO,YAAY,MAAQnG,EAAIc,GAAG,0CAA0Ca,MAAM,CAACC,MAAO5B,EAAI+F,KAAW,OAAElE,SAAS,SAAUC,GAAM9B,EAAI+B,KAAK/B,EAAI+F,KAAM,SAAUjE,IAAME,WAAW,qBAAqB,MAAK,MAAS,KAAK5B,EAAG,MAAM,CAACM,YAAY,OAAO,CAACN,EAAG,MAAM,CAACM,YAAY,aAAa,CAACN,EAAG,qBAAqB,CAACE,MAAM,CAAC,KAAO,YAAY,MAAQ,kBAAkBU,YAAYhB,EAAIiB,GAAG,CAAC,CAACC,IAAI,UAAUC,GAAG,SAASJ,GAC7hB,IAAIoF,EAASpF,EAAIoF,OACbC,EAASrF,EAAIqF,OACjB,MAAO,CAAChG,EAAG,WAAW,CAACE,MAAM,CAAC,KAAO,OAAO,MAAQ8F,EAAS,6CAA+C,KAAK,WAAaD,EAAO,KAAO,YAAY,MAAQnG,EAAIc,GAAG,kDAAkDa,MAAM,CAACC,MAAO5B,EAAI+F,KAAgB,YAAElE,SAAS,SAAUC,GAAM9B,EAAI+B,KAAK/B,EAAI+F,KAAM,cAAejE,IAAME,WAAW,0BAA0B,MAAK,MAAS,KAAK5B,EAAG,MAAM,CAACM,YAAY,OAAO,CAACN,EAAG,MAAM,CAACM,YAAY,iCAAiC,CAACN,EAAG,MAAM,CAACM,YAAY,OAAO,CAACN,EAAG,QAAQ,CAAC6B,YAAY,CAAC,cAAc,SAAS,CAACjC,EAAIY,GAAGZ,EAAIa,GAAGb,EAAIc,GAAG,2BAA2B,CAACV,EAAG,WAAW,CAACuB,MAAM,CAACC,MAAO5B,EAAI+F,KAAW,OAAElE,SAAS,SAAUC,GAAM9B,EAAI+B,KAAK/B,EAAI+F,KAAM,SAAUjE,IAAME,WAAW,gBAAgB,CAAC5B,EAAG,IAAI,CAACM,YAAY,0BAA0BJ,MAAM,CAAC,KAAO,MAAMK,KAAK,OAAOP,EAAG,IAAI,CAACM,YAAY,kCAAkCJ,MAAM,CAAC,KAAO,OAAOK,KAAK,YAAY,KAAKP,EAAG,MAAM,CAACM,YAAY,aAAauB,YAAY,CAAC,aAAa,OAAO,cAAc,OAAO,aAAa,UAAU3B,MAAM,CAAC,KAAO,UAAUK,KAAK,UAAU,CAACP,EAAG,WAAW,CAACM,YAAY,0BAA0B4B,SAAS,CAAC,MAAQ,SAAS7B,GAAQ,OAAOT,EAAIuC,eAAe,CAACvC,EAAIY,GAAGZ,EAAIa,GAAGb,EAAIc,GAAG,0BAA0BV,EAAG,WAAW,CAACE,MAAM,CAAC,cAAc,SAAS,KAAO,YAAY,CAACN,EAAIY,GAAGZ,EAAIa,GAAGb,EAAIc,GAAG,yBAAyB,aAAa,IACnzC0B,EAAkB,G,0DC4EtB,+BACA,kCACA,6BAEA,OACEC,WAAY,GACZC,KAFF,WAGI,MAAO,CACL61J,kBAAkB,EAClBxyJ,KAAM,CACJ4vL,eAAgB,EAChBpvL,OAAQ,GACRqvL,YAAa,GACb7xL,QAAQ,EACRy0J,UAAW,GAEbC,UAAW,GACXt2J,KAAM,CAAC,GAAI,OAAQ,UAAW,UAAW,UACzCu2J,cAAe,CACbC,WAAW,GAEb/yJ,OAAQ,CACNC,SAAS,EACT+yJ,QAAQ,EACRC,MAAM,KAIZt1J,QAxBF,WAwBA,WACIC,SAASC,IAAI,oBAAjB,sIACA,cACA,8BACA,KACA,0IACA,uBAGA,gBACA,oBATA,6CAYEI,QAAS,CACPtB,UADJ,WAEMtC,KAAK8F,KAAKQ,OAAS,GACnBtG,KAAK8F,KAAK6vL,YAAc,GACxB31L,KAAK8F,KAAKhC,QAAS,EACnB9D,KAAK2F,OAAOC,SAAU,EACtB5F,KAAKwG,MAAMC,QAAQC,SAErB,sBARJ,WAQA,+JACA,cACA,8BACA,KACA,0IACA,uBALA,SAOA,eAPA,OAQA,gBARA,8CAUI,WAlBJ,WAkBA,wKACA,QACA,mDACA,KAFA,yDAGA,+FACA,eACA,mBACA,2DACA,cACA,gCAEA,mDAPA,2CAHA,uDAaA,YACA,sDAGA,wBAlBA,gDChJsY,I,wBCQlY1C,EAAY,eACd,EACAlE,EACAyC,GACA,EACA,KACA,KACA,MAIa,aAAAyB,E,6CCjBf,IAAIsmB,EAAUtd,MAAMsd,QAChBsrK,EAAUxxL,OAAOie,KACjBwzK,EAAUzxL,OAAOqW,UAAU2B,eAE/B9X,EAAOC,QAAU,SAASuxL,EAAMv2K,EAAGpB,GACjC,GAAIoB,IAAMpB,EAAG,OAAO,EAEpB,GAAIoB,GAAKpB,GAAiB,iBAALoB,GAA6B,iBAALpB,EAAe,CAC1D,IAEIzF,EACAhN,EACAzK,EAJA80L,EAAOzrK,EAAQ/K,GACfy2K,EAAO1rK,EAAQnM,GAKnB,GAAI43K,GAAQC,EAAM,CAEhB,GADAtqL,EAAS6T,EAAE7T,OACPA,GAAUyS,EAAEzS,OAAQ,OAAO,EAC/B,IAAKgN,EAAIhN,EAAgB,IAARgN,KACf,IAAKo9K,EAAMv2K,EAAE7G,GAAIyF,EAAEzF,IAAK,OAAO,EACjC,OAAO,EAGT,GAAIq9K,GAAQC,EAAM,OAAO,EAEzB,IAAIC,EAAQ12K,aAAarX,KACrBguL,EAAQ/3K,aAAajW,KACzB,GAAI+tL,GAASC,EAAO,OAAO,EAC3B,GAAID,GAASC,EAAO,OAAO32K,EAAEtX,WAAakW,EAAElW,UAE5C,IAAIkuL,EAAU52K,aAAa4oJ,OACvBiuB,EAAUj4K,aAAagqJ,OAC3B,GAAIguB,GAAWC,EAAS,OAAO,EAC/B,GAAID,GAAWC,EAAS,OAAO72K,EAAE9K,YAAc0J,EAAE1J,WAEjD,IAAI4N,EAAOuzK,EAAQr2K,GAGnB,GAFA7T,EAAS2W,EAAK3W,OAEVA,IAAWkqL,EAAQz3K,GAAGzS,OACxB,OAAO,EAET,IAAKgN,EAAIhN,EAAgB,IAARgN,KACf,IAAKm9K,EAAQr8K,KAAK2E,EAAGkE,EAAK3J,IAAK,OAAO,EAExC,IAAKA,EAAIhN,EAAgB,IAARgN,KAEf,GADAzX,EAAMohB,EAAK3J,IACNo9K,EAAMv2K,EAAEte,GAAMkd,EAAEld,IAAO,OAAO,EAGrC,OAAO,EAGT,OAAOse,IAAIA,GAAKpB,IAAIA,I,2CCrDtB,IAAIre,EAAS,WAAa,IAAIC,EAAIC,KAASC,EAAGF,EAAIG,eAAmBC,EAAGJ,EAAIK,MAAMD,IAAIF,EAAG,OAAOE,EAAG,QAAQ,CAACE,MAAM,CAAC,KAAON,EAAIm0L,WAAW3zL,GAAG,CAAC,cAAc,SAASC,GAAQT,EAAIm0L,UAAU1zL,KAAU,CAACL,EAAG,KAAK,CAACM,YAAY,iBAAiBJ,MAAM,CAAC,KAAO,UAAUK,KAAK,UAAU,CAACX,EAAIY,GAAG,IAAIZ,EAAIa,GAAGb,EAAIc,GAAG,4CAA4C,OAAOV,EAAG,qBAAqB,CAACW,IAAI,WAAWC,YAAYhB,EAAIiB,GAAG,CAAC,CAACC,IAAI,UAAUC,GAAG,SAASJ,GACtb,IAAIK,EAAeL,EAAIK,aACvB,MAAO,CAAChB,EAAG,OAAO,CAACI,GAAG,CAAC,OAAS,SAASC,GAAgC,OAAxBA,EAAOY,iBAAwBD,EAAapB,EAAIo0L,YAAY,CAACp0L,EAAIuB,GAAIvB,EAAIwB,SAAqB,cAAE,SAASC,GAAM,OAAOrB,EAAG,MAAM,CAACA,EAAG,KAAK,CAACJ,EAAIY,GAAGZ,EAAIa,GAAGY,EAAKC,OAAOA,WAAWtB,EAAG,MAAM,CAACM,YAAY,OAAO,CAACN,EAAG,MAAM,CAACM,YAAY,UAAU,CAACN,EAAG,WAAW,CAACE,MAAM,CAAC,KAAO,OAAO,KAAO,YAAY,MAAQN,EAAIc,GAAG,8CAA8Ca,MAAM,CAACC,MAAOH,EAAoB,gBAAEI,SAAS,SAAUC,GAAM9B,EAAI+B,KAAKN,EAAM,kBAAmBK,IAAME,WAAW,2BAA2B,KAAK5B,EAAG,MAAM,CAACM,YAAY,kBAAiBN,EAAG,MAAM,CAACM,YAAY,iCAAiC,CAACN,EAAG,MAAM,CAACM,YAAY,OAAO,CAACN,EAAG,QAAQ,CAAC6B,YAAY,CAAC,cAAc,SAAS,CAACjC,EAAIY,GAAGZ,EAAIa,GAAGb,EAAIc,GAAG,4CAA4C,CAACV,EAAG,WAAW,CAACuB,MAAM,CAACC,MAAO5B,EAAIwB,SAAe,OAAEK,SAAS,SAAUC,GAAM9B,EAAI+B,KAAK/B,EAAIwB,SAAU,SAAUM,IAAME,WAAW,oBAAoB,CAAC5B,EAAG,IAAI,CAACM,YAAY,0BAA0BJ,MAAM,CAAC,KAAO,MAAMK,KAAK,OAAOP,EAAG,IAAI,CAACM,YAAY,kCAAkCJ,MAAM,CAAC,KAAO,OAAOK,KAAK,YAAY,GAAGP,EAAG,MAAM,CAACM,YAAY,OAAO,CAACN,EAAG,MAAM,CAACM,YAAY,iCAAiC,CAACN,EAAG,MAAM,CAACM,YAAY,OAAO,CAACN,EAAG,QAAQ,CAAC6B,YAAY,CAAC,cAAc,SAAS,CAACjC,EAAIY,GAAGZ,EAAIa,GAAGb,EAAIc,GAAG,mDAAmD,CAACV,EAAG,YAAY,CAACE,MAAM,CAAC,YAAcN,EAAIc,GAAG,6CAA6C,KAAO,SAASa,MAAM,CAACC,MAAO5B,EAAIwB,SAAiB,SAAEK,SAAS,SAAUC,GAAM9B,EAAI+B,KAAK/B,EAAIwB,SAAU,WAAYM,IAAME,WAAW,sBAAsB,CAAC5B,EAAG,YAAY,CAACc,IAAI,OAAOZ,MAAM,CAAC,MAAQN,EAAIc,GAAG,2CAA2C,MAAQ,KAAKd,EAAIuB,GAAIvB,EAAIkC,oBAAwB,MAAE,SAASC,EAAKC,GAAO,OAAOhC,EAAG,YAAY,CAACc,IAAI,MAAMkB,EAAM9B,MAAM,CAAC,MAAQN,EAAIc,GAAG,sCAAsCqB,GAAM,MAAQE,SAASD,UAAa,KAAK,KAAKhC,EAAG,MAAM,CAACM,YAAY,aAAauB,YAAY,CAAC,aAAa,OAAO,cAAc,OAAO,aAAa,UAAU3B,MAAM,CAAC,KAAO,UAAUK,KAAK,UAAU,CAACP,EAAG,WAAW,CAACM,YAAY,0BAA0B4B,SAAS,CAAC,MAAQ,SAAS7B,GAAQ,OAAOT,EAAIq0L,gBAAgB,CAACr0L,EAAIY,GAAGZ,EAAIa,GAAGb,EAAIc,GAAG,0BAA0BV,EAAG,oBAAoB,CAACE,MAAM,CAAC,WAAa,oBAAoB,OAAS,4BAA4B,CAACF,EAAG,WAAW,CAACE,MAAM,CAAC,cAAc,SAAS,KAAO,YAAY,CAACN,EAAIY,GAAGZ,EAAIa,GAAGb,EAAIc,GAAG,yBAAyB,IAAI,IAAI,WAAW,IACr4E0B,EAAkB,G,oICyFtB,GACEC,WAAY,GACZC,KAFF,WAGI,MAAO,CACL2D,cAAepG,KAAKa,GAAG,wBACvBoF,MAAO,qBACP1E,SAAU,IAAI,EAApB,EACM2yL,WAAW,EACXjyL,oBAAqB,IAAI,EAA/B,IAGE,SAAF,kBACA,2CAEEU,QAdF,WAeI3C,KAAKuB,SAASqB,YAAc5C,KAAK6C,OAAOC,MAAMtB,MAEhD8B,QAjBF,WAiBA,WACIC,SAASC,IAAI,0BAA0B,SAA3C,GACM,EAAN,WACM,EAAN,6BACM,EAAN,6CAEM,EAAN,YACQC,MAAO,EAAf,sBACQC,KACR,0IACQC,mBAAmB,IAErB,EAAN,cACM,EAAN,iBAGEC,QAAS,CACPwwL,WADJ,WAEMp0L,KAAKk0L,WAAY,EACjBl0L,KAAKwG,MAAMkuL,SAAShuL,SAEtB,QALJ,WAKA,uKACA,cACA,8BACA,KACA,0IACA,uBACA,WANA,SAUA,6CACA,mHAXA,SAcA,2EAdA,OAcA,EAdA,OAeA,mCAEA,GACA,2DACA,+BACA,gBAEA,mDAtBA,qDAyBA,uCAzBA,yBA6BA,gBA7BA,kFClI6X,I,wBCQzX1C,EAAY,eACd,EACAlE,EACAyC,GACA,EACA,KACA,KACA,MAIa,aAAAyB,E,oDCnBf,IAAIlE,EAAS,WAAa,IAAIC,EAAIC,KAASC,EAAGF,EAAIG,eAAmBC,EAAGJ,EAAIK,MAAMD,IAAIF,EAAG,OAAOE,EAAG,MAAM,CAACM,YAAY,OAAO,CAACN,EAAG,MAAM,CAACM,YAAY,UAAU,CAACN,EAAG,MAAM,CAACM,YAAY,kBAAkB,CAACN,EAAG,oBAAoB,CAACE,MAAM,CAAC,WAAa,iBAAiB,OAAS,qBAAqB,CAACF,EAAG,WAAW,CAACE,MAAM,CAAC,KAAO,UAAU,MAAQ,IAAIgC,SAAS,CAAC,MAAQ,SAAS7B,GAAQ,OAAOT,EAAIkO,iBAAiB,CAAC9N,EAAG,IAAI,CAACM,YAAY,+BAA+BJ,MAAM,CAAC,KAAO,SAASK,KAAK,UAAUX,EAAIY,GAAG,IAAIZ,EAAIa,GAAGb,EAAIc,GAAG,oBAAoB,QAAQ,IAAI,GAAGV,EAAG,OAAO,CAACE,MAAM,CAAC,oBAAoB,mBAAmB,iBAAiB,KAAK,CAACF,EAAG,cAAc,CAACE,MAAM,CAAC,UAAY,KAAK,CAACF,EAAG,mBAAmB,CAACM,YAAY,SAASJ,MAAM,CAAC,KAAO,IAAI,MAAQN,EAAIc,GAAG,iCAAiC,CAACV,EAAG,MAAM,CAACM,YAAY,aAAa,CAACN,EAAG,MAAM,CAACM,YAAY,OAAO,CAACN,EAAG,MAAM,CAACM,YAAY,8BAA8B,CAACV,EAAIY,GAAG,IAAIZ,EAAIa,GAAGb,EAAIc,GAAG,sCAAsC,KAAKV,EAAG,YAAY,CAACE,MAAM,CAAC,KAAO,UAAU,WAAa,GAAG,YAAcN,EAAIc,GAAG,uCAAuCa,MAAM,CAACC,MAAO5B,EAAgB,aAAE6B,SAAS,SAAUC,GAAM9B,EAAIs2L,aAAax0L,GAAKE,WAAW,iBAAiB,CAAC5B,EAAG,YAAY,CAACE,MAAM,CAAC,MAAQN,EAAIc,GAAG,mBAAmB,MAAQ,OAAOV,EAAG,YAAY,CAACE,MAAM,CAAC,MAAQN,EAAIc,GAAG,oCAAoC,MAAQ,OAAOV,EAAG,YAAY,CAACE,MAAM,CAAC,MAAQN,EAAIc,GAAG,qCAAqC,MAAQ,OAAOV,EAAG,YAAY,CAACE,MAAM,CAAC,MAAQN,EAAIc,GAAG,uCAAuC,MAAQ,QAAQ,IAAI,GAAGV,EAAG,MAAM,CAACM,YAAY,8BAA8B,CAACV,EAAIY,GAAG,IAAIZ,EAAIa,GAAGb,EAAIc,GAAG,sBAAsB,KAAKV,EAAG,YAAY,CAACE,MAAM,CAAC,KAAO,UAAU,WAAa,GAAG,YAAcN,EAAIc,GAAG,sBAAsBa,MAAM,CAACC,MAAO5B,EAAkB,eAAE6B,SAAS,SAAUC,GAAM9B,EAAIu2L,eAAez0L,GAAKE,WAAW,mBAAmB,CAAC5B,EAAG,YAAY,CAACE,MAAM,CAAC,MAAQN,EAAIc,GAAG,mBAAmB,MAAQ,OAAOV,EAAG,YAAY,CAACE,MAAM,CAAC,MAAQN,EAAIc,GAAG,sBAAsB,MAAQd,EAAIc,GAAG,yBAAyBV,EAAG,YAAY,CAACE,MAAM,CAAC,MAAQN,EAAIc,GAAG,wBAAwB,MAAQd,EAAIc,GAAG,4BAA4B,IAAI,GAAGV,EAAG,MAAM,CAAC6F,MAAMjG,EAAIkG,OAAO,CAAClG,EAAIY,GAAG,IAAIZ,EAAIa,GAAGb,EAAIc,GAAG,gDAAgD,KAAKV,EAAG,WAAW,CAACA,EAAG,iBAAiB,CAACE,MAAM,CAAC,KAAO,OAAO,YAAc,eAAeqB,MAAM,CAACC,MAAO5B,EAAW,QAAE6B,SAAS,SAAUC,GAAM9B,EAAIw2L,QAAQ10L,GAAKE,WAAW,cAAc,IAAI,GAAG5B,EAAG,MAAM,CAAC6F,MAAMjG,EAAIkG,OAAO,CAAClG,EAAIY,GAAG,IAAIZ,EAAIa,GAAGb,EAAIc,GAAG,gDAAgD,KAAKV,EAAG,WAAW,CAACA,EAAG,iBAAiB,CAACE,MAAM,CAAC,KAAO,OAAO,YAAc,eAAeqB,MAAM,CAACC,MAAO5B,EAAW,QAAE6B,SAAS,SAAUC,GAAM9B,EAAI+zH,QAAQjyH,GAAKE,WAAW,cAAc,IAAI,GAAG5B,EAAG,MAAM,CAAC6F,MAAMjG,EAAIkG,OAAO,CAAClG,EAAIY,GAAG,IAAIZ,EAAIa,GAAGb,EAAIc,GAAG,sCAAsC,KAAKV,EAAG,WAAW,CAACA,EAAG,WAAW,CAACM,YAAY,OAAOuB,YAAY,CAAC,MAAQ,SAAS3B,MAAM,CAAC,KAAO,SAAS,UAAY,GAAG,cAAc,kBAAkB,YAAcN,EAAIc,GAAG,sBAAsB,gBAAgB,cAAca,MAAM,CAACC,MAAO5B,EAAe,YAAE6B,SAAS,SAAUC,GAAM9B,EAAIwK,YAAY1I,GAAKE,WAAW,kBAAkB,IAAI,UAAU,GAAG5B,EAAG,MAAM,CAACM,YAAY,6EAA6E,CAACN,EAAG,KAAK,CAACM,YAAY,0BAA0B,CAACV,EAAIY,GAAG,IAAIZ,EAAIa,GAAGb,EAAIc,GAAG,+BAA+B,SAASV,EAAG,MAAM,CAACA,EAAG,WAAW,CAAC6B,YAAY,CAAC,MAAQ,QAAQ3B,MAAM,CAAC,OAAS,GAAG,KAAON,EAAIyK,cAAc,CAACrK,EAAG,kBAAkB,CAACE,MAAM,CAAC,KAAO,mBAAmB,MAAQN,EAAIc,GAAG,qCAAqC,YAAY,MAAM,SAAW,IAAIE,YAAYhB,EAAIiB,GAAG,CAAC,CAACC,IAAI,UAAUC,GAAG,SAASuJ,GAAO,MAAO,CAAgC,GAA9BA,EAAMC,IAAI8rL,iBAAuBr2L,EAAG,OAAO,CAACJ,EAAIY,GAAG,IAAIZ,EAAIa,GAAGb,EAAIc,GAAG,qCAAqC,OAAOd,EAAIkH,KAAoC,GAA9BwD,EAAMC,IAAI8rL,iBAAuBr2L,EAAG,OAAO,CAACJ,EAAIY,GAAG,IAAIZ,EAAIa,GAAGb,EAAIc,GAAG,sCAAsC,OAAOd,EAAIkH,KAAoC,GAA9BwD,EAAMC,IAAI8rL,iBAAuBr2L,EAAG,OAAO,CAACJ,EAAIY,GAAG,IAAIZ,EAAIa,GAAGb,EAAIc,GAAG,wCAAwC,OAAOd,EAAIkH,YAAY9G,EAAG,kBAAkB,CAACE,MAAM,CAAC,KAAO,gBAAgB,MAAQN,EAAIc,GAAG,4CAA4C,YAAY,MAAM,SAAW,IAAIE,YAAYhB,EAAIiB,GAAG,CAAC,CAACC,IAAI,UAAUC,GAAG,SAASuJ,GAAO,MAAO,CAAC1K,EAAIY,GAAG,IAAIZ,EAAIa,GAAG6J,EAAMC,IAAI+rL,eAAe,YAAYt2L,EAAG,kBAAkB,CAACE,MAAM,CAAC,KAAO,qBAAqB,MAAQN,EAAIc,GAAG,qCAAqC,YAAY,MAAM,SAAW,IAAIE,YAAYhB,EAAIiB,GAAG,CAAC,CAACC,IAAI,UAAUC,GAAG,SAASuJ,GAAO,MAAO,CAAC1K,EAAIY,GAAG,IAAIZ,EAAIa,GAAG6J,EAAMC,IAAIgsL,oBAAoB,YAAYv2L,EAAG,kBAAkB,CAACE,MAAM,CAAC,KAAO,cAAc,MAAQN,EAAIc,GAAG,yCAAyC,YAAY,MAAM,SAAW,IAAIE,YAAYhB,EAAIiB,GAAG,CAAC,CAACC,IAAI,UAAUC,GAAG,SAASuJ,GAAO,MAAO,CAAC1K,EAAIY,GAAG,IAAIZ,EAAIa,GAAG6J,EAAMC,IAAIisL,aAAa,YAAYx2L,EAAG,kBAAkB,CAACE,MAAM,CAAC,KAAO,WAAW,MAAQN,EAAIc,GAAG,yCAAyC,YAAY,MAAM,SAAW,IAAIE,YAAYhB,EAAIiB,GAAG,CAAC,CAACC,IAAI,UAAUC,GAAG,SAASuJ,GAAO,MAAO,CAAC1K,EAAIY,GAAG,IAAIZ,EAAIa,GAAG6J,EAAMC,IAAIksL,UAAU,YAAYz2L,EAAG,kBAAkB,CAACE,MAAM,CAAC,KAAO,SAAS,MAAQN,EAAIc,GAAG,sCAAsC,YAAY,MAAM,UAAY,aAAaE,YAAYhB,EAAIiB,GAAG,CAAC,CAACC,IAAI,UAAUC,GAAG,SAASuJ,GAAO,MAAO,CAAC1K,EAAIY,GAAG,IAAIZ,EAAIa,GAAG6J,EAAMC,IAAI5G,OAAS/D,EAAIc,GAAG,sBAAwBd,EAAIc,GAAG,yBAAyB,YAAYV,EAAG,kBAAkB,CAACE,MAAM,CAAC,MAAQN,EAAIc,GAAG,sBAAsB,YAAY,MAAM,UAAY,aAAaE,YAAYhB,EAAIiB,GAAG,CAAC,CAACC,IAAI,UAAUC,GAAG,SAASyJ,GAAO,MAAO,CAACxK,EAAG,WAAW,CAACW,IAAI,UAAY6J,EAAME,OAAOxK,MAAM,CAAC,MAAQ,SAASE,GAAG,CAAC,MAAQ,SAASC,GAAQ,OAAOT,EAAI82L,cAAclsL,EAAMD,IAAK,UAAYC,EAAME,UAAUnJ,MAAM,CAACC,MAAOgJ,EAAMD,IAAU,OAAE9I,SAAS,SAAUC,GAAM9B,EAAI+B,KAAK6I,EAAMD,IAAK,SAAU7I,IAAME,WAAW,qBAAqB,CAAC5B,EAAG,IAAI,CAACM,YAAY,0BAA0BJ,MAAM,CAAC,KAAO,MAAMK,KAAK,OAAOP,EAAG,IAAI,CAACM,YAAY,kCAAkCJ,MAAM,CAAC,KAAO,OAAOK,KAAK,iBAAiBP,EAAG,kBAAkB,CAACE,MAAM,CAAC,YAAY,IAAI,UAAY,aAAaU,YAAYhB,EAAIiB,GAAG,CAAC,CAACC,IAAI,UAAUC,GAAG,SAASyJ,GAAO,OAAOxK,EAAG,MAAM,CAACM,YAAY,0BAA0B,CAACN,EAAG,aAAa,CAACW,IAAI,YAAc6J,EAAME,OAAOxK,MAAM,CAAC,UAAY,SAAS,MAAQ,MAAM,QAAU,UAAU,CAACF,EAAG,MAAM,CAACM,YAAY,OAAO,CAACN,EAAG,MAAM,CAACM,YAAY,kBAAkB,CAACN,EAAG,oBAAoB,CAACE,MAAM,CAAC,WAAa,iBAAiB,OAAS,qBAAqB,CAACF,EAAG,WAAW,CAACM,YAAY,iBAAiBJ,MAAM,CAAC,KAAO,UAAU,KAAO,KAAK,MAAQ,IAAIgC,SAAS,CAAC,MAAQ,SAAS7B,GAAQ,OAAOT,EAAI+2L,YACt9MnsL,EAAME,OACNF,EAAMD,IACN,YAAcC,EAAME,WACjB,CAAC9K,EAAIY,GAAG,IAAIZ,EAAIa,GAAGb,EAAIc,GAAG,oCAAoC,QAAQ,GAAGV,EAAG,oBAAoB,CAACE,MAAM,CAAC,WAAa,iBAAiB,OAAS,kCAAkC,CAACF,EAAG,WAAW,CAACM,YAAY,iBAAiBJ,MAAM,CAAC,KAAO,UAAU,KAAO,KAAK,MAAQ,IAAIgC,SAAS,CAAC,MAAQ,SAAS7B,GAAQ,OAAOT,EAAIg3L,eAC/TpsL,EAAME,OACNF,EAAMD,IACN,YAAcC,EAAME,WACjB,CAAC9K,EAAIY,GAAG,IAAIZ,EAAIa,GAAGb,EAAIc,GAAG,uCAAuC,QAAQ,IAAI,KAAKV,EAAG,WAAW,CAACM,YAAY,uBAAuBJ,MAAM,CAAC,KAAO,YAAY,KAAO,KAAK,KAAO,IAAIK,KAAK,aAAa,CAACP,EAAG,IAAI,CAACM,YAAY,mBAAmBuB,YAAY,CAAC,MAAQ,cAAc,IAAI,UAAU,IAAI,GAAG7B,EAAG,MAAM,CAACM,YAAY,4EAA4EJ,MAAM,CAAC,KAAO,UAAUK,KAAK,UAAU,CAACP,EAAG,MAAM,GAAG,CAACA,EAAG,IAAI,CAACM,YAAY,iBAAiB,CAACV,EAAIY,GAAG,IAAIZ,EAAIa,GAAGb,EAAIc,GAAG,2BAA2B,IAAId,EAAIa,GAAGb,EAAIgL,KAAO,GAAG,IAAIhL,EAAIa,GAAGb,EAAIc,GAAG,sBAAsB,IAAId,EAAIa,GAAGb,EAAIiL,IAAI,IAAIjL,EAAIa,GAAGb,EAAIc,GAAG,sBAAsB,IAAId,EAAIa,GAAGb,EAAIkL,OAAO,IAAIlL,EAAIa,GAAGb,EAAIc,GAAG,2BAA2B,SAASV,EAAG,eAAe,CAACM,YAAY,uBAAuBJ,MAAM,CAAC,WAAWN,EAAImL,WAAWC,QAAQ,MAAQpL,EAAIkL,OAAOvJ,MAAM,CAACC,MAAO5B,EAAImL,WAAsB,YAAEtJ,SAAS,SAAUC,GAAM9B,EAAI+B,KAAK/B,EAAImL,WAAY,cAAerJ,IAAME,WAAW,6BAA6B,IAAI,GAAG5B,EAAG,mBAAmBA,EAAG,oBAAoBA,EAAG,wBAAwB,MACrlCoC,EAAkB,G,kGCmTtB,GACEC,WAAY,CACVw0L,eAAgB,WAApB,wDACIC,gBAAiB,WAArB,+CACIC,mBAAoB,WAAxB,gDAEEx0L,SAAU,OAAZ,OAAY,CAAZ,kBACA,6BADA,IAEI8H,YAFJ,WAGM,IAAN,oCACM,OAAOzF,EAAOuG,MAAMtL,KAAK+K,KAAM/K,KAAKgL,KAEtCA,GANJ,WAOM,IAAN,oCAIM,OAHIhL,KAAKiL,MAAQM,IACfA,EAAYvL,KAAKiL,OAEZM,GAETR,KAbJ,WAcM,OAAO/K,KAAKkL,WAAWC,SAAWnL,KAAKkL,WAAWM,YAAc,IAElEP,MAhBJ,WAiBM,IAAN,oCACM,OAAOQ,EAAaC,OAAS,EACnC,SACA,yBAGEjJ,KA7BF,WA8BI,MAAO,CACLwD,MAAO,6BACPowL,aAAc,QACdC,eAAgB,GAChBC,QAAS,IAAIruL,MAAK,IAAIA,MAAOk5E,eAAe,IAAIl5E,MAAOm5E,WAAa,GAAG,IAAIn5E,MAAOo5E,WAClFwyC,QAAS,IAAI5rH,MAAK,IAAIA,MAAOk5E,eAAe,IAAIl5E,MAAOm5E,YAAY,IAAIn5E,MAAOo5E,WAC9Ey3E,WAAY,IAAI7wJ,MAAK,IAAIA,MAAOk5E,cAAe,EAAG,GAClD+1G,iBAAiB,EACjB5sL,YAAa,GACbkB,aAAc,GACdP,WAAY,CACVC,QAAS,EACTK,YAAa,EACbG,eAAgB,CAAC,EAAG,GAAI,GAAI,IAC5BV,MAAO,GAETW,UAAW,KAGf,QAjDF,WAiDA,wJACA,SADA,8CAGE,QApDF,WAoDA,wJACA,kCACA,yCACA,uBACA,oBACA,iBACA,mDACA,kDACA,YARA,8CAWEhI,QAAS,CACP,KADJ,WACA,+JACA,cACA,8BACA,KACA,0IACA,uBALA,SAOA,aAPA,OAQA,gBARA,8CAUI,SAXJ,WAWA,qKACA,GACA,KACA,iCAHA,SAMA,QACA,kDACA,MACA,YACA,kBACA,kCAEA,uBAIA,YACA,oBAlBA,8CAuBI,cAlCJ,SAkCA,6JACA,wDACA,yDACA,2DAEA,YAEA,KANA,wCAMA,2GAEA,GACA,KACA,0BACA,oBACA,gBANA,SAQA,QACA,gDACA,KAFA,yDAGA,+FACA,mBACA,oBACA,gBACA,UACA,iCAEA,UAEA,mDATA,2CAHA,uDAeA,YACA,sDAGA,wBA3BA,4CA6BA,kBACA,sBArCA,8CAwCIqK,YA1EJ,WA2EM1K,SAASyI,MAAM,oBAEjB8qL,YA7EJ,SA6EA,OACM92L,KAAKwG,MAAM1F,GAAKiL,UAChBxI,SAASyI,MAAM,mBAAoBtB,IAErCqsL,eAjFJ,SAiFA,OACM/2L,KAAKwG,MAAM1F,GAAKiL,UAChBxI,SAASyI,MAAM,sBAAuBtB,IAExCoB,aArFJ,SAqFA,cAwCM,OAtCA/G,EACN,0BACA,sBAAQ,OACR,qBACA,cACA,yCAEA,EAGMA,EACN,oBACA,sBAAQ,OAAR,sCACA,EAGMA,EACN,mDACA,sBAAQ,OAAR,eACA,EACMA,EACN,qDACA,sBAAQ,OAAR,eACA,EAGMA,EACN,qCACA,qCACA,8BACA,6BACA,YACA,YAAQ,OACR,sCACA,wCAEA,EAEaA,KCxfsW,I,YCO/Wf,EAAY,eACd,EACAlE,EACAyC,GACA,EACA,KACA,KACA,MAIa,aAAAyB,E,kDClBf,IAAIlE,EAAS,WAAa,IAAIC,EAAIC,KAASC,EAAGF,EAAIG,eAAmBC,EAAGJ,EAAIK,MAAMD,IAAIF,EAAG,OAAOE,EAAG,QAAQ,CAACE,MAAM,CAAC,KAAON,EAAIq3L,WAAW72L,GAAG,CAAC,cAAc,SAASC,GAAQT,EAAIq3L,UAAU52L,KAAU,CAACL,EAAG,KAAK,CAACM,YAAY,oBAAoBJ,MAAM,CAAC,KAAO,UAAUK,KAAK,UAAU,CAACX,EAAIY,GAAG,IAAIZ,EAAIa,GAAGb,EAAIc,GAAG,mDAAmD,OAAOV,EAAG,MAAM,CAACM,YAAY,aAAa,CAACN,EAAG,MAAM,CAACM,YAAY,OAAO,CAACN,EAAG,WAAW,CAAC6B,YAAY,CAAC,MAAQ,QAAQ3B,MAAM,CAAC,KAAON,EAAI6L,YAAY,CAACzL,EAAG,kBAAkB,CAACE,MAAM,CAAC,KAAO,gBAAgB,MAAQN,EAAIc,GAAG,8CAA8C,YAAY,SAASV,EAAG,kBAAkB,CAACE,MAAM,CAAC,KAAO,gBAAgB,MAAQN,EAAIc,GAAG,yCAAyC,YAAY,SAASV,EAAG,kBAAkB,CAACE,MAAM,CAAC,KAAO,YAAY,MAAQN,EAAIc,GAAG,qCAAqC,YAAY,OAAOE,YAAYhB,EAAIiB,GAAG,CAAC,CAACC,IAAI,UAAUC,GAAG,SAASuJ,GAAO,MAAO,CAACtK,EAAG,UAAU,CAACE,MAAM,CAAC,KAAON,EAAIs3L,OAAS5sL,EAAMC,IAAI4sL,UAAU,OAAS,SAAS,KAAO,qBAAqB,CAACv3L,EAAIY,GAAGZ,EAAIa,GAAGb,EAAIc,GAAG,2CAA2CV,EAAG,OAAO,CAAC6B,YAAY,CAAC,cAAc,SAAS,CAACjC,EAAIY,GAAGZ,EAAIa,GAAG6J,EAAMC,IAAI2jE,gBAAgBluE,EAAG,kBAAkB,CAACE,MAAM,CAAC,YAAY,OAAOU,YAAYhB,EAAIiB,GAAG,CAAC,CAACC,IAAI,UAAUC,GAAG,SAASyJ,GAAO,OAAOxK,EAAG,MAAM,CAACM,YAAY,0BAA0B,CAACN,EAAG,aAAa,CAACW,IAAI,YAAc6J,EAAME,OAAOxK,MAAM,CAAC,UAAY,SAAS,MAAQ,MAAM,QAAU,UAAU,CAACF,EAAG,MAAM,CAACM,YAAY,OAAO,CAACN,EAAG,MAAM,CAACM,YAAY,kBAAkB,CAACN,EAAG,WAAW,CAACM,YAAY,iBAAiBJ,MAAM,CAAC,KAAO,UAAU,KAAO,KAAK,MAAQ,IAAIgC,SAAS,CAAC,MAAQ,SAAS7B,GAAQ,OAAOT,EAAIw3L,aAC5nD5sL,EAAME,OACNF,EAAMD,IACN,YAAcC,EAAME,WACjB,CAAC9K,EAAIY,GAAG,IAAIZ,EAAIa,GAAGb,EAAIc,GAAG,uBAAuB,QAAQ,KAAKV,EAAG,WAAW,CAACM,YAAY,uBAAuBJ,MAAM,CAAC,KAAO,YAAY,KAAO,KAAK,KAAO,IAAIK,KAAK,aAAa,CAACP,EAAG,IAAI,CAACM,YAAY,mBAAmBuB,YAAY,CAAC,MAAQ,cAAc,IAAI,UAAU,IAAI,KAAK7B,EAAG,MAAM,CAACM,YAAY,aAAaJ,MAAM,CAAC,KAAO,UAAUK,KAAK,UAAU,CAACP,EAAG,WAAW,CAACM,YAAY,gBAAgB4B,SAAS,CAAC,MAAQ,SAAS7B,GAAQ,OAAOT,EAAIy3L,WAAWh3L,MAAW,CAACT,EAAIY,GAAGZ,EAAIa,GAAGb,EAAIc,GAAG,0BAA0B,MACthB0B,EAAkB,G,gECgFtB,GACEC,WAAY,GACZC,KAFF,WAGI,MAAO,CACL40L,OAAQ,GACRzrL,UAAW,GACXtD,SAAU,GACV0/I,qBAAqB,EACrBz/I,WAAW,EACXC,UAAW,GACXK,eAAe,EACfzC,cAAepG,KAAKa,GAAG,wBACvBiF,KAAM,CAAZ,kBACMsxL,WAAW,IAGflrL,MAAO,GACPxJ,SAAU,GACVC,QAlBF,WAmBI3C,KAAKq3L,OAAS,sCAEhB,QArBF,WAqBA,wJACA,0LACA,0BACA,2BACA,eACA,oBACA,eALA,kGADA,8CASEzzL,QAAS,CACP,aADJ,SACA,+JACA,qBACA,WACA,oDACA,GACA,CACA,yDACA,2DAEA,YAGA,KAVA,wCAUA,8FACA,eADA,4CAGA,sBAfA,8CAiBI,gBAlBJ,WAkBA,+JACA,cACA,8BACA,KACA,0IACA,uBALA,SAOA,gBAPA,OAQA,gBARA,8CAUI4zL,WA5BJ,WA6BMx3L,KAAKo3L,WAAY,GAEnB,UA/BJ,SA+BA,wKACA,cACA,8BACA,KACA,0IACA,uBAEA,GACA,uBACA,gCACA,uCAVA,SAYA,QACA,uDACA,KAFA,yDAGA,kGACA,kBADA,gCAEA,oBAFA,6BAIA,mDAJA,2CAHA,uDAUA,YACA,eACA,sDAGA,wBA3BA,OA8BA,gBA9BA,8CAgCI5rJ,QA/DJ,WAgEMxrC,KAAKwG,MAAMyD,OAAOC,aAClBlK,KAAKsI,SAAW,IAElB,YAnEJ,WAmEA,qKACA,GACA,mBACA,gCACA,uCAJA,SAMA,QACA,qDACA,KAFA,yDAGA,+FACA,kBACA,qCAEA,mDAJA,2CAHA,uDAUA,YACA,eACA,sDAGA,wBArBA,8CAyBIR,WA5FJ,SA4FA,GACM,GAAImN,EAAM,CACR,IAAIgzI,EAAYjoJ,KAAK8J,kBAAkBmL,EAAK5F,MACxC44I,GACEjoJ,KAAKqI,aAAa6/I,SAASD,GAC7BjoJ,KAAKsI,SAAW2M,EAAKyO,KAUvB1jB,KAAKsI,SAAW,GAChBtI,KAAKwG,MAAMyD,OAAOC,aAClBlK,KAAKmoJ,cACf,UACA,8DAKI,WApHJ,SAoHA,2JACA,cADA,gDCvOmX,I,YCO/WnkJ,EAAY,eACd,EACAlE,EACAyC,GACA,EACA,KACA,KACA,MAIa,aAAAyB,E,kDClBf,IAAIlE,EAAS,WAAa,IAAIC,EAAIC,KAASC,EAAGF,EAAIG,eAAmBC,EAAGJ,EAAIK,MAAMD,IAAIF,EAAG,OAAOE,EAAG,MAAM,CAACM,YAAY,OAAO,CAACN,EAAG,MAAM,CAACM,YAAY,UAAU,CAACN,EAAG,MAAM,CAACM,YAAY,kBAAkB,CAACN,EAAG,WAAW,CAACE,MAAM,CAAC,KAAO,UAAU,MAAQ,IAAIgC,SAAS,CAAC,MAAQ,SAAS7B,GAAQ,OAAOT,EAAI03L,2BAA2B,CAACt3L,EAAG,IAAI,CAACM,YAAY,+BAA+BJ,MAAM,CAAC,KAAO,SAASK,KAAK,UAAUX,EAAIY,GAAG,IAAIZ,EAAIa,GAAGb,EAAIc,GAAG,kDAAkD,QAAQ,GAAGV,EAAG,OAAO,CAACE,MAAM,CAAC,oBAAoB,mBAAmB,iBAAiB,KAAK,CAACF,EAAG,MAAM,CAACM,YAAY,yEAAyEN,EAAG,MAAM,CAACA,EAAG,MAAM,CAACM,YAAY,6EAA6E,CAACN,EAAG,KAAK,CAACM,YAAY,0BAA0B,CAACV,EAAIY,GAAG,IAAIZ,EAAIa,GAAGb,EAAIc,GAAG,8CAA8C,OAAOV,EAAG,WAAW,CAACA,EAAG,WAAW,CAACM,YAAY,OAAOuB,YAAY,CAAC,MAAQ,SAAS3B,MAAM,CAAC,KAAO,SAAS,UAAY,GAAG,cAAc,kBAAkB,YAAcN,EAAIc,GAAG,sBAAsB,gBAAgB,cAAca,MAAM,CAACC,MAAO5B,EAAe,YAAE6B,SAAS,SAAUC,GAAM9B,EAAIwK,YAAY1I,GAAKE,WAAW,kBAAkB,IAAI,GAAG5B,EAAG,WAAW,CAAC6B,YAAY,CAAC,MAAQ,QAAQ3B,MAAM,CAAC,OAAS,GAAG,KAAON,EAAIyK,cAAc,CAACrK,EAAG,kBAAkB,CAACE,MAAM,CAAC,KAAO,eAAe,MAAQL,KAAKa,GAAG,sDAAsD,SAAW,GAAG,YAAY,SAASV,EAAG,kBAAkB,CAACE,MAAM,CAAC,MAAQN,EAAIc,GAAG,sBAAsB,YAAY,OAAOE,YAAYhB,EAAIiB,GAAG,CAAC,CAACC,IAAI,UAAUC,GAAG,SAASuJ,GAAO,MAAO,CAAC1K,EAAIY,GAAG,IAAIZ,EAAIa,GAAG6J,EAAMC,IAAI5G,OAAS/D,EAAIc,GAAG,sBAAwBd,EAAIc,GAAG,yBAAyB,YAAYV,EAAG,kBAAkB,CAACE,MAAM,CAAC,MAAQN,EAAIc,GAAG,sBAAsB,YAAY,KAAKE,YAAYhB,EAAIiB,GAAG,CAAC,CAACC,IAAI,UAAUC,GAAG,SAASyJ,GAAO,MAAO,CAACxK,EAAG,WAAW,CAACE,MAAM,CAAC,MAAQ,SAASE,GAAG,CAAC,MAAQ,SAASC,GAAQ,OAAOT,EAAIuO,OAAO3D,EAAMD,OAAOhJ,MAAM,CAACC,MAAOgJ,EAAMD,IAAU,OAAE9I,SAAS,SAAUC,GAAM9B,EAAI+B,KAAK6I,EAAMD,IAAK,SAAU7I,IAAME,WAAW,qBAAqB,CAAC5B,EAAG,IAAI,CAACM,YAAY,0BAA0BJ,MAAM,CAAC,KAAO,MAAMK,KAAK,OAAOP,EAAG,IAAI,CAACM,YAAY,kCAAkCJ,MAAM,CAAC,KAAO,OAAOK,KAAK,iBAAiBP,EAAG,kBAAkB,CAACE,MAAM,CAAC,YAAY,IAAI,MAAQN,EAAIc,GAAG,wBAAwBE,YAAYhB,EAAIiB,GAAG,CAAC,CAACC,IAAI,UAAUC,GAAG,SAASyJ,GAAO,OAAOxK,EAAG,MAAM,CAACM,YAAY,0BAA0B,CAACN,EAAG,aAAa,CAACW,IAAI,YAAc6J,EAAME,OAAOxK,MAAM,CAAC,UAAY,SAAS,MAAQ,MAAM,QAAU,UAAU,CAACF,EAAG,MAAM,CAACM,YAAY,OAAO,CAACN,EAAG,MAAM,CAACM,YAAY,kBAAkB,CAACN,EAAG,WAAW,CAACM,YAAY,iBAAiBJ,MAAM,CAAC,KAAO,UAAU,KAAO,KAAK,MAAQ,IAAIgC,SAAS,CAAC,MAAQ,SAAS7B,GAAQ,OAAOT,EAAI23L,YAC/tF/sL,EAAME,OACNF,EAAMD,IACN,YAAcC,EAAME,WACjB,CAAC9K,EAAIY,GAAG,IAAIZ,EAAIa,GAAGb,EAAIc,GAAG,mDAAmD,QAAQ,KAAKV,EAAG,WAAW,CAACM,YAAY,uBAAuBJ,MAAM,CAAC,KAAO,YAAY,KAAO,KAAK,KAAO,IAAIK,KAAK,aAAa,CAACP,EAAG,IAAI,CAACM,YAAY,mBAAmBuB,YAAY,CAAC,MAAQ,cAAc,IAAI,UAAU,IAAI,GAAG7B,EAAG,MAAM,CAACM,YAAY,4EAA4EJ,MAAM,CAAC,KAAO,UAAUK,KAAK,UAAU,CAACP,EAAG,MAAM,GAAG,CAACA,EAAG,IAAI,CAACM,YAAY,iBAAiB,CAACV,EAAIY,GAAG,IAAIZ,EAAIa,GAAGb,EAAIc,GAAG,2BAA2B,IAAId,EAAIa,GAAGb,EAAIgL,KAAO,GAAG,IAAIhL,EAAIa,GAAGb,EAAIc,GAAG,sBAAsB,IAAId,EAAIa,GAAGb,EAAIiL,IAAI,IAAIjL,EAAIa,GAAGb,EAAIc,GAAG,sBAAsB,IAAId,EAAIa,GAAGb,EAAIkL,OAAO,IAAIlL,EAAIa,GAAGb,EAAIc,GAAG,2BAA2B,SAASV,EAAG,eAAe,CAACM,YAAY,uBAAuBJ,MAAM,CAAC,WAAWN,EAAImL,WAAWC,QAAQ,MAAQpL,EAAIkL,OAAOvJ,MAAM,CAACC,MAAO5B,EAAImL,WAAsB,YAAEtJ,SAAS,SAAUC,GAAM9B,EAAI+B,KAAK/B,EAAImL,WAAY,cAAerJ,IAAME,WAAW,6BAA6B,KAAK5B,EAAG,wBAAwBA,EAAG,0BAA0B,MACzkCoC,EAAkB,G,wHCuItB,GACEC,WAAY,CACVm1L,mBAAoB,WAAxB,+CACIC,oBAAqB,WAAzB,yDAEEl1L,SAAU,OAAZ,OAAY,CAAZ,kBACA,0BADA,IAEI8H,YAFJ,WAGM,IAAN,oCACM,OAAOzF,EAAOuG,MAAMtL,KAAK+K,KAAM/K,KAAKgL,KAEtCA,GANJ,WAOM,IAAN,oCAIM,OAHIhL,KAAKiL,MAAQM,IACfA,EAAYvL,KAAKiL,OAEZM,GAETR,KAbJ,WAcM,OAAO/K,KAAKkL,WAAWC,SAAWnL,KAAKkL,WAAWM,YAAc,IAElEP,MAhBJ,WAiBM,IAAN,oCACM,OAAOQ,EAAaC,OAAS,EACnC,SACA,yBAGEjJ,KA5BF,WA6BI,MAAO,CACLP,KAAM,CAAC,GAAI,OAAQ,UAAW,UAAW,UACzCgJ,WAAY,CACVC,QAAS,EACTK,YAAa,EACbG,eAAgB,CAAC,EAAG,GAAI,GAAI,IAC5BV,MAAO,GAETV,YAAa,GACbqB,UAAW,GACXH,aAAc,GACdI,WAAY,OAGhBjI,QAAS,CACPkI,aADJ,SACA,cAWM,OATA/G,EACN,0BACA,sBAAQ,OACR,eACA,WACA,cACA,yCAEA,EACaA,GAET,OAdJ,SAcA,kKACA,eACA,qCACA,SACA,sBAEA,yBANA,SASA,QACA,0DACA,KAFA,yDAGA,+FACA,eACA,mBACA,2DACA,gCAEA,mDANA,2CAHA,uDAYA,YACA,sDAGA,wBAzBA,8CA2BI2yL,YAzCJ,SAyCA,OACM13L,KAAKwG,MAAM1F,GAAKiL,UAChBxI,SAASyI,MAAM,wBAAyB/I,IAE1Cw0L,sBA7CJ,WA8CMl0L,SAASyI,MAAM,yBAEjB,WAhDJ,WAgDA,qKACA,cACA,8BACA,KACA,0IACA,uBAEA,GACA,KACA,gCACA,uCAVA,SAYA,QACA,wDACA,KAFA,yDAGA,+FACA,eACA,kBACA,qCAEA,mDALA,2CAHA,uDAWA,YACA,eACA,sDAGA,wBA5BA,OA6BA,gBA7BA,+CAgCE,QA3HF,WA2HA,qKACA,GACA,sBACA,aACA,eAJA,SAOA,eAPA,OAQA,uCACA,gDACA,kBAVA,8CAaEE,MAAO,ICpRgX,I,wBCQrXlI,EAAY,eACd,EACAlE,EACAyC,GACA,EACA,KACA,KACA,MAIa,aAAAyB,E,6CCnBf,W,oCCAA,W,mDCAM6zL,E,wBAQJ,aAAsB,IAAV3zL,EAAU,uDAAJ,GAAI,iDANU,GAMV,yBALJ,MAKI,+CAJkB,GAIlB,0BAHH,GAGG,gBAFb,MAGPE,OAAOC,OAAOrE,KAAMkE,G,YAIxBI,EAAOC,QAAUszL,G,oCCbjB,W,2CCAA,IAAI/3L,EAAS,WAAa,IAAIC,EAAIC,KAASC,EAAGF,EAAIG,eAAmBC,EAAGJ,EAAIK,MAAMD,IAAIF,EAAG,OAAOE,EAAG,QAAQ,CAACE,MAAM,CAAC,KAAON,EAAI4F,OAAOC,SAASrF,GAAG,CAAC,cAAc,SAASC,GAAQ,OAAOT,EAAI+B,KAAK/B,EAAI4F,OAAQ,UAAWnF,MAAW,CAACL,EAAG,KAAK,CAACM,YAAY,iBAAiBJ,MAAM,CAAC,KAAO,UAAUK,KAAK,UAAU,CAACX,EAAIY,GAAG,oCAAoCR,EAAG,qBAAqB,CAACW,IAAI,UAAUC,YAAYhB,EAAIiB,GAAG,CAAC,CAACC,IAAI,UAAUC,GAAG,SAASJ,GACnb,IAAIK,EAAeL,EAAIK,aACvB,MAAO,CAAChB,EAAG,OAAO,CAACI,GAAG,CAAC,OAAS,SAASC,GAAgC,OAAxBA,EAAOY,iBAAwBD,EAAapB,EAAI+3L,kBAAkB,CAAC33L,EAAG,MAAM,CAACM,YAAY,OAAO,CAACN,EAAG,YAAY,CAACE,MAAM,CAAC,KAAO,QAAQ,YAAcN,EAAIc,GAAG,kDAAkDa,MAAM,CAACC,MAAO5B,EAAIg4L,YAA+B,oBAAEn2L,SAAS,SAAUC,GAAM9B,EAAI+B,KAAK/B,EAAIg4L,YAAa,sBAAuBl2L,IAAME,WAAW,oCAAoChC,EAAIuB,GAAIvB,EAAc,YAAE,SAASulJ,GAAK,OAAOnlJ,EAAG,YAAY,CAACc,IAAIqkJ,EAAI0yC,oBAAoBv3L,YAAY,iBAAiBJ,MAAM,CAAC,MAAQilJ,EAAI0yC,oBAAoB,MAAQ1yC,EAAIzhJ,sBAAqB,IAAI,GAAG9D,EAAIuB,GAAIvB,EAAIg4L,YAAwB,cAAE,SAASv2L,GAAM,OAAOrB,EAAG,MAAM,CAACA,EAAG,KAAK,CAACJ,EAAIY,GAAGZ,EAAIa,GAAGY,EAAKC,OAAOA,WAAWtB,EAAG,MAAM,CAACM,YAAY,OAAO,CAACN,EAAG,MAAM,CAACM,YAAY,UAAU,CAACN,EAAG,WAAW,CAACE,MAAM,CAAC,KAAO,OAAO,KAAO,YAAY,MAAQN,EAAIc,GAAG,8CAA8Ca,MAAM,CAACC,MAAOH,EAAuB,mBAAEI,SAAS,SAAUC,GAAM9B,EAAI+B,KAAKN,EAAM,qBAAsBK,IAAME,WAAW,8BAA8B,KAAK5B,EAAG,MAAM,CAACM,YAAY,kBAAiBN,EAAG,MAAM,CAACM,YAAY,OAAO,CAACN,EAAG,MAAM,CAACM,YAAY,iCAAiC,CAACN,EAAG,MAAM,CAACM,YAAY,OAAO,CAACN,EAAG,QAAQ,CAAC6B,YAAY,CAAC,cAAc,SAAS,CAACjC,EAAIY,GAAGZ,EAAIa,GAAGb,EAAIc,GAAG,4CAA4C,CAACV,EAAG,WAAW,CAACuB,MAAM,CAACC,MAAO5B,EAAIg4L,YAAkB,OAAEn2L,SAAS,SAAUC,GAAM9B,EAAI+B,KAAK/B,EAAIg4L,YAAa,SAAUl2L,IAAME,WAAW,uBAAuB,CAAC5B,EAAG,IAAI,CAACM,YAAY,0BAA0BJ,MAAM,CAAC,KAAO,MAAMK,KAAK,OAAOP,EAAG,IAAI,CAACM,YAAY,kCAAkCJ,MAAM,CAAC,KAAO,OAAOK,KAAK,YAAY,KAAKP,EAAG,MAAM,CAACM,YAAY,aAAauB,YAAY,CAAC,aAAa,OAAO,cAAc,OAAO,aAAa,UAAU3B,MAAM,CAAC,KAAO,UAAUK,KAAK,UAAU,CAACP,EAAG,WAAW,CAACM,YAAY,0BAA0B4B,SAAS,CAAC,MAAQ,SAAS7B,GAAQ,OAAOT,EAAIuC,UAAU9B,MAAW,CAACT,EAAIY,GAAGZ,EAAIa,GAAGb,EAAIc,GAAG,0BAA0BV,EAAG,oBAAoB,CAACE,MAAM,CAAC,WAAa,eAAe,OAAS,oBAAoB,CAACF,EAAG,WAAW,CAACE,MAAM,CAAC,cAAc,SAAS,KAAO,YAAY,CAACN,EAAIY,GAAGZ,EAAIa,GAAGb,EAAIc,GAAG,yBAAyB,IAAI,IAAI,WAAW,IACrqE0B,EAAkB,G,uKC6EtB,GACEC,WAAY,GACZC,KAFF,WAGI,MAAO,CACLw1L,WAAY,GACZ3/B,kBAAkB,EAClBy/B,YAAa,IAAI,EAAvB,EACMv/B,UAAW,GACXt2J,KAAM,CAAC,GAAI,OAAQ,UAAW,UAAW,UACzCu2J,cAAe,CACbC,WAAW,GAEb/yJ,OAAQ,CACNC,SAAS,EACT+yJ,QAAQ,EACRC,MAAM,KAIZl2J,SAAU,OAAZ,OAAY,CAAZ,GACA,2CAEEC,QAtBF,WAuBI3C,KAAK+3L,YAAYn1L,YAAc5C,KAAK6C,OAAOC,MAAMtB,KACjDxB,KAAK+3L,YAAYroL,mBAAqB1P,KAAKiD,KAAKC,UAChDlD,KAAK+3L,YAAY50L,aAAenD,KAAKoD,eAAeC,KAAI,SAA5D,mBACA,mCACA,sBACA,4BACA,gBACA,oBACA,gBACA,qBAGIrD,KAAKk4L,iBAEP50L,QArCF,WAqCA,WACIC,SAASC,IAAI,2BAAjB,sIACA,cACA,8BACA,KACA,0IACA,uBAEA,gBACA,oBARA,6CAWEI,QAAS,CACPtB,UADJ,WACA,uBACA,+BADA,IACA,0CACA,yBAFA,8BAIMtC,KAAK+3L,YAAYC,oBAAsBh4L,KAAKi4L,WAAW,GAAGD,oBAC1Dh4L,KAAK+3L,YAAYI,kBAAoB,GACrCn4L,KAAK+3L,YAAYj0L,QAAS,EAC1B9D,KAAK2F,OAAOC,SAAU,GAExB,cAVJ,WAUA,mKACA,qCADA,wBAEA,cACA,8BACA,KACA,0IACA,uBANA,SAWA,gDACA,sHAZA,SAeA,cAfA,OAeA,EAfA,OAiBA,GACA,2DACA,+BACA,eAEA,mDAtBA,qDAyBA,uCAzBA,yBA6BA,gBA7BA,qBAgCA,gBAhCA,wBAkCA,sBAlCA,mEAqCI,UA/CJ,WA+CA,8KACA,kEADA,cACA,EADA,yBAEA,kCAFA,8CAII,cAnDJ,WAmDA,yKACA,GACA,KACA,gCACA,UACA,gBALA,SAQA,wDARA,OAQA,EARA,OASA,mCAEA,SACA,iCAEA,wBACA,wEAIA,mDAnBA,gDCpL+X,I,kCCS3X5B,EAAY,eACd,EACAlE,EACAyC,GACA,EACA,KACA,WACA,MAIa,aAAAyB,E,6CCpBf,W,6DCAA,W,6DCAA,W,kCCEA,EAAQ,QACR,IAAI4L,EAAI,EAAQ,QACZwoL,EAAa,EAAQ,QACrBtoL,EAAiB,EAAQ,QACzBG,EAAW,EAAQ,QACnBooL,EAAc,EAAQ,QACtB9nL,EAAiB,EAAQ,QACzB+nL,EAA4B,EAAQ,QACpC7nL,EAAsB,EAAQ,QAC9BP,EAAa,EAAQ,QACrBg9I,EAAS,EAAQ,QACjB3xG,EAAO,EAAQ,QACfg9I,EAAU,EAAQ,QAClBC,EAAW,EAAQ,QACnBhuK,EAAW,EAAQ,QACnBe,EAAS,EAAQ,QACjBktK,EAA2B,EAAQ,QACnCC,EAAc,EAAQ,QACtBC,EAAoB,EAAQ,QAC5Bl0L,EAAkB,EAAQ,QAE1Bm0L,EAASR,EAAW,SACpBS,EAAUT,EAAW,WACrBzzL,EAAWF,EAAgB,YAC3Bq0L,EAAoB,kBACpBC,EAA6BD,EAAoB,WACjDjoL,EAAmBJ,EAAoBK,IACvCkoL,EAAyBvoL,EAAoBO,UAAU8nL,GACvDG,EAA2BxoL,EAAoBO,UAAU+nL,GAEzDG,EAAO,MACPC,EAAYnsL,MAAM,GAElBosL,EAAkB,SAAUC,GAC9B,OAAOF,EAAUE,EAAQ,KAAOF,EAAUE,EAAQ,GAAKlxB,OAAO,qBAAuBkxB,EAAQ,KAAM,QAGjGC,EAAgB,SAAUC,GAC5B,IACE,OAAOr/B,mBAAmBq/B,GAC1B,MAAO5+K,GACP,OAAO4+K,IAIPn/B,EAAc,SAAUo/B,GAC1B,IAAIz0L,EAASy0L,EAAG/gL,QAAQygL,EAAM,KAC1BG,EAAQ,EACZ,IACE,OAAOn/B,mBAAmBn1J,GAC1B,MAAO4V,GACP,MAAO0+K,EACLt0L,EAASA,EAAO0T,QAAQ2gL,EAAgBC,KAAUC,GAEpD,OAAOv0L,IAIP00L,EAAO,eAEPhhL,EAAU,CACZ,IAAK,MACL,IAAK,MACL,IAAK,MACL,IAAK,MACL,IAAK,MACL,MAAO,KAGLihL,EAAW,SAAU/3K,GACvB,OAAOlJ,EAAQkJ,IAGbg4K,EAAY,SAAUH,GACxB,OAAO1kL,mBAAmB0kL,GAAI/gL,QAAQghL,EAAMC,IAG1CE,EAAoB,SAAU70L,EAAQwT,GACxC,GAAIA,EAAO,CACT,IAEIshL,EAAWjsB,EAFXksB,EAAavhL,EAAMnF,MAAM,KACzBjR,EAAQ,EAEZ,MAAOA,EAAQ23L,EAAWpuL,OACxBmuL,EAAYC,EAAW33L,KACnB03L,EAAUnuL,SACZkiK,EAAQisB,EAAUzmL,MAAM,KACxBrO,EAAOuI,KAAK,CACVrM,IAAKm5J,EAAYwT,EAAM/0J,SACvBlX,MAAOy4J,EAAYwT,EAAMp5J,KAAK,WAOpC6E,EAAqB,SAAUd,GACjCvY,KAAK+5L,QAAQruL,OAAS,EACtBkuL,EAAkB55L,KAAK+5L,QAASxhL,IAG9ByhL,EAA0B,SAAU9zL,EAAQ+zL,GAC9C,GAAI/zL,EAAS+zL,EAAU,MAAM9gL,UAAU,yBAGrC+gL,EAA0B5B,GAA0B,SAAkBpjJ,EAAQilJ,GAChFtpL,EAAiB7Q,KAAM,CACrBkC,KAAM62L,EACNqB,SAAU1B,EAAYM,EAAuB9jJ,GAAQ6kJ,SACrDI,KAAMA,MAEP,YAAY,WACb,IAAIr3L,EAAQm2L,EAAyBj5L,MACjCm6L,EAAOr3L,EAAMq3L,KACbE,EAAOv3L,EAAMs3L,SAAS7zJ,OACtBqnI,EAAQysB,EAAK14L,MAGf,OAFG04L,EAAKzpD,OACRypD,EAAK14L,MAAiB,SAATw4L,EAAkBvsB,EAAM3sK,IAAe,WAATk5L,EAAoBvsB,EAAMjsK,MAAQ,CAACisK,EAAM3sK,IAAK2sK,EAAMjsK,QACxF04L,KAKPC,EAA6B,WAC/BpqL,EAAWlQ,KAAMs6L,EAA4BxB,GAC7C,IAGIyB,EAAgBH,EAAU7zJ,EAAM8zJ,EAAMG,EAAeC,EAAWhiI,EAAO3iD,EAAQ7U,EAH/EgO,EAAOgK,UAAUvN,OAAS,EAAIuN,UAAU,QAAK9U,EAC7C6U,EAAOhZ,KACP+5L,EAAU,GAUd,GAPAlpL,EAAiBmI,EAAM,CACrB9W,KAAM42L,EACNiB,QAASA,EACTzgL,UAAW,aACXD,mBAAoBA,SAGTlV,IAAT8K,EACF,GAAIub,EAASvb,GAEX,GADAsrL,EAAiB5B,EAAkB1pL,GACL,oBAAnBsrL,EAA+B,CACxCH,EAAWG,EAAe/gL,KAAKvK,GAC/Bs3B,EAAO6zJ,EAAS7zJ,KAChB,QAAS8zJ,EAAO9zJ,EAAK/sB,KAAK4gL,IAAWxpD,KAAM,CAGzC,GAFA4pD,EAAgB9B,EAAYF,EAAS6B,EAAK14L,QAC1C84L,EAAYD,EAAcj0J,MAEvBkyB,EAAQgiI,EAAUjhL,KAAKghL,IAAgB5pD,OACvC96H,EAAS2kL,EAAUjhL,KAAKghL,IAAgB5pD,OACxC6pD,EAAUjhL,KAAKghL,GAAe5pD,KAC/B,MAAMz3H,UAAU,mCAClB4gL,EAAQzsL,KAAK,CAAErM,IAAKw3D,EAAM92D,MAAQ,GAAIA,MAAOmU,EAAOnU,MAAQ,WAEzD,IAAKV,KAAOgO,EAAUi+I,EAAOj+I,EAAMhO,IAAM84L,EAAQzsL,KAAK,CAAErM,IAAKA,EAAKU,MAAOsN,EAAKhO,GAAO,UAE5F24L,EAAkBG,EAAyB,kBAAT9qL,EAAuC,MAAnBA,EAAKqD,OAAO,GAAarD,EAAK3D,MAAM,GAAK2D,EAAOA,EAAO,KAK/GyrL,EAA2BJ,EAA2B7/K,UAE1D49K,EAAYqC,EAA0B,CAGpCC,OAAQ,SAAgBtrL,EAAM1N,GAC5Bq4L,EAAwB/gL,UAAUvN,OAAQ,GAC1C,IAAI5I,EAAQk2L,EAAuBh5L,MACnC8C,EAAMi3L,QAAQzsL,KAAK,CAAErM,IAAKoO,EAAO,GAAI1N,MAAOA,EAAQ,KACpDmB,EAAMwW,aAIR,OAAU,SAAUjK,GAClB2qL,EAAwB/gL,UAAUvN,OAAQ,GAC1C,IAAI5I,EAAQk2L,EAAuBh5L,MAC/B+5L,EAAUj3L,EAAMi3L,QAChB94L,EAAMoO,EAAO,GACblN,EAAQ,EACZ,MAAOA,EAAQ43L,EAAQruL,OACjBquL,EAAQ53L,GAAOlB,MAAQA,EAAK84L,EAAQ/qL,OAAO7M,EAAO,GACjDA,IAEPW,EAAMwW,aAIRjU,IAAK,SAAagK,GAChB2qL,EAAwB/gL,UAAUvN,OAAQ,GAI1C,IAHA,IAAIquL,EAAUf,EAAuBh5L,MAAM+5L,QACvC94L,EAAMoO,EAAO,GACblN,EAAQ,EACLA,EAAQ43L,EAAQruL,OAAQvJ,IAC7B,GAAI43L,EAAQ53L,GAAOlB,MAAQA,EAAK,OAAO84L,EAAQ53L,GAAOR,MAExD,OAAO,MAITy8C,OAAQ,SAAgB/uC,GACtB2qL,EAAwB/gL,UAAUvN,OAAQ,GAK1C,IAJA,IAAIquL,EAAUf,EAAuBh5L,MAAM+5L,QACvC94L,EAAMoO,EAAO,GACbtK,EAAS,GACT5C,EAAQ,EACLA,EAAQ43L,EAAQruL,OAAQvJ,IACzB43L,EAAQ53L,GAAOlB,MAAQA,GAAK8D,EAAOuI,KAAKysL,EAAQ53L,GAAOR,OAE7D,OAAOoD,GAIToL,IAAK,SAAad,GAChB2qL,EAAwB/gL,UAAUvN,OAAQ,GAC1C,IAAIquL,EAAUf,EAAuBh5L,MAAM+5L,QACvC94L,EAAMoO,EAAO,GACblN,EAAQ,EACZ,MAAOA,EAAQ43L,EAAQruL,OACrB,GAAIquL,EAAQ53L,KAASlB,MAAQA,EAAK,OAAO,EAE3C,OAAO,GAIT6P,IAAK,SAAazB,EAAM1N,GACtBq4L,EAAwB/gL,UAAUvN,OAAQ,GAQ1C,IAPA,IAMIkiK,EANA9qK,EAAQk2L,EAAuBh5L,MAC/B+5L,EAAUj3L,EAAMi3L,QAChB1lC,GAAQ,EACRpzJ,EAAMoO,EAAO,GACbsQ,EAAMhe,EAAQ,GACdQ,EAAQ,EAELA,EAAQ43L,EAAQruL,OAAQvJ,IAC7ByrK,EAAQmsB,EAAQ53L,GACZyrK,EAAM3sK,MAAQA,IACZozJ,EAAO0lC,EAAQ/qL,OAAO7M,IAAS,IAEjCkyJ,GAAQ,EACRuZ,EAAMjsK,MAAQge,IAIf00I,GAAO0lC,EAAQzsL,KAAK,CAAErM,IAAKA,EAAKU,MAAOge,IAC5C7c,EAAMwW,aAIRnU,KAAM,WACJ,IAIIyoK,EAAOgtB,EAAcC,EAJrB/3L,EAAQk2L,EAAuBh5L,MAC/B+5L,EAAUj3L,EAAMi3L,QAEhBzuL,EAAQyuL,EAAQzuL,QAGpB,IADAyuL,EAAQruL,OAAS,EACZmvL,EAAa,EAAGA,EAAavvL,EAAMI,OAAQmvL,IAAc,CAE5D,IADAjtB,EAAQtiK,EAAMuvL,GACTD,EAAe,EAAGA,EAAeC,EAAYD,IAChD,GAAIb,EAAQa,GAAc35L,IAAM2sK,EAAM3sK,IAAK,CACzC84L,EAAQ/qL,OAAO4rL,EAAc,EAAGhtB,GAChC,MAGAgtB,IAAiBC,GAAYd,EAAQzsL,KAAKsgK,GAEhD9qK,EAAMwW,aAGRrU,QAAS,SAAiBrD,GACxB,IAGIgsK,EAHAmsB,EAAUf,EAAuBh5L,MAAM+5L,QACvCe,EAAgBv/I,EAAK35C,EAAUqX,UAAUvN,OAAS,EAAIuN,UAAU,QAAK9U,EAAW,GAChFhC,EAAQ,EAEZ,MAAOA,EAAQ43L,EAAQruL,OACrBkiK,EAAQmsB,EAAQ53L,KAChB24L,EAAcltB,EAAMjsK,MAAOisK,EAAM3sK,IAAKjB,OAI1CqiB,KAAM,WACJ,OAAO,IAAI63K,EAAwBl6L,KAAM,SAG3C0lB,OAAQ,WACN,OAAO,IAAIw0K,EAAwBl6L,KAAM,WAG3C+5L,QAAS,WACP,OAAO,IAAIG,EAAwBl6L,KAAM,aAE1C,CAAEgb,YAAY,IAGjB/K,EAASyqL,EAA0B/1L,EAAU+1L,EAAyBX,SAItE9pL,EAASyqL,EAA0B,YAAY,WAC7C,IAGI9sB,EAHAmsB,EAAUf,EAAuBh5L,MAAM+5L,QACvCh1L,EAAS,GACT5C,EAAQ,EAEZ,MAAOA,EAAQ43L,EAAQruL,OACrBkiK,EAAQmsB,EAAQ53L,KAChB4C,EAAOuI,KAAKqsL,EAAU/rB,EAAM3sK,KAAO,IAAM04L,EAAU/rB,EAAMjsK,QACzD,OAAOoD,EAAOyP,KAAK,OACpB,CAAEwG,YAAY,IAEjBzK,EAAe+pL,EAA4BxB,GAE3ClpL,EAAE,CAAEG,QAAQ,EAAMwL,QAASzL,GAAkB,CAC3CvK,gBAAiB+0L,IAKdxqL,GAAmC,mBAAV8oL,GAA0C,mBAAXC,GAC3DjpL,EAAE,CAAEG,QAAQ,EAAMiL,YAAY,EAAMO,QAAQ,GAAQ,CAClDy3F,MAAO,SAAe5gG,GACpB,IACInD,EAAMg1C,EAAM82I,EADZ75K,EAAO,CAAC9O,GAkBV,OAhBE6G,UAAUvN,OAAS,IACrBuD,EAAOgK,UAAU,GACbuR,EAASvb,KACXg1C,EAAOh1C,EAAKg1C,KACRs0I,EAAQt0I,KAAU60I,IACpBiC,EAAU9rL,EAAK8rL,QAAU,IAAIlC,EAAQ5pL,EAAK8rL,SAAW,IAAIlC,EACpDkC,EAAQ5qL,IAAI,iBACf4qL,EAAQjqL,IAAI,eAAgB,mDAE9B7B,EAAOsc,EAAOtc,EAAM,CAClBg1C,KAAMw0I,EAAyB,EAAGnzL,OAAO2+C,IACzC82I,QAAStC,EAAyB,EAAGsC,OAI3C75K,EAAK5T,KAAK2B,IACH2pL,EAAOt9K,MAAMtb,KAAMkhB,MAKlC5c,EAAOC,QAAU,CACfgB,gBAAiB+0L,EACjB1pL,SAAUooL,I,8CCzVZ,IAAIR,EAAW,EAAQ,QACnBG,EAAoB,EAAQ,QAEhCr0L,EAAOC,QAAU,SAAUi1L,GACzB,IAAIe,EAAiB5B,EAAkBa,GACvC,GAA6B,mBAAlBe,EACT,MAAMphL,UAAU7T,OAAOk0L,GAAM,oBAC7B,OAAOhB,EAAS+B,EAAe/gL,KAAKggL,M,oCCPxC,W,oCCAA,W,oCCAA,W,oCCAA,W,kCCAA,W,kCCAA,W,yCCAA,IAAI15L,EAAS,WAAa,IAAIC,EAAIC,KAASC,EAAGF,EAAIG,eAAmBC,EAAGJ,EAAIK,MAAMD,IAAIF,EAAG,OAAOE,EAAG,MAAM,CAACM,YAAY,OAAO,CAACN,EAAG,MAAM,CAACM,YAAY,UAAU,CAACN,EAAG,OAAO,CAACE,MAAM,CAAC,oBAAoB,mBAAmB,iBAAiB,KAAK,CAACF,EAAG,MAAM,CAACA,EAAG,MAAM,CAACM,YAAY,6EAA6E,CAACN,EAAG,KAAK,CAACM,YAAY,0BAA0B,CAACV,EAAIY,GAAG,IAAIZ,EAAIa,GAAGb,EAAIc,GAAG,wDAAwD,SAASV,EAAG,MAAM,CAACM,YAAY,UAAU,CAACN,EAAG,qBAAqB,CAACW,IAAI,UAAUC,YAAYhB,EAAIiB,GAAG,CAAC,CAACC,IAAI,UAAUC,GAAG,SAASJ,GAC9lB,IAAIK,EAAeL,EAAIK,aACvB,MAAO,CAAChB,EAAG,OAAO,CAACI,GAAG,CAAC,OAAS,SAASC,GAAgC,OAAxBA,EAAOY,iBAAwBD,EAAapB,EAAIi7L,sBAAsB,CAAC76L,EAAG,KAAK,CAACA,EAAG,QAAQ,CAACJ,EAAIY,GAAGZ,EAAIa,GAAGb,EAAIc,GAAG,gCAAgCd,EAAIuB,GAAIvB,EAAI+F,KAAU,OAAE,SAAStE,GAAM,OAAOrB,EAAG,MAAM,CAACc,IAAIO,EAAKy2J,YAAY,CAAC93J,EAAG,MAAM,CAACM,YAAY,OAAO,CAACN,EAAG,MAAM,CAACM,YAAY,YAAY,CAACN,EAAG,qBAAqB,CAACE,MAAM,CAAC,KAAO,YAAY,MAAQ,kBAAkBU,YAAYhB,EAAIiB,GAAG,CAAC,CAACC,IAAI,UAAUC,GAAG,SAASJ,GAC7c,IAAIoF,EAASpF,EAAIoF,OACbC,EAASrF,EAAIqF,OACjB,MAAO,CAAChG,EAAG,WAAW,CAACE,MAAM,CAAC,KAAO,OAAO,YAAcmB,EAAKC,OAAO,MAAQ0E,EAClD,6CACA,KAAK,WAAaD,EAAO,KAAO,YAAY,MAAQnG,EAAIc,GAAG,uDAAuDa,MAAM,CAACC,MAAOH,EAAW,OAAEI,SAAS,SAAUC,GAAM9B,EAAI+B,KAAKN,EAAM,SAAUK,IAAME,WAAW,qBAAqB,MAAK,MAAS,GAAG5B,EAAG,MAAM,CAACM,YAAY,YAAY,CAACN,EAAG,qBAAqB,CAACE,MAAM,CAAC,KAAO,YAAY,MAAQ,kBAAkBU,YAAYhB,EAAIiB,GAAG,CAAC,CAACC,IAAI,UAAUC,GAAG,SAASJ,GACvZ,IAAIoF,EAASpF,EAAIoF,OACbC,EAASrF,EAAIqF,OAC3C,MAAO,CAAChG,EAAG,WAAW,CAACE,MAAM,CAAC,KAAO,OAAO,YAAcmB,EAAKC,OAAO,MAAQ0E,EAClD,6CACA,KAAK,WAAaD,EAAO,KAAO,YAAY,MAAQnG,EAAIc,GAC1D,8DACCa,MAAM,CAACC,MAAOH,EAAgB,YAAEI,SAAS,SAAUC,GAAM9B,EAAI+B,KAAKN,EAAM,cAAeK,IAAME,WAAW,0BAA0B,MAAK,MAAS,UAAS5B,EAAG,KAAK,CAACA,EAAG,QAAQ,CAACJ,EAAIY,GAAGZ,EAAIa,GAAGb,EAAIc,GAAG,kEAAkEV,EAAG,MAAM,CAACM,YAAY,wBAAwB,CAACN,EAAG,MAAM,CAACM,YAAY,aAAa,CAACN,EAAG,WAAW,CAACE,MAAM,CAAC,OAAS,GAAG,KAAON,EAAI6L,YAAY,CAACzL,EAAG,kBAAkB,CAACM,YAAY,QAAQJ,MAAM,CAAC,KAAO,SAAS,MAAQN,EAAIc,GAChe,2DACGV,EAAG,kBAAkB,CAACM,YAAY,QAAQJ,MAAM,CAAC,KAAO,eAAe,MAAQN,EAAIc,GACtF,6DACCE,YAAYhB,EAAIiB,GAAG,CAAC,CAACC,IAAI,UAAUC,GAAG,SAASuJ,GAAO,OAAO1K,EAAIuB,GAAImJ,EAAMC,IAAY,UAAE,SAASwtJ,GAAS,OAAO/3J,EAAG,aAAa,CAACc,IAAIi3J,EAAQC,gBAAgB93J,MAAM,CAAC,MAAQ63J,EAAQA,SAASx2J,MAAM,CAACC,MAAOu2J,EAAc,OAAEt2J,SAAS,SAAUC,GAAM9B,EAAI+B,KAAKo2J,EAAS,SAAUr2J,IAAME,WAAW,mBAAmB,CAAChC,EAAIY,GAAG,IAAIZ,EAAIa,GAAGs3J,EAAQA,SAAS,aAAY,MAAK,MAAS,IAAI,KAAK/3J,EAAG,MAAM,CAACM,YAAY,iCAAiC,CAACN,EAAG,MAAM,CAACM,YAAY,OAAO,CAACN,EAAG,QAAQ,CAAC6B,YAAY,CAAC,cAAc,SAAS,CAACjC,EAAIY,GAAGZ,EAAIa,GAAGb,EAAIc,GAAG,4BAA4B,CAACV,EAAG,WAAW,CAACuB,MAAM,CAACC,MAAO5B,EAAI+F,KAAW,OAAElE,SAAS,SAAUC,GAAM9B,EAAI+B,KAAK/B,EAAI+F,KAAM,SAAUjE,IAAME,WAAW,gBAAgB,CAAC5B,EAAG,IAAI,CAACM,YAAY,0BAA0BJ,MAAM,CAAC,KAAO,MAAMK,KAAK,OAAOP,EAAG,IAAI,CAACM,YAAY,kCAAkCJ,MAAM,CAAC,KAAO,OAAOK,KAAK,YAAY,GAAGP,EAAG,MAAM,CAACM,YAAY,aAAauB,YAAY,CAAC,aAAa,OAAO,cAAc,OAAO,aAAa,UAAU3B,MAAM,CAAC,KAAO,UAAUK,KAAK,UAAU,CAACP,EAAG,cAAc,CAACM,YAAY,QAAQJ,MAAM,CAAC,GAAK,CAAEgP,KAAM,yBAA0B,CAAClP,EAAG,WAAW,CAACM,YAAY,2BAA2B,CAACV,EAAIY,GAAGZ,EAAIa,GAAGb,EAAIc,GAAG,2BAA2B,GAAGV,EAAG,WAAW,CAACE,MAAM,CAAC,cAAc,SAAS,KAAO,YAAY,CAACN,EAAIY,GAAG,IAAIZ,EAAIa,GAAGb,EAAIc,GAAG,qBAAqB,QAAQ,IAAI,WAAW,QAAQ,MACr2C0B,EAAkB,G,4FCoItB,GACEC,WAAY,GACZC,KAFF,WAGI,MAAO,CACLqD,KAAM,CACJy/I,MAAO,EACP01C,UAAW,GACX1iC,UAAW,EACXz0J,QAAQ,EACRuhJ,SAAS,GAEXz5I,UAAW,GACXysJ,aAAc,KAGlB31J,SAAU,OAAZ,OAAY,CAAZ,GACA,oCAEE,QAlBF,WAkBA,+JACA,cACA,8BACA,KACA,0IACA,uBAGA,sDACA,2BACA,gBACA,UACA,mBAZA,SAeA,qBAfA,OAgBA,gBAhBA,8CAkBEY,QApCF,aAqCEM,QAAS,CACPm1J,WADJ,WAEM,IAAI1qF,EAAO,IAAInmE,KACXqd,EACV,gBACA,KACA,gBACA,IACA,YACA,IACA,aACA,IACA,eACA,IACA,eACM,OAAOA,GAET,iBAjBJ,WAiBA,wKACA,oBADA,8CAGI,gBApBJ,WAoBA,qKACA,GACA,KACA,gCACA,WAJA,SAMA,QACA,2CACA,KAFA,yDAGA,iHACA,sBACA,uCACA,gCAFA,iBAKA,YALA,IAKA,sCAEA,KAFA,iBAGA,gBAHA,IAGA,qCACA,OACA,CACA,kCACA,kBACA,YARA,8BAaA,iBACA,CACA,uBACA,QACA,sBACA,cAvBA,oCAgCA,mDAjCA,2CAHA,uDAuCA,YACA,sDAGA,wBAjDA,8CAmDI,kBAvEJ,WAuEA,+JACA,cACA,8BACA,KACA,0IACA,uBALA,SAOA,mBAPA,OAQA,gBARA,8CAUI,eAjFJ,WAiFA,0KACA,iBACA,wCACA,0BACA,kBACA,GACA,KACA,sBACA,gCACA,qBACA,yCACA,wBAEA,oBACA,eAIA,KAlBA,iBAmBA,cAnBA,IAmBA,qCACA,QACA,KACA,gBAtBA,qCAyBA,GACA,QACA,SA3BA,UA8BA,QACA,oCACA,KAFA,yDAEA,kGACA,kBADA,oBAEA,aAFA,gBAGA,kFAHA,sCAKA,QACA,0CACA,KAFA,yDAGA,0HACA,kBADA,iBAEA,wCACA,uBAHA,iBAMA,aANA,IAMA,qCACA,kBAPA,+CAWA,cAXA,IAWA,qCACA,oBACA,sBACA,kBACA,wBAfA,+CAiBA,aAjBA,IAiBA,qCACA,uBAlBA,qCAoBA,GACA,aACA,gCACA,sCACA,2BAGA,0CACA,eA5BA,UA6BA,QACA,yCACA,KAFA,yDAGA,8GACA,eACA,kBAFA,wBAGA,sCAKA,GACA,gCACA,sCAEA,4BAZA,SAeA,QACA,KACA,iCACA,GAEA,KALA,yDAMA,+FACA,eACA,mBACA,gBACA,UACA,iCAEA,8CAEA,gBACA,SACA,0BAXA,2CANA,uDAqBA,YACA,gBACA,SACA,6BAIA,wBA3CA,OAiDA,KAjDA,iBAkDA,cAlDA,IAkDA,qCACA,oBACA,uBACA,mBACA,gBACA,iBACA,YAxDA,sDA2DA,mDA3DA,4CAHA,uDAiEA,YACA,sDAGA,wBAlGA,gCAsGA,mDAtGA,4CAHA,uDA4GA,YACA,sDAGA,wBArHA,8BAwHA,mDAxHA,4CAFA,uDA9BA,iDC7Q4X,I,wBCQxXvhB,EAAY,eACd,EACAlE,EACAyC,GACA,EACA,KACA,KACA,MAIa,aAAAyB,E,2CCnBf,W,iDCAMk3L,E,wBAYJ,aAAsB,IAAVh3L,EAAU,uDAAJ,GAAI,yBAVd,GAUc,iBATb,GASa,uBARN,IAQM,sBAPP,IAOO,kBANZ,GAMY,mBALV,IAKU,uBAJP,GAIO,kBAHX,IAGW,sBAFP,IAGbE,OAAOC,OAAOrE,KAAMkE,G,YAIxBI,EAAOC,QAAU22L,G,yCCjBjB,IAAIp7L,EAAS,WAAa,IAAIC,EAAIC,KAASC,EAAGF,EAAIG,eAAmBC,EAAGJ,EAAIK,MAAMD,IAAIF,EAAG,OAAOE,EAAG,QAAQ,CAACE,MAAM,CAAC,KAAON,EAAIm0L,WAAW3zL,GAAG,CAAC,cAAc,SAASC,GAAQT,EAAIm0L,UAAU1zL,KAAU,CAACL,EAAG,KAAK,CAACM,YAAY,iBAAiBJ,MAAM,CAAC,KAAO,UAAUK,KAAK,UAAU,CAACX,EAAIY,GAAG,IAAIZ,EAAIa,GAAGb,EAAIc,GAAG,yCAAyC,OAAOV,EAAG,qBAAqB,CAACW,IAAI,WAAWC,YAAYhB,EAAIiB,GAAG,CAAC,CAACC,IAAI,UAAUC,GAAG,SAASJ,GACnb,IAAIK,EAAeL,EAAIK,aACvB,MAAO,CAAChB,EAAG,OAAO,CAACI,GAAG,CAAC,OAAS,SAASC,GAAgC,OAAxBA,EAAOY,iBAAwBD,EAAapB,EAAIo0L,YAAY,CAACh0L,EAAG,MAAM,CAACM,YAAY,iBAAiBV,EAAIuB,GAAIvB,EAAI+F,KAAiB,cAAE,SAAStE,GAAM,OAAOrB,EAAG,MAAM,CAACc,IAAIO,EAAKy2J,WAAWjyJ,MAAMjG,EAAIkG,OAAO,CAAC9F,EAAG,qBAAqB,CAACE,MAAM,CAAC,KAAON,EAAIc,GAAG,0CAA0C,MAAQ,YAAYE,YAAYhB,EAAIiB,GAAG,CAAC,CAACC,IAAI,UAAUC,GAAG,SAASJ,GACrZ,IAAIoF,EAASpF,EAAIoF,OACbC,EAASrF,EAAIqF,OACjB,MAAO,CAAChG,EAAG,WAAW,CAACE,MAAM,CAAC,KAAO,OAAO,MAAQ8F,EAASpG,EAAIqG,cAAgB,KAAK,WAAaF,EAAO,YAAc1E,EAAKC,OAAO,MAAQ1B,EAAIc,GAAG,2CAA2Ca,MAAM,CAACC,MAAOH,EAA4B,wBAAEI,SAAS,SAAUC,GAAM9B,EAAI+B,KAAKN,EAAM,0BAA2BK,IAAME,WAAW,sCAAsC,MAAK,MAAS,MAAK,GAAG5B,EAAG,MAAM,CAACM,YAAY,iCAAiC,CAACN,EAAG,MAAM,CAACM,YAAY,OAAO,CAACN,EAAG,QAAQ,CAAC6B,YAAY,CAAC,cAAc,SAAS,CAACjC,EAAIY,GAAGZ,EAAIa,GAAGb,EAAIc,GAAG,2BAA2B,CAACV,EAAG,WAAW,CAACuB,MAAM,CAACC,MAAO5B,EAAI+F,KAAW,OAAElE,SAAS,SAAUC,GAAM9B,EAAI+B,KAAK/B,EAAI+F,KAAM,SAAUjE,IAAME,WAAW,gBAAgB,CAAC5B,EAAG,IAAI,CAACM,YAAY,0BAA0BJ,MAAM,CAAC,KAAO,MAAMK,KAAK,OAAOP,EAAG,IAAI,CAACM,YAAY,kCAAkCJ,MAAM,CAAC,KAAO,OAAOK,KAAK,YAAY,GAAGP,EAAG,MAAM,CAACM,YAAY,aAAauB,YAAY,CAAC,aAAa,OAAO,cAAc,OAAO,aAAa,UAAU3B,MAAM,CAAC,KAAO,UAAUK,KAAK,UAAU,CAACP,EAAG,WAAW,CAACM,YAAY,0BAA0B4B,SAAS,CAAC,MAAQ,SAAS7B,GAAQ,OAAOT,EAAIq0L,gBAAgB,CAACr0L,EAAIY,GAAGZ,EAAIa,GAAGb,EAAIc,GAAG,0BAA0BV,EAAG,WAAW,CAACE,MAAM,CAAC,cAAc,SAAS,KAAO,YAAY,CAACN,EAAIY,GAAGZ,EAAIa,GAAGb,EAAIc,GAAG,yBAAyB,aAAa,IACxxC0B,EAAkB,G,kCCwDtB,GACEC,WAAY,GACZC,KAFF,WAGI,MAAO,CACL2D,cAAepG,KAAKa,GAAG,wBACvBoF,MAAO,qBACPH,KAAM,CACJq1L,mBAAoB,EACpBC,iBAAkB,GAClBt3L,QAAQ,EACRy0J,UAAW,GAEbg8B,QAAS,CACP4G,mBAAoB,EACpBC,iBAAkB,GAClBt3L,QAAQ,EACRy0J,UAAW,GAEbi8B,SAAU,CACRC,aAAa,GAEfj8B,UAAW,GACXt2J,KAAM,CAAC,GAAI,OAAQ,UAAW,UAAW,UACzCu2J,cAAe,CACbC,WAAW,GAEbw7B,WAAW,IAGf5wL,QA7BF,WA6BA,WACIC,SAASC,IAAI,sBAAjB,wJACA,eACA,SACA,cACA,8BACA,KACA,0IACA,uBAEA,gBACA,eAVA,mGAaEI,QAAS,CACPwwL,WADJ,WAEMp0L,KAAKk0L,WAAY,EACjBl0L,KAAKwG,MAAMkuL,SAAShuL,SAEtB,QALJ,WAKA,+JACA,oBADA,SAEA,QACA,2DACA,KAFA,yDAGA,+FACA,eACA,mBACA,2DACA,eACA,gCAEA,mDAPA,2CAHA,uDAaA,YACA,sDAGA,wBAnBA,gDC9G0X,I,yBCQtX1C,EAAY,eACd,EACAlE,EACAyC,GACA,EACA,KACA,KACA,MAIa,aAAAyB,E,kDCnBf,IAAIlE,EAAS,WAAa,IAAIC,EAAIC,KAASC,EAAGF,EAAIG,eAAmBC,EAAGJ,EAAIK,MAAMD,IAAIF,EAAG,OAAOE,EAAG,MAAM,CAACM,YAAY,OAAO,CAACN,EAAG,MAAM,CAACM,YAAY,UAAU,CAACN,EAAG,MAAM,CAACM,YAAY,kBAAkB,CAACN,EAAG,WAAW,CAACE,MAAM,CAAC,KAAO,UAAU,MAAQ,IAAIgC,SAAS,CAAC,MAAQ,SAAS7B,GAAQ,OAAOT,EAAIs7L,iBAAiB,CAACl7L,EAAG,IAAI,CAACM,YAAY,2BAA2BJ,MAAM,CAAC,KAAO,SAASK,KAAK,UAAUX,EAAIY,GAAG,IAAIZ,EAAIa,GAAGb,EAAIc,GAAG,oBAAoB,QAAQ,GAAGV,EAAG,MAAM,CAACE,MAAM,CAAC,IAAM,kBAAkBF,EAAG,eAAe,CAACW,IAAI,WAAWT,MAAM,CAAC,eAAc,EAAM,gBAAe,EAAK,mBAAkB,EAAK,iBAAgB,EAAK,8BAA8B,KAAK,SAAW,UAAU,cAAc,EAAE,qBAAoB,EAAM,aAAa,KAAK,kBAAkB,YAAY,oBAAoB,SAASE,GAAG,CAAC,SAAW,SAASC,GAAQ,OAAOT,EAAIy4B,WAAWh4B,IAAS,qBAAuB,SAASA,GAAQ,OAAOT,EAAIu7L,wBAAwB,aAAe,SAAS96L,GAAQ,OAAOT,EAAIw7L,aAAa/6L,MAAW,CAACL,EAAG,UAAU,CAACE,MAAM,CAAC,KAAO,eAAeK,KAAK,eAAe,CAACP,EAAG,WAAW,CAAC6B,YAAY,CAAC,MAAQ,QAAQ3B,MAAM,CAAC,OAAS,GAAG,KAAON,EAAIqqK,UAAU,CAACjqK,EAAG,kBAAkB,CAACE,MAAM,CAAC,KAAO,eAAe,MAAQL,KAAKa,GAAG,yCAAyC,YAAY,OAAOV,EAAG,kBAAkB,CAACE,MAAM,CAAC,KAAO,gBAAgB,MAAQL,KAAKa,GAAG,sDAAsD,YAAY,OAAOV,EAAG,kBAAkB,CAACE,MAAM,CAAC,KAAO,mBAAmB,MAAQL,KAAKa,GAAG,0DAA0D,YAAY,OAAOV,EAAG,kBAAkB,CAACE,MAAM,CAAC,KAAO,kBAAkB,MAAQL,KAAKa,GAAG,oDAAoD,YAAY,OAAOV,EAAG,kBAAkB,CAACE,MAAM,CAAC,KAAO,SAAS,MAAQL,KAAKa,GAAG,gDAAgD,YAAY,OAAOV,EAAG,kBAAkB,CAACE,MAAM,CAAC,KAAO,QAAQ,MAAQL,KAAKa,GAAG,iDAAiD,YAAY,OAAOV,EAAG,kBAAkB,CAACE,MAAM,CAAC,KAAO,eAAe,MAAQL,KAAKa,GAAG,wDAAwD,YAAY,OAAOV,EAAG,kBAAkB,CAACE,MAAM,CAAC,KAAO,cAAc,MAAQL,KAAKa,GAAG,sDAAsD,YAAY,QAAQ,IAAI,MAAM,MAC7sE0B,EAAkB,G,8CCuFtB,GACE,WAAF,CACI,YAAJ,QAEE,KAJF,WAKI,MAAJ,CACM,MAAN,EACM,KAAN,GACM,QAAN,KAGE,QAXF,WAWI,IAAJ,OAAI,OAAJ,6IACA,cACA,8BACA,KACA,0IACA,uBAEA,uBAPA,SAQA,kCARA,OASA,gBATA,8CAWE,QAAF,CACI,WADJ,SACA,GAAM,IAAN,OAAM,OAAN,qDAAQ,IAAR,EAAQ,OAAR,iFACA,GACA,KACA,gCACA,WAJA,SAOA,QACA,sDACA,KAFA,yDAGA,+FACA,kBACA,+BAGA,mDALA,2CAHA,uDAWA,YACkB,EAAlB,oDAGA,wBAtBA,8CAwBI,YAzBJ,WA0BM,KAAN,gCCxI8X,I,YCO1XyB,EAAY,eACd,EACAlE,EACAyC,GACA,EACA,KACA,KACA,MAIa,aAAAyB,E,0DClBTw3L,E,wBAcJ,aAAsB,IAAVt3L,EAAU,uDAAJ,GAAI,uCAZA,GAYA,yBAXJ,IAWI,iBAVb,GAUa,2BATF,IASE,gBARb,IAQa,mBAPV,IAOU,mBANV,GAMU,kBALX,GAKW,sBAHP,MAGO,uBAFN,MAGdE,OAAOC,OAAOrE,KAAMkE,G,YAIxBI,EAAOC,QAAUi3L,G,kCCnBjB,W,yCCAA,IAAI17L,EAAS,WAAa,IAAIC,EAAIC,KAASC,EAAGF,EAAIG,eAAmBC,EAAGJ,EAAIK,MAAMD,IAAIF,EAAG,OAAOE,EAAG,QAAQ,CAACE,MAAM,CAAC,KAAON,EAAIO,UAAU,WAAY,IAAQ,CAACH,EAAG,KAAK,CAACM,YAAY,iBAAiBJ,MAAM,CAAC,KAAO,UAAUK,KAAK,UAAU,CAACX,EAAIY,GAAG,IAAIZ,EAAIa,GAAGb,EAAI0D,OAAO,OAAOtD,EAAG,qBAAqB,CAACW,IAAI,UAAUC,YAAYhB,EAAIiB,GAAG,CAAC,CAACC,IAAI,UAAUC,GAAG,SAASJ,GACrW,IAAIK,EAAeL,EAAIK,aACvB,MAAO,CAAChB,EAAG,OAAO,CAACI,GAAG,CAAC,OAAS,SAASC,GAAgC,OAAxBA,EAAOY,iBAAwBD,EAAapB,EAAIolJ,WAAW,CAAChlJ,EAAG,MAAM,CAACM,YAAY,OAAO,CAACN,EAAG,QAAQ,CAAC6B,YAAY,CAAC,cAAc,SAAS,CAACjC,EAAIY,GAAGZ,EAAIa,GAAGb,EAAIc,GAAG,+DAA+DV,EAAG,MAAM,CAACM,YAAY,+BAA+B,CAACN,EAAG,YAAY,CAACE,MAAM,CAAC,WAAaN,EAAI+F,KAAK21L,mBAAmB,YAAc17L,EAAIc,GAAG,2DAA2D,KAAO,SAASa,MAAM,CAACC,MAAO5B,EAAI+F,KAAwB,oBAAElE,SAAS,SAAUC,GAAM9B,EAAI+B,KAAK/B,EAAI+F,KAAM,sBAAuBjE,IAAME,WAAW,6BAA6BhC,EAAIuB,GAAIvB,EAAc,YAAE,SAASwB,GAAU,OAAOpB,EAAG,YAAY,CAACc,IAAIM,EAASy2L,oBAAoB33L,MAAM,CAAC,MAAQkB,EAASsC,gBAAgB,MAAQtC,EAASy2L,0BAAyB,IAAI,KAAK73L,EAAG,MAAM,CAACM,YAAY,OAAO,CAACN,EAAG,QAAQ,CAAC6B,YAAY,CAAC,cAAc,SAAS,CAACjC,EAAIY,GAAGZ,EAAIa,GAAGb,EAAIc,GAAG,8DAA8DV,EAAG,MAAM,CAACM,YAAY,+BAA+B,CAACN,EAAG,YAAY,CAACE,MAAM,CAAC,WAAaN,EAAI+F,KAAK21L,mBAAmB,YAAc17L,EAAIc,GAAG,0DAA0D,KAAO,SAASa,MAAM,CAACC,MAAO5B,EAAI+F,KAAoB,gBAAElE,SAAS,SAAUC,GAAM9B,EAAI+B,KAAK/B,EAAI+F,KAAM,kBAAmBjE,IAAME,WAAW,yBAAyBhC,EAAIuB,GAAIvB,EAAmB,iBAAE,SAAS6b,EAAK3a,GAAK,OAAOd,EAAG,YAAY,CAACc,IAAIA,EAAIZ,MAAM,CAAC,MAAQN,EAAIc,GAAG,oCAAoC+a,GAAM,MAAQxZ,SAASnB,SAAU,IAAI,KAAKd,EAAG,MAAM,CAACM,YAAY,OAAO,CAACN,EAAG,QAAQ,CAAC6B,YAAY,CAAC,cAAc,SAAS,CAACjC,EAAIY,GAAGZ,EAAIa,GAAGb,EAAIc,GAAG,+DAA+DV,EAAG,MAAM,CAACM,YAAY,+BAA+B,CAACN,EAAG,YAAY,CAACE,MAAM,CAAC,WAAaN,EAAI+F,KAAK21L,mBAAmB,YAAc17L,EAAIc,GAAG,2DAA2D,KAAO,SAASa,MAAM,CAACC,MAAO5B,EAAI+F,KAAoB,gBAAElE,SAAS,SAAUC,GAAM9B,EAAI+B,KAAK/B,EAAI+F,KAAM,kBAAmBjE,IAAME,WAAW,yBAAyBhC,EAAIuB,GAAIvB,EAAoB,kBAAE,SAAS27L,GAAM,OAAOv7L,EAAG,YAAY,CAACc,IAAIy6L,EAAKC,gBAAgBt7L,MAAM,CAAC,MAAQq7L,EAAKE,oBAAoB,MAAQF,EAAKC,sBAAqB,IAAI,KAAKx7L,EAAG,MAAM,CAACM,YAAY,OAAO,CAACN,EAAG,QAAQ,CAAC6B,YAAY,CAAC,cAAc,SAAS,CAACjC,EAAIY,GAAGZ,EAAIa,GAAGb,EAAIc,GAAG,2DAA2DV,EAAG,MAAM,CAACM,YAAY,+BAA+B,CAACN,EAAG,YAAY,CAACE,MAAM,CAAC,WAAaN,EAAI+F,KAAK21L,mBAAmB,YAAc17L,EAAIc,GAAG,uDAAuD,KAAO,SAASa,MAAM,CAACC,MAAO5B,EAAI+F,KAAyB,qBAAElE,SAAS,SAAUC,GAAM9B,EAAI+B,KAAK/B,EAAI+F,KAAM,uBAAwBjE,IAAME,WAAW,8BAA8BhC,EAAIuB,GAAIvB,EAAW,SAAE,SAAS+F,GAAM,OAAO3F,EAAG,YAAY,CAACc,IAAI6E,EAAK+1L,qBAAqBx7L,MAAM,CAAC,MAAQyF,EAAKQ,OAAO,MAAQR,EAAK+1L,2BAA0B,IAAI,KAAK17L,EAAG,MAAM,CAACM,YAAY,OAAO,CAACN,EAAG,QAAQ,CAAC6B,YAAY,CAAC,cAAc,SAAS,CAACjC,EAAIY,GAAGZ,EAAIa,GAAGb,EAAIc,GAAG,8DAA8DV,EAAG,MAAM,CAACM,YAAY,+BAA+B,CAACN,EAAG,YAAY,CAACE,MAAM,CAAC,WAAaN,EAAI+F,KAAK21L,mBAAmB,YAAc17L,EAAIc,GAAG,0DAA0D,KAAO,SAASa,MAAM,CAACC,MAAO5B,EAAI+F,KAAsB,kBAAElE,SAAS,SAAUC,GAAM9B,EAAI+B,KAAK/B,EAAI+F,KAAM,oBAAqBjE,IAAME,WAAW,2BAA2BhC,EAAIuB,GAAIvB,EAAU,QAAE,SAAS+F,GAAM,OAAO3F,EAAG,YAAY,CAACc,IAAI6E,EAAKg2L,kBAAkBz7L,MAAM,CAAC,MAAQyF,EAAKQ,OAAO,MAAQR,EAAKg2L,wBAAuB,IAAI,KAAK37L,EAAG,MAAM,CAACM,YAAY,OAAO,CAACN,EAAG,QAAQ,CAAC6B,YAAY,CAAC,cAAc,SAAS,CAACjC,EAAIY,GAAGZ,EAAIa,GAAGb,EAAIc,GAAG,yDAAyDV,EAAG,MAAM,CAACM,YAAY,+BAA+B,CAACN,EAAG,YAAY,CAACE,MAAM,CAAC,YAAcN,EAAIc,GAAG,qDAAqD,KAAO,SAASa,MAAM,CAACC,MAAO5B,EAAI+F,KAAc,UAAElE,SAAS,SAAUC,GAAM9B,EAAI+B,KAAK/B,EAAI+F,KAAM,YAAajE,IAAME,WAAW,mBAAmBhC,EAAIuB,GAAIvB,EAAY,UAAE,SAASkD,GAAM,OAAO9C,EAAG,YAAY,CAACc,IAAIgC,EAAKC,UAAU7C,MAAM,CAAC,MAAQ4C,EAAKqD,OAAO,MAAQrD,EAAKC,gBAAe,IAAI,KAAK/C,EAAG,MAAM,CAACM,YAAY,OAAO,CAACN,EAAG,QAAQ,CAAC6B,YAAY,CAAC,cAAc,SAAS,CAACjC,EAAIY,GAAGZ,EAAIa,GAAGb,EAAIc,GAAG,qEAAqEV,EAAG,MAAM,CAACM,YAAY,+BAA+B,CAACN,EAAG,YAAY,CAACE,MAAM,CAAC,SAAW,GAAG,YAAcN,EAAIc,GAAG,iEAAiE,KAAO,SAASa,MAAM,CAACC,MAAO5B,EAAI+F,KAAwB,oBAAElE,SAAS,SAAUC,GAAM9B,EAAI+B,KAAK/B,EAAI+F,KAAM,sBAAuBjE,IAAME,WAAW,6BAA6BhC,EAAIuB,GAAIvB,EAAY,UAAE,SAASkD,GAAM,OAAO9C,EAAG,YAAY,CAACc,IAAIgC,EAAKC,UAAU7C,MAAM,CAAC,MAAQ4C,EAAKqD,OAAO,MAAQrD,EAAKC,gBAAe,IAAI,KAAK/C,EAAG,MAAM,CAACM,YAAY,aAAauB,YAAY,CAAC,aAAa,OAAO,cAAc,OAAO,aAAa,UAAU3B,MAAM,CAAC,KAAO,UAAUK,KAAK,UAAU,CAACP,EAAG,WAAW,CAACM,YAAY,0BAA0B4B,SAAS,CAAC,MAAQ,SAAS7B,GAAQ,OAAOT,EAAIguH,WAAW,CAAChuH,EAAIY,GAAGZ,EAAIa,GAAGb,EAAIc,GAAG,0BAA0BV,EAAG,WAAW,CAACE,MAAM,CAAC,cAAc,SAAS,KAAO,UAAU,SAAWN,EAAIinJ,aAAa,CAACjnJ,EAAIY,GAAGZ,EAAIa,GAAGb,EAAIc,GAAG,yBAAyB,aAAa,IACtsK0B,EAAkB,G,wDCgLtB,GAEEoI,MAAF,CACIstL,WAAY,CAAhB,0CACI8D,gBAAiB,CAArB,0CACIC,iBAAkB,CAAtB,0CACIC,SAAU,CAAd,0CACIC,QAAS,CAAb,0CACIC,OAAQ,CAAZ,2CAEE35L,WAAY,GACZC,KAXF,WAYI,MAAO,CACLgB,MAAOzD,KAAKa,GAAG,kDACfP,WAAW,EACXwF,KAAM,CACJ21L,mBAAoB,GACpBzD,oBAAqB,GACrB2D,gBAAiB,GACjBI,gBAAiB,GACjB74L,UAAW,GACX44L,kBAAmB,GACnBD,qBAAsB,GACtBO,QAAQ,EACRC,eAAe,EACfC,oBAAqB,IAEvBt1C,YAAY,IAGhB1jJ,QA9BF,WA8BA,WACIC,SAASC,IAAI,4CAA4C,WACvD,EAAN,6DACM,EAAN,gBAGID,SAASC,IAAI,6CAA6C,SAA9D,GACM,EAAN,8DAEM,EAAN,+BACM,EAAN,iBAGEI,QAAS,CACP,OADJ,WACA,iKACA,gBADA,SAIA,2BAJA,sBAIA,6EAJA,UAKA,uBALA,sBAKA,4EALA,UAMA,uBANA,sBAMA,uEANA,UAOA,4BAPA,uBAOA,yEAPA,WAQA,yBARA,uBAQA,wEARA,WASA,iBATA,uBASA,uEATA,WAYA,0BAZA,kCAaA,SAbA,QAaA,EAbA,gDAeA,aAfA,QAeA,EAfA,eAiBA,IACA,2DACA,UACA,mCApBA,qDAwBA,uCAxBA,yBA2BA,gBA3BA,gFA8BI,KA/BJ,WA+BA,yKACA,cACA,8BACA,KACA,0IACA,uBAGA,GACA,+CACA,uCACA,uCACA,2BACA,2CACA,iDACA,qBACA,gDAhBA,SAmBA,8DAnBA,cAmBA,EAnBA,OAoBA,mCAEA,gBAEA,SACA,yCAzBA,kBA4BA,GA5BA,8CA8BI,SA7DJ,WA6DA,kLACA,uBADA,cACA,EADA,OAGA,+BAEA,cACA,8BACA,KACA,0IACA,uBATA,SAYA,oEAZA,cAYA,EAZA,OAaA,mCAEA,gBAEA,SACA,yCAlBA,kBAqBA,GArBA,+CAuBI,SApFJ,SAoFA,4KACA,GACA,sBAFA,SAIA,8DAJA,OAIA,EAJA,OAKA,mCAEA,IACA,uDACA,yDACA,qCACA,iDACA,iDACA,2DACA,qDACA,+BAEA,+BACA,mDACA,iDAnBA,8CAyBI24L,mBA7GJ,WA8GM,OAAOv8L,KAAK6O,MAAM24I,KAAK,CACrB/jJ,MAAOzD,KAAKa,GAAG,uDACf0qC,KAAMvrC,KAAKa,GAAG,yDACdqB,KAAM,UACNyiJ,kBAAkB,EAClBC,mBAAoB,2BACpBC,kBAAmB,0BACnB6C,kBAAmB1nJ,KAAKa,GAAG,mBAC3B8mJ,iBAAkB3nJ,KAAKa,GAAG,kBAC1BikJ,gBAAgB,KAGpB/2B,MA1HJ,WA2HM/tH,KAAKyD,MAAQzD,KAAKa,GAAG,kDACrBb,KAAKM,WAAY,EACjBN,KAAK8F,KAAO,CACV21L,mBAAoB,GACpBzD,oBAAqB,GACrB2D,gBAAiB,GACjBI,gBAAiB,GACjB74L,UAAW,GACX44L,kBAAmB,GACnBD,qBAAsB,GACtBO,QAAQ,EACRC,eAAe,EACfC,oBAAqB,IAEvBt8L,KAAKgnJ,YAAa,KCvWuX,I,YCO3YhjJ,EAAY,eACd,EACAlE,EACAyC,GACA,EACA,KACA,WACA,MAIa,aAAAyB,E,kDClBf,IAAIlE,EAAS,WAAa,IAAIC,EAAIC,KAASC,EAAGF,EAAIG,eAAmBC,EAAGJ,EAAIK,MAAMD,IAAIF,EAAG,OAAOE,EAAG,QAAQ,CAACE,MAAM,CAAC,KAAON,EAAIm0L,WAAW3zL,GAAG,CAAC,cAAc,SAASC,GAAQT,EAAIm0L,UAAU1zL,KAAU,CAACL,EAAG,KAAK,CAACM,YAAY,iBAAiBJ,MAAM,CAAC,KAAO,UAAUK,KAAK,UAAU,CAACX,EAAIY,GAAG,IAAIZ,EAAIa,GAAGb,EAAIc,GAAG,wCAAwC,OAAOV,EAAG,qBAAqB,CAACW,IAAI,WAAWC,YAAYhB,EAAIiB,GAAG,CAAC,CAACC,IAAI,UAAUC,GAAG,SAASJ,GAClb,IAAIK,EAAeL,EAAIK,aACvB,MAAO,CAAChB,EAAG,OAAO,CAACI,GAAG,CAAC,OAAS,SAASC,GAAgC,OAAxBA,EAAOY,iBAAwBD,EAAapB,EAAIy8L,qBAAqB,CAACr8L,EAAG,MAAM,CAACM,YAAY,OAAO,CAACN,EAAG,MAAM,CAACM,YAAY,aAAa,CAACN,EAAG,qBAAqB,CAACE,MAAM,CAAC,KAAO,YAAY,MAAQ,kBAAkBU,YAAYhB,EAAIiB,GAAG,CAAC,CAACC,IAAI,UAAUC,GAAG,SAASJ,GACrT,IAAIoF,EAASpF,EAAIoF,OACbC,EAASrF,EAAIqF,OACjB,MAAO,CAAChG,EAAG,WAAW,CAACE,MAAM,CAAC,KAAO,OAAO,MAAQ8F,EAAS,6CAA+C,KAAK,WAAaD,EAAO,KAAO,YAAY,MAAQnG,EAAIc,GAAG,0CAA0Ca,MAAM,CAACC,MAAO5B,EAAI+F,KAAW,OAAElE,SAAS,SAAUC,GAAM9B,EAAI+B,KAAK/B,EAAI+F,KAAM,SAAUjE,IAAME,WAAW,qBAAqB,MAAK,MAAS,KAAK5B,EAAG,MAAM,CAACM,YAAY,OAAO,CAACN,EAAG,MAAM,CAACM,YAAY,YAAY,CAACN,EAAG,qBAAqB,CAACE,MAAM,CAAC,KAAO,YAAY,MAAQ,kBAAkBU,YAAYhB,EAAIiB,GAAG,CAAC,CAACC,IAAI,UAAUC,GAAG,SAASJ,GAC5hB,IAAIoF,EAASpF,EAAIoF,OACbC,EAASrF,EAAIqF,OACjB,MAAO,CAAChG,EAAG,WAAW,CAACE,MAAM,CAAC,KAAO,OAAO,MAAQ8F,EAAS,6CAA+C,KAAK,WAAaD,EAAO,KAAO,YAAY,MAAQnG,EAAIc,GAAG,kDAAkDa,MAAM,CAACC,MAAO5B,EAAI+F,KAAgB,YAAElE,SAAS,SAAUC,GAAM9B,EAAI+B,KAAK/B,EAAI+F,KAAM,cAAejE,IAAME,WAAW,0BAA0B,MAAK,MAAS,KAAK5B,EAAG,MAAM,CAACM,YAAY,iCAAiC,CAACN,EAAG,MAAM,CAACM,YAAY,OAAO,CAACN,EAAG,QAAQ,CAAC6B,YAAY,CAAC,cAAc,SAAS,CAACjC,EAAIY,GAAGZ,EAAIa,GAAGb,EAAIc,GAAG,2BAA2B,CAACV,EAAG,WAAW,CAACuB,MAAM,CAACC,MAAO5B,EAAI+F,KAAW,OAAElE,SAAS,SAAUC,GAAM9B,EAAI+B,KAAK/B,EAAI+F,KAAM,SAAUjE,IAAME,WAAW,gBAAgB,CAAC5B,EAAG,IAAI,CAACM,YAAY,0BAA0BJ,MAAM,CAAC,KAAO,MAAMK,KAAK,OAAOP,EAAG,IAAI,CAACM,YAAY,kCAAkCJ,MAAM,CAAC,KAAO,OAAOK,KAAK,YAAY,GAAGP,EAAG,MAAM,CAACM,YAAY,aAAauB,YAAY,CAAC,aAAa,OAAO,cAAc,OAAO,aAAa,UAAU3B,MAAM,CAAC,KAAO,UAAUK,KAAK,UAAU,CAACP,EAAG,WAAW,CAACM,YAAY,0BAA0B4B,SAAS,CAAC,MAAQ,SAAS7B,GAAQ,OAAOT,EAAIq0L,gBAAgB,CAACr0L,EAAIY,GAAGZ,EAAIa,GAAGb,EAAIc,GAAG,0BAA0BV,EAAG,WAAW,CAACE,MAAM,CAAC,cAAc,SAAS,KAAO,YAAY,CAACN,EAAIY,GAAGZ,EAAIa,GAAGb,EAAIc,GAAG,yBAAyB,aAAa,IACpxC0B,EAAkB,G,kCCyEtB,GACEC,WAAY,GACZC,KAFF,WAGI,MAAO,CACLqD,KAAM,CACJ4vL,eAAgB,EAChBpvL,OAAQ,GACRqvL,YAAa,GACb7xL,QAAQ,EACRy0J,UAAW,GAEbg8B,QAAS,CACPmB,eAAgB,EAChBpvL,OAAQ,GACRqvL,YAAa,GACb7xL,QAAQ,EACRy0J,UAAW,GAEbi8B,SAAU,CACRC,aAAa,GAEfj8B,UAAW,GACXt2J,KAAM,CAAC,GAAI,OAAQ,UAAW,UAAW,UACzCu2J,cAAe,CACbC,WAAW,GAEbw7B,WAAW,IAGf5wL,QA7BF,WA6BA,WACIC,SAASC,IAAI,qBAAjB,wJACA,eACA,SACA,cACA,8BACA,KACA,0IACA,uBAEA,gBACA,eAVA,mGAaEI,QAAS,CACPwwL,WADJ,WAEMp0L,KAAKk0L,WAAY,EACjBl0L,KAAKwG,MAAMkuL,SAAShuL,SAEtB,iBALJ,WAKA,+JACA,+CACA,+BACA,yCACA,+BACA,sBACA,uBANA,SAOA,QACA,wDACA,KAFA,yDAGA,+FACA,eACA,mBACA,2DACA,eACA,gCAEA,mDAPA,2CAHA,uDAaA,YACA,sDAGA,wBAxBA,gDClIuY,I,wBCQnY1C,EAAY,eACd,EACAlE,EACAyC,GACA,EACA,KACA,KACA,MAIa,aAAAyB,E,kDCnBf,IAAIlE,EAAS,WAAa,IAAIC,EAAIC,KAASC,EAAGF,EAAIG,eAAmBC,EAAGJ,EAAIK,MAAMD,IAAIF,EAAG,OAAOE,EAAG,QAAQ,CAACE,MAAM,CAAC,KAAON,EAAI4F,OAAOC,SAASrF,GAAG,CAAC,cAAc,SAASC,GAAQ,OAAOT,EAAI+B,KAAK/B,EAAI4F,OAAQ,UAAWnF,MAAW,CAACL,EAAG,KAAK,CAACM,YAAY,iBAAiBJ,MAAM,CAAC,KAAO,UAAUK,KAAK,UAAU,CAACX,EAAIY,GAAG,IAAIZ,EAAIa,GAAGb,EAAIc,GAAG,0BAA0B,OAAOV,EAAG,qBAAqB,CAACW,IAAI,UAAUC,YAAYhB,EAAIiB,GAAG,CAAC,CAACC,IAAI,UAAUC,GAAG,SAASJ,GAClc,IAAIK,EAAeL,EAAIK,aACvB,MAAO,CAAChB,EAAG,OAAO,CAACI,GAAG,CAAC,OAAS,SAASC,GAAgC,OAAxBA,EAAOY,iBAAwBD,EAAapB,EAAI08L,qBAAqB,CAAC18L,EAAIuB,GAAIvB,EAAI+F,KAAU,OAAE,SAAStE,EAAKW,GAAO,OAAOhC,EAAG,MAAM,CAACc,IAAI,UAAYkB,EAAM1B,YAAY,OAAO,CAACN,EAAG,MAAM,CAACM,YAAY,SAAS,CAACN,EAAG,MAAM,CAACM,YAAY,wBAAwB,CAACN,EAAG,QAAQ,CAACJ,EAAIY,GAAGZ,EAAIa,GAAGY,EAAKC,eAAetB,EAAG,MAAM,CAACM,YAAY,SAAS,CAACN,EAAG,MAAM,CAACM,YAAY,wBAAwB,CAACN,EAAG,WAAW,CAACE,MAAM,CAAC,KAAO,OAAO,YAAcmB,EAAKC,OAAO,MAAQ1B,EAAIc,GAAG,iCAAiCa,MAAM,CAACC,MAAOH,EAAa,SAAEI,SAAS,SAAUC,GAAM9B,EAAI+B,KAAKN,EAAM,WAAYK,IAAME,WAAW,oBAAoB,KAAK5B,EAAG,MAAM,CAACM,YAAY,SAAS,CAACN,EAAG,MAAM,CAACM,YAAY,wBAAwB,CAACN,EAAG,QAAQ,CAACJ,EAAIY,GAAGZ,EAAIa,GAAGb,EAAIc,GAAG,kCAAkCV,EAAG,WAAW,CAACE,MAAM,CAAC,KAAO,WAAW,KAAO,EAAE,YAAcN,EAAIc,GAAG,+BAA+Ba,MAAM,CAACC,MAAOH,EAAc,UAAEI,SAAS,SAAUC,GAAM9B,EAAI+B,KAAKN,EAAM,YAAaK,IAAME,WAAW,qBAAqB,WAAU,WAAW,IACrhCQ,EAAkB,G,wGC2DtB,GACEC,WAAY,GACZC,KAFF,WAGI,MAAO,CACL2D,cAAepG,KAAKa,GAAG,wBACvBiF,KAAM,CACJ42L,eAAgB,EAChBhG,mBAAoB,GACpBC,YAAa,IAAIzuL,KACjB0uL,SAAU,IAAI1uL,KACdy0L,uBAAuB,EACvBlG,cAAe,IAAIvuL,KACnB00L,gCAAiC,EACjC94L,QAAQ,GAEVmR,KAAM,GACN4nL,MAAO,GACPl3L,OAAQ,CACNC,SAAS,EACT+yJ,QAAQ,EACRC,MAAM,GAERu+B,iBAAiB,EACjB1uC,SAAU,8BACVq0C,SAAU,EAEVC,SAAU,GACVC,SAAU,KAGdt6L,SAAU,OAAZ,OAAY,CAAZ,GACA,oCAEEC,QAjCF,WAkCI3C,KAAK8F,KAAK+yJ,MAAQ74J,KAAKoD,eAAeC,KAAI,SAA9C,UACA,2BACA,gBACA,8BACA,wBACA,qBACA,sBACA,YACA,kBAKEC,QA/CF,WA+CA,WAGIC,SAASC,IAAI,gBAAjB,sIACA,oBADA,6CAIEI,QAAS,CACPtB,UADJ,WAEMtC,KAAKwG,MAAMC,QAAQC,QACnB1G,KAAK8F,KAAO,CACV42L,eAAgB,EAChBhG,mBAAoB,GACpBC,YAAa,IAAIzuL,KACjB0uL,SAAU,IAAI1uL,KACdy0L,uBAAuB,EACvBlG,cAAe,IAAIvuL,KACnB00L,gCAAiC,EACjC94L,QAAQ,GAEV9D,KAAK8F,KAAK+yJ,MAAQ74J,KAAKoD,eAAeC,KAAI,SAAhD,UACA,2BACA,gBACA,8BACA,wBACA,qBACA,sBACA,YACA,iBAEMrD,KAAK2F,OAAOC,SAAU,GAExB,iBAzBJ,WAyBA,+JACA,cACA,8BACA,KACA,0IACA,uBALA,SAOA,kBAPA,OAQA,gBARA,8CAUI,cAnCJ,WAmCA,sKACA,IACA,GACA,KACA,0BACA,oBACA,cACA,iBACA,6CACA,aACA,aACA,+BACA,yBACA,mDACA,mCAEA,qBACA,0CAjBA,iBAqBA,cArBA,4DAqBA,EArBA,QAsBA,qBAtBA,wBAuBA,gBACA,UACA,kDAzBA,sLA8BA,QACA,iDACA,KAFA,yDAGA,8GACA,kBADA,iBAEA,2DACA,uBAHA,iBAIA,cAJA,gEAIA,EAJA,QAKA,eACA,SACA,8BACA,WAEA,kCACA,sCACA,8CACA,kDACA,oDAdA,UAgBA,QACA,KACA,mDACA,EACA,CACA,SACA,wCAIA,KAVA,yDAWA,+FACA,oBAGA,gBACA,SACA,0BAEA,KARA,2CAXA,uDAsBA,YACA,mDACA,OAGA,wBA3CA,kJA6CA,cACA,MACA,gBACA,UACA,iCAGA,gCApDA,wBAsDA,mDAtDA,gEAHA,uDA4DA,YACA,sDAGA,wBA9FA,mEAgGIkC,WAnIJ,SAmIA,cAGA,6BACA,YAAQ,OAAR,iCAGM,EAAN,kCACQ/B,gBAAiB/F,KAAK88L,SACtBr7L,OAAQ,GACRw7L,4BAA6B,EAC7BC,mBAAoBjoL,EAAKyO,IACzBy5K,kBAAmBn9L,KAAK8F,KAAK+yJ,MAAM12J,GAAOg7L,kBAC1CC,mBAAoBp9L,KAAK8F,KAAK+yJ,MAAM12J,GAAOi7L,qBAE7C/zK,QAAQyL,IAAI90B,KAAK8F,KAAK+yJ,QAExBrtH,QAAS,SAAb,GACM,IAAI6xJ,EAAiBthL,EAAEqN,OACvBC,QAAQyL,IAAIuoK,EAAe3wL,IAC3B1M,KAAK88L,SAAWO,EAAe3wL,MC3Q+U,I,YCOhX1I,EAAY,eACd,EACAlE,EACAyC,GACA,EACA,KACA,KACA,MAIa,aAAAyB,E,gGClBf,IAAIlE,EAAS,WAAa,IAAIC,EAAIC,KAASC,EAAGF,EAAIG,eAAmBC,EAAGJ,EAAIK,MAAMD,IAAIF,EAAG,OAAOE,EAAG,MAAM,CAACM,YAAY,OAAO,CAACN,EAAG,MAAM,CAACM,YAAY,UAAU,CAACN,EAAG,OAAO,CAACE,MAAM,CAAC,oBAAoB,mBAAmB,iBAAiB,KAAK,CAACF,EAAG,MAAM,CAACA,EAAG,MAAM,CAACM,YAAY,6EAA6E,CAACN,EAAG,KAAK,CAACM,YAAY,0BAA0B,CAACV,EAAIY,GAAG,IAAIZ,EAAIa,GAAGb,EAAIc,GAAG,iCAAiC,SAASV,EAAG,MAAM,CAACM,YAAY,UAAU,CAACN,EAAG,cAAc,CAACE,MAAM,CAAC,UAAY,KAAK,CAACF,EAAG,mBAAmB,CAACM,YAAY,SAASJ,MAAM,CAAC,KAAO,IAAI,MAAQN,EAAIc,GAAG,2CAA2C,CAACV,EAAG,MAAM,CAACM,YAAY,OAAO,CAACN,EAAG,MAAM,CAACM,YAAY,SAAS,CAACN,EAAG,MAAM,CAACM,YAAY,wBAAwB,CAACN,EAAG,YAAY,CAACE,MAAM,CAAC,WAAa,GAAG,KAAO,QAAQ,YAAcN,EAAIc,GAAG,0CAA0Ca,MAAM,CAACC,MAAO5B,EAAgB,aAAE6B,SAAS,SAAUC,GAAM9B,EAAIs2L,aAAax0L,GAAKE,WAAW,iBAAiB,CAAC5B,EAAG,YAAY,CAACE,MAAM,CAAC,MAAQN,EAAIc,GAAG,yCAAyC,MAAQ,MAAMd,EAAIuB,GAAIvB,EAAwB,sBAAE,SAAS+F,GAAM,OAAO3F,EAAG,YAAY,CAACc,IAAI6E,EAAKw3L,oBAAoBj9L,MAAM,CAAC,MAAQyF,EAAKy3L,kBAAkB,MAAQz3L,EAAKw3L,2BAA0B,IAAI,KAAKn9L,EAAG,MAAM,CAACM,YAAY,SAAS,CAACN,EAAG,WAAW,CAACA,EAAG,WAAW,CAACM,YAAY,OAAOuB,YAAY,CAAC,MAAQ,SAAS3B,MAAM,CAAC,KAAO,SAAS,UAAY,GAAG,cAAc,kBAAkB,YAAcN,EAAIc,GAAG,sBAAsB,gBAAgB,cAAca,MAAM,CAACC,MAAO5B,EAAe,YAAE6B,SAAS,SAAUC,GAAM9B,EAAIwK,YAAY1I,GAAKE,WAAW,kBAAkB,IAAI,QAAQ,IAAI,GAAG5B,EAAG,WAAW,CAAC6B,YAAY,CAAC,MAAQ,QAAQ3B,MAAM,CAAC,OAAS,GAAG,KAAON,EAAIyK,cAAc,CAACrK,EAAG,kBAAkB,CAACE,MAAM,CAAC,KAAO,gBAAgB,MAAQL,KAAKa,GAAG,+CAA+C,SAAW,GAAG,MAAQ,SAASV,EAAG,kBAAkB,CAACE,MAAM,CAAC,KAAO,gBAAgB,MAAQL,KAAKa,GAAG,iDAAiD,SAAW,GAAG,MAAQ,SAASV,EAAG,kBAAkB,CAACE,MAAM,CAAC,KAAO,cAAc,MAAQL,KAAKa,GAAG,iDAAiD,SAAW,GAAG,YAAY,SAASV,EAAG,kBAAkB,CAACE,MAAM,CAAC,KAAO,gBAAgB,MAAQL,KAAKa,GAAG,oDAAoD,SAAW,GAAG,YAAY,SAASV,EAAG,kBAAkB,CAACE,MAAM,CAAC,KAAO,SAAS,MAAQL,KAAKa,GAAG,gDAAgD,SAAW,GAAG,MAAQ,SAASV,EAAG,kBAAkB,CAACE,MAAM,CAAC,KAAO,oBAAoB,MAAQL,KAAKa,GAAG,yCAAyC,SAAW,GAAG,YAAY,SAASV,EAAG,kBAAkB,CAACE,MAAM,CAAC,UAAY,YAAY,YAAY,KAAKU,YAAYhB,EAAIiB,GAAG,CAAC,CAACC,IAAI,UAAUC,GAAG,SAASyJ,GAAO,OAAOxK,EAAG,MAAM,CAACM,YAAY,0BAA0B,CAACN,EAAG,aAAa,CAACW,IAAI,YAAc6J,EAAME,OAAOxK,MAAM,CAAC,UAAY,SAAS,MAAQ,MAAM,QAAU,UAAU,CAACF,EAAG,MAAM,CAACM,YAAY,OAAO,CAACN,EAAG,MAAM,CAACM,YAAY,kBAAkB,CAACN,EAAG,WAAW,CAACM,YAAY,iBAAiBJ,MAAM,CAAC,KAAO,UAAU,KAAO,KAAK,MAAQ,IAAIgC,SAAS,CAAC,MAAQ,SAAS7B,GAAQ,OAAOT,EAAIwO,SAChiG5D,EAAME,OACNF,EAAMD,IACN,YAAcC,EAAME,WACjB,CAAC9K,EAAIY,GAAG,IAAIZ,EAAIa,GAAGb,EAAIc,GAAG,gDAAgD,QAAQ,GAAGV,EAAG,MAAM,CAACM,YAAY,kBAAkB,CAACN,EAAG,oBAAoB,CAACE,MAAM,CAAC,WAAa,gBAAgB,OAAS,iCAAiC,CAA+C,GAA7CsK,EAAMD,IAAI8yL,gCAAsCr9L,EAAG,WAAW,CAACM,YAAY,iBAAiBJ,MAAM,CAAC,KAAO,UAAU,KAAO,KAAK,MAAQ,IAAIgC,SAAS,CAAC,MAAQ,SAAS7B,GAAQ,OAAOT,EAAI09L,YACja9yL,EAAME,OACNF,EAAMD,IACN,YAAcC,EAAME,WACjB,CAAC9K,EAAIY,GAAG,IAAIZ,EAAIa,GAAGb,EAAIc,GAAG,wCAAwC,OAAOd,EAAIkH,MAAM,IAAI,KAAK9G,EAAG,WAAW,CAACM,YAAY,uBAAuBJ,MAAM,CAAC,KAAO,YAAY,KAAO,KAAK,KAAO,IAAIK,KAAK,aAAa,CAACP,EAAG,IAAI,CAACM,YAAY,mBAAmBuB,YAAY,CAAC,MAAQ,cAAc,IAAI,UAAU,IAAI,GAAG7B,EAAG,MAAM,CAACM,YAAY,4EAA4EJ,MAAM,CAAC,KAAO,UAAUK,KAAK,UAAU,CAACP,EAAG,MAAM,GAAG,CAACA,EAAG,IAAI,CAACM,YAAY,iBAAiB,CAACV,EAAIY,GAAG,IAAIZ,EAAIa,GAAGb,EAAIc,GAAG,2BAA2B,IAAId,EAAIa,GAAGb,EAAIgL,KAAO,GAAG,IAAIhL,EAAIa,GAAGb,EAAIc,GAAG,sBAAsB,IAAId,EAAIa,GAAGb,EAAIiL,IAAI,IAAIjL,EAAIa,GAAGb,EAAIc,GAAG,sBAAsB,IAAId,EAAIa,GAAGb,EAAIkL,OAAO,IAAIlL,EAAIa,GAAGb,EAAIc,GAAG,2BAA2B,SAASV,EAAG,eAAe,CAACM,YAAY,uBAAuBJ,MAAM,CAAC,WAAWN,EAAImL,WAAWC,QAAQ,MAAQpL,EAAIkL,OAAOvJ,MAAM,CAACC,MAAO5B,EAAImL,WAAsB,YAAEtJ,SAAS,SAAUC,GAAM9B,EAAI+B,KAAK/B,EAAImL,WAAY,cAAerJ,IAAME,WAAW,6BAA6B,KAAK5B,EAAG,2BAA2B,MACnjCoC,EAAkB,G,gGCiMtB,G,UAAA,CACEC,WAAY,CACVgM,YAAJ,OACIkvL,qBAAsB,WAA1B,yDAEEh7L,SAAU,CAIR8H,YAJJ,WAKM,IAAN,oCACM,OAAOzF,EAAOuG,MAAMtL,KAAK+K,KAAM/K,KAAKgL,KAEtCA,GARJ,WASM,IAAN,oCAIM,OAHIhL,KAAKiL,MAAQM,IACfA,EAAYvL,KAAKiL,OAEZM,GAETR,KAfJ,WAgBM,OAAO/K,KAAKkL,WAAWC,SAAWnL,KAAKkL,WAAWM,YAAc,IAElEP,MAlBJ,WAmBM,IAAN,oCACM,OAAOQ,EAAaC,OAAS,EACnC,SACA,wBAGEjJ,KA9BF,WA+BI,MAAO,CACLP,KAAM,CAAC,GAAI,OAAQ,UAAW,UAAW,UACzCgJ,WAAY,CACVC,QAAS,EACTK,YAAa,EACbG,eAAgB,CAAC,EAAG,GAAI,GAAI,IAC5BV,MAAO,GAETV,YAAa,GACbozL,cAAe,CAAC,gBAAiB,eACjChvL,aAAc,CACpB,CACQ,KAAR,gBACQ,MAAR,0DAEA,CACQ,KAAR,cACQ,MAAR,0DAEA,CACQ,KAAR,gBACQ,MAAR,6DAEA,CACQ,KAAR,SACQ,MAAR,yDAEA,CACQ,KAAR,kCACQ,SAAR,EACQ,MAAR,aAEA,CACQ,KAAR,oBACQ,MAAR,mDAGM/C,UAAW,GACXH,aAAc,GACdI,WAAY,KACZwqL,aAAc,GACduH,qBAAsB,CAC5B,CACQ,oBAAR,EACQ,kBAAR,yBAEA,CACQ,oBAAR,EACQ,kBAAR,iBAKEh6L,QAAS,CACP,kBADJ,WACA,qKACA,cACA,8BACA,KACA,0IACA,uBAEA,kBAPA,SAQA,QACA,gDACA,KAFA,yDAGA,+FACA,kBACA,iCAEA,mDAJA,2CAHA,uDAUA,YACA,eACA,sDAGA,wBAvBA,OA0BA,gBA1BA,8CA4BIqK,YA7BJ,WA8BM1K,SAASyI,MAAM,sBAEjBuC,SAhCJ,SAgCA,OACMvO,KAAKwG,MAAM1F,GAAKiL,UAChBxI,SAASyI,MAAM,uBAAwBtB,IAEzC,YApCJ,SAoCA,+JACA,qBACA,QACA,MACA,4DACA,UACA,yDAEA,eACA,oBACA,8CACA,4CACA,8DACA,sBACA,8CAEA,oBAEA,KAhBA,yDAgBA,mGACA,QADA,gCAEA,cAFA,OAGA,cACA,4DACA,UACA,qDAEA,eACA,8CACA,oBAVA,2CAhBA,uDAFA,8CAiCI,SArEJ,SAqEA,wKACA,cACA,8BACA,KACA,0IACA,uBAEA,6CAPA,SAQA,QACA,4DACA,KAFA,yDAGA,+FACA,kBAEA,sBAEA,mDALA,2CAHA,uDAWA,YACA,eACA,sDAGA,wBAxBA,OA2BA,gBA3BA,8CA6BIoB,aAlGJ,SAkGA,cAsBM,OArBAud,QAAQyL,IAAI,YACZzL,QAAQyL,IAAI90B,KAAKyL,cACjB1G,EACN,oBACA,UACA,YAAQ,OAAR,qDAEA,EACMA,EACN,0BACA,UACA,YAAQ,OACR,cACA,cACA,uCACA,gBACA,WACA,cACA,yCAEA,EACaA,IAGX,QA/MF,WA+MA,wKACA,sBADA,OAEA,gMACA,sBADA,4CAFA,8CAMEmH,MAAO,KC/Z4W,I,wBCQjXlI,EAAY,eACd,EACAlE,EACAyC,GACA,EACA,KACA,KACA,MAIa,aAAAyB,E,2CCnBf,W,gECAA,IAAIlE,EAAS,WAAa,IAAIC,EAAIC,KAASC,EAAGF,EAAIG,eAAmBC,EAAGJ,EAAIK,MAAMD,IAAIF,EAAG,OAAOE,EAAG,MAAM,CAACM,YAAY,OAAO,CAACN,EAAG,MAAM,CAACM,YAAY,UAAU,CAACN,EAAG,OAAO,CAACE,MAAM,CAAC,oBAAoB,mBAAmB,iBAAiB,KAAK,CAACF,EAAG,MAAM,CAACA,EAAG,MAAM,CAACM,YAAY,6EAA6E,CAACN,EAAG,KAAK,CAACM,YAAY,0BAA0B,CAACV,EAAIY,GAAG,IAAIZ,EAAIa,GAAGb,EAAIc,GAAG,oCAAoC,OAAOV,EAAG,WAAW,CAACA,EAAG,WAAW,CAACM,YAAY,OAAOuB,YAAY,CAAC,MAAQ,SAAS3B,MAAM,CAAC,KAAO,SAAS,UAAY,GAAG,cAAc,kBAAkB,YAAcN,EAAIc,GAAG,sBAAsB,gBAAgB,cAAca,MAAM,CAACC,MAAO5B,EAAe,YAAE6B,SAAS,SAAUC,GAAM9B,EAAIwK,YAAY1I,GAAKE,WAAW,kBAAkB,IAAI,GAAG5B,EAAG,WAAW,CAAC6B,YAAY,CAAC,MAAQ,QAAQ3B,MAAM,CAAC,OAAS,GAAG,KAAON,EAAIyK,cAAc,CAACrK,EAAG,kBAAkB,CAACE,MAAM,CAAC,KAAO,qBAAqB,MAAQL,KAAKa,GAAG,gDAAgD,SAAW,GAAG,YAAY,SAASV,EAAG,kBAAkB,CAACE,MAAM,CAAC,KAAO,mBAAmB,MAAQL,KAAKa,GAAG,kDAAkD,SAAW,GAAG,YAAY,SAASV,EAAG,kBAAkB,CAACE,MAAM,CAAC,MAAQN,EAAIc,GAAG,uBAAuBE,YAAYhB,EAAIiB,GAAG,CAAC,CAACC,IAAI,UAAUC,GAAG,SAASyJ,GAAO,MAAO,CAACxK,EAAG,WAAW,CAACE,MAAM,CAAC,MAAQ,SAASE,GAAG,CAAC,MAAQ,SAASC,GAAQ,OAAOT,EAAIuO,OAAO3D,EAAMD,OAAOhJ,MAAM,CAACC,MAAOgJ,EAAMD,IAAU,OAAE9I,SAAS,SAAUC,GAAM9B,EAAI+B,KAAK6I,EAAMD,IAAK,SAAU7I,IAAME,WAAW,qBAAqB,CAAC5B,EAAG,IAAI,CAACM,YAAY,0BAA0BJ,MAAM,CAAC,KAAO,MAAMK,KAAK,OAAOP,EAAG,IAAI,CAACM,YAAY,kCAAkCJ,MAAM,CAAC,KAAO,OAAOK,KAAK,iBAAiBP,EAAG,kBAAkB,CAACE,MAAM,CAAC,YAAY,IAAI,MAAQN,EAAIc,GAAG,wBAAwBE,YAAYhB,EAAIiB,GAAG,CAAC,CAACC,IAAI,UAAUC,GAAG,SAASyJ,GAAO,OAAOxK,EAAG,MAAM,CAACM,YAAY,0BAA0B,CAACN,EAAG,aAAa,CAACW,IAAI,YAAc6J,EAAME,OAAOxK,MAAM,CAAC,UAAY,SAAS,MAAQ,MAAM,QAAU,UAAU,CAACF,EAAG,MAAM,CAACM,YAAY,OAAO,CAACN,EAAG,MAAM,CAACM,YAAY,kBAAkB,CAACN,EAAG,WAAW,CAACM,YAAY,iBAAiBJ,MAAM,CAAC,KAAO,UAAU,KAAO,KAAK,MAAQ,IAAIgC,SAAS,CAAC,MAAQ,SAAS7B,GAAQ,OAAOT,EAAIwO,SAC1qE5D,EAAME,OACNF,EAAMD,IACN,YAAcC,EAAME,WACjB,CAAC9K,EAAIY,GAAG,IAAIZ,EAAIa,GAAGb,EAAIc,GAAG,yCAAyC,QAAQ,KAAKV,EAAG,WAAW,CAACM,YAAY,uBAAuBJ,MAAM,CAAC,KAAO,YAAY,KAAO,KAAK,KAAO,IAAIK,KAAK,aAAa,CAACP,EAAG,IAAI,CAACM,YAAY,mBAAmBuB,YAAY,CAAC,MAAQ,cAAc,IAAI,UAAU,IAAI,GAAG7B,EAAG,MAAM,CAACM,YAAY,4EAA4EJ,MAAM,CAAC,KAAO,UAAUK,KAAK,UAAU,CAACP,EAAG,MAAM,GAAG,CAACA,EAAG,IAAI,CAACM,YAAY,iBAAiB,CAACV,EAAIY,GAAG,IAAIZ,EAAIa,GAAGb,EAAIc,GAAG,2BAA2B,IAAId,EAAIa,GAAGb,EAAIgL,KAAO,GAAG,IAAIhL,EAAIa,GAAGb,EAAIc,GAAG,sBAAsB,IAAId,EAAIa,GAAGb,EAAIiL,IAAI,IAAIjL,EAAIa,GAAGb,EAAIc,GAAG,sBAAsB,IAAId,EAAIa,GAAGb,EAAIkL,OAAO,IAAIlL,EAAIa,GAAGb,EAAIc,GAAG,2BAA2B,SAASV,EAAG,eAAe,CAACM,YAAY,uBAAuBJ,MAAM,CAAC,WAAWN,EAAImL,WAAWC,QAAQ,MAAQpL,EAAIkL,OAAOvJ,MAAM,CAACC,MAAO5B,EAAImL,WAAsB,YAAEtJ,SAAS,SAAUC,GAAM9B,EAAI+B,KAAK/B,EAAImL,WAAY,cAAerJ,IAAME,WAAW,6BAA6B,KAAK5B,EAAG,sBAAsBA,EAAG,wBAAwB,MAC3jCoC,EAAkB,G,8GCyHtB,GACEC,WAAY,CACVgM,YAAJ,OACIqvL,kBAAmB,WAAvB,oFACIC,mBAAoB,WAAxB,yDAEEp7L,SAAU,CAIR8H,YAJJ,WAKM,IAAN,oCACM,OAAOzF,EAAOuG,MAAMtL,KAAK+K,KAAM/K,KAAKgL,KAYtCA,GAlBJ,WAmBM,IAAN,oCAIM,OAHIhL,KAAKiL,MAAQM,IACfA,EAAYvL,KAAKiL,OAEZM,GAETR,KAzBJ,WA0BM,OAAO/K,KAAKkL,WAAWC,SAAWnL,KAAKkL,WAAWM,YAAc,IAElEP,MA5BJ,WA6BM,IAAN,oCACM,OAAOQ,EAAaC,OAAS,EACnC,SACA,wBAMEjJ,KA5CF,WA6CI,MAAO,CACLP,KAAM,CAAC,GAAI,OAAQ,UAAW,UAAW,UACzCgJ,WAAY,CACVC,QAAS,EACTK,YAAa,EACbG,eAAgB,CAAC,EAAG,GAAI,GAAI,IAC5BV,MAAO,GAETV,YAAa,GACbozL,cAAe,CAAC,oBAChBhvL,aAAc,CACpB,CACQ,KAAR,qBACQ,MAAR,gBACQ,SAAR,KAEA,CACQ,KAAR,mBACQ,MAAR,oBACQ,SAAR,MAGM/C,UAAW,GACXH,aAAc,GACdI,WAAY,OAGhBjI,QAAS,CACP,KADJ,WACA,qKACA,cACA,8BACA,KACA,0IACA,uBAEA,GACA,KACA,gCACA,uCAVA,SAYA,QACA,uDACA,KAFA,yDAGA,+FACA,kBACA,oCAEA,mDAJA,2CAHA,uDAUA,YACA,eACA,sDAGA,wBA3BA,OA8BA,gBA9BA,8CAgCI,OAjCJ,SAiCA,2KACA,QACA,4CACA,KAFA,yDAGA,+FACA,eACA,mBACA,2DACA,gCAEA,mDANA,2CAHA,uDAYA,YACA,sDAGA,wBAjBA,8CAmBIqK,YApDJ,WAqDM1K,SAASyI,MAAM,uBAEjBuC,SAvDJ,SAuDA,OACMvO,KAAKwG,MAAM1F,GAAKiL,UAChBxI,SAASyI,MAAM,sBAAuBtB,IAExCkE,aA3DJ,SA2DA,gBACM5O,KAAK6O,MACX,MACQ,MAAR,gBACQ,KAAR,oCACQ,KAAR,UACQ,kBAAR,EACQ,mBAAR,2BACQ,kBAAR,0BACQ,kBAAR,kBACQ,gBAAR,IAEA,kBACA,UACU,EAAV,aACU,KAAV,MACY,MAAZ,WACY,KAAZ,8BACY,KAAZ,UACY,mBAAZ,2BACY,gBAAZ,SAKIC,UApFJ,SAoFA,GACM,IAAN,4BACA,YAAQ,OAAR,eAEUC,GAAiB,GACnB/O,KAAK4L,UAAUoD,OAAOD,EAAe,IAGzCjD,aA5FJ,SA4FA,GAGM,OADA/G,EAAS,OAAf,mBAAe,CAAf,uCACaA,IAGXzB,QA1KF,WA0KA,WAMItD,KAAKiP,OAEL1L,SAASC,IAAI,gBAAgB,WAC3B,EAAN,WAGE0I,MAAO,ICpT6W,I,wBCQlXlI,EAAY,eACd,EACAlE,EACAyC,GACA,EACA,KACA,KACA,MAIa,aAAAyB,E,iFCnBT+5L,E,wBAQJ,aAAsB,IAAV75L,EAAU,uDAAJ,GAAI,0CANG,GAMH,qBALR,MAKQ,0BAJH,GAIG,wDAH2B,GAG3B,gBAFb,MAGPE,OAAOC,OAAOrE,KAAMkE,G,YAIxBI,EAAOC,QAAUw5L,G,yCCbjB,IAAIj+L,EAAS,WAAa,IAAIC,EAAIC,KAASC,EAAGF,EAAIG,eAAmBC,EAAGJ,EAAIK,MAAMD,IAAIF,EAAG,OAAOE,EAAG,MAAM,CAACM,YAAY,OAAO,CAACN,EAAG,MAAM,CAACM,YAAY,UAAU,CAACN,EAAG,MAAM,CAACM,YAAY,QAAQ,CAACN,EAAG,MAAM,CAACM,YAAY,eAAe,CAACN,EAAG,MAAM,CAACM,YAAY,OAAO,CAACN,EAAG,MAAM,CAACM,YAAY,SAAS,CAACN,EAAG,KAAK,CAACM,YAAY,cAAc,CAACV,EAAIY,GAAG,IAAIZ,EAAIa,GAAGb,EAAIc,GAAG,8BAA8B,SAASV,EAAG,MAAM,CAACM,YAAY,SAAS,CAACN,EAAG,WAAW,CAACM,YAAY,cAAcJ,MAAM,CAAC,KAAO,UAAU,MAAQ,IAAIgC,SAAS,CAAC,MAAQ,SAAS7B,GAAQ,OAAOT,EAAIi+L,cAAc,CAAC79L,EAAG,IAAI,CAACM,YAAY,0CAA0CJ,MAAM,CAAC,KAAO,SAASK,KAAK,UAAUX,EAAIY,GAAG,IAAIZ,EAAIa,GAAGb,EAAIc,GAAG,0CAA0C,QAAQ,OAAOV,EAAG,MAAM,CAACM,YAAY,aAAa,CAACN,EAAG,qBAAqB,CAACW,IAAI,UAAUC,YAAYhB,EAAIiB,GAAG,CAAC,CAACC,IAAI,UAAUC,GAAG,SAASJ,GACh2B,IAAIK,EAAeL,EAAIK,aACvB,MAAO,CAAChB,EAAG,OAAO,CAACI,GAAG,CAAC,OAAS,SAASC,GAAgC,OAAxBA,EAAOY,iBAAwBD,EAAapB,EAAIolJ,WAAW,CAAChlJ,EAAG,MAAM,CAACM,YAAY,UAAU,CAACN,EAAG,MAAM,CAACM,YAAY,wBAAwB,CAACN,EAAG,WAAW,CAACE,MAAM,CAAC,KAAO,OAAO,SAAW,GAAG,MAAQN,EAAIc,GAAG,oCAAoC,MAAQd,EAAIk+L,wBAAwB,GAAG99L,EAAG,MAAM,CAACM,YAAY,wBAAwB,CAACN,EAAG,WAAW,CAACE,MAAM,CAAC,KAAO,OAAO,SAAW,GAAG,MAAQN,EAAIc,GAAG,4CAA4C,MAAQd,EAAIm+L,uBAAuB,GAAG/9L,EAAG,MAAM,CAACM,YAAY,wBAAwB,CAACN,EAAG,WAAW,CAACE,MAAM,CAAC,KAAO,OAAO,SAAW,GAAG,MAAQN,EAAIc,GAAG,8CAA8C,MAAQd,EAAIo+L,0BAA0B,GAAGh+L,EAAG,MAAM,CAACM,YAAY,OAAO,CAACN,EAAG,MAAM,CAACM,YAAY,UAAU,CAACN,EAAG,MAAM,CAACM,YAAY,wBAAwB,CAACN,EAAG,WAAW,CAACE,MAAM,CAAC,KAAO,OAAO,SAAW,GAAG,MAAQN,EAAIc,GAAG,qCAAqC,MAAQd,EAAIq+L,QAAQ14G,UAAU,KAAKvlF,EAAG,MAAM,CAACM,YAAY,QAAQuB,YAAY,CAAC,aAAa,UAAU,CAAC7B,EAAG,WAAW,CAAC6B,YAAY,CAAC,aAAa,QAAQ3B,MAAM,CAAC,KAAO,UAAU,MAAQ,IAAIgC,SAAS,CAAC,MAAQ,SAAS7B,GAAQ,OAAOT,EAAIs+L,cAAc79L,MAAW,CAACT,EAAIY,GAAG,IAAIZ,EAAIa,GAAGb,EAAIc,GAAG,yCAAyC,QAAQ,KAAKV,EAAG,MAAM,CAACM,YAAY,wBAAwB,CAACN,EAAG,QAAQ,CAACJ,EAAIY,GAAGZ,EAAIa,GAAGb,EAAIc,GAAG,gDAAgDV,EAAG,YAAY,CAACE,MAAM,CAAC,YAAcN,EAAIc,GAAG,4CAA4C,KAAO,SAASa,MAAM,CAACC,MAAO5B,EAAIq+L,QAA0B,mBAAEx8L,SAAS,SAAUC,GAAM9B,EAAI+B,KAAK/B,EAAIq+L,QAAS,qBAAsBv8L,IAAME,WAAW,+BAA+BhC,EAAIuB,GAAIvB,EAAS,OAAE,SAAS+F,GAAM,OAAO3F,EAAG,YAAY,CAACc,IAAI6E,EAAK5C,UAAU7C,MAAM,CAAC,MAAQyF,EAAKQ,OAAO,MAAQR,EAAK5C,gBAAe,IAAI,KAAK/C,EAAG,MAAM,CAACM,YAAY,aAAauB,YAAY,CAAC,aAAa,OAAO,cAAc,OAAO,aAAa,UAAU3B,MAAM,CAAC,KAAO,UAAUK,KAAK,UAAU,CAACP,EAAG,WAAW,CAACE,MAAM,CAAC,cAAc,SAAS,KAAO,YAAY,CAACN,EAAIY,GAAGZ,EAAIa,GAAGb,EAAIc,GAAG,yBAAyB,aAAa,UAC/hE0B,EAAkB,G,oCC0HtB,GAEEC,WAAF,GACEE,SAAU,GACVD,KAJF,WAKI,MAAO,CACLy7L,mBAAoB,GACpBC,sBAAuB,GACvBF,oBAAqB,GACrBK,MAAO,GACPF,QAAS,CACPG,MAAO,EACPC,cAAe,GACfj4L,SAAS,EACTm/E,MAAO,GACPh2E,mBAAoB,MAI1BpM,QAnBF,WAoBItD,KAAKi+L,oBAAsB,sEAC3Bj+L,KAAKk+L,mBAAqB,6EAC1Bl+L,KAAKm+L,sBAAwB,gFAE7Bn+L,KAAKy+L,WACLz+L,KAAK0+L,YAEP96L,QAAS,CACP,SADJ,WACA,gLACA,+EADA,OACA,EADA,OAEA,mCAEA,IACA,uCALA,8CAQI,SATJ,WASA,gLACA,+EADA,OACA,EADA,OAEA,mCAEA,IACA,oBALA,8CAQIy6L,cAjBJ,WAkBMr+L,KAAKo+L,QAAQ14G,MAAQ,OAA3B,0BAA2B,CAA3B,MAEI,SApBJ,WAoBA,gLACA,gEADA,OACA,EADA,OAEA,mCAEA,IACA,sBACA,mCANA,8CASI,OA7BJ,WA6BA,qKACA,cACA,8BACA,KACA,0IACA,uBALA,SAQA,iFARA,OAQA,EARA,OASA,iCAEA,gBAXA,gDCrL0X,I,wBCQtX1hF,EAAY,eACd,EACAlE,EACAyC,GACA,EACA,KACA,WACA,MAIa,aAAAyB,E,yECnBf,IAAIlE,EAAS,WAAa,IAAIC,EAAIC,KAASC,EAAGF,EAAIG,eAAmBC,EAAGJ,EAAIK,MAAMD,IAAIF,EAAG,OAAOE,EAAG,QAAQ,CAACE,MAAM,CAAC,KAAON,EAAI4F,OAAOC,SAASrF,GAAG,CAAC,cAAc,SAASC,GAAQ,OAAOT,EAAI+B,KAAK/B,EAAI4F,OAAQ,UAAWnF,MAAW,CAACL,EAAG,KAAK,CAACM,YAAY,iBAAiBJ,MAAM,CAAC,KAAO,UAAUK,KAAK,UAAU,CAACX,EAAIY,GAAG,IAAIZ,EAAIa,GAAGb,EAAIc,GAAG,mDAAmD,OAAOV,EAAG,qBAAqB,CAACW,IAAI,WAAWC,YAAYhB,EAAIiB,GAAG,CAAC,CAACC,IAAI,UAAUC,GAAG,SAASJ,GAC5d,IAAIK,EAAeL,EAAIK,aACvB,MAAO,CAAChB,EAAG,OAAO,CAACI,GAAG,CAAC,OAAS,SAASC,GAAgC,OAAxBA,EAAOY,iBAAwBD,EAAapB,EAAI4+L,qBAAqB,CAACx+L,EAAG,MAAM,CAACM,YAAY,iBAAiBV,EAAIuB,GAAIvB,EAAI+F,KAAiB,cAAE,SAAStE,GAAM,OAAOrB,EAAG,MAAM,CAACc,IAAIO,EAAKy2J,WAAWjyJ,MAAMjG,EAAIkG,OAAO,CAAC9F,EAAG,IAAI,CAACJ,EAAIY,GAAGZ,EAAIa,GAAGY,EAAKC,WAAWtB,EAAG,qBAAqB,CAACE,MAAM,CAAC,KAAON,EAAIc,GAAG,sDAAsD,MAAQ,YAAYE,YAAYhB,EAAIiB,GAAG,CAAC,CAACC,IAAI,UAAUC,GAAG,SAASJ,GAChd,IAAIoF,EAASpF,EAAIoF,OACbC,EAASrF,EAAIqF,OACjB,MAAO,CAAChG,EAAG,WAAW,CAACE,MAAM,CAAC,KAAO,OAAO,MAAQ8F,EAASpG,EAAIqG,cAAgB,KAAK,WAAaF,EAAO,YAAc1E,EAAKC,OAAO,MAAQ1B,EAAIc,GAAG,uDAAuDa,MAAM,CAACC,MAAOH,EAA2B,uBAAEI,SAAS,SAAUC,GAAM9B,EAAI+B,KAAKN,EAAM,yBAA0BK,IAAME,WAAW,qCAAqC,MAAK,MAAS,MAAK,GAAG5B,EAAG,MAAM,CAACM,YAAY,iCAAiC,CAACN,EAAG,MAAM,CAAC6B,YAAY,CAAC,gBAAgB,OAAO,cAAc,UAAU,CAAC7B,EAAG,QAAQ,CAACJ,EAAIY,GAAGZ,EAAIa,GAAGb,EAAIc,GAAG,2BAA2B,CAACV,EAAG,WAAW,CAACuB,MAAM,CAACC,MAAO5B,EAAI+F,KAAW,OAAElE,SAAS,SAAUC,GAAM9B,EAAI+B,KAAK/B,EAAI+F,KAAM,SAAUjE,IAAME,WAAW,gBAAgB,CAAC5B,EAAG,IAAI,CAACM,YAAY,0BAA0BJ,MAAM,CAAC,KAAO,MAAMK,KAAK,OAAOP,EAAG,IAAI,CAACM,YAAY,kCAAkCJ,MAAM,CAAC,KAAO,OAAOK,KAAK,YAAY,GAAGP,EAAG,MAAM,CAACM,YAAY,aAAauB,YAAY,CAAC,aAAa,OAAO,cAAc,OAAO,aAAa,UAAU3B,MAAM,CAAC,KAAO,UAAUK,KAAK,UAAU,CAACP,EAAG,WAAW,CAACM,YAAY,0BAA0B4B,SAAS,CAAC,MAAQ,SAAS7B,GAAQ,OAAOT,EAAIq0L,gBAAgB,CAACr0L,EAAIY,GAAGZ,EAAIa,GAAGb,EAAIc,GAAG,0BAA0BV,EAAG,WAAW,CAACE,MAAM,CAAC,cAAc,SAAS,KAAO,YAAY,CAACN,EAAIY,GAAGZ,EAAIa,GAAGb,EAAIc,GAAG,yBAAyB,aAAa,IACryC0B,EAAkB,G,0DCwDtB,GACEC,WAAY,GACZC,KAFF,WAGI,MAAO,CACL2D,cAAepG,KAAKa,GAAG,wBACvBoF,MAAO,qBACPH,KAAM,CACJO,gBAAiB,EACjBC,OAAQ,GACRxC,QAAQ,EACR86L,OAAQ,OACRC,kBAAmB,EACnBt1L,MAAO,4BAET5D,OAAQ,CACNC,SAAS,KAIflD,SAAU,OAAZ,OAAY,CAAZ,GACA,0BAEEC,QAtBF,WAuBI3C,KAAK8F,KAAK+4L,kBAAoB7+L,KAAKiD,KAAKC,WAE1CI,QAzBF,WAyBA,WACIC,SAASC,IAAI,wBAAjB,wJACA,cACA,8BACA,KACA,0IACA,uBAEA,gBACA,SACA,oBATA,mGAYEI,QAAS,CACP,iBADJ,WACA,+JACA,0CACA,uBACA,oBAHA,SAIA,QACA,+DACA,KAFA,yDAGA,+FACA,mBACA,2DACA,uCACA,gBAEA,mDANA,2CAHA,uDAYA,YACA,iBACA,sDAGA,wBArBA,8CAuBIwwL,WAxBJ,WAyBMp0L,KAAKwG,MAAMkuL,SAAShuL,QACpB1G,KAAK8F,KAAKQ,OAAS,GACnBtG,KAAK2F,OAAOC,SAAU,KC/HiW,I,wBCQzX5B,EAAY,eACd,EACAlE,EACAyC,GACA,EACA,KACA,KACA,MAIa,aAAAyB,E,kDCnBf,IAAIlE,EAAS,WAAa,IAAIC,EAAIC,KAASC,EAAGF,EAAIG,eAAmBC,EAAGJ,EAAIK,MAAMD,IAAIF,EAAG,OAAOE,EAAG,QAAQ,CAACE,MAAM,CAAC,KAAON,EAAIm0L,WAAW3zL,GAAG,CAAC,cAAc,SAASC,GAAQT,EAAIm0L,UAAU1zL,KAAU,CAACL,EAAG,KAAK,CAACM,YAAY,iBAAiBJ,MAAM,CAAC,KAAO,UAAUK,KAAK,UAAU,CAACX,EAAIY,GAAG,yBAAyBR,EAAG,qBAAqB,CAACW,IAAI,WAAWC,YAAYhB,EAAIiB,GAAG,CAAC,CAACC,IAAI,UAAUC,GAAG,SAASJ,GAC1Y,IAAIK,EAAeL,EAAIK,aACvB,MAAO,CAAChB,EAAG,OAAO,CAACI,GAAG,CAAC,OAAS,SAASC,GAAgC,OAAxBA,EAAOY,iBAAwBD,EAAapB,EAAIo0L,YAAY,CAACh0L,EAAG,MAAM,CAACM,YAAY,OAAO,CAACN,EAAG,YAAY,CAACE,MAAM,CAAC,KAAO,QAAQ,YAAcN,EAAIc,GAAG,kDAAkDa,MAAM,CAACC,MAAO5B,EAAIg4L,YAA+B,oBAAEn2L,SAAS,SAAUC,GAAM9B,EAAI+B,KAAK/B,EAAIg4L,YAAa,sBAAuBl2L,IAAME,WAAW,oCAAoChC,EAAIuB,GAAIvB,EAAc,YAAE,SAASulJ,GAAK,OAAOnlJ,EAAG,YAAY,CAACc,IAAIqkJ,EAAI0yC,oBAAoBv3L,YAAY,iBAAiBJ,MAAM,CAAC,MAAQilJ,EAAI0yC,oBAAoB,MAAQ1yC,EAAIzhJ,sBAAqB,IAAI,GAAG9D,EAAIuB,GAAIvB,EAAIg4L,YAAwB,cAAE,SAASv2L,GAAM,OAAOrB,EAAG,MAAM,CAACA,EAAG,KAAK,CAACJ,EAAIY,GAAGZ,EAAIa,GAAGY,EAAKC,OAAOA,WAAWtB,EAAG,MAAM,CAACM,YAAY,OAAO,CAACN,EAAG,MAAM,CAACM,YAAY,UAAU,CAACN,EAAG,WAAW,CAACE,MAAM,CAAC,KAAO,OAAO,KAAO,YAAY,MAAQN,EAAIc,GAAG,iDAAiDa,MAAM,CAACC,MAAOH,EAAuB,mBAAEI,SAAS,SAAUC,GAAM9B,EAAI+B,KAAKN,EAAM,qBAAsBK,IAAME,WAAW,8BAA8B,KAAK5B,EAAG,MAAM,CAACM,YAAY,kBAAiBN,EAAG,MAAM,CAACM,YAAY,OAAO,CAACN,EAAG,MAAM,CAACM,YAAY,iCAAiC,CAACN,EAAG,MAAM,CAACM,YAAY,OAAO,CAACN,EAAG,QAAQ,CAAC6B,YAAY,CAAC,cAAc,SAAS,CAACjC,EAAIY,GAAGZ,EAAIa,GAAGb,EAAIc,GAAG,4CAA4C,CAACV,EAAG,WAAW,CAACuB,MAAM,CAACC,MAAO5B,EAAIg4L,YAAkB,OAAEn2L,SAAS,SAAUC,GAAM9B,EAAI+B,KAAK/B,EAAIg4L,YAAa,SAAUl2L,IAAME,WAAW,uBAAuB,CAAC5B,EAAG,IAAI,CAACM,YAAY,0BAA0BJ,MAAM,CAAC,KAAO,MAAMK,KAAK,OAAOP,EAAG,IAAI,CAACM,YAAY,kCAAkCJ,MAAM,CAAC,KAAO,OAAOK,KAAK,YAAY,KAAKP,EAAG,MAAM,CAACM,YAAY,aAAauB,YAAY,CAAC,aAAa,OAAO,cAAc,OAAO,aAAa,UAAU3B,MAAM,CAAC,KAAO,UAAUK,KAAK,UAAU,CAACP,EAAG,WAAW,CAACM,YAAY,0BAA0B4B,SAAS,CAAC,MAAQ,SAAS7B,GAAQ,OAAOT,EAAIq0L,WAAW5zL,MAAW,CAACT,EAAIY,GAAGZ,EAAIa,GAAGb,EAAIc,GAAG,0BAA0BV,EAAG,oBAAoB,CAACE,MAAM,CAAC,WAAa,eAAe,OAAS,uBAAuB,CAACF,EAAG,WAAW,CAACE,MAAM,CAAC,cAAc,SAAS,KAAO,YAAY,CAACN,EAAIY,GAAGZ,EAAIa,GAAGb,EAAIc,GAAG,yBAAyB,IAAI,IAAI,WAAW,IACtqE0B,EAAkB,G,+GCyEtB,GACEC,WAAY,GACZC,KAFF,WAGI,MAAO,CACLw1L,WAAY,GACZF,YAAa,IAAI,EAAvB,EACMvD,SAAU,CACRC,aAAa,GAEfj8B,UAAW,GACXt2J,KAAM,CAAC,GAAI,OAAQ,UAAW,UAAW,UACzCu2J,cAAe,CACbC,WAAW,GAEbw7B,WAAW,IAGfxxL,SAAU,OAAZ,OAAY,CAAZ,GACA,2CAEEC,QApBF,WAqBI3C,KAAK+3L,YAAYn1L,YAAc5C,KAAK6C,OAAOC,MAAMtB,KACjDxB,KAAKk4L,iBAEP50L,QAxBF,WAwBA,WACIC,SAASC,IAAI,6BAA6B,SAA9C,GACM,EAAN,cACM,EAAN,gCACM,EAAN,gDAEM,EAAN,YACQC,MAAO,EAAf,sBACQC,KACR,0IACQC,mBAAmB,IAGrB,EAAN,cACM,EAAN,iBAGEC,QAAS,CACPwwL,WADJ,WAEMp0L,KAAKk0L,WAAY,EACjBl0L,KAAKwG,MAAMkuL,SAAShuL,SAEtB,QALJ,WAKA,uKACA,cACA,8BACA,KACA,0IACA,uBACA,WANA,SAUA,gDACA,sHAXA,SAaA,oEAbA,OAaA,EAbA,OAcA,mCAEA,GACA,2DACA,+BACA,gBAEA,mDArBA,qDAwBA,uCAxBA,yBA4BA,gBA5BA,gFA+BI,cApCJ,WAoCA,yKACA,GACA,KACA,gCACA,UACA,gBALA,SAQA,wDARA,OAQA,EARA,OASA,mCAEA,SACA,iCAEA,wBACA,wEAIA,mDAnBA,gDCzJgY,I,kCCS5X1C,EAAY,eACd,EACAlE,EACAyC,GACA,EACA,KACA,WACA,MAIa,aAAAyB,E,kDCpBf,IAAIlE,EAAS,WAAa,IAAIC,EAAIC,KAASC,EAAGF,EAAIG,eAAmBC,EAAGJ,EAAIK,MAAMD,IAAIF,EAAG,OAAOE,EAAG,QAAQ,CAACE,MAAM,CAAC,KAAON,EAAI4F,OAAOC,QAAQ,KAAO,QAAQrF,GAAG,CAAC,cAAc,SAASC,GAAQ,OAAOT,EAAI+B,KAAK/B,EAAI4F,OAAQ,UAAWnF,MAAW,CAACL,EAAG,KAAK,CAACM,YAAY,iBAAiBJ,MAAM,CAAC,KAAO,UAAUK,KAAK,UAAU,CAACX,EAAIY,GAAG,IAAIZ,EAAIa,GAAGb,EAAIc,GAAG,+CAA+C,OAAOV,EAAG,qBAAqB,CAACW,IAAI,UAAUC,YAAYhB,EAAIiB,GAAG,CAAC,CAACC,IAAI,UAAUC,GAAG,SAASJ,GACre,IAAIK,EAAeL,EAAIK,aACvB,MAAO,CAAChB,EAAG,OAAO,CAACI,GAAG,CAAC,OAAS,SAASC,GAAgC,OAAxBA,EAAOY,iBAAwBD,EAAapB,EAAI8F,kBAAkB,CAAC1F,EAAG,MAAM,CAACM,YAAY,iBAAiB,CAACN,EAAG,MAAM,CAAC6F,MAAM,wBAA0BjG,EAAIkG,OAAO,CAAC9F,EAAG,QAAQ,CAACJ,EAAIY,GAAGZ,EAAIa,GAAGb,EAAIc,GAAG,+DAA+DV,EAAG,YAAY,CAACM,YAAY,iBAAiBJ,MAAM,CAAC,KAAO,QAAQ,YAAcN,EAAIc,GAAG,4DAA4Da,MAAM,CAACC,MAAO5B,EAAI+F,KAAgC,4BAAElE,SAAS,SAAUC,GAAM9B,EAAI+B,KAAK/B,EAAI+F,KAAM,8BAA+BjE,IAAME,WAAW,qCAAqChC,EAAIuB,GAAIvB,EAAc,YAAE,SAAS++L,GAAW,OAAO3+L,EAAG,YAAY,CAACc,IAAI69L,EAAU9G,oBAAoBv3L,YAAY,iBAAiBJ,MAAM,CAAC,MAAQy+L,EAAU9G,oBAAoB,MAAQ8G,EAAUj7L,sBAAqB,GAAI9D,EAAuB,oBAAEI,EAAG,MAAM,CAACM,YAAY,+BAA+BuB,YAAY,CAAC,QAAU,UAAU,CAACjC,EAAIY,GAAG,IAAIZ,EAAIa,GAAGb,EAAIqG,eAAe,OAAOrG,EAAIkH,MAAM,GAAG9G,EAAG,MAAM,CAAC6F,MAAM,wBAA0BjG,EAAIkG,OAAO,CAAC9F,EAAG,QAAQ,CAACJ,EAAIY,GAAGZ,EAAIa,GAAGb,EAAIc,GAAG,yDAAyD,CAACV,EAAG,iBAAiB,CAACE,MAAM,CAAC,gBAAgB,GAAG,YAAcN,EAAIc,GAAG,sDAAsDa,MAAM,CAACC,MAAO5B,EAAW,QAAE6B,SAAS,SAAUC,GAAM9B,EAAIg/L,QAAQl9L,GAAKE,WAAW,aAAchC,EAAiB,cAAEI,EAAG,MAAM,CAACM,YAAY,+BAA+BuB,YAAY,CAAC,QAAU,UAAU,CAACjC,EAAIY,GAAG,IAAIZ,EAAIa,GAAGb,EAAIqG,eAAe,OAAOrG,EAAIkH,OAAO,KAAK9G,EAAG,MAAM,CAACM,YAAY,aAAauB,YAAY,CAAC,aAAa,OAAO,cAAc,OAAO,aAAa,UAAU3B,MAAM,CAAC,KAAO,UAAUK,KAAK,UAAU,CAACP,EAAG,WAAW,CAACM,YAAY,0BAA0B4B,SAAS,CAAC,MAAQ,SAAS7B,GAAQ,OAAOT,EAAIuC,eAAe,CAACvC,EAAIY,GAAGZ,EAAIa,GAAGb,EAAIc,GAAG,0BAA0BV,EAAG,WAAW,CAACE,MAAM,CAAC,cAAc,SAAS,KAAO,YAAY,CAACN,EAAIY,GAAGZ,EAAIa,GAAGb,EAAIc,GAAG,yBAAyB,aAAa,IAC/7D0B,EAAkB,G,4CC2EtB,GACEC,WAAY,GACZC,KAFF,WAGI,MAAO,CACLulJ,qBAAqB,EACrBiwC,WAAY,GACZpvL,eAAe,EACfzC,cAAepG,KAAKa,GAAG,wBACvBoF,MAAO,sBACP84L,QAAS,IAAI72L,KAAK,KAAM,EAAG,GAAI,GAAI,IACnCpC,KAAM,CACJk5L,uBAAwB,EACxBn7L,gBAAiB,GACjBk7L,QAAS,GACTE,4BAA6B,GAE/Bt5L,OAAQ,CACNC,SAAS,KAIfsG,MAAO,CACL6yL,QADJ,SACA,GACUp9L,GACF3B,KAAK6I,eAAgB,EACrB7I,KAAK8F,KAAKo5L,WAClB,uCACA,IACA,yCACA,IACA,0CAEQl/L,KAAK6I,eAAgB,IAI3BnG,SAAU,GACVC,QArCF,aAsCEW,QAtCF,WAsCA,WACIC,SAASC,IAAI,qBAAjB,sIACA,eACA,cACA,8BACA,KACA,0IACA,uBAEA,mBACA,gBACA,oBAVA,6CAaEI,QAAS,CACP,eADJ,WACA,qKACA,cACA,8BACA,KACA,0IACA,uBAEA,GACA,KACA,gCACA,sCACA,mBAXA,SAaA,QACA,gDACA,KAFA,yDAGA,+FACA,mBACA,sCACA,mBACA,sBACA,qBACA,8DAIA,mDAVA,2CAHA,uDAgBA,YACA,eACA,sDAGA,wBAlCA,OAqCA,gBArCA,8CAuCIu7L,SAxCJ,SAwCA,GACM,IAAIC,EAAgB,GAMpB,OAJEA,EADEC,EAAU5qL,WAAW/I,OAAS,EAChB,IAAM2zL,EAAU5qL,WAEhB4qL,EAAU5qL,WAErB2qL,GAET,cAjDJ,WAiDA,wJACA,oBACA,WACA,mBACA,oCACA,yBACA,cAEA,0BAGA,mBAXA,8CAcI,SA/DJ,WA+DA,+JACA,kBACA,iCACA,IACA,mCACA,IACA,mCAEA,4BACA,cACA,8BACA,KACA,0IACA,uBAbA,SAeA,QACA,mEACA,KAFA,yDAGA,+FACA,mBACA,2DACA,uCACA,eAEA,mDANA,2CAHA,uDAYA,YACA,iBACA,sDAGA,wBAhCA,OAiCA,gBAjCA,8CAmCI98L,UAlGJ,WAmGMtC,KAAKwG,MAAMC,QAAQC,QACnB1G,KAAK8F,KAAKjC,gBAAkB,GAC5B7D,KAAK2F,OAAOC,SAAU,GAExB,iBAvGJ,WAuGA,+JACA,cACA,8BACA,KACA,0IACA,uBALA,SAOA,eAPA,OAQA,gBARA,8CAUI,WAjHJ,WAiHA,sLCnPyX,I,wBCQrX5B,EAAY,eACd,EACAlE,EACAyC,GACA,EACA,KACA,KACA,MAIa,aAAAyB,E,kDCnBf,IAAIlE,EAAS,WAAa,IAAIC,EAAIC,KAASC,EAAGF,EAAIG,eAAmBC,EAAGJ,EAAIK,MAAMD,IAAIF,EAAG,OAAOE,EAAG,QAAQ,CAACE,MAAM,CAAC,KAAON,EAAI4F,OAAOC,SAASrF,GAAG,CAAC,cAAc,SAASC,GAAQ,OAAOT,EAAI+B,KAAK/B,EAAI4F,OAAQ,UAAWnF,MAAW,CAACL,EAAG,KAAK,CAACM,YAAY,iBAAiBJ,MAAM,CAAC,KAAO,UAAUK,KAAK,UAAU,CAACX,EAAIY,GAAG,IAAIZ,EAAIa,GAAGb,EAAIc,GAAG,qCAAqC,OAAOV,EAAG,qBAAqB,CAACW,IAAI,UAAUC,YAAYhB,EAAIiB,GAAG,CAAC,CAACC,IAAI,UAAUC,GAAG,SAASJ,GAC7c,IAAIK,EAAeL,EAAIK,aACvB,MAAO,CAAChB,EAAG,OAAO,CAACI,GAAG,CAAC,OAAS,SAASC,GAAgC,OAAxBA,EAAOY,iBAAwBD,EAAapB,EAAIu/L,oBAAoB,CAACn/L,EAAG,MAAM,CAACM,YAAY,OAAO,CAACN,EAAG,MAAM,CAACM,YAAY,aAAa,CAACN,EAAG,qBAAqB,CAACE,MAAM,CAAC,KAAO,YAAY,MAAQ,kBAAkBU,YAAYhB,EAAIiB,GAAG,CAAC,CAACC,IAAI,UAAUC,GAAG,SAASJ,GACpT,IAAIoF,EAASpF,EAAIoF,OACbC,EAASrF,EAAIqF,OACjB,MAAO,CAAChG,EAAG,WAAW,CAACE,MAAM,CAAC,KAAO,OAAO,MAAQ8F,EAAS,6CAA+C,KAAK,WAAaD,EAAO,KAAO,YAAY,MAAQnG,EAAIc,GAAG,wCAAwCa,MAAM,CAACC,MAAO5B,EAAI+F,KAAW,OAAElE,SAAS,SAAUC,GAAM9B,EAAI+B,KAAK/B,EAAI+F,KAAM,SAAUjE,IAAME,WAAW,qBAAqB,MAAK,MAAS,KAAK5B,EAAG,MAAM,CAACM,YAAY,OAAO,CAACN,EAAG,MAAM,CAACM,YAAY,aAAa,CAACN,EAAG,qBAAqB,CAACE,MAAM,CAAC,KAAO,YAAY,MAAQ,kBAAkBU,YAAYhB,EAAIiB,GAAG,CAAC,CAACC,IAAI,UAAUC,GAAG,SAASJ,GAC3hB,IAAIoF,EAASpF,EAAIoF,OACbC,EAASrF,EAAIqF,OACjB,MAAO,CAAChG,EAAG,WAAW,CAACE,MAAM,CAAC,KAAO,OAAO,MAAQ8F,EAAS,6CAA+C,KAAK,WAAaD,EAAO,KAAO,YAAY,MAAQnG,EAAIc,GAAG,gDAAgDa,MAAM,CAACC,MAAO5B,EAAI+F,KAAgB,YAAElE,SAAS,SAAUC,GAAM9B,EAAI+B,KAAK/B,EAAI+F,KAAM,cAAejE,IAAME,WAAW,0BAA0B,MAAK,MAAS,KAAK5B,EAAG,MAAM,CAACM,YAAY,OAAO,CAACN,EAAG,MAAM,CAACM,YAAY,iCAAiC,CAACN,EAAG,MAAM,CAACM,YAAY,OAAO,CAACN,EAAG,QAAQ,CAAC6B,YAAY,CAAC,cAAc,SAAS,CAACjC,EAAIY,GAAGZ,EAAIa,GAAGb,EAAIc,GAAG,4BAA4B,CAACV,EAAG,WAAW,CAACuB,MAAM,CAACC,MAAO5B,EAAI+F,KAAW,OAAElE,SAAS,SAAUC,GAAM9B,EAAI+B,KAAK/B,EAAI+F,KAAM,SAAUjE,IAAME,WAAW,gBAAgB,CAAC5B,EAAG,IAAI,CAACM,YAAY,0BAA0BJ,MAAM,CAAC,KAAO,MAAMK,KAAK,OAAOP,EAAG,IAAI,CAACM,YAAY,kCAAkCJ,MAAM,CAAC,KAAO,OAAOK,KAAK,YAAY,KAAKP,EAAG,MAAM,CAACM,YAAY,aAAauB,YAAY,CAAC,aAAa,OAAO,cAAc,OAAO,aAAa,UAAU3B,MAAM,CAAC,KAAO,UAAUK,KAAK,UAAU,CAACP,EAAG,WAAW,CAACM,YAAY,0BAA0B4B,SAAS,CAAC,MAAQ,SAAS7B,GAAQ,OAAOT,EAAIuC,eAAe,CAACvC,EAAIY,GAAGZ,EAAIa,GAAGb,EAAIc,GAAG,0BAA0BV,EAAG,WAAW,CAACE,MAAM,CAAC,cAAc,SAAS,KAAO,YAAY,CAACN,EAAIY,GAAGZ,EAAIa,GAAGb,EAAIc,GAAG,yBAAyB,aAAa,IAClzC0B,EAAkB,G,0DC4EtB,+BACA,kCACA,6BAEA,OACEC,WAAY,GACZC,KAFF,WAGI,MAAO,CACL61J,kBAAkB,EAClBxyJ,KAAM,CACJuuL,aAAc,EACd/tL,OAAQ,GACRguL,YAAa,GACbxwL,QAAQ,EACRy0J,UAAW,GAEbC,UAAW,GACXt2J,KAAM,CAAC,GAAI,OAAQ,UAAW,UAAW,UACzCu2J,cAAe,CACbC,WAAW,GAEb/yJ,OAAQ,CACNC,SAAS,EACT+yJ,QAAQ,EACRC,MAAM,KAIZt1J,QAxBF,WAwBA,WACIC,SAASC,IAAI,cAAjB,sIACA,cACA,8BACA,KACA,0IACA,uBAEA,gBACA,oBARA,6CAWEI,QAAS,CACPtB,UADJ,WAEMtC,KAAK8F,KAAKQ,OAAS,GACnBtG,KAAK8F,KAAKwuL,YAAc,GACxBt0L,KAAK8F,KAAKhC,QAAS,EACnB9D,KAAK2F,OAAOC,SAAU,EACtB5F,KAAKwG,MAAMC,QAAQC,SAErB,gBARJ,WAQA,+JACA,cACA,8BACA,KACA,0IACA,uBALA,SAOA,cAPA,OAQA,gBARA,8CAUI,UAlBJ,WAkBA,wKACA,QACA,+CACA,KAFA,yDAGA,+FACA,eACA,mBACA,2DACA,cACA,gCAEA,mDAPA,2CAHA,uDAaA,YACA,sDAGA,wBAlBA,gDC/IkX,I,wBCQ9W1C,EAAY,eACd,EACAlE,EACAyC,GACA,EACA,KACA,KACA,MAIa,aAAAyB,E,kDCnBf,IAAIlE,EAAS,WAAa,IAAIC,EAAIC,KAASC,EAAGF,EAAIG,eAAmBC,EAAGJ,EAAIK,MAAMD,IAAIF,EAAG,OAAOE,EAAG,MAAM,CAACM,YAAY,OAAO,CAACN,EAAG,MAAM,CAACM,YAAY,UAAU,CAACN,EAAG,MAAM,CAACM,YAAY,kBAAkB,CAACN,EAAG,oBAAoB,CAACE,MAAM,CAAC,WAAa,uBAAuB,OAAS,mCAAmC,CAACF,EAAG,WAAW,CAACE,MAAM,CAAC,KAAO,UAAU,MAAQ,IAAIgC,SAAS,CAAC,MAAQ,SAAS7B,GAAQ,OAAOT,EAAIw/L,mBAAmB,CAACp/L,EAAG,IAAI,CAACM,YAAY,+BAA+BJ,MAAM,CAAC,KAAO,SAASK,KAAK,UAAUX,EAAIY,GAAG,IAAIZ,EAAIa,GAAGb,EAAIc,GAAG,4CAA4C,QAAQ,IAAI,GAAGV,EAAG,OAAO,CAACE,MAAM,CAAC,oBAAoB,mBAAmB,iBAAiB,KAAK,CAACF,EAAG,MAAM,CAACM,YAAY,yEAAyEN,EAAG,MAAM,CAACA,EAAG,MAAM,CAACM,YAAY,6EAA6E,CAACN,EAAG,KAAK,CAACM,YAAY,0BAA0B,CAACV,EAAIY,GAAG,IAAIZ,EAAIa,GAAGb,EAAIc,GAAG,wCAAwC,OAAOV,EAAG,WAAW,CAACA,EAAG,WAAW,CAACM,YAAY,OAAOuB,YAAY,CAAC,MAAQ,SAAS3B,MAAM,CAAC,KAAO,SAAS,UAAY,GAAG,cAAc,kBAAkB,YAAcN,EAAIc,GAAG,sBAAsB,gBAAgB,cAAca,MAAM,CAACC,MAAO5B,EAAe,YAAE6B,SAAS,SAAUC,GAAM9B,EAAIwK,YAAY1I,GAAKE,WAAW,kBAAkB,IAAI,GAAG5B,EAAG,WAAW,CAAC6B,YAAY,CAAC,MAAQ,QAAQ3B,MAAM,CAAC,OAAS,GAAG,KAAON,EAAIyK,cAAc,CAACrK,EAAG,kBAAkB,CAACE,MAAM,CAAC,KAAO,QAAQ,MAAQL,KAAKa,GAAG,gDAAgD,SAAW,GAAG,YAAY,SAASV,EAAG,kBAAkB,CAACE,MAAM,CAAC,KAAO,gBAAgB,MAAQL,KAAKa,GAAG,8CAA8C,SAAW,GAAG,YAAY,SAASV,EAAG,kBAAkB,CAACE,MAAM,CAAC,MAAQN,EAAIc,GAAG,sBAAsB,YAAY,OAAOE,YAAYhB,EAAIiB,GAAG,CAAC,CAACC,IAAI,UAAUC,GAAG,SAASuJ,GAAO,MAAO,CAAC1K,EAAIY,GAAG,IAAIZ,EAAIa,GAAG6J,EAAMC,IAAInE,QAAUxG,EAAIc,GAAG,sBAAwBd,EAAIc,GAAG,yBAAyB,YAAYV,EAAG,oBAAoB,CAACE,MAAM,CAAC,WAAa,uBAAuB,OAAS,mCAAmC,CAACF,EAAG,kBAAkB,CAACE,MAAM,CAAC,MAAQN,EAAIc,GAAG,sBAAsB,YAAY,KAAKE,YAAYhB,EAAIiB,GAAG,CAAC,CAACC,IAAI,UAAUC,GAAG,SAASyJ,GAAO,MAAO,CAACxK,EAAG,WAAW,CAACE,MAAM,CAAC,MAAQ,SAASE,GAAG,CAAC,MAAQ,SAASC,GAAQ,OAAOT,EAAIuO,OAAO3D,EAAMD,OAAOhJ,MAAM,CAACC,MAAOgJ,EAAMD,IAAW,QAAE9I,SAAS,SAAUC,GAAM9B,EAAI+B,KAAK6I,EAAMD,IAAK,UAAW7I,IAAME,WAAW,sBAAsB,CAAC5B,EAAG,IAAI,CAACM,YAAY,0BAA0BJ,MAAM,CAAC,KAAO,MAAMK,KAAK,OAAOP,EAAG,IAAI,CAACM,YAAY,kCAAkCJ,MAAM,CAAC,KAAO,OAAOK,KAAK,kBAAkB,IAAI,IAAI,GAAGP,EAAG,MAAM,CAACM,YAAY,4EAA4EJ,MAAM,CAAC,KAAO,UAAUK,KAAK,UAAU,CAACP,EAAG,MAAM,GAAG,CAACA,EAAG,IAAI,CAACM,YAAY,iBAAiB,CAACV,EAAIY,GAAG,IAAIZ,EAAIa,GAAGb,EAAIc,GAAG,2BAA2B,IAAId,EAAIa,GAAGb,EAAIgL,KAAO,GAAG,IAAIhL,EAAIa,GAAGb,EAAIc,GAAG,sBAAsB,IAAId,EAAIa,GAAGb,EAAIiL,IAAI,IAAIjL,EAAIa,GAAGb,EAAIc,GAAG,sBAAsB,IAAId,EAAIa,GAAGb,EAAIkL,OAAO,IAAIlL,EAAIa,GAAGb,EAAIc,GAAG,2BAA2B,SAASV,EAAG,eAAe,CAACM,YAAY,uBAAuBJ,MAAM,CAAC,WAAWN,EAAImL,WAAWC,QAAQ,MAAQpL,EAAIkL,OAAOvJ,MAAM,CAACC,MAAO5B,EAAImL,WAAsB,YAAEtJ,SAAS,SAAUC,GAAM9B,EAAI+B,KAAK/B,EAAImL,WAAY,cAAerJ,IAAME,WAAW,6BAA6B,KAAK5B,EAAG,8BAA8B,MACr0GoC,EAAkB,G,wHCiHtB,GACEC,WAAY,CACVg9L,wBAAyB,WAA7B,oFAEE98L,SAAU,OAAZ,OAAY,CAAZ,iCACA,6BACA,0BAFA,IAGI8H,YAHJ,WAIM,IAAN,oCACM,OAAOzF,EAAOuG,MAAMtL,KAAK+K,KAAM/K,KAAKgL,KAEtCA,GAPJ,WAQM,IAAN,oCAIM,OAHIhL,KAAKiL,MAAQM,IACfA,EAAYvL,KAAKiL,OAEZM,GAETR,KAdJ,WAeM,OAAO/K,KAAKkL,WAAWC,SAAWnL,KAAKkL,WAAWM,YAAc,IAElEP,MAjBJ,WAkBM,IAAN,oCACM,OAAOQ,EAAaC,OAAS,EACnC,SACA,yBAGEjJ,KA5BF,WA6BI,MAAO,CACLP,KAAM,CAAC,GAAI,OAAQ,UAAW,UAAW,UACzCgJ,WAAY,CACVC,QAAS,EACTK,YAAa,EACbG,eAAgB,CAAC,EAAG,GAAI,GAAI,IAC5BV,MAAO,GAETV,YAAa,GACbqB,UAAW,GACXH,aAAc,GACdI,WAAY,OAGhB,QA3CF,WA2CA,oLACEjI,QAAS,CACPkI,aADJ,SACA,cAWM,OATA/G,EACN,0BACA,sBAAQ,OACR,gBACA,WACA,cACA,yCAEA,EACaA,GAET,OAdJ,SAcA,2KACA,QACA,qEACA,KAFA,yDAGA,+FACA,eACA,mBACA,2DACA,4CAEA,mDANA,2CAHA,uDAYA,YACA,sDAGA,wBAjBA,8CAmBI2yL,YAjCJ,SAiCA,OACM13L,KAAKwG,MAAM1F,GAAKiL,UAChBxI,SAASyI,MAAM,eAAgB/I,IAEjCs8L,cArCJ,WAsCMh8L,SAASyI,MAAM,gBAEjB,eAxCJ,WAwCA,qKACA,cACA,8BACA,KACA,0IACA,uBAEA,GACA,KACA,gCACA,uCAVA,SAYA,QACA,gEACA,KAFA,yDAGA,+FACA,eACA,kBACA,0CAEA,mDALA,2CAHA,uDAWA,YACA,eACA,sDAGA,wBA5BA,OA6BA,gBA7BA,+CAgCE,QApHF,WAoHA,wKACA,mBADA,OAEA,oDACA,sBAHA,8CAMEE,MAAO,IC5OmX,I,wBCQxXlI,EAAY,eACd,EACAlE,EACAyC,GACA,EACA,KACA,KACA,MAIa,aAAAyB,E,kDCnBf,IAAIlE,EAAS,WAAa,IAAIC,EAAIC,KAASC,EAAGF,EAAIG,eAAmBC,EAAGJ,EAAIK,MAAMD,IAAIF,EAAG,OAAOE,EAAG,QAAQ,CAACE,MAAM,CAAC,KAAON,EAAI4F,OAAOC,SAASrF,GAAG,CAAC,cAAc,SAASC,GAAQ,OAAOT,EAAI+B,KAAK/B,EAAI4F,OAAQ,UAAWnF,MAAW,CAACL,EAAG,KAAK,CAACM,YAAY,iBAAiBJ,MAAM,CAAC,KAAO,UAAUK,KAAK,UAAU,CAACX,EAAIY,GAAGZ,EAAIa,GAAGb,EAAIc,GAAG,iDAAiDV,EAAG,qBAAqB,CAACW,IAAI,UAAUC,YAAYhB,EAAIiB,GAAG,CAAC,CAACC,IAAI,UAAUC,GAAG,SAASJ,GAC9c,IAAIK,EAAeL,EAAIK,aACvB,MAAO,CAAChB,EAAG,OAAO,CAACI,GAAG,CAAC,OAAS,SAASC,GAAgC,OAAxBA,EAAOY,iBAAwBD,EAAapB,EAAI0/L,eAAe,CAACt/L,EAAG,MAAM,CAACM,YAAY,OAAO,CAACN,EAAG,MAAM,CAACM,YAAY,aAAa,CAACN,EAAG,MAAM,CAACM,YAAY,OAAO,CAACN,EAAG,MAAM,CAACM,YAAY,UAAU,CAACN,EAAG,QAAQ,CAACJ,EAAIY,GAAGZ,EAAIa,GAAGb,EAAIc,GAAG,4DAA4DV,EAAG,MAAM,CAACM,YAAY,UAAU,CAACN,EAAG,YAAY,CAACE,MAAM,CAAC,YAAcN,EAAIc,GAAG,sDAAsD,KAAO,QAAQ,YAAc,IAAIa,MAAM,CAACC,MAAO5B,EAAIo5C,SAAuD,+CAAEv3C,SAAS,SAAUC,GAAM9B,EAAI+B,KAAK/B,EAAIo5C,SAAU,iDAAkDt3C,IAAME,WAAW,4DAA4DhC,EAAIuB,GAAIvB,EAAU,QAAE,SAASk1L,GAAO,OAAO90L,EAAG,YAAY,CAACc,IAAIg0L,EAAMyK,iBAAiBr/L,MAAM,CAAC,MAAQ40L,EAAM0K,YAAY,MAAQ1K,EAAMyK,uBAAsB,IAAI,GAAGv/L,EAAG,MAAM,CAACM,YAAY,SAAS,CAACN,EAAG,oBAAoB,CAACE,MAAM,CAAC,WAAa,gCAAgC,OAAS,sCAAsC,CAACF,EAAG,WAAW,CAACM,YAAY,kBAAkBJ,MAAM,CAAC,KAAO,UAAU,MAAQN,EAAIc,GAAG,mBAAmB,MAAQ,GAAG,KAAO,GAAG,KAAO,MAAMwB,SAAS,CAAC,MAAQ,SAAS7B,GAAQ,OAAOT,EAAI6/L,kBAAkB,CAACz/L,EAAG,IAAI,CAACM,YAAY,kBAAkB,IAAI,KAAKN,EAAG,MAAM,CAACM,YAAY,aAAaV,EAAIuB,GAAIvB,EAAIo5C,SAAqB,cAAE,SAAS33C,GAAM,OAAOrB,EAAG,MAAM,CAACA,EAAG,KAAK,CAACJ,EAAIY,GAAGZ,EAAIa,GAAGY,EAAKC,OAAOA,WAAWtB,EAAG,MAAM,CAACM,YAAY,OAAO,CAACN,EAAG,MAAM,CAACM,YAAY,UAAU,CAACN,EAAG,WAAW,CAACE,MAAM,CAAC,KAAO,OAAO,KAAO,YAAY,MAAQN,EAAIc,GAAG,iDAAiDa,MAAM,CAACC,MAAOH,EAAoB,gBAAEI,SAAS,SAAUC,GAAM9B,EAAI+B,KAAKN,EAAM,kBAAmBK,IAAME,WAAW,2BAA2B,KAAK5B,EAAG,MAAM,CAACM,YAAY,kBAAiBN,EAAG,MAAM,CAACM,YAAY,OAAO,CAACN,EAAG,MAAM,CAACM,YAAY,SAAS,CAACN,EAAG,YAAY,CAACE,MAAM,CAAC,YAAcN,EAAIc,GAAG,wDAAwD,KAAO,SAASa,MAAM,CAACC,MAAO5B,EAAIo5C,SAAa,KAAEv3C,SAAS,SAAUC,GAAM9B,EAAI+B,KAAK/B,EAAIo5C,SAAU,OAAQt3C,IAAME,WAAW,kBAAkBhC,EAAIuB,GAAIvB,EAAS,OAAE,SAASmC,GAAM,OAAO/B,EAAG,YAAY,CAACc,IAAIiB,EAAK7B,MAAM,CAAC,MAAQN,EAAIc,GAAG,2CAA2CqB,EAAKmN,MAAM,MAAQnN,EAAKmN,WAAU,IAAI,GAAGlP,EAAG,MAAM,CAACM,YAAY,kBAAkBuB,YAAY,CAAC,aAAa,WAAW,CAACjC,EAAIY,GAAG,IAAIZ,EAAIa,GAAGb,EAAIc,GAAG,uBAAuB,KAAKV,EAAG,MAAMA,EAAG,WAAW,CAACuB,MAAM,CAACC,MAAO5B,EAAIo5C,SAAe,OAAEv3C,SAAS,SAAUC,GAAM9B,EAAI+B,KAAK/B,EAAIo5C,SAAU,SAAUt3C,IAAME,WAAW,sBAAsB,MAAM,KAAK5B,EAAG,MAAM,CAACM,YAAY,aAAauB,YAAY,CAAC,aAAa,OAAO,cAAc,OAAO,aAAa,UAAU3B,MAAM,CAAC,KAAO,UAAUK,KAAK,UAAU,CAACP,EAAG,WAAW,CAACM,YAAY,0BAA0B4B,SAAS,CAAC,MAAQ,SAAS7B,GAAQ,OAAOT,EAAIuC,eAAe,CAACvC,EAAIY,GAAGZ,EAAIa,GAAGb,EAAIc,GAAG,0BAA0BV,EAAG,oBAAoB,CAACE,MAAM,CAAC,WAAa,2BAA2B,OAAS,gCAAgC,CAACF,EAAG,WAAW,CAACE,MAAM,CAAC,cAAc,SAAS,KAAO,YAAY,CAACN,EAAIY,GAAGZ,EAAIa,GAAGb,EAAIc,GAAG,yBAAyB,IAAI,YAAYV,EAAG,yCAAyC,IAC3nGoC,EAAkB,G,0FCHlB,EAAS,WAAa,IAAIxC,EAAIC,KAASC,EAAGF,EAAIG,eAAmBC,EAAGJ,EAAIK,MAAMD,IAAIF,EAAG,OAAOE,EAAG,QAAQ,CAACE,MAAM,CAAC,KAAON,EAAI4F,OAAOC,SAASrF,GAAG,CAAC,cAAc,SAASC,GAAQ,OAAOT,EAAI+B,KAAK/B,EAAI4F,OAAQ,UAAWnF,MAAW,CAACL,EAAG,KAAK,CAACM,YAAY,iBAAiBJ,MAAM,CAAC,KAAO,UAAUK,KAAK,UAAU,CAACX,EAAIY,GAAGZ,EAAIa,GAAGb,EAAIc,GAAG,uDAAuDV,EAAG,qBAAqB,CAACW,IAAI,UAAUC,YAAYhB,EAAIiB,GAAG,CAAC,CAACC,IAAI,UAAUC,GAAG,SAASJ,GACpd,IAAIK,EAAeL,EAAIK,aACvB,MAAO,CAAChB,EAAG,OAAO,CAACI,GAAG,CAAC,OAAS,SAASC,GAAgC,OAAxBA,EAAOY,iBAAwBD,EAAapB,EAAI8/L,mBAAmB,CAAC9/L,EAAIuB,GAAIvB,EAAIk1L,MAAkB,cAAE,SAASzzL,GAAM,OAAOrB,EAAG,MAAM,CAACA,EAAG,KAAK,CAACJ,EAAIY,GAAGZ,EAAIa,GAAGY,EAAKC,OAAOA,WAAWtB,EAAG,MAAM,CAACM,YAAY,OAAO,CAACN,EAAG,MAAM,CAACM,YAAY,aAAa,CAACN,EAAG,WAAW,CAACE,MAAM,CAAC,KAAO,OAAO,KAAO,YAAY,MAAQN,EAAIc,GAAG,iDAAiDa,MAAM,CAACC,MAAOH,EAAgB,YAAEI,SAAS,SAAUC,GAAM9B,EAAI+B,KAAKN,EAAM,cAAeK,IAAME,WAAW,uBAAuB,UAAS5B,EAAG,MAAM,CAACM,YAAY,aAAauB,YAAY,CAAC,aAAa,OAAO,cAAc,OAAO,aAAa,UAAU3B,MAAM,CAAC,KAAO,UAAUK,KAAK,UAAU,CAACP,EAAG,WAAW,CAACM,YAAY,YAAY4B,SAAS,CAAC,MAAQ,SAAS7B,GAAQ,OAAOT,EAAIuC,eAAe,CAACvC,EAAIY,GAAGZ,EAAIa,GAAGb,EAAIc,GAAG,0BAA0BV,EAAG,WAAW,CAACE,MAAM,CAAC,cAAc,SAAS,KAAO,YAAY,CAACN,EAAIY,GAAGZ,EAAIa,GAAGb,EAAIc,GAAG,yBAAyB,IAAI,WAAW,IAC18B,EAAkB,G,kECwCtB,kCACA,6BAEA,OACE2B,WAAY,GACZE,SAAU,OAAZ,OAAY,CAAZ,GACA,oCAEED,KALF,WAMI,MAAO,CACLkD,OAAQ,CACNC,SAAS,EACT+yJ,QAAQ,EACRC,MAAM,GAERq8B,MAAO,CACLyK,iBAAkB,EAClBv8L,aAAc,MAIpBR,QAlBF,WAmBI3C,KAAKi1L,MAAM9xL,aAAenD,KAAKoD,eAAeC,KAAI,SAAtD,mBACA,yBACA,eACA,iDACA,4BACA,gBACA,oBACA,gBACA,sBAIEC,QA/BF,WA+BA,WACIC,SAASC,IAAI,oCAAoC,WAC/C,EAAN,YACQC,MAAO,mBACPC,KACR,0IACQC,mBAAmB,IAErB,EAAN,cACM,EAAN,sBAGEC,QAAS,CACP,eADJ,WACA,qKACA,cACA,yBACA,KACA,0IACA,uBALA,SAUA,0CACA,wHAXA,SAcA,aAdA,OAcA,EAdA,OAgBA,GACA,2DACA,+BACA,eAEA,mDArBA,mDAwBA,uCAxBA,yBA4BA,gBA5BA,+EA+BI,SAhCJ,WAiCA,8KACA,+FADA,cACA,EADA,yBAEA,kCAFA,8CAIItB,UArCJ,WAsCMtC,KAAKi1L,MAAMyK,iBAAmB,EAC9B1/L,KAAKi1L,MAAM9xL,aAAa8B,SAAQ,SAAtC,8BACMjF,KAAK2F,OAAOC,SAAU,KCjI4W,I,YCOpY5B,EAAY,eACd,EACA,EACA,GACA,EACA,KACA,WACA,MAIa,EAAAA,E,6BC+Ff,kCACA,6BAEA,OACExB,WAAY,CACVs9L,iCAAJ,GAEEp9L,SAAU,OAAZ,OAAY,CAAZ,GACA,2CAEEC,QAPF,aAUEF,KAVF,WAWI,MAAO,CACLkD,OAAQ,CACNC,SAAS,EACT+yJ,QAAQ,EACRC,MAAM,GAERi8B,OAAQ,GACR17I,SAAU,CACR4mJ,2BAA4B,EAC5Bj8L,QAAQ,EACR8X,KAAM,QACNokL,+CAAgD,EAChD78L,aAAc,IAEhBirD,MAAO,CACb,CAAQ,KAAR,SACA,CAAQ,KAAR,QACA,CAAQ,KAAR,SAEM2uC,OAAQ,QAGZz5F,QAjCF,WAiCA,WACItD,KAAKm5C,SAASv2C,YAAc5C,KAAK6C,OAAOC,MAAMtB,KAC9CxB,KAAKm5C,SAASn2C,mBAAqBhD,KAAKiD,KAAKC,UAC7ClD,KAAKm5C,SAASh2C,aAAenD,KAAKoD,eAAeC,KAAI,SAAzD,mBACA,0CACA,mBACA,4BACA,gBACA,oBACA,gBACA,qBAIIrD,KAAKiP,OACL1L,SAASC,IAAI,+BAA+B,WAC1C,EAAN,aACM,EAAN,YACQC,MAAO,mBACPC,KACR,0IACQC,mBAAmB,IAErB,EAAN,cACM,EAAN,qBAEIJ,SAASC,IAAI,gCAAgC,SAAjD,GACM,EAAN,gBACM,EAAN,YACQC,MAAO,mBACPC,KACR,0IACQC,mBAAmB,IAErB,EAAN,cAEM,EAAN,iEACM,EAAN,yBACM,EAAN,qBACM,EAAN,yGACM,EAAN,qCAEM,EAAN,qBAEIJ,SAASC,IAAI,gBAAgB,WAC3B,EAAN,iBAGEI,QAAS,CACPqL,KADJ,WAEM,IAAN,OACMjP,KAAK6O,MAAM24I,KAAK,CACd/jJ,MAAOw8L,EAAKp/L,GAAG,mBACf6C,KACR,0IACQC,mBAAmB,IAGrB3D,KAAKkgM,aAELlgM,KAAK6O,MAAMk/G,SAEb,WAdJ,WAcA,yKACA,GACA,KACA,gCACA,WAJA,SAOA,wFAPA,OAOA,EAPA,OAQA,mCAEA,SACA,0CACA,oBACA,yFAGA,sDAhBA,8CAkBI6xE,aAhCJ,WAiCMr8L,SAASyI,MAAM,qCAEjB1J,UAnCJ,WAqCMtC,KAAKm5C,SAAS4mJ,2BAA6B,EAC3C//L,KAAKm5C,SAASr1C,QAAS,EACvB9D,KAAKm5C,SAASv9B,KAAO,QAE3B,uBACQ5b,KAAKm5C,SAAS6mJ,+CAAiDhgM,KAAK60L,OAAO,GAAG6K,kBAGhF1/L,KAAKm5C,SAASh2C,aAAenD,KAAKoD,eAAeC,KAAI,SAA3D,mBACA,0CACA,mBACA,4BACA,gBACA,oBACA,gBACA,qBAIMrD,KAAK2F,OAAOC,SAAU,GAExB,WA1DJ,WA2DA,8JACA,cACA,yBACA,KACA,0IACA,uBALA,SAUA,6CACA,sHAXA,KAeA,SAfA,OAgBA,QAhBA,OAiBA,WAjBA,wCAgBA,YAhBA,cAgBA,EAhBA,qDAiBA,aAjBA,eAiBA,EAjBA,oCAoBA,GACA,2DACA,mCACA,eAEA,mDAzBA,qDA4BA,uCA5BA,yBAgCA,gBAhCA,gFAmCI,QA9FJ,WA+FA,8KACA,uFADA,cACA,EADA,yBAEA,kCAFA,8CAII,SAnGJ,WAoGA,8KACA,yFADA,cACA,EADA,yBAEA,kCAFA,gDCzSmY,ICS/X,G,oBAAY,eACd,EACA9F,EACAyC,GACA,EACA,KACA,WACA,OAIa,e,kDCpBf,IAAIzC,EAAS,WAAa,IAAIC,EAAIC,KAASC,EAAGF,EAAIG,eAAmBC,EAAGJ,EAAIK,MAAMD,IAAIF,EAAG,OAAOE,EAAG,MAAM,CAACM,YAAY,OAAO,CAACN,EAAG,MAAM,CAACM,YAAY,UAAU,CAACN,EAAG,MAAM,CAACM,YAAY,QAAQ,CAACN,EAAG,MAAM,CAACM,YAAY,eAAe,CAACN,EAAG,KAAK,CAACM,YAAY,cAAc,CAACV,EAAIY,GAAG,IAAIZ,EAAIa,GAAGb,EAAIc,GAAGd,EAAI0D,QAAQ,OAAOtD,EAAG,IAAI,CAACM,YAAY,gBAAgB,CAACV,EAAIY,GAAG,IAAIZ,EAAIa,GAAGb,EAAIc,GAAG,gDAAgD,SAASV,EAAG,MAAM,CAACM,YAAY,aAAa,CAACN,EAAG,qBAAqB,CAACW,IAAI,UAAUC,YAAYhB,EAAIiB,GAAG,CAAC,CAACC,IAAI,UAAUC,GAAG,SAASJ,GACriB,IAAIK,EAAeL,EAAIK,aACvB,MAAO,CAAChB,EAAG,OAAO,CAACI,GAAG,CAAC,OAAS,SAASC,GAAgC,OAAxBA,EAAOY,iBAAwBD,EAAapB,EAAIogM,eAAe,CAAChgM,EAAG,MAAM,CAACM,YAAY,UAAU,CAACN,EAAG,MAAM,CAACM,YAAY,OAAO,CAACN,EAAG,MAAM,CAACM,YAAY,SAAS,CAACN,EAAG,WAAW,CAACE,MAAM,CAAC,KAAO,OAAO,MAAQN,EAAIc,GAAG,4CAA4Ca,MAAM,CAACC,MAAO5B,EAAIqgM,eAA4B,cAAEx+L,SAAS,SAAUC,GAAM9B,EAAI+B,KAAK/B,EAAIqgM,eAAgB,gBAAiBv+L,IAAME,WAAW,mCAAmC,GAAG5B,EAAG,MAAM,CAACM,YAAY,SAAS,CAACN,EAAG,MAAM,CAACM,YAAY,wBAAwB,CAACN,EAAG,QAAQ,CAACJ,EAAIY,GAAGZ,EAAIa,GAAGb,EAAIc,GAAG,wDAAwDV,EAAG,YAAY,CAACE,MAAM,CAAC,YAAcN,EAAIc,GAAG,oDAAoD,KAAO,SAASN,GAAG,CAAC,OAASR,EAAIsgM,gBAAgB3+L,MAAM,CAACC,MACrwB5B,EAAIqgM,eACN,sCAAEx+L,SAAS,SAAUC,GAAM9B,EAAI+B,KAAK/B,EAAIqgM,eAAgB,wCAAyCv+L,IAAME,WAAW,2GAA2GhC,EAAIuB,GAAIvB,EAAc,YAAE,SAASwB,GAAU,OAAOpB,EAAG,YAAY,CAACc,IAAIM,EAASy2L,oBAAoB33L,MAAM,CAAC,MAAQkB,EAASsC,gBAAgB,MAAQtC,EAASy2L,0BAAyB,IAAI,KAAK73L,EAAG,MAAM,CAACM,YAAY,SAAS,CAACN,EAAG,MAAM,CAACM,YAAY,wBAAwB,CAACN,EAAG,QAAQ,CAACJ,EAAIY,GAAGZ,EAAIa,GAAGb,EAAIc,GAAI,2DAA6Dd,EAAIugM,cAAc50L,OAAS,EAAGvL,EAAG,YAAY,CAACE,MAAM,CAAC,YAAcN,EAAIc,GAC5oB,uDACA,KAAO,QAAQ,YAAc,IAAIa,MAAM,CAACC,MAC1C5B,EAAIqgM,eACN,4CAAEx+L,SAAS,SAAUC,GAAM9B,EAAI+B,KAAK/B,EAAIqgM,eAAgB,8CAA+Cv+L,IAAME,WAAW,iHAAiHhC,EAAIuB,GAAIvB,EAAiB,eAAE,SAASwgM,GAAQ,OAAOpgM,EAAG,YAAY,CAACc,IAAIs/L,EAAOC,uBAAuBngM,MAAM,CAAC,MAAQkgM,EAAOE,mBAAmB,MAAQF,EAAOC,6BAA4B,GAAGzgM,EAAIkH,MAAM,OAAO9G,EAAG,MAAM,CAACM,YAAY,aAAaN,EAAG,MAAM,CAACM,YAAY,OAAO,CAACN,EAAG,MAAM,CAACM,YAAY,UAAU,CAACN,EAAG,MAAM,CAACM,YAAY,wBAAwB,CAACN,EAAG,QAAQ,CAACJ,EAAIY,GAAGZ,EAAIa,GAAGb,EAAIc,GAAI,8DAA+DV,EAAG,YAAY,CAACE,MAAM,CAAC,OAAS,IAAI,OAAS,UAAU,eAAc,EAAM,YAAY,eAAe,SAAW,GAAG,YAAYN,EAAI8H,SAAS,KAAO,cAAc,YAAY9H,EAAI2gM,kBAAkB,YAAY3gM,EAAI2gM,oBAAoB,CAACvgM,EAAG,IAAI,CAACM,YAAY,oBAAoB,OAAON,EAAG,MAAM,CAACM,YAAY,aAAaV,EAAIuB,GAAIvB,EAAIqgM,eAA2B,cAAE,SAAS5+L,GAAM,OAAOrB,EAAG,MAAM,CAACA,EAAG,kBAAkB,CAACc,IAAIO,EAAKm/L,4BAA4BtgM,MAAM,CAAC,WAAamB,MAAS,MAAKrB,EAAG,MAAM,CAACM,YAAY,aAAaN,EAAG,MAAM,CAACM,YAAY,OAAO,CAACN,EAAG,MAAM,CAACM,YAAY,UAAU,CAACN,EAAG,QAAQ,CAACJ,EAAIY,GAAGZ,EAAIa,GAAGb,EAAIc,GAAI,uEAAwEd,EAAIuB,GAAIvB,EAAIqgM,eAA0B,aAAE,SAASjnJ,EAASh3C,GAAO,OAAOhC,EAAG,MAAM,CAACA,EAAG,iBAAiB,CAACE,MAAM,CAAC,OAASN,EAAI80L,OAAO,UAAY17I,EAAS,MAAQh3C,GAAO5B,GAAG,CAAC,eAAiB,SAASC,GAAQ,OAAOT,EAAI6gM,eAAepgM,OAAYL,EAAG,MAAM,CAACM,YAAY,cAAc,MAAKN,EAAG,MAAM,CAACM,YAAY,MAAMuB,YAAY,CAAC,QAAU,SAAS,OAAS,WAAWzB,GAAG,CAAC,MAAQR,EAAI8gM,cAAc,CAAC1gM,EAAG,MAAM,CAACM,YAAY,mBAAmB,CAACN,EAAG,IAAI,CAACM,YAAY,oBAAoB,GAAGN,EAAG,MAAM,CAACM,YAAY,MAAMuB,YAAY,CAAC,aAAa,OAAO,cAAc,OAAO,aAAa,UAAU3B,MAAM,CAAC,KAAO,UAAUK,KAAK,UAAU,CAACP,EAAG,MAAM,CAACM,YAAY,QAAQuB,YAAY,CAAC,aAAa,SAAS,CAACjC,EAAIY,GAAG,IAAIZ,EAAIa,GAAGb,EAAIc,GAAG,+CAA+C,KAAKV,EAAG,WAAW,CAACuB,MAAM,CAACC,MAAO5B,EAAIqgM,eAAwB,UAAEx+L,SAAS,SAAUC,GAAM9B,EAAI+B,KAAK/B,EAAIqgM,eAAgB,YAAav+L,IAAME,WAAW,+BAA+B,GAAG5B,EAAG,MAAM,CAACM,YAAY,QAAQuB,YAAY,CAAC,aAAa,WAAW,CAAC7B,EAAG,WAAW,CAAC6B,YAAY,CAAC,YAAY,UAAU3B,MAAM,CAAC,cAAc,SAAS,KAAO,UAAU,SAAWN,EAAI+gM,gBAAgBvgM,GAAG,CAAC,MAAQ,SAASC,GAAQT,EAAI+gM,gBAAiB,KAAQ,CAAC/gM,EAAIY,GAAGZ,EAAIa,GAAGb,EAAIc,GAAG,yBAAyB,GAAGV,EAAG,MAAM,CAACM,YAAY,QAAQuB,YAAY,CAAC,aAAa,UAAU,CAAC7B,EAAG,WAAW,CAACM,YAAY,gBAAgBuB,YAAY,CAAC,YAAY,UAAU3B,MAAM,CAAC,KAAO,WAAWgC,SAAS,CAAC,MAAQ,SAAS7B,GAAQ,OAAOT,EAAIk3E,QAAQ3pE,KAAK,CAAC+B,KAAM,0BAA0B,CAACtP,EAAIY,GAAGZ,EAAIa,GAAGb,EAAIc,GAAG,2BAA2B,eAAe,UAC74F0B,EAAkB,G,0NCmLtB,GACEC,WAAY,CACVu+L,eAAgB,WAApB,+CACIC,cAAe,WAAnB,gDAEEt+L,SAAU,OAAZ,OAAY,CAAZ,kBACA,2CADA,IAEI49L,cAFJ,WAEA,WACA,6HACM,OAAS/+L,GAAcA,EAAS0/L,cAAgB1/L,EAAS0/L,cAAgB,MAG7Et+L,QAZF,WAaI3C,KAAKogM,eAAe1wL,mBAAqB1P,KAAKiD,KAAKC,UACnDlD,KAAKogM,eAAej9L,aAAenD,KAAKoD,eAAeC,KAAI,SAA/D,mBACA,0CACA,4BACA,gBACA,oBACA,gBACA,sBAIEC,QAxBF,WAyBItD,KAAKiP,QAEPxM,KA3BF,WA4BI,MAAO,CACLq+L,gBAAgB,EAChBV,eAAgB,IAAI,EAA1B,EACMc,WAAY,GACZrM,OAAQ,GACRhtL,SAAU,GACVpE,MAAO,6CAGXG,QAAS,CACPqL,KADJ,WAEMjP,KAAK6O,MAAM24I,KAAK,CACd/jJ,MAAOzD,KAAKa,GAAG,mBACf6C,KACR,0IACQC,mBAAmB,IAErB3D,KAAKmhM,gBACLnhM,KAAKohM,mBAECphM,KAAKqhM,OAAOnsJ,OAAOxoC,KACvB1M,KAAKyD,MAAQ,+CACbzD,KAAKshM,kBAAkBl/L,SAASpC,KAAKqhM,OAAOnsJ,OAAOxoC,MAGrD1M,KAAK6O,MAAMk/G,SAEb,cAlBJ,WAkBA,kLAEA,yFAFA,OAEA,EAFA,OAGA,mCAEA,GACA,iCACA,kBACA,6EACA,kBACA,yGAEA,mDAZA,8CAcI,iBAhCJ,WAgCA,yKAEA,GACA,KACA,gCACA,UACA,qBANA,SASA,wFATA,OASA,EATA,OAUA,mCAEA,EACA,0CAEA,mDAfA,8CAiBI,kBAjDJ,SAiDA,sLACA,qCAEA,GACA,gCACA,KACA,WANA,SASA,4DATA,OAYA,GAHA,EATA,OAUA,mCAEA,GAGA,GAFA,wCAEA,8BACA,+BACA,gBAFA,iBAGA,GAHA,IAGA,qCACA,iBACA,4BALA,8BAQA,8CAGA,mDA1BA,8CA4BI,WA7EJ,WA6EA,2KAEA,oBACA,cACA,8BACA,KACA,0IACA,uBAPA,SAWA,+BAXA,sBAWA,uEAXA,YAaA,uEAbA,kCAcA,+BAdA,4DAcA,EAdA,QAeA,cAfA,uBAeA,oFAfA,uJAoBA,qEApBA,iBAqBA,IArBA,aAqBA,uCArBA,oBAsBA,kCACA,iBAvBA,uBAuBA,kFAvBA,QAqBA,IArBA,4BA4BA,mBA5BA,kCA6BA,aA7BA,QA6BA,EA7BA,gDA+BA,SA/BA,QA+BA,EA/BA,eAiCA,EACA,4CAEA,oBApCA,qDAuCA,uCACA,oBAxCA,yBA4CA,gBA5CA,6FA+CI,KA5HJ,WA4HA,4LAYA,GAVA,GACA,6FACA,yGACA,6CACA,qCACA,uDACA,gBACA,gBAGA,yDACA,+BADA,IACA,qCACA,qBACA,0BACA,oDACA,sCALA,+BAUA,yCACA,kDACA,kCACA,oBACA,0FACA,6EAQA,GAHA,eACA,oCAEA,wDACA,8BADA,IACA,qCACA,0BAFA,+BAMA,4DACA,+BADA,IACA,qCACA,iEACA,mEAHA,+BAOA,yCACA,kDACA,kCACA,kCACA,iDApDA,iBAyDA,8GAzDA,eAyDA,EAzDA,yBA0DA,kCA1DA,+CA4DI,SAxLJ,WAwLA,gMAcA,GAbA,GACA,qDACA,6FACA,yGACA,6CACA,qCACA,uDACA,eACA,gBACA,gBAGA,KACA,qEACA,KADA,iBAEA,8BAFA,IAEA,qCACA,kBAIA,UAHA,cAJA,8BAUA,gCAGA,2FACA,+BADA,IACA,qCACA,qBACA,0DACA,0BACA,oDACA,oCACA,2DACA,mEARA,+BAaA,uEACA,kDACA,kCACA,oBACA,wDACA,qEACA,0FACA,6EAUA,GALA,eACA,oCAEA,2DAEA,wFACA,+BADA,IACA,qCACA,+BACA,iEACA,iCACA,mEALA,+BASA,uEACA,kDACA,kCACA,kCACA,iDAtEA,iBA2EA,iHA3EA,eA2EA,EA3EA,yBA4EA,kCA5EA,+CA8EIsyE,eAtQJ,WAsQA,WACA,6HACA,wBACA,4GAEIK,kBA3QJ,SA2QA,KACM1gM,KAAKogM,eAAemB,YAAc,GADxC,uBAEA,GAFA,IAEA,+CACA,UACA,4CAEA,yCANA,gCASIV,YApRJ,WAqRA,wCACQ7gM,KAAKogM,eAAeoB,YAAc,IAGpCxhM,KAAKogM,eAAeoB,YAAYl0L,KAAK,IAAI,EAA/C,IAEIszL,eA3RJ,SA2RA,GAEM5gM,KAAKogM,eAAeoB,YAAYxyL,OAAO7M,EAAO,MC9f0U,I,kCCS1X6B,EAAY,eACd,EACAlE,EACAyC,GACA,EACA,KACA,WACA,MAIa,aAAAyB,E,4CCpBf,iDAQA,SAASy9L,EAAQv9L,GAaf,OATEu9L,EADoB,oBAAXC,QAAoD,kBAApBA,OAAOtH,SACtC,SAAUl2L,GAClB,cAAcA,GAGN,SAAUA,GAClB,OAAOA,GAAyB,oBAAXw9L,QAAyBx9L,EAAIsoB,cAAgBk1K,QAAUx9L,IAAQw9L,OAAOjnL,UAAY,gBAAkBvW,GAItHu9L,EAAQv9L,GAGjB,IAAIkY,EAAiBhY,OAAOqW,UAAU2B,eAMtC,SAASulL,EAASvvL,GAChB,OAAIpF,MAAMsd,QAAQlY,GACTA,EAAM/O,IAAIs+L,GACRvvL,aAAiBlK,KACnB,IAAIA,KAAKkK,EAAM69D,WACM,WAAnBwxH,EAAQrvL,IAAuBA,EAEjCu4E,EAAQv4E,EAAOuvL,GAGfvvL,EAGX,SAASu4E,EAAQv4E,EAAO0zE,GACtB,IAAIprE,EAAS,GAEb,IAAK,IAAIzZ,KAAOmR,EACVgK,EAAe5C,KAAKpH,EAAOnR,KAC7ByZ,EAAOzZ,GAAO6kF,EAAK1zE,EAAMnR,GAAMA,IAInC,OAAOyZ,EAYT,IAAIknL,EAAY,CACd7qF,OAAQ,GACRv1D,OAAQ,GACRsmE,cAAe,GACftP,YAAa,GACbd,YAAa,GACbmqF,qBAAsB,GACtBzlF,SAAU,GACVjN,IAAK,GACL6H,SAAU,GACV2K,WAAY,GACZof,eAAgB,GAChB9pB,YAAa,GACbw0B,sBAAuB,GACvBv0B,sBAAuB,GACvB1Y,cAAe,GACf8Y,oBAAqB,GACrB1qG,OAAQ,GACRk1L,cAAe,GACfpoJ,YAAa,GACby+D,mBAAoB,GACpBC,kBAAmB,GACnBJ,WAAY,GACZC,gBAAiB,GACjB3lB,SAAU,GACVnqF,IAAK,GACL8mD,YAAa,GACb60F,WAAY,GACZ96C,WAAY,GACZo3C,aAAc,GACdE,gBAAiB,GACjBE,kBAAmB,GACnBH,aAAc,GACdlpC,WAAY,GACZC,QAAS,GACTC,QAAS,GACTmnC,iBAAkB,GAClBujD,cAAe,GACfC,iBAAkB,GAClBxoF,gBAAiB,GACjByoF,YAAa,GACbpqE,aAAc,GACdvvC,aAAc,GACdooB,WAAY,GACZkP,cAAe,GACfuB,cAAe,GACf5oF,SAAU,GACVmoF,SAAU,GACVlJ,QAAS,GACTrlB,OAAQ,GACRunC,gBAAiB,GACjB5iB,aAAc,GACdsmB,mBAAoB,GACpBJ,iBAAkB,GAClBD,iBAAkB,GAClBlR,YAAa,GACb35B,UAAW,GACXsnC,iBAAkB,GAClBC,gBAAiB,GACjBlgB,eAAgB,GAChBrB,iBAAkB,GAClBvP,SAAU,GACVu5F,gBAAiB,GACjBC,iBAAkB,GAClBxqD,WAAY,GACZqL,aAAc,GACdlrC,aAAc,GACdqjC,eAAgB,GAChBhvD,2BAA4B,GAC5BC,0BAA2B,GAC3B+H,aAAc,GACdwiB,sBAAuB,GACvByrF,iBAAkB,GAClBC,cAAe,GACfC,YAAa,GACbjgG,SAAU,GACVkgG,mBAAoB,GACpBC,sBAAuB,GACvBC,gBAAiB,GACjBC,aAAc,GACdC,WAAY,GACZC,eAAgB,GAChBC,gBAAiB,GACjBC,qBAAsB,GACtBC,iBAAkB,GAClBC,eAAgB,GAChBC,WAAY,GACZl5I,OAAQ,GACRkuC,aAAc,GACd5O,cAAe,GACfmrB,WAAY,GACZC,SAAU,GACV8C,aAAc,GACdtvB,iBAAkB,GAClBonB,WAAY,GACZ4iB,cAAe,GACfta,mBAAoB,GACpBC,WAAY,GACZS,eAAgB,GAChB+hC,oBAAqB,GACrBnB,UAAW,GACXlhC,WAAY,GACZxqB,mBAAoB,GACpBsqB,uBAAwB,GACxBhc,wBAAyB,GACzB4b,uBAAwB,GACxB1O,WAAY,GACZuP,qBAAsB,GACtB4qF,sBAAuB,GACvBC,mBAAoB,GACpBC,mBAAoB,GACpBvsF,mBAAoB,GACpBwsF,0BAA2B,GAC3BnrD,qBAAsB,GACtBD,kBAAmB,GACnBvjC,cAAe,GACfkC,oBAAqB,GAErByC,WAAY,GACZ3H,MAAO,GACP3kG,QAAS,GAETu2L,oBAAqB,GACrBC,UAAW,GACXC,kBAAmB,GACnBC,cAAe,GACfC,0BAA2B,GAC3BC,aAAc,GACdC,mBAAoB,GACpBC,kBAAmB,GACnBC,kBAAmB,GACnBC,gBAAiB,GACjBC,2BAA4B,GAC5BC,UAAW,GACXC,oBAAqB,GACrBC,qBAAsB,GACtBC,2BAA4B,GAE5BC,YAAa,GACbC,aAAc,GACdC,UAAW,GACXC,YAAa,GACbC,aAAc,GACdC,mBAAoB,GACpBC,oBAAqB,GACrBC,eAAgB,IAEdC,EAAe,CACjB9tF,QAAQ,EACRv1D,QAAQ,EACRuI,QAAQ,EACRkuC,cAAc,EACdsrG,WAAW,GAETuB,EAAiB,CAAC,eAAgB,YAAa,aAAc,kBAAmB,kBAAmB,SAAU,WAAY,UAAW,kBAAmB,oBAAqB,iBAAkB,gBAAiB,YAAa,mBAAoB,kBAAmB,cAAe,OAAQ,eAAgB,aAAc,aAC5T,cAAe,eAAgB,YAAa,cAAe,eAAgB,qBAAsB,sBAAuB,kBAEpHC,EAAoB,CACtBV,aAAa,EACbC,cAAc,EACdC,WAAW,EACXC,aAAa,EACbC,cAAc,EACdC,oBAAoB,EACpBC,qBAAqB,EACrBC,gBAAgB,GAedI,EAAwB,CAC1Br6L,MAAOi3L,EAKPn/L,KAAM,WACJ,MAAO,CACLwiM,SAAU,EACVC,WAAY,KAGhBplM,OAAQ,SAAgBwM,GACtB,OAAOA,EAAc,MAAO,CAE1BjM,MAAO,CACL,oBAAqBL,KAAKilM,aAIhC3hM,QAAS,WACP6hM,EAAwBnlM,KAAKolM,YAC7BplM,KAAKqlM,SAASj6G,SAAW,IAAI,OAASprF,KAAKslM,IAAKtlM,KAAKulM,wBACrDvlM,KAAKqlM,SAASj6G,SAAStrF,UAEzBw7D,aAAc,WACZt7D,KAAKwlM,eAEP13L,cAAe,WACb9N,KAAKqlM,SAASj6G,SAAS19E,WAEzBxB,MAAOy+E,EAAQi3G,EAAW6D,GAC1B7hM,QAAS,CACP2hM,qBAAsB,WACpB,IAAIj/F,EAAQtmG,KAERyN,EAAU,GACVi4L,GAA4B,EAC5BC,GAAoB,EACpBC,OAAiBzhM,EAErB,IAaE,IAZA,IAYwD0hM,EAZpDtjK,EAAQ,WACV,IAAIujK,EAAeD,EAAMlkM,MAEzB8L,EAAQq4L,GAAgB,WACtB,IAAK,IAAIC,EAAO9sL,UAAUvN,OAAQwV,EAAO,IAAIlU,MAAM+4L,GAAOC,EAAO,EAAGA,EAAOD,EAAMC,IAC/E9kL,EAAK8kL,GAAQ/sL,UAAU+sL,GAGzB1/F,EAAMt6F,MAAMsP,MAAMgrF,EAAO,CAACw/F,GAAcx/K,OAAOpF,MAI1C+kL,EAAYnB,EAAepD,OAAOtH,cAAsBsL,GAA6BG,EAAQI,EAAU1/J,QAAQqqG,MAAO80D,GAA4B,EACzJnjK,IAGF,MAAO4xE,GACPwxF,GAAoB,EACpBC,EAAiBzxF,EACjB,QACA,IACOuxF,GAAoD,MAAvBO,EAAU,WAC1CA,EAAU,YAEZ,QACA,GAAIN,EACF,MAAMC,GAKZ,IAAK,IAAIvrH,KAAYunH,EAAW,CAC9B,IAAIsE,EAAUlmM,KAAKq6E,QAEHl2E,IAAZ+hM,IACErB,EAAaxqH,KACf6rH,EAAUvE,EAASuE,GAEnBlmM,KAAKklM,WAAW7qH,GAAY6rH,GAG9Bz4L,EAAQ4sE,GAAY6rH,GAIxB,OAAOz4L,GAET04L,kBAAmB,SAA2BC,EAAYC,IACvDrmM,KAAKqlM,SAASiB,eAAiBtmM,KAAKqlM,SAASiB,aAAe,KAAKF,GAAcC,EAChFrmM,KAAKilM,YAEPO,YAAa,WACX,IAAIc,EAAetmM,KAAKqlM,SAASiB,aAE7BA,IACFtmM,KAAKqlM,SAASiB,aAAe,KAE7BtmM,KAAKqlM,SAASj6G,SAASkmC,cAAcg1E,EAAc,IAAI,EAAO,OAGlEC,OAAQ,WACN,OAAOvmM,KAAKqlM,SAASj6G,YAK3B,SAASq6G,EAAiBe,EAASnsH,GACjC,OAAIwqH,EAAaxqH,GACR,CACLosH,MAAM,EAENzzJ,QAAS,SAAiBqzJ,GAExB,IAAIK,EAAS1mM,KAAKklM,WAAW7qH,GAExB,IAAUgsH,EAAQK,KACrBL,EAAS1E,EAAS0E,GAElBrmM,KAAKklM,WAAW7qH,GAAYgsH,EAE5BrmM,KAAKmmM,kBAAkB9rH,EAAUgsH,MAKhC,SAAUA,GACfrmM,KAAKmmM,kBAAkB9rH,EAAUgsH,IAKvC,SAASlB,EAAwBwB,GAC/B,IAAK,IAAIb,KAAgBa,EACnB5B,EAAkBe,IACpBz8K,QAAQwD,KAAK,UAAYi5K,EAAe,yDAa9C,IASIc,EATAC,GAAY,EAEhB,SAASC,EAAQC,GACVF,IACHA,GAAY,EACZE,EAAI/iM,UAAU,eAAgBghM,IAMZ,qBAAXl7K,OACT88K,EAAY98K,OAAOi9K,IACQ,qBAAXh3L,IAChB62L,EAAY72L,EAAOg3L,KAIjBH,GACFA,EAAUI,IAAI,CACZF,QAASA,IAIE,W,sGCjaf,W,uFCAA,IAAIhnM,EAAS,WAAa,IAAIC,EAAIC,KAASC,EAAGF,EAAIG,eAAmBC,EAAGJ,EAAIK,MAAMD,IAAIF,EAAG,OAAOE,EAAG,QAAQ,CAACE,MAAM,CAAC,KAAON,EAAImlJ,UAAU,WAAY,IAAQ,CAAC/kJ,EAAG,KAAK,CAACM,YAAY,iBAAiBJ,MAAM,CAAC,KAAO,UAAUK,KAAK,UAAU,CAACX,EAAIY,GAAG,IAAIZ,EAAIa,GAAGb,EAAIc,GAAG,iCAAiC,OAAOV,EAAG,qBAAqB,CAACW,IAAI,cAAcC,YAAYhB,EAAIiB,GAAG,CAAC,CAACC,IAAI,UAAUC,GAAG,SAASJ,GACtY,IAAIK,EAAeL,EAAIK,aACvB,MAAO,CAAChB,EAAG,OAAO,CAACI,GAAG,CAAC,OAAS,SAASC,GAAgC,OAAxBA,EAAOY,iBAAwBD,EAAapB,EAAI+3L,kBAAkB,CAAC33L,EAAG,MAAM,CAACM,YAAY,OAAO,CAACN,EAAG,MAAM,CAACM,YAAY,SAAS,CAACN,EAAG,MAAM,CAACM,YAAY,wBAAwB,CAACN,EAAG,WAAW,CAACE,MAAM,CAAC,SAAW,GAAG,KAAO,OAAO,MAAQN,EAAIc,GAAG,gDAAgD,MAAQd,EAAIkD,KAAKqD,WAAW,GAAGnG,EAAG,MAAM,CAACM,YAAY,wBAAwB,CAACN,EAAG,WAAW,CAACE,MAAM,CAAC,SAAW,GAAG,KAAO,OAAO,MAAQN,EAAIc,GAAG,uCAAuC,MAAQd,EAAIkD,KAAKokJ,UAAU,GAAGlnJ,EAAG,MAAM,CAACM,YAAY,wBAAwB,CAACN,EAAG,WAAW,CAACE,MAAM,CAAC,SAAW,GAAG,KAAO,OAAO,MAAQN,EAAIc,GAAG,4CAA4C,MAAQd,EAAIkD,KAAKijJ,aAAa,GAAG/lJ,EAAG,MAAM,CAACM,YAAY,wBAAwB,CAACN,EAAG,WAAW,CAACE,MAAM,CAAC,SAA0B,SAAfN,EAAIg9F,OAAkB,KAAO,OAAO,MAAQh9F,EAAIc,GAAG,yCAAyCa,MAAM,CAACC,MAAO5B,EAAI+F,KAAS,KAAElE,SAAS,SAAUC,GAAM9B,EAAI+B,KAAK/B,EAAI+F,KAAM,OAAQjE,IAAME,WAAW,gBAAgB,GAAG5B,EAAG,MAAM,CAACM,YAAY,wBAAwB,CAACN,EAAG,YAAY,CAACW,IAAI,SAASL,YAAY,cAAcJ,MAAM,CAAC,OAAS,IAAI,SAAW,GAAG,OAAS,UAAU,YAAYN,EAAI8H,SAAS,MAAQ,EAAE,eAAc,EAAM,aAAa9H,EAAIyoJ,cAAc,YAAYzoJ,EAAI+H,WAAW,YAAY/H,EAAI+H,aAAa,CAAiB,QAAf/H,EAAIg9F,OAAkB58F,EAAG,WAAW,CAACE,MAAM,CAAC,KAAO,QAAQ,KAAO,YAAY,CAACN,EAAIY,GAAGZ,EAAIa,GAAGb,EAAIc,GAAG,8BAA8Bd,EAAIkH,KAAqB,QAAflH,EAAIg9F,OAAkB58F,EAAG,MAAM,CAACM,YAAY,iBAAiBJ,MAAM,CAAC,KAAO,OAAOK,KAAK,OAAO,CAACX,EAAIY,GAAG,IAAIZ,EAAIa,GAAGb,EAAIc,GAAG,gCAAgC,OAAOd,EAAIkH,MAAM,IAAI,KAAK9G,EAAG,MAAM,CAACM,YAAY,SAAS,CAACN,EAAG,MAAM,CAACM,YAAY,wBAAwB,CAACN,EAAG,WAAW,CAACE,MAAM,CAAC,SAA0B,SAAfN,EAAIg9F,OAAkB,KAAO,OAAO,MAAQh9F,EAAIc,GAAG,2CAA2Ca,MAAM,CAACC,MAAO5B,EAAI+F,KAAa,SAAElE,SAAS,SAAUC,GAAM9B,EAAI+B,KAAK/B,EAAI+F,KAAM,WAAYjE,IAAME,WAAW,oBAAoB,GAAG5B,EAAG,MAAM,CAACM,YAAY,wBAAwB,CAACN,EAAG,WAAW,CAACE,MAAM,CAAC,SAA0B,SAAfN,EAAIg9F,OAAkB,KAAO,OAAO,MAAQh9F,EAAIc,GAAG,2CAA2Ca,MAAM,CAACC,MAAO5B,EAAI+F,KAAY,QAAElE,SAAS,SAAUC,GAAM9B,EAAI+B,KAAK/B,EAAI+F,KAAM,UAAWjE,IAAME,WAAW,mBAAmB,GAAG5B,EAAG,MAAM,CAACM,YAAY,wBAAwB,CAACN,EAAG,WAAW,CAACE,MAAM,CAAC,SAA0B,SAAfN,EAAIg9F,OAAkB,KAAO,OAAO,MAAQh9F,EAAIc,GAAG,gDAAgDa,MAAM,CAACC,MAAO5B,EAAI+F,KAAW,OAAElE,SAAS,SAAUC,GAAM9B,EAAI+B,KAAK/B,EAAI+F,KAAM,SAAUjE,IAAME,WAAW,kBAAkB,GAAG5B,EAAG,MAAM,CAACM,YAAY,wBAAwB,CAACN,EAAG,WAAW,CAACE,MAAM,CAAC,SAA0B,SAAfN,EAAIg9F,OAAkB,KAAO,OAAO,MAAQh9F,EAAIc,GAAG,kDAAkDa,MAAM,CAACC,MAAO5B,EAAI+F,KAAQ,IAAElE,SAAS,SAAUC,GAAM9B,EAAI+B,KAAK/B,EAAI+F,KAAM,MAAOjE,IAAME,WAAW,eAAe,GAAG5B,EAAG,MAAM,CAACM,YAAY,wBAAwB,CAACN,EAAG,MAAM,CAACM,YAAY,wBAAwB,CAACV,EAAIY,GAAG,IAAIZ,EAAIa,GAAGb,EAAIc,GAAG,+CAA+C,OAAOV,EAAG,WAAW,CAACE,MAAM,CAAC,SAA0B,SAAfN,EAAIg9F,OAAkB,KAAO,WAAW,SAAW,CAAEx1F,QAAS,EAAGC,QAAS,GAAI,KAAO,YAAY,YAAczH,EAAIc,GAAG,+CAA+Ca,MAAM,CAACC,MAAO5B,EAAI+F,KAAgB,YAAElE,SAAS,SAAUC,GAAM9B,EAAI+B,KAAK/B,EAAI+F,KAAM,cAAejE,IAAME,WAAW,uBAAuB,OAAO5B,EAAG,MAAM,CAACM,YAAY,aAAauB,YAAY,CAAC,aAAa,OAAO,cAAc,OAAO,aAAa,UAAU3B,MAAM,CAAC,KAAO,UAAUK,KAAK,UAAU,CAACP,EAAG,WAAW,CAACM,YAAY,0BAA0B4B,SAAS,CAAC,MAAQ,SAAS7B,GAAQ,OAAOT,EAAIuC,UAAU9B,MAAW,CAACT,EAAIY,GAAGZ,EAAIa,GAAGb,EAAIc,GAAG,0BAA0C,QAAfd,EAAIg9F,OAAkB58F,EAAG,oBAAoB,CAACE,MAAM,CAAC,WAAa,gBAAgB,OAAS,oBAAoB,CAACF,EAAG,WAAW,CAACE,MAAM,CAAC,cAAc,SAAS,KAAO,YAAY,CAACN,EAAIY,GAAGZ,EAAIa,GAAGb,EAAIc,GAAG,yBAAyB,GAAGV,EAAG,oBAAoB,CAACE,MAAM,CAAC,WAAa,gBAAgB,OAAS,iCAAiC,CAA8C,GAA5CN,EAAI+F,KAAK03L,gCAAsCr9L,EAAG,WAAW,CAACE,MAAM,CAAC,cAAc,SAAS,KAAO,WAAWgC,SAAS,CAAC,MAAQ,SAAS7B,GAAQ,OAAOT,EAAIknM,SAASzmM,MAAW,CAACT,EAAIY,GAAGZ,EAAIa,GAAGb,EAAIc,GAAG,2CAA2Cd,EAAIkH,MAAM,IAAI,YAAY9G,EAAG,gBAAgB,CAACW,IAAI,aAAa,IACrvIyB,EAAkB,G,gDCkKtB,GACE8M,KAAM,uBACN5M,KAFF,WAGI,MAAO,CACLs6F,OAAQ,MACRmoD,WAAW,EACXgiD,aAAc,GACdphM,KAAM,CACJqhM,cAAe,EACfC,SAAU,GACVC,KAAM,GACNC,QAAS,GACTC,IAAK,GACLt+L,OAAQ,GACRkG,YAAa,GACbq4L,gBAAiB,EACjB59L,WAAY,IAEd3G,KAAM,CACJqD,OAAQ,GACR+gJ,MAAO,GACPnB,SAAU,IAEZr+I,SAAU,KAGdvE,QA1BF,WA0BA,WACItD,KAAK8F,KAAK0hM,gBAAkBxnM,KAAK6C,OAAOC,MAAMG,KAAKC,UACnDK,SAASC,IAAI,oBAAjB,4IACA,cACA,8BACA,KACA,0IACA,uBAEA,eAEA,sBACA,uBACA,uBACA,2BAEA,gBACA,eAfA,4CAiBID,SAASC,IAAI,uBAAjB,kKA2BA,GA1BA,cACA,8BACA,KACA,0IACA,uBAEA,eACA,gBACA,uBACA,qBACA,2BAEA,qCACA,gBACA,2BACA,uBACA,uBACA,mBACA,yBACA,iBACA,uBACA,iCACA,+BACA,uCACA,kCAEA,sEACA,mBADA,IACA,qCACA,iBACA,yBACA,8BACA,kBALA,+BAUA,gBACA,eAtCA,oGAyCEI,QAAS,CACP,cADJ,WACA,2JACA,cACA,8BACA,KACA,0IACA,uBALA,SASA,mBATA,sBAUA,UACA,sDAXA,uBAcA,cAdA,0DAgBA,uCAhBA,yBAkBA,gBAlBA,+EAqBI,UAtBJ,WAsBA,0KAeA,GAdA,GACA,mCACA,yBACA,iBACA,uBACA,eACA,qBACA,+BACA,wCAGA,eACA,oCAEA,6CACA,mBADA,IACA,qCACA,yBAFA,+BAfA,gBAqBA,aACA,uCACA,EACA,kDAxBA,OAqBA,EArBA,OA0BA,mCAEA,SACA,2DACA,cACA,gCACA,mDAhCA,8CAkCI,SAxDJ,WAwDA,yKACA,cACA,8BACA,KACA,0IACA,uBAGA,GACA,wBACA,SACA,iCAXA,SAaA,aACA,oDACA,GAfA,OAaA,EAbA,OAiBA,mCAEA,SACA,2DACA,cACA,wCACA,mDAEA,gBAzBA,8CA2BI4kJ,cAnFJ,SAmFA,GAGM1+H,OAAOgqF,KAAK7+F,EAAKrQ,IAAK,UAAUipL,SAElC/lL,WAxFJ,SAwFA,KACM9H,KAAK8F,KAAK8D,WAAa,GAD7B,uBAEA,GAFA,IAEA,+CACA,2CACA,8BAJA,gCAOItH,UA/FJ,WAgGMtC,KAAK8F,KAAO,CACVqhM,cAAe,EACfC,SAAU,GACVC,KAAM,GACNC,QAAS,GACTC,IAAK,GACLt+L,OAAQ,GACRkG,YAAa,GACbq4L,gBAAiB,EACjB59L,WAAY,IAEd5J,KAAK6H,SAAW,GAChB7H,KAAKiD,KAAO,CACVqD,OAAQ,GACR+gJ,MAAO,GACPnB,SAAU,IAEZlmJ,KAAK8F,KAAK0hM,gBAAkBxnM,KAAK6C,OAAOC,MAAMG,KAAKC,UACnDlD,KAAKklJ,WAAY,KC7WqW,I,YCOxXlhJ,EAAY,eACd,EACAlE,EACAyC,GACA,EACA,KACA,WACA,MAIa,aAAAyB,E,kDClBf,IAAIlE,EAAS,WAAa,IAAIC,EAAIC,KAASC,EAAGF,EAAIG,eAAmBC,EAAGJ,EAAIK,MAAMD,IAAIF,EAAG,OAAOE,EAAG,QAAQ,CAACE,MAAM,CAAC,KAAON,EAAIO,UAAU,WAAY,IAAQ,CAACH,EAAG,KAAK,CAACM,YAAY,iBAAiBJ,MAAM,CAAC,KAAO,UAAUK,KAAK,UAAU,CAACX,EAAIY,GAAG,IAAIZ,EAAIa,GAAGb,EAAI0D,OAAO,OAAOtD,EAAG,qBAAqB,CAACW,IAAI,UAAUC,YAAYhB,EAAIiB,GAAG,CAAC,CAACC,IAAI,UAAUC,GAAG,SAASJ,GACrW,IAAIK,EAAeL,EAAIK,aACvB,MAAO,CAAChB,EAAG,OAAO,CAACI,GAAG,CAAC,OAAS,SAASC,GAAgC,OAAxBA,EAAOY,iBAAwBD,EAAapB,EAAIolJ,WAAW,CAAChlJ,EAAG,MAAM,CAACM,YAAY,OAAO,CAACN,EAAG,QAAQ,CAAC6B,YAAY,CAAC,cAAc,SAAS,CAACjC,EAAIY,GAAGZ,EAAIa,GAAGb,EAAIc,GAAG,2DAA2DV,EAAG,MAAM,CAACM,YAAY,+BAA+B,CAACN,EAAG,YAAY,CAACE,MAAM,CAAC,WAAaN,EAAI+F,KAAK2hM,0BAA0B,YAAc1nM,EAAIc,GAAG,uDAAuD,KAAO,SAASa,MAAM,CAACC,MAAO5B,EAAI+F,KAA0C,sCAAElE,SAAS,SAAUC,GAAM9B,EAAI+B,KAAK/B,EAAI+F,KAAM,wCAAyCjE,IAAME,WAAW,+CAA+ChC,EAAIuB,GAAIvB,EAAc,YAAE,SAASwB,GAAU,OAAOpB,EAAG,YAAY,CAACc,IAAIM,EAASy2L,oBAAoB33L,MAAM,CAAC,MAAQkB,EAASsC,gBAAgB,MAAQtC,EAASy2L,0BAAyB,IAAI,KAAK73L,EAAG,MAAM,CAACM,YAAY,OAAO,CAACN,EAAG,QAAQ,CAAC6B,YAAY,CAAC,cAAc,SAAS,CAACjC,EAAIY,GAAGZ,EAAIa,GAAGb,EAAIc,GAAG,0DAA0DV,EAAG,MAAM,CAACM,YAAY,+BAA+B,CAACN,EAAG,YAAY,CAACE,MAAM,CAAC,WAAaN,EAAI+F,KAAK2hM,0BAA0B,YAAc1nM,EAAIc,GAAG,sDAAsD,KAAO,SAASa,MAAM,CAACC,MAAO5B,EAAI+F,KAAoB,gBAAElE,SAAS,SAAUC,GAAM9B,EAAI+B,KAAK/B,EAAI+F,KAAM,kBAAmBjE,IAAME,WAAW,yBAAyBhC,EAAIuB,GAAIvB,EAAmB,iBAAE,SAAS6b,EAAK3a,GAAK,OAAOd,EAAG,YAAY,CAACc,IAAIA,EAAIZ,MAAM,CAAC,MAAQN,EAAIc,GAAG,oCAAoC+a,GAAM,MAAQxZ,SAASnB,SAAU,IAAI,KAAKd,EAAG,MAAM,CAACM,YAAY,OAAO,CAACN,EAAG,QAAQ,CAAC6B,YAAY,CAAC,cAAc,SAAS,CAACjC,EAAIY,GAAGZ,EAAIa,GAAGb,EAAIc,GAAG,2DAA2DV,EAAG,MAAM,CAACM,YAAY,+BAA+B,CAACN,EAAG,YAAY,CAACE,MAAM,CAAC,WAAaN,EAAI+F,KAAK2hM,0BAA0B,YAAc1nM,EAAIc,GAAG,uDAAuD,KAAO,SAASa,MAAM,CAACC,MAAO5B,EAAI+F,KAAkC,8BAAElE,SAAS,SAAUC,GAAM9B,EAAI+B,KAAK/B,EAAI+F,KAAM,gCAAiCjE,IAAME,WAAW,uCAAuChC,EAAIuB,GAAIvB,EAAoB,kBAAE,SAAS27L,GAAM,OAAOv7L,EAAG,YAAY,CAACc,IAAIy6L,EAAKC,gBAAgBt7L,MAAM,CAAC,MAAQq7L,EAAKE,oBAAoB,MAAQF,EAAKC,sBAAqB,IAAI,KAAKx7L,EAAG,MAAM,CAACM,YAAY,OAAO,CAACN,EAAG,QAAQ,CAAC6B,YAAY,CAAC,cAAc,SAAS,CAACjC,EAAIY,GAAGZ,EAAIa,GAAGb,EAAIc,GAAG,qDAAqDV,EAAG,MAAM,CAACM,YAAY,+BAA+B,CAACN,EAAG,YAAY,CAACE,MAAM,CAAC,YAAcN,EAAIc,GAAG,iDAAiD,KAAO,SAASa,MAAM,CAACC,MAAO5B,EAAI+F,KAAuB,mBAAElE,SAAS,SAAUC,GAAM9B,EAAI+B,KAAK/B,EAAI+F,KAAM,qBAAsBjE,IAAME,WAAW,4BAA4BhC,EAAIuB,GAAIvB,EAAY,UAAE,SAASkD,GAAM,OAAO9C,EAAG,YAAY,CAACc,IAAIgC,EAAKC,UAAU7C,MAAM,CAAC,MAAQ4C,EAAKqD,OAAO,MAAQrD,EAAKC,gBAAe,IAAI,KAAK/C,EAAG,MAAM,CAACM,YAAY,aAAauB,YAAY,CAAC,aAAa,OAAO,cAAc,OAAO,aAAa,UAAU3B,MAAM,CAAC,KAAO,UAAUK,KAAK,UAAU,CAACP,EAAG,WAAW,CAACM,YAAY,0BAA0B4B,SAAS,CAAC,MAAQ,SAAS7B,GAAQ,OAAOT,EAAIguH,WAAW,CAAChuH,EAAIY,GAAGZ,EAAIa,GAAGb,EAAIc,GAAG,0BAA0BV,EAAG,WAAW,CAACE,MAAM,CAAC,cAAc,SAAS,KAAO,UAAU,SAAWN,EAAIinJ,aAAa,CAACjnJ,EAAIY,GAAGZ,EAAIa,GAAGb,EAAIc,GAAG,yBAAyB,aAAa,IACh0G0B,EAAkB,G,oCCoHtB,GACEoI,MAAF,CACIstL,WAAY,CAAhB,0CACI8D,gBAAiB,CAArB,0CACIC,iBAAkB,CAAtB,0CACIC,SAAU,CAAd,2CAEEz5L,WAAY,GACZC,KARF,WASI,MAAO,CACLgB,MAAOzD,KAAKa,GAAG,8CACfP,WAAW,EACXwF,KAAM,CACJ2hM,0BAA2B,GAC3BC,sCAAuC,GACvCC,8BAA+B,GAC/B5L,gBAAiB,GACjB6L,mBAAoB,GACpBxL,QAAQ,EACRC,eAAe,GAEjBr1C,YAAY,IAGhBtkJ,SAAU,GACVC,QAzBF,aA4BEW,QA5BF,WA4BA,WACIC,SAASC,IAAI,sCAAsC,WACjD,EAAN,yDACM,EAAN,gBAGID,SAASC,IAAI,uCAAuC,SAAxD,GACM,EAAN,0DACM,EAAN,2DACM,EAAN,mFACM,EAAN,6CACM,EAAN,mEACM,EAAN,uCACM,EAAN,qBACM,EAAN,iBAIEI,QAAS,CACP,OADJ,WACA,iKACA,gBADA,SAIA,6CAJA,sBAIA,yEAJA,UAKA,uBALA,sBAKA,wEALA,UAMA,qCANA,sBAMA,mEANA,UAOA,0BAPA,uBAOA,mEAPA,WAUA,iCAVA,kCAWA,SAXA,QAWA,EAXA,gDAaA,aAbA,QAaA,EAbA,eAeA,IACA,2DACA,UACA,qCAlBA,qDAsBA,uCAtBA,yBAyBA,gBAzBA,gFA4BI,KA7BJ,WA6BA,yKACA,cACA,8BACA,KACA,0IACA,uBAGA,GACA,mFACA,mEACA,uCACA,6CACA,sBAbA,SAgBA,uDAhBA,cAgBA,EAhBA,OAiBA,mCAEA,gBAEA,SACA,yCAtBA,kBAyBA,GAzBA,8CA2BI,SAxDJ,WAwDA,kLACA,uBADA,cACA,EADA,OAGA,+BAEA,cACA,8BACA,KACA,0IACA,uBATA,SAYA,6DAZA,cAYA,EAZA,OAaA,mCAEA,gBAEA,SACA,yCAlBA,kBAqBA,GArBA,+CAuBI24L,mBA/EJ,WAgFM,OAAOv8L,KAAK6O,MAAM24I,KAAK,CACrB/jJ,MAAOzD,KAAKa,GAAG,mDACf0qC,KAAMvrC,KAAKa,GAAG,qDACdqB,KAAM,UACNyiJ,kBAAkB,EAClBC,mBAAoB,2BACpBC,kBAAmB,0BACnB6C,kBAAmB1nJ,KAAKa,GAAG,mBAC3B8mJ,iBAAkB3nJ,KAAKa,GAAG,kBAC1BikJ,gBAAgB,KAGpB/2B,MA5FJ,WA6FM/tH,KAAKyD,MAAQzD,KAAKa,GAAG,8CACrBb,KAAKM,WAAY,EACjBN,KAAK8F,KAAO,CACV2hM,0BAA2B,GAC3BC,sCAAuC,GACvCC,8BAA+B,GAC/B5L,gBAAiB,GACjB6L,mBAAoB,GACpBxL,QAAQ,EACRC,eAAe,GAEjBr8L,KAAKgnJ,YAAa,KC7QmX,I,YCOvYhjJ,EAAY,eACd,EACAlE,EACAyC,GACA,EACA,KACA,WACA,MAIa,aAAAyB,E,2CClBf,W,yCCAA,IAAIlE,EAAS,WAAa,IAAIC,EAAIC,KAASC,EAAGF,EAAIG,eAAmBC,EAAGJ,EAAIK,MAAMD,IAAIF,EAAG,OAAOE,EAAG,MAAM,CAACM,YAAY,OAAO,CAACN,EAAG,MAAM,CAACM,YAAY,UAAU,CAACN,EAAG,MAAM,CAACM,YAAY,kBAAkB,CAACN,EAAG,WAAW,CAACE,MAAM,CAAC,KAAO,UAAU,MAAQ,IAAIgC,SAAS,CAAC,MAAQ,SAAS7B,GAAQ,OAAOT,EAAI8nM,kBAAkB,CAAC1nM,EAAG,IAAI,CAACM,YAAY,+BAA+BJ,MAAM,CAAC,KAAO,SAASK,KAAK,UAAUX,EAAIY,GAAG,IAAIZ,EAAIa,GAAGb,EAAIc,GAAG,2CAA2C,QAAQ,GAAGV,EAAG,OAAO,CAACE,MAAM,CAAC,oBAAoB,mBAAmB,iBAAiB,KAAK,CAACF,EAAG,MAAM,CAACM,YAAY,aAAa,CAACN,EAAG,MAAM,CAACM,YAAY,6EAA6E,CAACN,EAAG,KAAK,CAACM,YAAY,0BAA0B,CAACV,EAAIY,GAAG,IAAIZ,EAAIa,GAAGb,EAAIc,GAAG,qCAAqC,OAAOV,EAAG,WAAW,CAACA,EAAG,WAAW,CAACM,YAAY,OAAOuB,YAAY,CAAC,MAAQ,SAAS3B,MAAM,CAAC,KAAO,SAAS,UAAY,GAAG,cAAc,kBAAkB,YAAcN,EAAIc,GAAG,sBAAsB,gBAAgB,cAAca,MAAM,CAACC,MAAO5B,EAAe,YAAE6B,SAAS,SAAUC,GAAM9B,EAAIwK,YAAY1I,GAAKE,WAAW,kBAAkB,IAAI,GAAG5B,EAAG,WAAW,CAAC6B,YAAY,CAAC,MAAQ,QAAQ3B,MAAM,CAAC,OAAS,GAAG,KAAON,EAAIyK,cAAc,CAACrK,EAAG,kBAAkB,CAACE,MAAM,CAAC,KAAO,SAAS,MAAQL,KAAKa,GAAG,2CAA2C,SAAW,GAAG,YAAY,SAASV,EAAG,kBAAkB,CAACE,MAAM,CAAC,MAAQN,EAAIc,GAAG,sBAAsB,YAAY,OAAOE,YAAYhB,EAAIiB,GAAG,CAAC,CAACC,IAAI,UAAUC,GAAG,SAASuJ,GAAO,MAAO,CAAC1K,EAAIY,GAAG,IAAIZ,EAAIa,GAAG6J,EAAMC,IAAInE,QAAUxG,EAAIc,GAAG,sBAAwBd,EAAIc,GAAG,yBAAyB,YAAYV,EAAG,kBAAkB,CAACE,MAAM,CAAC,MAAQN,EAAIc,GAAG,sBAAsB,YAAY,KAAKE,YAAYhB,EAAIiB,GAAG,CAAC,CAACC,IAAI,UAAUC,GAAG,SAASyJ,GAAO,MAAO,CAACxK,EAAG,WAAW,CAACE,MAAM,CAAC,MAAQ,SAASE,GAAG,CAAC,MAAQ,SAASC,GAAQ,OAAOT,EAAI6K,eAAeD,EAAMD,OAAOhJ,MAAM,CAACC,MAAOgJ,EAAMD,IAAW,QAAE9I,SAAS,SAAUC,GAAM9B,EAAI+B,KAAK6I,EAAMD,IAAK,UAAW7I,IAAME,WAAW,sBAAsB,CAAC5B,EAAG,IAAI,CAACM,YAAY,0BAA0BJ,MAAM,CAAC,KAAO,MAAMK,KAAK,OAAOP,EAAG,IAAI,CAACM,YAAY,kCAAkCJ,MAAM,CAAC,KAAO,OAAOK,KAAK,iBAAiBP,EAAG,kBAAkB,CAACE,MAAM,CAAC,YAAY,IAAI,MAAQN,EAAIc,GAAG,wBAAwBE,YAAYhB,EAAIiB,GAAG,CAAC,CAACC,IAAI,UAAUC,GAAG,SAASyJ,GAAO,OAAOxK,EAAG,MAAM,CAACM,YAAY,0BAA0B,CAACN,EAAG,aAAa,CAACW,IAAI,YAAc6J,EAAME,OAAOxK,MAAM,CAAC,UAAY,SAAS,MAAQ,MAAM,QAAU,UAAU,CAACF,EAAG,MAAM,CAACM,YAAY,OAAO,CAACN,EAAG,MAAM,CAACM,YAAY,kBAAkB,CAACN,EAAG,WAAW,CAACM,YAAY,iBAAiBJ,MAAM,CAAC,KAAO,UAAU,KAAO,KAAK,MAAQ,IAAIgC,SAAS,CAAC,MAAQ,SAAS7B,GAAQ,OAAOT,EAAI+K,WAC5nFH,EAAME,OACNF,EAAMD,IACN,YAAcC,EAAME,WACjB,CAAC9K,EAAIY,GAAG,IAAIZ,EAAIa,GAAGb,EAAIc,GAAG,4CAA4C,QAAQ,KAAKV,EAAG,WAAW,CAACM,YAAY,uBAAuBJ,MAAM,CAAC,KAAO,YAAY,KAAO,KAAK,KAAO,IAAIK,KAAK,aAAa,CAACP,EAAG,IAAI,CAACM,YAAY,mBAAmBuB,YAAY,CAAC,MAAQ,cAAc,IAAI,UAAU,IAAI,GAAG7B,EAAG,MAAM,CAACM,YAAY,4EAA4EJ,MAAM,CAAC,KAAO,UAAUK,KAAK,UAAU,CAACP,EAAG,MAAM,GAAG,CAACA,EAAG,IAAI,CAACM,YAAY,iBAAiB,CAACV,EAAIY,GAAG,IAAIZ,EAAIa,GAAGb,EAAIc,GAAG,2BAA2B,IAAId,EAAIa,GAAGb,EAAIgL,KAAO,GAAG,IAAIhL,EAAIa,GAAGb,EAAIc,GAAG,sBAAsB,IAAId,EAAIa,GAAGb,EAAIiL,IAAI,IAAIjL,EAAIa,GAAGb,EAAIc,GAAG,sBAAsB,IAAId,EAAIa,GAAGb,EAAIkL,OAAO,IAAIlL,EAAIa,GAAGb,EAAIc,GAAG,2BAA2B,SAASV,EAAG,eAAe,CAACM,YAAY,uBAAuBJ,MAAM,CAAC,WAAWN,EAAImL,WAAWC,QAAQ,MAAQpL,EAAIkL,OAAOvJ,MAAM,CAACC,MAAO5B,EAAImL,WAAsB,YAAEtJ,SAAS,SAAUC,GAAM9B,EAAI+B,KAAK/B,EAAImL,WAAY,cAAerJ,IAAME,WAAW,6BAA6B,KAAK5B,EAAG,0BAA0BA,EAAG,4BAA4B,MACtkCoC,EAAkB,G,8GCgItB,GACEC,WAAY,CACVslM,qBAAsB,WAA1B,+CACIC,sBAAuB,WAA3B,gDAEErlM,SAAU,OAAZ,OAAY,CAAZ,kBACA,0BADA,IAEI8H,YAFJ,WAGM,IAAN,oCACM,OAAOzF,EAAOuG,MAAMtL,KAAK+K,KAAM/K,KAAKgL,KAEtCA,GANJ,WAOM,IAAN,oCAIM,OAHIhL,KAAKiL,MAAQM,IACfA,EAAYvL,KAAKiL,OAEZM,GAETR,KAbJ,WAcM,OAAO/K,KAAKkL,WAAWC,SAAWnL,KAAKkL,WAAWM,YAAc,IAElEP,MAhBJ,WAiBM,IAAN,oCACM,OAAOQ,EAAaC,OAAS,EACnC,SACA,yBAGEjJ,KA5BF,WA6BI,MAAO,CACLP,KAAM,CAAC,GAAI,OAAQ,UAAW,UAAW,UACzCgJ,WAAY,CACVC,QAAS,EACTK,YAAa,EACbG,eAAgB,CAAC,EAAG,GAAI,GAAI,IAC5BV,MAAO,GAETV,YAAa,GACbqB,UAAW,GACXH,aAAc,GACdI,WAAY,OAGhBjI,QAAS,CACPkI,aADJ,SACA,cASM,OAPA/G,EACN,0BACA,sBAAQ,OACR,gEAEA,EAEaA,GAET,eAZJ,SAYA,2KACA,QACA,mEACA,KAFA,yDAGA,+FACA,eACA,mBACA,2DACA,wCAEA,mDANA,2CAHA,uDAYA,YACA,sDAGA,wBAjBA,8CAmBI+F,WA/BJ,SA+BA,OACM9K,KAAKwG,MAAM1F,GAAKiL,UAChBxI,SAASyI,MAAM,mBAAoBg8L,IAErCH,aAnCJ,WAoCMtkM,SAASyI,MAAM,oBAEjB,kBAtCJ,WAsCA,qKACA,cACA,8BACA,KACA,0IACA,uBAEA,GACA,KACA,gCACA,uCAVA,SAYA,QACA,6DACA,KAFA,yDAGA,+FACA,eACA,kBACA,gCAEA,mDALA,2CAHA,uDAWA,YACA,eACA,sDAGA,wBA5BA,OA6BA,gBA7BA,+CAgCE,QAjHF,WAiHA,wKACA,sBADA,OAEA,gDACA,yBAHA,8CAMEE,MAAO,IC5PgX,I,wBCQrXlI,EAAY,eACd,EACAlE,EACAyC,GACA,EACA,KACA,KACA,MAIa,aAAAyB,E,kDCnBf,IAAIlE,EAAS,WAAa,IAAIC,EAAIC,KAASC,EAAGF,EAAIG,eAAmBC,EAAGJ,EAAIK,MAAMD,IAAIF,EAAG,OAAOE,EAAG,QAAQ,CAACE,MAAM,CAAC,KAAON,EAAI4F,OAAOC,SAASrF,GAAG,CAAC,cAAc,SAASC,GAAQ,OAAOT,EAAI+B,KAAK/B,EAAI4F,OAAQ,UAAWnF,MAAW,CAACL,EAAG,KAAK,CAACM,YAAY,iBAAiBJ,MAAM,CAAC,KAAO,UAAUK,KAAK,UAAU,CAACX,EAAIY,GAAG,0BAA0BR,EAAG,qBAAqB,CAACW,IAAI,UAAUC,YAAYhB,EAAIiB,GAAG,CAAC,CAACC,IAAI,UAAUC,GAAG,SAASJ,GACza,IAAIK,EAAeL,EAAIK,aACvB,MAAO,CAAChB,EAAG,OAAO,CAACI,GAAG,CAAC,OAAS,SAASC,GAAgC,OAAxBA,EAAOY,iBAAwBD,EAAapB,EAAIkoM,0BAA0B,CAAC9nM,EAAG,MAAM,CAACM,YAAY,OAAO,CAACN,EAAG,MAAM,CAACM,YAAY,aAAa,CAACN,EAAG,qBAAqB,CAACE,MAAM,CAAC,KAAO,YAAY,MAAQ,kBAAkBU,YAAYhB,EAAIiB,GAAG,CAAC,CAACC,IAAI,UAAUC,GAAG,SAASJ,GAC1T,IAAIoF,EAASpF,EAAIoF,OACbC,EAASrF,EAAIqF,OACjB,MAAO,CAAChG,EAAG,WAAW,CAACE,MAAM,CAAC,KAAO,OAAO,MAAQ8F,EAAS,6CAA+C,KAAK,WAAaD,EAAO,KAAO,YAAY,MAAQ,wBAAwBxE,MAAM,CAACC,MAAO5B,EAAI+F,KAAqB,iBAAElE,SAAS,SAAUC,GAAM9B,EAAI+B,KAAK/B,EAAI+F,KAAM,mBAAoBjE,IAAME,WAAW,+BAA+B,MAAK,MAAS,KAAK5B,EAAG,MAAM,CAACM,YAAY,QAAQN,EAAG,MAAM,CAACM,YAAY,OAAO,CAACN,EAAG,MAAM,CAACM,YAAY,iCAAiC,CAACN,EAAG,MAAM,CAACM,YAAY,OAAO,CAACN,EAAG,QAAQ,CAAC6B,YAAY,CAAC,cAAc,SAAS,CAACjC,EAAIY,GAAG,eAAe,CAACR,EAAG,WAAW,CAACuB,MAAM,CAACC,MAAO5B,EAAI+F,KAAW,OAAElE,SAAS,SAAUC,GAAM9B,EAAI+B,KAAK/B,EAAI+F,KAAM,SAAUjE,IAAME,WAAW,gBAAgB,CAAC5B,EAAG,IAAI,CAACM,YAAY,0BAA0BJ,MAAM,CAAC,KAAO,MAAMK,KAAK,OAAOP,EAAG,IAAI,CAACM,YAAY,kCAAkCJ,MAAM,CAAC,KAAO,OAAOK,KAAK,YAAY,KAAKP,EAAG,MAAM,CAACM,YAAY,aAAauB,YAAY,CAAC,aAAa,OAAO,cAAc,OAAO,aAAa,UAAU3B,MAAM,CAAC,KAAO,UAAUK,KAAK,UAAU,CAACP,EAAG,WAAW,CAACM,YAAY,0BAA0B4B,SAAS,CAAC,MAAQ,SAAS7B,GAAQ,OAAOT,EAAIuC,eAAe,CAACvC,EAAIY,GAAG,cAAcR,EAAG,WAAW,CAACE,MAAM,CAAC,cAAc,SAAS,KAAO,YAAY,CAACN,EAAIY,GAAG,cAAc,aAAa,IAClvC4B,EAAkB,G,0DCsDtB,+BACA,kCACA,6BAEA,OACEC,WAAY,GACZC,KAFF,WAGI,MAAO,CACL61J,kBAAkB,EAClBxyJ,KAAM,CACJq1L,mBAAoB,EACpBC,iBAAkB,GAClBt3L,QAAQ,EACRy0J,UAAR,GAEMC,UAAW,GACXt2J,KAAM,CAAC,GAAI,OAAQ,UAAW,UAAW,UACzCu2J,cAAe,CACbC,WAAW,GAEb/yJ,OAAQ,CACNC,SAAS,EACT+yJ,QAAQ,EACRC,MAAM,KAIZt1J,QAvBF,WAuBA,WACIC,SAASC,IAAI,qBAAjB,sIACA,cACA,8BACA,KACA,0IACA,uBAEA,gBACA,oBARA,6CAWEI,QAAS,CACPtB,UADJ,WAEMtC,KAAK8F,KAAKs1L,iBAAmB,GAC7Bp7L,KAAK8F,KAAKhC,QAAS,EACnB9D,KAAK2F,OAAOC,SAAU,EACtB5F,KAAKwG,MAAMC,QAAQC,SAErB,sBAPJ,WAOA,+JACA,cACA,8BACA,KACA,0IACA,uBALA,SAOA,cAPA,OAQA,gBARA,8CAUI,UAjBJ,WAiBA,wKACA,QACA,yDACA,KAFA,yDAGA,+FACA,eACA,mBACA,2DACA,cACA,gCAEA,mDAPA,2CAHA,uDAaA,YACA,sDAGA,wBAlBA,gDCpHyX,I,wBCQrX1C,EAAY,eACd,EACAlE,EACAyC,GACA,EACA,KACA,KACA,MAIa,aAAAyB,E,kDCnBf,IAAIlE,EAAS,WAAa,IAAIC,EAAIC,KAASC,EAAGF,EAAIG,eAAmBC,EAAGJ,EAAIK,MAAMD,IAAIF,EAAG,OAAOE,EAAG,QAAQ,CAACE,MAAM,CAAC,KAAON,EAAI4F,OAAOC,SAASrF,GAAG,CAAC,cAAc,SAASC,GAAQ,OAAOT,EAAI+B,KAAK/B,EAAI4F,OAAQ,UAAWnF,MAAW,CAACL,EAAG,KAAK,CAACM,YAAY,iBAAiBJ,MAAM,CAAC,KAAO,UAAUK,KAAK,UAAU,CAACX,EAAIY,GAAG,IAAIZ,EAAIa,GAAGb,EAAIc,GAAG,mCAAmC,OAAOV,EAAG,qBAAqB,CAACW,IAAI,UAAUC,YAAYhB,EAAIiB,GAAG,CAAC,CAACC,IAAI,UAAUC,GAAG,SAASJ,GAC3c,IAAIK,EAAeL,EAAIK,aACvB,MAAO,CAAChB,EAAG,OAAO,CAACE,MAAM,CAAC,GAAK,UAAU,KAAO,WAAWE,GAAG,CAAC,OAAS,SAASC,GAAgC,OAAxBA,EAAOY,iBAAwBD,EAAapB,EAAI08L,qBAAqB,CAACt8L,EAAG,MAAM,CAACM,YAAY,OAAO,CAACN,EAAG,MAAM,CAACM,YAAY,aAAa,CAACN,EAAG,qBAAqB,CAACE,MAAM,CAAC,KAAO,YAAY,MAAQ,kBAAkBU,YAAYhB,EAAIiB,GAAG,CAAC,CAACC,IAAI,UAAUC,GAAG,SAASJ,GAC7V,IAAIoF,EAASpF,EAAIoF,OACbC,EAASrF,EAAIqF,OACjB,MAAO,CAAChG,EAAG,WAAW,CAACE,MAAM,CAAC,KAAO,OAAO,MAAQ8F,EAASpG,EAAIc,GAAG,6BAA+B,IAAM,KAAK,WAAaqF,EAAO,KAAO,YAAY,MAAQnG,EAAIc,GAAG,sCAAsCa,MAAM,CAACC,MAAO5B,EAAI+F,KAAuB,mBAAElE,SAAS,SAAUC,GAAM9B,EAAI+B,KAAK/B,EAAI+F,KAAM,qBAAsBjE,IAAME,WAAW,iCAAiC,MAAK,MAAS,KAAK5B,EAAG,MAAM,CAACM,YAAY,OAAO,CAACN,EAAG,MAAM,CAACM,YAAY,aAAa,CAACN,EAAG,qBAAqB,CAACE,MAAM,CAAC,KAAO,WAAW,MAAQ,YAAYU,YAAYhB,EAAIiB,GAAG,CAAC,CAACC,IAAI,UAAUC,GAAG,SAASJ,GACnjB,IAAIoF,EAASpF,EAAIoF,OACbC,EAASrF,EAAIqF,OACjB,MAAO,CAAChG,EAAG,WAAW,CAACE,MAAM,CAAC,MAAQ8F,EAASpG,EAAIc,GAAG,2BAA6B,KAAK,WAAaqF,EAAO,KAAO,WAAW,MAAQnG,EAAIc,GAAG,2CAA2C,CAACV,EAAG,iBAAiB,CAACE,MAAM,CAAC,KAAO,OAAO,YAAc,eAAeqB,MAAM,CAACC,MAAO5B,EAAI+F,KAAgB,YAAElE,SAAS,SAAUC,GAAM9B,EAAI+B,KAAK/B,EAAI+F,KAAM,cAAejE,IAAME,WAAW,uBAAuB,OAAO,MAAK,MAAS,KAAK5B,EAAG,MAAM,CAACM,YAAY,OAAO,CAACN,EAAG,MAAM,CAACM,YAAY,aAAa,CAACN,EAAG,qBAAqB,CAACE,MAAM,CAAC,KAAO,WAAW,MAAQ,YAAYU,YAAYhB,EAAIiB,GAAG,CAAC,CAACC,IAAI,UAAUC,GAAG,SAASJ,GACxlB,IAAIoF,EAASpF,EAAIoF,OACbC,EAASrF,EAAIqF,OACjB,MAAO,CAAChG,EAAG,WAAW,CAACE,MAAM,CAAC,MAAQ8F,EAASpG,EAAIc,GAAG,2BAA6B,KAAK,WAAaqF,EAAO,KAAO,WAAW,MAAQnG,EAAIc,GAAG,2CAA2C,CAACV,EAAG,iBAAiB,CAACE,MAAM,CAAC,KAAO,OAAO,YAAc,eAAeqB,MAAM,CAACC,MAAO5B,EAAI+F,KAAa,SAAElE,SAAS,SAAUC,GAAM9B,EAAI+B,KAAK/B,EAAI+F,KAAM,WAAYjE,IAAME,WAAW,oBAAoB,OAAO,MAAK,MAAS,KAAK5B,EAAG,MAAM,CAACM,YAAY,OAAO,CAACN,EAAG,MAAM,CAACM,YAAY,YAAY,CAACV,EAAIY,GAAG,IAAIZ,EAAIa,GAAGb,EAAIc,GAAG,wCAAwC,KAAKV,EAAG,MAAMA,EAAG,WAAW,CAACuB,MAAM,CAACC,MAAO5B,EAAI+F,KAA0B,sBAAElE,SAAS,SAAUC,GAAM9B,EAAI+B,KAAK/B,EAAI+F,KAAM,wBAAyBjE,IAAME,WAAW,iCAAiC,GAAG5B,EAAG,MAAM,CAACM,YAAY,YAAY,CAACV,EAAIY,GAAG,IAAIZ,EAAIa,GAAGb,EAAIc,GAAG,uBAAuB,KAAKV,EAAG,MAAMA,EAAG,WAAW,CAACuB,MAAM,CAACC,MAAO5B,EAAI+F,KAAW,OAAElE,SAAS,SAAUC,GAAM9B,EAAI+B,KAAK/B,EAAI+F,KAAM,SAAUjE,IAAME,WAAW,kBAAkB,GAAG5B,EAAG,MAAM,CAACM,YAAY,YAAY,CAACN,EAAG,QAAQ,CAACJ,EAAIY,GAAGZ,EAAIa,GAAGb,EAAIc,GAAG,yCAAyCV,EAAG,qBAAqB,CAACE,MAAM,CAAC,KAAO,eAAe,MAAQ,eAAeU,YAAYhB,EAAIiB,GAAG,CAAC,CAACC,IAAI,UAAUC,GAAG,SAASJ,GACnrC,IAAIqF,EAASrF,EAAIqF,OACjB,MAAO,CAAChG,EAAG,YAAY,CAACM,YAAY,gBAAgBJ,MAAM,CAAC,WAAa,GAAG,YAAcN,EAAIc,GAAG,oCAAoCa,MAAM,CAACC,MAAO5B,EAAgB,aAAE6B,SAAS,SAAUC,GAAM9B,EAAIs2L,aAAax0L,GAAKE,WAAW,iBAAiB,CAAC5B,EAAG,YAAY,CAACE,MAAM,CAAC,MAAQN,EAAIc,GAAG,mBAAmB,MAAQ,OAAOV,EAAG,YAAY,CAACE,MAAM,CAAC,MAAQN,EAAIc,GAAG,oCAAoC,MAAQ,OAAOV,EAAG,YAAY,CAACE,MAAM,CAAC,MAAQN,EAAIc,GAAG,qCAAqC,MAAQ,OAAOV,EAAG,YAAY,CAACE,MAAM,CAAC,MAAQN,EAAIc,GAAG,uCAAuC,MAAQ,QAAQ,GAAG,EAASV,EAAG,MAAM,CAACM,YAAY,+BAA+BuB,YAAY,CAAC,QAAU,UAAU,CAACjC,EAAIY,GAAG,IAAIZ,EAAIa,GAAGb,EAAIqG,eAAe,OAAOrG,EAAIkH,SAAS,MAAK,MAAS,KAAK9G,EAAG,MAAM,CAACE,MAAM,CAAC,KAAO,QAAQ,CAACF,EAAG,IAAI,CAACJ,EAAIY,GAAGZ,EAAIa,GAAGb,EAAIc,GAAG,wBAAwBd,EAAIuB,GAAIvB,EAAI+F,KAAU,OAAE,SAAStE,EAAKW,GAAO,OAAOhC,EAAG,MAAM,CAACc,IAAIO,EAAKuE,gBAAgBtF,YAAY,aAAa,CAACN,EAAG,IAAI,CAACJ,EAAIY,GAAGZ,EAAIa,GAAGY,EAAKC,WAAWtB,EAAG,qBAAqB,CAACE,MAAM,CAAC,KAAO,aAAemB,EAAK,MAAQ,kBAAkBT,YAAYhB,EAAIiB,GAAG,CAAC,CAACC,IAAI,UAAUC,GAAG,SAASJ,GACxmC,IAAIoF,EAASpF,EAAIoF,OACbC,EAASrF,EAAIqF,OACjB,MAAO,CAAChG,EAAG,WAAW,CAACE,MAAM,CAAC,KAAO,OAAO,MAAQ8F,EAASpG,EAAIc,GAAG,6BAA+B,IAAM,KAAK,WAAaqF,EAAO,KAAO,YAAY,MAAQnG,EAAIc,GAAG,kCAAkCa,MAAM,CAACC,MAAO5B,EAAI+F,KAAK+yJ,MAAM12J,GAAyB,mBAAEP,SAAS,SAAUC,GAAM9B,EAAI+B,KAAK/B,EAAI+F,KAAK+yJ,MAAM12J,GAAQ,qBAAsBN,IAAME,WAAW,8CAA8C,MAAK,KAAQ5B,EAAG,YAAY,CAACW,IAAI,SAASonM,UAAS,EAAKznM,YAAY,cAAcJ,MAAM,CAAC,OAAS,IAAI,YAAYN,EAAI+H,WAAW,KAAOtG,EAAKC,OAAO,eAAc,EAAM,OAAS,0BAA0B,CAACtB,EAAG,WAAW,CAACE,MAAM,CAAC,KAAO,UAAU,KAAO,QAAQ,KAAO,UAAU,GAAKmB,EAAKuE,iBAAiB1D,SAAS,CAAC,MAAQ,SAAS7B,GAAQ,OAAOT,EAAIyrC,QAAQhrC,KAAUE,KAAK,WAAW,CAACX,EAAIY,GAAGZ,EAAIa,GAAGb,EAAIc,GAAG,8BAA8BV,EAAG,MAAM,CAACM,YAAY,iBAAiBJ,MAAM,CAAC,KAAO,OAAOK,KAAK,OAAO,CAACX,EAAIY,GAAG,IAAIZ,EAAIa,GAAGb,EAAIc,GAAG,gCAAgC,QAAQ,IAAI,OAAM,GAAGV,EAAG,MAAM,CAACM,YAAY,aAAauB,YAAY,CAAC,aAAa,OAAO,cAAc,OAAO,aAAa,UAAU3B,MAAM,CAAC,KAAO,UAAUK,KAAK,UAAU,CAACP,EAAG,WAAW,CAACM,YAAY,0BAA0B4B,SAAS,CAAC,MAAQ,SAAS7B,GAAQ,OAAOT,EAAIuC,eAAe,CAACvC,EAAIY,GAAGZ,EAAIa,GAAGb,EAAIc,GAAG,0BAA0BV,EAAG,WAAW,CAACE,MAAM,CAAC,cAAc,SAAS,KAAO,YAAY,CAACN,EAAIY,GAAGZ,EAAIa,GAAGb,EAAIc,GAAG,yBAAyB,aAAa,IACv4C0B,EAAkB,G,wGCwLtB,GACEC,WAAY,GACZC,KAFF,WAGI,MAAO,CACL2D,cAAepG,KAAKa,GAAG,wBACvButD,MAAO,CACb,CACQ,GAAR,EACQ,KAAR,6CAEA,CACQ,GAAR,EACQ,KAAR,8CAEA,CACQ,GAAR,EACQ,KAAR,iDAGMtoD,KAAM,CACJ42L,eAAgB,EAChBhG,mBAAoB,GACpBC,YAAa,IAAIzuL,KACjB0uL,SAAU,IAAI1uL,KACdy0L,uBAAuB,EACvBlG,cAAe,IAAIvuL,KACnB00L,gCAAiC,EACjC94L,QAAQ,GAEVmR,KAAM,GACN4nL,MAAO,GACPl3L,OAAQ,CACNC,SAAS,EACT+yJ,QAAQ,EACRC,MAAM,GAERu+B,iBAAiB,EACjB1uC,SAAU,8BACVq0C,SAAU,EACVzG,aAAc,QACd0G,SAAU,GACVC,SAAU,KAGdt6L,SAAU,OAAZ,OAAY,CAAZ,GACA,oCAEEC,QA/CF,aAgDEW,QAhDF,WAgDA,WACItD,KAAK8F,KAAK+yJ,MAAQ74J,KAAKoD,eAAeC,KAAI,SAA9C,UACA,2BACA,gBACA,8BACA,wBACA,qBACA,0BAGIE,SAASC,IAAI,kBAAjB,sIACA,oBADA,6CAIEI,QAAS,CACPtB,UADJ,WAEMtC,KAAKwG,MAAMC,QAAQC,QACnB1G,KAAK8F,KAAO,CACV42L,eAAgB,EAChBhG,mBAAoB,GACpBC,YAAa,IAAIzuL,KACjB0uL,SAAU,IAAI1uL,KACdy0L,uBAAuB,EACvBlG,cAAe,IAAIvuL,KACnB00L,gCAAiC,EACjC94L,QAAQ,GAEV9D,KAAK8F,KAAK+yJ,MAAQ74J,KAAKoD,eAAeC,KAAI,SAAhD,UACA,2BACA,gBACA,8BACA,wBACA,qBACA,0BAEMrD,KAAK2F,OAAOC,SAAU,GAExB,iBAvBJ,WAuBA,+JACA,cACA,8BACA,KACA,0IACA,uBALA,SAOA,kBAPA,OAQA,gBARA,8CAUI,cAjCJ,WAiCA,sKACA,IACA,GACA,KACA,0BACA,oBACA,cACA,iBACA,6CACA,aACA,aACA,+BACA,yBACA,mDACA,mCACA,yDACA,qBACA,0CAjBA,iBAoBA,cApBA,4DAoBA,EApBA,QAqBA,qBArBA,wBAsBA,gBACA,UACA,kDAxBA,sLA6BA,QACA,iDACA,KAFA,yDAGA,8GACA,kBADA,iBAEA,2DACA,uBAHA,iBAIA,cAJA,gEAIA,EAJA,QAKA,eACA,SACA,8BACA,WAEA,kCACA,sCACA,8CACA,kDACA,oDAdA,UAgBA,QACA,KACA,mDACA,EACA,CACA,SACA,wCAIA,KAVA,yDAWA,+FACA,oBAGA,gBACA,SACA,0BAEA,KARA,2CAXA,uDAsBA,YACA,mDACA,OAGA,wBA3CA,kJA6CA,cACA,MACA,gBACA,UACA,iCAGA,gCApDA,wBAsDA,mDAtDA,gEAHA,uDA4DA,YACA,sDAGA,wBA7FA,mEA+FIkC,WAhIJ,SAgIA,cAGA,6BACA,YAAQ,OAAR,iCAGM,EAAN,kCACQ/B,gBAAiB/F,KAAK88L,SACtBr7L,OAAQ,GACRw7L,4BAA6B,EAC7BC,mBAAoBjoL,EAAKyO,IACzBy5K,kBAAmBn9L,KAAK8F,KAAK+yJ,MAAM12J,GAAOg7L,kBAC1CC,mBAAoBp9L,KAAK8F,KAAK+yJ,MAAM12J,GAAOi7L,qBAE7C/zK,QAAQyL,IAAI90B,KAAK8F,KAAK+yJ,QAExBrtH,QAAS,SAAb,GACM,IAAI6xJ,EAAiBthL,EAAEqN,OACvBC,QAAQyL,IAAIuoK,EAAe3wL,IAC3B1M,KAAK88L,SAAWO,EAAe3wL,MC3ZiV,I,YCOlX1I,EAAY,eACd,EACAlE,EACAyC,GACA,EACA,KACA,KACA,MAIa,aAAAyB,E,0DClBTmkM,E,wBAOJ,aAAsB,IAAVjkM,EAAU,uDAAJ,GAAI,4BALX,GAKW,gBAJb,GAIa,eAHd,IAGc,iBAFZ,IAGRE,OAAOC,OAAOrE,KAAMkE,G,YAIxBI,EAAOC,QAAU4jM,G,iDCZXC,E,wBAQJ,aAAsB,IAAVlkM,EAAU,uDAAJ,GAAI,+CANQ,GAMR,yBALN,MAKM,0BAJH,GAIG,2CAHc,GAGd,gBAFb,MAGPE,OAAOC,OAAOrE,KAAMkE,G,YAIxBI,EAAOC,QAAU6jM,G,yCCbjB,IAAItoM,EAAS,WAAa,IAAIC,EAAIC,KAASC,EAAGF,EAAIG,eAAmBC,EAAGJ,EAAIK,MAAMD,IAAIF,EAAG,OAAOE,EAAG,QAAQ,CAACE,MAAM,CAAC,KAAON,EAAIsoM,YAAY9nM,GAAG,CAAC,cAAc,SAASC,GAAQT,EAAIsoM,WAAW7nM,KAAU,CAACL,EAAG,KAAK,CAACM,YAAY,iBAAiBJ,MAAM,CAAC,KAAO,UAAUK,KAAK,UAAU,CAACX,EAAIY,GAAG,IAAIZ,EAAIa,GAAGb,EAAIc,GAAG,uCAAuC,OAAOV,EAAG,qBAAqB,CAACW,IAAI,cAAcC,YAAYhB,EAAIiB,GAAG,CAAC,CAACC,IAAI,UAAUC,GAAG,SAASJ,GACtb,IAAIK,EAAeL,EAAIK,aACvB,MAAO,CAAChB,EAAG,OAAO,CAACE,MAAM,CAAC,GAAK,cAAc,KAAO,eAAeE,GAAG,CAAC,OAAS,SAASC,GAAgC,OAAxBA,EAAOY,iBAAwBD,EAAapB,EAAIuoM,sBAAsB,CAACnoM,EAAG,MAAM,CAACM,YAAY,OAAO,CAACN,EAAG,MAAM,CAACM,YAAY,aAAa,CAACN,EAAG,qBAAqB,CAACE,MAAM,CAAC,KAAO,YAAY,MAAQ,kBAAkBU,YAAYhB,EAAIiB,GAAG,CAAC,CAACC,IAAI,UAAUC,GAAG,SAASJ,GACtW,IAAIoF,EAASpF,EAAIoF,OACbC,EAASrF,EAAIqF,OACjB,MAAO,CAAChG,EAAG,WAAW,CAACE,MAAM,CAAC,KAAO,OAAO,SAAW,GAAG,MAAQ8F,EAASpG,EAAIc,GAAG,6BAA+B,IAAM,KAAK,WAAaqF,EAAO,KAAO,YAAY,MAAQnG,EAAIc,GAAG,sCAAsCa,MAAM,CAACC,MAAO5B,EAAI+F,KAAuB,mBAAElE,SAAS,SAAUC,GAAM9B,EAAI+B,KAAK/B,EAAI+F,KAAM,qBAAsBjE,IAAME,WAAW,iCAAiC,MAAK,MAAS,KAAK5B,EAAG,MAAM,CAACM,YAAY,OAAO,CAACN,EAAG,MAAM,CAACM,YAAY,aAAa,CAACN,EAAG,qBAAqB,CAACE,MAAM,CAAC,KAAO,WAAW,MAAQ,YAAYU,YAAYhB,EAAIiB,GAAG,CAAC,CAACC,IAAI,UAAUC,GAAG,SAASJ,GACjkB,IAAIoF,EAASpF,EAAIoF,OACbC,EAASrF,EAAIqF,OACjB,MAAO,CAAChG,EAAG,WAAW,CAACE,MAAM,CAAC,MAAQ8F,EAASpG,EAAIc,GAAG,2BAA6B,KAAK,WAAaqF,EAAO,KAAO,WAAW,MAAQnG,EAAIc,GAAG,oDAAoD,CAACV,EAAG,iBAAiB,CAACE,MAAM,CAAC,SAAW,GAAG,KAAO,OAAO,YAAc,eAAeqB,MAAM,CAACC,MAAO5B,EAAI+F,KAAkB,cAAElE,SAAS,SAAUC,GAAM9B,EAAI+B,KAAK/B,EAAI+F,KAAM,gBAAiBjE,IAAME,WAAW,yBAAyB,OAAO,MAAK,MAAS,KAAK5B,EAAG,MAAM,CAACM,YAAY,OAAO,CAACN,EAAG,MAAM,CAACM,YAAY,aAAa,CAACN,EAAG,qBAAqB,CAACE,MAAM,CAAC,KAAO,WAAW,MAAQ,YAAYU,YAAYhB,EAAIiB,GAAG,CAAC,CAACC,IAAI,UAAUC,GAAG,SAASJ,GACrnB,IAAIoF,EAASpF,EAAIoF,OACbC,EAASrF,EAAIqF,OACjB,MAAO,CAAChG,EAAG,WAAW,CAACE,MAAM,CAAC,MAAQ8F,EAASpG,EAAIc,GAAG,2BAA6B,KAAK,WAAaqF,EAAO,KAAO,WAAW,MAAQnG,EAAIc,GAAG,2CAA2C,CAACV,EAAG,iBAAiB,CAACE,MAAM,CAAC,SAAW,GAAG,KAAO,OAAO,YAAc,eAAeqB,MAAM,CAACC,MAAO5B,EAAI+F,KAAgB,YAAElE,SAAS,SAAUC,GAAM9B,EAAI+B,KAAK/B,EAAI+F,KAAM,cAAejE,IAAME,WAAW,uBAAuB,OAAO,MAAK,MAAS,KAAK5B,EAAG,MAAM,CAACM,YAAY,OAAO,CAACN,EAAG,MAAM,CAACM,YAAY,aAAa,CAACN,EAAG,qBAAqB,CAACE,MAAM,CAAC,KAAO,WAAW,MAAQ,YAAYU,YAAYhB,EAAIiB,GAAG,CAAC,CAACC,IAAI,UAAUC,GAAG,SAASJ,GACtmB,IAAIoF,EAASpF,EAAIoF,OACbC,EAASrF,EAAIqF,OACjB,MAAO,CAAChG,EAAG,WAAW,CAACE,MAAM,CAAC,MAAQ8F,EAASpG,EAAIc,GAAG,2BAA6B,KAAK,WAAaqF,EAAO,KAAO,WAAW,MAAQnG,EAAIc,GAAG,2CAA2C,CAACV,EAAG,iBAAiB,CAACE,MAAM,CAAC,KAAO,OAAO,SAAW,GAAG,YAAc,eAAeqB,MAAM,CAACC,MAAO5B,EAAI+F,KAAa,SAAElE,SAAS,SAAUC,GAAM9B,EAAI+B,KAAK/B,EAAI+F,KAAM,WAAYjE,IAAME,WAAW,oBAAoB,OAAO,MAAK,MAAS,KAAK5B,EAAG,MAAM,CAACM,YAAY,OAAO,CAACN,EAAG,MAAM,CAACM,YAAY,YAAY,CAACV,EAAIY,GAAG,IAAIZ,EAAIa,GAAGb,EAAIc,GAAG,wCAAwC,KAAKV,EAAG,MAAMA,EAAG,WAAW,CAACE,MAAM,CAAC,SAAW,IAAIqB,MAAM,CAACC,MAAO5B,EAAI+F,KAA0B,sBAAElE,SAAS,SAAUC,GAAM9B,EAAI+B,KAAK/B,EAAI+F,KAAM,wBAAyBjE,IAAME,WAAW,iCAAiC,GAAG5B,EAAG,MAAM,CAACM,YAAY,YAAY,CAACV,EAAIY,GAAG,IAAIZ,EAAIa,GAAGb,EAAIc,GAAG,uBAAuB,KAAKV,EAAG,MAAMA,EAAG,WAAW,CAACE,MAAM,CAAC,SAAW,IAAIqB,MAAM,CAACC,MAAO5B,EAAI+F,KAAW,OAAElE,SAAS,SAAUC,GAAM9B,EAAI+B,KAAK/B,EAAI+F,KAAM,SAAUjE,IAAME,WAAW,kBAAkB,GAAG5B,EAAG,MAAM,CAACM,YAAY,iCAAiC,CAACN,EAAG,QAAQ,CAACJ,EAAIY,GAAGZ,EAAIa,GAAGb,EAAIc,GAAG,+DAA+D,CAACV,EAAG,YAAY,CAACM,YAAY,gBAAgBJ,MAAM,CAAC,SAAW,GAAG,YAAc,iBAAiBqB,MAAM,CAACC,MAAO5B,EAAI+F,KAAoC,gCAAElE,SAAS,SAAUC,GAAM9B,EAAI+B,KAAK/B,EAAI+F,KAAM,kCAAmCjE,IAAME,WAAW,yCAAyChC,EAAIuB,GAAIvB,EAAS,OAAE,SAASwoM,GAAQ,OAAOpoM,EAAG,YAAY,CAACc,IAAIsnM,EAAO77L,GAAGjM,YAAY,gBAAgBJ,MAAM,CAAC,MAAQkoM,EAAO77L,GAAG,MAAQ67L,EAAOh9J,WAAU,KAAK,KAAKprC,EAAG,MAAM,CAACE,MAAM,CAAC,KAAO,QAAQ,CAACF,EAAG,IAAI,CAACJ,EAAIY,GAAGZ,EAAIa,GAAGb,EAAIc,GAAG,wBAAwBd,EAAIuB,GAAIvB,EAAI+F,KAAU,OAAE,SAAStE,GAAM,OAAOrB,EAAG,MAAM,CAACc,IAAIO,EAAKuE,gBAAgBtF,YAAY,aAAa,CAACN,EAAG,IAAI,CAACJ,EAAIY,GAAGZ,EAAIa,GAAGY,EAAKC,WAAWtB,EAAG,qBAAqB,CAACE,MAAM,CAAC,KAAO,YAAY,MAAQ,kBAAkBU,YAAYhB,EAAIiB,GAAG,CAAC,CAACC,IAAI,UAAUC,GAAG,SAASJ,GACl8D,IAAIoF,EAASpF,EAAIoF,OACbC,EAASrF,EAAIqF,OACjB,MAAO,CAAChG,EAAG,WAAW,CAACE,MAAM,CAAC,KAAO,OAAO,SAAW,GAAG,MAAQ8F,EAASpG,EAAIc,GAAG,6BAA+B,IAAM,KAAK,WAAaqF,EAAO,KAAO,YAAY,MAAQnG,EAAIc,GAAG,kCAAkCa,MAAM,CAACC,MAAOH,EAAsB,kBAAEI,SAAS,SAAUC,GAAM9B,EAAI+B,KAAKN,EAAM,oBAAqBK,IAAME,WAAW,gCAAgC,MAAK,KAAQ5B,EAAG,qBAAqB,CAACE,MAAM,CAAC,KAAO,YAAY,MAAQ,kBAAkBU,YAAYhB,EAAIiB,GAAG,CAAC,CAACC,IAAI,UAAUC,GAAG,SAASJ,GACjf,IAAIoF,EAASpF,EAAIoF,OACbC,EAASrF,EAAIqF,OACjB,MAAO,CAAChG,EAAG,WAAW,CAACE,MAAM,CAAC,KAAO,OAAO,SAAW,GAAG,MAAQ8F,EAASpG,EAAIc,GAAG,6BAA+B,IAAM,KAAK,WAAaqF,EAAO,KAAO,YAAY,MAAQnG,EAAIc,GAAG,kCAAkCa,MAAM,CAACC,MAAOH,EAAuB,mBAAEI,SAAS,SAAUC,GAAM9B,EAAI+B,KAAKN,EAAM,qBAAsBK,IAAME,WAAW,iCAAiC,MAAK,KAAQ,CAAC5B,EAAG,OAAO,CAAC6B,YAAY,CAAC,MAAQ,UAAU,CAAC7B,EAAG,WAAW,CAAC6B,YAAY,CAAC,MAAQ,QAAQ,OAAS,SAAS3B,MAAM,CAAC,IAAMN,EAAIs3L,OAAS71L,EAAK07L,mBAAmB,mBAAmB,CAACn9L,EAAIs3L,OAAS71L,EAAK07L,uBAAuB/8L,EAAG,IAAI,CAACM,YAAY,aAAa,CAACV,EAAIY,GAAG,IAAIZ,EAAIa,GAAGb,EAAIc,GAAG,+CAA+C,QAAQ,KAAK,OAAM,GAAGV,EAAG,MAAM,CAACM,YAAY,aAAauB,YAAY,CAAC,aAAa,OAAO,cAAc,OAAO,aAAa,UAAU3B,MAAM,CAAC,KAAO,UAAUK,KAAK,UAAU,CAACP,EAAG,WAAW,CAACM,YAAY,0BAA0B4B,SAAS,CAAC,MAAQ,SAAS7B,GAAQ,OAAOT,EAAIuC,eAAe,CAACvC,EAAIY,GAAGZ,EAAIa,GAAGb,EAAIc,GAAG,2BAA2B,aAAa,IACrhC0B,EAAkB,G,0DCsNtB,GACEC,WAAY,GACZC,KAFF,WAGI,MAAO,CACL40L,OAAQ,GACRjpI,MAAO,CACb,CACQ,GAAR,EACQ,KAAR,6CAEA,CACQ,GAAR,EACQ,KAAR,8CAEA,CACQ,GAAR,EACQ,KAAR,iDAGMtoD,KAAM,CACJ42L,eAAgB,EAChBhG,mBAAoB,GACpBC,YAAa,IAAIzuL,KACjB0uL,SAAU,IAAI1uL,KACdy0L,uBAAuB,EACvBlG,cAAe,IAAIvuL,KACnB00L,gCAAiC,EACjC94L,QAAQ,EACR+0J,MAAO,IAET5jJ,KAAM,GACN4nL,MAAO,GACPwL,YAAY,EACZlR,iBAAiB,EACjB2F,SAAU,EACVzG,aAAc,EACd0G,SAAU,GACVC,SAAU,KAGdt6L,SAAU,OAAZ,OAAY,CAAZ,GACA,oCAEEC,QA3CF,WA4CI3C,KAAK8F,KAAK+yJ,MAAQ,GAClB74J,KAAKq3L,OAAS,sCAEhB/zL,QA/CF,WA+CA,WACIC,SAASC,IAAI,sBAAjB,+JACA,uCACA,iEACA,+CACA,iCACA,2BACA,qDACA,qCACA,uCACA,kCACA,uBAVA,UAWA,sBAXA,QAYA,oBACA,gBAbA,oGAgBEI,QAAS,CACP,kBADJ,WACA,qKACA,cACA,8BACA,KACA,0IACA,uBAEA,GACA,sCACA,gCACA,uCAVA,SAYA,QACA,8DACA,KAFA,yDAGA,+FACA,mBACA,iCACA,qBAEA,mDALA,2CAHA,uDAWA,YACA,eACA,sDAGA,wBA5BA,OA6BA,gBA7BA,8CA+BItB,UAhCJ,WAiCMtC,KAAKwG,MAAMgiM,YAAY9hM,QACvB1G,KAAKqoM,YAAa,GAEpB,kBApCJ,WAoCA,+JACA,cACA,8BACA,KACA,0IACA,uBALA,SAOA,gBAPA,OAQA,gBARA,8CAUI,YA9CJ,WA8CA,6IACA,oCADA,gDCzVwX,I,YCOpXrkM,EAAY,eACd,EACAlE,EACAyC,GACA,EACA,KACA,KACA,MAIa,aAAAyB,E","file":"js/chunk-036aa341.8ad6f9e0.js","sourcesContent":["export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./entregasUpdatePhase.vue?vue&type=style&index=0&lang=css&\"","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('modal',{attrs:{\"show\":_vm.modalOpen},on:{\"update:show\":function($event){_vm.modalOpen=$event}}},[_c('h4',{staticClass:\"title title-up\",attrs:{\"slot\":\"header\"},slot:\"header\"},[_vm._v(\" \"+_vm._s(_vm.$t(\"app.modules.category_product.add.title\"))+\" \")]),_c('ValidationObserver',{ref:\"formAdd\",scopedSlots:_vm._u([{key:\"default\",fn:function(ref){\nvar handleSubmit = ref.handleSubmit;\nreturn [_c('form',{on:{\"submit\":function($event){$event.preventDefault();return handleSubmit(_vm.submitNewCatProd)}}},[_vm._l((_vm.category.traducciones),function(lang){return _c('div',[_c('h6',[_vm._v(_vm._s(lang.idioma.idioma))]),_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-12\"},[_c('fg-input',{attrs:{\"type\":\"text\",\"label\":_vm.$t('app.modules.category_product.headers.name')},model:{value:(lang.nombreCategoria),callback:function ($$v) {_vm.$set(lang, \"nombreCategoria\", $$v)},expression:\"lang.nombreCategoria\"}})],1)]),_c('div',{staticClass:\"separate\"})])}),_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-sm-6 form-group has-label\"},[_c('div',{staticClass:\"row\"},[_c('label',{staticStyle:{\"margin-left\":\"15px\"}},[_vm._v(_vm._s(_vm.$t(\"app.modules.messages.headers.state\")))])]),[_c('n-switch',{model:{value:(_vm.category.activo),callback:function ($$v) {_vm.$set(_vm.category, \"activo\", $$v)},expression:\"category.activo\"}},[_c('i',{staticClass:\"now-ui-icons ui-1_check\",attrs:{\"slot\":\"on\"},slot:\"on\"}),_c('i',{staticClass:\"now-ui-icons ui-1_simple-remove\",attrs:{\"slot\":\"off\"},slot:\"off\"})])]],2)]),_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-sm-6 form-group has-label\"},[_c('div',{staticClass:\"row\"},[_c('label',{staticStyle:{\"margin-left\":\"15px\"}},[_vm._v(_vm._s(_vm.$t('app.modules.category_product.headers.type')))])]),[_c('el-select',{attrs:{\"placeholder\":_vm.$t('app.modules.category_product.headers.type'),\"size\":\"large\"},model:{value:(_vm.category.numIndex),callback:function ($$v) {_vm.$set(_vm.category, \"numIndex\", $$v)},expression:\"category.numIndex\"}},[_c('el-option',{key:'cc-0',attrs:{\"label\":_vm.$t('app.modules.category_product.types.none'),\"value\":0}}),_vm._l((_vm.constCategoriaIndex.vals),function(type,index){return _c('el-option',{key:'cc-'+index,attrs:{\"label\":_vm.$t('app.modules.category_product.types.'+type),\"value\":parseInt(index)}})})],2)]],2)]),_c('div',{staticClass:\"text-right\",staticStyle:{\"margin-top\":\"10px\",\"padding-top\":\"20px\",\"border-top\":\"outset\"},attrs:{\"slot\":\"footer\"},slot:\"footer\"},[_c('n-button',{staticClass:\"pull-left btn-secondary\",nativeOn:{\"click\":function($event){return _vm.cancelAdd($event)}}},[_vm._v(_vm._s(_vm.$t(\"app.buttons.cancel\")))]),_c('verify-permission',{attrs:{\"controller\":\"CategoriaProducto\",\"action\":\"AddCategoriaProducto\"}},[_c('n-button',{attrs:{\"native-type\":\"submit\",\"type\":\"primary\"}},[_vm._v(_vm._s(_vm.$t(\"app.buttons.save\")))])],1)],1)],2)]}}])})],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\n\r\n\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./categoriaproductoAdd.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./categoriaproductoAdd.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./categoriaproductoAdd.vue?vue&type=template&id=d2f7f272&\"\nimport script from \"./categoriaproductoAdd.vue?vue&type=script&lang=js&\"\nexport * from \"./categoriaproductoAdd.vue?vue&type=script&lang=js&\"\nimport style0 from \"./categoriaproductoAdd.vue?vue&type=style&index=0&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","class FamiliaProducto\r\n{\r\n idFamiliaProducto = 0;\r\n categoriaProducto_idCategoriaProducto = 0;\r\n subcategoriaProducto_idSubcategoriaProducto = 0;\r\n productoPadre = \"\";\r\n fechaUltimaModificacion = \"\";\r\n enriquecido = false;\r\n publicado = true;\r\n iconografia = [];\r\n usuarios_idUsuario = 0;\r\n\r\n categoriaProducto = undefined;\r\n subcategoriaProducto = undefined;\r\n propiedades = [];\r\n traducciones = [];\r\n\r\n constructor(obj = {}) {\r\n Object.assign(this, obj);\r\n }\r\n}\r\n\r\nmodule.exports = FamiliaProducto;\r\n","var fails = require('../internals/fails');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar IS_PURE = require('../internals/is-pure');\n\nvar ITERATOR = wellKnownSymbol('iterator');\n\nmodule.exports = !fails(function () {\n var url = new URL('b?a=1&b=2&c=3', 'http://a');\n var searchParams = url.searchParams;\n var result = '';\n url.pathname = 'c%20d';\n searchParams.forEach(function (value, key) {\n searchParams['delete']('b');\n result += key + value;\n });\n return (IS_PURE && !url.toJSON)\n || !searchParams.sort\n || url.href !== 'http://a/c%20d?a=1&c=3'\n || searchParams.get('c') !== '3'\n || String(new URLSearchParams('?a=1')) !== 'a=1'\n || !searchParams[ITERATOR]\n // throws in Edge\n || new URL('https://a@b').username !== 'a'\n || new URLSearchParams(new URLSearchParams('a=b')).get('a') !== 'b'\n // not punycoded in Edge\n || new URL('http://тест').host !== 'xn--e1aybc'\n // not escaped in Chrome 62-\n || new URL('http://a#б').hash !== '#%D0%B1'\n // fails in Chrome 66-\n || result !== 'a1c3'\n // throws in Safari\n || new URL('http://x', undefined).host !== 'x';\n});\n","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./motivoDeclinacion.vue?vue&type=style&index=0&lang=css&\"","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('modal',{attrs:{\"show\":_vm.modals.classic},on:{\"update:show\":function($event){return _vm.$set(_vm.modals, \"classic\", $event)}}},[_c('h4',{staticClass:\"title title-up\",attrs:{\"slot\":\"header\"},slot:\"header\"},[_vm._v(\" \"+_vm._s(_vm.$t(\"app.modules.incidents.buttons.edit\"))+\" \")]),_c('ValidationObserver',{ref:\"formAdd\",scopedSlots:_vm._u([{key:\"default\",fn:function(ref){\nvar handleSubmit = ref.handleSubmit;\nreturn [_c('form',{on:{\"submit\":function($event){$event.preventDefault();return handleSubmit(_vm.submitNewType)}}},[_c('div',{staticClass:\"row text-left\"},_vm._l((_vm.item.traducciones),function(lang){return _c('div',{key:lang.idioma_idIdioma,class:_vm.sizes},[_c('b',[_vm._v(_vm._s(lang.idioma))]),_c('ValidationProvider',{attrs:{\"name\":lang.idioma_idIdioma + _vm.$t('app.modules.incidents.headers.name'),\"rules\":\"required\"},scopedSlots:_vm._u([{key:\"default\",fn:function(ref){\nvar passed = ref.passed;\nvar failed = ref.failed;\nreturn [_c('fg-input',{attrs:{\"type\":\"text\",\"error\":failed ? _vm.required_text : null,\"hasSuccess\":passed,\"placeholder\":_vm.$t('app.modules.incidents.headers.name'),\"label\":_vm.$t('app.modules.incidents.headers.name')},model:{value:(lang.incidenciaTraduccion),callback:function ($$v) {_vm.$set(lang, \"incidenciaTraduccion\", $$v)},expression:\"lang.incidenciaTraduccion\"}})]}}],null,true)})],1)}),0),_c('div',{staticClass:\"col-sm-6 form-group has-label\"},[_c('div',{staticStyle:{\"margin-bottom\":\"-5px\",\"margin-left\":\"-12px\"}},[_c('label',[_vm._v(_vm._s(_vm.$t(\"app.general.state\")))])]),[_c('n-switch',{model:{value:(_vm.item.estatus),callback:function ($$v) {_vm.$set(_vm.item, \"estatus\", $$v)},expression:\"item.estatus\"}},[_c('i',{staticClass:\"now-ui-icons ui-1_check\",attrs:{\"slot\":\"on\"},slot:\"on\"}),_c('i',{staticClass:\"now-ui-icons ui-1_simple-remove\",attrs:{\"slot\":\"off\"},slot:\"off\"})])]],2),_c('div',{staticClass:\"text-right\",staticStyle:{\"margin-top\":\"10px\",\"padding-top\":\"20px\",\"border-top\":\"outset\"},attrs:{\"slot\":\"footer\"},slot:\"footer\"},[_c('n-button',{staticClass:\"pull-left btn-secondary\",nativeOn:{\"click\":function($event){return _vm.cancelAdd()}}},[_vm._v(_vm._s(_vm.$t(\"app.buttons.cancel\")))]),_c('n-button',{attrs:{\"native-type\":\"submit\",\"type\":\"primary\"}},[_vm._v(_vm._s(_vm.$t(\"app.buttons.save\")))])],1)])]}}])})],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\n\r\n\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./incidenciaEdit.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./incidenciaEdit.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./incidenciaEdit.vue?vue&type=template&id=a41db50c&\"\nimport script from \"./incidenciaEdit.vue?vue&type=script&lang=js&\"\nexport * from \"./incidenciaEdit.vue?vue&type=script&lang=js&\"\nimport style0 from \"./incidenciaEdit.vue?vue&type=style&index=0&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./perfilEmpresarialAdd.vue?vue&type=style&index=0&lang=css&\"","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./propiedadFamiliaProducto.vue?vue&type=style&index=0&lang=css&\"","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('modal',{attrs:{\"show\":_vm.modals.classic},on:{\"update:show\":function($event){return _vm.$set(_vm.modals, \"classic\", $event)}}},[_c('h4',{staticClass:\"title title-up\",attrs:{\"slot\":\"header\"},slot:\"header\"},[_vm._v(\" \"+_vm._s(_vm.$t(\"app.modules.delivery_phase.title\"))+\" \")]),_c('ValidationObserver',{ref:\"formAdd\",scopedSlots:_vm._u([{key:\"default\",fn:function(ref){\nvar handleSubmit = ref.handleSubmit;\nreturn [_c('form',{on:{\"submit\":function($event){$event.preventDefault();return handleSubmit(_vm.submitUpdatePhase)}}},[_c('div',{staticClass:\"row text-left\"},[_c('div',{class:_vm.sizes},[_c('div',{staticClass:\" form-group has-label\",staticStyle:{\"margin-bottom\":\"-13px\"}},[_c('label',{attrs:{\"for\":\"\"}},[_vm._v(_vm._s(_vm.$t(\"app.modules.delivery_phase.headers.select_phase\")))])]),_c('ValidationProvider',{attrs:{\"name\":\"requiredFase\",\"rules\":\"required\"},scopedSlots:_vm._u([{key:\"default\",fn:function(ref){\nvar passed = ref.passed;\nvar failed = ref.failed;\nreturn [_c('el-select',{staticClass:\"d-block\",attrs:{\"size\":\"large\",\"filterable\":\"\",\"placeholder\":_vm.$t('app.modules.delivery_phase.headers.select_phase')},on:{\"change\":_vm.verificarEstatus},model:{value:(_vm.item.faseEntrega),callback:function ($$v) {_vm.$set(_vm.item, \"faseEntrega\", $$v)},expression:\"item.faseEntrega\"}},_vm._l((_vm.phases),function(phase){return _c('el-option',{key:phase.tipoFase,attrs:{\"hasSuccess\":passed,\"value\":phase.tipoFase,\"label\":_vm.$t(\n 'app.enums.fases_vals.' +\n _vm.fasesEntregaEnum.getValue(phase.tipoFase)\n )}})}),1),(failed)?_c('div',{staticClass:\"text-danger invalid-feedback\",staticStyle:{\"display\":\"block\"}},[_vm._v(\" \"+_vm._s(_vm.required_text)+\" \")]):_vm._e()]}}],null,true)})],1),(_vm.mostrarCampoUsuarioEntrega)?_c('div',{class:_vm.sizes},[_c('span',{staticClass:\"ubica\"},[_vm._v(_vm._s(_vm.$t(\"app.modules.orders.headers.delivery_address\")))]),_c('ValidationProvider',{attrs:{\"name\":\"requiredDetallePedido\",\"rules\":\"required|min_value:1\"},scopedSlots:_vm._u([{key:\"default\",fn:function(ref){\n var passed = ref.passed;\n var failed = ref.failed;\nreturn [_c('el-select',{staticClass:\"d-block\",attrs:{\"size\":\"large\",\"placeholder\":_vm.$t('app.modules.orders.headers.delivery_address')},on:{\"change\":_vm.changeSelect},model:{value:(_vm.item.partida),callback:function ($$v) {_vm.$set(_vm.item, \"partida\", $$v)},expression:\"item.partida\"}},_vm._l((_vm.partidasEntregas),function(partida){return _c('el-option',{key:partida.idDetallePedido,attrs:{\"hasSuccess\":passed,\"value\":partida.idDetallePedido,\"label\":partida.direccionEntrega}})}),1),(failed)?_c('div',{staticClass:\"text-danger invalid-feedback\",staticStyle:{\"display\":\"block\"}},[_vm._v(\" \"+_vm._s(_vm.required_text)+\" \")]):_vm._e()]}}],null,true)})],1):_vm._e(),_c('div',{class:_vm.sizes},[_c('ValidationProvider',{attrs:{\"name\":\"requiredDatetime\",\"rules\":\"required\"},scopedSlots:_vm._u([{key:\"default\",fn:function(ref){\n var passed = ref.passed;\n var failed = ref.failed;\nreturn [_c('span',{staticClass:\"demonstration\"},[_vm._v(_vm._s(_vm.$t(\"app.modules.delivery_phase.headers.date_time\")))]),_c('el-date-picker',{attrs:{\"hasSuccess\":passed,\"picker-options\":_vm.pickerOptions,\"type\":\"datetime\",\"placeholder\":_vm.$t('app.modules.delivery_phase.headers.date_time')},model:{value:(_vm.item.fecha),callback:function ($$v) {_vm.$set(_vm.item, \"fecha\", $$v)},expression:\"item.fecha\"}}),(failed)?_c('div',{staticClass:\"text-danger invalid-feedback\",staticStyle:{\"display\":\"block\"}},[_vm._v(\" \"+_vm._s(_vm.required_text)+\" \")]):_vm._e()]}}],null,true)})],1),_c('div',{class:_vm.sizes},[_c('span',{staticClass:\"demonstration\"},[_vm._v(_vm._s(_vm.$t(\"app.modules.delivery_phase.headers.coments\")))]),_c('el-input',{attrs:{\"type\":\"textarea\",\"autosize\":{ minRows: 2, maxRows: 4 },\"name\":\"minLength\",\"placeholder\":_vm.$t('app.modules.delivery_phase.headers.coments')},model:{value:(_vm.item.comentario),callback:function ($$v) {_vm.$set(_vm.item, \"comentario\", $$v)},expression:\"item.comentario\"}})],1),_c('div',{class:_vm.sizes},[_c('span',{staticClass:\"ubica\"},[_vm._v(_vm._s(_vm.$t(\"app.modules.delivery.addIncidencia.locationMarker\")))]),_c('el-input',{attrs:{\"type\":\"textarea\",\"autosize\":{ minRows: 2, maxRows: 4 },\"name\":\"minLength\",\"placeholder\":_vm.$t('app.modules.delivery.addIncidencia.locationMarker')},model:{value:(_vm.item.ubicacionAproximada),callback:function ($$v) {_vm.$set(_vm.item, \"ubicacionAproximada\", $$v)},expression:\"item.ubicacionAproximada\"}})],1),(_vm.mostrarRazonRechazo)?_c('div',{class:_vm.sizes},[_c('span',{staticClass:\"ubica\"},[_vm._v(_vm._s(_vm.$t(\"app.modules.delivery_phase.headers.reason_reject\")))]),_c('ValidationProvider',{attrs:{\"name\":\"requiredTipoRechazo\",\"rules\":\"required\"},scopedSlots:_vm._u([{key:\"default\",fn:function(ref){\n var passed = ref.passed;\n var failed = ref.failed;\nreturn [_c('el-select',{staticClass:\"d-block\",attrs:{\"size\":\"large\",\"placeholder\":_vm.$t('app.modules.delivery_phase.headers.reason_reject')},model:{value:(_vm.item.tiposMotivoRechazo_id),callback:function ($$v) {_vm.$set(_vm.item, \"tiposMotivoRechazo_id\", $$v)},expression:\"item.tiposMotivoRechazo_id\"}},_vm._l((_vm.motivosRechazo),function(motivo){return _c('el-option',{key:motivo.idTipoIncidencia,attrs:{\"hasSuccess\":passed,\"value\":motivo.idTipoIncidencia,\"label\":motivo.nombre}})}),1),(failed)?_c('div',{staticClass:\"text-danger invalid-feedback\",staticStyle:{\"display\":\"block\"}},[_vm._v(\" \"+_vm._s(_vm.required_text)+\" \")]):_vm._e()]}}],null,true)})],1):_vm._e(),(_vm.mostrarCampoUsuarioEntrega)?_c('div',{class:_vm.sizes},[_c('ValidationProvider',{attrs:{\"name\":_vm.textoCampoUsuarioEntrega,\"rules\":\"required\"},scopedSlots:_vm._u([{key:\"default\",fn:function(ref){\n var passed = ref.passed;\n var failed = ref.failed;\nreturn [_c('fg-input',{attrs:{\"type\":\"text\",\"error\":failed ? _vm.required_text : null,\"hasSuccess\":passed,\"placeholder\":_vm.textoCampoUsuarioEntrega,\"label\":_vm.textoCampoUsuarioEntrega},model:{value:(_vm.item.personaEntrega),callback:function ($$v) {_vm.$set(_vm.item, \"personaEntrega\", $$v)},expression:\"item.personaEntrega\"}})]}}],null,true)})],1):_vm._e(),(_vm.mostrarCampoUsuarioEntrega)?_c('div',{class:_vm.sizes},[_c('span',{staticClass:\"ubica\"},[_vm._v(_vm._s(_vm.$t(\"app.modules.documentTypes.single\")))]),_c('ValidationProvider',{attrs:{\"name\":\"requiredTipoDoc\",\"rules\":\"required\"},scopedSlots:_vm._u([{key:\"default\",fn:function(ref){\n var passed = ref.passed;\n var failed = ref.failed;\nreturn [_c('el-select',{staticClass:\"d-block\",attrs:{\"size\":\"large\",\"placeholder\":_vm.$t('app.modules.documentTypes.single')},on:{\"change\":_vm.changeSelect},model:{value:(_vm.item.tipo_documento),callback:function ($$v) {_vm.$set(_vm.item, \"tipo_documento\", $$v)},expression:\"item.tipo_documento\"}},_vm._l((_vm.docsTypes),function(docType){return _c('el-option',{key:docType.idTipoDocPedido,attrs:{\"hasSuccess\":passed,\"value\":docType.idTipoDocPedido,\"label\":docType.nombre}})}),1),(failed)?_c('div',{staticClass:\"text-danger invalid-feedback\",staticStyle:{\"display\":\"block\"}},[_vm._v(\" \"+_vm._s(_vm.required_text)+\" \")]):_vm._e()]}}],null,true)})],1):_vm._e(),(_vm.mostrarCampoUsuarioEntrega)?_c('div',{class:_vm.sizes},[_c('el-upload',{ref:\"upload\",staticClass:\"upload-demo\",attrs:{\"action\":\"#\",\"multiple\":\"\",\"accept\":\"image/*\",\"file-list\":_vm.fileList,\"limit\":5,\"auto-upload\":false,\"on-change\":_vm.handleFile,\"on-remove\":_vm.handleFile}},[_c('n-button',{attrs:{\"size\":\"small\",\"type\":\"primary\"}},[_vm._v(_vm._s(_vm.$t(\"app.upload.select_file\")))]),_c('div',{staticClass:\"el-upload__tip\",attrs:{\"slot\":\"tip\"},slot:\"tip\"},[_vm._v(\" \"+_vm._s(_vm.$t(\"app.upload.image_size_limit\"))+\" \")])],1)],1):_vm._e(),(_vm.fileEmpty)?_c('div',{staticClass:\"text-danger invalid-feedback\",staticStyle:{\"display\":\"block\"}},[_vm._v(\" \"+_vm._s(_vm.required_text)+\" \")]):_vm._e()]),_c('div',{staticClass:\"text-right\",attrs:{\"slot\":\"footer\"},slot:\"footer\"},[_c('n-button',{staticClass:\"pull-left btn-secondary\",nativeOn:{\"click\":function($event){return _vm.cancelAdd()}}},[_vm._v(_vm._s(_vm.$t(\"app.buttons.cancel\")))]),_c('n-button',{attrs:{\"native-type\":\"submit\",\"type\":\"primary\"}},[_vm._v(_vm._s(_vm.$t(\"app.buttons.save\")))])],1)])]}}])})],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\n\r\n\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./entregasUpdatePhase.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./entregasUpdatePhase.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./entregasUpdatePhase.vue?vue&type=template&id=6614336d&\"\nimport script from \"./entregasUpdatePhase.vue?vue&type=script&lang=js&\"\nexport * from \"./entregasUpdatePhase.vue?vue&type=script&lang=js&\"\nimport style0 from \"./entregasUpdatePhase.vue?vue&type=style&index=0&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-12\"},[_c('div',{staticClass:\"new-button-div\"},[_c('n-button',{attrs:{\"type\":\"primary\",\"round\":\"\"},nativeOn:{\"click\":function($event){return _vm.addNewTypeIncident()}}},[_c('i',{staticClass:\"now-ui-icons ui-1_simple-add\",attrs:{\"slot\":\"label\"},slot:\"label\"}),_vm._v(\" \"+_vm._s(_vm.$t(\"app.modules.incidents.buttons.add\"))+\" \")])],1),_c('card',{attrs:{\"card-body-classes\":\"table-full-width\",\"no-footer-line\":\"\"}},[_c('div',{staticClass:\"col-md-12\"},[_c('div',{staticClass:\"col-12 d-flex justify-content-center justify-content-sm-between flex-wrap\"},[_c('h4',{staticClass:\"card-title text-purple\"},[_vm._v(\" \"+_vm._s(_vm.$t(\"app.modules.incidents.title\"))+\" \")]),_c('fg-input',[_c('el-input',{staticClass:\"mb-3\",staticStyle:{\"width\":\"300px\"},attrs:{\"type\":\"search\",\"clearable\":\"\",\"prefix-icon\":\"el-icon-search \",\"placeholder\":_vm.$t('app.general.search'),\"aria-controls\":\"datatables\"},model:{value:(_vm.searchQuery),callback:function ($$v) {_vm.searchQuery=$$v},expression:\"searchQuery\"}})],1)],1),_c('el-table',{staticStyle:{\"width\":\"100%\"},attrs:{\"stripe\":\"\",\"data\":_vm.queriedData}},[_c('el-table-column',{attrs:{\"prop\":\"nombre\",\"label\":this.$t('app.modules.incidents.headers.name'),\"sortable\":\"\",\"min-width\":\"300\"}}),_c('el-table-column',{attrs:{\"label\":_vm.$t('app.general.active'),\"min-width\":\"200\"},scopedSlots:_vm._u([{key:\"default\",fn:function(scope){return [_vm._v(\" \"+_vm._s(scope.row.estatus ? _vm.$t(\"app.general.active\") : _vm.$t(\"app.general.inactive\"))+\" \")]}}])}),_c('el-table-column',{attrs:{\"label\":_vm.$t('app.general.active'),\"min-width\":200},scopedSlots:_vm._u([{key:\"default\",fn:function(props){return [_c('n-switch',{attrs:{\"color\":\"black\"},on:{\"input\":function($event){return _vm.activeIncident(props.row)}},model:{value:(props.row.estatus),callback:function ($$v) {_vm.$set(props.row, \"estatus\", $$v)},expression:\"props.row.estatus\"}},[_c('i',{staticClass:\"now-ui-icons ui-1_check\",attrs:{\"slot\":\"on\"},slot:\"on\"}),_c('i',{staticClass:\"now-ui-icons ui-1_simple-remove\",attrs:{\"slot\":\"off\"},slot:\"off\"})])]}}])}),_c('el-table-column',{attrs:{\"min-width\":200,\"label\":_vm.$t('app.general.actions')},scopedSlots:_vm._u([{key:\"default\",fn:function(props){return _c('div',{staticClass:\"table-actions dropdown\"},[_c('el-popover',{ref:'refOption' + props.$index,attrs:{\"placement\":\"bottom\",\"width\":\"250\",\"trigger\":\"click\"}},[_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-12 options\"},[_c('n-button',{staticClass:\"options-button\",attrs:{\"type\":\"primary\",\"size\":\"sm\",\"round\":\"\"},nativeOn:{\"click\":function($event){return _vm.editarTipo(\n props.$index,\n props.row,\n 'refOption' + props.$index\n )}}},[_vm._v(\" \"+_vm._s(_vm.$t(\"app.modules.incidents.buttons.edit\"))+\" \")])],1)]),_c('n-button',{staticClass:\"button-options-table\",attrs:{\"slot\":\"reference\",\"size\":\"sm\",\"icon\":\"\"},slot:\"reference\"},[_c('i',{staticClass:\"fa fa-ellipsis-v\",staticStyle:{\"color\":\"black\"}})])],1)],1)}}])})],1)],1),_c('div',{staticClass:\"col-12 d-flex justify-content-center justify-content-sm-between flex-wrap\",attrs:{\"slot\":\"footer\"},slot:\"footer\"},[_c('div',{},[_c('p',{staticClass:\"card-category\"},[_vm._v(\" \"+_vm._s(_vm.$t(\"app.pagination.showing\"))+\" \"+_vm._s(_vm.from + 1)+\" \"+_vm._s(_vm.$t(\"app.pagination.of\"))+\" \"+_vm._s(_vm.to)+\" \"+_vm._s(_vm.$t(\"app.pagination.of\"))+\" \"+_vm._s(_vm.total)+\" \"+_vm._s(_vm.$t(\"app.pagination.records\"))+\" \")])]),_c('n-pagination',{staticClass:\"pagination-no-border\",attrs:{\"per-page\":_vm.pagination.perPage,\"total\":_vm.total},model:{value:(_vm.pagination.currentPage),callback:function ($$v) {_vm.$set(_vm.pagination, \"currentPage\", $$v)},expression:\"pagination.currentPage\"}})],1)]),_c('incidencia-add'),_c('incidencia-edit')],1)])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\n\r\n\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./incidencia.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./incidencia.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./incidencia.vue?vue&type=template&id=28361d2b&\"\nimport script from \"./incidencia.vue?vue&type=script&lang=js&\"\nexport * from \"./incidencia.vue?vue&type=script&lang=js&\"\nimport style0 from \"./incidencia.vue?vue&type=style&index=0&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./propiedadFamiliaProductoAdd.vue?vue&type=style&index=0&lang=css&\"","function dataHandler(newData, oldData) {\n if (oldData) {\n var chart = this.$data._chart;\n var newDatasetLabels = newData.datasets.map(function (dataset) {\n return dataset.label;\n });\n var oldDatasetLabels = oldData.datasets.map(function (dataset) {\n return dataset.label;\n });\n var oldLabels = JSON.stringify(oldDatasetLabels);\n var newLabels = JSON.stringify(newDatasetLabels);\n\n if (newLabels === oldLabels && oldData.datasets.length === newData.datasets.length) {\n newData.datasets.forEach(function (dataset, i) {\n var oldDatasetKeys = Object.keys(oldData.datasets[i]);\n var newDatasetKeys = Object.keys(dataset);\n var deletionKeys = oldDatasetKeys.filter(function (key) {\n return key !== '_meta' && newDatasetKeys.indexOf(key) === -1;\n });\n deletionKeys.forEach(function (deletionKey) {\n delete chart.data.datasets[i][deletionKey];\n });\n\n for (var attribute in dataset) {\n if (dataset.hasOwnProperty(attribute)) {\n chart.data.datasets[i][attribute] = dataset[attribute];\n }\n }\n });\n\n if (newData.hasOwnProperty('labels')) {\n chart.data.labels = newData.labels;\n this.$emit('labels:update');\n }\n\n if (newData.hasOwnProperty('xLabels')) {\n chart.data.xLabels = newData.xLabels;\n this.$emit('xlabels:update');\n }\n\n if (newData.hasOwnProperty('yLabels')) {\n chart.data.yLabels = newData.yLabels;\n this.$emit('ylabels:update');\n }\n\n chart.update();\n this.$emit('chart:update');\n } else {\n if (chart) {\n chart.destroy();\n this.$emit('chart:destroy');\n }\n\n this.renderChart(this.chartData, this.options);\n this.$emit('chart:render');\n }\n } else {\n if (this.$data._chart) {\n this.$data._chart.destroy();\n\n this.$emit('chart:destroy');\n }\n\n this.renderChart(this.chartData, this.options);\n this.$emit('chart:render');\n }\n}\n\nexport var reactiveData = {\n data: function data() {\n return {\n chartData: null\n };\n },\n watch: {\n 'chartData': dataHandler\n }\n};\nexport var reactiveProp = {\n props: {\n chartData: {\n type: Object,\n required: true,\n default: function _default() {}\n }\n },\n watch: {\n 'chartData': dataHandler\n }\n};\nexport default {\n reactiveData: reactiveData,\n reactiveProp: reactiveProp\n};","import Chart from 'chart.js';\nexport function generateChart(chartId, chartType) {\n return {\n render: function render(createElement) {\n return createElement('div', {\n style: this.styles,\n class: this.cssClasses\n }, [createElement('canvas', {\n attrs: {\n id: this.chartId,\n width: this.width,\n height: this.height\n },\n ref: 'canvas'\n })]);\n },\n props: {\n chartId: {\n default: chartId,\n type: String\n },\n width: {\n default: 400,\n type: Number\n },\n height: {\n default: 400,\n type: Number\n },\n cssClasses: {\n type: String,\n default: ''\n },\n styles: {\n type: Object\n },\n plugins: {\n type: Array,\n default: function _default() {\n return [];\n }\n }\n },\n data: function data() {\n return {\n _chart: null,\n _plugins: this.plugins\n };\n },\n methods: {\n addPlugin: function addPlugin(plugin) {\n this.$data._plugins.push(plugin);\n },\n generateLegend: function generateLegend() {\n if (this.$data._chart) {\n return this.$data._chart.generateLegend();\n }\n },\n renderChart: function renderChart(data, options) {\n if (this.$data._chart) this.$data._chart.destroy();\n if (!this.$refs.canvas) throw new Error('Please remove the tags from your chart component. See https://vue-chartjs.org/guide/#vue-single-file-components');\n this.$data._chart = new Chart(this.$refs.canvas.getContext('2d'), {\n type: chartType,\n data: data,\n options: options,\n plugins: this.$data._plugins\n });\n }\n },\n beforeDestroy: function beforeDestroy() {\n if (this.$data._chart) {\n this.$data._chart.destroy();\n }\n }\n };\n}\nexport var Bar = generateChart('bar-chart', 'bar');\nexport var HorizontalBar = generateChart('horizontalbar-chart', 'horizontalBar');\nexport var Doughnut = generateChart('doughnut-chart', 'doughnut');\nexport var Line = generateChart('line-chart', 'line');\nexport var Pie = generateChart('pie-chart', 'pie');\nexport var PolarArea = generateChart('polar-chart', 'polarArea');\nexport var Radar = generateChart('radar-chart', 'radar');\nexport var Bubble = generateChart('bubble-chart', 'bubble');\nexport var Scatter = generateChart('scatter-chart', 'scatter');\nexport default {\n Bar: Bar,\n HorizontalBar: HorizontalBar,\n Doughnut: Doughnut,\n Line: Line,\n Pie: Pie,\n PolarArea: PolarArea,\n Radar: Radar,\n Bubble: Bubble,\n Scatter: Scatter\n};","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-12\"},[_c('card',{attrs:{\"card-body-classes\":\"table-full-width\",\"no-footer-line\":\"\"}},[_c('div',{staticClass:\"col-12 d-flex justify-content-left justify-content-sm-left flex-wrap button-new\"},[_c('verify-permission',{attrs:{\"controller\":\"Subcategoria\",\"action\":\"AddSubcategoria\"}},[_c('n-button',{attrs:{\"type\":\"primary\",\"round\":\"\"},nativeOn:{\"click\":function($event){return _vm.openItemAdd()}}},[_c('i',{staticClass:\"now-ui-icons ui-1_simple-add\",attrs:{\"slot\":\"label\"},slot:\"label\"}),_vm._v(\" \"+_vm._s(_vm.$t(\"app.buttons.new\"))+\" \")])],1)],1),_c('div',[_c('div',{staticClass:\"col-12 d-flex justify-content-center justify-content-sm-between flex-wrap\"},[_c('h4',{staticClass:\"card-title text-purple\"},[_vm._v(_vm._s(_vm.$t(\"app.modules.subcategory_product.title\")))]),_c('fg-input',[_c('el-input',{staticClass:\"mb-3\",staticStyle:{\"width\":\"300px\"},attrs:{\"type\":\"search\",\"clearable\":\"\",\"prefix-icon\":\"el-icon-search \",\"placeholder\":_vm.$t('app.general.search'),\"aria-controls\":\"datatables\"},model:{value:(_vm.searchQuery),callback:function ($$v) {_vm.searchQuery=$$v},expression:\"searchQuery\"}})],1)],1),_c('el-table',{staticStyle:{\"width\":\"100%\"},attrs:{\"stripe\":\"\",\"data\":_vm.queriedData}},[_vm._l((_vm.tableColumns),function(column){return _c('el-table-column',{key:column.label,attrs:{\"min-width\":column.minWidth,\"prop\":column.prop,\"label\":column.label,\"sortable\":\"\"}})}),_c('el-table-column',{attrs:{\"className\":\"is-center\",\"labelClassName\":\"is-center\",\"label\":_vm.$t('app.modules.messages.headers.state'),\"width\":280},scopedSlots:_vm._u([{key:\"default\",fn:function(props){return [_c('n-switch',{attrs:{\"color\":\"black\"},on:{\"input\":function($event){return _vm.active(props.row)}},model:{value:(props.row.activo),callback:function ($$v) {_vm.$set(props.row, \"activo\", $$v)},expression:\"props.row.activo\"}},[_c('i',{staticClass:\"now-ui-icons ui-1_check\",attrs:{\"slot\":\"on\"},slot:\"on\"}),_c('i',{staticClass:\"now-ui-icons ui-1_simple-remove\",attrs:{\"slot\":\"off\"},slot:\"off\"})])]}}])}),_c('el-table-column',{attrs:{\"className\":\"is-center\",\"labelClassName\":\"is-center\",\"width\":280},scopedSlots:_vm._u([{key:\"default\",fn:function(props){return _c('div',{staticClass:\"table-actions dropdown\"},[_c('el-popover',{ref:'refOption' + props.$index,attrs:{\"placement\":\"bottom\",\"width\":\"250\",\"trigger\":\"click\"}},[_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-12 options\"},[_c('verify-permission',{attrs:{\"controller\":\"Subcategoria\",\"action\":\"UpdateSubcategoria\"}},[_c('n-button',{staticClass:\"options-button\",attrs:{\"type\":\"primary\",\"size\":\"sm\",\"round\":\"\"},nativeOn:{\"click\":function($event){return _vm.EditItem(\n props.$index,\n props.row\n )}}},[_vm._v(\" \"+_vm._s(_vm.$t(\"app.modules.category_product.edit.title\"))+\" \")])],1)],1)]),_c('n-button',{staticClass:\"button-options-table\",attrs:{\"slot\":\"reference\",\"size\":\"sm\",\"icon\":\"\"},slot:\"reference\"},[_c('i',{staticClass:\"fa fa-ellipsis-v\",staticStyle:{\"color\":\"black\"}})])],1)],1)}}])})],2)],1),_c('div',{staticClass:\"col-12 d-flex justify-content-center justify-content-sm-between flex-wrap\",attrs:{\"slot\":\"footer\"},slot:\"footer\"},[_c('div',{},[_c('p',{staticClass:\"card-category\"},[_vm._v(\" Mostrando \"+_vm._s(_vm.from + 1)+\" de \"+_vm._s(_vm.to)+\" de \"+_vm._s(_vm.total)+\" entradas \")])]),_c('n-pagination',{staticClass:\"pagination-no-border\",attrs:{\"per-page\":_vm.pagination.perPage,\"total\":_vm.total},model:{value:(_vm.pagination.currentPage),callback:function ($$v) {_vm.$set(_vm.pagination, \"currentPage\", $$v)},expression:\"pagination.currentPage\"}})],1)]),_c('subcategoriaproducto-add'),_c('subcategoriaproducto-edit')],1)])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\n\r\n\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./subcategoriaproducto.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./subcategoriaproducto.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./subcategoriaproducto.vue?vue&type=template&id=72166dda&\"\nimport script from \"./subcategoriaproducto.vue?vue&type=script&lang=js&\"\nexport * from \"./subcategoriaproducto.vue?vue&type=script&lang=js&\"\nimport style0 from \"./subcategoriaproducto.vue?vue&type=style&index=0&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./motivosDevolucion.vue?vue&type=style&index=0&lang=css&\"","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./motivoDeclinacionEdit.vue?vue&type=style&index=0&lang=css&\"","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-12\"},[_c('div',{staticClass:\"new-button-div\"},[_c('verify-permission',{attrs:{\"controller\":\"Organizaciones\",\"action\":\"addOrganizacion\"}},[_c('n-button',{attrs:{\"type\":\"primary\",\"round\":\"\"},nativeOn:{\"click\":function($event){return _vm.openItemAdd($event)}}},[_c('i',{staticClass:\"now-ui-icons ui-1_simple-add\",attrs:{\"slot\":\"label\"},slot:\"label\"}),_vm._v(\" \"+_vm._s(_vm.$t(\"app.buttons.new\"))+\" \")])],1)],1),_c('card',{attrs:{\"card-body-classes\":\"table-full-width\",\"no-footer-line\":\"\"}},[_c('div',[_c('div',{staticClass:\"col-12 d-flex justify-content-center justify-content-sm-between flex-wrap\"},[_c('h4',{staticClass:\"card-title text-purple\"},[_vm._v(_vm._s(_vm.$t(\"app.modules.organizations.title\")))])]),_c('el-table',{staticStyle:{\"width\":\"100%\"},attrs:{\"stripe\":\"\",\"data\":_vm.queriedData}},[_c('el-table-column',{attrs:{\"label\":_vm.$t('app.modules.organizations.headers.id'),\"min-width\":\"300\"},scopedSlots:_vm._u([{key:\"default\",fn:function(scope){return [_vm._v(\" \"+_vm._s(scope.row.idOrganizacion)+\" \")]}}])}),_c('el-table-column',{attrs:{\"label\":_vm.$t('app.modules.organizations.headers.name'),\"min-width\":\"300\"},scopedSlots:_vm._u([{key:\"default\",fn:function(scope){return [_vm._v(\" \"+_vm._s(scope.row.nombre)+\" \")]}}])}),_c('el-table-column',{attrs:{\"label\":_vm.$t('app.modules.organizations.headers.description'),\"min-width\":\"300\"},scopedSlots:_vm._u([{key:\"default\",fn:function(scope){return [_vm._v(\" \"+_vm._s(scope.row.descripcion)+\" \")]}}])}),_c('el-table-column',{attrs:{\"minWidth\":200,\"className\":\"is-center\",\"labelClassName\":\"is-center\"},scopedSlots:_vm._u([{key:\"default\",fn:function(scope){return _c('div',{staticClass:\"table-actions dropdown\"},[_c('el-popover',{attrs:{\"placement\":\"bottom\",\"width\":\"250\",\"trigger\":\"click\"}},[_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-12 options\"},[_c('verify-permission',{attrs:{\"controller\":\"Organizaciones\",\"action\":\"editOrganizacion\"}},[_c('n-button',{staticClass:\"options-button\",attrs:{\"type\":\"primary\",\"size\":\"sm\"},nativeOn:{\"click\":function($event){return _vm.openItemEdit(scope.row)}}},[_vm._v(\" \"+_vm._s(_vm.$t('app.buttons.edit'))+\" \")])],1)],1)]),_c('n-button',{staticStyle:{\"background-color\":\"white\"},attrs:{\"slot\":\"reference\",\"size\":\"sm\",\"icon\":\"\"},slot:\"reference\"},[_c('i',{staticClass:\"fa fa-ellipsis-v\",staticStyle:{\"color\":\"black\"}})])],1)],1)}}])})],1)],1),_c('div',{staticClass:\"col-12 d-flex justify-content-center justify-content-sm-between flex-wrap\",attrs:{\"slot\":\"footer\"},slot:\"footer\"},[_c('div',{},[_c('p',{staticClass:\"card-category\"},[_vm._v(\" \"+_vm._s(_vm.$t(\"app.pagination.showing\"))+\" \"+_vm._s(_vm.from + 1)+\" \"+_vm._s(_vm.$t(\"app.pagination.of\"))+\" \"+_vm._s(_vm.to)+\" \"+_vm._s(_vm.$t(\"app.pagination.of\"))+\" \"+_vm._s(_vm.total)+\" \"+_vm._s(_vm.$t(\"app.pagination.records\"))+\" \")])]),_c('n-pagination',{staticClass:\"pagination-no-border\",attrs:{\"per-page\":_vm.pagination.perPage,\"total\":_vm.total},model:{value:(_vm.pagination.currentPage),callback:function ($$v) {_vm.$set(_vm.pagination, \"currentPage\", $$v)},expression:\"pagination.currentPage\"}})],1)])],1),_c('organizacion-add-edit')],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\n\r\n\r\n\r\n\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./organizaciones.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./organizaciones.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./organizaciones.vue?vue&type=template&id=c298944c&scoped=true&\"\nimport script from \"./organizaciones.vue?vue&type=script&lang=js&\"\nexport * from \"./organizaciones.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"c298944c\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-12\"},[_c('card',{attrs:{\"card-body-classes\":\"table-full-width\",\"no-footer-line\":\"\"}},[_c('div',{staticClass:\"col-12 d-flex justify-content-left justify-content-sm-left flex-wrap button-new\"},[_c('verify-permission',{attrs:{\"controller\":\"CaracteristicasProducto\",\"action\":\"addCaratacteristicasProducto\"}},[_c('n-button',{attrs:{\"type\":\"primary\",\"round\":\"\"},nativeOn:{\"click\":function($event){return _vm.openItemAdd()}}},[_c('i',{staticClass:\"now-ui-icons ui-1_simple-add\",attrs:{\"slot\":\"label\"},slot:\"label\"}),_vm._v(\" \"+_vm._s(_vm.$t('app.buttons.new'))+\" \")])],1)],1),_c('div',[_c('div',{staticClass:\"col-12 d-flex justify-content-center justify-content-sm-between flex-wrap\"},[_c('h4',{staticClass:\"card-title text-purple\"},[_vm._v(_vm._s(_vm.$t(\"app.modules.product_feature.title\")))]),_c('fg-input',[_c('el-input',{staticClass:\"mb-3\",staticStyle:{\"width\":\"300px\"},attrs:{\"type\":\"search\",\"clearable\":\"\",\"prefix-icon\":\"el-icon-search \",\"placeholder\":_vm.$t('app.general.search'),\"aria-controls\":\"datatables\"},model:{value:(_vm.searchQuery),callback:function ($$v) {_vm.searchQuery=$$v},expression:\"searchQuery\"}})],1)],1),_c('el-table',{staticStyle:{\"width\":\"100%\"},attrs:{\"stripe\":\"\",\"data\":_vm.queriedData}},[_vm._l((_vm.tableColumns),function(column){return _c('el-table-column',{key:column.label,attrs:{\"min-width\":column.minWidth,\"prop\":column.prop,\"label\":_vm.$t(column.label),\"sortable\":\"\"}})}),_c('el-table-column',{attrs:{\"className\":\"is-center\",\"labelClassName\":\"is-center\",\"label\":_vm.$t('app.modules.messages.headers.state'),\"width\":280},scopedSlots:_vm._u([{key:\"default\",fn:function(props){return [_c('n-switch',{attrs:{\"color\":\"black\"},on:{\"input\":function($event){return _vm.active(props.row)}},model:{value:(props.row.activo),callback:function ($$v) {_vm.$set(props.row, \"activo\", $$v)},expression:\"props.row.activo\"}},[_c('i',{staticClass:\"now-ui-icons ui-1_check\",attrs:{\"slot\":\"on\"},slot:\"on\"}),_c('i',{staticClass:\"now-ui-icons ui-1_simple-remove\",attrs:{\"slot\":\"off\"},slot:\"off\"})])]}}])}),_c('el-table-column',{attrs:{\"className\":\"is-center\",\"labelClassName\":\"is-center\",\"width\":280},scopedSlots:_vm._u([{key:\"default\",fn:function(props){return _c('div',{staticClass:\"table-actions dropdown\"},[_c('el-popover',{ref:'refOption' + props.$index,attrs:{\"placement\":\"bottom\",\"width\":\"250\",\"trigger\":\"click\"}},[_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-12 options\"},[_c('verify-permission',{attrs:{\"controller\":\"CaracteristicasProducto\",\"action\":\"updateCaratacteristicasProducto\"}},[_c('n-button',{staticClass:\"options-button\",attrs:{\"type\":\"primary\",\"size\":\"sm\",\"round\":\"\"},nativeOn:{\"click\":function($event){return _vm.EditItem(props.$index, props.row)}}},[_vm._v(\" \"+_vm._s(_vm.$t(\"app.modules.category_product.edit.title\"))+\" \")])],1)],1)]),_c('n-button',{staticClass:\"button-options-table\",attrs:{\"slot\":\"reference\",\"size\":\"sm\",\"icon\":\"\"},slot:\"reference\"},[_c('i',{staticClass:\"fa fa-ellipsis-v\",staticStyle:{\"color\":\"black\"}})])],1)],1)}}])})],2)],1),_c('div',{staticClass:\"col-12 d-flex justify-content-center justify-content-sm-between flex-wrap\",attrs:{\"slot\":\"footer\"},slot:\"footer\"},[_c('div',{},[_c('p',{staticClass:\"card-category\"},[_vm._v(\" \"+_vm._s(_vm.$t(\"app.pagination.showing\"))+\" \"+_vm._s(_vm.from + 1)+\" \"+_vm._s(_vm.$t(\"app.pagination.of\"))+\" \"+_vm._s(_vm.to)+\" \"+_vm._s(_vm.$t(\"app.pagination.of\"))+\" \"+_vm._s(_vm.total)+\" \"+_vm._s(_vm.$t(\"app.pagination.records\"))+\" \")])]),_c('n-pagination',{staticClass:\"pagination-no-border\",attrs:{\"per-page\":_vm.pagination.perPage,\"total\":_vm.total},model:{value:(_vm.pagination.currentPage),callback:function ($$v) {_vm.$set(_vm.pagination, \"currentPage\", $$v)},expression:\"pagination.currentPage\"}})],1)]),_c('productocaracteristica-add'),_c('productocaracteristica-edit')],1)])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\n\r\n\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./productocaracteristica.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./productocaracteristica.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./productocaracteristica.vue?vue&type=template&id=0e6fc696&\"\nimport script from \"./productocaracteristica.vue?vue&type=script&lang=js&\"\nexport * from \"./productocaracteristica.vue?vue&type=script&lang=js&\"\nimport style0 from \"./productocaracteristica.vue?vue&type=style&index=0&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./propiedadFamiliaProducto.vue?vue&type=style&index=1&id=12ae3eb3&scoped=true&lang=css&\"","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./desarrolladorIndex.vue?vue&type=style&index=0&id=2fa73006&scoped=true&lang=css&\"","'use strict';\n// TODO: in core-js@4, move /modules/ dependencies to public entries for better optimization by tools like `preset-env`\nrequire('../modules/es.string.iterator');\nvar $ = require('../internals/export');\nvar DESCRIPTORS = require('../internals/descriptors');\nvar USE_NATIVE_URL = require('../internals/native-url');\nvar global = require('../internals/global');\nvar defineProperties = require('../internals/object-define-properties');\nvar redefine = require('../internals/redefine');\nvar anInstance = require('../internals/an-instance');\nvar has = require('../internals/has');\nvar assign = require('../internals/object-assign');\nvar arrayFrom = require('../internals/array-from');\nvar codeAt = require('../internals/string-multibyte').codeAt;\nvar toASCII = require('../internals/string-punycode-to-ascii');\nvar setToStringTag = require('../internals/set-to-string-tag');\nvar URLSearchParamsModule = require('../modules/web.url-search-params');\nvar InternalStateModule = require('../internals/internal-state');\n\nvar NativeURL = global.URL;\nvar URLSearchParams = URLSearchParamsModule.URLSearchParams;\nvar getInternalSearchParamsState = URLSearchParamsModule.getState;\nvar setInternalState = InternalStateModule.set;\nvar getInternalURLState = InternalStateModule.getterFor('URL');\nvar floor = Math.floor;\nvar pow = Math.pow;\n\nvar INVALID_AUTHORITY = 'Invalid authority';\nvar INVALID_SCHEME = 'Invalid scheme';\nvar INVALID_HOST = 'Invalid host';\nvar INVALID_PORT = 'Invalid port';\n\nvar ALPHA = /[A-Za-z]/;\nvar ALPHANUMERIC = /[\\d+-.A-Za-z]/;\nvar DIGIT = /\\d/;\nvar HEX_START = /^(0x|0X)/;\nvar OCT = /^[0-7]+$/;\nvar DEC = /^\\d+$/;\nvar HEX = /^[\\dA-Fa-f]+$/;\n// eslint-disable-next-line no-control-regex\nvar FORBIDDEN_HOST_CODE_POINT = /[\\u0000\\u0009\\u000A\\u000D #%/:?@[\\\\]]/;\n// eslint-disable-next-line no-control-regex\nvar FORBIDDEN_HOST_CODE_POINT_EXCLUDING_PERCENT = /[\\u0000\\u0009\\u000A\\u000D #/:?@[\\\\]]/;\n// eslint-disable-next-line no-control-regex\nvar LEADING_AND_TRAILING_C0_CONTROL_OR_SPACE = /^[\\u0000-\\u001F ]+|[\\u0000-\\u001F ]+$/g;\n// eslint-disable-next-line no-control-regex\nvar TAB_AND_NEW_LINE = /[\\u0009\\u000A\\u000D]/g;\nvar EOF;\n\nvar parseHost = function (url, input) {\n var result, codePoints, index;\n if (input.charAt(0) == '[') {\n if (input.charAt(input.length - 1) != ']') return INVALID_HOST;\n result = parseIPv6(input.slice(1, -1));\n if (!result) return INVALID_HOST;\n url.host = result;\n // opaque host\n } else if (!isSpecial(url)) {\n if (FORBIDDEN_HOST_CODE_POINT_EXCLUDING_PERCENT.test(input)) return INVALID_HOST;\n result = '';\n codePoints = arrayFrom(input);\n for (index = 0; index < codePoints.length; index++) {\n result += percentEncode(codePoints[index], C0ControlPercentEncodeSet);\n }\n url.host = result;\n } else {\n input = toASCII(input);\n if (FORBIDDEN_HOST_CODE_POINT.test(input)) return INVALID_HOST;\n result = parseIPv4(input);\n if (result === null) return INVALID_HOST;\n url.host = result;\n }\n};\n\nvar parseIPv4 = function (input) {\n var parts = input.split('.');\n var partsLength, numbers, index, part, radix, number, ipv4;\n if (parts.length && parts[parts.length - 1] == '') {\n parts.pop();\n }\n partsLength = parts.length;\n if (partsLength > 4) return input;\n numbers = [];\n for (index = 0; index < partsLength; index++) {\n part = parts[index];\n if (part == '') return input;\n radix = 10;\n if (part.length > 1 && part.charAt(0) == '0') {\n radix = HEX_START.test(part) ? 16 : 8;\n part = part.slice(radix == 8 ? 1 : 2);\n }\n if (part === '') {\n number = 0;\n } else {\n if (!(radix == 10 ? DEC : radix == 8 ? OCT : HEX).test(part)) return input;\n number = parseInt(part, radix);\n }\n numbers.push(number);\n }\n for (index = 0; index < partsLength; index++) {\n number = numbers[index];\n if (index == partsLength - 1) {\n if (number >= pow(256, 5 - partsLength)) return null;\n } else if (number > 255) return null;\n }\n ipv4 = numbers.pop();\n for (index = 0; index < numbers.length; index++) {\n ipv4 += numbers[index] * pow(256, 3 - index);\n }\n return ipv4;\n};\n\n// eslint-disable-next-line max-statements\nvar parseIPv6 = function (input) {\n var address = [0, 0, 0, 0, 0, 0, 0, 0];\n var pieceIndex = 0;\n var compress = null;\n var pointer = 0;\n var value, length, numbersSeen, ipv4Piece, number, swaps, swap;\n\n var char = function () {\n return input.charAt(pointer);\n };\n\n if (char() == ':') {\n if (input.charAt(1) != ':') return;\n pointer += 2;\n pieceIndex++;\n compress = pieceIndex;\n }\n while (char()) {\n if (pieceIndex == 8) return;\n if (char() == ':') {\n if (compress !== null) return;\n pointer++;\n pieceIndex++;\n compress = pieceIndex;\n continue;\n }\n value = length = 0;\n while (length < 4 && HEX.test(char())) {\n value = value * 16 + parseInt(char(), 16);\n pointer++;\n length++;\n }\n if (char() == '.') {\n if (length == 0) return;\n pointer -= length;\n if (pieceIndex > 6) return;\n numbersSeen = 0;\n while (char()) {\n ipv4Piece = null;\n if (numbersSeen > 0) {\n if (char() == '.' && numbersSeen < 4) pointer++;\n else return;\n }\n if (!DIGIT.test(char())) return;\n while (DIGIT.test(char())) {\n number = parseInt(char(), 10);\n if (ipv4Piece === null) ipv4Piece = number;\n else if (ipv4Piece == 0) return;\n else ipv4Piece = ipv4Piece * 10 + number;\n if (ipv4Piece > 255) return;\n pointer++;\n }\n address[pieceIndex] = address[pieceIndex] * 256 + ipv4Piece;\n numbersSeen++;\n if (numbersSeen == 2 || numbersSeen == 4) pieceIndex++;\n }\n if (numbersSeen != 4) return;\n break;\n } else if (char() == ':') {\n pointer++;\n if (!char()) return;\n } else if (char()) return;\n address[pieceIndex++] = value;\n }\n if (compress !== null) {\n swaps = pieceIndex - compress;\n pieceIndex = 7;\n while (pieceIndex != 0 && swaps > 0) {\n swap = address[pieceIndex];\n address[pieceIndex--] = address[compress + swaps - 1];\n address[compress + --swaps] = swap;\n }\n } else if (pieceIndex != 8) return;\n return address;\n};\n\nvar findLongestZeroSequence = function (ipv6) {\n var maxIndex = null;\n var maxLength = 1;\n var currStart = null;\n var currLength = 0;\n var index = 0;\n for (; index < 8; index++) {\n if (ipv6[index] !== 0) {\n if (currLength > maxLength) {\n maxIndex = currStart;\n maxLength = currLength;\n }\n currStart = null;\n currLength = 0;\n } else {\n if (currStart === null) currStart = index;\n ++currLength;\n }\n }\n if (currLength > maxLength) {\n maxIndex = currStart;\n maxLength = currLength;\n }\n return maxIndex;\n};\n\nvar serializeHost = function (host) {\n var result, index, compress, ignore0;\n // ipv4\n if (typeof host == 'number') {\n result = [];\n for (index = 0; index < 4; index++) {\n result.unshift(host % 256);\n host = floor(host / 256);\n } return result.join('.');\n // ipv6\n } else if (typeof host == 'object') {\n result = '';\n compress = findLongestZeroSequence(host);\n for (index = 0; index < 8; index++) {\n if (ignore0 && host[index] === 0) continue;\n if (ignore0) ignore0 = false;\n if (compress === index) {\n result += index ? ':' : '::';\n ignore0 = true;\n } else {\n result += host[index].toString(16);\n if (index < 7) result += ':';\n }\n }\n return '[' + result + ']';\n } return host;\n};\n\nvar C0ControlPercentEncodeSet = {};\nvar fragmentPercentEncodeSet = assign({}, C0ControlPercentEncodeSet, {\n ' ': 1, '\"': 1, '<': 1, '>': 1, '`': 1\n});\nvar pathPercentEncodeSet = assign({}, fragmentPercentEncodeSet, {\n '#': 1, '?': 1, '{': 1, '}': 1\n});\nvar userinfoPercentEncodeSet = assign({}, pathPercentEncodeSet, {\n '/': 1, ':': 1, ';': 1, '=': 1, '@': 1, '[': 1, '\\\\': 1, ']': 1, '^': 1, '|': 1\n});\n\nvar percentEncode = function (char, set) {\n var code = codeAt(char, 0);\n return code > 0x20 && code < 0x7F && !has(set, char) ? char : encodeURIComponent(char);\n};\n\nvar specialSchemes = {\n ftp: 21,\n file: null,\n http: 80,\n https: 443,\n ws: 80,\n wss: 443\n};\n\nvar isSpecial = function (url) {\n return has(specialSchemes, url.scheme);\n};\n\nvar includesCredentials = function (url) {\n return url.username != '' || url.password != '';\n};\n\nvar cannotHaveUsernamePasswordPort = function (url) {\n return !url.host || url.cannotBeABaseURL || url.scheme == 'file';\n};\n\nvar isWindowsDriveLetter = function (string, normalized) {\n var second;\n return string.length == 2 && ALPHA.test(string.charAt(0))\n && ((second = string.charAt(1)) == ':' || (!normalized && second == '|'));\n};\n\nvar startsWithWindowsDriveLetter = function (string) {\n var third;\n return string.length > 1 && isWindowsDriveLetter(string.slice(0, 2)) && (\n string.length == 2 ||\n ((third = string.charAt(2)) === '/' || third === '\\\\' || third === '?' || third === '#')\n );\n};\n\nvar shortenURLsPath = function (url) {\n var path = url.path;\n var pathSize = path.length;\n if (pathSize && (url.scheme != 'file' || pathSize != 1 || !isWindowsDriveLetter(path[0], true))) {\n path.pop();\n }\n};\n\nvar isSingleDot = function (segment) {\n return segment === '.' || segment.toLowerCase() === '%2e';\n};\n\nvar isDoubleDot = function (segment) {\n segment = segment.toLowerCase();\n return segment === '..' || segment === '%2e.' || segment === '.%2e' || segment === '%2e%2e';\n};\n\n// States:\nvar SCHEME_START = {};\nvar SCHEME = {};\nvar NO_SCHEME = {};\nvar SPECIAL_RELATIVE_OR_AUTHORITY = {};\nvar PATH_OR_AUTHORITY = {};\nvar RELATIVE = {};\nvar RELATIVE_SLASH = {};\nvar SPECIAL_AUTHORITY_SLASHES = {};\nvar SPECIAL_AUTHORITY_IGNORE_SLASHES = {};\nvar AUTHORITY = {};\nvar HOST = {};\nvar HOSTNAME = {};\nvar PORT = {};\nvar FILE = {};\nvar FILE_SLASH = {};\nvar FILE_HOST = {};\nvar PATH_START = {};\nvar PATH = {};\nvar CANNOT_BE_A_BASE_URL_PATH = {};\nvar QUERY = {};\nvar FRAGMENT = {};\n\n// eslint-disable-next-line max-statements\nvar parseURL = function (url, input, stateOverride, base) {\n var state = stateOverride || SCHEME_START;\n var pointer = 0;\n var buffer = '';\n var seenAt = false;\n var seenBracket = false;\n var seenPasswordToken = false;\n var codePoints, char, bufferCodePoints, failure;\n\n if (!stateOverride) {\n url.scheme = '';\n url.username = '';\n url.password = '';\n url.host = null;\n url.port = null;\n url.path = [];\n url.query = null;\n url.fragment = null;\n url.cannotBeABaseURL = false;\n input = input.replace(LEADING_AND_TRAILING_C0_CONTROL_OR_SPACE, '');\n }\n\n input = input.replace(TAB_AND_NEW_LINE, '');\n\n codePoints = arrayFrom(input);\n\n while (pointer <= codePoints.length) {\n char = codePoints[pointer];\n switch (state) {\n case SCHEME_START:\n if (char && ALPHA.test(char)) {\n buffer += char.toLowerCase();\n state = SCHEME;\n } else if (!stateOverride) {\n state = NO_SCHEME;\n continue;\n } else return INVALID_SCHEME;\n break;\n\n case SCHEME:\n if (char && (ALPHANUMERIC.test(char) || char == '+' || char == '-' || char == '.')) {\n buffer += char.toLowerCase();\n } else if (char == ':') {\n if (stateOverride && (\n (isSpecial(url) != has(specialSchemes, buffer)) ||\n (buffer == 'file' && (includesCredentials(url) || url.port !== null)) ||\n (url.scheme == 'file' && !url.host)\n )) return;\n url.scheme = buffer;\n if (stateOverride) {\n if (isSpecial(url) && specialSchemes[url.scheme] == url.port) url.port = null;\n return;\n }\n buffer = '';\n if (url.scheme == 'file') {\n state = FILE;\n } else if (isSpecial(url) && base && base.scheme == url.scheme) {\n state = SPECIAL_RELATIVE_OR_AUTHORITY;\n } else if (isSpecial(url)) {\n state = SPECIAL_AUTHORITY_SLASHES;\n } else if (codePoints[pointer + 1] == '/') {\n state = PATH_OR_AUTHORITY;\n pointer++;\n } else {\n url.cannotBeABaseURL = true;\n url.path.push('');\n state = CANNOT_BE_A_BASE_URL_PATH;\n }\n } else if (!stateOverride) {\n buffer = '';\n state = NO_SCHEME;\n pointer = 0;\n continue;\n } else return INVALID_SCHEME;\n break;\n\n case NO_SCHEME:\n if (!base || (base.cannotBeABaseURL && char != '#')) return INVALID_SCHEME;\n if (base.cannotBeABaseURL && char == '#') {\n url.scheme = base.scheme;\n url.path = base.path.slice();\n url.query = base.query;\n url.fragment = '';\n url.cannotBeABaseURL = true;\n state = FRAGMENT;\n break;\n }\n state = base.scheme == 'file' ? FILE : RELATIVE;\n continue;\n\n case SPECIAL_RELATIVE_OR_AUTHORITY:\n if (char == '/' && codePoints[pointer + 1] == '/') {\n state = SPECIAL_AUTHORITY_IGNORE_SLASHES;\n pointer++;\n } else {\n state = RELATIVE;\n continue;\n } break;\n\n case PATH_OR_AUTHORITY:\n if (char == '/') {\n state = AUTHORITY;\n break;\n } else {\n state = PATH;\n continue;\n }\n\n case RELATIVE:\n url.scheme = base.scheme;\n if (char == EOF) {\n url.username = base.username;\n url.password = base.password;\n url.host = base.host;\n url.port = base.port;\n url.path = base.path.slice();\n url.query = base.query;\n } else if (char == '/' || (char == '\\\\' && isSpecial(url))) {\n state = RELATIVE_SLASH;\n } else if (char == '?') {\n url.username = base.username;\n url.password = base.password;\n url.host = base.host;\n url.port = base.port;\n url.path = base.path.slice();\n url.query = '';\n state = QUERY;\n } else if (char == '#') {\n url.username = base.username;\n url.password = base.password;\n url.host = base.host;\n url.port = base.port;\n url.path = base.path.slice();\n url.query = base.query;\n url.fragment = '';\n state = FRAGMENT;\n } else {\n url.username = base.username;\n url.password = base.password;\n url.host = base.host;\n url.port = base.port;\n url.path = base.path.slice();\n url.path.pop();\n state = PATH;\n continue;\n } break;\n\n case RELATIVE_SLASH:\n if (isSpecial(url) && (char == '/' || char == '\\\\')) {\n state = SPECIAL_AUTHORITY_IGNORE_SLASHES;\n } else if (char == '/') {\n state = AUTHORITY;\n } else {\n url.username = base.username;\n url.password = base.password;\n url.host = base.host;\n url.port = base.port;\n state = PATH;\n continue;\n } break;\n\n case SPECIAL_AUTHORITY_SLASHES:\n state = SPECIAL_AUTHORITY_IGNORE_SLASHES;\n if (char != '/' || buffer.charAt(pointer + 1) != '/') continue;\n pointer++;\n break;\n\n case SPECIAL_AUTHORITY_IGNORE_SLASHES:\n if (char != '/' && char != '\\\\') {\n state = AUTHORITY;\n continue;\n } break;\n\n case AUTHORITY:\n if (char == '@') {\n if (seenAt) buffer = '%40' + buffer;\n seenAt = true;\n bufferCodePoints = arrayFrom(buffer);\n for (var i = 0; i < bufferCodePoints.length; i++) {\n var codePoint = bufferCodePoints[i];\n if (codePoint == ':' && !seenPasswordToken) {\n seenPasswordToken = true;\n continue;\n }\n var encodedCodePoints = percentEncode(codePoint, userinfoPercentEncodeSet);\n if (seenPasswordToken) url.password += encodedCodePoints;\n else url.username += encodedCodePoints;\n }\n buffer = '';\n } else if (\n char == EOF || char == '/' || char == '?' || char == '#' ||\n (char == '\\\\' && isSpecial(url))\n ) {\n if (seenAt && buffer == '') return INVALID_AUTHORITY;\n pointer -= arrayFrom(buffer).length + 1;\n buffer = '';\n state = HOST;\n } else buffer += char;\n break;\n\n case HOST:\n case HOSTNAME:\n if (stateOverride && url.scheme == 'file') {\n state = FILE_HOST;\n continue;\n } else if (char == ':' && !seenBracket) {\n if (buffer == '') return INVALID_HOST;\n failure = parseHost(url, buffer);\n if (failure) return failure;\n buffer = '';\n state = PORT;\n if (stateOverride == HOSTNAME) return;\n } else if (\n char == EOF || char == '/' || char == '?' || char == '#' ||\n (char == '\\\\' && isSpecial(url))\n ) {\n if (isSpecial(url) && buffer == '') return INVALID_HOST;\n if (stateOverride && buffer == '' && (includesCredentials(url) || url.port !== null)) return;\n failure = parseHost(url, buffer);\n if (failure) return failure;\n buffer = '';\n state = PATH_START;\n if (stateOverride) return;\n continue;\n } else {\n if (char == '[') seenBracket = true;\n else if (char == ']') seenBracket = false;\n buffer += char;\n } break;\n\n case PORT:\n if (DIGIT.test(char)) {\n buffer += char;\n } else if (\n char == EOF || char == '/' || char == '?' || char == '#' ||\n (char == '\\\\' && isSpecial(url)) ||\n stateOverride\n ) {\n if (buffer != '') {\n var port = parseInt(buffer, 10);\n if (port > 0xFFFF) return INVALID_PORT;\n url.port = (isSpecial(url) && port === specialSchemes[url.scheme]) ? null : port;\n buffer = '';\n }\n if (stateOverride) return;\n state = PATH_START;\n continue;\n } else return INVALID_PORT;\n break;\n\n case FILE:\n url.scheme = 'file';\n if (char == '/' || char == '\\\\') state = FILE_SLASH;\n else if (base && base.scheme == 'file') {\n if (char == EOF) {\n url.host = base.host;\n url.path = base.path.slice();\n url.query = base.query;\n } else if (char == '?') {\n url.host = base.host;\n url.path = base.path.slice();\n url.query = '';\n state = QUERY;\n } else if (char == '#') {\n url.host = base.host;\n url.path = base.path.slice();\n url.query = base.query;\n url.fragment = '';\n state = FRAGMENT;\n } else {\n if (!startsWithWindowsDriveLetter(codePoints.slice(pointer).join(''))) {\n url.host = base.host;\n url.path = base.path.slice();\n shortenURLsPath(url);\n }\n state = PATH;\n continue;\n }\n } else {\n state = PATH;\n continue;\n } break;\n\n case FILE_SLASH:\n if (char == '/' || char == '\\\\') {\n state = FILE_HOST;\n break;\n }\n if (base && base.scheme == 'file' && !startsWithWindowsDriveLetter(codePoints.slice(pointer).join(''))) {\n if (isWindowsDriveLetter(base.path[0], true)) url.path.push(base.path[0]);\n else url.host = base.host;\n }\n state = PATH;\n continue;\n\n case FILE_HOST:\n if (char == EOF || char == '/' || char == '\\\\' || char == '?' || char == '#') {\n if (!stateOverride && isWindowsDriveLetter(buffer)) {\n state = PATH;\n } else if (buffer == '') {\n url.host = '';\n if (stateOverride) return;\n state = PATH_START;\n } else {\n failure = parseHost(url, buffer);\n if (failure) return failure;\n if (url.host == 'localhost') url.host = '';\n if (stateOverride) return;\n buffer = '';\n state = PATH_START;\n } continue;\n } else buffer += char;\n break;\n\n case PATH_START:\n if (isSpecial(url)) {\n state = PATH;\n if (char != '/' && char != '\\\\') continue;\n } else if (!stateOverride && char == '?') {\n url.query = '';\n state = QUERY;\n } else if (!stateOverride && char == '#') {\n url.fragment = '';\n state = FRAGMENT;\n } else if (char != EOF) {\n state = PATH;\n if (char != '/') continue;\n } break;\n\n case PATH:\n if (\n char == EOF || char == '/' ||\n (char == '\\\\' && isSpecial(url)) ||\n (!stateOverride && (char == '?' || char == '#'))\n ) {\n if (isDoubleDot(buffer)) {\n shortenURLsPath(url);\n if (char != '/' && !(char == '\\\\' && isSpecial(url))) {\n url.path.push('');\n }\n } else if (isSingleDot(buffer)) {\n if (char != '/' && !(char == '\\\\' && isSpecial(url))) {\n url.path.push('');\n }\n } else {\n if (url.scheme == 'file' && !url.path.length && isWindowsDriveLetter(buffer)) {\n if (url.host) url.host = '';\n buffer = buffer.charAt(0) + ':'; // normalize windows drive letter\n }\n url.path.push(buffer);\n }\n buffer = '';\n if (url.scheme == 'file' && (char == EOF || char == '?' || char == '#')) {\n while (url.path.length > 1 && url.path[0] === '') {\n url.path.shift();\n }\n }\n if (char == '?') {\n url.query = '';\n state = QUERY;\n } else if (char == '#') {\n url.fragment = '';\n state = FRAGMENT;\n }\n } else {\n buffer += percentEncode(char, pathPercentEncodeSet);\n } break;\n\n case CANNOT_BE_A_BASE_URL_PATH:\n if (char == '?') {\n url.query = '';\n state = QUERY;\n } else if (char == '#') {\n url.fragment = '';\n state = FRAGMENT;\n } else if (char != EOF) {\n url.path[0] += percentEncode(char, C0ControlPercentEncodeSet);\n } break;\n\n case QUERY:\n if (!stateOverride && char == '#') {\n url.fragment = '';\n state = FRAGMENT;\n } else if (char != EOF) {\n if (char == \"'\" && isSpecial(url)) url.query += '%27';\n else if (char == '#') url.query += '%23';\n else url.query += percentEncode(char, C0ControlPercentEncodeSet);\n } break;\n\n case FRAGMENT:\n if (char != EOF) url.fragment += percentEncode(char, fragmentPercentEncodeSet);\n break;\n }\n\n pointer++;\n }\n};\n\n// `URL` constructor\n// https://url.spec.whatwg.org/#url-class\nvar URLConstructor = function URL(url /* , base */) {\n var that = anInstance(this, URLConstructor, 'URL');\n var base = arguments.length > 1 ? arguments[1] : undefined;\n var urlString = String(url);\n var state = setInternalState(that, { type: 'URL' });\n var baseState, failure;\n if (base !== undefined) {\n if (base instanceof URLConstructor) baseState = getInternalURLState(base);\n else {\n failure = parseURL(baseState = {}, String(base));\n if (failure) throw TypeError(failure);\n }\n }\n failure = parseURL(state, urlString, null, baseState);\n if (failure) throw TypeError(failure);\n var searchParams = state.searchParams = new URLSearchParams();\n var searchParamsState = getInternalSearchParamsState(searchParams);\n searchParamsState.updateSearchParams(state.query);\n searchParamsState.updateURL = function () {\n state.query = String(searchParams) || null;\n };\n if (!DESCRIPTORS) {\n that.href = serializeURL.call(that);\n that.origin = getOrigin.call(that);\n that.protocol = getProtocol.call(that);\n that.username = getUsername.call(that);\n that.password = getPassword.call(that);\n that.host = getHost.call(that);\n that.hostname = getHostname.call(that);\n that.port = getPort.call(that);\n that.pathname = getPathname.call(that);\n that.search = getSearch.call(that);\n that.searchParams = getSearchParams.call(that);\n that.hash = getHash.call(that);\n }\n};\n\nvar URLPrototype = URLConstructor.prototype;\n\nvar serializeURL = function () {\n var url = getInternalURLState(this);\n var scheme = url.scheme;\n var username = url.username;\n var password = url.password;\n var host = url.host;\n var port = url.port;\n var path = url.path;\n var query = url.query;\n var fragment = url.fragment;\n var output = scheme + ':';\n if (host !== null) {\n output += '//';\n if (includesCredentials(url)) {\n output += username + (password ? ':' + password : '') + '@';\n }\n output += serializeHost(host);\n if (port !== null) output += ':' + port;\n } else if (scheme == 'file') output += '//';\n output += url.cannotBeABaseURL ? path[0] : path.length ? '/' + path.join('/') : '';\n if (query !== null) output += '?' + query;\n if (fragment !== null) output += '#' + fragment;\n return output;\n};\n\nvar getOrigin = function () {\n var url = getInternalURLState(this);\n var scheme = url.scheme;\n var port = url.port;\n if (scheme == 'blob') try {\n return new URL(scheme.path[0]).origin;\n } catch (error) {\n return 'null';\n }\n if (scheme == 'file' || !isSpecial(url)) return 'null';\n return scheme + '://' + serializeHost(url.host) + (port !== null ? ':' + port : '');\n};\n\nvar getProtocol = function () {\n return getInternalURLState(this).scheme + ':';\n};\n\nvar getUsername = function () {\n return getInternalURLState(this).username;\n};\n\nvar getPassword = function () {\n return getInternalURLState(this).password;\n};\n\nvar getHost = function () {\n var url = getInternalURLState(this);\n var host = url.host;\n var port = url.port;\n return host === null ? ''\n : port === null ? serializeHost(host)\n : serializeHost(host) + ':' + port;\n};\n\nvar getHostname = function () {\n var host = getInternalURLState(this).host;\n return host === null ? '' : serializeHost(host);\n};\n\nvar getPort = function () {\n var port = getInternalURLState(this).port;\n return port === null ? '' : String(port);\n};\n\nvar getPathname = function () {\n var url = getInternalURLState(this);\n var path = url.path;\n return url.cannotBeABaseURL ? path[0] : path.length ? '/' + path.join('/') : '';\n};\n\nvar getSearch = function () {\n var query = getInternalURLState(this).query;\n return query ? '?' + query : '';\n};\n\nvar getSearchParams = function () {\n return getInternalURLState(this).searchParams;\n};\n\nvar getHash = function () {\n var fragment = getInternalURLState(this).fragment;\n return fragment ? '#' + fragment : '';\n};\n\nvar accessorDescriptor = function (getter, setter) {\n return { get: getter, set: setter, configurable: true, enumerable: true };\n};\n\nif (DESCRIPTORS) {\n defineProperties(URLPrototype, {\n // `URL.prototype.href` accessors pair\n // https://url.spec.whatwg.org/#dom-url-href\n href: accessorDescriptor(serializeURL, function (href) {\n var url = getInternalURLState(this);\n var urlString = String(href);\n var failure = parseURL(url, urlString);\n if (failure) throw TypeError(failure);\n getInternalSearchParamsState(url.searchParams).updateSearchParams(url.query);\n }),\n // `URL.prototype.origin` getter\n // https://url.spec.whatwg.org/#dom-url-origin\n origin: accessorDescriptor(getOrigin),\n // `URL.prototype.protocol` accessors pair\n // https://url.spec.whatwg.org/#dom-url-protocol\n protocol: accessorDescriptor(getProtocol, function (protocol) {\n var url = getInternalURLState(this);\n parseURL(url, String(protocol) + ':', SCHEME_START);\n }),\n // `URL.prototype.username` accessors pair\n // https://url.spec.whatwg.org/#dom-url-username\n username: accessorDescriptor(getUsername, function (username) {\n var url = getInternalURLState(this);\n var codePoints = arrayFrom(String(username));\n if (cannotHaveUsernamePasswordPort(url)) return;\n url.username = '';\n for (var i = 0; i < codePoints.length; i++) {\n url.username += percentEncode(codePoints[i], userinfoPercentEncodeSet);\n }\n }),\n // `URL.prototype.password` accessors pair\n // https://url.spec.whatwg.org/#dom-url-password\n password: accessorDescriptor(getPassword, function (password) {\n var url = getInternalURLState(this);\n var codePoints = arrayFrom(String(password));\n if (cannotHaveUsernamePasswordPort(url)) return;\n url.password = '';\n for (var i = 0; i < codePoints.length; i++) {\n url.password += percentEncode(codePoints[i], userinfoPercentEncodeSet);\n }\n }),\n // `URL.prototype.host` accessors pair\n // https://url.spec.whatwg.org/#dom-url-host\n host: accessorDescriptor(getHost, function (host) {\n var url = getInternalURLState(this);\n if (url.cannotBeABaseURL) return;\n parseURL(url, String(host), HOST);\n }),\n // `URL.prototype.hostname` accessors pair\n // https://url.spec.whatwg.org/#dom-url-hostname\n hostname: accessorDescriptor(getHostname, function (hostname) {\n var url = getInternalURLState(this);\n if (url.cannotBeABaseURL) return;\n parseURL(url, String(hostname), HOSTNAME);\n }),\n // `URL.prototype.port` accessors pair\n // https://url.spec.whatwg.org/#dom-url-port\n port: accessorDescriptor(getPort, function (port) {\n var url = getInternalURLState(this);\n if (cannotHaveUsernamePasswordPort(url)) return;\n port = String(port);\n if (port == '') url.port = null;\n else parseURL(url, port, PORT);\n }),\n // `URL.prototype.pathname` accessors pair\n // https://url.spec.whatwg.org/#dom-url-pathname\n pathname: accessorDescriptor(getPathname, function (pathname) {\n var url = getInternalURLState(this);\n if (url.cannotBeABaseURL) return;\n url.path = [];\n parseURL(url, pathname + '', PATH_START);\n }),\n // `URL.prototype.search` accessors pair\n // https://url.spec.whatwg.org/#dom-url-search\n search: accessorDescriptor(getSearch, function (search) {\n var url = getInternalURLState(this);\n search = String(search);\n if (search == '') {\n url.query = null;\n } else {\n if ('?' == search.charAt(0)) search = search.slice(1);\n url.query = '';\n parseURL(url, search, QUERY);\n }\n getInternalSearchParamsState(url.searchParams).updateSearchParams(url.query);\n }),\n // `URL.prototype.searchParams` getter\n // https://url.spec.whatwg.org/#dom-url-searchparams\n searchParams: accessorDescriptor(getSearchParams),\n // `URL.prototype.hash` accessors pair\n // https://url.spec.whatwg.org/#dom-url-hash\n hash: accessorDescriptor(getHash, function (hash) {\n var url = getInternalURLState(this);\n hash = String(hash);\n if (hash == '') {\n url.fragment = null;\n return;\n }\n if ('#' == hash.charAt(0)) hash = hash.slice(1);\n url.fragment = '';\n parseURL(url, hash, FRAGMENT);\n })\n });\n}\n\n// `URL.prototype.toJSON` method\n// https://url.spec.whatwg.org/#dom-url-tojson\nredefine(URLPrototype, 'toJSON', function toJSON() {\n return serializeURL.call(this);\n}, { enumerable: true });\n\n// `URL.prototype.toString` method\n// https://url.spec.whatwg.org/#URL-stringification-behavior\nredefine(URLPrototype, 'toString', function toString() {\n return serializeURL.call(this);\n}, { enumerable: true });\n\nif (NativeURL) {\n var nativeCreateObjectURL = NativeURL.createObjectURL;\n var nativeRevokeObjectURL = NativeURL.revokeObjectURL;\n // `URL.createObjectURL` method\n // https://developer.mozilla.org/en-US/docs/Web/API/URL/createObjectURL\n // eslint-disable-next-line no-unused-vars\n if (nativeCreateObjectURL) redefine(URLConstructor, 'createObjectURL', function createObjectURL(blob) {\n return nativeCreateObjectURL.apply(NativeURL, arguments);\n });\n // `URL.revokeObjectURL` method\n // https://developer.mozilla.org/en-US/docs/Web/API/URL/revokeObjectURL\n // eslint-disable-next-line no-unused-vars\n if (nativeRevokeObjectURL) redefine(URLConstructor, 'revokeObjectURL', function revokeObjectURL(url) {\n return nativeRevokeObjectURL.apply(NativeURL, arguments);\n });\n}\n\nsetToStringTag(URLConstructor, 'URL');\n\n$({ global: true, forced: !USE_NATIVE_URL, sham: !DESCRIPTORS }, {\n URL: URLConstructor\n});\n","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./incidencia.vue?vue&type=style&index=0&lang=css&\"","class ConstCategoriasIndex {\r\n QUIMICO = 1;\r\n PLASTICO = 2;\r\n\r\n vals = {\r\n 1: \"chemical\",\r\n 2: \"plastic\"\r\n };\r\n constructor(obj = {}) {\r\n Object.assign(this, obj);\r\n }\r\n getValue(tipo){\r\n return this.vals[tipo];\r\n }\r\n\r\n}\r\n\r\nmodule.exports = ConstCategoriasIndex;\r\n","/*!\n * Chart.js v2.9.4\n * https://www.chartjs.org\n * (c) 2020 Chart.js Contributors\n * Released under the MIT License\n */\n(function (global, factory) {\ntypeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(function() { try { return require('moment'); } catch(e) { } }()) :\ntypeof define === 'function' && define.amd ? define(['require'], function(require) { return factory(function() { try { return require('moment'); } catch(e) { } }()); }) :\n(global = global || self, global.Chart = factory(global.moment));\n}(this, (function (moment) { 'use strict';\n\nmoment = moment && moment.hasOwnProperty('default') ? moment['default'] : moment;\n\nfunction createCommonjsModule(fn, module) {\n\treturn module = { exports: {} }, fn(module, module.exports), module.exports;\n}\n\nfunction getCjsExportFromNamespace (n) {\n\treturn n && n['default'] || n;\n}\n\nvar colorName = {\r\n\t\"aliceblue\": [240, 248, 255],\r\n\t\"antiquewhite\": [250, 235, 215],\r\n\t\"aqua\": [0, 255, 255],\r\n\t\"aquamarine\": [127, 255, 212],\r\n\t\"azure\": [240, 255, 255],\r\n\t\"beige\": [245, 245, 220],\r\n\t\"bisque\": [255, 228, 196],\r\n\t\"black\": [0, 0, 0],\r\n\t\"blanchedalmond\": [255, 235, 205],\r\n\t\"blue\": [0, 0, 255],\r\n\t\"blueviolet\": [138, 43, 226],\r\n\t\"brown\": [165, 42, 42],\r\n\t\"burlywood\": [222, 184, 135],\r\n\t\"cadetblue\": [95, 158, 160],\r\n\t\"chartreuse\": [127, 255, 0],\r\n\t\"chocolate\": [210, 105, 30],\r\n\t\"coral\": [255, 127, 80],\r\n\t\"cornflowerblue\": [100, 149, 237],\r\n\t\"cornsilk\": [255, 248, 220],\r\n\t\"crimson\": [220, 20, 60],\r\n\t\"cyan\": [0, 255, 255],\r\n\t\"darkblue\": [0, 0, 139],\r\n\t\"darkcyan\": [0, 139, 139],\r\n\t\"darkgoldenrod\": [184, 134, 11],\r\n\t\"darkgray\": [169, 169, 169],\r\n\t\"darkgreen\": [0, 100, 0],\r\n\t\"darkgrey\": [169, 169, 169],\r\n\t\"darkkhaki\": [189, 183, 107],\r\n\t\"darkmagenta\": [139, 0, 139],\r\n\t\"darkolivegreen\": [85, 107, 47],\r\n\t\"darkorange\": [255, 140, 0],\r\n\t\"darkorchid\": [153, 50, 204],\r\n\t\"darkred\": [139, 0, 0],\r\n\t\"darksalmon\": [233, 150, 122],\r\n\t\"darkseagreen\": [143, 188, 143],\r\n\t\"darkslateblue\": [72, 61, 139],\r\n\t\"darkslategray\": [47, 79, 79],\r\n\t\"darkslategrey\": [47, 79, 79],\r\n\t\"darkturquoise\": [0, 206, 209],\r\n\t\"darkviolet\": [148, 0, 211],\r\n\t\"deeppink\": [255, 20, 147],\r\n\t\"deepskyblue\": [0, 191, 255],\r\n\t\"dimgray\": [105, 105, 105],\r\n\t\"dimgrey\": [105, 105, 105],\r\n\t\"dodgerblue\": [30, 144, 255],\r\n\t\"firebrick\": [178, 34, 34],\r\n\t\"floralwhite\": [255, 250, 240],\r\n\t\"forestgreen\": [34, 139, 34],\r\n\t\"fuchsia\": [255, 0, 255],\r\n\t\"gainsboro\": [220, 220, 220],\r\n\t\"ghostwhite\": [248, 248, 255],\r\n\t\"gold\": [255, 215, 0],\r\n\t\"goldenrod\": [218, 165, 32],\r\n\t\"gray\": [128, 128, 128],\r\n\t\"green\": [0, 128, 0],\r\n\t\"greenyellow\": [173, 255, 47],\r\n\t\"grey\": [128, 128, 128],\r\n\t\"honeydew\": [240, 255, 240],\r\n\t\"hotpink\": [255, 105, 180],\r\n\t\"indianred\": [205, 92, 92],\r\n\t\"indigo\": [75, 0, 130],\r\n\t\"ivory\": [255, 255, 240],\r\n\t\"khaki\": [240, 230, 140],\r\n\t\"lavender\": [230, 230, 250],\r\n\t\"lavenderblush\": [255, 240, 245],\r\n\t\"lawngreen\": [124, 252, 0],\r\n\t\"lemonchiffon\": [255, 250, 205],\r\n\t\"lightblue\": [173, 216, 230],\r\n\t\"lightcoral\": [240, 128, 128],\r\n\t\"lightcyan\": [224, 255, 255],\r\n\t\"lightgoldenrodyellow\": [250, 250, 210],\r\n\t\"lightgray\": [211, 211, 211],\r\n\t\"lightgreen\": [144, 238, 144],\r\n\t\"lightgrey\": [211, 211, 211],\r\n\t\"lightpink\": [255, 182, 193],\r\n\t\"lightsalmon\": [255, 160, 122],\r\n\t\"lightseagreen\": [32, 178, 170],\r\n\t\"lightskyblue\": [135, 206, 250],\r\n\t\"lightslategray\": [119, 136, 153],\r\n\t\"lightslategrey\": [119, 136, 153],\r\n\t\"lightsteelblue\": [176, 196, 222],\r\n\t\"lightyellow\": [255, 255, 224],\r\n\t\"lime\": [0, 255, 0],\r\n\t\"limegreen\": [50, 205, 50],\r\n\t\"linen\": [250, 240, 230],\r\n\t\"magenta\": [255, 0, 255],\r\n\t\"maroon\": [128, 0, 0],\r\n\t\"mediumaquamarine\": [102, 205, 170],\r\n\t\"mediumblue\": [0, 0, 205],\r\n\t\"mediumorchid\": [186, 85, 211],\r\n\t\"mediumpurple\": [147, 112, 219],\r\n\t\"mediumseagreen\": [60, 179, 113],\r\n\t\"mediumslateblue\": [123, 104, 238],\r\n\t\"mediumspringgreen\": [0, 250, 154],\r\n\t\"mediumturquoise\": [72, 209, 204],\r\n\t\"mediumvioletred\": [199, 21, 133],\r\n\t\"midnightblue\": [25, 25, 112],\r\n\t\"mintcream\": [245, 255, 250],\r\n\t\"mistyrose\": [255, 228, 225],\r\n\t\"moccasin\": [255, 228, 181],\r\n\t\"navajowhite\": [255, 222, 173],\r\n\t\"navy\": [0, 0, 128],\r\n\t\"oldlace\": [253, 245, 230],\r\n\t\"olive\": [128, 128, 0],\r\n\t\"olivedrab\": [107, 142, 35],\r\n\t\"orange\": [255, 165, 0],\r\n\t\"orangered\": [255, 69, 0],\r\n\t\"orchid\": [218, 112, 214],\r\n\t\"palegoldenrod\": [238, 232, 170],\r\n\t\"palegreen\": [152, 251, 152],\r\n\t\"paleturquoise\": [175, 238, 238],\r\n\t\"palevioletred\": [219, 112, 147],\r\n\t\"papayawhip\": [255, 239, 213],\r\n\t\"peachpuff\": [255, 218, 185],\r\n\t\"peru\": [205, 133, 63],\r\n\t\"pink\": [255, 192, 203],\r\n\t\"plum\": [221, 160, 221],\r\n\t\"powderblue\": [176, 224, 230],\r\n\t\"purple\": [128, 0, 128],\r\n\t\"rebeccapurple\": [102, 51, 153],\r\n\t\"red\": [255, 0, 0],\r\n\t\"rosybrown\": [188, 143, 143],\r\n\t\"royalblue\": [65, 105, 225],\r\n\t\"saddlebrown\": [139, 69, 19],\r\n\t\"salmon\": [250, 128, 114],\r\n\t\"sandybrown\": [244, 164, 96],\r\n\t\"seagreen\": [46, 139, 87],\r\n\t\"seashell\": [255, 245, 238],\r\n\t\"sienna\": [160, 82, 45],\r\n\t\"silver\": [192, 192, 192],\r\n\t\"skyblue\": [135, 206, 235],\r\n\t\"slateblue\": [106, 90, 205],\r\n\t\"slategray\": [112, 128, 144],\r\n\t\"slategrey\": [112, 128, 144],\r\n\t\"snow\": [255, 250, 250],\r\n\t\"springgreen\": [0, 255, 127],\r\n\t\"steelblue\": [70, 130, 180],\r\n\t\"tan\": [210, 180, 140],\r\n\t\"teal\": [0, 128, 128],\r\n\t\"thistle\": [216, 191, 216],\r\n\t\"tomato\": [255, 99, 71],\r\n\t\"turquoise\": [64, 224, 208],\r\n\t\"violet\": [238, 130, 238],\r\n\t\"wheat\": [245, 222, 179],\r\n\t\"white\": [255, 255, 255],\r\n\t\"whitesmoke\": [245, 245, 245],\r\n\t\"yellow\": [255, 255, 0],\r\n\t\"yellowgreen\": [154, 205, 50]\r\n};\n\nvar conversions = createCommonjsModule(function (module) {\n/* MIT license */\n\n\n// NOTE: conversions should only return primitive values (i.e. arrays, or\n// values that give correct `typeof` results).\n// do not use box values types (i.e. Number(), String(), etc.)\n\nvar reverseKeywords = {};\nfor (var key in colorName) {\n\tif (colorName.hasOwnProperty(key)) {\n\t\treverseKeywords[colorName[key]] = key;\n\t}\n}\n\nvar convert = module.exports = {\n\trgb: {channels: 3, labels: 'rgb'},\n\thsl: {channels: 3, labels: 'hsl'},\n\thsv: {channels: 3, labels: 'hsv'},\n\thwb: {channels: 3, labels: 'hwb'},\n\tcmyk: {channels: 4, labels: 'cmyk'},\n\txyz: {channels: 3, labels: 'xyz'},\n\tlab: {channels: 3, labels: 'lab'},\n\tlch: {channels: 3, labels: 'lch'},\n\thex: {channels: 1, labels: ['hex']},\n\tkeyword: {channels: 1, labels: ['keyword']},\n\tansi16: {channels: 1, labels: ['ansi16']},\n\tansi256: {channels: 1, labels: ['ansi256']},\n\thcg: {channels: 3, labels: ['h', 'c', 'g']},\n\tapple: {channels: 3, labels: ['r16', 'g16', 'b16']},\n\tgray: {channels: 1, labels: ['gray']}\n};\n\n// hide .channels and .labels properties\nfor (var model in convert) {\n\tif (convert.hasOwnProperty(model)) {\n\t\tif (!('channels' in convert[model])) {\n\t\t\tthrow new Error('missing channels property: ' + model);\n\t\t}\n\n\t\tif (!('labels' in convert[model])) {\n\t\t\tthrow new Error('missing channel labels property: ' + model);\n\t\t}\n\n\t\tif (convert[model].labels.length !== convert[model].channels) {\n\t\t\tthrow new Error('channel and label counts mismatch: ' + model);\n\t\t}\n\n\t\tvar channels = convert[model].channels;\n\t\tvar labels = convert[model].labels;\n\t\tdelete convert[model].channels;\n\t\tdelete convert[model].labels;\n\t\tObject.defineProperty(convert[model], 'channels', {value: channels});\n\t\tObject.defineProperty(convert[model], 'labels', {value: labels});\n\t}\n}\n\nconvert.rgb.hsl = function (rgb) {\n\tvar r = rgb[0] / 255;\n\tvar g = rgb[1] / 255;\n\tvar b = rgb[2] / 255;\n\tvar min = Math.min(r, g, b);\n\tvar max = Math.max(r, g, b);\n\tvar delta = max - min;\n\tvar h;\n\tvar s;\n\tvar l;\n\n\tif (max === min) {\n\t\th = 0;\n\t} else if (r === max) {\n\t\th = (g - b) / delta;\n\t} else if (g === max) {\n\t\th = 2 + (b - r) / delta;\n\t} else if (b === max) {\n\t\th = 4 + (r - g) / delta;\n\t}\n\n\th = Math.min(h * 60, 360);\n\n\tif (h < 0) {\n\t\th += 360;\n\t}\n\n\tl = (min + max) / 2;\n\n\tif (max === min) {\n\t\ts = 0;\n\t} else if (l <= 0.5) {\n\t\ts = delta / (max + min);\n\t} else {\n\t\ts = delta / (2 - max - min);\n\t}\n\n\treturn [h, s * 100, l * 100];\n};\n\nconvert.rgb.hsv = function (rgb) {\n\tvar rdif;\n\tvar gdif;\n\tvar bdif;\n\tvar h;\n\tvar s;\n\n\tvar r = rgb[0] / 255;\n\tvar g = rgb[1] / 255;\n\tvar b = rgb[2] / 255;\n\tvar v = Math.max(r, g, b);\n\tvar diff = v - Math.min(r, g, b);\n\tvar diffc = function (c) {\n\t\treturn (v - c) / 6 / diff + 1 / 2;\n\t};\n\n\tif (diff === 0) {\n\t\th = s = 0;\n\t} else {\n\t\ts = diff / v;\n\t\trdif = diffc(r);\n\t\tgdif = diffc(g);\n\t\tbdif = diffc(b);\n\n\t\tif (r === v) {\n\t\t\th = bdif - gdif;\n\t\t} else if (g === v) {\n\t\t\th = (1 / 3) + rdif - bdif;\n\t\t} else if (b === v) {\n\t\t\th = (2 / 3) + gdif - rdif;\n\t\t}\n\t\tif (h < 0) {\n\t\t\th += 1;\n\t\t} else if (h > 1) {\n\t\t\th -= 1;\n\t\t}\n\t}\n\n\treturn [\n\t\th * 360,\n\t\ts * 100,\n\t\tv * 100\n\t];\n};\n\nconvert.rgb.hwb = function (rgb) {\n\tvar r = rgb[0];\n\tvar g = rgb[1];\n\tvar b = rgb[2];\n\tvar h = convert.rgb.hsl(rgb)[0];\n\tvar w = 1 / 255 * Math.min(r, Math.min(g, b));\n\n\tb = 1 - 1 / 255 * Math.max(r, Math.max(g, b));\n\n\treturn [h, w * 100, b * 100];\n};\n\nconvert.rgb.cmyk = function (rgb) {\n\tvar r = rgb[0] / 255;\n\tvar g = rgb[1] / 255;\n\tvar b = rgb[2] / 255;\n\tvar c;\n\tvar m;\n\tvar y;\n\tvar k;\n\n\tk = Math.min(1 - r, 1 - g, 1 - b);\n\tc = (1 - r - k) / (1 - k) || 0;\n\tm = (1 - g - k) / (1 - k) || 0;\n\ty = (1 - b - k) / (1 - k) || 0;\n\n\treturn [c * 100, m * 100, y * 100, k * 100];\n};\n\n/**\n * See https://en.m.wikipedia.org/wiki/Euclidean_distance#Squared_Euclidean_distance\n * */\nfunction comparativeDistance(x, y) {\n\treturn (\n\t\tMath.pow(x[0] - y[0], 2) +\n\t\tMath.pow(x[1] - y[1], 2) +\n\t\tMath.pow(x[2] - y[2], 2)\n\t);\n}\n\nconvert.rgb.keyword = function (rgb) {\n\tvar reversed = reverseKeywords[rgb];\n\tif (reversed) {\n\t\treturn reversed;\n\t}\n\n\tvar currentClosestDistance = Infinity;\n\tvar currentClosestKeyword;\n\n\tfor (var keyword in colorName) {\n\t\tif (colorName.hasOwnProperty(keyword)) {\n\t\t\tvar value = colorName[keyword];\n\n\t\t\t// Compute comparative distance\n\t\t\tvar distance = comparativeDistance(rgb, value);\n\n\t\t\t// Check if its less, if so set as closest\n\t\t\tif (distance < currentClosestDistance) {\n\t\t\t\tcurrentClosestDistance = distance;\n\t\t\t\tcurrentClosestKeyword = keyword;\n\t\t\t}\n\t\t}\n\t}\n\n\treturn currentClosestKeyword;\n};\n\nconvert.keyword.rgb = function (keyword) {\n\treturn colorName[keyword];\n};\n\nconvert.rgb.xyz = function (rgb) {\n\tvar r = rgb[0] / 255;\n\tvar g = rgb[1] / 255;\n\tvar b = rgb[2] / 255;\n\n\t// assume sRGB\n\tr = r > 0.04045 ? Math.pow(((r + 0.055) / 1.055), 2.4) : (r / 12.92);\n\tg = g > 0.04045 ? Math.pow(((g + 0.055) / 1.055), 2.4) : (g / 12.92);\n\tb = b > 0.04045 ? Math.pow(((b + 0.055) / 1.055), 2.4) : (b / 12.92);\n\n\tvar x = (r * 0.4124) + (g * 0.3576) + (b * 0.1805);\n\tvar y = (r * 0.2126) + (g * 0.7152) + (b * 0.0722);\n\tvar z = (r * 0.0193) + (g * 0.1192) + (b * 0.9505);\n\n\treturn [x * 100, y * 100, z * 100];\n};\n\nconvert.rgb.lab = function (rgb) {\n\tvar xyz = convert.rgb.xyz(rgb);\n\tvar x = xyz[0];\n\tvar y = xyz[1];\n\tvar z = xyz[2];\n\tvar l;\n\tvar a;\n\tvar b;\n\n\tx /= 95.047;\n\ty /= 100;\n\tz /= 108.883;\n\n\tx = x > 0.008856 ? Math.pow(x, 1 / 3) : (7.787 * x) + (16 / 116);\n\ty = y > 0.008856 ? Math.pow(y, 1 / 3) : (7.787 * y) + (16 / 116);\n\tz = z > 0.008856 ? Math.pow(z, 1 / 3) : (7.787 * z) + (16 / 116);\n\n\tl = (116 * y) - 16;\n\ta = 500 * (x - y);\n\tb = 200 * (y - z);\n\n\treturn [l, a, b];\n};\n\nconvert.hsl.rgb = function (hsl) {\n\tvar h = hsl[0] / 360;\n\tvar s = hsl[1] / 100;\n\tvar l = hsl[2] / 100;\n\tvar t1;\n\tvar t2;\n\tvar t3;\n\tvar rgb;\n\tvar val;\n\n\tif (s === 0) {\n\t\tval = l * 255;\n\t\treturn [val, val, val];\n\t}\n\n\tif (l < 0.5) {\n\t\tt2 = l * (1 + s);\n\t} else {\n\t\tt2 = l + s - l * s;\n\t}\n\n\tt1 = 2 * l - t2;\n\n\trgb = [0, 0, 0];\n\tfor (var i = 0; i < 3; i++) {\n\t\tt3 = h + 1 / 3 * -(i - 1);\n\t\tif (t3 < 0) {\n\t\t\tt3++;\n\t\t}\n\t\tif (t3 > 1) {\n\t\t\tt3--;\n\t\t}\n\n\t\tif (6 * t3 < 1) {\n\t\t\tval = t1 + (t2 - t1) * 6 * t3;\n\t\t} else if (2 * t3 < 1) {\n\t\t\tval = t2;\n\t\t} else if (3 * t3 < 2) {\n\t\t\tval = t1 + (t2 - t1) * (2 / 3 - t3) * 6;\n\t\t} else {\n\t\t\tval = t1;\n\t\t}\n\n\t\trgb[i] = val * 255;\n\t}\n\n\treturn rgb;\n};\n\nconvert.hsl.hsv = function (hsl) {\n\tvar h = hsl[0];\n\tvar s = hsl[1] / 100;\n\tvar l = hsl[2] / 100;\n\tvar smin = s;\n\tvar lmin = Math.max(l, 0.01);\n\tvar sv;\n\tvar v;\n\n\tl *= 2;\n\ts *= (l <= 1) ? l : 2 - l;\n\tsmin *= lmin <= 1 ? lmin : 2 - lmin;\n\tv = (l + s) / 2;\n\tsv = l === 0 ? (2 * smin) / (lmin + smin) : (2 * s) / (l + s);\n\n\treturn [h, sv * 100, v * 100];\n};\n\nconvert.hsv.rgb = function (hsv) {\n\tvar h = hsv[0] / 60;\n\tvar s = hsv[1] / 100;\n\tvar v = hsv[2] / 100;\n\tvar hi = Math.floor(h) % 6;\n\n\tvar f = h - Math.floor(h);\n\tvar p = 255 * v * (1 - s);\n\tvar q = 255 * v * (1 - (s * f));\n\tvar t = 255 * v * (1 - (s * (1 - f)));\n\tv *= 255;\n\n\tswitch (hi) {\n\t\tcase 0:\n\t\t\treturn [v, t, p];\n\t\tcase 1:\n\t\t\treturn [q, v, p];\n\t\tcase 2:\n\t\t\treturn [p, v, t];\n\t\tcase 3:\n\t\t\treturn [p, q, v];\n\t\tcase 4:\n\t\t\treturn [t, p, v];\n\t\tcase 5:\n\t\t\treturn [v, p, q];\n\t}\n};\n\nconvert.hsv.hsl = function (hsv) {\n\tvar h = hsv[0];\n\tvar s = hsv[1] / 100;\n\tvar v = hsv[2] / 100;\n\tvar vmin = Math.max(v, 0.01);\n\tvar lmin;\n\tvar sl;\n\tvar l;\n\n\tl = (2 - s) * v;\n\tlmin = (2 - s) * vmin;\n\tsl = s * vmin;\n\tsl /= (lmin <= 1) ? lmin : 2 - lmin;\n\tsl = sl || 0;\n\tl /= 2;\n\n\treturn [h, sl * 100, l * 100];\n};\n\n// http://dev.w3.org/csswg/css-color/#hwb-to-rgb\nconvert.hwb.rgb = function (hwb) {\n\tvar h = hwb[0] / 360;\n\tvar wh = hwb[1] / 100;\n\tvar bl = hwb[2] / 100;\n\tvar ratio = wh + bl;\n\tvar i;\n\tvar v;\n\tvar f;\n\tvar n;\n\n\t// wh + bl cant be > 1\n\tif (ratio > 1) {\n\t\twh /= ratio;\n\t\tbl /= ratio;\n\t}\n\n\ti = Math.floor(6 * h);\n\tv = 1 - bl;\n\tf = 6 * h - i;\n\n\tif ((i & 0x01) !== 0) {\n\t\tf = 1 - f;\n\t}\n\n\tn = wh + f * (v - wh); // linear interpolation\n\n\tvar r;\n\tvar g;\n\tvar b;\n\tswitch (i) {\n\t\tdefault:\n\t\tcase 6:\n\t\tcase 0: r = v; g = n; b = wh; break;\n\t\tcase 1: r = n; g = v; b = wh; break;\n\t\tcase 2: r = wh; g = v; b = n; break;\n\t\tcase 3: r = wh; g = n; b = v; break;\n\t\tcase 4: r = n; g = wh; b = v; break;\n\t\tcase 5: r = v; g = wh; b = n; break;\n\t}\n\n\treturn [r * 255, g * 255, b * 255];\n};\n\nconvert.cmyk.rgb = function (cmyk) {\n\tvar c = cmyk[0] / 100;\n\tvar m = cmyk[1] / 100;\n\tvar y = cmyk[2] / 100;\n\tvar k = cmyk[3] / 100;\n\tvar r;\n\tvar g;\n\tvar b;\n\n\tr = 1 - Math.min(1, c * (1 - k) + k);\n\tg = 1 - Math.min(1, m * (1 - k) + k);\n\tb = 1 - Math.min(1, y * (1 - k) + k);\n\n\treturn [r * 255, g * 255, b * 255];\n};\n\nconvert.xyz.rgb = function (xyz) {\n\tvar x = xyz[0] / 100;\n\tvar y = xyz[1] / 100;\n\tvar z = xyz[2] / 100;\n\tvar r;\n\tvar g;\n\tvar b;\n\n\tr = (x * 3.2406) + (y * -1.5372) + (z * -0.4986);\n\tg = (x * -0.9689) + (y * 1.8758) + (z * 0.0415);\n\tb = (x * 0.0557) + (y * -0.2040) + (z * 1.0570);\n\n\t// assume sRGB\n\tr = r > 0.0031308\n\t\t? ((1.055 * Math.pow(r, 1.0 / 2.4)) - 0.055)\n\t\t: r * 12.92;\n\n\tg = g > 0.0031308\n\t\t? ((1.055 * Math.pow(g, 1.0 / 2.4)) - 0.055)\n\t\t: g * 12.92;\n\n\tb = b > 0.0031308\n\t\t? ((1.055 * Math.pow(b, 1.0 / 2.4)) - 0.055)\n\t\t: b * 12.92;\n\n\tr = Math.min(Math.max(0, r), 1);\n\tg = Math.min(Math.max(0, g), 1);\n\tb = Math.min(Math.max(0, b), 1);\n\n\treturn [r * 255, g * 255, b * 255];\n};\n\nconvert.xyz.lab = function (xyz) {\n\tvar x = xyz[0];\n\tvar y = xyz[1];\n\tvar z = xyz[2];\n\tvar l;\n\tvar a;\n\tvar b;\n\n\tx /= 95.047;\n\ty /= 100;\n\tz /= 108.883;\n\n\tx = x > 0.008856 ? Math.pow(x, 1 / 3) : (7.787 * x) + (16 / 116);\n\ty = y > 0.008856 ? Math.pow(y, 1 / 3) : (7.787 * y) + (16 / 116);\n\tz = z > 0.008856 ? Math.pow(z, 1 / 3) : (7.787 * z) + (16 / 116);\n\n\tl = (116 * y) - 16;\n\ta = 500 * (x - y);\n\tb = 200 * (y - z);\n\n\treturn [l, a, b];\n};\n\nconvert.lab.xyz = function (lab) {\n\tvar l = lab[0];\n\tvar a = lab[1];\n\tvar b = lab[2];\n\tvar x;\n\tvar y;\n\tvar z;\n\n\ty = (l + 16) / 116;\n\tx = a / 500 + y;\n\tz = y - b / 200;\n\n\tvar y2 = Math.pow(y, 3);\n\tvar x2 = Math.pow(x, 3);\n\tvar z2 = Math.pow(z, 3);\n\ty = y2 > 0.008856 ? y2 : (y - 16 / 116) / 7.787;\n\tx = x2 > 0.008856 ? x2 : (x - 16 / 116) / 7.787;\n\tz = z2 > 0.008856 ? z2 : (z - 16 / 116) / 7.787;\n\n\tx *= 95.047;\n\ty *= 100;\n\tz *= 108.883;\n\n\treturn [x, y, z];\n};\n\nconvert.lab.lch = function (lab) {\n\tvar l = lab[0];\n\tvar a = lab[1];\n\tvar b = lab[2];\n\tvar hr;\n\tvar h;\n\tvar c;\n\n\thr = Math.atan2(b, a);\n\th = hr * 360 / 2 / Math.PI;\n\n\tif (h < 0) {\n\t\th += 360;\n\t}\n\n\tc = Math.sqrt(a * a + b * b);\n\n\treturn [l, c, h];\n};\n\nconvert.lch.lab = function (lch) {\n\tvar l = lch[0];\n\tvar c = lch[1];\n\tvar h = lch[2];\n\tvar a;\n\tvar b;\n\tvar hr;\n\n\thr = h / 360 * 2 * Math.PI;\n\ta = c * Math.cos(hr);\n\tb = c * Math.sin(hr);\n\n\treturn [l, a, b];\n};\n\nconvert.rgb.ansi16 = function (args) {\n\tvar r = args[0];\n\tvar g = args[1];\n\tvar b = args[2];\n\tvar value = 1 in arguments ? arguments[1] : convert.rgb.hsv(args)[2]; // hsv -> ansi16 optimization\n\n\tvalue = Math.round(value / 50);\n\n\tif (value === 0) {\n\t\treturn 30;\n\t}\n\n\tvar ansi = 30\n\t\t+ ((Math.round(b / 255) << 2)\n\t\t| (Math.round(g / 255) << 1)\n\t\t| Math.round(r / 255));\n\n\tif (value === 2) {\n\t\tansi += 60;\n\t}\n\n\treturn ansi;\n};\n\nconvert.hsv.ansi16 = function (args) {\n\t// optimization here; we already know the value and don't need to get\n\t// it converted for us.\n\treturn convert.rgb.ansi16(convert.hsv.rgb(args), args[2]);\n};\n\nconvert.rgb.ansi256 = function (args) {\n\tvar r = args[0];\n\tvar g = args[1];\n\tvar b = args[2];\n\n\t// we use the extended greyscale palette here, with the exception of\n\t// black and white. normal palette only has 4 greyscale shades.\n\tif (r === g && g === b) {\n\t\tif (r < 8) {\n\t\t\treturn 16;\n\t\t}\n\n\t\tif (r > 248) {\n\t\t\treturn 231;\n\t\t}\n\n\t\treturn Math.round(((r - 8) / 247) * 24) + 232;\n\t}\n\n\tvar ansi = 16\n\t\t+ (36 * Math.round(r / 255 * 5))\n\t\t+ (6 * Math.round(g / 255 * 5))\n\t\t+ Math.round(b / 255 * 5);\n\n\treturn ansi;\n};\n\nconvert.ansi16.rgb = function (args) {\n\tvar color = args % 10;\n\n\t// handle greyscale\n\tif (color === 0 || color === 7) {\n\t\tif (args > 50) {\n\t\t\tcolor += 3.5;\n\t\t}\n\n\t\tcolor = color / 10.5 * 255;\n\n\t\treturn [color, color, color];\n\t}\n\n\tvar mult = (~~(args > 50) + 1) * 0.5;\n\tvar r = ((color & 1) * mult) * 255;\n\tvar g = (((color >> 1) & 1) * mult) * 255;\n\tvar b = (((color >> 2) & 1) * mult) * 255;\n\n\treturn [r, g, b];\n};\n\nconvert.ansi256.rgb = function (args) {\n\t// handle greyscale\n\tif (args >= 232) {\n\t\tvar c = (args - 232) * 10 + 8;\n\t\treturn [c, c, c];\n\t}\n\n\targs -= 16;\n\n\tvar rem;\n\tvar r = Math.floor(args / 36) / 5 * 255;\n\tvar g = Math.floor((rem = args % 36) / 6) / 5 * 255;\n\tvar b = (rem % 6) / 5 * 255;\n\n\treturn [r, g, b];\n};\n\nconvert.rgb.hex = function (args) {\n\tvar integer = ((Math.round(args[0]) & 0xFF) << 16)\n\t\t+ ((Math.round(args[1]) & 0xFF) << 8)\n\t\t+ (Math.round(args[2]) & 0xFF);\n\n\tvar string = integer.toString(16).toUpperCase();\n\treturn '000000'.substring(string.length) + string;\n};\n\nconvert.hex.rgb = function (args) {\n\tvar match = args.toString(16).match(/[a-f0-9]{6}|[a-f0-9]{3}/i);\n\tif (!match) {\n\t\treturn [0, 0, 0];\n\t}\n\n\tvar colorString = match[0];\n\n\tif (match[0].length === 3) {\n\t\tcolorString = colorString.split('').map(function (char) {\n\t\t\treturn char + char;\n\t\t}).join('');\n\t}\n\n\tvar integer = parseInt(colorString, 16);\n\tvar r = (integer >> 16) & 0xFF;\n\tvar g = (integer >> 8) & 0xFF;\n\tvar b = integer & 0xFF;\n\n\treturn [r, g, b];\n};\n\nconvert.rgb.hcg = function (rgb) {\n\tvar r = rgb[0] / 255;\n\tvar g = rgb[1] / 255;\n\tvar b = rgb[2] / 255;\n\tvar max = Math.max(Math.max(r, g), b);\n\tvar min = Math.min(Math.min(r, g), b);\n\tvar chroma = (max - min);\n\tvar grayscale;\n\tvar hue;\n\n\tif (chroma < 1) {\n\t\tgrayscale = min / (1 - chroma);\n\t} else {\n\t\tgrayscale = 0;\n\t}\n\n\tif (chroma <= 0) {\n\t\thue = 0;\n\t} else\n\tif (max === r) {\n\t\thue = ((g - b) / chroma) % 6;\n\t} else\n\tif (max === g) {\n\t\thue = 2 + (b - r) / chroma;\n\t} else {\n\t\thue = 4 + (r - g) / chroma + 4;\n\t}\n\n\thue /= 6;\n\thue %= 1;\n\n\treturn [hue * 360, chroma * 100, grayscale * 100];\n};\n\nconvert.hsl.hcg = function (hsl) {\n\tvar s = hsl[1] / 100;\n\tvar l = hsl[2] / 100;\n\tvar c = 1;\n\tvar f = 0;\n\n\tif (l < 0.5) {\n\t\tc = 2.0 * s * l;\n\t} else {\n\t\tc = 2.0 * s * (1.0 - l);\n\t}\n\n\tif (c < 1.0) {\n\t\tf = (l - 0.5 * c) / (1.0 - c);\n\t}\n\n\treturn [hsl[0], c * 100, f * 100];\n};\n\nconvert.hsv.hcg = function (hsv) {\n\tvar s = hsv[1] / 100;\n\tvar v = hsv[2] / 100;\n\n\tvar c = s * v;\n\tvar f = 0;\n\n\tif (c < 1.0) {\n\t\tf = (v - c) / (1 - c);\n\t}\n\n\treturn [hsv[0], c * 100, f * 100];\n};\n\nconvert.hcg.rgb = function (hcg) {\n\tvar h = hcg[0] / 360;\n\tvar c = hcg[1] / 100;\n\tvar g = hcg[2] / 100;\n\n\tif (c === 0.0) {\n\t\treturn [g * 255, g * 255, g * 255];\n\t}\n\n\tvar pure = [0, 0, 0];\n\tvar hi = (h % 1) * 6;\n\tvar v = hi % 1;\n\tvar w = 1 - v;\n\tvar mg = 0;\n\n\tswitch (Math.floor(hi)) {\n\t\tcase 0:\n\t\t\tpure[0] = 1; pure[1] = v; pure[2] = 0; break;\n\t\tcase 1:\n\t\t\tpure[0] = w; pure[1] = 1; pure[2] = 0; break;\n\t\tcase 2:\n\t\t\tpure[0] = 0; pure[1] = 1; pure[2] = v; break;\n\t\tcase 3:\n\t\t\tpure[0] = 0; pure[1] = w; pure[2] = 1; break;\n\t\tcase 4:\n\t\t\tpure[0] = v; pure[1] = 0; pure[2] = 1; break;\n\t\tdefault:\n\t\t\tpure[0] = 1; pure[1] = 0; pure[2] = w;\n\t}\n\n\tmg = (1.0 - c) * g;\n\n\treturn [\n\t\t(c * pure[0] + mg) * 255,\n\t\t(c * pure[1] + mg) * 255,\n\t\t(c * pure[2] + mg) * 255\n\t];\n};\n\nconvert.hcg.hsv = function (hcg) {\n\tvar c = hcg[1] / 100;\n\tvar g = hcg[2] / 100;\n\n\tvar v = c + g * (1.0 - c);\n\tvar f = 0;\n\n\tif (v > 0.0) {\n\t\tf = c / v;\n\t}\n\n\treturn [hcg[0], f * 100, v * 100];\n};\n\nconvert.hcg.hsl = function (hcg) {\n\tvar c = hcg[1] / 100;\n\tvar g = hcg[2] / 100;\n\n\tvar l = g * (1.0 - c) + 0.5 * c;\n\tvar s = 0;\n\n\tif (l > 0.0 && l < 0.5) {\n\t\ts = c / (2 * l);\n\t} else\n\tif (l >= 0.5 && l < 1.0) {\n\t\ts = c / (2 * (1 - l));\n\t}\n\n\treturn [hcg[0], s * 100, l * 100];\n};\n\nconvert.hcg.hwb = function (hcg) {\n\tvar c = hcg[1] / 100;\n\tvar g = hcg[2] / 100;\n\tvar v = c + g * (1.0 - c);\n\treturn [hcg[0], (v - c) * 100, (1 - v) * 100];\n};\n\nconvert.hwb.hcg = function (hwb) {\n\tvar w = hwb[1] / 100;\n\tvar b = hwb[2] / 100;\n\tvar v = 1 - b;\n\tvar c = v - w;\n\tvar g = 0;\n\n\tif (c < 1) {\n\t\tg = (v - c) / (1 - c);\n\t}\n\n\treturn [hwb[0], c * 100, g * 100];\n};\n\nconvert.apple.rgb = function (apple) {\n\treturn [(apple[0] / 65535) * 255, (apple[1] / 65535) * 255, (apple[2] / 65535) * 255];\n};\n\nconvert.rgb.apple = function (rgb) {\n\treturn [(rgb[0] / 255) * 65535, (rgb[1] / 255) * 65535, (rgb[2] / 255) * 65535];\n};\n\nconvert.gray.rgb = function (args) {\n\treturn [args[0] / 100 * 255, args[0] / 100 * 255, args[0] / 100 * 255];\n};\n\nconvert.gray.hsl = convert.gray.hsv = function (args) {\n\treturn [0, 0, args[0]];\n};\n\nconvert.gray.hwb = function (gray) {\n\treturn [0, 100, gray[0]];\n};\n\nconvert.gray.cmyk = function (gray) {\n\treturn [0, 0, 0, gray[0]];\n};\n\nconvert.gray.lab = function (gray) {\n\treturn [gray[0], 0, 0];\n};\n\nconvert.gray.hex = function (gray) {\n\tvar val = Math.round(gray[0] / 100 * 255) & 0xFF;\n\tvar integer = (val << 16) + (val << 8) + val;\n\n\tvar string = integer.toString(16).toUpperCase();\n\treturn '000000'.substring(string.length) + string;\n};\n\nconvert.rgb.gray = function (rgb) {\n\tvar val = (rgb[0] + rgb[1] + rgb[2]) / 3;\n\treturn [val / 255 * 100];\n};\n});\nvar conversions_1 = conversions.rgb;\nvar conversions_2 = conversions.hsl;\nvar conversions_3 = conversions.hsv;\nvar conversions_4 = conversions.hwb;\nvar conversions_5 = conversions.cmyk;\nvar conversions_6 = conversions.xyz;\nvar conversions_7 = conversions.lab;\nvar conversions_8 = conversions.lch;\nvar conversions_9 = conversions.hex;\nvar conversions_10 = conversions.keyword;\nvar conversions_11 = conversions.ansi16;\nvar conversions_12 = conversions.ansi256;\nvar conversions_13 = conversions.hcg;\nvar conversions_14 = conversions.apple;\nvar conversions_15 = conversions.gray;\n\n/*\n\tthis function routes a model to all other models.\n\n\tall functions that are routed have a property `.conversion` attached\n\tto the returned synthetic function. This property is an array\n\tof strings, each with the steps in between the 'from' and 'to'\n\tcolor models (inclusive).\n\n\tconversions that are not possible simply are not included.\n*/\n\nfunction buildGraph() {\n\tvar graph = {};\n\t// https://jsperf.com/object-keys-vs-for-in-with-closure/3\n\tvar models = Object.keys(conversions);\n\n\tfor (var len = models.length, i = 0; i < len; i++) {\n\t\tgraph[models[i]] = {\n\t\t\t// http://jsperf.com/1-vs-infinity\n\t\t\t// micro-opt, but this is simple.\n\t\t\tdistance: -1,\n\t\t\tparent: null\n\t\t};\n\t}\n\n\treturn graph;\n}\n\n// https://en.wikipedia.org/wiki/Breadth-first_search\nfunction deriveBFS(fromModel) {\n\tvar graph = buildGraph();\n\tvar queue = [fromModel]; // unshift -> queue -> pop\n\n\tgraph[fromModel].distance = 0;\n\n\twhile (queue.length) {\n\t\tvar current = queue.pop();\n\t\tvar adjacents = Object.keys(conversions[current]);\n\n\t\tfor (var len = adjacents.length, i = 0; i < len; i++) {\n\t\t\tvar adjacent = adjacents[i];\n\t\t\tvar node = graph[adjacent];\n\n\t\t\tif (node.distance === -1) {\n\t\t\t\tnode.distance = graph[current].distance + 1;\n\t\t\t\tnode.parent = current;\n\t\t\t\tqueue.unshift(adjacent);\n\t\t\t}\n\t\t}\n\t}\n\n\treturn graph;\n}\n\nfunction link(from, to) {\n\treturn function (args) {\n\t\treturn to(from(args));\n\t};\n}\n\nfunction wrapConversion(toModel, graph) {\n\tvar path = [graph[toModel].parent, toModel];\n\tvar fn = conversions[graph[toModel].parent][toModel];\n\n\tvar cur = graph[toModel].parent;\n\twhile (graph[cur].parent) {\n\t\tpath.unshift(graph[cur].parent);\n\t\tfn = link(conversions[graph[cur].parent][cur], fn);\n\t\tcur = graph[cur].parent;\n\t}\n\n\tfn.conversion = path;\n\treturn fn;\n}\n\nvar route = function (fromModel) {\n\tvar graph = deriveBFS(fromModel);\n\tvar conversion = {};\n\n\tvar models = Object.keys(graph);\n\tfor (var len = models.length, i = 0; i < len; i++) {\n\t\tvar toModel = models[i];\n\t\tvar node = graph[toModel];\n\n\t\tif (node.parent === null) {\n\t\t\t// no possible conversion, or this node is the source model.\n\t\t\tcontinue;\n\t\t}\n\n\t\tconversion[toModel] = wrapConversion(toModel, graph);\n\t}\n\n\treturn conversion;\n};\n\nvar convert = {};\n\nvar models = Object.keys(conversions);\n\nfunction wrapRaw(fn) {\n\tvar wrappedFn = function (args) {\n\t\tif (args === undefined || args === null) {\n\t\t\treturn args;\n\t\t}\n\n\t\tif (arguments.length > 1) {\n\t\t\targs = Array.prototype.slice.call(arguments);\n\t\t}\n\n\t\treturn fn(args);\n\t};\n\n\t// preserve .conversion property if there is one\n\tif ('conversion' in fn) {\n\t\twrappedFn.conversion = fn.conversion;\n\t}\n\n\treturn wrappedFn;\n}\n\nfunction wrapRounded(fn) {\n\tvar wrappedFn = function (args) {\n\t\tif (args === undefined || args === null) {\n\t\t\treturn args;\n\t\t}\n\n\t\tif (arguments.length > 1) {\n\t\t\targs = Array.prototype.slice.call(arguments);\n\t\t}\n\n\t\tvar result = fn(args);\n\n\t\t// we're assuming the result is an array here.\n\t\t// see notice in conversions.js; don't use box types\n\t\t// in conversion functions.\n\t\tif (typeof result === 'object') {\n\t\t\tfor (var len = result.length, i = 0; i < len; i++) {\n\t\t\t\tresult[i] = Math.round(result[i]);\n\t\t\t}\n\t\t}\n\n\t\treturn result;\n\t};\n\n\t// preserve .conversion property if there is one\n\tif ('conversion' in fn) {\n\t\twrappedFn.conversion = fn.conversion;\n\t}\n\n\treturn wrappedFn;\n}\n\nmodels.forEach(function (fromModel) {\n\tconvert[fromModel] = {};\n\n\tObject.defineProperty(convert[fromModel], 'channels', {value: conversions[fromModel].channels});\n\tObject.defineProperty(convert[fromModel], 'labels', {value: conversions[fromModel].labels});\n\n\tvar routes = route(fromModel);\n\tvar routeModels = Object.keys(routes);\n\n\trouteModels.forEach(function (toModel) {\n\t\tvar fn = routes[toModel];\n\n\t\tconvert[fromModel][toModel] = wrapRounded(fn);\n\t\tconvert[fromModel][toModel].raw = wrapRaw(fn);\n\t});\n});\n\nvar colorConvert = convert;\n\nvar colorName$1 = {\r\n\t\"aliceblue\": [240, 248, 255],\r\n\t\"antiquewhite\": [250, 235, 215],\r\n\t\"aqua\": [0, 255, 255],\r\n\t\"aquamarine\": [127, 255, 212],\r\n\t\"azure\": [240, 255, 255],\r\n\t\"beige\": [245, 245, 220],\r\n\t\"bisque\": [255, 228, 196],\r\n\t\"black\": [0, 0, 0],\r\n\t\"blanchedalmond\": [255, 235, 205],\r\n\t\"blue\": [0, 0, 255],\r\n\t\"blueviolet\": [138, 43, 226],\r\n\t\"brown\": [165, 42, 42],\r\n\t\"burlywood\": [222, 184, 135],\r\n\t\"cadetblue\": [95, 158, 160],\r\n\t\"chartreuse\": [127, 255, 0],\r\n\t\"chocolate\": [210, 105, 30],\r\n\t\"coral\": [255, 127, 80],\r\n\t\"cornflowerblue\": [100, 149, 237],\r\n\t\"cornsilk\": [255, 248, 220],\r\n\t\"crimson\": [220, 20, 60],\r\n\t\"cyan\": [0, 255, 255],\r\n\t\"darkblue\": [0, 0, 139],\r\n\t\"darkcyan\": [0, 139, 139],\r\n\t\"darkgoldenrod\": [184, 134, 11],\r\n\t\"darkgray\": [169, 169, 169],\r\n\t\"darkgreen\": [0, 100, 0],\r\n\t\"darkgrey\": [169, 169, 169],\r\n\t\"darkkhaki\": [189, 183, 107],\r\n\t\"darkmagenta\": [139, 0, 139],\r\n\t\"darkolivegreen\": [85, 107, 47],\r\n\t\"darkorange\": [255, 140, 0],\r\n\t\"darkorchid\": [153, 50, 204],\r\n\t\"darkred\": [139, 0, 0],\r\n\t\"darksalmon\": [233, 150, 122],\r\n\t\"darkseagreen\": [143, 188, 143],\r\n\t\"darkslateblue\": [72, 61, 139],\r\n\t\"darkslategray\": [47, 79, 79],\r\n\t\"darkslategrey\": [47, 79, 79],\r\n\t\"darkturquoise\": [0, 206, 209],\r\n\t\"darkviolet\": [148, 0, 211],\r\n\t\"deeppink\": [255, 20, 147],\r\n\t\"deepskyblue\": [0, 191, 255],\r\n\t\"dimgray\": [105, 105, 105],\r\n\t\"dimgrey\": [105, 105, 105],\r\n\t\"dodgerblue\": [30, 144, 255],\r\n\t\"firebrick\": [178, 34, 34],\r\n\t\"floralwhite\": [255, 250, 240],\r\n\t\"forestgreen\": [34, 139, 34],\r\n\t\"fuchsia\": [255, 0, 255],\r\n\t\"gainsboro\": [220, 220, 220],\r\n\t\"ghostwhite\": [248, 248, 255],\r\n\t\"gold\": [255, 215, 0],\r\n\t\"goldenrod\": [218, 165, 32],\r\n\t\"gray\": [128, 128, 128],\r\n\t\"green\": [0, 128, 0],\r\n\t\"greenyellow\": [173, 255, 47],\r\n\t\"grey\": [128, 128, 128],\r\n\t\"honeydew\": [240, 255, 240],\r\n\t\"hotpink\": [255, 105, 180],\r\n\t\"indianred\": [205, 92, 92],\r\n\t\"indigo\": [75, 0, 130],\r\n\t\"ivory\": [255, 255, 240],\r\n\t\"khaki\": [240, 230, 140],\r\n\t\"lavender\": [230, 230, 250],\r\n\t\"lavenderblush\": [255, 240, 245],\r\n\t\"lawngreen\": [124, 252, 0],\r\n\t\"lemonchiffon\": [255, 250, 205],\r\n\t\"lightblue\": [173, 216, 230],\r\n\t\"lightcoral\": [240, 128, 128],\r\n\t\"lightcyan\": [224, 255, 255],\r\n\t\"lightgoldenrodyellow\": [250, 250, 210],\r\n\t\"lightgray\": [211, 211, 211],\r\n\t\"lightgreen\": [144, 238, 144],\r\n\t\"lightgrey\": [211, 211, 211],\r\n\t\"lightpink\": [255, 182, 193],\r\n\t\"lightsalmon\": [255, 160, 122],\r\n\t\"lightseagreen\": [32, 178, 170],\r\n\t\"lightskyblue\": [135, 206, 250],\r\n\t\"lightslategray\": [119, 136, 153],\r\n\t\"lightslategrey\": [119, 136, 153],\r\n\t\"lightsteelblue\": [176, 196, 222],\r\n\t\"lightyellow\": [255, 255, 224],\r\n\t\"lime\": [0, 255, 0],\r\n\t\"limegreen\": [50, 205, 50],\r\n\t\"linen\": [250, 240, 230],\r\n\t\"magenta\": [255, 0, 255],\r\n\t\"maroon\": [128, 0, 0],\r\n\t\"mediumaquamarine\": [102, 205, 170],\r\n\t\"mediumblue\": [0, 0, 205],\r\n\t\"mediumorchid\": [186, 85, 211],\r\n\t\"mediumpurple\": [147, 112, 219],\r\n\t\"mediumseagreen\": [60, 179, 113],\r\n\t\"mediumslateblue\": [123, 104, 238],\r\n\t\"mediumspringgreen\": [0, 250, 154],\r\n\t\"mediumturquoise\": [72, 209, 204],\r\n\t\"mediumvioletred\": [199, 21, 133],\r\n\t\"midnightblue\": [25, 25, 112],\r\n\t\"mintcream\": [245, 255, 250],\r\n\t\"mistyrose\": [255, 228, 225],\r\n\t\"moccasin\": [255, 228, 181],\r\n\t\"navajowhite\": [255, 222, 173],\r\n\t\"navy\": [0, 0, 128],\r\n\t\"oldlace\": [253, 245, 230],\r\n\t\"olive\": [128, 128, 0],\r\n\t\"olivedrab\": [107, 142, 35],\r\n\t\"orange\": [255, 165, 0],\r\n\t\"orangered\": [255, 69, 0],\r\n\t\"orchid\": [218, 112, 214],\r\n\t\"palegoldenrod\": [238, 232, 170],\r\n\t\"palegreen\": [152, 251, 152],\r\n\t\"paleturquoise\": [175, 238, 238],\r\n\t\"palevioletred\": [219, 112, 147],\r\n\t\"papayawhip\": [255, 239, 213],\r\n\t\"peachpuff\": [255, 218, 185],\r\n\t\"peru\": [205, 133, 63],\r\n\t\"pink\": [255, 192, 203],\r\n\t\"plum\": [221, 160, 221],\r\n\t\"powderblue\": [176, 224, 230],\r\n\t\"purple\": [128, 0, 128],\r\n\t\"rebeccapurple\": [102, 51, 153],\r\n\t\"red\": [255, 0, 0],\r\n\t\"rosybrown\": [188, 143, 143],\r\n\t\"royalblue\": [65, 105, 225],\r\n\t\"saddlebrown\": [139, 69, 19],\r\n\t\"salmon\": [250, 128, 114],\r\n\t\"sandybrown\": [244, 164, 96],\r\n\t\"seagreen\": [46, 139, 87],\r\n\t\"seashell\": [255, 245, 238],\r\n\t\"sienna\": [160, 82, 45],\r\n\t\"silver\": [192, 192, 192],\r\n\t\"skyblue\": [135, 206, 235],\r\n\t\"slateblue\": [106, 90, 205],\r\n\t\"slategray\": [112, 128, 144],\r\n\t\"slategrey\": [112, 128, 144],\r\n\t\"snow\": [255, 250, 250],\r\n\t\"springgreen\": [0, 255, 127],\r\n\t\"steelblue\": [70, 130, 180],\r\n\t\"tan\": [210, 180, 140],\r\n\t\"teal\": [0, 128, 128],\r\n\t\"thistle\": [216, 191, 216],\r\n\t\"tomato\": [255, 99, 71],\r\n\t\"turquoise\": [64, 224, 208],\r\n\t\"violet\": [238, 130, 238],\r\n\t\"wheat\": [245, 222, 179],\r\n\t\"white\": [255, 255, 255],\r\n\t\"whitesmoke\": [245, 245, 245],\r\n\t\"yellow\": [255, 255, 0],\r\n\t\"yellowgreen\": [154, 205, 50]\r\n};\n\n/* MIT license */\n\n\nvar colorString = {\n getRgba: getRgba,\n getHsla: getHsla,\n getRgb: getRgb,\n getHsl: getHsl,\n getHwb: getHwb,\n getAlpha: getAlpha,\n\n hexString: hexString,\n rgbString: rgbString,\n rgbaString: rgbaString,\n percentString: percentString,\n percentaString: percentaString,\n hslString: hslString,\n hslaString: hslaString,\n hwbString: hwbString,\n keyword: keyword\n};\n\nfunction getRgba(string) {\n if (!string) {\n return;\n }\n var abbr = /^#([a-fA-F0-9]{3,4})$/i,\n hex = /^#([a-fA-F0-9]{6}([a-fA-F0-9]{2})?)$/i,\n rgba = /^rgba?\\(\\s*([+-]?\\d+)\\s*,\\s*([+-]?\\d+)\\s*,\\s*([+-]?\\d+)\\s*(?:,\\s*([+-]?[\\d\\.]+)\\s*)?\\)$/i,\n per = /^rgba?\\(\\s*([+-]?[\\d\\.]+)\\%\\s*,\\s*([+-]?[\\d\\.]+)\\%\\s*,\\s*([+-]?[\\d\\.]+)\\%\\s*(?:,\\s*([+-]?[\\d\\.]+)\\s*)?\\)$/i,\n keyword = /(\\w+)/;\n\n var rgb = [0, 0, 0],\n a = 1,\n match = string.match(abbr),\n hexAlpha = \"\";\n if (match) {\n match = match[1];\n hexAlpha = match[3];\n for (var i = 0; i < rgb.length; i++) {\n rgb[i] = parseInt(match[i] + match[i], 16);\n }\n if (hexAlpha) {\n a = Math.round((parseInt(hexAlpha + hexAlpha, 16) / 255) * 100) / 100;\n }\n }\n else if (match = string.match(hex)) {\n hexAlpha = match[2];\n match = match[1];\n for (var i = 0; i < rgb.length; i++) {\n rgb[i] = parseInt(match.slice(i * 2, i * 2 + 2), 16);\n }\n if (hexAlpha) {\n a = Math.round((parseInt(hexAlpha, 16) / 255) * 100) / 100;\n }\n }\n else if (match = string.match(rgba)) {\n for (var i = 0; i < rgb.length; i++) {\n rgb[i] = parseInt(match[i + 1]);\n }\n a = parseFloat(match[4]);\n }\n else if (match = string.match(per)) {\n for (var i = 0; i < rgb.length; i++) {\n rgb[i] = Math.round(parseFloat(match[i + 1]) * 2.55);\n }\n a = parseFloat(match[4]);\n }\n else if (match = string.match(keyword)) {\n if (match[1] == \"transparent\") {\n return [0, 0, 0, 0];\n }\n rgb = colorName$1[match[1]];\n if (!rgb) {\n return;\n }\n }\n\n for (var i = 0; i < rgb.length; i++) {\n rgb[i] = scale(rgb[i], 0, 255);\n }\n if (!a && a != 0) {\n a = 1;\n }\n else {\n a = scale(a, 0, 1);\n }\n rgb[3] = a;\n return rgb;\n}\n\nfunction getHsla(string) {\n if (!string) {\n return;\n }\n var hsl = /^hsla?\\(\\s*([+-]?\\d+)(?:deg)?\\s*,\\s*([+-]?[\\d\\.]+)%\\s*,\\s*([+-]?[\\d\\.]+)%\\s*(?:,\\s*([+-]?[\\d\\.]+)\\s*)?\\)/;\n var match = string.match(hsl);\n if (match) {\n var alpha = parseFloat(match[4]);\n var h = scale(parseInt(match[1]), 0, 360),\n s = scale(parseFloat(match[2]), 0, 100),\n l = scale(parseFloat(match[3]), 0, 100),\n a = scale(isNaN(alpha) ? 1 : alpha, 0, 1);\n return [h, s, l, a];\n }\n}\n\nfunction getHwb(string) {\n if (!string) {\n return;\n }\n var hwb = /^hwb\\(\\s*([+-]?\\d+)(?:deg)?\\s*,\\s*([+-]?[\\d\\.]+)%\\s*,\\s*([+-]?[\\d\\.]+)%\\s*(?:,\\s*([+-]?[\\d\\.]+)\\s*)?\\)/;\n var match = string.match(hwb);\n if (match) {\n var alpha = parseFloat(match[4]);\n var h = scale(parseInt(match[1]), 0, 360),\n w = scale(parseFloat(match[2]), 0, 100),\n b = scale(parseFloat(match[3]), 0, 100),\n a = scale(isNaN(alpha) ? 1 : alpha, 0, 1);\n return [h, w, b, a];\n }\n}\n\nfunction getRgb(string) {\n var rgba = getRgba(string);\n return rgba && rgba.slice(0, 3);\n}\n\nfunction getHsl(string) {\n var hsla = getHsla(string);\n return hsla && hsla.slice(0, 3);\n}\n\nfunction getAlpha(string) {\n var vals = getRgba(string);\n if (vals) {\n return vals[3];\n }\n else if (vals = getHsla(string)) {\n return vals[3];\n }\n else if (vals = getHwb(string)) {\n return vals[3];\n }\n}\n\n// generators\nfunction hexString(rgba, a) {\n var a = (a !== undefined && rgba.length === 3) ? a : rgba[3];\n return \"#\" + hexDouble(rgba[0]) \n + hexDouble(rgba[1])\n + hexDouble(rgba[2])\n + (\n (a >= 0 && a < 1)\n ? hexDouble(Math.round(a * 255))\n : \"\"\n );\n}\n\nfunction rgbString(rgba, alpha) {\n if (alpha < 1 || (rgba[3] && rgba[3] < 1)) {\n return rgbaString(rgba, alpha);\n }\n return \"rgb(\" + rgba[0] + \", \" + rgba[1] + \", \" + rgba[2] + \")\";\n}\n\nfunction rgbaString(rgba, alpha) {\n if (alpha === undefined) {\n alpha = (rgba[3] !== undefined ? rgba[3] : 1);\n }\n return \"rgba(\" + rgba[0] + \", \" + rgba[1] + \", \" + rgba[2]\n + \", \" + alpha + \")\";\n}\n\nfunction percentString(rgba, alpha) {\n if (alpha < 1 || (rgba[3] && rgba[3] < 1)) {\n return percentaString(rgba, alpha);\n }\n var r = Math.round(rgba[0]/255 * 100),\n g = Math.round(rgba[1]/255 * 100),\n b = Math.round(rgba[2]/255 * 100);\n\n return \"rgb(\" + r + \"%, \" + g + \"%, \" + b + \"%)\";\n}\n\nfunction percentaString(rgba, alpha) {\n var r = Math.round(rgba[0]/255 * 100),\n g = Math.round(rgba[1]/255 * 100),\n b = Math.round(rgba[2]/255 * 100);\n return \"rgba(\" + r + \"%, \" + g + \"%, \" + b + \"%, \" + (alpha || rgba[3] || 1) + \")\";\n}\n\nfunction hslString(hsla, alpha) {\n if (alpha < 1 || (hsla[3] && hsla[3] < 1)) {\n return hslaString(hsla, alpha);\n }\n return \"hsl(\" + hsla[0] + \", \" + hsla[1] + \"%, \" + hsla[2] + \"%)\";\n}\n\nfunction hslaString(hsla, alpha) {\n if (alpha === undefined) {\n alpha = (hsla[3] !== undefined ? hsla[3] : 1);\n }\n return \"hsla(\" + hsla[0] + \", \" + hsla[1] + \"%, \" + hsla[2] + \"%, \"\n + alpha + \")\";\n}\n\n// hwb is a bit different than rgb(a) & hsl(a) since there is no alpha specific syntax\n// (hwb have alpha optional & 1 is default value)\nfunction hwbString(hwb, alpha) {\n if (alpha === undefined) {\n alpha = (hwb[3] !== undefined ? hwb[3] : 1);\n }\n return \"hwb(\" + hwb[0] + \", \" + hwb[1] + \"%, \" + hwb[2] + \"%\"\n + (alpha !== undefined && alpha !== 1 ? \", \" + alpha : \"\") + \")\";\n}\n\nfunction keyword(rgb) {\n return reverseNames[rgb.slice(0, 3)];\n}\n\n// helpers\nfunction scale(num, min, max) {\n return Math.min(Math.max(min, num), max);\n}\n\nfunction hexDouble(num) {\n var str = num.toString(16).toUpperCase();\n return (str.length < 2) ? \"0\" + str : str;\n}\n\n\n//create a list of reverse color names\nvar reverseNames = {};\nfor (var name in colorName$1) {\n reverseNames[colorName$1[name]] = name;\n}\n\n/* MIT license */\n\n\n\nvar Color = function (obj) {\n\tif (obj instanceof Color) {\n\t\treturn obj;\n\t}\n\tif (!(this instanceof Color)) {\n\t\treturn new Color(obj);\n\t}\n\n\tthis.valid = false;\n\tthis.values = {\n\t\trgb: [0, 0, 0],\n\t\thsl: [0, 0, 0],\n\t\thsv: [0, 0, 0],\n\t\thwb: [0, 0, 0],\n\t\tcmyk: [0, 0, 0, 0],\n\t\talpha: 1\n\t};\n\n\t// parse Color() argument\n\tvar vals;\n\tif (typeof obj === 'string') {\n\t\tvals = colorString.getRgba(obj);\n\t\tif (vals) {\n\t\t\tthis.setValues('rgb', vals);\n\t\t} else if (vals = colorString.getHsla(obj)) {\n\t\t\tthis.setValues('hsl', vals);\n\t\t} else if (vals = colorString.getHwb(obj)) {\n\t\t\tthis.setValues('hwb', vals);\n\t\t}\n\t} else if (typeof obj === 'object') {\n\t\tvals = obj;\n\t\tif (vals.r !== undefined || vals.red !== undefined) {\n\t\t\tthis.setValues('rgb', vals);\n\t\t} else if (vals.l !== undefined || vals.lightness !== undefined) {\n\t\t\tthis.setValues('hsl', vals);\n\t\t} else if (vals.v !== undefined || vals.value !== undefined) {\n\t\t\tthis.setValues('hsv', vals);\n\t\t} else if (vals.w !== undefined || vals.whiteness !== undefined) {\n\t\t\tthis.setValues('hwb', vals);\n\t\t} else if (vals.c !== undefined || vals.cyan !== undefined) {\n\t\t\tthis.setValues('cmyk', vals);\n\t\t}\n\t}\n};\n\nColor.prototype = {\n\tisValid: function () {\n\t\treturn this.valid;\n\t},\n\trgb: function () {\n\t\treturn this.setSpace('rgb', arguments);\n\t},\n\thsl: function () {\n\t\treturn this.setSpace('hsl', arguments);\n\t},\n\thsv: function () {\n\t\treturn this.setSpace('hsv', arguments);\n\t},\n\thwb: function () {\n\t\treturn this.setSpace('hwb', arguments);\n\t},\n\tcmyk: function () {\n\t\treturn this.setSpace('cmyk', arguments);\n\t},\n\n\trgbArray: function () {\n\t\treturn this.values.rgb;\n\t},\n\thslArray: function () {\n\t\treturn this.values.hsl;\n\t},\n\thsvArray: function () {\n\t\treturn this.values.hsv;\n\t},\n\thwbArray: function () {\n\t\tvar values = this.values;\n\t\tif (values.alpha !== 1) {\n\t\t\treturn values.hwb.concat([values.alpha]);\n\t\t}\n\t\treturn values.hwb;\n\t},\n\tcmykArray: function () {\n\t\treturn this.values.cmyk;\n\t},\n\trgbaArray: function () {\n\t\tvar values = this.values;\n\t\treturn values.rgb.concat([values.alpha]);\n\t},\n\thslaArray: function () {\n\t\tvar values = this.values;\n\t\treturn values.hsl.concat([values.alpha]);\n\t},\n\talpha: function (val) {\n\t\tif (val === undefined) {\n\t\t\treturn this.values.alpha;\n\t\t}\n\t\tthis.setValues('alpha', val);\n\t\treturn this;\n\t},\n\n\tred: function (val) {\n\t\treturn this.setChannel('rgb', 0, val);\n\t},\n\tgreen: function (val) {\n\t\treturn this.setChannel('rgb', 1, val);\n\t},\n\tblue: function (val) {\n\t\treturn this.setChannel('rgb', 2, val);\n\t},\n\thue: function (val) {\n\t\tif (val) {\n\t\t\tval %= 360;\n\t\t\tval = val < 0 ? 360 + val : val;\n\t\t}\n\t\treturn this.setChannel('hsl', 0, val);\n\t},\n\tsaturation: function (val) {\n\t\treturn this.setChannel('hsl', 1, val);\n\t},\n\tlightness: function (val) {\n\t\treturn this.setChannel('hsl', 2, val);\n\t},\n\tsaturationv: function (val) {\n\t\treturn this.setChannel('hsv', 1, val);\n\t},\n\twhiteness: function (val) {\n\t\treturn this.setChannel('hwb', 1, val);\n\t},\n\tblackness: function (val) {\n\t\treturn this.setChannel('hwb', 2, val);\n\t},\n\tvalue: function (val) {\n\t\treturn this.setChannel('hsv', 2, val);\n\t},\n\tcyan: function (val) {\n\t\treturn this.setChannel('cmyk', 0, val);\n\t},\n\tmagenta: function (val) {\n\t\treturn this.setChannel('cmyk', 1, val);\n\t},\n\tyellow: function (val) {\n\t\treturn this.setChannel('cmyk', 2, val);\n\t},\n\tblack: function (val) {\n\t\treturn this.setChannel('cmyk', 3, val);\n\t},\n\n\thexString: function () {\n\t\treturn colorString.hexString(this.values.rgb);\n\t},\n\trgbString: function () {\n\t\treturn colorString.rgbString(this.values.rgb, this.values.alpha);\n\t},\n\trgbaString: function () {\n\t\treturn colorString.rgbaString(this.values.rgb, this.values.alpha);\n\t},\n\tpercentString: function () {\n\t\treturn colorString.percentString(this.values.rgb, this.values.alpha);\n\t},\n\thslString: function () {\n\t\treturn colorString.hslString(this.values.hsl, this.values.alpha);\n\t},\n\thslaString: function () {\n\t\treturn colorString.hslaString(this.values.hsl, this.values.alpha);\n\t},\n\thwbString: function () {\n\t\treturn colorString.hwbString(this.values.hwb, this.values.alpha);\n\t},\n\tkeyword: function () {\n\t\treturn colorString.keyword(this.values.rgb, this.values.alpha);\n\t},\n\n\trgbNumber: function () {\n\t\tvar rgb = this.values.rgb;\n\t\treturn (rgb[0] << 16) | (rgb[1] << 8) | rgb[2];\n\t},\n\n\tluminosity: function () {\n\t\t// http://www.w3.org/TR/WCAG20/#relativeluminancedef\n\t\tvar rgb = this.values.rgb;\n\t\tvar lum = [];\n\t\tfor (var i = 0; i < rgb.length; i++) {\n\t\t\tvar chan = rgb[i] / 255;\n\t\t\tlum[i] = (chan <= 0.03928) ? chan / 12.92 : Math.pow(((chan + 0.055) / 1.055), 2.4);\n\t\t}\n\t\treturn 0.2126 * lum[0] + 0.7152 * lum[1] + 0.0722 * lum[2];\n\t},\n\n\tcontrast: function (color2) {\n\t\t// http://www.w3.org/TR/WCAG20/#contrast-ratiodef\n\t\tvar lum1 = this.luminosity();\n\t\tvar lum2 = color2.luminosity();\n\t\tif (lum1 > lum2) {\n\t\t\treturn (lum1 + 0.05) / (lum2 + 0.05);\n\t\t}\n\t\treturn (lum2 + 0.05) / (lum1 + 0.05);\n\t},\n\n\tlevel: function (color2) {\n\t\tvar contrastRatio = this.contrast(color2);\n\t\tif (contrastRatio >= 7.1) {\n\t\t\treturn 'AAA';\n\t\t}\n\n\t\treturn (contrastRatio >= 4.5) ? 'AA' : '';\n\t},\n\n\tdark: function () {\n\t\t// YIQ equation from http://24ways.org/2010/calculating-color-contrast\n\t\tvar rgb = this.values.rgb;\n\t\tvar yiq = (rgb[0] * 299 + rgb[1] * 587 + rgb[2] * 114) / 1000;\n\t\treturn yiq < 128;\n\t},\n\n\tlight: function () {\n\t\treturn !this.dark();\n\t},\n\n\tnegate: function () {\n\t\tvar rgb = [];\n\t\tfor (var i = 0; i < 3; i++) {\n\t\t\trgb[i] = 255 - this.values.rgb[i];\n\t\t}\n\t\tthis.setValues('rgb', rgb);\n\t\treturn this;\n\t},\n\n\tlighten: function (ratio) {\n\t\tvar hsl = this.values.hsl;\n\t\thsl[2] += hsl[2] * ratio;\n\t\tthis.setValues('hsl', hsl);\n\t\treturn this;\n\t},\n\n\tdarken: function (ratio) {\n\t\tvar hsl = this.values.hsl;\n\t\thsl[2] -= hsl[2] * ratio;\n\t\tthis.setValues('hsl', hsl);\n\t\treturn this;\n\t},\n\n\tsaturate: function (ratio) {\n\t\tvar hsl = this.values.hsl;\n\t\thsl[1] += hsl[1] * ratio;\n\t\tthis.setValues('hsl', hsl);\n\t\treturn this;\n\t},\n\n\tdesaturate: function (ratio) {\n\t\tvar hsl = this.values.hsl;\n\t\thsl[1] -= hsl[1] * ratio;\n\t\tthis.setValues('hsl', hsl);\n\t\treturn this;\n\t},\n\n\twhiten: function (ratio) {\n\t\tvar hwb = this.values.hwb;\n\t\thwb[1] += hwb[1] * ratio;\n\t\tthis.setValues('hwb', hwb);\n\t\treturn this;\n\t},\n\n\tblacken: function (ratio) {\n\t\tvar hwb = this.values.hwb;\n\t\thwb[2] += hwb[2] * ratio;\n\t\tthis.setValues('hwb', hwb);\n\t\treturn this;\n\t},\n\n\tgreyscale: function () {\n\t\tvar rgb = this.values.rgb;\n\t\t// http://en.wikipedia.org/wiki/Grayscale#Converting_color_to_grayscale\n\t\tvar val = rgb[0] * 0.3 + rgb[1] * 0.59 + rgb[2] * 0.11;\n\t\tthis.setValues('rgb', [val, val, val]);\n\t\treturn this;\n\t},\n\n\tclearer: function (ratio) {\n\t\tvar alpha = this.values.alpha;\n\t\tthis.setValues('alpha', alpha - (alpha * ratio));\n\t\treturn this;\n\t},\n\n\topaquer: function (ratio) {\n\t\tvar alpha = this.values.alpha;\n\t\tthis.setValues('alpha', alpha + (alpha * ratio));\n\t\treturn this;\n\t},\n\n\trotate: function (degrees) {\n\t\tvar hsl = this.values.hsl;\n\t\tvar hue = (hsl[0] + degrees) % 360;\n\t\thsl[0] = hue < 0 ? 360 + hue : hue;\n\t\tthis.setValues('hsl', hsl);\n\t\treturn this;\n\t},\n\n\t/**\n\t * Ported from sass implementation in C\n\t * https://github.com/sass/libsass/blob/0e6b4a2850092356aa3ece07c6b249f0221caced/functions.cpp#L209\n\t */\n\tmix: function (mixinColor, weight) {\n\t\tvar color1 = this;\n\t\tvar color2 = mixinColor;\n\t\tvar p = weight === undefined ? 0.5 : weight;\n\n\t\tvar w = 2 * p - 1;\n\t\tvar a = color1.alpha() - color2.alpha();\n\n\t\tvar w1 = (((w * a === -1) ? w : (w + a) / (1 + w * a)) + 1) / 2.0;\n\t\tvar w2 = 1 - w1;\n\n\t\treturn this\n\t\t\t.rgb(\n\t\t\t\tw1 * color1.red() + w2 * color2.red(),\n\t\t\t\tw1 * color1.green() + w2 * color2.green(),\n\t\t\t\tw1 * color1.blue() + w2 * color2.blue()\n\t\t\t)\n\t\t\t.alpha(color1.alpha() * p + color2.alpha() * (1 - p));\n\t},\n\n\ttoJSON: function () {\n\t\treturn this.rgb();\n\t},\n\n\tclone: function () {\n\t\t// NOTE(SB): using node-clone creates a dependency to Buffer when using browserify,\n\t\t// making the final build way to big to embed in Chart.js. So let's do it manually,\n\t\t// assuming that values to clone are 1 dimension arrays containing only numbers,\n\t\t// except 'alpha' which is a number.\n\t\tvar result = new Color();\n\t\tvar source = this.values;\n\t\tvar target = result.values;\n\t\tvar value, type;\n\n\t\tfor (var prop in source) {\n\t\t\tif (source.hasOwnProperty(prop)) {\n\t\t\t\tvalue = source[prop];\n\t\t\t\ttype = ({}).toString.call(value);\n\t\t\t\tif (type === '[object Array]') {\n\t\t\t\t\ttarget[prop] = value.slice(0);\n\t\t\t\t} else if (type === '[object Number]') {\n\t\t\t\t\ttarget[prop] = value;\n\t\t\t\t} else {\n\t\t\t\t\tconsole.error('unexpected color value:', value);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\treturn result;\n\t}\n};\n\nColor.prototype.spaces = {\n\trgb: ['red', 'green', 'blue'],\n\thsl: ['hue', 'saturation', 'lightness'],\n\thsv: ['hue', 'saturation', 'value'],\n\thwb: ['hue', 'whiteness', 'blackness'],\n\tcmyk: ['cyan', 'magenta', 'yellow', 'black']\n};\n\nColor.prototype.maxes = {\n\trgb: [255, 255, 255],\n\thsl: [360, 100, 100],\n\thsv: [360, 100, 100],\n\thwb: [360, 100, 100],\n\tcmyk: [100, 100, 100, 100]\n};\n\nColor.prototype.getValues = function (space) {\n\tvar values = this.values;\n\tvar vals = {};\n\n\tfor (var i = 0; i < space.length; i++) {\n\t\tvals[space.charAt(i)] = values[space][i];\n\t}\n\n\tif (values.alpha !== 1) {\n\t\tvals.a = values.alpha;\n\t}\n\n\t// {r: 255, g: 255, b: 255, a: 0.4}\n\treturn vals;\n};\n\nColor.prototype.setValues = function (space, vals) {\n\tvar values = this.values;\n\tvar spaces = this.spaces;\n\tvar maxes = this.maxes;\n\tvar alpha = 1;\n\tvar i;\n\n\tthis.valid = true;\n\n\tif (space === 'alpha') {\n\t\talpha = vals;\n\t} else if (vals.length) {\n\t\t// [10, 10, 10]\n\t\tvalues[space] = vals.slice(0, space.length);\n\t\talpha = vals[space.length];\n\t} else if (vals[space.charAt(0)] !== undefined) {\n\t\t// {r: 10, g: 10, b: 10}\n\t\tfor (i = 0; i < space.length; i++) {\n\t\t\tvalues[space][i] = vals[space.charAt(i)];\n\t\t}\n\n\t\talpha = vals.a;\n\t} else if (vals[spaces[space][0]] !== undefined) {\n\t\t// {red: 10, green: 10, blue: 10}\n\t\tvar chans = spaces[space];\n\n\t\tfor (i = 0; i < space.length; i++) {\n\t\t\tvalues[space][i] = vals[chans[i]];\n\t\t}\n\n\t\talpha = vals.alpha;\n\t}\n\n\tvalues.alpha = Math.max(0, Math.min(1, (alpha === undefined ? values.alpha : alpha)));\n\n\tif (space === 'alpha') {\n\t\treturn false;\n\t}\n\n\tvar capped;\n\n\t// cap values of the space prior converting all values\n\tfor (i = 0; i < space.length; i++) {\n\t\tcapped = Math.max(0, Math.min(maxes[space][i], values[space][i]));\n\t\tvalues[space][i] = Math.round(capped);\n\t}\n\n\t// convert to all the other color spaces\n\tfor (var sname in spaces) {\n\t\tif (sname !== space) {\n\t\t\tvalues[sname] = colorConvert[space][sname](values[space]);\n\t\t}\n\t}\n\n\treturn true;\n};\n\nColor.prototype.setSpace = function (space, args) {\n\tvar vals = args[0];\n\n\tif (vals === undefined) {\n\t\t// color.rgb()\n\t\treturn this.getValues(space);\n\t}\n\n\t// color.rgb(10, 10, 10)\n\tif (typeof vals === 'number') {\n\t\tvals = Array.prototype.slice.call(args);\n\t}\n\n\tthis.setValues(space, vals);\n\treturn this;\n};\n\nColor.prototype.setChannel = function (space, index, val) {\n\tvar svalues = this.values[space];\n\tif (val === undefined) {\n\t\t// color.red()\n\t\treturn svalues[index];\n\t} else if (val === svalues[index]) {\n\t\t// color.red(color.red())\n\t\treturn this;\n\t}\n\n\t// color.red(100)\n\tsvalues[index] = val;\n\tthis.setValues(space, svalues);\n\n\treturn this;\n};\n\nif (typeof window !== 'undefined') {\n\twindow.Color = Color;\n}\n\nvar chartjsColor = Color;\n\nfunction isValidKey(key) {\r\n\treturn ['__proto__', 'prototype', 'constructor'].indexOf(key) === -1;\r\n}\r\n\r\n/**\r\n * @namespace Chart.helpers\r\n */\r\nvar helpers = {\r\n\t/**\r\n\t * An empty function that can be used, for example, for optional callback.\r\n\t */\r\n\tnoop: function() {},\r\n\r\n\t/**\r\n\t * Returns a unique id, sequentially generated from a global variable.\r\n\t * @returns {number}\r\n\t * @function\r\n\t */\r\n\tuid: (function() {\r\n\t\tvar id = 0;\r\n\t\treturn function() {\r\n\t\t\treturn id++;\r\n\t\t};\r\n\t}()),\r\n\r\n\t/**\r\n\t * Returns true if `value` is neither null nor undefined, else returns false.\r\n\t * @param {*} value - The value to test.\r\n\t * @returns {boolean}\r\n\t * @since 2.7.0\r\n\t */\r\n\tisNullOrUndef: function(value) {\r\n\t\treturn value === null || typeof value === 'undefined';\r\n\t},\r\n\r\n\t/**\r\n\t * Returns true if `value` is an array (including typed arrays), else returns false.\r\n\t * @param {*} value - The value to test.\r\n\t * @returns {boolean}\r\n\t * @function\r\n\t */\r\n\tisArray: function(value) {\r\n\t\tif (Array.isArray && Array.isArray(value)) {\r\n\t\t\treturn true;\r\n\t\t}\r\n\t\tvar type = Object.prototype.toString.call(value);\r\n\t\tif (type.substr(0, 7) === '[object' && type.substr(-6) === 'Array]') {\r\n\t\t\treturn true;\r\n\t\t}\r\n\t\treturn false;\r\n\t},\r\n\r\n\t/**\r\n\t * Returns true if `value` is an object (excluding null), else returns false.\r\n\t * @param {*} value - The value to test.\r\n\t * @returns {boolean}\r\n\t * @since 2.7.0\r\n\t */\r\n\tisObject: function(value) {\r\n\t\treturn value !== null && Object.prototype.toString.call(value) === '[object Object]';\r\n\t},\r\n\r\n\t/**\r\n\t * Returns true if `value` is a finite number, else returns false\r\n\t * @param {*} value - The value to test.\r\n\t * @returns {boolean}\r\n\t */\r\n\tisFinite: function(value) {\r\n\t\treturn (typeof value === 'number' || value instanceof Number) && isFinite(value);\r\n\t},\r\n\r\n\t/**\r\n\t * Returns `value` if defined, else returns `defaultValue`.\r\n\t * @param {*} value - The value to return if defined.\r\n\t * @param {*} defaultValue - The value to return if `value` is undefined.\r\n\t * @returns {*}\r\n\t */\r\n\tvalueOrDefault: function(value, defaultValue) {\r\n\t\treturn typeof value === 'undefined' ? defaultValue : value;\r\n\t},\r\n\r\n\t/**\r\n\t * Returns value at the given `index` in array if defined, else returns `defaultValue`.\r\n\t * @param {Array} value - The array to lookup for value at `index`.\r\n\t * @param {number} index - The index in `value` to lookup for value.\r\n\t * @param {*} defaultValue - The value to return if `value[index]` is undefined.\r\n\t * @returns {*}\r\n\t */\r\n\tvalueAtIndexOrDefault: function(value, index, defaultValue) {\r\n\t\treturn helpers.valueOrDefault(helpers.isArray(value) ? value[index] : value, defaultValue);\r\n\t},\r\n\r\n\t/**\r\n\t * Calls `fn` with the given `args` in the scope defined by `thisArg` and returns the\r\n\t * value returned by `fn`. If `fn` is not a function, this method returns undefined.\r\n\t * @param {function} fn - The function to call.\r\n\t * @param {Array|undefined|null} args - The arguments with which `fn` should be called.\r\n\t * @param {object} [thisArg] - The value of `this` provided for the call to `fn`.\r\n\t * @returns {*}\r\n\t */\r\n\tcallback: function(fn, args, thisArg) {\r\n\t\tif (fn && typeof fn.call === 'function') {\r\n\t\t\treturn fn.apply(thisArg, args);\r\n\t\t}\r\n\t},\r\n\r\n\t/**\r\n\t * Note(SB) for performance sake, this method should only be used when loopable type\r\n\t * is unknown or in none intensive code (not called often and small loopable). Else\r\n\t * it's preferable to use a regular for() loop and save extra function calls.\r\n\t * @param {object|Array} loopable - The object or array to be iterated.\r\n\t * @param {function} fn - The function to call for each item.\r\n\t * @param {object} [thisArg] - The value of `this` provided for the call to `fn`.\r\n\t * @param {boolean} [reverse] - If true, iterates backward on the loopable.\r\n\t */\r\n\teach: function(loopable, fn, thisArg, reverse) {\r\n\t\tvar i, len, keys;\r\n\t\tif (helpers.isArray(loopable)) {\r\n\t\t\tlen = loopable.length;\r\n\t\t\tif (reverse) {\r\n\t\t\t\tfor (i = len - 1; i >= 0; i--) {\r\n\t\t\t\t\tfn.call(thisArg, loopable[i], i);\r\n\t\t\t\t}\r\n\t\t\t} else {\r\n\t\t\t\tfor (i = 0; i < len; i++) {\r\n\t\t\t\t\tfn.call(thisArg, loopable[i], i);\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t} else if (helpers.isObject(loopable)) {\r\n\t\t\tkeys = Object.keys(loopable);\r\n\t\t\tlen = keys.length;\r\n\t\t\tfor (i = 0; i < len; i++) {\r\n\t\t\t\tfn.call(thisArg, loopable[keys[i]], keys[i]);\r\n\t\t\t}\r\n\t\t}\r\n\t},\r\n\r\n\t/**\r\n\t * Returns true if the `a0` and `a1` arrays have the same content, else returns false.\r\n\t * @see https://stackoverflow.com/a/14853974\r\n\t * @param {Array} a0 - The array to compare\r\n\t * @param {Array} a1 - The array to compare\r\n\t * @returns {boolean}\r\n\t */\r\n\tarrayEquals: function(a0, a1) {\r\n\t\tvar i, ilen, v0, v1;\r\n\r\n\t\tif (!a0 || !a1 || a0.length !== a1.length) {\r\n\t\t\treturn false;\r\n\t\t}\r\n\r\n\t\tfor (i = 0, ilen = a0.length; i < ilen; ++i) {\r\n\t\t\tv0 = a0[i];\r\n\t\t\tv1 = a1[i];\r\n\r\n\t\t\tif (v0 instanceof Array && v1 instanceof Array) {\r\n\t\t\t\tif (!helpers.arrayEquals(v0, v1)) {\r\n\t\t\t\t\treturn false;\r\n\t\t\t\t}\r\n\t\t\t} else if (v0 !== v1) {\r\n\t\t\t\t// NOTE: two different object instances will never be equal: {x:20} != {x:20}\r\n\t\t\t\treturn false;\r\n\t\t\t}\r\n\t\t}\r\n\r\n\t\treturn true;\r\n\t},\r\n\r\n\t/**\r\n\t * Returns a deep copy of `source` without keeping references on objects and arrays.\r\n\t * @param {*} source - The value to clone.\r\n\t * @returns {*}\r\n\t */\r\n\tclone: function(source) {\r\n\t\tif (helpers.isArray(source)) {\r\n\t\t\treturn source.map(helpers.clone);\r\n\t\t}\r\n\r\n\t\tif (helpers.isObject(source)) {\r\n\t\t\tvar target = Object.create(source);\r\n\t\t\tvar keys = Object.keys(source);\r\n\t\t\tvar klen = keys.length;\r\n\t\t\tvar k = 0;\r\n\r\n\t\t\tfor (; k < klen; ++k) {\r\n\t\t\t\ttarget[keys[k]] = helpers.clone(source[keys[k]]);\r\n\t\t\t}\r\n\r\n\t\t\treturn target;\r\n\t\t}\r\n\r\n\t\treturn source;\r\n\t},\r\n\r\n\t/**\r\n\t * The default merger when Chart.helpers.merge is called without merger option.\r\n\t * Note(SB): also used by mergeConfig and mergeScaleConfig as fallback.\r\n\t * @private\r\n\t */\r\n\t_merger: function(key, target, source, options) {\r\n\t\tif (!isValidKey(key)) {\r\n\t\t\t// We want to ensure we do not copy prototypes over\r\n\t\t\t// as this can pollute global namespaces\r\n\t\t\treturn;\r\n\t\t}\r\n\r\n\t\tvar tval = target[key];\r\n\t\tvar sval = source[key];\r\n\r\n\t\tif (helpers.isObject(tval) && helpers.isObject(sval)) {\r\n\t\t\thelpers.merge(tval, sval, options);\r\n\t\t} else {\r\n\t\t\ttarget[key] = helpers.clone(sval);\r\n\t\t}\r\n\t},\r\n\r\n\t/**\r\n\t * Merges source[key] in target[key] only if target[key] is undefined.\r\n\t * @private\r\n\t */\r\n\t_mergerIf: function(key, target, source) {\r\n\t\tif (!isValidKey(key)) {\r\n\t\t\t// We want to ensure we do not copy prototypes over\r\n\t\t\t// as this can pollute global namespaces\r\n\t\t\treturn;\r\n\t\t}\r\n\r\n\t\tvar tval = target[key];\r\n\t\tvar sval = source[key];\r\n\r\n\t\tif (helpers.isObject(tval) && helpers.isObject(sval)) {\r\n\t\t\thelpers.mergeIf(tval, sval);\r\n\t\t} else if (!target.hasOwnProperty(key)) {\r\n\t\t\ttarget[key] = helpers.clone(sval);\r\n\t\t}\r\n\t},\r\n\r\n\t/**\r\n\t * Recursively deep copies `source` properties into `target` with the given `options`.\r\n\t * IMPORTANT: `target` is not cloned and will be updated with `source` properties.\r\n\t * @param {object} target - The target object in which all sources are merged into.\r\n\t * @param {object|object[]} source - Object(s) to merge into `target`.\r\n\t * @param {object} [options] - Merging options:\r\n\t * @param {function} [options.merger] - The merge method (key, target, source, options)\r\n\t * @returns {object} The `target` object.\r\n\t */\r\n\tmerge: function(target, source, options) {\r\n\t\tvar sources = helpers.isArray(source) ? source : [source];\r\n\t\tvar ilen = sources.length;\r\n\t\tvar merge, i, keys, klen, k;\r\n\r\n\t\tif (!helpers.isObject(target)) {\r\n\t\t\treturn target;\r\n\t\t}\r\n\r\n\t\toptions = options || {};\r\n\t\tmerge = options.merger || helpers._merger;\r\n\r\n\t\tfor (i = 0; i < ilen; ++i) {\r\n\t\t\tsource = sources[i];\r\n\t\t\tif (!helpers.isObject(source)) {\r\n\t\t\t\tcontinue;\r\n\t\t\t}\r\n\r\n\t\t\tkeys = Object.keys(source);\r\n\t\t\tfor (k = 0, klen = keys.length; k < klen; ++k) {\r\n\t\t\t\tmerge(keys[k], target, source, options);\r\n\t\t\t}\r\n\t\t}\r\n\r\n\t\treturn target;\r\n\t},\r\n\r\n\t/**\r\n\t * Recursively deep copies `source` properties into `target` *only* if not defined in target.\r\n\t * IMPORTANT: `target` is not cloned and will be updated with `source` properties.\r\n\t * @param {object} target - The target object in which all sources are merged into.\r\n\t * @param {object|object[]} source - Object(s) to merge into `target`.\r\n\t * @returns {object} The `target` object.\r\n\t */\r\n\tmergeIf: function(target, source) {\r\n\t\treturn helpers.merge(target, source, {merger: helpers._mergerIf});\r\n\t},\r\n\r\n\t/**\r\n\t * Applies the contents of two or more objects together into the first object.\r\n\t * @param {object} target - The target object in which all objects are merged into.\r\n\t * @param {object} arg1 - Object containing additional properties to merge in target.\r\n\t * @param {object} argN - Additional objects containing properties to merge in target.\r\n\t * @returns {object} The `target` object.\r\n\t */\r\n\textend: Object.assign || function(target) {\r\n\t\treturn helpers.merge(target, [].slice.call(arguments, 1), {\r\n\t\t\tmerger: function(key, dst, src) {\r\n\t\t\t\tdst[key] = src[key];\r\n\t\t\t}\r\n\t\t});\r\n\t},\r\n\r\n\t/**\r\n\t * Basic javascript inheritance based on the model created in Backbone.js\r\n\t */\r\n\tinherits: function(extensions) {\r\n\t\tvar me = this;\r\n\t\tvar ChartElement = (extensions && extensions.hasOwnProperty('constructor')) ? extensions.constructor : function() {\r\n\t\t\treturn me.apply(this, arguments);\r\n\t\t};\r\n\r\n\t\tvar Surrogate = function() {\r\n\t\t\tthis.constructor = ChartElement;\r\n\t\t};\r\n\r\n\t\tSurrogate.prototype = me.prototype;\r\n\t\tChartElement.prototype = new Surrogate();\r\n\t\tChartElement.extend = helpers.inherits;\r\n\r\n\t\tif (extensions) {\r\n\t\t\thelpers.extend(ChartElement.prototype, extensions);\r\n\t\t}\r\n\r\n\t\tChartElement.__super__ = me.prototype;\r\n\t\treturn ChartElement;\r\n\t},\r\n\r\n\t_deprecated: function(scope, value, previous, current) {\r\n\t\tif (value !== undefined) {\r\n\t\t\tconsole.warn(scope + ': \"' + previous +\r\n\t\t\t\t'\" is deprecated. Please use \"' + current + '\" instead');\r\n\t\t}\r\n\t}\r\n};\r\n\r\nvar helpers_core = helpers;\r\n\r\n// DEPRECATIONS\r\n\r\n/**\r\n * Provided for backward compatibility, use Chart.helpers.callback instead.\r\n * @function Chart.helpers.callCallback\r\n * @deprecated since version 2.6.0\r\n * @todo remove at version 3\r\n * @private\r\n */\r\nhelpers.callCallback = helpers.callback;\r\n\r\n/**\r\n * Provided for backward compatibility, use Array.prototype.indexOf instead.\r\n * Array.prototype.indexOf compatibility: Chrome, Opera, Safari, FF1.5+, IE9+\r\n * @function Chart.helpers.indexOf\r\n * @deprecated since version 2.7.0\r\n * @todo remove at version 3\r\n * @private\r\n */\r\nhelpers.indexOf = function(array, item, fromIndex) {\r\n\treturn Array.prototype.indexOf.call(array, item, fromIndex);\r\n};\r\n\r\n/**\r\n * Provided for backward compatibility, use Chart.helpers.valueOrDefault instead.\r\n * @function Chart.helpers.getValueOrDefault\r\n * @deprecated since version 2.7.0\r\n * @todo remove at version 3\r\n * @private\r\n */\r\nhelpers.getValueOrDefault = helpers.valueOrDefault;\r\n\r\n/**\r\n * Provided for backward compatibility, use Chart.helpers.valueAtIndexOrDefault instead.\r\n * @function Chart.helpers.getValueAtIndexOrDefault\r\n * @deprecated since version 2.7.0\r\n * @todo remove at version 3\r\n * @private\r\n */\r\nhelpers.getValueAtIndexOrDefault = helpers.valueAtIndexOrDefault;\n\n/**\r\n * Easing functions adapted from Robert Penner's easing equations.\r\n * @namespace Chart.helpers.easingEffects\r\n * @see http://www.robertpenner.com/easing/\r\n */\r\nvar effects = {\r\n\tlinear: function(t) {\r\n\t\treturn t;\r\n\t},\r\n\r\n\teaseInQuad: function(t) {\r\n\t\treturn t * t;\r\n\t},\r\n\r\n\teaseOutQuad: function(t) {\r\n\t\treturn -t * (t - 2);\r\n\t},\r\n\r\n\teaseInOutQuad: function(t) {\r\n\t\tif ((t /= 0.5) < 1) {\r\n\t\t\treturn 0.5 * t * t;\r\n\t\t}\r\n\t\treturn -0.5 * ((--t) * (t - 2) - 1);\r\n\t},\r\n\r\n\teaseInCubic: function(t) {\r\n\t\treturn t * t * t;\r\n\t},\r\n\r\n\teaseOutCubic: function(t) {\r\n\t\treturn (t = t - 1) * t * t + 1;\r\n\t},\r\n\r\n\teaseInOutCubic: function(t) {\r\n\t\tif ((t /= 0.5) < 1) {\r\n\t\t\treturn 0.5 * t * t * t;\r\n\t\t}\r\n\t\treturn 0.5 * ((t -= 2) * t * t + 2);\r\n\t},\r\n\r\n\teaseInQuart: function(t) {\r\n\t\treturn t * t * t * t;\r\n\t},\r\n\r\n\teaseOutQuart: function(t) {\r\n\t\treturn -((t = t - 1) * t * t * t - 1);\r\n\t},\r\n\r\n\teaseInOutQuart: function(t) {\r\n\t\tif ((t /= 0.5) < 1) {\r\n\t\t\treturn 0.5 * t * t * t * t;\r\n\t\t}\r\n\t\treturn -0.5 * ((t -= 2) * t * t * t - 2);\r\n\t},\r\n\r\n\teaseInQuint: function(t) {\r\n\t\treturn t * t * t * t * t;\r\n\t},\r\n\r\n\teaseOutQuint: function(t) {\r\n\t\treturn (t = t - 1) * t * t * t * t + 1;\r\n\t},\r\n\r\n\teaseInOutQuint: function(t) {\r\n\t\tif ((t /= 0.5) < 1) {\r\n\t\t\treturn 0.5 * t * t * t * t * t;\r\n\t\t}\r\n\t\treturn 0.5 * ((t -= 2) * t * t * t * t + 2);\r\n\t},\r\n\r\n\teaseInSine: function(t) {\r\n\t\treturn -Math.cos(t * (Math.PI / 2)) + 1;\r\n\t},\r\n\r\n\teaseOutSine: function(t) {\r\n\t\treturn Math.sin(t * (Math.PI / 2));\r\n\t},\r\n\r\n\teaseInOutSine: function(t) {\r\n\t\treturn -0.5 * (Math.cos(Math.PI * t) - 1);\r\n\t},\r\n\r\n\teaseInExpo: function(t) {\r\n\t\treturn (t === 0) ? 0 : Math.pow(2, 10 * (t - 1));\r\n\t},\r\n\r\n\teaseOutExpo: function(t) {\r\n\t\treturn (t === 1) ? 1 : -Math.pow(2, -10 * t) + 1;\r\n\t},\r\n\r\n\teaseInOutExpo: function(t) {\r\n\t\tif (t === 0) {\r\n\t\t\treturn 0;\r\n\t\t}\r\n\t\tif (t === 1) {\r\n\t\t\treturn 1;\r\n\t\t}\r\n\t\tif ((t /= 0.5) < 1) {\r\n\t\t\treturn 0.5 * Math.pow(2, 10 * (t - 1));\r\n\t\t}\r\n\t\treturn 0.5 * (-Math.pow(2, -10 * --t) + 2);\r\n\t},\r\n\r\n\teaseInCirc: function(t) {\r\n\t\tif (t >= 1) {\r\n\t\t\treturn t;\r\n\t\t}\r\n\t\treturn -(Math.sqrt(1 - t * t) - 1);\r\n\t},\r\n\r\n\teaseOutCirc: function(t) {\r\n\t\treturn Math.sqrt(1 - (t = t - 1) * t);\r\n\t},\r\n\r\n\teaseInOutCirc: function(t) {\r\n\t\tif ((t /= 0.5) < 1) {\r\n\t\t\treturn -0.5 * (Math.sqrt(1 - t * t) - 1);\r\n\t\t}\r\n\t\treturn 0.5 * (Math.sqrt(1 - (t -= 2) * t) + 1);\r\n\t},\r\n\r\n\teaseInElastic: function(t) {\r\n\t\tvar s = 1.70158;\r\n\t\tvar p = 0;\r\n\t\tvar a = 1;\r\n\t\tif (t === 0) {\r\n\t\t\treturn 0;\r\n\t\t}\r\n\t\tif (t === 1) {\r\n\t\t\treturn 1;\r\n\t\t}\r\n\t\tif (!p) {\r\n\t\t\tp = 0.3;\r\n\t\t}\r\n\t\tif (a < 1) {\r\n\t\t\ta = 1;\r\n\t\t\ts = p / 4;\r\n\t\t} else {\r\n\t\t\ts = p / (2 * Math.PI) * Math.asin(1 / a);\r\n\t\t}\r\n\t\treturn -(a * Math.pow(2, 10 * (t -= 1)) * Math.sin((t - s) * (2 * Math.PI) / p));\r\n\t},\r\n\r\n\teaseOutElastic: function(t) {\r\n\t\tvar s = 1.70158;\r\n\t\tvar p = 0;\r\n\t\tvar a = 1;\r\n\t\tif (t === 0) {\r\n\t\t\treturn 0;\r\n\t\t}\r\n\t\tif (t === 1) {\r\n\t\t\treturn 1;\r\n\t\t}\r\n\t\tif (!p) {\r\n\t\t\tp = 0.3;\r\n\t\t}\r\n\t\tif (a < 1) {\r\n\t\t\ta = 1;\r\n\t\t\ts = p / 4;\r\n\t\t} else {\r\n\t\t\ts = p / (2 * Math.PI) * Math.asin(1 / a);\r\n\t\t}\r\n\t\treturn a * Math.pow(2, -10 * t) * Math.sin((t - s) * (2 * Math.PI) / p) + 1;\r\n\t},\r\n\r\n\teaseInOutElastic: function(t) {\r\n\t\tvar s = 1.70158;\r\n\t\tvar p = 0;\r\n\t\tvar a = 1;\r\n\t\tif (t === 0) {\r\n\t\t\treturn 0;\r\n\t\t}\r\n\t\tif ((t /= 0.5) === 2) {\r\n\t\t\treturn 1;\r\n\t\t}\r\n\t\tif (!p) {\r\n\t\t\tp = 0.45;\r\n\t\t}\r\n\t\tif (a < 1) {\r\n\t\t\ta = 1;\r\n\t\t\ts = p / 4;\r\n\t\t} else {\r\n\t\t\ts = p / (2 * Math.PI) * Math.asin(1 / a);\r\n\t\t}\r\n\t\tif (t < 1) {\r\n\t\t\treturn -0.5 * (a * Math.pow(2, 10 * (t -= 1)) * Math.sin((t - s) * (2 * Math.PI) / p));\r\n\t\t}\r\n\t\treturn a * Math.pow(2, -10 * (t -= 1)) * Math.sin((t - s) * (2 * Math.PI) / p) * 0.5 + 1;\r\n\t},\r\n\teaseInBack: function(t) {\r\n\t\tvar s = 1.70158;\r\n\t\treturn t * t * ((s + 1) * t - s);\r\n\t},\r\n\r\n\teaseOutBack: function(t) {\r\n\t\tvar s = 1.70158;\r\n\t\treturn (t = t - 1) * t * ((s + 1) * t + s) + 1;\r\n\t},\r\n\r\n\teaseInOutBack: function(t) {\r\n\t\tvar s = 1.70158;\r\n\t\tif ((t /= 0.5) < 1) {\r\n\t\t\treturn 0.5 * (t * t * (((s *= (1.525)) + 1) * t - s));\r\n\t\t}\r\n\t\treturn 0.5 * ((t -= 2) * t * (((s *= (1.525)) + 1) * t + s) + 2);\r\n\t},\r\n\r\n\teaseInBounce: function(t) {\r\n\t\treturn 1 - effects.easeOutBounce(1 - t);\r\n\t},\r\n\r\n\teaseOutBounce: function(t) {\r\n\t\tif (t < (1 / 2.75)) {\r\n\t\t\treturn 7.5625 * t * t;\r\n\t\t}\r\n\t\tif (t < (2 / 2.75)) {\r\n\t\t\treturn 7.5625 * (t -= (1.5 / 2.75)) * t + 0.75;\r\n\t\t}\r\n\t\tif (t < (2.5 / 2.75)) {\r\n\t\t\treturn 7.5625 * (t -= (2.25 / 2.75)) * t + 0.9375;\r\n\t\t}\r\n\t\treturn 7.5625 * (t -= (2.625 / 2.75)) * t + 0.984375;\r\n\t},\r\n\r\n\teaseInOutBounce: function(t) {\r\n\t\tif (t < 0.5) {\r\n\t\t\treturn effects.easeInBounce(t * 2) * 0.5;\r\n\t\t}\r\n\t\treturn effects.easeOutBounce(t * 2 - 1) * 0.5 + 0.5;\r\n\t}\r\n};\r\n\r\nvar helpers_easing = {\r\n\teffects: effects\r\n};\r\n\r\n// DEPRECATIONS\r\n\r\n/**\r\n * Provided for backward compatibility, use Chart.helpers.easing.effects instead.\r\n * @function Chart.helpers.easingEffects\r\n * @deprecated since version 2.7.0\r\n * @todo remove at version 3\r\n * @private\r\n */\r\nhelpers_core.easingEffects = effects;\n\nvar PI = Math.PI;\r\nvar RAD_PER_DEG = PI / 180;\r\nvar DOUBLE_PI = PI * 2;\r\nvar HALF_PI = PI / 2;\r\nvar QUARTER_PI = PI / 4;\r\nvar TWO_THIRDS_PI = PI * 2 / 3;\r\n\r\n/**\r\n * @namespace Chart.helpers.canvas\r\n */\r\nvar exports$1 = {\r\n\t/**\r\n\t * Clears the entire canvas associated to the given `chart`.\r\n\t * @param {Chart} chart - The chart for which to clear the canvas.\r\n\t */\r\n\tclear: function(chart) {\r\n\t\tchart.ctx.clearRect(0, 0, chart.width, chart.height);\r\n\t},\r\n\r\n\t/**\r\n\t * Creates a \"path\" for a rectangle with rounded corners at position (x, y) with a\r\n\t * given size (width, height) and the same `radius` for all corners.\r\n\t * @param {CanvasRenderingContext2D} ctx - The canvas 2D Context.\r\n\t * @param {number} x - The x axis of the coordinate for the rectangle starting point.\r\n\t * @param {number} y - The y axis of the coordinate for the rectangle starting point.\r\n\t * @param {number} width - The rectangle's width.\r\n\t * @param {number} height - The rectangle's height.\r\n\t * @param {number} radius - The rounded amount (in pixels) for the four corners.\r\n\t * @todo handle `radius` as top-left, top-right, bottom-right, bottom-left array/object?\r\n\t */\r\n\troundedRect: function(ctx, x, y, width, height, radius) {\r\n\t\tif (radius) {\r\n\t\t\tvar r = Math.min(radius, height / 2, width / 2);\r\n\t\t\tvar left = x + r;\r\n\t\t\tvar top = y + r;\r\n\t\t\tvar right = x + width - r;\r\n\t\t\tvar bottom = y + height - r;\r\n\r\n\t\t\tctx.moveTo(x, top);\r\n\t\t\tif (left < right && top < bottom) {\r\n\t\t\t\tctx.arc(left, top, r, -PI, -HALF_PI);\r\n\t\t\t\tctx.arc(right, top, r, -HALF_PI, 0);\r\n\t\t\t\tctx.arc(right, bottom, r, 0, HALF_PI);\r\n\t\t\t\tctx.arc(left, bottom, r, HALF_PI, PI);\r\n\t\t\t} else if (left < right) {\r\n\t\t\t\tctx.moveTo(left, y);\r\n\t\t\t\tctx.arc(right, top, r, -HALF_PI, HALF_PI);\r\n\t\t\t\tctx.arc(left, top, r, HALF_PI, PI + HALF_PI);\r\n\t\t\t} else if (top < bottom) {\r\n\t\t\t\tctx.arc(left, top, r, -PI, 0);\r\n\t\t\t\tctx.arc(left, bottom, r, 0, PI);\r\n\t\t\t} else {\r\n\t\t\t\tctx.arc(left, top, r, -PI, PI);\r\n\t\t\t}\r\n\t\t\tctx.closePath();\r\n\t\t\tctx.moveTo(x, y);\r\n\t\t} else {\r\n\t\t\tctx.rect(x, y, width, height);\r\n\t\t}\r\n\t},\r\n\r\n\tdrawPoint: function(ctx, style, radius, x, y, rotation) {\r\n\t\tvar type, xOffset, yOffset, size, cornerRadius;\r\n\t\tvar rad = (rotation || 0) * RAD_PER_DEG;\r\n\r\n\t\tif (style && typeof style === 'object') {\r\n\t\t\ttype = style.toString();\r\n\t\t\tif (type === '[object HTMLImageElement]' || type === '[object HTMLCanvasElement]') {\r\n\t\t\t\tctx.save();\r\n\t\t\t\tctx.translate(x, y);\r\n\t\t\t\tctx.rotate(rad);\r\n\t\t\t\tctx.drawImage(style, -style.width / 2, -style.height / 2, style.width, style.height);\r\n\t\t\t\tctx.restore();\r\n\t\t\t\treturn;\r\n\t\t\t}\r\n\t\t}\r\n\r\n\t\tif (isNaN(radius) || radius <= 0) {\r\n\t\t\treturn;\r\n\t\t}\r\n\r\n\t\tctx.beginPath();\r\n\r\n\t\tswitch (style) {\r\n\t\t// Default includes circle\r\n\t\tdefault:\r\n\t\t\tctx.arc(x, y, radius, 0, DOUBLE_PI);\r\n\t\t\tctx.closePath();\r\n\t\t\tbreak;\r\n\t\tcase 'triangle':\r\n\t\t\tctx.moveTo(x + Math.sin(rad) * radius, y - Math.cos(rad) * radius);\r\n\t\t\trad += TWO_THIRDS_PI;\r\n\t\t\tctx.lineTo(x + Math.sin(rad) * radius, y - Math.cos(rad) * radius);\r\n\t\t\trad += TWO_THIRDS_PI;\r\n\t\t\tctx.lineTo(x + Math.sin(rad) * radius, y - Math.cos(rad) * radius);\r\n\t\t\tctx.closePath();\r\n\t\t\tbreak;\r\n\t\tcase 'rectRounded':\r\n\t\t\t// NOTE: the rounded rect implementation changed to use `arc` instead of\r\n\t\t\t// `quadraticCurveTo` since it generates better results when rect is\r\n\t\t\t// almost a circle. 0.516 (instead of 0.5) produces results with visually\r\n\t\t\t// closer proportion to the previous impl and it is inscribed in the\r\n\t\t\t// circle with `radius`. For more details, see the following PRs:\r\n\t\t\t// https://github.com/chartjs/Chart.js/issues/5597\r\n\t\t\t// https://github.com/chartjs/Chart.js/issues/5858\r\n\t\t\tcornerRadius = radius * 0.516;\r\n\t\t\tsize = radius - cornerRadius;\r\n\t\t\txOffset = Math.cos(rad + QUARTER_PI) * size;\r\n\t\t\tyOffset = Math.sin(rad + QUARTER_PI) * size;\r\n\t\t\tctx.arc(x - xOffset, y - yOffset, cornerRadius, rad - PI, rad - HALF_PI);\r\n\t\t\tctx.arc(x + yOffset, y - xOffset, cornerRadius, rad - HALF_PI, rad);\r\n\t\t\tctx.arc(x + xOffset, y + yOffset, cornerRadius, rad, rad + HALF_PI);\r\n\t\t\tctx.arc(x - yOffset, y + xOffset, cornerRadius, rad + HALF_PI, rad + PI);\r\n\t\t\tctx.closePath();\r\n\t\t\tbreak;\r\n\t\tcase 'rect':\r\n\t\t\tif (!rotation) {\r\n\t\t\t\tsize = Math.SQRT1_2 * radius;\r\n\t\t\t\tctx.rect(x - size, y - size, 2 * size, 2 * size);\r\n\t\t\t\tbreak;\r\n\t\t\t}\r\n\t\t\trad += QUARTER_PI;\r\n\t\t\t/* falls through */\r\n\t\tcase 'rectRot':\r\n\t\t\txOffset = Math.cos(rad) * radius;\r\n\t\t\tyOffset = Math.sin(rad) * radius;\r\n\t\t\tctx.moveTo(x - xOffset, y - yOffset);\r\n\t\t\tctx.lineTo(x + yOffset, y - xOffset);\r\n\t\t\tctx.lineTo(x + xOffset, y + yOffset);\r\n\t\t\tctx.lineTo(x - yOffset, y + xOffset);\r\n\t\t\tctx.closePath();\r\n\t\t\tbreak;\r\n\t\tcase 'crossRot':\r\n\t\t\trad += QUARTER_PI;\r\n\t\t\t/* falls through */\r\n\t\tcase 'cross':\r\n\t\t\txOffset = Math.cos(rad) * radius;\r\n\t\t\tyOffset = Math.sin(rad) * radius;\r\n\t\t\tctx.moveTo(x - xOffset, y - yOffset);\r\n\t\t\tctx.lineTo(x + xOffset, y + yOffset);\r\n\t\t\tctx.moveTo(x + yOffset, y - xOffset);\r\n\t\t\tctx.lineTo(x - yOffset, y + xOffset);\r\n\t\t\tbreak;\r\n\t\tcase 'star':\r\n\t\t\txOffset = Math.cos(rad) * radius;\r\n\t\t\tyOffset = Math.sin(rad) * radius;\r\n\t\t\tctx.moveTo(x - xOffset, y - yOffset);\r\n\t\t\tctx.lineTo(x + xOffset, y + yOffset);\r\n\t\t\tctx.moveTo(x + yOffset, y - xOffset);\r\n\t\t\tctx.lineTo(x - yOffset, y + xOffset);\r\n\t\t\trad += QUARTER_PI;\r\n\t\t\txOffset = Math.cos(rad) * radius;\r\n\t\t\tyOffset = Math.sin(rad) * radius;\r\n\t\t\tctx.moveTo(x - xOffset, y - yOffset);\r\n\t\t\tctx.lineTo(x + xOffset, y + yOffset);\r\n\t\t\tctx.moveTo(x + yOffset, y - xOffset);\r\n\t\t\tctx.lineTo(x - yOffset, y + xOffset);\r\n\t\t\tbreak;\r\n\t\tcase 'line':\r\n\t\t\txOffset = Math.cos(rad) * radius;\r\n\t\t\tyOffset = Math.sin(rad) * radius;\r\n\t\t\tctx.moveTo(x - xOffset, y - yOffset);\r\n\t\t\tctx.lineTo(x + xOffset, y + yOffset);\r\n\t\t\tbreak;\r\n\t\tcase 'dash':\r\n\t\t\tctx.moveTo(x, y);\r\n\t\t\tctx.lineTo(x + Math.cos(rad) * radius, y + Math.sin(rad) * radius);\r\n\t\t\tbreak;\r\n\t\t}\r\n\r\n\t\tctx.fill();\r\n\t\tctx.stroke();\r\n\t},\r\n\r\n\t/**\r\n\t * Returns true if the point is inside the rectangle\r\n\t * @param {object} point - The point to test\r\n\t * @param {object} area - The rectangle\r\n\t * @returns {boolean}\r\n\t * @private\r\n\t */\r\n\t_isPointInArea: function(point, area) {\r\n\t\tvar epsilon = 1e-6; // 1e-6 is margin in pixels for accumulated error.\r\n\r\n\t\treturn point.x > area.left - epsilon && point.x < area.right + epsilon &&\r\n\t\t\tpoint.y > area.top - epsilon && point.y < area.bottom + epsilon;\r\n\t},\r\n\r\n\tclipArea: function(ctx, area) {\r\n\t\tctx.save();\r\n\t\tctx.beginPath();\r\n\t\tctx.rect(area.left, area.top, area.right - area.left, area.bottom - area.top);\r\n\t\tctx.clip();\r\n\t},\r\n\r\n\tunclipArea: function(ctx) {\r\n\t\tctx.restore();\r\n\t},\r\n\r\n\tlineTo: function(ctx, previous, target, flip) {\r\n\t\tvar stepped = target.steppedLine;\r\n\t\tif (stepped) {\r\n\t\t\tif (stepped === 'middle') {\r\n\t\t\t\tvar midpoint = (previous.x + target.x) / 2.0;\r\n\t\t\t\tctx.lineTo(midpoint, flip ? target.y : previous.y);\r\n\t\t\t\tctx.lineTo(midpoint, flip ? previous.y : target.y);\r\n\t\t\t} else if ((stepped === 'after' && !flip) || (stepped !== 'after' && flip)) {\r\n\t\t\t\tctx.lineTo(previous.x, target.y);\r\n\t\t\t} else {\r\n\t\t\t\tctx.lineTo(target.x, previous.y);\r\n\t\t\t}\r\n\t\t\tctx.lineTo(target.x, target.y);\r\n\t\t\treturn;\r\n\t\t}\r\n\r\n\t\tif (!target.tension) {\r\n\t\t\tctx.lineTo(target.x, target.y);\r\n\t\t\treturn;\r\n\t\t}\r\n\r\n\t\tctx.bezierCurveTo(\r\n\t\t\tflip ? previous.controlPointPreviousX : previous.controlPointNextX,\r\n\t\t\tflip ? previous.controlPointPreviousY : previous.controlPointNextY,\r\n\t\t\tflip ? target.controlPointNextX : target.controlPointPreviousX,\r\n\t\t\tflip ? target.controlPointNextY : target.controlPointPreviousY,\r\n\t\t\ttarget.x,\r\n\t\t\ttarget.y);\r\n\t}\r\n};\r\n\r\nvar helpers_canvas = exports$1;\r\n\r\n// DEPRECATIONS\r\n\r\n/**\r\n * Provided for backward compatibility, use Chart.helpers.canvas.clear instead.\r\n * @namespace Chart.helpers.clear\r\n * @deprecated since version 2.7.0\r\n * @todo remove at version 3\r\n * @private\r\n */\r\nhelpers_core.clear = exports$1.clear;\r\n\r\n/**\r\n * Provided for backward compatibility, use Chart.helpers.canvas.roundedRect instead.\r\n * @namespace Chart.helpers.drawRoundedRectangle\r\n * @deprecated since version 2.7.0\r\n * @todo remove at version 3\r\n * @private\r\n */\r\nhelpers_core.drawRoundedRectangle = function(ctx) {\r\n\tctx.beginPath();\r\n\texports$1.roundedRect.apply(exports$1, arguments);\r\n};\n\nvar defaults = {\r\n\t/**\r\n\t * @private\r\n\t */\r\n\t_set: function(scope, values) {\r\n\t\treturn helpers_core.merge(this[scope] || (this[scope] = {}), values);\r\n\t}\r\n};\r\n\r\n// TODO(v3): remove 'global' from namespace. all default are global and\r\n// there's inconsistency around which options are under 'global'\r\ndefaults._set('global', {\r\n\tdefaultColor: 'rgba(0,0,0,0.1)',\r\n\tdefaultFontColor: '#666',\r\n\tdefaultFontFamily: \"'Helvetica Neue', 'Helvetica', 'Arial', sans-serif\",\r\n\tdefaultFontSize: 12,\r\n\tdefaultFontStyle: 'normal',\r\n\tdefaultLineHeight: 1.2,\r\n\tshowLines: true\r\n});\r\n\r\nvar core_defaults = defaults;\n\nvar valueOrDefault = helpers_core.valueOrDefault;\r\n\r\n/**\r\n * Converts the given font object into a CSS font string.\r\n * @param {object} font - A font object.\r\n * @return {string} The CSS font string. See https://developer.mozilla.org/en-US/docs/Web/CSS/font\r\n * @private\r\n */\r\nfunction toFontString(font) {\r\n\tif (!font || helpers_core.isNullOrUndef(font.size) || helpers_core.isNullOrUndef(font.family)) {\r\n\t\treturn null;\r\n\t}\r\n\r\n\treturn (font.style ? font.style + ' ' : '')\r\n\t\t+ (font.weight ? font.weight + ' ' : '')\r\n\t\t+ font.size + 'px '\r\n\t\t+ font.family;\r\n}\r\n\r\n/**\r\n * @alias Chart.helpers.options\r\n * @namespace\r\n */\r\nvar helpers_options = {\r\n\t/**\r\n\t * Converts the given line height `value` in pixels for a specific font `size`.\r\n\t * @param {number|string} value - The lineHeight to parse (eg. 1.6, '14px', '75%', '1.6em').\r\n\t * @param {number} size - The font size (in pixels) used to resolve relative `value`.\r\n\t * @returns {number} The effective line height in pixels (size * 1.2 if value is invalid).\r\n\t * @see https://developer.mozilla.org/en-US/docs/Web/CSS/line-height\r\n\t * @since 2.7.0\r\n\t */\r\n\ttoLineHeight: function(value, size) {\r\n\t\tvar matches = ('' + value).match(/^(normal|(\\d+(?:\\.\\d+)?)(px|em|%)?)$/);\r\n\t\tif (!matches || matches[1] === 'normal') {\r\n\t\t\treturn size * 1.2;\r\n\t\t}\r\n\r\n\t\tvalue = +matches[2];\r\n\r\n\t\tswitch (matches[3]) {\r\n\t\tcase 'px':\r\n\t\t\treturn value;\r\n\t\tcase '%':\r\n\t\t\tvalue /= 100;\r\n\t\t\tbreak;\r\n\t\t}\r\n\r\n\t\treturn size * value;\r\n\t},\r\n\r\n\t/**\r\n\t * Converts the given value into a padding object with pre-computed width/height.\r\n\t * @param {number|object} value - If a number, set the value to all TRBL component,\r\n\t * else, if and object, use defined properties and sets undefined ones to 0.\r\n\t * @returns {object} The padding values (top, right, bottom, left, width, height)\r\n\t * @since 2.7.0\r\n\t */\r\n\ttoPadding: function(value) {\r\n\t\tvar t, r, b, l;\r\n\r\n\t\tif (helpers_core.isObject(value)) {\r\n\t\t\tt = +value.top || 0;\r\n\t\t\tr = +value.right || 0;\r\n\t\t\tb = +value.bottom || 0;\r\n\t\t\tl = +value.left || 0;\r\n\t\t} else {\r\n\t\t\tt = r = b = l = +value || 0;\r\n\t\t}\r\n\r\n\t\treturn {\r\n\t\t\ttop: t,\r\n\t\t\tright: r,\r\n\t\t\tbottom: b,\r\n\t\t\tleft: l,\r\n\t\t\theight: t + b,\r\n\t\t\twidth: l + r\r\n\t\t};\r\n\t},\r\n\r\n\t/**\r\n\t * Parses font options and returns the font object.\r\n\t * @param {object} options - A object that contains font options to be parsed.\r\n\t * @return {object} The font object.\r\n\t * @todo Support font.* options and renamed to toFont().\r\n\t * @private\r\n\t */\r\n\t_parseFont: function(options) {\r\n\t\tvar globalDefaults = core_defaults.global;\r\n\t\tvar size = valueOrDefault(options.fontSize, globalDefaults.defaultFontSize);\r\n\t\tvar font = {\r\n\t\t\tfamily: valueOrDefault(options.fontFamily, globalDefaults.defaultFontFamily),\r\n\t\t\tlineHeight: helpers_core.options.toLineHeight(valueOrDefault(options.lineHeight, globalDefaults.defaultLineHeight), size),\r\n\t\t\tsize: size,\r\n\t\t\tstyle: valueOrDefault(options.fontStyle, globalDefaults.defaultFontStyle),\r\n\t\t\tweight: null,\r\n\t\t\tstring: ''\r\n\t\t};\r\n\r\n\t\tfont.string = toFontString(font);\r\n\t\treturn font;\r\n\t},\r\n\r\n\t/**\r\n\t * Evaluates the given `inputs` sequentially and returns the first defined value.\r\n\t * @param {Array} inputs - An array of values, falling back to the last value.\r\n\t * @param {object} [context] - If defined and the current value is a function, the value\r\n\t * is called with `context` as first argument and the result becomes the new input.\r\n\t * @param {number} [index] - If defined and the current value is an array, the value\r\n\t * at `index` become the new input.\r\n\t * @param {object} [info] - object to return information about resolution in\r\n\t * @param {boolean} [info.cacheable] - Will be set to `false` if option is not cacheable.\r\n\t * @since 2.7.0\r\n\t */\r\n\tresolve: function(inputs, context, index, info) {\r\n\t\tvar cacheable = true;\r\n\t\tvar i, ilen, value;\r\n\r\n\t\tfor (i = 0, ilen = inputs.length; i < ilen; ++i) {\r\n\t\t\tvalue = inputs[i];\r\n\t\t\tif (value === undefined) {\r\n\t\t\t\tcontinue;\r\n\t\t\t}\r\n\t\t\tif (context !== undefined && typeof value === 'function') {\r\n\t\t\t\tvalue = value(context);\r\n\t\t\t\tcacheable = false;\r\n\t\t\t}\r\n\t\t\tif (index !== undefined && helpers_core.isArray(value)) {\r\n\t\t\t\tvalue = value[index];\r\n\t\t\t\tcacheable = false;\r\n\t\t\t}\r\n\t\t\tif (value !== undefined) {\r\n\t\t\t\tif (info && !cacheable) {\r\n\t\t\t\t\tinfo.cacheable = false;\r\n\t\t\t\t}\r\n\t\t\t\treturn value;\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n};\n\n/**\r\n * @alias Chart.helpers.math\r\n * @namespace\r\n */\r\nvar exports$2 = {\r\n\t/**\r\n\t * Returns an array of factors sorted from 1 to sqrt(value)\r\n\t * @private\r\n\t */\r\n\t_factorize: function(value) {\r\n\t\tvar result = [];\r\n\t\tvar sqrt = Math.sqrt(value);\r\n\t\tvar i;\r\n\r\n\t\tfor (i = 1; i < sqrt; i++) {\r\n\t\t\tif (value % i === 0) {\r\n\t\t\t\tresult.push(i);\r\n\t\t\t\tresult.push(value / i);\r\n\t\t\t}\r\n\t\t}\r\n\t\tif (sqrt === (sqrt | 0)) { // if value is a square number\r\n\t\t\tresult.push(sqrt);\r\n\t\t}\r\n\r\n\t\tresult.sort(function(a, b) {\r\n\t\t\treturn a - b;\r\n\t\t}).pop();\r\n\t\treturn result;\r\n\t},\r\n\r\n\tlog10: Math.log10 || function(x) {\r\n\t\tvar exponent = Math.log(x) * Math.LOG10E; // Math.LOG10E = 1 / Math.LN10.\r\n\t\t// Check for whole powers of 10,\r\n\t\t// which due to floating point rounding error should be corrected.\r\n\t\tvar powerOf10 = Math.round(exponent);\r\n\t\tvar isPowerOf10 = x === Math.pow(10, powerOf10);\r\n\r\n\t\treturn isPowerOf10 ? powerOf10 : exponent;\r\n\t}\r\n};\r\n\r\nvar helpers_math = exports$2;\r\n\r\n// DEPRECATIONS\r\n\r\n/**\r\n * Provided for backward compatibility, use Chart.helpers.math.log10 instead.\r\n * @namespace Chart.helpers.log10\r\n * @deprecated since version 2.9.0\r\n * @todo remove at version 3\r\n * @private\r\n */\r\nhelpers_core.log10 = exports$2.log10;\n\nvar getRtlAdapter = function(rectX, width) {\r\n\treturn {\r\n\t\tx: function(x) {\r\n\t\t\treturn rectX + rectX + width - x;\r\n\t\t},\r\n\t\tsetWidth: function(w) {\r\n\t\t\twidth = w;\r\n\t\t},\r\n\t\ttextAlign: function(align) {\r\n\t\t\tif (align === 'center') {\r\n\t\t\t\treturn align;\r\n\t\t\t}\r\n\t\t\treturn align === 'right' ? 'left' : 'right';\r\n\t\t},\r\n\t\txPlus: function(x, value) {\r\n\t\t\treturn x - value;\r\n\t\t},\r\n\t\tleftForLtr: function(x, itemWidth) {\r\n\t\t\treturn x - itemWidth;\r\n\t\t},\r\n\t};\r\n};\r\n\r\nvar getLtrAdapter = function() {\r\n\treturn {\r\n\t\tx: function(x) {\r\n\t\t\treturn x;\r\n\t\t},\r\n\t\tsetWidth: function(w) { // eslint-disable-line no-unused-vars\r\n\t\t},\r\n\t\ttextAlign: function(align) {\r\n\t\t\treturn align;\r\n\t\t},\r\n\t\txPlus: function(x, value) {\r\n\t\t\treturn x + value;\r\n\t\t},\r\n\t\tleftForLtr: function(x, _itemWidth) { // eslint-disable-line no-unused-vars\r\n\t\t\treturn x;\r\n\t\t},\r\n\t};\r\n};\r\n\r\nvar getAdapter = function(rtl, rectX, width) {\r\n\treturn rtl ? getRtlAdapter(rectX, width) : getLtrAdapter();\r\n};\r\n\r\nvar overrideTextDirection = function(ctx, direction) {\r\n\tvar style, original;\r\n\tif (direction === 'ltr' || direction === 'rtl') {\r\n\t\tstyle = ctx.canvas.style;\r\n\t\toriginal = [\r\n\t\t\tstyle.getPropertyValue('direction'),\r\n\t\t\tstyle.getPropertyPriority('direction'),\r\n\t\t];\r\n\r\n\t\tstyle.setProperty('direction', direction, 'important');\r\n\t\tctx.prevTextDirection = original;\r\n\t}\r\n};\r\n\r\nvar restoreTextDirection = function(ctx) {\r\n\tvar original = ctx.prevTextDirection;\r\n\tif (original !== undefined) {\r\n\t\tdelete ctx.prevTextDirection;\r\n\t\tctx.canvas.style.setProperty('direction', original[0], original[1]);\r\n\t}\r\n};\r\n\r\nvar helpers_rtl = {\r\n\tgetRtlAdapter: getAdapter,\r\n\toverrideTextDirection: overrideTextDirection,\r\n\trestoreTextDirection: restoreTextDirection,\r\n};\n\nvar helpers$1 = helpers_core;\r\nvar easing = helpers_easing;\r\nvar canvas = helpers_canvas;\r\nvar options = helpers_options;\r\nvar math = helpers_math;\r\nvar rtl = helpers_rtl;\nhelpers$1.easing = easing;\nhelpers$1.canvas = canvas;\nhelpers$1.options = options;\nhelpers$1.math = math;\nhelpers$1.rtl = rtl;\n\nfunction interpolate(start, view, model, ease) {\r\n\tvar keys = Object.keys(model);\r\n\tvar i, ilen, key, actual, origin, target, type, c0, c1;\r\n\r\n\tfor (i = 0, ilen = keys.length; i < ilen; ++i) {\r\n\t\tkey = keys[i];\r\n\r\n\t\ttarget = model[key];\r\n\r\n\t\t// if a value is added to the model after pivot() has been called, the view\r\n\t\t// doesn't contain it, so let's initialize the view to the target value.\r\n\t\tif (!view.hasOwnProperty(key)) {\r\n\t\t\tview[key] = target;\r\n\t\t}\r\n\r\n\t\tactual = view[key];\r\n\r\n\t\tif (actual === target || key[0] === '_') {\r\n\t\t\tcontinue;\r\n\t\t}\r\n\r\n\t\tif (!start.hasOwnProperty(key)) {\r\n\t\t\tstart[key] = actual;\r\n\t\t}\r\n\r\n\t\torigin = start[key];\r\n\r\n\t\ttype = typeof target;\r\n\r\n\t\tif (type === typeof origin) {\r\n\t\t\tif (type === 'string') {\r\n\t\t\t\tc0 = chartjsColor(origin);\r\n\t\t\t\tif (c0.valid) {\r\n\t\t\t\t\tc1 = chartjsColor(target);\r\n\t\t\t\t\tif (c1.valid) {\r\n\t\t\t\t\t\tview[key] = c1.mix(c0, ease).rgbString();\r\n\t\t\t\t\t\tcontinue;\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t} else if (helpers$1.isFinite(origin) && helpers$1.isFinite(target)) {\r\n\t\t\t\tview[key] = origin + (target - origin) * ease;\r\n\t\t\t\tcontinue;\r\n\t\t\t}\r\n\t\t}\r\n\r\n\t\tview[key] = target;\r\n\t}\r\n}\r\n\r\nvar Element = function(configuration) {\r\n\thelpers$1.extend(this, configuration);\r\n\tthis.initialize.apply(this, arguments);\r\n};\r\n\r\nhelpers$1.extend(Element.prototype, {\r\n\t_type: undefined,\r\n\r\n\tinitialize: function() {\r\n\t\tthis.hidden = false;\r\n\t},\r\n\r\n\tpivot: function() {\r\n\t\tvar me = this;\r\n\t\tif (!me._view) {\r\n\t\t\tme._view = helpers$1.extend({}, me._model);\r\n\t\t}\r\n\t\tme._start = {};\r\n\t\treturn me;\r\n\t},\r\n\r\n\ttransition: function(ease) {\r\n\t\tvar me = this;\r\n\t\tvar model = me._model;\r\n\t\tvar start = me._start;\r\n\t\tvar view = me._view;\r\n\r\n\t\t// No animation -> No Transition\r\n\t\tif (!model || ease === 1) {\r\n\t\t\tme._view = helpers$1.extend({}, model);\r\n\t\t\tme._start = null;\r\n\t\t\treturn me;\r\n\t\t}\r\n\r\n\t\tif (!view) {\r\n\t\t\tview = me._view = {};\r\n\t\t}\r\n\r\n\t\tif (!start) {\r\n\t\t\tstart = me._start = {};\r\n\t\t}\r\n\r\n\t\tinterpolate(start, view, model, ease);\r\n\r\n\t\treturn me;\r\n\t},\r\n\r\n\ttooltipPosition: function() {\r\n\t\treturn {\r\n\t\t\tx: this._model.x,\r\n\t\t\ty: this._model.y\r\n\t\t};\r\n\t},\r\n\r\n\thasValue: function() {\r\n\t\treturn helpers$1.isNumber(this._model.x) && helpers$1.isNumber(this._model.y);\r\n\t}\r\n});\r\n\r\nElement.extend = helpers$1.inherits;\r\n\r\nvar core_element = Element;\n\nvar exports$3 = core_element.extend({\r\n\tchart: null, // the animation associated chart instance\r\n\tcurrentStep: 0, // the current animation step\r\n\tnumSteps: 60, // default number of steps\r\n\teasing: '', // the easing to use for this animation\r\n\trender: null, // render function used by the animation service\r\n\r\n\tonAnimationProgress: null, // user specified callback to fire on each step of the animation\r\n\tonAnimationComplete: null, // user specified callback to fire when the animation finishes\r\n});\r\n\r\nvar core_animation = exports$3;\r\n\r\n// DEPRECATIONS\r\n\r\n/**\r\n * Provided for backward compatibility, use Chart.Animation instead\r\n * @prop Chart.Animation#animationObject\r\n * @deprecated since version 2.6.0\r\n * @todo remove at version 3\r\n */\r\nObject.defineProperty(exports$3.prototype, 'animationObject', {\r\n\tget: function() {\r\n\t\treturn this;\r\n\t}\r\n});\r\n\r\n/**\r\n * Provided for backward compatibility, use Chart.Animation#chart instead\r\n * @prop Chart.Animation#chartInstance\r\n * @deprecated since version 2.6.0\r\n * @todo remove at version 3\r\n */\r\nObject.defineProperty(exports$3.prototype, 'chartInstance', {\r\n\tget: function() {\r\n\t\treturn this.chart;\r\n\t},\r\n\tset: function(value) {\r\n\t\tthis.chart = value;\r\n\t}\r\n});\n\ncore_defaults._set('global', {\r\n\tanimation: {\r\n\t\tduration: 1000,\r\n\t\teasing: 'easeOutQuart',\r\n\t\tonProgress: helpers$1.noop,\r\n\t\tonComplete: helpers$1.noop\r\n\t}\r\n});\r\n\r\nvar core_animations = {\r\n\tanimations: [],\r\n\trequest: null,\r\n\r\n\t/**\r\n\t * @param {Chart} chart - The chart to animate.\r\n\t * @param {Chart.Animation} animation - The animation that we will animate.\r\n\t * @param {number} duration - The animation duration in ms.\r\n\t * @param {boolean} lazy - if true, the chart is not marked as animating to enable more responsive interactions\r\n\t */\r\n\taddAnimation: function(chart, animation, duration, lazy) {\r\n\t\tvar animations = this.animations;\r\n\t\tvar i, ilen;\r\n\r\n\t\tanimation.chart = chart;\r\n\t\tanimation.startTime = Date.now();\r\n\t\tanimation.duration = duration;\r\n\r\n\t\tif (!lazy) {\r\n\t\t\tchart.animating = true;\r\n\t\t}\r\n\r\n\t\tfor (i = 0, ilen = animations.length; i < ilen; ++i) {\r\n\t\t\tif (animations[i].chart === chart) {\r\n\t\t\t\tanimations[i] = animation;\r\n\t\t\t\treturn;\r\n\t\t\t}\r\n\t\t}\r\n\r\n\t\tanimations.push(animation);\r\n\r\n\t\t// If there are no animations queued, manually kickstart a digest, for lack of a better word\r\n\t\tif (animations.length === 1) {\r\n\t\t\tthis.requestAnimationFrame();\r\n\t\t}\r\n\t},\r\n\r\n\tcancelAnimation: function(chart) {\r\n\t\tvar index = helpers$1.findIndex(this.animations, function(animation) {\r\n\t\t\treturn animation.chart === chart;\r\n\t\t});\r\n\r\n\t\tif (index !== -1) {\r\n\t\t\tthis.animations.splice(index, 1);\r\n\t\t\tchart.animating = false;\r\n\t\t}\r\n\t},\r\n\r\n\trequestAnimationFrame: function() {\r\n\t\tvar me = this;\r\n\t\tif (me.request === null) {\r\n\t\t\t// Skip animation frame requests until the active one is executed.\r\n\t\t\t// This can happen when processing mouse events, e.g. 'mousemove'\r\n\t\t\t// and 'mouseout' events will trigger multiple renders.\r\n\t\t\tme.request = helpers$1.requestAnimFrame.call(window, function() {\r\n\t\t\t\tme.request = null;\r\n\t\t\t\tme.startDigest();\r\n\t\t\t});\r\n\t\t}\r\n\t},\r\n\r\n\t/**\r\n\t * @private\r\n\t */\r\n\tstartDigest: function() {\r\n\t\tvar me = this;\r\n\r\n\t\tme.advance();\r\n\r\n\t\t// Do we have more stuff to animate?\r\n\t\tif (me.animations.length > 0) {\r\n\t\t\tme.requestAnimationFrame();\r\n\t\t}\r\n\t},\r\n\r\n\t/**\r\n\t * @private\r\n\t */\r\n\tadvance: function() {\r\n\t\tvar animations = this.animations;\r\n\t\tvar animation, chart, numSteps, nextStep;\r\n\t\tvar i = 0;\r\n\r\n\t\t// 1 animation per chart, so we are looping charts here\r\n\t\twhile (i < animations.length) {\r\n\t\t\tanimation = animations[i];\r\n\t\t\tchart = animation.chart;\r\n\t\t\tnumSteps = animation.numSteps;\r\n\r\n\t\t\t// Make sure that currentStep starts at 1\r\n\t\t\t// https://github.com/chartjs/Chart.js/issues/6104\r\n\t\t\tnextStep = Math.floor((Date.now() - animation.startTime) / animation.duration * numSteps) + 1;\r\n\t\t\tanimation.currentStep = Math.min(nextStep, numSteps);\r\n\r\n\t\t\thelpers$1.callback(animation.render, [chart, animation], chart);\r\n\t\t\thelpers$1.callback(animation.onAnimationProgress, [animation], chart);\r\n\r\n\t\t\tif (animation.currentStep >= numSteps) {\r\n\t\t\t\thelpers$1.callback(animation.onAnimationComplete, [animation], chart);\r\n\t\t\t\tchart.animating = false;\r\n\t\t\t\tanimations.splice(i, 1);\r\n\t\t\t} else {\r\n\t\t\t\t++i;\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n};\n\nvar resolve = helpers$1.options.resolve;\r\n\r\nvar arrayEvents = ['push', 'pop', 'shift', 'splice', 'unshift'];\r\n\r\n/**\r\n * Hooks the array methods that add or remove values ('push', pop', 'shift', 'splice',\r\n * 'unshift') and notify the listener AFTER the array has been altered. Listeners are\r\n * called on the 'onData*' callbacks (e.g. onDataPush, etc.) with same arguments.\r\n */\r\nfunction listenArrayEvents(array, listener) {\r\n\tif (array._chartjs) {\r\n\t\tarray._chartjs.listeners.push(listener);\r\n\t\treturn;\r\n\t}\r\n\r\n\tObject.defineProperty(array, '_chartjs', {\r\n\t\tconfigurable: true,\r\n\t\tenumerable: false,\r\n\t\tvalue: {\r\n\t\t\tlisteners: [listener]\r\n\t\t}\r\n\t});\r\n\r\n\tarrayEvents.forEach(function(key) {\r\n\t\tvar method = 'onData' + key.charAt(0).toUpperCase() + key.slice(1);\r\n\t\tvar base = array[key];\r\n\r\n\t\tObject.defineProperty(array, key, {\r\n\t\t\tconfigurable: true,\r\n\t\t\tenumerable: false,\r\n\t\t\tvalue: function() {\r\n\t\t\t\tvar args = Array.prototype.slice.call(arguments);\r\n\t\t\t\tvar res = base.apply(this, args);\r\n\r\n\t\t\t\thelpers$1.each(array._chartjs.listeners, function(object) {\r\n\t\t\t\t\tif (typeof object[method] === 'function') {\r\n\t\t\t\t\t\tobject[method].apply(object, args);\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\r\n\t\t\t\treturn res;\r\n\t\t\t}\r\n\t\t});\r\n\t});\r\n}\r\n\r\n/**\r\n * Removes the given array event listener and cleanup extra attached properties (such as\r\n * the _chartjs stub and overridden methods) if array doesn't have any more listeners.\r\n */\r\nfunction unlistenArrayEvents(array, listener) {\r\n\tvar stub = array._chartjs;\r\n\tif (!stub) {\r\n\t\treturn;\r\n\t}\r\n\r\n\tvar listeners = stub.listeners;\r\n\tvar index = listeners.indexOf(listener);\r\n\tif (index !== -1) {\r\n\t\tlisteners.splice(index, 1);\r\n\t}\r\n\r\n\tif (listeners.length > 0) {\r\n\t\treturn;\r\n\t}\r\n\r\n\tarrayEvents.forEach(function(key) {\r\n\t\tdelete array[key];\r\n\t});\r\n\r\n\tdelete array._chartjs;\r\n}\r\n\r\n// Base class for all dataset controllers (line, bar, etc)\r\nvar DatasetController = function(chart, datasetIndex) {\r\n\tthis.initialize(chart, datasetIndex);\r\n};\r\n\r\nhelpers$1.extend(DatasetController.prototype, {\r\n\r\n\t/**\r\n\t * Element type used to generate a meta dataset (e.g. Chart.element.Line).\r\n\t * @type {Chart.core.element}\r\n\t */\r\n\tdatasetElementType: null,\r\n\r\n\t/**\r\n\t * Element type used to generate a meta data (e.g. Chart.element.Point).\r\n\t * @type {Chart.core.element}\r\n\t */\r\n\tdataElementType: null,\r\n\r\n\t/**\r\n\t * Dataset element option keys to be resolved in _resolveDatasetElementOptions.\r\n\t * A derived controller may override this to resolve controller-specific options.\r\n\t * The keys defined here are for backward compatibility for legend styles.\r\n\t * @private\r\n\t */\r\n\t_datasetElementOptions: [\r\n\t\t'backgroundColor',\r\n\t\t'borderCapStyle',\r\n\t\t'borderColor',\r\n\t\t'borderDash',\r\n\t\t'borderDashOffset',\r\n\t\t'borderJoinStyle',\r\n\t\t'borderWidth'\r\n\t],\r\n\r\n\t/**\r\n\t * Data element option keys to be resolved in _resolveDataElementOptions.\r\n\t * A derived controller may override this to resolve controller-specific options.\r\n\t * The keys defined here are for backward compatibility for legend styles.\r\n\t * @private\r\n\t */\r\n\t_dataElementOptions: [\r\n\t\t'backgroundColor',\r\n\t\t'borderColor',\r\n\t\t'borderWidth',\r\n\t\t'pointStyle'\r\n\t],\r\n\r\n\tinitialize: function(chart, datasetIndex) {\r\n\t\tvar me = this;\r\n\t\tme.chart = chart;\r\n\t\tme.index = datasetIndex;\r\n\t\tme.linkScales();\r\n\t\tme.addElements();\r\n\t\tme._type = me.getMeta().type;\r\n\t},\r\n\r\n\tupdateIndex: function(datasetIndex) {\r\n\t\tthis.index = datasetIndex;\r\n\t},\r\n\r\n\tlinkScales: function() {\r\n\t\tvar me = this;\r\n\t\tvar meta = me.getMeta();\r\n\t\tvar chart = me.chart;\r\n\t\tvar scales = chart.scales;\r\n\t\tvar dataset = me.getDataset();\r\n\t\tvar scalesOpts = chart.options.scales;\r\n\r\n\t\tif (meta.xAxisID === null || !(meta.xAxisID in scales) || dataset.xAxisID) {\r\n\t\t\tmeta.xAxisID = dataset.xAxisID || scalesOpts.xAxes[0].id;\r\n\t\t}\r\n\t\tif (meta.yAxisID === null || !(meta.yAxisID in scales) || dataset.yAxisID) {\r\n\t\t\tmeta.yAxisID = dataset.yAxisID || scalesOpts.yAxes[0].id;\r\n\t\t}\r\n\t},\r\n\r\n\tgetDataset: function() {\r\n\t\treturn this.chart.data.datasets[this.index];\r\n\t},\r\n\r\n\tgetMeta: function() {\r\n\t\treturn this.chart.getDatasetMeta(this.index);\r\n\t},\r\n\r\n\tgetScaleForId: function(scaleID) {\r\n\t\treturn this.chart.scales[scaleID];\r\n\t},\r\n\r\n\t/**\r\n\t * @private\r\n\t */\r\n\t_getValueScaleId: function() {\r\n\t\treturn this.getMeta().yAxisID;\r\n\t},\r\n\r\n\t/**\r\n\t * @private\r\n\t */\r\n\t_getIndexScaleId: function() {\r\n\t\treturn this.getMeta().xAxisID;\r\n\t},\r\n\r\n\t/**\r\n\t * @private\r\n\t */\r\n\t_getValueScale: function() {\r\n\t\treturn this.getScaleForId(this._getValueScaleId());\r\n\t},\r\n\r\n\t/**\r\n\t * @private\r\n\t */\r\n\t_getIndexScale: function() {\r\n\t\treturn this.getScaleForId(this._getIndexScaleId());\r\n\t},\r\n\r\n\treset: function() {\r\n\t\tthis._update(true);\r\n\t},\r\n\r\n\t/**\r\n\t * @private\r\n\t */\r\n\tdestroy: function() {\r\n\t\tif (this._data) {\r\n\t\t\tunlistenArrayEvents(this._data, this);\r\n\t\t}\r\n\t},\r\n\r\n\tcreateMetaDataset: function() {\r\n\t\tvar me = this;\r\n\t\tvar type = me.datasetElementType;\r\n\t\treturn type && new type({\r\n\t\t\t_chart: me.chart,\r\n\t\t\t_datasetIndex: me.index\r\n\t\t});\r\n\t},\r\n\r\n\tcreateMetaData: function(index) {\r\n\t\tvar me = this;\r\n\t\tvar type = me.dataElementType;\r\n\t\treturn type && new type({\r\n\t\t\t_chart: me.chart,\r\n\t\t\t_datasetIndex: me.index,\r\n\t\t\t_index: index\r\n\t\t});\r\n\t},\r\n\r\n\taddElements: function() {\r\n\t\tvar me = this;\r\n\t\tvar meta = me.getMeta();\r\n\t\tvar data = me.getDataset().data || [];\r\n\t\tvar metaData = meta.data;\r\n\t\tvar i, ilen;\r\n\r\n\t\tfor (i = 0, ilen = data.length; i < ilen; ++i) {\r\n\t\t\tmetaData[i] = metaData[i] || me.createMetaData(i);\r\n\t\t}\r\n\r\n\t\tmeta.dataset = meta.dataset || me.createMetaDataset();\r\n\t},\r\n\r\n\taddElementAndReset: function(index) {\r\n\t\tvar element = this.createMetaData(index);\r\n\t\tthis.getMeta().data.splice(index, 0, element);\r\n\t\tthis.updateElement(element, index, true);\r\n\t},\r\n\r\n\tbuildOrUpdateElements: function() {\r\n\t\tvar me = this;\r\n\t\tvar dataset = me.getDataset();\r\n\t\tvar data = dataset.data || (dataset.data = []);\r\n\r\n\t\t// In order to correctly handle data addition/deletion animation (an thus simulate\r\n\t\t// real-time charts), we need to monitor these data modifications and synchronize\r\n\t\t// the internal meta data accordingly.\r\n\t\tif (me._data !== data) {\r\n\t\t\tif (me._data) {\r\n\t\t\t\t// This case happens when the user replaced the data array instance.\r\n\t\t\t\tunlistenArrayEvents(me._data, me);\r\n\t\t\t}\r\n\r\n\t\t\tif (data && Object.isExtensible(data)) {\r\n\t\t\t\tlistenArrayEvents(data, me);\r\n\t\t\t}\r\n\t\t\tme._data = data;\r\n\t\t}\r\n\r\n\t\t// Re-sync meta data in case the user replaced the data array or if we missed\r\n\t\t// any updates and so make sure that we handle number of datapoints changing.\r\n\t\tme.resyncElements();\r\n\t},\r\n\r\n\t/**\r\n\t * Returns the merged user-supplied and default dataset-level options\r\n\t * @private\r\n\t */\r\n\t_configure: function() {\r\n\t\tvar me = this;\r\n\t\tme._config = helpers$1.merge(Object.create(null), [\r\n\t\t\tme.chart.options.datasets[me._type],\r\n\t\t\tme.getDataset(),\r\n\t\t], {\r\n\t\t\tmerger: function(key, target, source) {\r\n\t\t\t\tif (key !== '_meta' && key !== 'data') {\r\n\t\t\t\t\thelpers$1._merger(key, target, source);\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t});\r\n\t},\r\n\r\n\t_update: function(reset) {\r\n\t\tvar me = this;\r\n\t\tme._configure();\r\n\t\tme._cachedDataOpts = null;\r\n\t\tme.update(reset);\r\n\t},\r\n\r\n\tupdate: helpers$1.noop,\r\n\r\n\ttransition: function(easingValue) {\r\n\t\tvar meta = this.getMeta();\r\n\t\tvar elements = meta.data || [];\r\n\t\tvar ilen = elements.length;\r\n\t\tvar i = 0;\r\n\r\n\t\tfor (; i < ilen; ++i) {\r\n\t\t\telements[i].transition(easingValue);\r\n\t\t}\r\n\r\n\t\tif (meta.dataset) {\r\n\t\t\tmeta.dataset.transition(easingValue);\r\n\t\t}\r\n\t},\r\n\r\n\tdraw: function() {\r\n\t\tvar meta = this.getMeta();\r\n\t\tvar elements = meta.data || [];\r\n\t\tvar ilen = elements.length;\r\n\t\tvar i = 0;\r\n\r\n\t\tif (meta.dataset) {\r\n\t\t\tmeta.dataset.draw();\r\n\t\t}\r\n\r\n\t\tfor (; i < ilen; ++i) {\r\n\t\t\telements[i].draw();\r\n\t\t}\r\n\t},\r\n\r\n\t/**\r\n\t * Returns a set of predefined style properties that should be used to represent the dataset\r\n\t * or the data if the index is specified\r\n\t * @param {number} index - data index\r\n\t * @return {IStyleInterface} style object\r\n\t */\r\n\tgetStyle: function(index) {\r\n\t\tvar me = this;\r\n\t\tvar meta = me.getMeta();\r\n\t\tvar dataset = meta.dataset;\r\n\t\tvar style;\r\n\r\n\t\tme._configure();\r\n\t\tif (dataset && index === undefined) {\r\n\t\t\tstyle = me._resolveDatasetElementOptions(dataset || {});\r\n\t\t} else {\r\n\t\t\tindex = index || 0;\r\n\t\t\tstyle = me._resolveDataElementOptions(meta.data[index] || {}, index);\r\n\t\t}\r\n\r\n\t\tif (style.fill === false || style.fill === null) {\r\n\t\t\tstyle.backgroundColor = style.borderColor;\r\n\t\t}\r\n\r\n\t\treturn style;\r\n\t},\r\n\r\n\t/**\r\n\t * @private\r\n\t */\r\n\t_resolveDatasetElementOptions: function(element, hover) {\r\n\t\tvar me = this;\r\n\t\tvar chart = me.chart;\r\n\t\tvar datasetOpts = me._config;\r\n\t\tvar custom = element.custom || {};\r\n\t\tvar options = chart.options.elements[me.datasetElementType.prototype._type] || {};\r\n\t\tvar elementOptions = me._datasetElementOptions;\r\n\t\tvar values = {};\r\n\t\tvar i, ilen, key, readKey;\r\n\r\n\t\t// Scriptable options\r\n\t\tvar context = {\r\n\t\t\tchart: chart,\r\n\t\t\tdataset: me.getDataset(),\r\n\t\t\tdatasetIndex: me.index,\r\n\t\t\thover: hover\r\n\t\t};\r\n\r\n\t\tfor (i = 0, ilen = elementOptions.length; i < ilen; ++i) {\r\n\t\t\tkey = elementOptions[i];\r\n\t\t\treadKey = hover ? 'hover' + key.charAt(0).toUpperCase() + key.slice(1) : key;\r\n\t\t\tvalues[key] = resolve([\r\n\t\t\t\tcustom[readKey],\r\n\t\t\t\tdatasetOpts[readKey],\r\n\t\t\t\toptions[readKey]\r\n\t\t\t], context);\r\n\t\t}\r\n\r\n\t\treturn values;\r\n\t},\r\n\r\n\t/**\r\n\t * @private\r\n\t */\r\n\t_resolveDataElementOptions: function(element, index) {\r\n\t\tvar me = this;\r\n\t\tvar custom = element && element.custom;\r\n\t\tvar cached = me._cachedDataOpts;\r\n\t\tif (cached && !custom) {\r\n\t\t\treturn cached;\r\n\t\t}\r\n\t\tvar chart = me.chart;\r\n\t\tvar datasetOpts = me._config;\r\n\t\tvar options = chart.options.elements[me.dataElementType.prototype._type] || {};\r\n\t\tvar elementOptions = me._dataElementOptions;\r\n\t\tvar values = {};\r\n\r\n\t\t// Scriptable options\r\n\t\tvar context = {\r\n\t\t\tchart: chart,\r\n\t\t\tdataIndex: index,\r\n\t\t\tdataset: me.getDataset(),\r\n\t\t\tdatasetIndex: me.index\r\n\t\t};\r\n\r\n\t\t// `resolve` sets cacheable to `false` if any option is indexed or scripted\r\n\t\tvar info = {cacheable: !custom};\r\n\r\n\t\tvar keys, i, ilen, key;\r\n\r\n\t\tcustom = custom || {};\r\n\r\n\t\tif (helpers$1.isArray(elementOptions)) {\r\n\t\t\tfor (i = 0, ilen = elementOptions.length; i < ilen; ++i) {\r\n\t\t\t\tkey = elementOptions[i];\r\n\t\t\t\tvalues[key] = resolve([\r\n\t\t\t\t\tcustom[key],\r\n\t\t\t\t\tdatasetOpts[key],\r\n\t\t\t\t\toptions[key]\r\n\t\t\t\t], context, index, info);\r\n\t\t\t}\r\n\t\t} else {\r\n\t\t\tkeys = Object.keys(elementOptions);\r\n\t\t\tfor (i = 0, ilen = keys.length; i < ilen; ++i) {\r\n\t\t\t\tkey = keys[i];\r\n\t\t\t\tvalues[key] = resolve([\r\n\t\t\t\t\tcustom[key],\r\n\t\t\t\t\tdatasetOpts[elementOptions[key]],\r\n\t\t\t\t\tdatasetOpts[key],\r\n\t\t\t\t\toptions[key]\r\n\t\t\t\t], context, index, info);\r\n\t\t\t}\r\n\t\t}\r\n\r\n\t\tif (info.cacheable) {\r\n\t\t\tme._cachedDataOpts = Object.freeze(values);\r\n\t\t}\r\n\r\n\t\treturn values;\r\n\t},\r\n\r\n\tremoveHoverStyle: function(element) {\r\n\t\thelpers$1.merge(element._model, element.$previousStyle || {});\r\n\t\tdelete element.$previousStyle;\r\n\t},\r\n\r\n\tsetHoverStyle: function(element) {\r\n\t\tvar dataset = this.chart.data.datasets[element._datasetIndex];\r\n\t\tvar index = element._index;\r\n\t\tvar custom = element.custom || {};\r\n\t\tvar model = element._model;\r\n\t\tvar getHoverColor = helpers$1.getHoverColor;\r\n\r\n\t\telement.$previousStyle = {\r\n\t\t\tbackgroundColor: model.backgroundColor,\r\n\t\t\tborderColor: model.borderColor,\r\n\t\t\tborderWidth: model.borderWidth\r\n\t\t};\r\n\r\n\t\tmodel.backgroundColor = resolve([custom.hoverBackgroundColor, dataset.hoverBackgroundColor, getHoverColor(model.backgroundColor)], undefined, index);\r\n\t\tmodel.borderColor = resolve([custom.hoverBorderColor, dataset.hoverBorderColor, getHoverColor(model.borderColor)], undefined, index);\r\n\t\tmodel.borderWidth = resolve([custom.hoverBorderWidth, dataset.hoverBorderWidth, model.borderWidth], undefined, index);\r\n\t},\r\n\r\n\t/**\r\n\t * @private\r\n\t */\r\n\t_removeDatasetHoverStyle: function() {\r\n\t\tvar element = this.getMeta().dataset;\r\n\r\n\t\tif (element) {\r\n\t\t\tthis.removeHoverStyle(element);\r\n\t\t}\r\n\t},\r\n\r\n\t/**\r\n\t * @private\r\n\t */\r\n\t_setDatasetHoverStyle: function() {\r\n\t\tvar element = this.getMeta().dataset;\r\n\t\tvar prev = {};\r\n\t\tvar i, ilen, key, keys, hoverOptions, model;\r\n\r\n\t\tif (!element) {\r\n\t\t\treturn;\r\n\t\t}\r\n\r\n\t\tmodel = element._model;\r\n\t\thoverOptions = this._resolveDatasetElementOptions(element, true);\r\n\r\n\t\tkeys = Object.keys(hoverOptions);\r\n\t\tfor (i = 0, ilen = keys.length; i < ilen; ++i) {\r\n\t\t\tkey = keys[i];\r\n\t\t\tprev[key] = model[key];\r\n\t\t\tmodel[key] = hoverOptions[key];\r\n\t\t}\r\n\r\n\t\telement.$previousStyle = prev;\r\n\t},\r\n\r\n\t/**\r\n\t * @private\r\n\t */\r\n\tresyncElements: function() {\r\n\t\tvar me = this;\r\n\t\tvar meta = me.getMeta();\r\n\t\tvar data = me.getDataset().data;\r\n\t\tvar numMeta = meta.data.length;\r\n\t\tvar numData = data.length;\r\n\r\n\t\tif (numData < numMeta) {\r\n\t\t\tmeta.data.splice(numData, numMeta - numData);\r\n\t\t} else if (numData > numMeta) {\r\n\t\t\tme.insertElements(numMeta, numData - numMeta);\r\n\t\t}\r\n\t},\r\n\r\n\t/**\r\n\t * @private\r\n\t */\r\n\tinsertElements: function(start, count) {\r\n\t\tfor (var i = 0; i < count; ++i) {\r\n\t\t\tthis.addElementAndReset(start + i);\r\n\t\t}\r\n\t},\r\n\r\n\t/**\r\n\t * @private\r\n\t */\r\n\tonDataPush: function() {\r\n\t\tvar count = arguments.length;\r\n\t\tthis.insertElements(this.getDataset().data.length - count, count);\r\n\t},\r\n\r\n\t/**\r\n\t * @private\r\n\t */\r\n\tonDataPop: function() {\r\n\t\tthis.getMeta().data.pop();\r\n\t},\r\n\r\n\t/**\r\n\t * @private\r\n\t */\r\n\tonDataShift: function() {\r\n\t\tthis.getMeta().data.shift();\r\n\t},\r\n\r\n\t/**\r\n\t * @private\r\n\t */\r\n\tonDataSplice: function(start, count) {\r\n\t\tthis.getMeta().data.splice(start, count);\r\n\t\tthis.insertElements(start, arguments.length - 2);\r\n\t},\r\n\r\n\t/**\r\n\t * @private\r\n\t */\r\n\tonDataUnshift: function() {\r\n\t\tthis.insertElements(0, arguments.length);\r\n\t}\r\n});\r\n\r\nDatasetController.extend = helpers$1.inherits;\r\n\r\nvar core_datasetController = DatasetController;\n\nvar TAU = Math.PI * 2;\r\n\r\ncore_defaults._set('global', {\r\n\telements: {\r\n\t\tarc: {\r\n\t\t\tbackgroundColor: core_defaults.global.defaultColor,\r\n\t\t\tborderColor: '#fff',\r\n\t\t\tborderWidth: 2,\r\n\t\t\tborderAlign: 'center'\r\n\t\t}\r\n\t}\r\n});\r\n\r\nfunction clipArc(ctx, arc) {\r\n\tvar startAngle = arc.startAngle;\r\n\tvar endAngle = arc.endAngle;\r\n\tvar pixelMargin = arc.pixelMargin;\r\n\tvar angleMargin = pixelMargin / arc.outerRadius;\r\n\tvar x = arc.x;\r\n\tvar y = arc.y;\r\n\r\n\t// Draw an inner border by cliping the arc and drawing a double-width border\r\n\t// Enlarge the clipping arc by 0.33 pixels to eliminate glitches between borders\r\n\tctx.beginPath();\r\n\tctx.arc(x, y, arc.outerRadius, startAngle - angleMargin, endAngle + angleMargin);\r\n\tif (arc.innerRadius > pixelMargin) {\r\n\t\tangleMargin = pixelMargin / arc.innerRadius;\r\n\t\tctx.arc(x, y, arc.innerRadius - pixelMargin, endAngle + angleMargin, startAngle - angleMargin, true);\r\n\t} else {\r\n\t\tctx.arc(x, y, pixelMargin, endAngle + Math.PI / 2, startAngle - Math.PI / 2);\r\n\t}\r\n\tctx.closePath();\r\n\tctx.clip();\r\n}\r\n\r\nfunction drawFullCircleBorders(ctx, vm, arc, inner) {\r\n\tvar endAngle = arc.endAngle;\r\n\tvar i;\r\n\r\n\tif (inner) {\r\n\t\tarc.endAngle = arc.startAngle + TAU;\r\n\t\tclipArc(ctx, arc);\r\n\t\tarc.endAngle = endAngle;\r\n\t\tif (arc.endAngle === arc.startAngle && arc.fullCircles) {\r\n\t\t\tarc.endAngle += TAU;\r\n\t\t\tarc.fullCircles--;\r\n\t\t}\r\n\t}\r\n\r\n\tctx.beginPath();\r\n\tctx.arc(arc.x, arc.y, arc.innerRadius, arc.startAngle + TAU, arc.startAngle, true);\r\n\tfor (i = 0; i < arc.fullCircles; ++i) {\r\n\t\tctx.stroke();\r\n\t}\r\n\r\n\tctx.beginPath();\r\n\tctx.arc(arc.x, arc.y, vm.outerRadius, arc.startAngle, arc.startAngle + TAU);\r\n\tfor (i = 0; i < arc.fullCircles; ++i) {\r\n\t\tctx.stroke();\r\n\t}\r\n}\r\n\r\nfunction drawBorder(ctx, vm, arc) {\r\n\tvar inner = vm.borderAlign === 'inner';\r\n\r\n\tif (inner) {\r\n\t\tctx.lineWidth = vm.borderWidth * 2;\r\n\t\tctx.lineJoin = 'round';\r\n\t} else {\r\n\t\tctx.lineWidth = vm.borderWidth;\r\n\t\tctx.lineJoin = 'bevel';\r\n\t}\r\n\r\n\tif (arc.fullCircles) {\r\n\t\tdrawFullCircleBorders(ctx, vm, arc, inner);\r\n\t}\r\n\r\n\tif (inner) {\r\n\t\tclipArc(ctx, arc);\r\n\t}\r\n\r\n\tctx.beginPath();\r\n\tctx.arc(arc.x, arc.y, vm.outerRadius, arc.startAngle, arc.endAngle);\r\n\tctx.arc(arc.x, arc.y, arc.innerRadius, arc.endAngle, arc.startAngle, true);\r\n\tctx.closePath();\r\n\tctx.stroke();\r\n}\r\n\r\nvar element_arc = core_element.extend({\r\n\t_type: 'arc',\r\n\r\n\tinLabelRange: function(mouseX) {\r\n\t\tvar vm = this._view;\r\n\r\n\t\tif (vm) {\r\n\t\t\treturn (Math.pow(mouseX - vm.x, 2) < Math.pow(vm.radius + vm.hoverRadius, 2));\r\n\t\t}\r\n\t\treturn false;\r\n\t},\r\n\r\n\tinRange: function(chartX, chartY) {\r\n\t\tvar vm = this._view;\r\n\r\n\t\tif (vm) {\r\n\t\t\tvar pointRelativePosition = helpers$1.getAngleFromPoint(vm, {x: chartX, y: chartY});\r\n\t\t\tvar angle = pointRelativePosition.angle;\r\n\t\t\tvar distance = pointRelativePosition.distance;\r\n\r\n\t\t\t// Sanitise angle range\r\n\t\t\tvar startAngle = vm.startAngle;\r\n\t\t\tvar endAngle = vm.endAngle;\r\n\t\t\twhile (endAngle < startAngle) {\r\n\t\t\t\tendAngle += TAU;\r\n\t\t\t}\r\n\t\t\twhile (angle > endAngle) {\r\n\t\t\t\tangle -= TAU;\r\n\t\t\t}\r\n\t\t\twhile (angle < startAngle) {\r\n\t\t\t\tangle += TAU;\r\n\t\t\t}\r\n\r\n\t\t\t// Check if within the range of the open/close angle\r\n\t\t\tvar betweenAngles = (angle >= startAngle && angle <= endAngle);\r\n\t\t\tvar withinRadius = (distance >= vm.innerRadius && distance <= vm.outerRadius);\r\n\r\n\t\t\treturn (betweenAngles && withinRadius);\r\n\t\t}\r\n\t\treturn false;\r\n\t},\r\n\r\n\tgetCenterPoint: function() {\r\n\t\tvar vm = this._view;\r\n\t\tvar halfAngle = (vm.startAngle + vm.endAngle) / 2;\r\n\t\tvar halfRadius = (vm.innerRadius + vm.outerRadius) / 2;\r\n\t\treturn {\r\n\t\t\tx: vm.x + Math.cos(halfAngle) * halfRadius,\r\n\t\t\ty: vm.y + Math.sin(halfAngle) * halfRadius\r\n\t\t};\r\n\t},\r\n\r\n\tgetArea: function() {\r\n\t\tvar vm = this._view;\r\n\t\treturn Math.PI * ((vm.endAngle - vm.startAngle) / (2 * Math.PI)) * (Math.pow(vm.outerRadius, 2) - Math.pow(vm.innerRadius, 2));\r\n\t},\r\n\r\n\ttooltipPosition: function() {\r\n\t\tvar vm = this._view;\r\n\t\tvar centreAngle = vm.startAngle + ((vm.endAngle - vm.startAngle) / 2);\r\n\t\tvar rangeFromCentre = (vm.outerRadius - vm.innerRadius) / 2 + vm.innerRadius;\r\n\r\n\t\treturn {\r\n\t\t\tx: vm.x + (Math.cos(centreAngle) * rangeFromCentre),\r\n\t\t\ty: vm.y + (Math.sin(centreAngle) * rangeFromCentre)\r\n\t\t};\r\n\t},\r\n\r\n\tdraw: function() {\r\n\t\tvar ctx = this._chart.ctx;\r\n\t\tvar vm = this._view;\r\n\t\tvar pixelMargin = (vm.borderAlign === 'inner') ? 0.33 : 0;\r\n\t\tvar arc = {\r\n\t\t\tx: vm.x,\r\n\t\t\ty: vm.y,\r\n\t\t\tinnerRadius: vm.innerRadius,\r\n\t\t\touterRadius: Math.max(vm.outerRadius - pixelMargin, 0),\r\n\t\t\tpixelMargin: pixelMargin,\r\n\t\t\tstartAngle: vm.startAngle,\r\n\t\t\tendAngle: vm.endAngle,\r\n\t\t\tfullCircles: Math.floor(vm.circumference / TAU)\r\n\t\t};\r\n\t\tvar i;\r\n\r\n\t\tctx.save();\r\n\r\n\t\tctx.fillStyle = vm.backgroundColor;\r\n\t\tctx.strokeStyle = vm.borderColor;\r\n\r\n\t\tif (arc.fullCircles) {\r\n\t\t\tarc.endAngle = arc.startAngle + TAU;\r\n\t\t\tctx.beginPath();\r\n\t\t\tctx.arc(arc.x, arc.y, arc.outerRadius, arc.startAngle, arc.endAngle);\r\n\t\t\tctx.arc(arc.x, arc.y, arc.innerRadius, arc.endAngle, arc.startAngle, true);\r\n\t\t\tctx.closePath();\r\n\t\t\tfor (i = 0; i < arc.fullCircles; ++i) {\r\n\t\t\t\tctx.fill();\r\n\t\t\t}\r\n\t\t\tarc.endAngle = arc.startAngle + vm.circumference % TAU;\r\n\t\t}\r\n\r\n\t\tctx.beginPath();\r\n\t\tctx.arc(arc.x, arc.y, arc.outerRadius, arc.startAngle, arc.endAngle);\r\n\t\tctx.arc(arc.x, arc.y, arc.innerRadius, arc.endAngle, arc.startAngle, true);\r\n\t\tctx.closePath();\r\n\t\tctx.fill();\r\n\r\n\t\tif (vm.borderWidth) {\r\n\t\t\tdrawBorder(ctx, vm, arc);\r\n\t\t}\r\n\r\n\t\tctx.restore();\r\n\t}\r\n});\n\nvar valueOrDefault$1 = helpers$1.valueOrDefault;\r\n\r\nvar defaultColor = core_defaults.global.defaultColor;\r\n\r\ncore_defaults._set('global', {\r\n\telements: {\r\n\t\tline: {\r\n\t\t\ttension: 0.4,\r\n\t\t\tbackgroundColor: defaultColor,\r\n\t\t\tborderWidth: 3,\r\n\t\t\tborderColor: defaultColor,\r\n\t\t\tborderCapStyle: 'butt',\r\n\t\t\tborderDash: [],\r\n\t\t\tborderDashOffset: 0.0,\r\n\t\t\tborderJoinStyle: 'miter',\r\n\t\t\tcapBezierPoints: true,\r\n\t\t\tfill: true, // do we fill in the area between the line and its base axis\r\n\t\t}\r\n\t}\r\n});\r\n\r\nvar element_line = core_element.extend({\r\n\t_type: 'line',\r\n\r\n\tdraw: function() {\r\n\t\tvar me = this;\r\n\t\tvar vm = me._view;\r\n\t\tvar ctx = me._chart.ctx;\r\n\t\tvar spanGaps = vm.spanGaps;\r\n\t\tvar points = me._children.slice(); // clone array\r\n\t\tvar globalDefaults = core_defaults.global;\r\n\t\tvar globalOptionLineElements = globalDefaults.elements.line;\r\n\t\tvar lastDrawnIndex = -1;\r\n\t\tvar closePath = me._loop;\r\n\t\tvar index, previous, currentVM;\r\n\r\n\t\tif (!points.length) {\r\n\t\t\treturn;\r\n\t\t}\r\n\r\n\t\tif (me._loop) {\r\n\t\t\tfor (index = 0; index < points.length; ++index) {\r\n\t\t\t\tprevious = helpers$1.previousItem(points, index);\r\n\t\t\t\t// If the line has an open path, shift the point array\r\n\t\t\t\tif (!points[index]._view.skip && previous._view.skip) {\r\n\t\t\t\t\tpoints = points.slice(index).concat(points.slice(0, index));\r\n\t\t\t\t\tclosePath = spanGaps;\r\n\t\t\t\t\tbreak;\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t\t// If the line has a close path, add the first point again\r\n\t\t\tif (closePath) {\r\n\t\t\t\tpoints.push(points[0]);\r\n\t\t\t}\r\n\t\t}\r\n\r\n\t\tctx.save();\r\n\r\n\t\t// Stroke Line Options\r\n\t\tctx.lineCap = vm.borderCapStyle || globalOptionLineElements.borderCapStyle;\r\n\r\n\t\t// IE 9 and 10 do not support line dash\r\n\t\tif (ctx.setLineDash) {\r\n\t\t\tctx.setLineDash(vm.borderDash || globalOptionLineElements.borderDash);\r\n\t\t}\r\n\r\n\t\tctx.lineDashOffset = valueOrDefault$1(vm.borderDashOffset, globalOptionLineElements.borderDashOffset);\r\n\t\tctx.lineJoin = vm.borderJoinStyle || globalOptionLineElements.borderJoinStyle;\r\n\t\tctx.lineWidth = valueOrDefault$1(vm.borderWidth, globalOptionLineElements.borderWidth);\r\n\t\tctx.strokeStyle = vm.borderColor || globalDefaults.defaultColor;\r\n\r\n\t\t// Stroke Line\r\n\t\tctx.beginPath();\r\n\r\n\t\t// First point moves to it's starting position no matter what\r\n\t\tcurrentVM = points[0]._view;\r\n\t\tif (!currentVM.skip) {\r\n\t\t\tctx.moveTo(currentVM.x, currentVM.y);\r\n\t\t\tlastDrawnIndex = 0;\r\n\t\t}\r\n\r\n\t\tfor (index = 1; index < points.length; ++index) {\r\n\t\t\tcurrentVM = points[index]._view;\r\n\t\t\tprevious = lastDrawnIndex === -1 ? helpers$1.previousItem(points, index) : points[lastDrawnIndex];\r\n\r\n\t\t\tif (!currentVM.skip) {\r\n\t\t\t\tif ((lastDrawnIndex !== (index - 1) && !spanGaps) || lastDrawnIndex === -1) {\r\n\t\t\t\t\t// There was a gap and this is the first point after the gap\r\n\t\t\t\t\tctx.moveTo(currentVM.x, currentVM.y);\r\n\t\t\t\t} else {\r\n\t\t\t\t\t// Line to next point\r\n\t\t\t\t\thelpers$1.canvas.lineTo(ctx, previous._view, currentVM);\r\n\t\t\t\t}\r\n\t\t\t\tlastDrawnIndex = index;\r\n\t\t\t}\r\n\t\t}\r\n\r\n\t\tif (closePath) {\r\n\t\t\tctx.closePath();\r\n\t\t}\r\n\r\n\t\tctx.stroke();\r\n\t\tctx.restore();\r\n\t}\r\n});\n\nvar valueOrDefault$2 = helpers$1.valueOrDefault;\r\n\r\nvar defaultColor$1 = core_defaults.global.defaultColor;\r\n\r\ncore_defaults._set('global', {\r\n\telements: {\r\n\t\tpoint: {\r\n\t\t\tradius: 3,\r\n\t\t\tpointStyle: 'circle',\r\n\t\t\tbackgroundColor: defaultColor$1,\r\n\t\t\tborderColor: defaultColor$1,\r\n\t\t\tborderWidth: 1,\r\n\t\t\t// Hover\r\n\t\t\thitRadius: 1,\r\n\t\t\thoverRadius: 4,\r\n\t\t\thoverBorderWidth: 1\r\n\t\t}\r\n\t}\r\n});\r\n\r\nfunction xRange(mouseX) {\r\n\tvar vm = this._view;\r\n\treturn vm ? (Math.abs(mouseX - vm.x) < vm.radius + vm.hitRadius) : false;\r\n}\r\n\r\nfunction yRange(mouseY) {\r\n\tvar vm = this._view;\r\n\treturn vm ? (Math.abs(mouseY - vm.y) < vm.radius + vm.hitRadius) : false;\r\n}\r\n\r\nvar element_point = core_element.extend({\r\n\t_type: 'point',\r\n\r\n\tinRange: function(mouseX, mouseY) {\r\n\t\tvar vm = this._view;\r\n\t\treturn vm ? ((Math.pow(mouseX - vm.x, 2) + Math.pow(mouseY - vm.y, 2)) < Math.pow(vm.hitRadius + vm.radius, 2)) : false;\r\n\t},\r\n\r\n\tinLabelRange: xRange,\r\n\tinXRange: xRange,\r\n\tinYRange: yRange,\r\n\r\n\tgetCenterPoint: function() {\r\n\t\tvar vm = this._view;\r\n\t\treturn {\r\n\t\t\tx: vm.x,\r\n\t\t\ty: vm.y\r\n\t\t};\r\n\t},\r\n\r\n\tgetArea: function() {\r\n\t\treturn Math.PI * Math.pow(this._view.radius, 2);\r\n\t},\r\n\r\n\ttooltipPosition: function() {\r\n\t\tvar vm = this._view;\r\n\t\treturn {\r\n\t\t\tx: vm.x,\r\n\t\t\ty: vm.y,\r\n\t\t\tpadding: vm.radius + vm.borderWidth\r\n\t\t};\r\n\t},\r\n\r\n\tdraw: function(chartArea) {\r\n\t\tvar vm = this._view;\r\n\t\tvar ctx = this._chart.ctx;\r\n\t\tvar pointStyle = vm.pointStyle;\r\n\t\tvar rotation = vm.rotation;\r\n\t\tvar radius = vm.radius;\r\n\t\tvar x = vm.x;\r\n\t\tvar y = vm.y;\r\n\t\tvar globalDefaults = core_defaults.global;\r\n\t\tvar defaultColor = globalDefaults.defaultColor; // eslint-disable-line no-shadow\r\n\r\n\t\tif (vm.skip) {\r\n\t\t\treturn;\r\n\t\t}\r\n\r\n\t\t// Clipping for Points.\r\n\t\tif (chartArea === undefined || helpers$1.canvas._isPointInArea(vm, chartArea)) {\r\n\t\t\tctx.strokeStyle = vm.borderColor || defaultColor;\r\n\t\t\tctx.lineWidth = valueOrDefault$2(vm.borderWidth, globalDefaults.elements.point.borderWidth);\r\n\t\t\tctx.fillStyle = vm.backgroundColor || defaultColor;\r\n\t\t\thelpers$1.canvas.drawPoint(ctx, pointStyle, radius, x, y, rotation);\r\n\t\t}\r\n\t}\r\n});\n\nvar defaultColor$2 = core_defaults.global.defaultColor;\r\n\r\ncore_defaults._set('global', {\r\n\telements: {\r\n\t\trectangle: {\r\n\t\t\tbackgroundColor: defaultColor$2,\r\n\t\t\tborderColor: defaultColor$2,\r\n\t\t\tborderSkipped: 'bottom',\r\n\t\t\tborderWidth: 0\r\n\t\t}\r\n\t}\r\n});\r\n\r\nfunction isVertical(vm) {\r\n\treturn vm && vm.width !== undefined;\r\n}\r\n\r\n/**\r\n * Helper function to get the bounds of the bar regardless of the orientation\r\n * @param bar {Chart.Element.Rectangle} the bar\r\n * @return {Bounds} bounds of the bar\r\n * @private\r\n */\r\nfunction getBarBounds(vm) {\r\n\tvar x1, x2, y1, y2, half;\r\n\r\n\tif (isVertical(vm)) {\r\n\t\thalf = vm.width / 2;\r\n\t\tx1 = vm.x - half;\r\n\t\tx2 = vm.x + half;\r\n\t\ty1 = Math.min(vm.y, vm.base);\r\n\t\ty2 = Math.max(vm.y, vm.base);\r\n\t} else {\r\n\t\thalf = vm.height / 2;\r\n\t\tx1 = Math.min(vm.x, vm.base);\r\n\t\tx2 = Math.max(vm.x, vm.base);\r\n\t\ty1 = vm.y - half;\r\n\t\ty2 = vm.y + half;\r\n\t}\r\n\r\n\treturn {\r\n\t\tleft: x1,\r\n\t\ttop: y1,\r\n\t\tright: x2,\r\n\t\tbottom: y2\r\n\t};\r\n}\r\n\r\nfunction swap(orig, v1, v2) {\r\n\treturn orig === v1 ? v2 : orig === v2 ? v1 : orig;\r\n}\r\n\r\nfunction parseBorderSkipped(vm) {\r\n\tvar edge = vm.borderSkipped;\r\n\tvar res = {};\r\n\r\n\tif (!edge) {\r\n\t\treturn res;\r\n\t}\r\n\r\n\tif (vm.horizontal) {\r\n\t\tif (vm.base > vm.x) {\r\n\t\t\tedge = swap(edge, 'left', 'right');\r\n\t\t}\r\n\t} else if (vm.base < vm.y) {\r\n\t\tedge = swap(edge, 'bottom', 'top');\r\n\t}\r\n\r\n\tres[edge] = true;\r\n\treturn res;\r\n}\r\n\r\nfunction parseBorderWidth(vm, maxW, maxH) {\r\n\tvar value = vm.borderWidth;\r\n\tvar skip = parseBorderSkipped(vm);\r\n\tvar t, r, b, l;\r\n\r\n\tif (helpers$1.isObject(value)) {\r\n\t\tt = +value.top || 0;\r\n\t\tr = +value.right || 0;\r\n\t\tb = +value.bottom || 0;\r\n\t\tl = +value.left || 0;\r\n\t} else {\r\n\t\tt = r = b = l = +value || 0;\r\n\t}\r\n\r\n\treturn {\r\n\t\tt: skip.top || (t < 0) ? 0 : t > maxH ? maxH : t,\r\n\t\tr: skip.right || (r < 0) ? 0 : r > maxW ? maxW : r,\r\n\t\tb: skip.bottom || (b < 0) ? 0 : b > maxH ? maxH : b,\r\n\t\tl: skip.left || (l < 0) ? 0 : l > maxW ? maxW : l\r\n\t};\r\n}\r\n\r\nfunction boundingRects(vm) {\r\n\tvar bounds = getBarBounds(vm);\r\n\tvar width = bounds.right - bounds.left;\r\n\tvar height = bounds.bottom - bounds.top;\r\n\tvar border = parseBorderWidth(vm, width / 2, height / 2);\r\n\r\n\treturn {\r\n\t\touter: {\r\n\t\t\tx: bounds.left,\r\n\t\t\ty: bounds.top,\r\n\t\t\tw: width,\r\n\t\t\th: height\r\n\t\t},\r\n\t\tinner: {\r\n\t\t\tx: bounds.left + border.l,\r\n\t\t\ty: bounds.top + border.t,\r\n\t\t\tw: width - border.l - border.r,\r\n\t\t\th: height - border.t - border.b\r\n\t\t}\r\n\t};\r\n}\r\n\r\nfunction inRange(vm, x, y) {\r\n\tvar skipX = x === null;\r\n\tvar skipY = y === null;\r\n\tvar bounds = !vm || (skipX && skipY) ? false : getBarBounds(vm);\r\n\r\n\treturn bounds\r\n\t\t&& (skipX || x >= bounds.left && x <= bounds.right)\r\n\t\t&& (skipY || y >= bounds.top && y <= bounds.bottom);\r\n}\r\n\r\nvar element_rectangle = core_element.extend({\r\n\t_type: 'rectangle',\r\n\r\n\tdraw: function() {\r\n\t\tvar ctx = this._chart.ctx;\r\n\t\tvar vm = this._view;\r\n\t\tvar rects = boundingRects(vm);\r\n\t\tvar outer = rects.outer;\r\n\t\tvar inner = rects.inner;\r\n\r\n\t\tctx.fillStyle = vm.backgroundColor;\r\n\t\tctx.fillRect(outer.x, outer.y, outer.w, outer.h);\r\n\r\n\t\tif (outer.w === inner.w && outer.h === inner.h) {\r\n\t\t\treturn;\r\n\t\t}\r\n\r\n\t\tctx.save();\r\n\t\tctx.beginPath();\r\n\t\tctx.rect(outer.x, outer.y, outer.w, outer.h);\r\n\t\tctx.clip();\r\n\t\tctx.fillStyle = vm.borderColor;\r\n\t\tctx.rect(inner.x, inner.y, inner.w, inner.h);\r\n\t\tctx.fill('evenodd');\r\n\t\tctx.restore();\r\n\t},\r\n\r\n\theight: function() {\r\n\t\tvar vm = this._view;\r\n\t\treturn vm.base - vm.y;\r\n\t},\r\n\r\n\tinRange: function(mouseX, mouseY) {\r\n\t\treturn inRange(this._view, mouseX, mouseY);\r\n\t},\r\n\r\n\tinLabelRange: function(mouseX, mouseY) {\r\n\t\tvar vm = this._view;\r\n\t\treturn isVertical(vm)\r\n\t\t\t? inRange(vm, mouseX, null)\r\n\t\t\t: inRange(vm, null, mouseY);\r\n\t},\r\n\r\n\tinXRange: function(mouseX) {\r\n\t\treturn inRange(this._view, mouseX, null);\r\n\t},\r\n\r\n\tinYRange: function(mouseY) {\r\n\t\treturn inRange(this._view, null, mouseY);\r\n\t},\r\n\r\n\tgetCenterPoint: function() {\r\n\t\tvar vm = this._view;\r\n\t\tvar x, y;\r\n\t\tif (isVertical(vm)) {\r\n\t\t\tx = vm.x;\r\n\t\t\ty = (vm.y + vm.base) / 2;\r\n\t\t} else {\r\n\t\t\tx = (vm.x + vm.base) / 2;\r\n\t\t\ty = vm.y;\r\n\t\t}\r\n\r\n\t\treturn {x: x, y: y};\r\n\t},\r\n\r\n\tgetArea: function() {\r\n\t\tvar vm = this._view;\r\n\r\n\t\treturn isVertical(vm)\r\n\t\t\t? vm.width * Math.abs(vm.y - vm.base)\r\n\t\t\t: vm.height * Math.abs(vm.x - vm.base);\r\n\t},\r\n\r\n\ttooltipPosition: function() {\r\n\t\tvar vm = this._view;\r\n\t\treturn {\r\n\t\t\tx: vm.x,\r\n\t\t\ty: vm.y\r\n\t\t};\r\n\t}\r\n});\n\nvar elements = {};\r\nvar Arc = element_arc;\r\nvar Line = element_line;\r\nvar Point = element_point;\r\nvar Rectangle = element_rectangle;\nelements.Arc = Arc;\nelements.Line = Line;\nelements.Point = Point;\nelements.Rectangle = Rectangle;\n\nvar deprecated = helpers$1._deprecated;\r\nvar valueOrDefault$3 = helpers$1.valueOrDefault;\r\n\r\ncore_defaults._set('bar', {\r\n\thover: {\r\n\t\tmode: 'label'\r\n\t},\r\n\r\n\tscales: {\r\n\t\txAxes: [{\r\n\t\t\ttype: 'category',\r\n\t\t\toffset: true,\r\n\t\t\tgridLines: {\r\n\t\t\t\toffsetGridLines: true\r\n\t\t\t}\r\n\t\t}],\r\n\r\n\t\tyAxes: [{\r\n\t\t\ttype: 'linear'\r\n\t\t}]\r\n\t}\r\n});\r\n\r\ncore_defaults._set('global', {\r\n\tdatasets: {\r\n\t\tbar: {\r\n\t\t\tcategoryPercentage: 0.8,\r\n\t\t\tbarPercentage: 0.9\r\n\t\t}\r\n\t}\r\n});\r\n\r\n/**\r\n * Computes the \"optimal\" sample size to maintain bars equally sized while preventing overlap.\r\n * @private\r\n */\r\nfunction computeMinSampleSize(scale, pixels) {\r\n\tvar min = scale._length;\r\n\tvar prev, curr, i, ilen;\r\n\r\n\tfor (i = 1, ilen = pixels.length; i < ilen; ++i) {\r\n\t\tmin = Math.min(min, Math.abs(pixels[i] - pixels[i - 1]));\r\n\t}\r\n\r\n\tfor (i = 0, ilen = scale.getTicks().length; i < ilen; ++i) {\r\n\t\tcurr = scale.getPixelForTick(i);\r\n\t\tmin = i > 0 ? Math.min(min, Math.abs(curr - prev)) : min;\r\n\t\tprev = curr;\r\n\t}\r\n\r\n\treturn min;\r\n}\r\n\r\n/**\r\n * Computes an \"ideal\" category based on the absolute bar thickness or, if undefined or null,\r\n * uses the smallest interval (see computeMinSampleSize) that prevents bar overlapping. This\r\n * mode currently always generates bars equally sized (until we introduce scriptable options?).\r\n * @private\r\n */\r\nfunction computeFitCategoryTraits(index, ruler, options) {\r\n\tvar thickness = options.barThickness;\r\n\tvar count = ruler.stackCount;\r\n\tvar curr = ruler.pixels[index];\r\n\tvar min = helpers$1.isNullOrUndef(thickness)\r\n\t\t? computeMinSampleSize(ruler.scale, ruler.pixels)\r\n\t\t: -1;\r\n\tvar size, ratio;\r\n\r\n\tif (helpers$1.isNullOrUndef(thickness)) {\r\n\t\tsize = min * options.categoryPercentage;\r\n\t\tratio = options.barPercentage;\r\n\t} else {\r\n\t\t// When bar thickness is enforced, category and bar percentages are ignored.\r\n\t\t// Note(SB): we could add support for relative bar thickness (e.g. barThickness: '50%')\r\n\t\t// and deprecate barPercentage since this value is ignored when thickness is absolute.\r\n\t\tsize = thickness * count;\r\n\t\tratio = 1;\r\n\t}\r\n\r\n\treturn {\r\n\t\tchunk: size / count,\r\n\t\tratio: ratio,\r\n\t\tstart: curr - (size / 2)\r\n\t};\r\n}\r\n\r\n/**\r\n * Computes an \"optimal\" category that globally arranges bars side by side (no gap when\r\n * percentage options are 1), based on the previous and following categories. This mode\r\n * generates bars with different widths when data are not evenly spaced.\r\n * @private\r\n */\r\nfunction computeFlexCategoryTraits(index, ruler, options) {\r\n\tvar pixels = ruler.pixels;\r\n\tvar curr = pixels[index];\r\n\tvar prev = index > 0 ? pixels[index - 1] : null;\r\n\tvar next = index < pixels.length - 1 ? pixels[index + 1] : null;\r\n\tvar percent = options.categoryPercentage;\r\n\tvar start, size;\r\n\r\n\tif (prev === null) {\r\n\t\t// first data: its size is double based on the next point or,\r\n\t\t// if it's also the last data, we use the scale size.\r\n\t\tprev = curr - (next === null ? ruler.end - ruler.start : next - curr);\r\n\t}\r\n\r\n\tif (next === null) {\r\n\t\t// last data: its size is also double based on the previous point.\r\n\t\tnext = curr + curr - prev;\r\n\t}\r\n\r\n\tstart = curr - (curr - Math.min(prev, next)) / 2 * percent;\r\n\tsize = Math.abs(next - prev) / 2 * percent;\r\n\r\n\treturn {\r\n\t\tchunk: size / ruler.stackCount,\r\n\t\tratio: options.barPercentage,\r\n\t\tstart: start\r\n\t};\r\n}\r\n\r\nvar controller_bar = core_datasetController.extend({\r\n\r\n\tdataElementType: elements.Rectangle,\r\n\r\n\t/**\r\n\t * @private\r\n\t */\r\n\t_dataElementOptions: [\r\n\t\t'backgroundColor',\r\n\t\t'borderColor',\r\n\t\t'borderSkipped',\r\n\t\t'borderWidth',\r\n\t\t'barPercentage',\r\n\t\t'barThickness',\r\n\t\t'categoryPercentage',\r\n\t\t'maxBarThickness',\r\n\t\t'minBarLength'\r\n\t],\r\n\r\n\tinitialize: function() {\r\n\t\tvar me = this;\r\n\t\tvar meta, scaleOpts;\r\n\r\n\t\tcore_datasetController.prototype.initialize.apply(me, arguments);\r\n\r\n\t\tmeta = me.getMeta();\r\n\t\tmeta.stack = me.getDataset().stack;\r\n\t\tmeta.bar = true;\r\n\r\n\t\tscaleOpts = me._getIndexScale().options;\r\n\t\tdeprecated('bar chart', scaleOpts.barPercentage, 'scales.[x/y]Axes.barPercentage', 'dataset.barPercentage');\r\n\t\tdeprecated('bar chart', scaleOpts.barThickness, 'scales.[x/y]Axes.barThickness', 'dataset.barThickness');\r\n\t\tdeprecated('bar chart', scaleOpts.categoryPercentage, 'scales.[x/y]Axes.categoryPercentage', 'dataset.categoryPercentage');\r\n\t\tdeprecated('bar chart', me._getValueScale().options.minBarLength, 'scales.[x/y]Axes.minBarLength', 'dataset.minBarLength');\r\n\t\tdeprecated('bar chart', scaleOpts.maxBarThickness, 'scales.[x/y]Axes.maxBarThickness', 'dataset.maxBarThickness');\r\n\t},\r\n\r\n\tupdate: function(reset) {\r\n\t\tvar me = this;\r\n\t\tvar rects = me.getMeta().data;\r\n\t\tvar i, ilen;\r\n\r\n\t\tme._ruler = me.getRuler();\r\n\r\n\t\tfor (i = 0, ilen = rects.length; i < ilen; ++i) {\r\n\t\t\tme.updateElement(rects[i], i, reset);\r\n\t\t}\r\n\t},\r\n\r\n\tupdateElement: function(rectangle, index, reset) {\r\n\t\tvar me = this;\r\n\t\tvar meta = me.getMeta();\r\n\t\tvar dataset = me.getDataset();\r\n\t\tvar options = me._resolveDataElementOptions(rectangle, index);\r\n\r\n\t\trectangle._xScale = me.getScaleForId(meta.xAxisID);\r\n\t\trectangle._yScale = me.getScaleForId(meta.yAxisID);\r\n\t\trectangle._datasetIndex = me.index;\r\n\t\trectangle._index = index;\r\n\t\trectangle._model = {\r\n\t\t\tbackgroundColor: options.backgroundColor,\r\n\t\t\tborderColor: options.borderColor,\r\n\t\t\tborderSkipped: options.borderSkipped,\r\n\t\t\tborderWidth: options.borderWidth,\r\n\t\t\tdatasetLabel: dataset.label,\r\n\t\t\tlabel: me.chart.data.labels[index]\r\n\t\t};\r\n\r\n\t\tif (helpers$1.isArray(dataset.data[index])) {\r\n\t\t\trectangle._model.borderSkipped = null;\r\n\t\t}\r\n\r\n\t\tme._updateElementGeometry(rectangle, index, reset, options);\r\n\r\n\t\trectangle.pivot();\r\n\t},\r\n\r\n\t/**\r\n\t * @private\r\n\t */\r\n\t_updateElementGeometry: function(rectangle, index, reset, options) {\r\n\t\tvar me = this;\r\n\t\tvar model = rectangle._model;\r\n\t\tvar vscale = me._getValueScale();\r\n\t\tvar base = vscale.getBasePixel();\r\n\t\tvar horizontal = vscale.isHorizontal();\r\n\t\tvar ruler = me._ruler || me.getRuler();\r\n\t\tvar vpixels = me.calculateBarValuePixels(me.index, index, options);\r\n\t\tvar ipixels = me.calculateBarIndexPixels(me.index, index, ruler, options);\r\n\r\n\t\tmodel.horizontal = horizontal;\r\n\t\tmodel.base = reset ? base : vpixels.base;\r\n\t\tmodel.x = horizontal ? reset ? base : vpixels.head : ipixels.center;\r\n\t\tmodel.y = horizontal ? ipixels.center : reset ? base : vpixels.head;\r\n\t\tmodel.height = horizontal ? ipixels.size : undefined;\r\n\t\tmodel.width = horizontal ? undefined : ipixels.size;\r\n\t},\r\n\r\n\t/**\r\n\t * Returns the stacks based on groups and bar visibility.\r\n\t * @param {number} [last] - The dataset index\r\n\t * @returns {string[]} The list of stack IDs\r\n\t * @private\r\n\t */\r\n\t_getStacks: function(last) {\r\n\t\tvar me = this;\r\n\t\tvar scale = me._getIndexScale();\r\n\t\tvar metasets = scale._getMatchingVisibleMetas(me._type);\r\n\t\tvar stacked = scale.options.stacked;\r\n\t\tvar ilen = metasets.length;\r\n\t\tvar stacks = [];\r\n\t\tvar i, meta;\r\n\r\n\t\tfor (i = 0; i < ilen; ++i) {\r\n\t\t\tmeta = metasets[i];\r\n\t\t\t// stacked | meta.stack\r\n\t\t\t// | found | not found | undefined\r\n\t\t\t// false | x | x | x\r\n\t\t\t// true | | x |\r\n\t\t\t// undefined | | x | x\r\n\t\t\tif (stacked === false || stacks.indexOf(meta.stack) === -1 ||\r\n\t\t\t\t(stacked === undefined && meta.stack === undefined)) {\r\n\t\t\t\tstacks.push(meta.stack);\r\n\t\t\t}\r\n\t\t\tif (meta.index === last) {\r\n\t\t\t\tbreak;\r\n\t\t\t}\r\n\t\t}\r\n\r\n\t\treturn stacks;\r\n\t},\r\n\r\n\t/**\r\n\t * Returns the effective number of stacks based on groups and bar visibility.\r\n\t * @private\r\n\t */\r\n\tgetStackCount: function() {\r\n\t\treturn this._getStacks().length;\r\n\t},\r\n\r\n\t/**\r\n\t * Returns the stack index for the given dataset based on groups and bar visibility.\r\n\t * @param {number} [datasetIndex] - The dataset index\r\n\t * @param {string} [name] - The stack name to find\r\n\t * @returns {number} The stack index\r\n\t * @private\r\n\t */\r\n\tgetStackIndex: function(datasetIndex, name) {\r\n\t\tvar stacks = this._getStacks(datasetIndex);\r\n\t\tvar index = (name !== undefined)\r\n\t\t\t? stacks.indexOf(name)\r\n\t\t\t: -1; // indexOf returns -1 if element is not present\r\n\r\n\t\treturn (index === -1)\r\n\t\t\t? stacks.length - 1\r\n\t\t\t: index;\r\n\t},\r\n\r\n\t/**\r\n\t * @private\r\n\t */\r\n\tgetRuler: function() {\r\n\t\tvar me = this;\r\n\t\tvar scale = me._getIndexScale();\r\n\t\tvar pixels = [];\r\n\t\tvar i, ilen;\r\n\r\n\t\tfor (i = 0, ilen = me.getMeta().data.length; i < ilen; ++i) {\r\n\t\t\tpixels.push(scale.getPixelForValue(null, i, me.index));\r\n\t\t}\r\n\r\n\t\treturn {\r\n\t\t\tpixels: pixels,\r\n\t\t\tstart: scale._startPixel,\r\n\t\t\tend: scale._endPixel,\r\n\t\t\tstackCount: me.getStackCount(),\r\n\t\t\tscale: scale\r\n\t\t};\r\n\t},\r\n\r\n\t/**\r\n\t * Note: pixel values are not clamped to the scale area.\r\n\t * @private\r\n\t */\r\n\tcalculateBarValuePixels: function(datasetIndex, index, options) {\r\n\t\tvar me = this;\r\n\t\tvar chart = me.chart;\r\n\t\tvar scale = me._getValueScale();\r\n\t\tvar isHorizontal = scale.isHorizontal();\r\n\t\tvar datasets = chart.data.datasets;\r\n\t\tvar metasets = scale._getMatchingVisibleMetas(me._type);\r\n\t\tvar value = scale._parseValue(datasets[datasetIndex].data[index]);\r\n\t\tvar minBarLength = options.minBarLength;\r\n\t\tvar stacked = scale.options.stacked;\r\n\t\tvar stack = me.getMeta().stack;\r\n\t\tvar start = value.start === undefined ? 0 : value.max >= 0 && value.min >= 0 ? value.min : value.max;\r\n\t\tvar length = value.start === undefined ? value.end : value.max >= 0 && value.min >= 0 ? value.max - value.min : value.min - value.max;\r\n\t\tvar ilen = metasets.length;\r\n\t\tvar i, imeta, ivalue, base, head, size, stackLength;\r\n\r\n\t\tif (stacked || (stacked === undefined && stack !== undefined)) {\r\n\t\t\tfor (i = 0; i < ilen; ++i) {\r\n\t\t\t\timeta = metasets[i];\r\n\r\n\t\t\t\tif (imeta.index === datasetIndex) {\r\n\t\t\t\t\tbreak;\r\n\t\t\t\t}\r\n\r\n\t\t\t\tif (imeta.stack === stack) {\r\n\t\t\t\t\tstackLength = scale._parseValue(datasets[imeta.index].data[index]);\r\n\t\t\t\t\tivalue = stackLength.start === undefined ? stackLength.end : stackLength.min >= 0 && stackLength.max >= 0 ? stackLength.max : stackLength.min;\r\n\r\n\t\t\t\t\tif ((value.min < 0 && ivalue < 0) || (value.max >= 0 && ivalue > 0)) {\r\n\t\t\t\t\t\tstart += ivalue;\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t}\r\n\r\n\t\tbase = scale.getPixelForValue(start);\r\n\t\thead = scale.getPixelForValue(start + length);\r\n\t\tsize = head - base;\r\n\r\n\t\tif (minBarLength !== undefined && Math.abs(size) < minBarLength) {\r\n\t\t\tsize = minBarLength;\r\n\t\t\tif (length >= 0 && !isHorizontal || length < 0 && isHorizontal) {\r\n\t\t\t\thead = base - minBarLength;\r\n\t\t\t} else {\r\n\t\t\t\thead = base + minBarLength;\r\n\t\t\t}\r\n\t\t}\r\n\r\n\t\treturn {\r\n\t\t\tsize: size,\r\n\t\t\tbase: base,\r\n\t\t\thead: head,\r\n\t\t\tcenter: head + size / 2\r\n\t\t};\r\n\t},\r\n\r\n\t/**\r\n\t * @private\r\n\t */\r\n\tcalculateBarIndexPixels: function(datasetIndex, index, ruler, options) {\r\n\t\tvar me = this;\r\n\t\tvar range = options.barThickness === 'flex'\r\n\t\t\t? computeFlexCategoryTraits(index, ruler, options)\r\n\t\t\t: computeFitCategoryTraits(index, ruler, options);\r\n\r\n\t\tvar stackIndex = me.getStackIndex(datasetIndex, me.getMeta().stack);\r\n\t\tvar center = range.start + (range.chunk * stackIndex) + (range.chunk / 2);\r\n\t\tvar size = Math.min(\r\n\t\t\tvalueOrDefault$3(options.maxBarThickness, Infinity),\r\n\t\t\trange.chunk * range.ratio);\r\n\r\n\t\treturn {\r\n\t\t\tbase: center - size / 2,\r\n\t\t\thead: center + size / 2,\r\n\t\t\tcenter: center,\r\n\t\t\tsize: size\r\n\t\t};\r\n\t},\r\n\r\n\tdraw: function() {\r\n\t\tvar me = this;\r\n\t\tvar chart = me.chart;\r\n\t\tvar scale = me._getValueScale();\r\n\t\tvar rects = me.getMeta().data;\r\n\t\tvar dataset = me.getDataset();\r\n\t\tvar ilen = rects.length;\r\n\t\tvar i = 0;\r\n\r\n\t\thelpers$1.canvas.clipArea(chart.ctx, chart.chartArea);\r\n\r\n\t\tfor (; i < ilen; ++i) {\r\n\t\t\tvar val = scale._parseValue(dataset.data[i]);\r\n\t\t\tif (!isNaN(val.min) && !isNaN(val.max)) {\r\n\t\t\t\trects[i].draw();\r\n\t\t\t}\r\n\t\t}\r\n\r\n\t\thelpers$1.canvas.unclipArea(chart.ctx);\r\n\t},\r\n\r\n\t/**\r\n\t * @private\r\n\t */\r\n\t_resolveDataElementOptions: function() {\r\n\t\tvar me = this;\r\n\t\tvar values = helpers$1.extend({}, core_datasetController.prototype._resolveDataElementOptions.apply(me, arguments));\r\n\t\tvar indexOpts = me._getIndexScale().options;\r\n\t\tvar valueOpts = me._getValueScale().options;\r\n\r\n\t\tvalues.barPercentage = valueOrDefault$3(indexOpts.barPercentage, values.barPercentage);\r\n\t\tvalues.barThickness = valueOrDefault$3(indexOpts.barThickness, values.barThickness);\r\n\t\tvalues.categoryPercentage = valueOrDefault$3(indexOpts.categoryPercentage, values.categoryPercentage);\r\n\t\tvalues.maxBarThickness = valueOrDefault$3(indexOpts.maxBarThickness, values.maxBarThickness);\r\n\t\tvalues.minBarLength = valueOrDefault$3(valueOpts.minBarLength, values.minBarLength);\r\n\r\n\t\treturn values;\r\n\t}\r\n\r\n});\n\nvar valueOrDefault$4 = helpers$1.valueOrDefault;\r\nvar resolve$1 = helpers$1.options.resolve;\r\n\r\ncore_defaults._set('bubble', {\r\n\thover: {\r\n\t\tmode: 'single'\r\n\t},\r\n\r\n\tscales: {\r\n\t\txAxes: [{\r\n\t\t\ttype: 'linear', // bubble should probably use a linear scale by default\r\n\t\t\tposition: 'bottom',\r\n\t\t\tid: 'x-axis-0' // need an ID so datasets can reference the scale\r\n\t\t}],\r\n\t\tyAxes: [{\r\n\t\t\ttype: 'linear',\r\n\t\t\tposition: 'left',\r\n\t\t\tid: 'y-axis-0'\r\n\t\t}]\r\n\t},\r\n\r\n\ttooltips: {\r\n\t\tcallbacks: {\r\n\t\t\ttitle: function() {\r\n\t\t\t\t// Title doesn't make sense for scatter since we format the data as a point\r\n\t\t\t\treturn '';\r\n\t\t\t},\r\n\t\t\tlabel: function(item, data) {\r\n\t\t\t\tvar datasetLabel = data.datasets[item.datasetIndex].label || '';\r\n\t\t\t\tvar dataPoint = data.datasets[item.datasetIndex].data[item.index];\r\n\t\t\t\treturn datasetLabel + ': (' + item.xLabel + ', ' + item.yLabel + ', ' + dataPoint.r + ')';\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n});\r\n\r\nvar controller_bubble = core_datasetController.extend({\r\n\t/**\r\n\t * @protected\r\n\t */\r\n\tdataElementType: elements.Point,\r\n\r\n\t/**\r\n\t * @private\r\n\t */\r\n\t_dataElementOptions: [\r\n\t\t'backgroundColor',\r\n\t\t'borderColor',\r\n\t\t'borderWidth',\r\n\t\t'hoverBackgroundColor',\r\n\t\t'hoverBorderColor',\r\n\t\t'hoverBorderWidth',\r\n\t\t'hoverRadius',\r\n\t\t'hitRadius',\r\n\t\t'pointStyle',\r\n\t\t'rotation'\r\n\t],\r\n\r\n\t/**\r\n\t * @protected\r\n\t */\r\n\tupdate: function(reset) {\r\n\t\tvar me = this;\r\n\t\tvar meta = me.getMeta();\r\n\t\tvar points = meta.data;\r\n\r\n\t\t// Update Points\r\n\t\thelpers$1.each(points, function(point, index) {\r\n\t\t\tme.updateElement(point, index, reset);\r\n\t\t});\r\n\t},\r\n\r\n\t/**\r\n\t * @protected\r\n\t */\r\n\tupdateElement: function(point, index, reset) {\r\n\t\tvar me = this;\r\n\t\tvar meta = me.getMeta();\r\n\t\tvar custom = point.custom || {};\r\n\t\tvar xScale = me.getScaleForId(meta.xAxisID);\r\n\t\tvar yScale = me.getScaleForId(meta.yAxisID);\r\n\t\tvar options = me._resolveDataElementOptions(point, index);\r\n\t\tvar data = me.getDataset().data[index];\r\n\t\tvar dsIndex = me.index;\r\n\r\n\t\tvar x = reset ? xScale.getPixelForDecimal(0.5) : xScale.getPixelForValue(typeof data === 'object' ? data : NaN, index, dsIndex);\r\n\t\tvar y = reset ? yScale.getBasePixel() : yScale.getPixelForValue(data, index, dsIndex);\r\n\r\n\t\tpoint._xScale = xScale;\r\n\t\tpoint._yScale = yScale;\r\n\t\tpoint._options = options;\r\n\t\tpoint._datasetIndex = dsIndex;\r\n\t\tpoint._index = index;\r\n\t\tpoint._model = {\r\n\t\t\tbackgroundColor: options.backgroundColor,\r\n\t\t\tborderColor: options.borderColor,\r\n\t\t\tborderWidth: options.borderWidth,\r\n\t\t\thitRadius: options.hitRadius,\r\n\t\t\tpointStyle: options.pointStyle,\r\n\t\t\trotation: options.rotation,\r\n\t\t\tradius: reset ? 0 : options.radius,\r\n\t\t\tskip: custom.skip || isNaN(x) || isNaN(y),\r\n\t\t\tx: x,\r\n\t\t\ty: y,\r\n\t\t};\r\n\r\n\t\tpoint.pivot();\r\n\t},\r\n\r\n\t/**\r\n\t * @protected\r\n\t */\r\n\tsetHoverStyle: function(point) {\r\n\t\tvar model = point._model;\r\n\t\tvar options = point._options;\r\n\t\tvar getHoverColor = helpers$1.getHoverColor;\r\n\r\n\t\tpoint.$previousStyle = {\r\n\t\t\tbackgroundColor: model.backgroundColor,\r\n\t\t\tborderColor: model.borderColor,\r\n\t\t\tborderWidth: model.borderWidth,\r\n\t\t\tradius: model.radius\r\n\t\t};\r\n\r\n\t\tmodel.backgroundColor = valueOrDefault$4(options.hoverBackgroundColor, getHoverColor(options.backgroundColor));\r\n\t\tmodel.borderColor = valueOrDefault$4(options.hoverBorderColor, getHoverColor(options.borderColor));\r\n\t\tmodel.borderWidth = valueOrDefault$4(options.hoverBorderWidth, options.borderWidth);\r\n\t\tmodel.radius = options.radius + options.hoverRadius;\r\n\t},\r\n\r\n\t/**\r\n\t * @private\r\n\t */\r\n\t_resolveDataElementOptions: function(point, index) {\r\n\t\tvar me = this;\r\n\t\tvar chart = me.chart;\r\n\t\tvar dataset = me.getDataset();\r\n\t\tvar custom = point.custom || {};\r\n\t\tvar data = dataset.data[index] || {};\r\n\t\tvar values = core_datasetController.prototype._resolveDataElementOptions.apply(me, arguments);\r\n\r\n\t\t// Scriptable options\r\n\t\tvar context = {\r\n\t\t\tchart: chart,\r\n\t\t\tdataIndex: index,\r\n\t\t\tdataset: dataset,\r\n\t\t\tdatasetIndex: me.index\r\n\t\t};\r\n\r\n\t\t// In case values were cached (and thus frozen), we need to clone the values\r\n\t\tif (me._cachedDataOpts === values) {\r\n\t\t\tvalues = helpers$1.extend({}, values);\r\n\t\t}\r\n\r\n\t\t// Custom radius resolution\r\n\t\tvalues.radius = resolve$1([\r\n\t\t\tcustom.radius,\r\n\t\t\tdata.r,\r\n\t\t\tme._config.radius,\r\n\t\t\tchart.options.elements.point.radius\r\n\t\t], context, index);\r\n\r\n\t\treturn values;\r\n\t}\r\n});\n\nvar valueOrDefault$5 = helpers$1.valueOrDefault;\r\n\r\nvar PI$1 = Math.PI;\r\nvar DOUBLE_PI$1 = PI$1 * 2;\r\nvar HALF_PI$1 = PI$1 / 2;\r\n\r\ncore_defaults._set('doughnut', {\r\n\tanimation: {\r\n\t\t// Boolean - Whether we animate the rotation of the Doughnut\r\n\t\tanimateRotate: true,\r\n\t\t// Boolean - Whether we animate scaling the Doughnut from the centre\r\n\t\tanimateScale: false\r\n\t},\r\n\thover: {\r\n\t\tmode: 'single'\r\n\t},\r\n\tlegendCallback: function(chart) {\r\n\t\tvar list = document.createElement('ul');\r\n\t\tvar data = chart.data;\r\n\t\tvar datasets = data.datasets;\r\n\t\tvar labels = data.labels;\r\n\t\tvar i, ilen, listItem, listItemSpan;\r\n\r\n\t\tlist.setAttribute('class', chart.id + '-legend');\r\n\t\tif (datasets.length) {\r\n\t\t\tfor (i = 0, ilen = datasets[0].data.length; i < ilen; ++i) {\r\n\t\t\t\tlistItem = list.appendChild(document.createElement('li'));\r\n\t\t\t\tlistItemSpan = listItem.appendChild(document.createElement('span'));\r\n\t\t\t\tlistItemSpan.style.backgroundColor = datasets[0].backgroundColor[i];\r\n\t\t\t\tif (labels[i]) {\r\n\t\t\t\t\tlistItem.appendChild(document.createTextNode(labels[i]));\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t}\r\n\r\n\t\treturn list.outerHTML;\r\n\t},\r\n\tlegend: {\r\n\t\tlabels: {\r\n\t\t\tgenerateLabels: function(chart) {\r\n\t\t\t\tvar data = chart.data;\r\n\t\t\t\tif (data.labels.length && data.datasets.length) {\r\n\t\t\t\t\treturn data.labels.map(function(label, i) {\r\n\t\t\t\t\t\tvar meta = chart.getDatasetMeta(0);\r\n\t\t\t\t\t\tvar style = meta.controller.getStyle(i);\r\n\r\n\t\t\t\t\t\treturn {\r\n\t\t\t\t\t\t\ttext: label,\r\n\t\t\t\t\t\t\tfillStyle: style.backgroundColor,\r\n\t\t\t\t\t\t\tstrokeStyle: style.borderColor,\r\n\t\t\t\t\t\t\tlineWidth: style.borderWidth,\r\n\t\t\t\t\t\t\thidden: isNaN(data.datasets[0].data[i]) || meta.data[i].hidden,\r\n\r\n\t\t\t\t\t\t\t// Extra data used for toggling the correct item\r\n\t\t\t\t\t\t\tindex: i\r\n\t\t\t\t\t\t};\r\n\t\t\t\t\t});\r\n\t\t\t\t}\r\n\t\t\t\treturn [];\r\n\t\t\t}\r\n\t\t},\r\n\r\n\t\tonClick: function(e, legendItem) {\r\n\t\t\tvar index = legendItem.index;\r\n\t\t\tvar chart = this.chart;\r\n\t\t\tvar i, ilen, meta;\r\n\r\n\t\t\tfor (i = 0, ilen = (chart.data.datasets || []).length; i < ilen; ++i) {\r\n\t\t\t\tmeta = chart.getDatasetMeta(i);\r\n\t\t\t\t// toggle visibility of index if exists\r\n\t\t\t\tif (meta.data[index]) {\r\n\t\t\t\t\tmeta.data[index].hidden = !meta.data[index].hidden;\r\n\t\t\t\t}\r\n\t\t\t}\r\n\r\n\t\t\tchart.update();\r\n\t\t}\r\n\t},\r\n\r\n\t// The percentage of the chart that we cut out of the middle.\r\n\tcutoutPercentage: 50,\r\n\r\n\t// The rotation of the chart, where the first data arc begins.\r\n\trotation: -HALF_PI$1,\r\n\r\n\t// The total circumference of the chart.\r\n\tcircumference: DOUBLE_PI$1,\r\n\r\n\t// Need to override these to give a nice default\r\n\ttooltips: {\r\n\t\tcallbacks: {\r\n\t\t\ttitle: function() {\r\n\t\t\t\treturn '';\r\n\t\t\t},\r\n\t\t\tlabel: function(tooltipItem, data) {\r\n\t\t\t\tvar dataLabel = data.labels[tooltipItem.index];\r\n\t\t\t\tvar value = ': ' + data.datasets[tooltipItem.datasetIndex].data[tooltipItem.index];\r\n\r\n\t\t\t\tif (helpers$1.isArray(dataLabel)) {\r\n\t\t\t\t\t// show value on first line of multiline label\r\n\t\t\t\t\t// need to clone because we are changing the value\r\n\t\t\t\t\tdataLabel = dataLabel.slice();\r\n\t\t\t\t\tdataLabel[0] += value;\r\n\t\t\t\t} else {\r\n\t\t\t\t\tdataLabel += value;\r\n\t\t\t\t}\r\n\r\n\t\t\t\treturn dataLabel;\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n});\r\n\r\nvar controller_doughnut = core_datasetController.extend({\r\n\r\n\tdataElementType: elements.Arc,\r\n\r\n\tlinkScales: helpers$1.noop,\r\n\r\n\t/**\r\n\t * @private\r\n\t */\r\n\t_dataElementOptions: [\r\n\t\t'backgroundColor',\r\n\t\t'borderColor',\r\n\t\t'borderWidth',\r\n\t\t'borderAlign',\r\n\t\t'hoverBackgroundColor',\r\n\t\t'hoverBorderColor',\r\n\t\t'hoverBorderWidth',\r\n\t],\r\n\r\n\t// Get index of the dataset in relation to the visible datasets. This allows determining the inner and outer radius correctly\r\n\tgetRingIndex: function(datasetIndex) {\r\n\t\tvar ringIndex = 0;\r\n\r\n\t\tfor (var j = 0; j < datasetIndex; ++j) {\r\n\t\t\tif (this.chart.isDatasetVisible(j)) {\r\n\t\t\t\t++ringIndex;\r\n\t\t\t}\r\n\t\t}\r\n\r\n\t\treturn ringIndex;\r\n\t},\r\n\r\n\tupdate: function(reset) {\r\n\t\tvar me = this;\r\n\t\tvar chart = me.chart;\r\n\t\tvar chartArea = chart.chartArea;\r\n\t\tvar opts = chart.options;\r\n\t\tvar ratioX = 1;\r\n\t\tvar ratioY = 1;\r\n\t\tvar offsetX = 0;\r\n\t\tvar offsetY = 0;\r\n\t\tvar meta = me.getMeta();\r\n\t\tvar arcs = meta.data;\r\n\t\tvar cutout = opts.cutoutPercentage / 100 || 0;\r\n\t\tvar circumference = opts.circumference;\r\n\t\tvar chartWeight = me._getRingWeight(me.index);\r\n\t\tvar maxWidth, maxHeight, i, ilen;\r\n\r\n\t\t// If the chart's circumference isn't a full circle, calculate size as a ratio of the width/height of the arc\r\n\t\tif (circumference < DOUBLE_PI$1) {\r\n\t\t\tvar startAngle = opts.rotation % DOUBLE_PI$1;\r\n\t\t\tstartAngle += startAngle >= PI$1 ? -DOUBLE_PI$1 : startAngle < -PI$1 ? DOUBLE_PI$1 : 0;\r\n\t\t\tvar endAngle = startAngle + circumference;\r\n\t\t\tvar startX = Math.cos(startAngle);\r\n\t\t\tvar startY = Math.sin(startAngle);\r\n\t\t\tvar endX = Math.cos(endAngle);\r\n\t\t\tvar endY = Math.sin(endAngle);\r\n\t\t\tvar contains0 = (startAngle <= 0 && endAngle >= 0) || endAngle >= DOUBLE_PI$1;\r\n\t\t\tvar contains90 = (startAngle <= HALF_PI$1 && endAngle >= HALF_PI$1) || endAngle >= DOUBLE_PI$1 + HALF_PI$1;\r\n\t\t\tvar contains180 = startAngle === -PI$1 || endAngle >= PI$1;\r\n\t\t\tvar contains270 = (startAngle <= -HALF_PI$1 && endAngle >= -HALF_PI$1) || endAngle >= PI$1 + HALF_PI$1;\r\n\t\t\tvar minX = contains180 ? -1 : Math.min(startX, startX * cutout, endX, endX * cutout);\r\n\t\t\tvar minY = contains270 ? -1 : Math.min(startY, startY * cutout, endY, endY * cutout);\r\n\t\t\tvar maxX = contains0 ? 1 : Math.max(startX, startX * cutout, endX, endX * cutout);\r\n\t\t\tvar maxY = contains90 ? 1 : Math.max(startY, startY * cutout, endY, endY * cutout);\r\n\t\t\tratioX = (maxX - minX) / 2;\r\n\t\t\tratioY = (maxY - minY) / 2;\r\n\t\t\toffsetX = -(maxX + minX) / 2;\r\n\t\t\toffsetY = -(maxY + minY) / 2;\r\n\t\t}\r\n\r\n\t\tfor (i = 0, ilen = arcs.length; i < ilen; ++i) {\r\n\t\t\tarcs[i]._options = me._resolveDataElementOptions(arcs[i], i);\r\n\t\t}\r\n\r\n\t\tchart.borderWidth = me.getMaxBorderWidth();\r\n\t\tmaxWidth = (chartArea.right - chartArea.left - chart.borderWidth) / ratioX;\r\n\t\tmaxHeight = (chartArea.bottom - chartArea.top - chart.borderWidth) / ratioY;\r\n\t\tchart.outerRadius = Math.max(Math.min(maxWidth, maxHeight) / 2, 0);\r\n\t\tchart.innerRadius = Math.max(chart.outerRadius * cutout, 0);\r\n\t\tchart.radiusLength = (chart.outerRadius - chart.innerRadius) / (me._getVisibleDatasetWeightTotal() || 1);\r\n\t\tchart.offsetX = offsetX * chart.outerRadius;\r\n\t\tchart.offsetY = offsetY * chart.outerRadius;\r\n\r\n\t\tmeta.total = me.calculateTotal();\r\n\r\n\t\tme.outerRadius = chart.outerRadius - chart.radiusLength * me._getRingWeightOffset(me.index);\r\n\t\tme.innerRadius = Math.max(me.outerRadius - chart.radiusLength * chartWeight, 0);\r\n\r\n\t\tfor (i = 0, ilen = arcs.length; i < ilen; ++i) {\r\n\t\t\tme.updateElement(arcs[i], i, reset);\r\n\t\t}\r\n\t},\r\n\r\n\tupdateElement: function(arc, index, reset) {\r\n\t\tvar me = this;\r\n\t\tvar chart = me.chart;\r\n\t\tvar chartArea = chart.chartArea;\r\n\t\tvar opts = chart.options;\r\n\t\tvar animationOpts = opts.animation;\r\n\t\tvar centerX = (chartArea.left + chartArea.right) / 2;\r\n\t\tvar centerY = (chartArea.top + chartArea.bottom) / 2;\r\n\t\tvar startAngle = opts.rotation; // non reset case handled later\r\n\t\tvar endAngle = opts.rotation; // non reset case handled later\r\n\t\tvar dataset = me.getDataset();\r\n\t\tvar circumference = reset && animationOpts.animateRotate ? 0 : arc.hidden ? 0 : me.calculateCircumference(dataset.data[index]) * (opts.circumference / DOUBLE_PI$1);\r\n\t\tvar innerRadius = reset && animationOpts.animateScale ? 0 : me.innerRadius;\r\n\t\tvar outerRadius = reset && animationOpts.animateScale ? 0 : me.outerRadius;\r\n\t\tvar options = arc._options || {};\r\n\r\n\t\thelpers$1.extend(arc, {\r\n\t\t\t// Utility\r\n\t\t\t_datasetIndex: me.index,\r\n\t\t\t_index: index,\r\n\r\n\t\t\t// Desired view properties\r\n\t\t\t_model: {\r\n\t\t\t\tbackgroundColor: options.backgroundColor,\r\n\t\t\t\tborderColor: options.borderColor,\r\n\t\t\t\tborderWidth: options.borderWidth,\r\n\t\t\t\tborderAlign: options.borderAlign,\r\n\t\t\t\tx: centerX + chart.offsetX,\r\n\t\t\t\ty: centerY + chart.offsetY,\r\n\t\t\t\tstartAngle: startAngle,\r\n\t\t\t\tendAngle: endAngle,\r\n\t\t\t\tcircumference: circumference,\r\n\t\t\t\touterRadius: outerRadius,\r\n\t\t\t\tinnerRadius: innerRadius,\r\n\t\t\t\tlabel: helpers$1.valueAtIndexOrDefault(dataset.label, index, chart.data.labels[index])\r\n\t\t\t}\r\n\t\t});\r\n\r\n\t\tvar model = arc._model;\r\n\r\n\t\t// Set correct angles if not resetting\r\n\t\tif (!reset || !animationOpts.animateRotate) {\r\n\t\t\tif (index === 0) {\r\n\t\t\t\tmodel.startAngle = opts.rotation;\r\n\t\t\t} else {\r\n\t\t\t\tmodel.startAngle = me.getMeta().data[index - 1]._model.endAngle;\r\n\t\t\t}\r\n\r\n\t\t\tmodel.endAngle = model.startAngle + model.circumference;\r\n\t\t}\r\n\r\n\t\tarc.pivot();\r\n\t},\r\n\r\n\tcalculateTotal: function() {\r\n\t\tvar dataset = this.getDataset();\r\n\t\tvar meta = this.getMeta();\r\n\t\tvar total = 0;\r\n\t\tvar value;\r\n\r\n\t\thelpers$1.each(meta.data, function(element, index) {\r\n\t\t\tvalue = dataset.data[index];\r\n\t\t\tif (!isNaN(value) && !element.hidden) {\r\n\t\t\t\ttotal += Math.abs(value);\r\n\t\t\t}\r\n\t\t});\r\n\r\n\t\t/* if (total === 0) {\r\n\t\t\ttotal = NaN;\r\n\t\t}*/\r\n\r\n\t\treturn total;\r\n\t},\r\n\r\n\tcalculateCircumference: function(value) {\r\n\t\tvar total = this.getMeta().total;\r\n\t\tif (total > 0 && !isNaN(value)) {\r\n\t\t\treturn DOUBLE_PI$1 * (Math.abs(value) / total);\r\n\t\t}\r\n\t\treturn 0;\r\n\t},\r\n\r\n\t// gets the max border or hover width to properly scale pie charts\r\n\tgetMaxBorderWidth: function(arcs) {\r\n\t\tvar me = this;\r\n\t\tvar max = 0;\r\n\t\tvar chart = me.chart;\r\n\t\tvar i, ilen, meta, arc, controller, options, borderWidth, hoverWidth;\r\n\r\n\t\tif (!arcs) {\r\n\t\t\t// Find the outmost visible dataset\r\n\t\t\tfor (i = 0, ilen = chart.data.datasets.length; i < ilen; ++i) {\r\n\t\t\t\tif (chart.isDatasetVisible(i)) {\r\n\t\t\t\t\tmeta = chart.getDatasetMeta(i);\r\n\t\t\t\t\tarcs = meta.data;\r\n\t\t\t\t\tif (i !== me.index) {\r\n\t\t\t\t\t\tcontroller = meta.controller;\r\n\t\t\t\t\t}\r\n\t\t\t\t\tbreak;\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t}\r\n\r\n\t\tif (!arcs) {\r\n\t\t\treturn 0;\r\n\t\t}\r\n\r\n\t\tfor (i = 0, ilen = arcs.length; i < ilen; ++i) {\r\n\t\t\tarc = arcs[i];\r\n\t\t\tif (controller) {\r\n\t\t\t\tcontroller._configure();\r\n\t\t\t\toptions = controller._resolveDataElementOptions(arc, i);\r\n\t\t\t} else {\r\n\t\t\t\toptions = arc._options;\r\n\t\t\t}\r\n\t\t\tif (options.borderAlign !== 'inner') {\r\n\t\t\t\tborderWidth = options.borderWidth;\r\n\t\t\t\thoverWidth = options.hoverBorderWidth;\r\n\r\n\t\t\t\tmax = borderWidth > max ? borderWidth : max;\r\n\t\t\t\tmax = hoverWidth > max ? hoverWidth : max;\r\n\t\t\t}\r\n\t\t}\r\n\t\treturn max;\r\n\t},\r\n\r\n\t/**\r\n\t * @protected\r\n\t */\r\n\tsetHoverStyle: function(arc) {\r\n\t\tvar model = arc._model;\r\n\t\tvar options = arc._options;\r\n\t\tvar getHoverColor = helpers$1.getHoverColor;\r\n\r\n\t\tarc.$previousStyle = {\r\n\t\t\tbackgroundColor: model.backgroundColor,\r\n\t\t\tborderColor: model.borderColor,\r\n\t\t\tborderWidth: model.borderWidth,\r\n\t\t};\r\n\r\n\t\tmodel.backgroundColor = valueOrDefault$5(options.hoverBackgroundColor, getHoverColor(options.backgroundColor));\r\n\t\tmodel.borderColor = valueOrDefault$5(options.hoverBorderColor, getHoverColor(options.borderColor));\r\n\t\tmodel.borderWidth = valueOrDefault$5(options.hoverBorderWidth, options.borderWidth);\r\n\t},\r\n\r\n\t/**\r\n\t * Get radius length offset of the dataset in relation to the visible datasets weights. This allows determining the inner and outer radius correctly\r\n\t * @private\r\n\t */\r\n\t_getRingWeightOffset: function(datasetIndex) {\r\n\t\tvar ringWeightOffset = 0;\r\n\r\n\t\tfor (var i = 0; i < datasetIndex; ++i) {\r\n\t\t\tif (this.chart.isDatasetVisible(i)) {\r\n\t\t\t\tringWeightOffset += this._getRingWeight(i);\r\n\t\t\t}\r\n\t\t}\r\n\r\n\t\treturn ringWeightOffset;\r\n\t},\r\n\r\n\t/**\r\n\t * @private\r\n\t */\r\n\t_getRingWeight: function(dataSetIndex) {\r\n\t\treturn Math.max(valueOrDefault$5(this.chart.data.datasets[dataSetIndex].weight, 1), 0);\r\n\t},\r\n\r\n\t/**\r\n\t * Returns the sum of all visibile data set weights. This value can be 0.\r\n\t * @private\r\n\t */\r\n\t_getVisibleDatasetWeightTotal: function() {\r\n\t\treturn this._getRingWeightOffset(this.chart.data.datasets.length);\r\n\t}\r\n});\n\ncore_defaults._set('horizontalBar', {\r\n\thover: {\r\n\t\tmode: 'index',\r\n\t\taxis: 'y'\r\n\t},\r\n\r\n\tscales: {\r\n\t\txAxes: [{\r\n\t\t\ttype: 'linear',\r\n\t\t\tposition: 'bottom'\r\n\t\t}],\r\n\r\n\t\tyAxes: [{\r\n\t\t\ttype: 'category',\r\n\t\t\tposition: 'left',\r\n\t\t\toffset: true,\r\n\t\t\tgridLines: {\r\n\t\t\t\toffsetGridLines: true\r\n\t\t\t}\r\n\t\t}]\r\n\t},\r\n\r\n\telements: {\r\n\t\trectangle: {\r\n\t\t\tborderSkipped: 'left'\r\n\t\t}\r\n\t},\r\n\r\n\ttooltips: {\r\n\t\tmode: 'index',\r\n\t\taxis: 'y'\r\n\t}\r\n});\r\n\r\ncore_defaults._set('global', {\r\n\tdatasets: {\r\n\t\thorizontalBar: {\r\n\t\t\tcategoryPercentage: 0.8,\r\n\t\t\tbarPercentage: 0.9\r\n\t\t}\r\n\t}\r\n});\r\n\r\nvar controller_horizontalBar = controller_bar.extend({\r\n\t/**\r\n\t * @private\r\n\t */\r\n\t_getValueScaleId: function() {\r\n\t\treturn this.getMeta().xAxisID;\r\n\t},\r\n\r\n\t/**\r\n\t * @private\r\n\t */\r\n\t_getIndexScaleId: function() {\r\n\t\treturn this.getMeta().yAxisID;\r\n\t}\r\n});\n\nvar valueOrDefault$6 = helpers$1.valueOrDefault;\r\nvar resolve$2 = helpers$1.options.resolve;\r\nvar isPointInArea = helpers$1.canvas._isPointInArea;\r\n\r\ncore_defaults._set('line', {\r\n\tshowLines: true,\r\n\tspanGaps: false,\r\n\r\n\thover: {\r\n\t\tmode: 'label'\r\n\t},\r\n\r\n\tscales: {\r\n\t\txAxes: [{\r\n\t\t\ttype: 'category',\r\n\t\t\tid: 'x-axis-0'\r\n\t\t}],\r\n\t\tyAxes: [{\r\n\t\t\ttype: 'linear',\r\n\t\t\tid: 'y-axis-0'\r\n\t\t}]\r\n\t}\r\n});\r\n\r\nfunction scaleClip(scale, halfBorderWidth) {\r\n\tvar tickOpts = scale && scale.options.ticks || {};\r\n\tvar reverse = tickOpts.reverse;\r\n\tvar min = tickOpts.min === undefined ? halfBorderWidth : 0;\r\n\tvar max = tickOpts.max === undefined ? halfBorderWidth : 0;\r\n\treturn {\r\n\t\tstart: reverse ? max : min,\r\n\t\tend: reverse ? min : max\r\n\t};\r\n}\r\n\r\nfunction defaultClip(xScale, yScale, borderWidth) {\r\n\tvar halfBorderWidth = borderWidth / 2;\r\n\tvar x = scaleClip(xScale, halfBorderWidth);\r\n\tvar y = scaleClip(yScale, halfBorderWidth);\r\n\r\n\treturn {\r\n\t\ttop: y.end,\r\n\t\tright: x.end,\r\n\t\tbottom: y.start,\r\n\t\tleft: x.start\r\n\t};\r\n}\r\n\r\nfunction toClip(value) {\r\n\tvar t, r, b, l;\r\n\r\n\tif (helpers$1.isObject(value)) {\r\n\t\tt = value.top;\r\n\t\tr = value.right;\r\n\t\tb = value.bottom;\r\n\t\tl = value.left;\r\n\t} else {\r\n\t\tt = r = b = l = value;\r\n\t}\r\n\r\n\treturn {\r\n\t\ttop: t,\r\n\t\tright: r,\r\n\t\tbottom: b,\r\n\t\tleft: l\r\n\t};\r\n}\r\n\r\n\r\nvar controller_line = core_datasetController.extend({\r\n\r\n\tdatasetElementType: elements.Line,\r\n\r\n\tdataElementType: elements.Point,\r\n\r\n\t/**\r\n\t * @private\r\n\t */\r\n\t_datasetElementOptions: [\r\n\t\t'backgroundColor',\r\n\t\t'borderCapStyle',\r\n\t\t'borderColor',\r\n\t\t'borderDash',\r\n\t\t'borderDashOffset',\r\n\t\t'borderJoinStyle',\r\n\t\t'borderWidth',\r\n\t\t'cubicInterpolationMode',\r\n\t\t'fill'\r\n\t],\r\n\r\n\t/**\r\n\t * @private\r\n\t */\r\n\t_dataElementOptions: {\r\n\t\tbackgroundColor: 'pointBackgroundColor',\r\n\t\tborderColor: 'pointBorderColor',\r\n\t\tborderWidth: 'pointBorderWidth',\r\n\t\thitRadius: 'pointHitRadius',\r\n\t\thoverBackgroundColor: 'pointHoverBackgroundColor',\r\n\t\thoverBorderColor: 'pointHoverBorderColor',\r\n\t\thoverBorderWidth: 'pointHoverBorderWidth',\r\n\t\thoverRadius: 'pointHoverRadius',\r\n\t\tpointStyle: 'pointStyle',\r\n\t\tradius: 'pointRadius',\r\n\t\trotation: 'pointRotation'\r\n\t},\r\n\r\n\tupdate: function(reset) {\r\n\t\tvar me = this;\r\n\t\tvar meta = me.getMeta();\r\n\t\tvar line = meta.dataset;\r\n\t\tvar points = meta.data || [];\r\n\t\tvar options = me.chart.options;\r\n\t\tvar config = me._config;\r\n\t\tvar showLine = me._showLine = valueOrDefault$6(config.showLine, options.showLines);\r\n\t\tvar i, ilen;\r\n\r\n\t\tme._xScale = me.getScaleForId(meta.xAxisID);\r\n\t\tme._yScale = me.getScaleForId(meta.yAxisID);\r\n\r\n\t\t// Update Line\r\n\t\tif (showLine) {\r\n\t\t\t// Compatibility: If the properties are defined with only the old name, use those values\r\n\t\t\tif (config.tension !== undefined && config.lineTension === undefined) {\r\n\t\t\t\tconfig.lineTension = config.tension;\r\n\t\t\t}\r\n\r\n\t\t\t// Utility\r\n\t\t\tline._scale = me._yScale;\r\n\t\t\tline._datasetIndex = me.index;\r\n\t\t\t// Data\r\n\t\t\tline._children = points;\r\n\t\t\t// Model\r\n\t\t\tline._model = me._resolveDatasetElementOptions(line);\r\n\r\n\t\t\tline.pivot();\r\n\t\t}\r\n\r\n\t\t// Update Points\r\n\t\tfor (i = 0, ilen = points.length; i < ilen; ++i) {\r\n\t\t\tme.updateElement(points[i], i, reset);\r\n\t\t}\r\n\r\n\t\tif (showLine && line._model.tension !== 0) {\r\n\t\t\tme.updateBezierControlPoints();\r\n\t\t}\r\n\r\n\t\t// Now pivot the point for animation\r\n\t\tfor (i = 0, ilen = points.length; i < ilen; ++i) {\r\n\t\t\tpoints[i].pivot();\r\n\t\t}\r\n\t},\r\n\r\n\tupdateElement: function(point, index, reset) {\r\n\t\tvar me = this;\r\n\t\tvar meta = me.getMeta();\r\n\t\tvar custom = point.custom || {};\r\n\t\tvar dataset = me.getDataset();\r\n\t\tvar datasetIndex = me.index;\r\n\t\tvar value = dataset.data[index];\r\n\t\tvar xScale = me._xScale;\r\n\t\tvar yScale = me._yScale;\r\n\t\tvar lineModel = meta.dataset._model;\r\n\t\tvar x, y;\r\n\r\n\t\tvar options = me._resolveDataElementOptions(point, index);\r\n\r\n\t\tx = xScale.getPixelForValue(typeof value === 'object' ? value : NaN, index, datasetIndex);\r\n\t\ty = reset ? yScale.getBasePixel() : me.calculatePointY(value, index, datasetIndex);\r\n\r\n\t\t// Utility\r\n\t\tpoint._xScale = xScale;\r\n\t\tpoint._yScale = yScale;\r\n\t\tpoint._options = options;\r\n\t\tpoint._datasetIndex = datasetIndex;\r\n\t\tpoint._index = index;\r\n\r\n\t\t// Desired view properties\r\n\t\tpoint._model = {\r\n\t\t\tx: x,\r\n\t\t\ty: y,\r\n\t\t\tskip: custom.skip || isNaN(x) || isNaN(y),\r\n\t\t\t// Appearance\r\n\t\t\tradius: options.radius,\r\n\t\t\tpointStyle: options.pointStyle,\r\n\t\t\trotation: options.rotation,\r\n\t\t\tbackgroundColor: options.backgroundColor,\r\n\t\t\tborderColor: options.borderColor,\r\n\t\t\tborderWidth: options.borderWidth,\r\n\t\t\ttension: valueOrDefault$6(custom.tension, lineModel ? lineModel.tension : 0),\r\n\t\t\tsteppedLine: lineModel ? lineModel.steppedLine : false,\r\n\t\t\t// Tooltip\r\n\t\t\thitRadius: options.hitRadius\r\n\t\t};\r\n\t},\r\n\r\n\t/**\r\n\t * @private\r\n\t */\r\n\t_resolveDatasetElementOptions: function(element) {\r\n\t\tvar me = this;\r\n\t\tvar config = me._config;\r\n\t\tvar custom = element.custom || {};\r\n\t\tvar options = me.chart.options;\r\n\t\tvar lineOptions = options.elements.line;\r\n\t\tvar values = core_datasetController.prototype._resolveDatasetElementOptions.apply(me, arguments);\r\n\r\n\t\t// The default behavior of lines is to break at null values, according\r\n\t\t// to https://github.com/chartjs/Chart.js/issues/2435#issuecomment-216718158\r\n\t\t// This option gives lines the ability to span gaps\r\n\t\tvalues.spanGaps = valueOrDefault$6(config.spanGaps, options.spanGaps);\r\n\t\tvalues.tension = valueOrDefault$6(config.lineTension, lineOptions.tension);\r\n\t\tvalues.steppedLine = resolve$2([custom.steppedLine, config.steppedLine, lineOptions.stepped]);\r\n\t\tvalues.clip = toClip(valueOrDefault$6(config.clip, defaultClip(me._xScale, me._yScale, values.borderWidth)));\r\n\r\n\t\treturn values;\r\n\t},\r\n\r\n\tcalculatePointY: function(value, index, datasetIndex) {\r\n\t\tvar me = this;\r\n\t\tvar chart = me.chart;\r\n\t\tvar yScale = me._yScale;\r\n\t\tvar sumPos = 0;\r\n\t\tvar sumNeg = 0;\r\n\t\tvar i, ds, dsMeta, stackedRightValue, rightValue, metasets, ilen;\r\n\r\n\t\tif (yScale.options.stacked) {\r\n\t\t\trightValue = +yScale.getRightValue(value);\r\n\t\t\tmetasets = chart._getSortedVisibleDatasetMetas();\r\n\t\t\tilen = metasets.length;\r\n\r\n\t\t\tfor (i = 0; i < ilen; ++i) {\r\n\t\t\t\tdsMeta = metasets[i];\r\n\t\t\t\tif (dsMeta.index === datasetIndex) {\r\n\t\t\t\t\tbreak;\r\n\t\t\t\t}\r\n\r\n\t\t\t\tds = chart.data.datasets[dsMeta.index];\r\n\t\t\t\tif (dsMeta.type === 'line' && dsMeta.yAxisID === yScale.id) {\r\n\t\t\t\t\tstackedRightValue = +yScale.getRightValue(ds.data[index]);\r\n\t\t\t\t\tif (stackedRightValue < 0) {\r\n\t\t\t\t\t\tsumNeg += stackedRightValue || 0;\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tsumPos += stackedRightValue || 0;\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t}\r\n\r\n\t\t\tif (rightValue < 0) {\r\n\t\t\t\treturn yScale.getPixelForValue(sumNeg + rightValue);\r\n\t\t\t}\r\n\t\t\treturn yScale.getPixelForValue(sumPos + rightValue);\r\n\t\t}\r\n\t\treturn yScale.getPixelForValue(value);\r\n\t},\r\n\r\n\tupdateBezierControlPoints: function() {\r\n\t\tvar me = this;\r\n\t\tvar chart = me.chart;\r\n\t\tvar meta = me.getMeta();\r\n\t\tvar lineModel = meta.dataset._model;\r\n\t\tvar area = chart.chartArea;\r\n\t\tvar points = meta.data || [];\r\n\t\tvar i, ilen, model, controlPoints;\r\n\r\n\t\t// Only consider points that are drawn in case the spanGaps option is used\r\n\t\tif (lineModel.spanGaps) {\r\n\t\t\tpoints = points.filter(function(pt) {\r\n\t\t\t\treturn !pt._model.skip;\r\n\t\t\t});\r\n\t\t}\r\n\r\n\t\tfunction capControlPoint(pt, min, max) {\r\n\t\t\treturn Math.max(Math.min(pt, max), min);\r\n\t\t}\r\n\r\n\t\tif (lineModel.cubicInterpolationMode === 'monotone') {\r\n\t\t\thelpers$1.splineCurveMonotone(points);\r\n\t\t} else {\r\n\t\t\tfor (i = 0, ilen = points.length; i < ilen; ++i) {\r\n\t\t\t\tmodel = points[i]._model;\r\n\t\t\t\tcontrolPoints = helpers$1.splineCurve(\r\n\t\t\t\t\thelpers$1.previousItem(points, i)._model,\r\n\t\t\t\t\tmodel,\r\n\t\t\t\t\thelpers$1.nextItem(points, i)._model,\r\n\t\t\t\t\tlineModel.tension\r\n\t\t\t\t);\r\n\t\t\t\tmodel.controlPointPreviousX = controlPoints.previous.x;\r\n\t\t\t\tmodel.controlPointPreviousY = controlPoints.previous.y;\r\n\t\t\t\tmodel.controlPointNextX = controlPoints.next.x;\r\n\t\t\t\tmodel.controlPointNextY = controlPoints.next.y;\r\n\t\t\t}\r\n\t\t}\r\n\r\n\t\tif (chart.options.elements.line.capBezierPoints) {\r\n\t\t\tfor (i = 0, ilen = points.length; i < ilen; ++i) {\r\n\t\t\t\tmodel = points[i]._model;\r\n\t\t\t\tif (isPointInArea(model, area)) {\r\n\t\t\t\t\tif (i > 0 && isPointInArea(points[i - 1]._model, area)) {\r\n\t\t\t\t\t\tmodel.controlPointPreviousX = capControlPoint(model.controlPointPreviousX, area.left, area.right);\r\n\t\t\t\t\t\tmodel.controlPointPreviousY = capControlPoint(model.controlPointPreviousY, area.top, area.bottom);\r\n\t\t\t\t\t}\r\n\t\t\t\t\tif (i < points.length - 1 && isPointInArea(points[i + 1]._model, area)) {\r\n\t\t\t\t\t\tmodel.controlPointNextX = capControlPoint(model.controlPointNextX, area.left, area.right);\r\n\t\t\t\t\t\tmodel.controlPointNextY = capControlPoint(model.controlPointNextY, area.top, area.bottom);\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t}\r\n\t},\r\n\r\n\tdraw: function() {\r\n\t\tvar me = this;\r\n\t\tvar chart = me.chart;\r\n\t\tvar meta = me.getMeta();\r\n\t\tvar points = meta.data || [];\r\n\t\tvar area = chart.chartArea;\r\n\t\tvar canvas = chart.canvas;\r\n\t\tvar i = 0;\r\n\t\tvar ilen = points.length;\r\n\t\tvar clip;\r\n\r\n\t\tif (me._showLine) {\r\n\t\t\tclip = meta.dataset._model.clip;\r\n\r\n\t\t\thelpers$1.canvas.clipArea(chart.ctx, {\r\n\t\t\t\tleft: clip.left === false ? 0 : area.left - clip.left,\r\n\t\t\t\tright: clip.right === false ? canvas.width : area.right + clip.right,\r\n\t\t\t\ttop: clip.top === false ? 0 : area.top - clip.top,\r\n\t\t\t\tbottom: clip.bottom === false ? canvas.height : area.bottom + clip.bottom\r\n\t\t\t});\r\n\r\n\t\t\tmeta.dataset.draw();\r\n\r\n\t\t\thelpers$1.canvas.unclipArea(chart.ctx);\r\n\t\t}\r\n\r\n\t\t// Draw the points\r\n\t\tfor (; i < ilen; ++i) {\r\n\t\t\tpoints[i].draw(area);\r\n\t\t}\r\n\t},\r\n\r\n\t/**\r\n\t * @protected\r\n\t */\r\n\tsetHoverStyle: function(point) {\r\n\t\tvar model = point._model;\r\n\t\tvar options = point._options;\r\n\t\tvar getHoverColor = helpers$1.getHoverColor;\r\n\r\n\t\tpoint.$previousStyle = {\r\n\t\t\tbackgroundColor: model.backgroundColor,\r\n\t\t\tborderColor: model.borderColor,\r\n\t\t\tborderWidth: model.borderWidth,\r\n\t\t\tradius: model.radius\r\n\t\t};\r\n\r\n\t\tmodel.backgroundColor = valueOrDefault$6(options.hoverBackgroundColor, getHoverColor(options.backgroundColor));\r\n\t\tmodel.borderColor = valueOrDefault$6(options.hoverBorderColor, getHoverColor(options.borderColor));\r\n\t\tmodel.borderWidth = valueOrDefault$6(options.hoverBorderWidth, options.borderWidth);\r\n\t\tmodel.radius = valueOrDefault$6(options.hoverRadius, options.radius);\r\n\t},\r\n});\n\nvar resolve$3 = helpers$1.options.resolve;\r\n\r\ncore_defaults._set('polarArea', {\r\n\tscale: {\r\n\t\ttype: 'radialLinear',\r\n\t\tangleLines: {\r\n\t\t\tdisplay: false\r\n\t\t},\r\n\t\tgridLines: {\r\n\t\t\tcircular: true\r\n\t\t},\r\n\t\tpointLabels: {\r\n\t\t\tdisplay: false\r\n\t\t},\r\n\t\tticks: {\r\n\t\t\tbeginAtZero: true\r\n\t\t}\r\n\t},\r\n\r\n\t// Boolean - Whether to animate the rotation of the chart\r\n\tanimation: {\r\n\t\tanimateRotate: true,\r\n\t\tanimateScale: true\r\n\t},\r\n\r\n\tstartAngle: -0.5 * Math.PI,\r\n\tlegendCallback: function(chart) {\r\n\t\tvar list = document.createElement('ul');\r\n\t\tvar data = chart.data;\r\n\t\tvar datasets = data.datasets;\r\n\t\tvar labels = data.labels;\r\n\t\tvar i, ilen, listItem, listItemSpan;\r\n\r\n\t\tlist.setAttribute('class', chart.id + '-legend');\r\n\t\tif (datasets.length) {\r\n\t\t\tfor (i = 0, ilen = datasets[0].data.length; i < ilen; ++i) {\r\n\t\t\t\tlistItem = list.appendChild(document.createElement('li'));\r\n\t\t\t\tlistItemSpan = listItem.appendChild(document.createElement('span'));\r\n\t\t\t\tlistItemSpan.style.backgroundColor = datasets[0].backgroundColor[i];\r\n\t\t\t\tif (labels[i]) {\r\n\t\t\t\t\tlistItem.appendChild(document.createTextNode(labels[i]));\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t}\r\n\r\n\t\treturn list.outerHTML;\r\n\t},\r\n\tlegend: {\r\n\t\tlabels: {\r\n\t\t\tgenerateLabels: function(chart) {\r\n\t\t\t\tvar data = chart.data;\r\n\t\t\t\tif (data.labels.length && data.datasets.length) {\r\n\t\t\t\t\treturn data.labels.map(function(label, i) {\r\n\t\t\t\t\t\tvar meta = chart.getDatasetMeta(0);\r\n\t\t\t\t\t\tvar style = meta.controller.getStyle(i);\r\n\r\n\t\t\t\t\t\treturn {\r\n\t\t\t\t\t\t\ttext: label,\r\n\t\t\t\t\t\t\tfillStyle: style.backgroundColor,\r\n\t\t\t\t\t\t\tstrokeStyle: style.borderColor,\r\n\t\t\t\t\t\t\tlineWidth: style.borderWidth,\r\n\t\t\t\t\t\t\thidden: isNaN(data.datasets[0].data[i]) || meta.data[i].hidden,\r\n\r\n\t\t\t\t\t\t\t// Extra data used for toggling the correct item\r\n\t\t\t\t\t\t\tindex: i\r\n\t\t\t\t\t\t};\r\n\t\t\t\t\t});\r\n\t\t\t\t}\r\n\t\t\t\treturn [];\r\n\t\t\t}\r\n\t\t},\r\n\r\n\t\tonClick: function(e, legendItem) {\r\n\t\t\tvar index = legendItem.index;\r\n\t\t\tvar chart = this.chart;\r\n\t\t\tvar i, ilen, meta;\r\n\r\n\t\t\tfor (i = 0, ilen = (chart.data.datasets || []).length; i < ilen; ++i) {\r\n\t\t\t\tmeta = chart.getDatasetMeta(i);\r\n\t\t\t\tmeta.data[index].hidden = !meta.data[index].hidden;\r\n\t\t\t}\r\n\r\n\t\t\tchart.update();\r\n\t\t}\r\n\t},\r\n\r\n\t// Need to override these to give a nice default\r\n\ttooltips: {\r\n\t\tcallbacks: {\r\n\t\t\ttitle: function() {\r\n\t\t\t\treturn '';\r\n\t\t\t},\r\n\t\t\tlabel: function(item, data) {\r\n\t\t\t\treturn data.labels[item.index] + ': ' + item.yLabel;\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n});\r\n\r\nvar controller_polarArea = core_datasetController.extend({\r\n\r\n\tdataElementType: elements.Arc,\r\n\r\n\tlinkScales: helpers$1.noop,\r\n\r\n\t/**\r\n\t * @private\r\n\t */\r\n\t_dataElementOptions: [\r\n\t\t'backgroundColor',\r\n\t\t'borderColor',\r\n\t\t'borderWidth',\r\n\t\t'borderAlign',\r\n\t\t'hoverBackgroundColor',\r\n\t\t'hoverBorderColor',\r\n\t\t'hoverBorderWidth',\r\n\t],\r\n\r\n\t/**\r\n\t * @private\r\n\t */\r\n\t_getIndexScaleId: function() {\r\n\t\treturn this.chart.scale.id;\r\n\t},\r\n\r\n\t/**\r\n\t * @private\r\n\t */\r\n\t_getValueScaleId: function() {\r\n\t\treturn this.chart.scale.id;\r\n\t},\r\n\r\n\tupdate: function(reset) {\r\n\t\tvar me = this;\r\n\t\tvar dataset = me.getDataset();\r\n\t\tvar meta = me.getMeta();\r\n\t\tvar start = me.chart.options.startAngle || 0;\r\n\t\tvar starts = me._starts = [];\r\n\t\tvar angles = me._angles = [];\r\n\t\tvar arcs = meta.data;\r\n\t\tvar i, ilen, angle;\r\n\r\n\t\tme._updateRadius();\r\n\r\n\t\tmeta.count = me.countVisibleElements();\r\n\r\n\t\tfor (i = 0, ilen = dataset.data.length; i < ilen; i++) {\r\n\t\t\tstarts[i] = start;\r\n\t\t\tangle = me._computeAngle(i);\r\n\t\t\tangles[i] = angle;\r\n\t\t\tstart += angle;\r\n\t\t}\r\n\r\n\t\tfor (i = 0, ilen = arcs.length; i < ilen; ++i) {\r\n\t\t\tarcs[i]._options = me._resolveDataElementOptions(arcs[i], i);\r\n\t\t\tme.updateElement(arcs[i], i, reset);\r\n\t\t}\r\n\t},\r\n\r\n\t/**\r\n\t * @private\r\n\t */\r\n\t_updateRadius: function() {\r\n\t\tvar me = this;\r\n\t\tvar chart = me.chart;\r\n\t\tvar chartArea = chart.chartArea;\r\n\t\tvar opts = chart.options;\r\n\t\tvar minSize = Math.min(chartArea.right - chartArea.left, chartArea.bottom - chartArea.top);\r\n\r\n\t\tchart.outerRadius = Math.max(minSize / 2, 0);\r\n\t\tchart.innerRadius = Math.max(opts.cutoutPercentage ? (chart.outerRadius / 100) * (opts.cutoutPercentage) : 1, 0);\r\n\t\tchart.radiusLength = (chart.outerRadius - chart.innerRadius) / chart.getVisibleDatasetCount();\r\n\r\n\t\tme.outerRadius = chart.outerRadius - (chart.radiusLength * me.index);\r\n\t\tme.innerRadius = me.outerRadius - chart.radiusLength;\r\n\t},\r\n\r\n\tupdateElement: function(arc, index, reset) {\r\n\t\tvar me = this;\r\n\t\tvar chart = me.chart;\r\n\t\tvar dataset = me.getDataset();\r\n\t\tvar opts = chart.options;\r\n\t\tvar animationOpts = opts.animation;\r\n\t\tvar scale = chart.scale;\r\n\t\tvar labels = chart.data.labels;\r\n\r\n\t\tvar centerX = scale.xCenter;\r\n\t\tvar centerY = scale.yCenter;\r\n\r\n\t\t// var negHalfPI = -0.5 * Math.PI;\r\n\t\tvar datasetStartAngle = opts.startAngle;\r\n\t\tvar distance = arc.hidden ? 0 : scale.getDistanceFromCenterForValue(dataset.data[index]);\r\n\t\tvar startAngle = me._starts[index];\r\n\t\tvar endAngle = startAngle + (arc.hidden ? 0 : me._angles[index]);\r\n\r\n\t\tvar resetRadius = animationOpts.animateScale ? 0 : scale.getDistanceFromCenterForValue(dataset.data[index]);\r\n\t\tvar options = arc._options || {};\r\n\r\n\t\thelpers$1.extend(arc, {\r\n\t\t\t// Utility\r\n\t\t\t_datasetIndex: me.index,\r\n\t\t\t_index: index,\r\n\t\t\t_scale: scale,\r\n\r\n\t\t\t// Desired view properties\r\n\t\t\t_model: {\r\n\t\t\t\tbackgroundColor: options.backgroundColor,\r\n\t\t\t\tborderColor: options.borderColor,\r\n\t\t\t\tborderWidth: options.borderWidth,\r\n\t\t\t\tborderAlign: options.borderAlign,\r\n\t\t\t\tx: centerX,\r\n\t\t\t\ty: centerY,\r\n\t\t\t\tinnerRadius: 0,\r\n\t\t\t\touterRadius: reset ? resetRadius : distance,\r\n\t\t\t\tstartAngle: reset && animationOpts.animateRotate ? datasetStartAngle : startAngle,\r\n\t\t\t\tendAngle: reset && animationOpts.animateRotate ? datasetStartAngle : endAngle,\r\n\t\t\t\tlabel: helpers$1.valueAtIndexOrDefault(labels, index, labels[index])\r\n\t\t\t}\r\n\t\t});\r\n\r\n\t\tarc.pivot();\r\n\t},\r\n\r\n\tcountVisibleElements: function() {\r\n\t\tvar dataset = this.getDataset();\r\n\t\tvar meta = this.getMeta();\r\n\t\tvar count = 0;\r\n\r\n\t\thelpers$1.each(meta.data, function(element, index) {\r\n\t\t\tif (!isNaN(dataset.data[index]) && !element.hidden) {\r\n\t\t\t\tcount++;\r\n\t\t\t}\r\n\t\t});\r\n\r\n\t\treturn count;\r\n\t},\r\n\r\n\t/**\r\n\t * @protected\r\n\t */\r\n\tsetHoverStyle: function(arc) {\r\n\t\tvar model = arc._model;\r\n\t\tvar options = arc._options;\r\n\t\tvar getHoverColor = helpers$1.getHoverColor;\r\n\t\tvar valueOrDefault = helpers$1.valueOrDefault;\r\n\r\n\t\tarc.$previousStyle = {\r\n\t\t\tbackgroundColor: model.backgroundColor,\r\n\t\t\tborderColor: model.borderColor,\r\n\t\t\tborderWidth: model.borderWidth,\r\n\t\t};\r\n\r\n\t\tmodel.backgroundColor = valueOrDefault(options.hoverBackgroundColor, getHoverColor(options.backgroundColor));\r\n\t\tmodel.borderColor = valueOrDefault(options.hoverBorderColor, getHoverColor(options.borderColor));\r\n\t\tmodel.borderWidth = valueOrDefault(options.hoverBorderWidth, options.borderWidth);\r\n\t},\r\n\r\n\t/**\r\n\t * @private\r\n\t */\r\n\t_computeAngle: function(index) {\r\n\t\tvar me = this;\r\n\t\tvar count = this.getMeta().count;\r\n\t\tvar dataset = me.getDataset();\r\n\t\tvar meta = me.getMeta();\r\n\r\n\t\tif (isNaN(dataset.data[index]) || meta.data[index].hidden) {\r\n\t\t\treturn 0;\r\n\t\t}\r\n\r\n\t\t// Scriptable options\r\n\t\tvar context = {\r\n\t\t\tchart: me.chart,\r\n\t\t\tdataIndex: index,\r\n\t\t\tdataset: dataset,\r\n\t\t\tdatasetIndex: me.index\r\n\t\t};\r\n\r\n\t\treturn resolve$3([\r\n\t\t\tme.chart.options.elements.arc.angle,\r\n\t\t\t(2 * Math.PI) / count\r\n\t\t], context, index);\r\n\t}\r\n});\n\ncore_defaults._set('pie', helpers$1.clone(core_defaults.doughnut));\r\ncore_defaults._set('pie', {\r\n\tcutoutPercentage: 0\r\n});\r\n\r\n// Pie charts are Doughnut chart with different defaults\r\nvar controller_pie = controller_doughnut;\n\nvar valueOrDefault$7 = helpers$1.valueOrDefault;\r\n\r\ncore_defaults._set('radar', {\r\n\tspanGaps: false,\r\n\tscale: {\r\n\t\ttype: 'radialLinear'\r\n\t},\r\n\telements: {\r\n\t\tline: {\r\n\t\t\tfill: 'start',\r\n\t\t\ttension: 0 // no bezier in radar\r\n\t\t}\r\n\t}\r\n});\r\n\r\nvar controller_radar = core_datasetController.extend({\r\n\tdatasetElementType: elements.Line,\r\n\r\n\tdataElementType: elements.Point,\r\n\r\n\tlinkScales: helpers$1.noop,\r\n\r\n\t/**\r\n\t * @private\r\n\t */\r\n\t_datasetElementOptions: [\r\n\t\t'backgroundColor',\r\n\t\t'borderWidth',\r\n\t\t'borderColor',\r\n\t\t'borderCapStyle',\r\n\t\t'borderDash',\r\n\t\t'borderDashOffset',\r\n\t\t'borderJoinStyle',\r\n\t\t'fill'\r\n\t],\r\n\r\n\t/**\r\n\t * @private\r\n\t */\r\n\t_dataElementOptions: {\r\n\t\tbackgroundColor: 'pointBackgroundColor',\r\n\t\tborderColor: 'pointBorderColor',\r\n\t\tborderWidth: 'pointBorderWidth',\r\n\t\thitRadius: 'pointHitRadius',\r\n\t\thoverBackgroundColor: 'pointHoverBackgroundColor',\r\n\t\thoverBorderColor: 'pointHoverBorderColor',\r\n\t\thoverBorderWidth: 'pointHoverBorderWidth',\r\n\t\thoverRadius: 'pointHoverRadius',\r\n\t\tpointStyle: 'pointStyle',\r\n\t\tradius: 'pointRadius',\r\n\t\trotation: 'pointRotation'\r\n\t},\r\n\r\n\t/**\r\n\t * @private\r\n\t */\r\n\t_getIndexScaleId: function() {\r\n\t\treturn this.chart.scale.id;\r\n\t},\r\n\r\n\t/**\r\n\t * @private\r\n\t */\r\n\t_getValueScaleId: function() {\r\n\t\treturn this.chart.scale.id;\r\n\t},\r\n\r\n\tupdate: function(reset) {\r\n\t\tvar me = this;\r\n\t\tvar meta = me.getMeta();\r\n\t\tvar line = meta.dataset;\r\n\t\tvar points = meta.data || [];\r\n\t\tvar scale = me.chart.scale;\r\n\t\tvar config = me._config;\r\n\t\tvar i, ilen;\r\n\r\n\t\t// Compatibility: If the properties are defined with only the old name, use those values\r\n\t\tif (config.tension !== undefined && config.lineTension === undefined) {\r\n\t\t\tconfig.lineTension = config.tension;\r\n\t\t}\r\n\r\n\t\t// Utility\r\n\t\tline._scale = scale;\r\n\t\tline._datasetIndex = me.index;\r\n\t\t// Data\r\n\t\tline._children = points;\r\n\t\tline._loop = true;\r\n\t\t// Model\r\n\t\tline._model = me._resolveDatasetElementOptions(line);\r\n\r\n\t\tline.pivot();\r\n\r\n\t\t// Update Points\r\n\t\tfor (i = 0, ilen = points.length; i < ilen; ++i) {\r\n\t\t\tme.updateElement(points[i], i, reset);\r\n\t\t}\r\n\r\n\t\t// Update bezier control points\r\n\t\tme.updateBezierControlPoints();\r\n\r\n\t\t// Now pivot the point for animation\r\n\t\tfor (i = 0, ilen = points.length; i < ilen; ++i) {\r\n\t\t\tpoints[i].pivot();\r\n\t\t}\r\n\t},\r\n\r\n\tupdateElement: function(point, index, reset) {\r\n\t\tvar me = this;\r\n\t\tvar custom = point.custom || {};\r\n\t\tvar dataset = me.getDataset();\r\n\t\tvar scale = me.chart.scale;\r\n\t\tvar pointPosition = scale.getPointPositionForValue(index, dataset.data[index]);\r\n\t\tvar options = me._resolveDataElementOptions(point, index);\r\n\t\tvar lineModel = me.getMeta().dataset._model;\r\n\t\tvar x = reset ? scale.xCenter : pointPosition.x;\r\n\t\tvar y = reset ? scale.yCenter : pointPosition.y;\r\n\r\n\t\t// Utility\r\n\t\tpoint._scale = scale;\r\n\t\tpoint._options = options;\r\n\t\tpoint._datasetIndex = me.index;\r\n\t\tpoint._index = index;\r\n\r\n\t\t// Desired view properties\r\n\t\tpoint._model = {\r\n\t\t\tx: x, // value not used in dataset scale, but we want a consistent API between scales\r\n\t\t\ty: y,\r\n\t\t\tskip: custom.skip || isNaN(x) || isNaN(y),\r\n\t\t\t// Appearance\r\n\t\t\tradius: options.radius,\r\n\t\t\tpointStyle: options.pointStyle,\r\n\t\t\trotation: options.rotation,\r\n\t\t\tbackgroundColor: options.backgroundColor,\r\n\t\t\tborderColor: options.borderColor,\r\n\t\t\tborderWidth: options.borderWidth,\r\n\t\t\ttension: valueOrDefault$7(custom.tension, lineModel ? lineModel.tension : 0),\r\n\r\n\t\t\t// Tooltip\r\n\t\t\thitRadius: options.hitRadius\r\n\t\t};\r\n\t},\r\n\r\n\t/**\r\n\t * @private\r\n\t */\r\n\t_resolveDatasetElementOptions: function() {\r\n\t\tvar me = this;\r\n\t\tvar config = me._config;\r\n\t\tvar options = me.chart.options;\r\n\t\tvar values = core_datasetController.prototype._resolveDatasetElementOptions.apply(me, arguments);\r\n\r\n\t\tvalues.spanGaps = valueOrDefault$7(config.spanGaps, options.spanGaps);\r\n\t\tvalues.tension = valueOrDefault$7(config.lineTension, options.elements.line.tension);\r\n\r\n\t\treturn values;\r\n\t},\r\n\r\n\tupdateBezierControlPoints: function() {\r\n\t\tvar me = this;\r\n\t\tvar meta = me.getMeta();\r\n\t\tvar area = me.chart.chartArea;\r\n\t\tvar points = meta.data || [];\r\n\t\tvar i, ilen, model, controlPoints;\r\n\r\n\t\t// Only consider points that are drawn in case the spanGaps option is used\r\n\t\tif (meta.dataset._model.spanGaps) {\r\n\t\t\tpoints = points.filter(function(pt) {\r\n\t\t\t\treturn !pt._model.skip;\r\n\t\t\t});\r\n\t\t}\r\n\r\n\t\tfunction capControlPoint(pt, min, max) {\r\n\t\t\treturn Math.max(Math.min(pt, max), min);\r\n\t\t}\r\n\r\n\t\tfor (i = 0, ilen = points.length; i < ilen; ++i) {\r\n\t\t\tmodel = points[i]._model;\r\n\t\t\tcontrolPoints = helpers$1.splineCurve(\r\n\t\t\t\thelpers$1.previousItem(points, i, true)._model,\r\n\t\t\t\tmodel,\r\n\t\t\t\thelpers$1.nextItem(points, i, true)._model,\r\n\t\t\t\tmodel.tension\r\n\t\t\t);\r\n\r\n\t\t\t// Prevent the bezier going outside of the bounds of the graph\r\n\t\t\tmodel.controlPointPreviousX = capControlPoint(controlPoints.previous.x, area.left, area.right);\r\n\t\t\tmodel.controlPointPreviousY = capControlPoint(controlPoints.previous.y, area.top, area.bottom);\r\n\t\t\tmodel.controlPointNextX = capControlPoint(controlPoints.next.x, area.left, area.right);\r\n\t\t\tmodel.controlPointNextY = capControlPoint(controlPoints.next.y, area.top, area.bottom);\r\n\t\t}\r\n\t},\r\n\r\n\tsetHoverStyle: function(point) {\r\n\t\tvar model = point._model;\r\n\t\tvar options = point._options;\r\n\t\tvar getHoverColor = helpers$1.getHoverColor;\r\n\r\n\t\tpoint.$previousStyle = {\r\n\t\t\tbackgroundColor: model.backgroundColor,\r\n\t\t\tborderColor: model.borderColor,\r\n\t\t\tborderWidth: model.borderWidth,\r\n\t\t\tradius: model.radius\r\n\t\t};\r\n\r\n\t\tmodel.backgroundColor = valueOrDefault$7(options.hoverBackgroundColor, getHoverColor(options.backgroundColor));\r\n\t\tmodel.borderColor = valueOrDefault$7(options.hoverBorderColor, getHoverColor(options.borderColor));\r\n\t\tmodel.borderWidth = valueOrDefault$7(options.hoverBorderWidth, options.borderWidth);\r\n\t\tmodel.radius = valueOrDefault$7(options.hoverRadius, options.radius);\r\n\t}\r\n});\n\ncore_defaults._set('scatter', {\r\n\thover: {\r\n\t\tmode: 'single'\r\n\t},\r\n\r\n\tscales: {\r\n\t\txAxes: [{\r\n\t\t\tid: 'x-axis-1', // need an ID so datasets can reference the scale\r\n\t\t\ttype: 'linear', // scatter should not use a category axis\r\n\t\t\tposition: 'bottom'\r\n\t\t}],\r\n\t\tyAxes: [{\r\n\t\t\tid: 'y-axis-1',\r\n\t\t\ttype: 'linear',\r\n\t\t\tposition: 'left'\r\n\t\t}]\r\n\t},\r\n\r\n\ttooltips: {\r\n\t\tcallbacks: {\r\n\t\t\ttitle: function() {\r\n\t\t\t\treturn ''; // doesn't make sense for scatter since data are formatted as a point\r\n\t\t\t},\r\n\t\t\tlabel: function(item) {\r\n\t\t\t\treturn '(' + item.xLabel + ', ' + item.yLabel + ')';\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n});\r\n\r\ncore_defaults._set('global', {\r\n\tdatasets: {\r\n\t\tscatter: {\r\n\t\t\tshowLine: false\r\n\t\t}\r\n\t}\r\n});\r\n\r\n// Scatter charts use line controllers\r\nvar controller_scatter = controller_line;\n\n// NOTE export a map in which the key represents the controller type, not\r\n// the class, and so must be CamelCase in order to be correctly retrieved\r\n// by the controller in core.controller.js (`controllers[meta.type]`).\r\n\r\nvar controllers = {\r\n\tbar: controller_bar,\r\n\tbubble: controller_bubble,\r\n\tdoughnut: controller_doughnut,\r\n\thorizontalBar: controller_horizontalBar,\r\n\tline: controller_line,\r\n\tpolarArea: controller_polarArea,\r\n\tpie: controller_pie,\r\n\tradar: controller_radar,\r\n\tscatter: controller_scatter\r\n};\n\n/**\r\n * Helper function to get relative position for an event\r\n * @param {Event|IEvent} event - The event to get the position for\r\n * @param {Chart} chart - The chart\r\n * @returns {object} the event position\r\n */\r\nfunction getRelativePosition(e, chart) {\r\n\tif (e.native) {\r\n\t\treturn {\r\n\t\t\tx: e.x,\r\n\t\t\ty: e.y\r\n\t\t};\r\n\t}\r\n\r\n\treturn helpers$1.getRelativePosition(e, chart);\r\n}\r\n\r\n/**\r\n * Helper function to traverse all of the visible elements in the chart\r\n * @param {Chart} chart - the chart\r\n * @param {function} handler - the callback to execute for each visible item\r\n */\r\nfunction parseVisibleItems(chart, handler) {\r\n\tvar metasets = chart._getSortedVisibleDatasetMetas();\r\n\tvar metadata, i, j, ilen, jlen, element;\r\n\r\n\tfor (i = 0, ilen = metasets.length; i < ilen; ++i) {\r\n\t\tmetadata = metasets[i].data;\r\n\t\tfor (j = 0, jlen = metadata.length; j < jlen; ++j) {\r\n\t\t\telement = metadata[j];\r\n\t\t\tif (!element._view.skip) {\r\n\t\t\t\thandler(element);\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n}\r\n\r\n/**\r\n * Helper function to get the items that intersect the event position\r\n * @param {ChartElement[]} items - elements to filter\r\n * @param {object} position - the point to be nearest to\r\n * @return {ChartElement[]} the nearest items\r\n */\r\nfunction getIntersectItems(chart, position) {\r\n\tvar elements = [];\r\n\r\n\tparseVisibleItems(chart, function(element) {\r\n\t\tif (element.inRange(position.x, position.y)) {\r\n\t\t\telements.push(element);\r\n\t\t}\r\n\t});\r\n\r\n\treturn elements;\r\n}\r\n\r\n/**\r\n * Helper function to get the items nearest to the event position considering all visible items in teh chart\r\n * @param {Chart} chart - the chart to look at elements from\r\n * @param {object} position - the point to be nearest to\r\n * @param {boolean} intersect - if true, only consider items that intersect the position\r\n * @param {function} distanceMetric - function to provide the distance between points\r\n * @return {ChartElement[]} the nearest items\r\n */\r\nfunction getNearestItems(chart, position, intersect, distanceMetric) {\r\n\tvar minDistance = Number.POSITIVE_INFINITY;\r\n\tvar nearestItems = [];\r\n\r\n\tparseVisibleItems(chart, function(element) {\r\n\t\tif (intersect && !element.inRange(position.x, position.y)) {\r\n\t\t\treturn;\r\n\t\t}\r\n\r\n\t\tvar center = element.getCenterPoint();\r\n\t\tvar distance = distanceMetric(position, center);\r\n\t\tif (distance < minDistance) {\r\n\t\t\tnearestItems = [element];\r\n\t\t\tminDistance = distance;\r\n\t\t} else if (distance === minDistance) {\r\n\t\t\t// Can have multiple items at the same distance in which case we sort by size\r\n\t\t\tnearestItems.push(element);\r\n\t\t}\r\n\t});\r\n\r\n\treturn nearestItems;\r\n}\r\n\r\n/**\r\n * Get a distance metric function for two points based on the\r\n * axis mode setting\r\n * @param {string} axis - the axis mode. x|y|xy\r\n */\r\nfunction getDistanceMetricForAxis(axis) {\r\n\tvar useX = axis.indexOf('x') !== -1;\r\n\tvar useY = axis.indexOf('y') !== -1;\r\n\r\n\treturn function(pt1, pt2) {\r\n\t\tvar deltaX = useX ? Math.abs(pt1.x - pt2.x) : 0;\r\n\t\tvar deltaY = useY ? Math.abs(pt1.y - pt2.y) : 0;\r\n\t\treturn Math.sqrt(Math.pow(deltaX, 2) + Math.pow(deltaY, 2));\r\n\t};\r\n}\r\n\r\nfunction indexMode(chart, e, options) {\r\n\tvar position = getRelativePosition(e, chart);\r\n\t// Default axis for index mode is 'x' to match old behaviour\r\n\toptions.axis = options.axis || 'x';\r\n\tvar distanceMetric = getDistanceMetricForAxis(options.axis);\r\n\tvar items = options.intersect ? getIntersectItems(chart, position) : getNearestItems(chart, position, false, distanceMetric);\r\n\tvar elements = [];\r\n\r\n\tif (!items.length) {\r\n\t\treturn [];\r\n\t}\r\n\r\n\tchart._getSortedVisibleDatasetMetas().forEach(function(meta) {\r\n\t\tvar element = meta.data[items[0]._index];\r\n\r\n\t\t// don't count items that are skipped (null data)\r\n\t\tif (element && !element._view.skip) {\r\n\t\t\telements.push(element);\r\n\t\t}\r\n\t});\r\n\r\n\treturn elements;\r\n}\r\n\r\n/**\r\n * @interface IInteractionOptions\r\n */\r\n/**\r\n * If true, only consider items that intersect the point\r\n * @name IInterfaceOptions#boolean\r\n * @type Boolean\r\n */\r\n\r\n/**\r\n * Contains interaction related functions\r\n * @namespace Chart.Interaction\r\n */\r\nvar core_interaction = {\r\n\t// Helper function for different modes\r\n\tmodes: {\r\n\t\tsingle: function(chart, e) {\r\n\t\t\tvar position = getRelativePosition(e, chart);\r\n\t\t\tvar elements = [];\r\n\r\n\t\t\tparseVisibleItems(chart, function(element) {\r\n\t\t\t\tif (element.inRange(position.x, position.y)) {\r\n\t\t\t\t\telements.push(element);\r\n\t\t\t\t\treturn elements;\r\n\t\t\t\t}\r\n\t\t\t});\r\n\r\n\t\t\treturn elements.slice(0, 1);\r\n\t\t},\r\n\r\n\t\t/**\r\n\t\t * @function Chart.Interaction.modes.label\r\n\t\t * @deprecated since version 2.4.0\r\n\t\t * @todo remove at version 3\r\n\t\t * @private\r\n\t\t */\r\n\t\tlabel: indexMode,\r\n\r\n\t\t/**\r\n\t\t * Returns items at the same index. If the options.intersect parameter is true, we only return items if we intersect something\r\n\t\t * If the options.intersect mode is false, we find the nearest item and return the items at the same index as that item\r\n\t\t * @function Chart.Interaction.modes.index\r\n\t\t * @since v2.4.0\r\n\t\t * @param {Chart} chart - the chart we are returning items from\r\n\t\t * @param {Event} e - the event we are find things at\r\n\t\t * @param {IInteractionOptions} options - options to use during interaction\r\n\t\t * @return {Chart.Element[]} Array of elements that are under the point. If none are found, an empty array is returned\r\n\t\t */\r\n\t\tindex: indexMode,\r\n\r\n\t\t/**\r\n\t\t * Returns items in the same dataset. If the options.intersect parameter is true, we only return items if we intersect something\r\n\t\t * If the options.intersect is false, we find the nearest item and return the items in that dataset\r\n\t\t * @function Chart.Interaction.modes.dataset\r\n\t\t * @param {Chart} chart - the chart we are returning items from\r\n\t\t * @param {Event} e - the event we are find things at\r\n\t\t * @param {IInteractionOptions} options - options to use during interaction\r\n\t\t * @return {Chart.Element[]} Array of elements that are under the point. If none are found, an empty array is returned\r\n\t\t */\r\n\t\tdataset: function(chart, e, options) {\r\n\t\t\tvar position = getRelativePosition(e, chart);\r\n\t\t\toptions.axis = options.axis || 'xy';\r\n\t\t\tvar distanceMetric = getDistanceMetricForAxis(options.axis);\r\n\t\t\tvar items = options.intersect ? getIntersectItems(chart, position) : getNearestItems(chart, position, false, distanceMetric);\r\n\r\n\t\t\tif (items.length > 0) {\r\n\t\t\t\titems = chart.getDatasetMeta(items[0]._datasetIndex).data;\r\n\t\t\t}\r\n\r\n\t\t\treturn items;\r\n\t\t},\r\n\r\n\t\t/**\r\n\t\t * @function Chart.Interaction.modes.x-axis\r\n\t\t * @deprecated since version 2.4.0. Use index mode and intersect == true\r\n\t\t * @todo remove at version 3\r\n\t\t * @private\r\n\t\t */\r\n\t\t'x-axis': function(chart, e) {\r\n\t\t\treturn indexMode(chart, e, {intersect: false});\r\n\t\t},\r\n\r\n\t\t/**\r\n\t\t * Point mode returns all elements that hit test based on the event position\r\n\t\t * of the event\r\n\t\t * @function Chart.Interaction.modes.intersect\r\n\t\t * @param {Chart} chart - the chart we are returning items from\r\n\t\t * @param {Event} e - the event we are find things at\r\n\t\t * @return {Chart.Element[]} Array of elements that are under the point. If none are found, an empty array is returned\r\n\t\t */\r\n\t\tpoint: function(chart, e) {\r\n\t\t\tvar position = getRelativePosition(e, chart);\r\n\t\t\treturn getIntersectItems(chart, position);\r\n\t\t},\r\n\r\n\t\t/**\r\n\t\t * nearest mode returns the element closest to the point\r\n\t\t * @function Chart.Interaction.modes.intersect\r\n\t\t * @param {Chart} chart - the chart we are returning items from\r\n\t\t * @param {Event} e - the event we are find things at\r\n\t\t * @param {IInteractionOptions} options - options to use\r\n\t\t * @return {Chart.Element[]} Array of elements that are under the point. If none are found, an empty array is returned\r\n\t\t */\r\n\t\tnearest: function(chart, e, options) {\r\n\t\t\tvar position = getRelativePosition(e, chart);\r\n\t\t\toptions.axis = options.axis || 'xy';\r\n\t\t\tvar distanceMetric = getDistanceMetricForAxis(options.axis);\r\n\t\t\treturn getNearestItems(chart, position, options.intersect, distanceMetric);\r\n\t\t},\r\n\r\n\t\t/**\r\n\t\t * x mode returns the elements that hit-test at the current x coordinate\r\n\t\t * @function Chart.Interaction.modes.x\r\n\t\t * @param {Chart} chart - the chart we are returning items from\r\n\t\t * @param {Event} e - the event we are find things at\r\n\t\t * @param {IInteractionOptions} options - options to use\r\n\t\t * @return {Chart.Element[]} Array of elements that are under the point. If none are found, an empty array is returned\r\n\t\t */\r\n\t\tx: function(chart, e, options) {\r\n\t\t\tvar position = getRelativePosition(e, chart);\r\n\t\t\tvar items = [];\r\n\t\t\tvar intersectsItem = false;\r\n\r\n\t\t\tparseVisibleItems(chart, function(element) {\r\n\t\t\t\tif (element.inXRange(position.x)) {\r\n\t\t\t\t\titems.push(element);\r\n\t\t\t\t}\r\n\r\n\t\t\t\tif (element.inRange(position.x, position.y)) {\r\n\t\t\t\t\tintersectsItem = true;\r\n\t\t\t\t}\r\n\t\t\t});\r\n\r\n\t\t\t// If we want to trigger on an intersect and we don't have any items\r\n\t\t\t// that intersect the position, return nothing\r\n\t\t\tif (options.intersect && !intersectsItem) {\r\n\t\t\t\titems = [];\r\n\t\t\t}\r\n\t\t\treturn items;\r\n\t\t},\r\n\r\n\t\t/**\r\n\t\t * y mode returns the elements that hit-test at the current y coordinate\r\n\t\t * @function Chart.Interaction.modes.y\r\n\t\t * @param {Chart} chart - the chart we are returning items from\r\n\t\t * @param {Event} e - the event we are find things at\r\n\t\t * @param {IInteractionOptions} options - options to use\r\n\t\t * @return {Chart.Element[]} Array of elements that are under the point. If none are found, an empty array is returned\r\n\t\t */\r\n\t\ty: function(chart, e, options) {\r\n\t\t\tvar position = getRelativePosition(e, chart);\r\n\t\t\tvar items = [];\r\n\t\t\tvar intersectsItem = false;\r\n\r\n\t\t\tparseVisibleItems(chart, function(element) {\r\n\t\t\t\tif (element.inYRange(position.y)) {\r\n\t\t\t\t\titems.push(element);\r\n\t\t\t\t}\r\n\r\n\t\t\t\tif (element.inRange(position.x, position.y)) {\r\n\t\t\t\t\tintersectsItem = true;\r\n\t\t\t\t}\r\n\t\t\t});\r\n\r\n\t\t\t// If we want to trigger on an intersect and we don't have any items\r\n\t\t\t// that intersect the position, return nothing\r\n\t\t\tif (options.intersect && !intersectsItem) {\r\n\t\t\t\titems = [];\r\n\t\t\t}\r\n\t\t\treturn items;\r\n\t\t}\r\n\t}\r\n};\n\nvar extend = helpers$1.extend;\r\n\r\nfunction filterByPosition(array, position) {\r\n\treturn helpers$1.where(array, function(v) {\r\n\t\treturn v.pos === position;\r\n\t});\r\n}\r\n\r\nfunction sortByWeight(array, reverse) {\r\n\treturn array.sort(function(a, b) {\r\n\t\tvar v0 = reverse ? b : a;\r\n\t\tvar v1 = reverse ? a : b;\r\n\t\treturn v0.weight === v1.weight ?\r\n\t\t\tv0.index - v1.index :\r\n\t\t\tv0.weight - v1.weight;\r\n\t});\r\n}\r\n\r\nfunction wrapBoxes(boxes) {\r\n\tvar layoutBoxes = [];\r\n\tvar i, ilen, box;\r\n\r\n\tfor (i = 0, ilen = (boxes || []).length; i < ilen; ++i) {\r\n\t\tbox = boxes[i];\r\n\t\tlayoutBoxes.push({\r\n\t\t\tindex: i,\r\n\t\t\tbox: box,\r\n\t\t\tpos: box.position,\r\n\t\t\thorizontal: box.isHorizontal(),\r\n\t\t\tweight: box.weight\r\n\t\t});\r\n\t}\r\n\treturn layoutBoxes;\r\n}\r\n\r\nfunction setLayoutDims(layouts, params) {\r\n\tvar i, ilen, layout;\r\n\tfor (i = 0, ilen = layouts.length; i < ilen; ++i) {\r\n\t\tlayout = layouts[i];\r\n\t\t// store width used instead of chartArea.w in fitBoxes\r\n\t\tlayout.width = layout.horizontal\r\n\t\t\t? layout.box.fullWidth && params.availableWidth\r\n\t\t\t: params.vBoxMaxWidth;\r\n\t\t// store height used instead of chartArea.h in fitBoxes\r\n\t\tlayout.height = layout.horizontal && params.hBoxMaxHeight;\r\n\t}\r\n}\r\n\r\nfunction buildLayoutBoxes(boxes) {\r\n\tvar layoutBoxes = wrapBoxes(boxes);\r\n\tvar left = sortByWeight(filterByPosition(layoutBoxes, 'left'), true);\r\n\tvar right = sortByWeight(filterByPosition(layoutBoxes, 'right'));\r\n\tvar top = sortByWeight(filterByPosition(layoutBoxes, 'top'), true);\r\n\tvar bottom = sortByWeight(filterByPosition(layoutBoxes, 'bottom'));\r\n\r\n\treturn {\r\n\t\tleftAndTop: left.concat(top),\r\n\t\trightAndBottom: right.concat(bottom),\r\n\t\tchartArea: filterByPosition(layoutBoxes, 'chartArea'),\r\n\t\tvertical: left.concat(right),\r\n\t\thorizontal: top.concat(bottom)\r\n\t};\r\n}\r\n\r\nfunction getCombinedMax(maxPadding, chartArea, a, b) {\r\n\treturn Math.max(maxPadding[a], chartArea[a]) + Math.max(maxPadding[b], chartArea[b]);\r\n}\r\n\r\nfunction updateDims(chartArea, params, layout) {\r\n\tvar box = layout.box;\r\n\tvar maxPadding = chartArea.maxPadding;\r\n\tvar newWidth, newHeight;\r\n\r\n\tif (layout.size) {\r\n\t\t// this layout was already counted for, lets first reduce old size\r\n\t\tchartArea[layout.pos] -= layout.size;\r\n\t}\r\n\tlayout.size = layout.horizontal ? box.height : box.width;\r\n\tchartArea[layout.pos] += layout.size;\r\n\r\n\tif (box.getPadding) {\r\n\t\tvar boxPadding = box.getPadding();\r\n\t\tmaxPadding.top = Math.max(maxPadding.top, boxPadding.top);\r\n\t\tmaxPadding.left = Math.max(maxPadding.left, boxPadding.left);\r\n\t\tmaxPadding.bottom = Math.max(maxPadding.bottom, boxPadding.bottom);\r\n\t\tmaxPadding.right = Math.max(maxPadding.right, boxPadding.right);\r\n\t}\r\n\r\n\tnewWidth = params.outerWidth - getCombinedMax(maxPadding, chartArea, 'left', 'right');\r\n\tnewHeight = params.outerHeight - getCombinedMax(maxPadding, chartArea, 'top', 'bottom');\r\n\r\n\tif (newWidth !== chartArea.w || newHeight !== chartArea.h) {\r\n\t\tchartArea.w = newWidth;\r\n\t\tchartArea.h = newHeight;\r\n\r\n\t\t// return true if chart area changed in layout's direction\r\n\t\tvar sizes = layout.horizontal ? [newWidth, chartArea.w] : [newHeight, chartArea.h];\r\n\t\treturn sizes[0] !== sizes[1] && (!isNaN(sizes[0]) || !isNaN(sizes[1]));\r\n\t}\r\n}\r\n\r\nfunction handleMaxPadding(chartArea) {\r\n\tvar maxPadding = chartArea.maxPadding;\r\n\r\n\tfunction updatePos(pos) {\r\n\t\tvar change = Math.max(maxPadding[pos] - chartArea[pos], 0);\r\n\t\tchartArea[pos] += change;\r\n\t\treturn change;\r\n\t}\r\n\tchartArea.y += updatePos('top');\r\n\tchartArea.x += updatePos('left');\r\n\tupdatePos('right');\r\n\tupdatePos('bottom');\r\n}\r\n\r\nfunction getMargins(horizontal, chartArea) {\r\n\tvar maxPadding = chartArea.maxPadding;\r\n\r\n\tfunction marginForPositions(positions) {\r\n\t\tvar margin = {left: 0, top: 0, right: 0, bottom: 0};\r\n\t\tpositions.forEach(function(pos) {\r\n\t\t\tmargin[pos] = Math.max(chartArea[pos], maxPadding[pos]);\r\n\t\t});\r\n\t\treturn margin;\r\n\t}\r\n\r\n\treturn horizontal\r\n\t\t? marginForPositions(['left', 'right'])\r\n\t\t: marginForPositions(['top', 'bottom']);\r\n}\r\n\r\nfunction fitBoxes(boxes, chartArea, params) {\r\n\tvar refitBoxes = [];\r\n\tvar i, ilen, layout, box, refit, changed;\r\n\r\n\tfor (i = 0, ilen = boxes.length; i < ilen; ++i) {\r\n\t\tlayout = boxes[i];\r\n\t\tbox = layout.box;\r\n\r\n\t\tbox.update(\r\n\t\t\tlayout.width || chartArea.w,\r\n\t\t\tlayout.height || chartArea.h,\r\n\t\t\tgetMargins(layout.horizontal, chartArea)\r\n\t\t);\r\n\t\tif (updateDims(chartArea, params, layout)) {\r\n\t\t\tchanged = true;\r\n\t\t\tif (refitBoxes.length) {\r\n\t\t\t\t// Dimensions changed and there were non full width boxes before this\r\n\t\t\t\t// -> we have to refit those\r\n\t\t\t\trefit = true;\r\n\t\t\t}\r\n\t\t}\r\n\t\tif (!box.fullWidth) { // fullWidth boxes don't need to be re-fitted in any case\r\n\t\t\trefitBoxes.push(layout);\r\n\t\t}\r\n\t}\r\n\r\n\treturn refit ? fitBoxes(refitBoxes, chartArea, params) || changed : changed;\r\n}\r\n\r\nfunction placeBoxes(boxes, chartArea, params) {\r\n\tvar userPadding = params.padding;\r\n\tvar x = chartArea.x;\r\n\tvar y = chartArea.y;\r\n\tvar i, ilen, layout, box;\r\n\r\n\tfor (i = 0, ilen = boxes.length; i < ilen; ++i) {\r\n\t\tlayout = boxes[i];\r\n\t\tbox = layout.box;\r\n\t\tif (layout.horizontal) {\r\n\t\t\tbox.left = box.fullWidth ? userPadding.left : chartArea.left;\r\n\t\t\tbox.right = box.fullWidth ? params.outerWidth - userPadding.right : chartArea.left + chartArea.w;\r\n\t\t\tbox.top = y;\r\n\t\t\tbox.bottom = y + box.height;\r\n\t\t\tbox.width = box.right - box.left;\r\n\t\t\ty = box.bottom;\r\n\t\t} else {\r\n\t\t\tbox.left = x;\r\n\t\t\tbox.right = x + box.width;\r\n\t\t\tbox.top = chartArea.top;\r\n\t\t\tbox.bottom = chartArea.top + chartArea.h;\r\n\t\t\tbox.height = box.bottom - box.top;\r\n\t\t\tx = box.right;\r\n\t\t}\r\n\t}\r\n\r\n\tchartArea.x = x;\r\n\tchartArea.y = y;\r\n}\r\n\r\ncore_defaults._set('global', {\r\n\tlayout: {\r\n\t\tpadding: {\r\n\t\t\ttop: 0,\r\n\t\t\tright: 0,\r\n\t\t\tbottom: 0,\r\n\t\t\tleft: 0\r\n\t\t}\r\n\t}\r\n});\r\n\r\n/**\r\n * @interface ILayoutItem\r\n * @prop {string} position - The position of the item in the chart layout. Possible values are\r\n * 'left', 'top', 'right', 'bottom', and 'chartArea'\r\n * @prop {number} weight - The weight used to sort the item. Higher weights are further away from the chart area\r\n * @prop {boolean} fullWidth - if true, and the item is horizontal, then push vertical boxes down\r\n * @prop {function} isHorizontal - returns true if the layout item is horizontal (ie. top or bottom)\r\n * @prop {function} update - Takes two parameters: width and height. Returns size of item\r\n * @prop {function} getPadding - Returns an object with padding on the edges\r\n * @prop {number} width - Width of item. Must be valid after update()\r\n * @prop {number} height - Height of item. Must be valid after update()\r\n * @prop {number} left - Left edge of the item. Set by layout system and cannot be used in update\r\n * @prop {number} top - Top edge of the item. Set by layout system and cannot be used in update\r\n * @prop {number} right - Right edge of the item. Set by layout system and cannot be used in update\r\n * @prop {number} bottom - Bottom edge of the item. Set by layout system and cannot be used in update\r\n */\r\n\r\n// The layout service is very self explanatory. It's responsible for the layout within a chart.\r\n// Scales, Legends and Plugins all rely on the layout service and can easily register to be placed anywhere they need\r\n// It is this service's responsibility of carrying out that layout.\r\nvar core_layouts = {\r\n\tdefaults: {},\r\n\r\n\t/**\r\n\t * Register a box to a chart.\r\n\t * A box is simply a reference to an object that requires layout. eg. Scales, Legend, Title.\r\n\t * @param {Chart} chart - the chart to use\r\n\t * @param {ILayoutItem} item - the item to add to be layed out\r\n\t */\r\n\taddBox: function(chart, item) {\r\n\t\tif (!chart.boxes) {\r\n\t\t\tchart.boxes = [];\r\n\t\t}\r\n\r\n\t\t// initialize item with default values\r\n\t\titem.fullWidth = item.fullWidth || false;\r\n\t\titem.position = item.position || 'top';\r\n\t\titem.weight = item.weight || 0;\r\n\t\titem._layers = item._layers || function() {\r\n\t\t\treturn [{\r\n\t\t\t\tz: 0,\r\n\t\t\t\tdraw: function() {\r\n\t\t\t\t\titem.draw.apply(item, arguments);\r\n\t\t\t\t}\r\n\t\t\t}];\r\n\t\t};\r\n\r\n\t\tchart.boxes.push(item);\r\n\t},\r\n\r\n\t/**\r\n\t * Remove a layoutItem from a chart\r\n\t * @param {Chart} chart - the chart to remove the box from\r\n\t * @param {ILayoutItem} layoutItem - the item to remove from the layout\r\n\t */\r\n\tremoveBox: function(chart, layoutItem) {\r\n\t\tvar index = chart.boxes ? chart.boxes.indexOf(layoutItem) : -1;\r\n\t\tif (index !== -1) {\r\n\t\t\tchart.boxes.splice(index, 1);\r\n\t\t}\r\n\t},\r\n\r\n\t/**\r\n\t * Sets (or updates) options on the given `item`.\r\n\t * @param {Chart} chart - the chart in which the item lives (or will be added to)\r\n\t * @param {ILayoutItem} item - the item to configure with the given options\r\n\t * @param {object} options - the new item options.\r\n\t */\r\n\tconfigure: function(chart, item, options) {\r\n\t\tvar props = ['fullWidth', 'position', 'weight'];\r\n\t\tvar ilen = props.length;\r\n\t\tvar i = 0;\r\n\t\tvar prop;\r\n\r\n\t\tfor (; i < ilen; ++i) {\r\n\t\t\tprop = props[i];\r\n\t\t\tif (options.hasOwnProperty(prop)) {\r\n\t\t\t\titem[prop] = options[prop];\r\n\t\t\t}\r\n\t\t}\r\n\t},\r\n\r\n\t/**\r\n\t * Fits boxes of the given chart into the given size by having each box measure itself\r\n\t * then running a fitting algorithm\r\n\t * @param {Chart} chart - the chart\r\n\t * @param {number} width - the width to fit into\r\n\t * @param {number} height - the height to fit into\r\n\t */\r\n\tupdate: function(chart, width, height) {\r\n\t\tif (!chart) {\r\n\t\t\treturn;\r\n\t\t}\r\n\r\n\t\tvar layoutOptions = chart.options.layout || {};\r\n\t\tvar padding = helpers$1.options.toPadding(layoutOptions.padding);\r\n\r\n\t\tvar availableWidth = width - padding.width;\r\n\t\tvar availableHeight = height - padding.height;\r\n\t\tvar boxes = buildLayoutBoxes(chart.boxes);\r\n\t\tvar verticalBoxes = boxes.vertical;\r\n\t\tvar horizontalBoxes = boxes.horizontal;\r\n\r\n\t\t// Essentially we now have any number of boxes on each of the 4 sides.\r\n\t\t// Our canvas looks like the following.\r\n\t\t// The areas L1 and L2 are the left axes. R1 is the right axis, T1 is the top axis and\r\n\t\t// B1 is the bottom axis\r\n\t\t// There are also 4 quadrant-like locations (left to right instead of clockwise) reserved for chart overlays\r\n\t\t// These locations are single-box locations only, when trying to register a chartArea location that is already taken,\r\n\t\t// an error will be thrown.\r\n\t\t//\r\n\t\t// |----------------------------------------------------|\r\n\t\t// | T1 (Full Width) |\r\n\t\t// |----------------------------------------------------|\r\n\t\t// | | | T2 | |\r\n\t\t// | |----|-------------------------------------|----|\r\n\t\t// | | | C1 | | C2 | |\r\n\t\t// | | |----| |----| |\r\n\t\t// | | | | |\r\n\t\t// | L1 | L2 | ChartArea (C0) | R1 |\r\n\t\t// | | | | |\r\n\t\t// | | |----| |----| |\r\n\t\t// | | | C3 | | C4 | |\r\n\t\t// | |----|-------------------------------------|----|\r\n\t\t// | | | B1 | |\r\n\t\t// |----------------------------------------------------|\r\n\t\t// | B2 (Full Width) |\r\n\t\t// |----------------------------------------------------|\r\n\t\t//\r\n\r\n\t\tvar params = Object.freeze({\r\n\t\t\touterWidth: width,\r\n\t\t\touterHeight: height,\r\n\t\t\tpadding: padding,\r\n\t\t\tavailableWidth: availableWidth,\r\n\t\t\tvBoxMaxWidth: availableWidth / 2 / verticalBoxes.length,\r\n\t\t\thBoxMaxHeight: availableHeight / 2\r\n\t\t});\r\n\t\tvar chartArea = extend({\r\n\t\t\tmaxPadding: extend({}, padding),\r\n\t\t\tw: availableWidth,\r\n\t\t\th: availableHeight,\r\n\t\t\tx: padding.left,\r\n\t\t\ty: padding.top\r\n\t\t}, padding);\r\n\r\n\t\tsetLayoutDims(verticalBoxes.concat(horizontalBoxes), params);\r\n\r\n\t\t// First fit vertical boxes\r\n\t\tfitBoxes(verticalBoxes, chartArea, params);\r\n\r\n\t\t// Then fit horizontal boxes\r\n\t\tif (fitBoxes(horizontalBoxes, chartArea, params)) {\r\n\t\t\t// if the area changed, re-fit vertical boxes\r\n\t\t\tfitBoxes(verticalBoxes, chartArea, params);\r\n\t\t}\r\n\r\n\t\thandleMaxPadding(chartArea);\r\n\r\n\t\t// Finally place the boxes to correct coordinates\r\n\t\tplaceBoxes(boxes.leftAndTop, chartArea, params);\r\n\r\n\t\t// Move to opposite side of chart\r\n\t\tchartArea.x += chartArea.w;\r\n\t\tchartArea.y += chartArea.h;\r\n\r\n\t\tplaceBoxes(boxes.rightAndBottom, chartArea, params);\r\n\r\n\t\tchart.chartArea = {\r\n\t\t\tleft: chartArea.left,\r\n\t\t\ttop: chartArea.top,\r\n\t\t\tright: chartArea.left + chartArea.w,\r\n\t\t\tbottom: chartArea.top + chartArea.h\r\n\t\t};\r\n\r\n\t\t// Finally update boxes in chartArea (radial scale for example)\r\n\t\thelpers$1.each(boxes.chartArea, function(layout) {\r\n\t\t\tvar box = layout.box;\r\n\t\t\textend(box, chart.chartArea);\r\n\t\t\tbox.update(chartArea.w, chartArea.h);\r\n\t\t});\r\n\t}\r\n};\n\n/**\r\n * Platform fallback implementation (minimal).\r\n * @see https://github.com/chartjs/Chart.js/pull/4591#issuecomment-319575939\r\n */\r\n\r\nvar platform_basic = {\r\n\tacquireContext: function(item) {\r\n\t\tif (item && item.canvas) {\r\n\t\t\t// Support for any object associated to a canvas (including a context2d)\r\n\t\t\titem = item.canvas;\r\n\t\t}\r\n\r\n\t\treturn item && item.getContext('2d') || null;\r\n\t}\r\n};\n\nvar platform_dom = \"/*\\r\\n * DOM element rendering detection\\r\\n * https://davidwalsh.name/detect-node-insertion\\r\\n */\\r\\n@keyframes chartjs-render-animation {\\r\\n\\tfrom { opacity: 0.99; }\\r\\n\\tto { opacity: 1; }\\r\\n}\\r\\n\\r\\n.chartjs-render-monitor {\\r\\n\\tanimation: chartjs-render-animation 0.001s;\\r\\n}\\r\\n\\r\\n/*\\r\\n * DOM element resizing detection\\r\\n * https://github.com/marcj/css-element-queries\\r\\n */\\r\\n.chartjs-size-monitor,\\r\\n.chartjs-size-monitor-expand,\\r\\n.chartjs-size-monitor-shrink {\\r\\n\\tposition: absolute;\\r\\n\\tdirection: ltr;\\r\\n\\tleft: 0;\\r\\n\\ttop: 0;\\r\\n\\tright: 0;\\r\\n\\tbottom: 0;\\r\\n\\toverflow: hidden;\\r\\n\\tpointer-events: none;\\r\\n\\tvisibility: hidden;\\r\\n\\tz-index: -1;\\r\\n}\\r\\n\\r\\n.chartjs-size-monitor-expand > div {\\r\\n\\tposition: absolute;\\r\\n\\twidth: 1000000px;\\r\\n\\theight: 1000000px;\\r\\n\\tleft: 0;\\r\\n\\ttop: 0;\\r\\n}\\r\\n\\r\\n.chartjs-size-monitor-shrink > div {\\r\\n\\tposition: absolute;\\r\\n\\twidth: 200%;\\r\\n\\theight: 200%;\\r\\n\\tleft: 0;\\r\\n\\ttop: 0;\\r\\n}\\r\\n\";\n\nvar platform_dom$1 = /*#__PURE__*/Object.freeze({\n__proto__: null,\n'default': platform_dom\n});\n\nvar stylesheet = getCjsExportFromNamespace(platform_dom$1);\n\nvar EXPANDO_KEY = '$chartjs';\r\nvar CSS_PREFIX = 'chartjs-';\r\nvar CSS_SIZE_MONITOR = CSS_PREFIX + 'size-monitor';\r\nvar CSS_RENDER_MONITOR = CSS_PREFIX + 'render-monitor';\r\nvar CSS_RENDER_ANIMATION = CSS_PREFIX + 'render-animation';\r\nvar ANIMATION_START_EVENTS = ['animationstart', 'webkitAnimationStart'];\r\n\r\n/**\r\n * DOM event types -> Chart.js event types.\r\n * Note: only events with different types are mapped.\r\n * @see https://developer.mozilla.org/en-US/docs/Web/Events\r\n */\r\nvar EVENT_TYPES = {\r\n\ttouchstart: 'mousedown',\r\n\ttouchmove: 'mousemove',\r\n\ttouchend: 'mouseup',\r\n\tpointerenter: 'mouseenter',\r\n\tpointerdown: 'mousedown',\r\n\tpointermove: 'mousemove',\r\n\tpointerup: 'mouseup',\r\n\tpointerleave: 'mouseout',\r\n\tpointerout: 'mouseout'\r\n};\r\n\r\n/**\r\n * The \"used\" size is the final value of a dimension property after all calculations have\r\n * been performed. This method uses the computed style of `element` but returns undefined\r\n * if the computed style is not expressed in pixels. That can happen in some cases where\r\n * `element` has a size relative to its parent and this last one is not yet displayed,\r\n * for example because of `display: none` on a parent node.\r\n * @see https://developer.mozilla.org/en-US/docs/Web/CSS/used_value\r\n * @returns {number} Size in pixels or undefined if unknown.\r\n */\r\nfunction readUsedSize(element, property) {\r\n\tvar value = helpers$1.getStyle(element, property);\r\n\tvar matches = value && value.match(/^(\\d+)(\\.\\d+)?px$/);\r\n\treturn matches ? Number(matches[1]) : undefined;\r\n}\r\n\r\n/**\r\n * Initializes the canvas style and render size without modifying the canvas display size,\r\n * since responsiveness is handled by the controller.resize() method. The config is used\r\n * to determine the aspect ratio to apply in case no explicit height has been specified.\r\n */\r\nfunction initCanvas(canvas, config) {\r\n\tvar style = canvas.style;\r\n\r\n\t// NOTE(SB) canvas.getAttribute('width') !== canvas.width: in the first case it\r\n\t// returns null or '' if no explicit value has been set to the canvas attribute.\r\n\tvar renderHeight = canvas.getAttribute('height');\r\n\tvar renderWidth = canvas.getAttribute('width');\r\n\r\n\t// Chart.js modifies some canvas values that we want to restore on destroy\r\n\tcanvas[EXPANDO_KEY] = {\r\n\t\tinitial: {\r\n\t\t\theight: renderHeight,\r\n\t\t\twidth: renderWidth,\r\n\t\t\tstyle: {\r\n\t\t\t\tdisplay: style.display,\r\n\t\t\t\theight: style.height,\r\n\t\t\t\twidth: style.width\r\n\t\t\t}\r\n\t\t}\r\n\t};\r\n\r\n\t// Force canvas to display as block to avoid extra space caused by inline\r\n\t// elements, which would interfere with the responsive resize process.\r\n\t// https://github.com/chartjs/Chart.js/issues/2538\r\n\tstyle.display = style.display || 'block';\r\n\r\n\tif (renderWidth === null || renderWidth === '') {\r\n\t\tvar displayWidth = readUsedSize(canvas, 'width');\r\n\t\tif (displayWidth !== undefined) {\r\n\t\t\tcanvas.width = displayWidth;\r\n\t\t}\r\n\t}\r\n\r\n\tif (renderHeight === null || renderHeight === '') {\r\n\t\tif (canvas.style.height === '') {\r\n\t\t\t// If no explicit render height and style height, let's apply the aspect ratio,\r\n\t\t\t// which one can be specified by the user but also by charts as default option\r\n\t\t\t// (i.e. options.aspectRatio). If not specified, use canvas aspect ratio of 2.\r\n\t\t\tcanvas.height = canvas.width / (config.options.aspectRatio || 2);\r\n\t\t} else {\r\n\t\t\tvar displayHeight = readUsedSize(canvas, 'height');\r\n\t\t\tif (displayWidth !== undefined) {\r\n\t\t\t\tcanvas.height = displayHeight;\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n\r\n\treturn canvas;\r\n}\r\n\r\n/**\r\n * Detects support for options object argument in addEventListener.\r\n * https://developer.mozilla.org/en-US/docs/Web/API/EventTarget/addEventListener#Safely_detecting_option_support\r\n * @private\r\n */\r\nvar supportsEventListenerOptions = (function() {\r\n\tvar supports = false;\r\n\ttry {\r\n\t\tvar options = Object.defineProperty({}, 'passive', {\r\n\t\t\t// eslint-disable-next-line getter-return\r\n\t\t\tget: function() {\r\n\t\t\t\tsupports = true;\r\n\t\t\t}\r\n\t\t});\r\n\t\twindow.addEventListener('e', null, options);\r\n\t} catch (e) {\r\n\t\t// continue regardless of error\r\n\t}\r\n\treturn supports;\r\n}());\r\n\r\n// Default passive to true as expected by Chrome for 'touchstart' and 'touchend' events.\r\n// https://github.com/chartjs/Chart.js/issues/4287\r\nvar eventListenerOptions = supportsEventListenerOptions ? {passive: true} : false;\r\n\r\nfunction addListener(node, type, listener) {\r\n\tnode.addEventListener(type, listener, eventListenerOptions);\r\n}\r\n\r\nfunction removeListener(node, type, listener) {\r\n\tnode.removeEventListener(type, listener, eventListenerOptions);\r\n}\r\n\r\nfunction createEvent(type, chart, x, y, nativeEvent) {\r\n\treturn {\r\n\t\ttype: type,\r\n\t\tchart: chart,\r\n\t\tnative: nativeEvent || null,\r\n\t\tx: x !== undefined ? x : null,\r\n\t\ty: y !== undefined ? y : null,\r\n\t};\r\n}\r\n\r\nfunction fromNativeEvent(event, chart) {\r\n\tvar type = EVENT_TYPES[event.type] || event.type;\r\n\tvar pos = helpers$1.getRelativePosition(event, chart);\r\n\treturn createEvent(type, chart, pos.x, pos.y, event);\r\n}\r\n\r\nfunction throttled(fn, thisArg) {\r\n\tvar ticking = false;\r\n\tvar args = [];\r\n\r\n\treturn function() {\r\n\t\targs = Array.prototype.slice.call(arguments);\r\n\t\tthisArg = thisArg || this;\r\n\r\n\t\tif (!ticking) {\r\n\t\t\tticking = true;\r\n\t\t\thelpers$1.requestAnimFrame.call(window, function() {\r\n\t\t\t\tticking = false;\r\n\t\t\t\tfn.apply(thisArg, args);\r\n\t\t\t});\r\n\t\t}\r\n\t};\r\n}\r\n\r\nfunction createDiv(cls) {\r\n\tvar el = document.createElement('div');\r\n\tel.className = cls || '';\r\n\treturn el;\r\n}\r\n\r\n// Implementation based on https://github.com/marcj/css-element-queries\r\nfunction createResizer(handler) {\r\n\tvar maxSize = 1000000;\r\n\r\n\t// NOTE(SB) Don't use innerHTML because it could be considered unsafe.\r\n\t// https://github.com/chartjs/Chart.js/issues/5902\r\n\tvar resizer = createDiv(CSS_SIZE_MONITOR);\r\n\tvar expand = createDiv(CSS_SIZE_MONITOR + '-expand');\r\n\tvar shrink = createDiv(CSS_SIZE_MONITOR + '-shrink');\r\n\r\n\texpand.appendChild(createDiv());\r\n\tshrink.appendChild(createDiv());\r\n\r\n\tresizer.appendChild(expand);\r\n\tresizer.appendChild(shrink);\r\n\tresizer._reset = function() {\r\n\t\texpand.scrollLeft = maxSize;\r\n\t\texpand.scrollTop = maxSize;\r\n\t\tshrink.scrollLeft = maxSize;\r\n\t\tshrink.scrollTop = maxSize;\r\n\t};\r\n\r\n\tvar onScroll = function() {\r\n\t\tresizer._reset();\r\n\t\thandler();\r\n\t};\r\n\r\n\taddListener(expand, 'scroll', onScroll.bind(expand, 'expand'));\r\n\taddListener(shrink, 'scroll', onScroll.bind(shrink, 'shrink'));\r\n\r\n\treturn resizer;\r\n}\r\n\r\n// https://davidwalsh.name/detect-node-insertion\r\nfunction watchForRender(node, handler) {\r\n\tvar expando = node[EXPANDO_KEY] || (node[EXPANDO_KEY] = {});\r\n\tvar proxy = expando.renderProxy = function(e) {\r\n\t\tif (e.animationName === CSS_RENDER_ANIMATION) {\r\n\t\t\thandler();\r\n\t\t}\r\n\t};\r\n\r\n\thelpers$1.each(ANIMATION_START_EVENTS, function(type) {\r\n\t\taddListener(node, type, proxy);\r\n\t});\r\n\r\n\t// #4737: Chrome might skip the CSS animation when the CSS_RENDER_MONITOR class\r\n\t// is removed then added back immediately (same animation frame?). Accessing the\r\n\t// `offsetParent` property will force a reflow and re-evaluate the CSS animation.\r\n\t// https://gist.github.com/paulirish/5d52fb081b3570c81e3a#box-metrics\r\n\t// https://github.com/chartjs/Chart.js/issues/4737\r\n\texpando.reflow = !!node.offsetParent;\r\n\r\n\tnode.classList.add(CSS_RENDER_MONITOR);\r\n}\r\n\r\nfunction unwatchForRender(node) {\r\n\tvar expando = node[EXPANDO_KEY] || {};\r\n\tvar proxy = expando.renderProxy;\r\n\r\n\tif (proxy) {\r\n\t\thelpers$1.each(ANIMATION_START_EVENTS, function(type) {\r\n\t\t\tremoveListener(node, type, proxy);\r\n\t\t});\r\n\r\n\t\tdelete expando.renderProxy;\r\n\t}\r\n\r\n\tnode.classList.remove(CSS_RENDER_MONITOR);\r\n}\r\n\r\nfunction addResizeListener(node, listener, chart) {\r\n\tvar expando = node[EXPANDO_KEY] || (node[EXPANDO_KEY] = {});\r\n\r\n\t// Let's keep track of this added resizer and thus avoid DOM query when removing it.\r\n\tvar resizer = expando.resizer = createResizer(throttled(function() {\r\n\t\tif (expando.resizer) {\r\n\t\t\tvar container = chart.options.maintainAspectRatio && node.parentNode;\r\n\t\t\tvar w = container ? container.clientWidth : 0;\r\n\t\t\tlistener(createEvent('resize', chart));\r\n\t\t\tif (container && container.clientWidth < w && chart.canvas) {\r\n\t\t\t\t// If the container size shrank during chart resize, let's assume\r\n\t\t\t\t// scrollbar appeared. So we resize again with the scrollbar visible -\r\n\t\t\t\t// effectively making chart smaller and the scrollbar hidden again.\r\n\t\t\t\t// Because we are inside `throttled`, and currently `ticking`, scroll\r\n\t\t\t\t// events are ignored during this whole 2 resize process.\r\n\t\t\t\t// If we assumed wrong and something else happened, we are resizing\r\n\t\t\t\t// twice in a frame (potential performance issue)\r\n\t\t\t\tlistener(createEvent('resize', chart));\r\n\t\t\t}\r\n\t\t}\r\n\t}));\r\n\r\n\t// The resizer needs to be attached to the node parent, so we first need to be\r\n\t// sure that `node` is attached to the DOM before injecting the resizer element.\r\n\twatchForRender(node, function() {\r\n\t\tif (expando.resizer) {\r\n\t\t\tvar container = node.parentNode;\r\n\t\t\tif (container && container !== resizer.parentNode) {\r\n\t\t\t\tcontainer.insertBefore(resizer, container.firstChild);\r\n\t\t\t}\r\n\r\n\t\t\t// The container size might have changed, let's reset the resizer state.\r\n\t\t\tresizer._reset();\r\n\t\t}\r\n\t});\r\n}\r\n\r\nfunction removeResizeListener(node) {\r\n\tvar expando = node[EXPANDO_KEY] || {};\r\n\tvar resizer = expando.resizer;\r\n\r\n\tdelete expando.resizer;\r\n\tunwatchForRender(node);\r\n\r\n\tif (resizer && resizer.parentNode) {\r\n\t\tresizer.parentNode.removeChild(resizer);\r\n\t}\r\n}\r\n\r\n/**\r\n * Injects CSS styles inline if the styles are not already present.\r\n * @param {HTMLDocument|ShadowRoot} rootNode - the node to contain the \r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Calendar.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Calendar.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Calendar.vue?vue&type=template&id=5458987f&\"\nimport script from \"./Calendar.vue?vue&type=script&lang=js&\"\nexport * from \"./Calendar.vue?vue&type=script&lang=js&\"\nimport style0 from \"./Calendar.vue?vue&type=style&index=0&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","class FamiliaProductoTraduccion\r\n{\r\n idFamiliaProductoTraduccion = 0;\r\n descripcion = null;\r\n caracteristicasGenerales = null;\r\n hojaTecnica = undefined;\r\n hojaSeguridad = undefined;\r\n idiomas_idIdioma = 0;\r\n familiaProducto_idFamiliaProducto = 0;\r\n idioma = null;\r\n\r\n constructor(obj = {}) {\r\n Object.assign(this, obj);\r\n }\r\n}\r\n\r\nmodule.exports = FamiliaProductoTraduccion;\r\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('modal',{attrs:{\"show\":_vm.openModal,\"showClose\":false}},[_c('h4',{staticClass:\"title title-up\",attrs:{\"slot\":\"header\"},slot:\"header\"},[_vm._v(\" \"+_vm._s(_vm.$t(_vm.title))+\" \")]),_c('ValidationObserver',{ref:\"form\",scopedSlots:_vm._u([{key:\"default\",fn:function(ref){\nvar handleSubmit = ref.handleSubmit;\nreturn [_c('form',{on:{\"submit\":function($event){$event.preventDefault();return handleSubmit(_vm.submit)}}},[_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-sm-12\"},[_c('div',{staticClass:\"form-group has-label\"},[_c('label',{staticClass:\"col-form-label\"},[_vm._v(_vm._s(_vm.$t('app.modules.users.headers.name')))]),_c('ValidationProvider',{attrs:{\"name\":_vm.$t('app.modules.users.headers.name'),\"rules\":\"required\"},scopedSlots:_vm._u([{key:\"default\",fn:function(ref){\nvar passed = ref.passed;\nvar failed = ref.failed;\nreturn [_c('fg-input',{attrs:{\"type\":\"text\",\"error\":failed ? _vm.$t('app.general.required') : null,\"hasSuccess\":passed,\"placeholder\":_vm.$t('app.modules.users.headers.name')},model:{value:(_vm.user.nombre),callback:function ($$v) {_vm.$set(_vm.user, \"nombre\", $$v)},expression:\"user.nombre\"}})]}}],null,true)})],1),_c('div',{staticClass:\"form-group has-label\"},[_c('label',{staticClass:\"col-form-label\"},[_vm._v(_vm._s(_vm.$t('app.modules.users.headers.mail')))]),_c('ValidationProvider',{attrs:{\"name\":_vm.$t('app.modules.users.headers.mail'),\"rules\":\"required|email\"},scopedSlots:_vm._u([{key:\"default\",fn:function(ref){\nvar passed = ref.passed;\nvar failed = ref.failed;\nreturn [_c('fg-input',{attrs:{\"type\":\"email\",\"error\":failed ? _vm.$t('app.general.required') : null,\"hasSuccess\":passed,\"placeholder\":_vm.$t('app.modules.users.headers.mail')},model:{value:(_vm.user.correo),callback:function ($$v) {_vm.$set(_vm.user, \"correo\", $$v)},expression:\"user.correo\"}})]}}],null,true)})],1),_c('div',{staticClass:\"form-group has-label\"},[_c('label',[_vm._v(_vm._s(_vm.$t(\"app.modules.users.headers.type_user\")))]),_c('el-select',{attrs:{\"size\":\"large\",\"filterable\":\"\",\"placeholder\":_vm.$t('app.modules.users.headers.select_type_user')},model:{value:(_vm.user.accesoDatos),callback:function ($$v) {_vm.$set(_vm.user, \"accesoDatos\", $$v)},expression:\"user.accesoDatos\"}},[_c('el-option',{attrs:{\"value\":0,\"label\":_vm.$t('app.modules.users.headers.select_type_user')}}),_vm._l((_vm.typeUsers.vals),function(type,index){return _c('el-option',{key:'type-user-'+index,attrs:{\"value\":parseInt(index),\"label\":_vm.$t('app.enums.usuarios_vals.'+type)}})})],2)],1),(!_vm.user.externo)?_c('div',{staticClass:\"form-group has-label\"},[_c('label',[_vm._v(_vm._s(_vm.$t(\"app.modules.users.headers.role\")))]),_c('el-select',{attrs:{\"size\":\"large\",\"filterable\":\"\",\"placeholder\":_vm.$t('app.modules.users.headers.select_role')},model:{value:(_vm.user.roles_idRol),callback:function ($$v) {_vm.$set(_vm.user, \"roles_idRol\", $$v)},expression:\"user.roles_idRol\"}},[_c('el-option',{attrs:{\"value\":0,\"label\":_vm.$t('app.modules.users.headers.select_role')}}),_vm._l((_vm.roles),function(rol){return (!rol.externo)?_c('el-option',{key:rol.idRol,attrs:{\"value\":rol.idRol,\"label\":rol.nombre}}):_vm._e()})],2)],1):_vm._e(),_c('div',{staticClass:\"form-group has-label\",staticStyle:{\"margin-top\":\"20px\"}},[_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-6\"},[_c('label',{staticStyle:{\"margin-right\":\"10px\"}},[_vm._v(_vm._s(_vm.$t(\"app.general.state\"))+\": \")]),[_c('n-switch',{model:{value:(_vm.user.activo),callback:function ($$v) {_vm.$set(_vm.user, \"activo\", $$v)},expression:\"user.activo\"}},[_c('i',{staticClass:\"now-ui-icons ui-1_check\",attrs:{\"slot\":\"on\"},slot:\"on\"}),_c('i',{staticClass:\"now-ui-icons ui-1_simple-remove\",attrs:{\"slot\":\"off\"},slot:\"off\"})])]],2),_c('div',{staticClass:\"col-6\"},[_c('label',{staticStyle:{\"margin-right\":\"10px\"}},[_vm._v(_vm._s(_vm.$t(\"app.modules.users.headers.user\"))+\": \"),_c('strong',[_vm._v(_vm._s(_vm.user.externo ? _vm.$t('app.modules.users.headers.external') : _vm.$t('app.modules.users.headers.internal')))])])])])]),(!_vm.user.externo)?_c('div',{staticClass:\"form-group has-label\"},[_c('label',[_vm._v(_vm._s(_vm.$t(\"app.modules.users.headers.organization\")))]),_c('el-select',{attrs:{\"size\":\"large\",\"filterable\":\"\",\"placeholder\":_vm.$t('app.modules.users.headers.select_organization')},model:{value:(_vm.user.organizacion_idOrganizacion),callback:function ($$v) {_vm.$set(_vm.user, \"organizacion_idOrganizacion\", $$v)},expression:\"user.organizacion_idOrganizacion\"}},[_c('el-option',{attrs:{\"value\":0,\"label\":_vm.$t('app.modules.users.headers.select_organization')}}),_vm._l((_vm.organizations),function(org){return _c('el-option',{key:org.idOrganizacion,attrs:{\"value\":org.idOrganizacion,\"label\":org.nombre}})})],2)],1):_vm._e()])]),_c('div',{staticClass:\"text-right\",staticStyle:{\"margin-top\":\"10px\",\"padding-top\":\"20px\",\"border-top\":\"outset\"},attrs:{\"slot\":\"footer\"},slot:\"footer\"},[_c('n-button',{staticClass:\"pull-left\",nativeOn:{\"click\":function($event){return _vm.cancel($event)}}},[_vm._v(_vm._s(_vm.$t(\"app.buttons.cancel\")))]),_c('verify-permission',{attrs:{\"controller\":\"Usuarios\",\"action\":\"addUser\"}},[_c('n-button',{attrs:{\"native-type\":\"submit\",\"type\":\"primary\"}},[_vm._v(_vm._s(_vm.$t(\"app.buttons.save\")))])],1)],1)])]}}])})],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\n\r\n\r\n\r\n\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./usuarioAddEdit.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./usuarioAddEdit.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./usuarioAddEdit.vue?vue&type=template&id=2c73e755&scoped=true&\"\nimport script from \"./usuarioAddEdit.vue?vue&type=script&lang=js&\"\nexport * from \"./usuarioAddEdit.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"2c73e755\",\n null\n \n)\n\nexport default component.exports","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./horarioIngresoAdd.vue?vue&type=style&index=0&lang=css&\"","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('modal',{attrs:{\"show\":_vm.modalOpen,\"showClose\":false}},[_c('h4',{staticClass:\"title title-up\",attrs:{\"slot\":\"header\"},slot:\"header\"},[_vm._v(\" \"+_vm._s(_vm.title)+\" \")]),_c('form',{on:{\"submit\":function($event){$event.preventDefault();}}},[_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-6\"},[_c('fg-input',{staticClass:\"profile-label\",class:_vm.getClass(_vm.solicitud.telefono),attrs:{\"type\":\"text\",\"label\":_vm.$t('app.modules.customer_information_change.headers.phone'),\"placeholder\":_vm.$t('app.modules.customer_information_change.headers.phone'),\"disabled\":\"\",\"inputClasses\":_vm.getClass(_vm.solicitud.telefono),\"value\":_vm.getValue('telefono')}}),(_vm.solicitud.telefono != null)?_c('span',[_vm._v(\" \"+_vm._s(_vm.$t('app.modules.customer_information_change.headers.current'))+\": \"+_vm._s(_vm.item.telefono)+\" \")]):_vm._e()],1)]),_c('div',{staticClass:\"row\",staticStyle:{\"margin-top\":\"10px\"}},[_c('div',{staticClass:\"col-6\"},[_c('fg-input',{class:_vm.getClass(_vm.solicitud.rfc),attrs:{\"type\":\"text\",\"label\":_vm.$t('app.modules.customer_information_change.headers.rfc'),\"placeholder\":_vm.$t('app.modules.customer_information_change.headers.rfc'),\"disabled\":\"\",\"inputClasses\":_vm.getClass(_vm.solicitud.rfc),\"value\":_vm.getValue('rfc')}}),(_vm.solicitud.rfc != null)?_c('span',[_vm._v(\" \"+_vm._s(_vm.$t('app.modules.customer_information_change.headers.current'))+\": \"+_vm._s(_vm.item.rfc)+\" \")]):_vm._e(),_c('fg-input',{class:_vm.getClass(_vm.solicitud.calle),attrs:{\"type\":\"text\",\"label\":_vm.$t('app.modules.customer_information_change.headers.street'),\"placeholder\":_vm.$t('app.modules.customer_information_change.headers.street'),\"disabled\":\"\",\"inputClasses\":_vm.getClass(_vm.solicitud.calle),\"value\":_vm.getValue('calle')}}),(_vm.solicitud.calle != null)?_c('span',[_vm._v(\" \"+_vm._s(_vm.$t('app.modules.customer_information_change.headers.current'))+\": \"+_vm._s(_vm.item.calle)+\" \")]):_vm._e(),_c('fg-input',{class:_vm.getClass(_vm.solicitud.numExterior),attrs:{\"type\":\"text\",\"label\":_vm.$t('app.modules.customer_information_change.headers.numExt'),\"placeholder\":_vm.$t('app.modules.customer_information_change.headers.numExt'),\"disabled\":\"\",\"inputClasses\":_vm.getClass(_vm.solicitud.numExterior),\"value\":_vm.getValue('numExterior')}}),(_vm.solicitud.numExterior != null)?_c('span',[_vm._v(\" \"+_vm._s(_vm.$t('app.modules.customer_information_change.headers.current'))+\": \"+_vm._s(_vm.item.numExterior)+\" \")]):_vm._e(),_c('fg-input',{class:_vm.getClass(_vm.solicitud.numInterior),attrs:{\"type\":\"text\",\"label\":_vm.$t('app.modules.customer_information_change.headers.numInt'),\"placeholder\":_vm.$t('app.modules.customer_information_change.headers.numInt'),\"disabled\":\"\",\"inputClasses\":_vm.getClass(_vm.solicitud.numInterior),\"value\":_vm.getValue('numInterior')}}),(_vm.solicitud.numInterior != null)?_c('span',[_vm._v(\" \"+_vm._s(_vm.$t('app.modules.customer_information_change.headers.current'))+\": \"+_vm._s(_vm.item.numInterior)+\" \")]):_vm._e(),_c('fg-input',{class:_vm.getClass(_vm.solicitud.colonia),attrs:{\"type\":\"text\",\"label\":_vm.$t('app.modules.customer_information_change.headers.block'),\"placeholder\":_vm.$t('app.modules.customer_information_change.headers.block'),\"disabled\":\"\",\"inputClasses\":_vm.getClass(_vm.solicitud.colonia),\"value\":_vm.getValue('colonia')}}),(_vm.solicitud.colonia != null)?_c('span',[_vm._v(\" \"+_vm._s(_vm.$t('app.modules.customer_information_change.headers.current'))+\": \"+_vm._s(_vm.item.colonia)+\" \")]):_vm._e(),_c('fg-input',{class:_vm.getClass(_vm.solicitud.delegacionMunicipio),attrs:{\"type\":\"text\",\"label\":_vm.$t('app.modules.customer_information_change.headers.municipality'),\"placeholder\":_vm.$t('app.modules.customer_information_change.headers.municipality'),\"disabled\":\"\",\"inputClasses\":_vm.getClass(_vm.solicitud.delegacionMunicipio),\"value\":_vm.getValue('delegacionMunicipio')}}),(_vm.solicitud.delegacionMunicipio != null)?_c('span',[_vm._v(\" \"+_vm._s(_vm.$t('app.modules.customer_information_change.headers.current'))+\": \"+_vm._s(_vm.item.delegacionMunicipio)+\" \")]):_vm._e()],1),_c('div',{staticClass:\"col-6\"},[_c('fg-input',{class:_vm.getClass(_vm.solicitud.estado),attrs:{\"type\":\"text\",\"label\":_vm.$t('app.modules.customer_information_change.headers.state'),\"placeholder\":_vm.$t('app.modules.customer_information_change.headers.state'),\"disabled\":\"\",\"inputClasses\":_vm.getClass(_vm.solicitud.estado),\"value\":_vm.getValue('estado')}}),(_vm.solicitud.estado != null)?_c('span',[_vm._v(\" \"+_vm._s(_vm.$t('app.modules.customer_information_change.headers.current'))+\": \"+_vm._s(_vm.item.estado)+\" \")]):_vm._e(),_c('fg-input',{class:_vm.getClass(_vm.solicitud.pais),attrs:{\"type\":\"text\",\"label\":_vm.$t('app.modules.customer_information_change.headers.country'),\"placeholder\":_vm.$t('app.modules.customer_information_change.headers.country'),\"disabled\":\"\",\"inputClasses\":_vm.getClass(_vm.solicitud.pais),\"value\":_vm.getValue('pais')}}),(_vm.solicitud.pais != null)?_c('span',[_vm._v(\" \"+_vm._s(_vm.$t('app.modules.customer_information_change.headers.current'))+\": \"+_vm._s(_vm.item.pais)+\" \")]):_vm._e(),_c('fg-input',{class:_vm.getClass(_vm.solicitud.telefono1),attrs:{\"type\":\"text\",\"label\":_vm.$t('app.modules.customer_information_change.headers.phone1'),\"placeholder\":_vm.$t('app.modules.customer_information_change.headers.phone1'),\"disabled\":\"\",\"inputClasses\":_vm.getClass(_vm.solicitud.telefono1),\"value\":_vm.getValue('telefono1')}}),(_vm.solicitud.telefono1 != null)?_c('span',[_vm._v(\" \"+_vm._s(_vm.$t('app.modules.customer_information_change.headers.current'))+\": \"+_vm._s(_vm.item.telefono1)+\" \")]):_vm._e(),_c('fg-input',{class:_vm.getClass(_vm.solicitud.telefono2),attrs:{\"type\":\"text\",\"label\":_vm.$t('app.modules.customer_information_change.headers.phone2'),\"placeholder\":_vm.$t('app.modules.customer_information_change.headers.phone2'),\"disabled\":\"\",\"inputClasses\":_vm.getClass(_vm.solicitud.telefono2),\"value\":_vm.getValue('telefono2')}}),(_vm.solicitud.telefono2 != null)?_c('span',[_vm._v(\" \"+_vm._s(_vm.$t('app.modules.customer_information_change.headers.current'))+\": \"+_vm._s(_vm.item.telefono2)+\" \")]):_vm._e(),_c('fg-input',{class:_vm.getClass(_vm.solicitud.codigoPostal),attrs:{\"type\":\"text\",\"label\":_vm.$t('app.modules.customer_information_change.headers.postal_code'),\"placeholder\":_vm.$t('app.modules.customer_information_change.headers.postal_code'),\"disabled\":\"\",\"inputClasses\":_vm.getClass(_vm.solicitud.codigoPostal),\"value\":_vm.getValue('codigoPostal')}}),(_vm.solicitud.codigoPostal != null)?_c('span',[_vm._v(\" \"+_vm._s(_vm.$t('app.modules.customer_information_change.headers.current'))+\": \"+_vm._s(_vm.item.codigoPostal)+\" \")]):_vm._e()],1)]),_c('div',{staticClass:\"text-right\",staticStyle:{\"margin-top\":\"10px\",\"padding-top\":\"20px\",\"border-top\":\"outset\"},attrs:{\"slot\":\"footer\"},slot:\"footer\"},[_c('n-button',{staticClass:\"pull-left btn-secondary\",nativeOn:{\"click\":function($event){return _vm.close()}}},[_vm._v(_vm._s(_vm.$t(\"app.buttons.cancel\")))]),(_vm.solicitud.status === _vm.tiposStatus.PENDIENTE)?[_c('n-button',{staticStyle:{\"margin-right\":\"20px\"},attrs:{\"type\":\"secondary\",\"disabled\":_vm.inProgress},nativeOn:{\"click\":function($event){return _vm.rechazar()}}},[_vm._v(_vm._s(_vm.$t(\"app.modules.customer_information_change.buttons.refuse\")))]),_c('n-button',{attrs:{\"type\":\"primary\",\"disabled\":_vm.inProgress},nativeOn:{\"click\":function($event){return _vm.enviar()}}},[_vm._v(_vm._s(_vm.$t(\"app.modules.customer_information_change.buttons.send_acknowledgment\")))])]:(_vm.solicitud.status === _vm.tiposStatus.EN_PROGRESO)?[_c('n-button',{attrs:{\"type\":\"primary\",\"disabled\":_vm.inProgress},nativeOn:{\"click\":function($event){return _vm.finalizar()}}},[_vm._v(_vm._s(_vm.$t(\"app.modules.customer_information_change.buttons.finalize\")))])]:_vm._e()],2)])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\n\r\n\r\n\r\n\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./verSolicitud.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./verSolicitud.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./verSolicitud.vue?vue&type=template&id=017cfece&\"\nimport script from \"./verSolicitud.vue?vue&type=script&lang=js&\"\nexport * from \"./verSolicitud.vue?vue&type=script&lang=js&\"\nimport style0 from \"./verSolicitud.vue?vue&type=style&index=0&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('modal',{attrs:{\"show\":_vm.modalDocsAdd},on:{\"update:show\":function($event){_vm.modalDocsAdd=$event}}},[_c('h4',{staticClass:\"title text-purple\",attrs:{\"slot\":\"header\"},slot:\"header\"},[_vm._v(\" \"+_vm._s(_vm.$t(\"app.modules.orders.documents.current_documents\"))+\" \")]),_c('ValidationObserver',{ref:\"formAdd\",scopedSlots:_vm._u([{key:\"default\",fn:function(ref){\nvar handleSubmit = ref.handleSubmit;\nreturn [_c('form',{on:{\"submit\":function($event){$event.preventDefault();return handleSubmit(_vm.submitNewType)}}},[_c('div',{staticClass:\"col-sm-12\"},[_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"row text-left\"},[_c('div',{class:_vm.sizes},[_c('el-select',{staticClass:\"d-block\",attrs:{\"size\":\"large\",\"placeholder\":_vm.$t('app.modules.documentTypes.single')},on:{\"change\":_vm.changeSelect},model:{value:(_vm.item.tipo_documento),callback:function ($$v) {_vm.$set(_vm.item, \"tipo_documento\", $$v)},expression:\"item.tipo_documento\"}},_vm._l((_vm.docsTypes),function(docType){return _c('el-option',{key:docType.idTipoDocPedido,attrs:{\"value\":docType.idTipoDocPedido,\"label\":docType.nombre}})}),1),(_vm.selectedEmptyOption)?_c('div',{staticClass:\"text-danger invalid-feedback\",staticStyle:{\"display\":\"block\"}},[_vm._v(\" \"+_vm._s(_vm.required_text)+\" \")]):_vm._e()],1),_c('div',{class:_vm.sizes},[_c('el-upload',{ref:\"upload\",staticClass:\"upload-demo large\",attrs:{\"action\":\"#\",\"name\":\"file_up\",\"multiple\":false,\"on-change\":_vm.handleFile,\"on-remove\":_vm.deleteFile,\"auto-upload\":false,\"accept\":\".pdf,image/x-png,image/gif,image/jpeg,docx\"}},[_c('n-button',{attrs:{\"slot\":\"trigger\",\"size\":\"small\",\"type\":\"primary\",\"id\":\"file_doc\"},nativeOn:{\"click\":function($event){return _vm.onClick($event)}},slot:\"trigger\"},[_vm._v(_vm._s(_vm.$t(\"app.upload.select_file\")))]),_c('div',{staticClass:\"el-upload__tip\",attrs:{\"slot\":\"tip\"},slot:\"tip\"},[_vm._v(\" \"+_vm._s(_vm.$t(\"app.modules.orders.documents.admit_files\"))+\" \")])],1),(_vm.fileEmpty)?_c('div',{staticClass:\"text-danger invalid-feedback\",staticStyle:{\"display\":\"block\"}},[_vm._v(\" \"+_vm._s(_vm.required_text)+\" \")]):_vm._e()],1),_c('div',{class:_vm.sizes},[_c('n-button',{attrs:{\"native-type\":\"submit\",\"type\":\"primary\"}},[_c('i',{staticClass:\"now-ui-icons ui-1_simple-add\",attrs:{\"slot\":\"label\"},slot:\"label\"}),_vm._v(\" \"+_vm._s(_vm.$t(\"app.modules.orders.documents.add\")))])],1)])])])]),_c('div',{staticClass:\"text-right\",staticStyle:{\"margin-top\":\"10px\",\"padding-top\":\"20px\",\"border-top\":\"outset\"},attrs:{\"slot\":\"footer\"},slot:\"footer\"},[_c('n-button',{staticClass:\"pull-left\",nativeOn:{\"click\":function($event){return _vm.cancelAdd($event)}}},[_vm._v(_vm._s(_vm.$t(\"app.buttons.close\")))])],1)]}}])})],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\n\r\n\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./pedidosDocsAdd.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./pedidosDocsAdd.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./pedidosDocsAdd.vue?vue&type=template&id=233f6d7f&\"\nimport script from \"./pedidosDocsAdd.vue?vue&type=script&lang=js&\"\nexport * from \"./pedidosDocsAdd.vue?vue&type=script&lang=js&\"\nimport style0 from \"./pedidosDocsAdd.vue?vue&type=style&index=0&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('div',{staticClass:\"row d-flex justify-content-center\"},[_c('div',{staticClass:\"col-md-10 mr-auto ml-auto\"},[_c('simple-wizard',[_c('template',{slot:\"header\"},[_c('h3',{staticClass:\"card-title\"},[_vm._v(\"Build your profile\")]),_c('h3',{staticClass:\"description\"},[_vm._v(\" This information will let us know more about you. \")])]),_c('wizard-tab',{attrs:{\"before-change\":function () { return _vm.validateStep('step1'); }}},[_c('template',{slot:\"label\"},[_c('i',{staticClass:\"now-ui-icons users_circle-08\"}),_vm._v(\" About \")]),_c('first-step',{ref:\"step1\",on:{\"on-validated\":_vm.onStepValidated}})],2),_c('wizard-tab',{attrs:{\"before-change\":function () { return _vm.validateStep('step2'); }}},[_c('template',{slot:\"label\"},[_c('i',{staticClass:\"now-ui-icons ui-1_settings-gear-63\"}),_vm._v(\" Account \")]),_c('second-step',{ref:\"step2\",on:{\"on-validated\":_vm.onStepValidated}})],2),_c('wizard-tab',{attrs:{\"before-change\":function () { return _vm.validateStep('step3'); }}},[_c('template',{slot:\"label\"},[_c('i',{staticClass:\"now-ui-icons ui-1_email-85\"}),_vm._v(\" Address \")]),_c('third-step',{ref:\"step3\",on:{\"on-validated\":_vm.wizardComplete}})],2)],2)],1)])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('ValidationObserver',{ref:\"form\"},[_c('form',{on:{\"submit\":function($event){$event.preventDefault();return _vm.validate($event)}}},[_c('h5',{staticClass:\"info-text\"},[_vm._v(\" Let's start with the basic information (with validation) \")]),_c('div',{staticClass:\"row justify-content-center\"},[_c('div',{staticClass:\"col-sm-4\"},[_c('div',{staticClass:\"picture-container\"},[_c('el-upload',{staticClass:\"picture\",attrs:{\"action\":\"https://jsonplaceholder.typicode.com/posts/\",\"on-change\":_vm.handlePreview,\"auto-upload\":false,\"show-file-list\":false}},[(_vm.imageUrl)?_c('img',{staticClass:\"picture-src\",attrs:{\"src\":_vm.imageUrl}}):_vm._e()]),_c('h6',{staticClass:\"description\"},[_vm._v(\"Choose Picture\")])],1)]),_c('div',{staticClass:\"col-sm-6\"},[_c('ValidationProvider',{attrs:{\"name\":\"firstName\",\"rules\":\"required\"},scopedSlots:_vm._u([{key:\"default\",fn:function(ref){\nvar passed = ref.passed;\nvar failed = ref.failed;\nreturn [_c('fg-input',{staticClass:\"form-control-lg\",attrs:{\"type\":\"text\",\"error\":failed ? 'The First name field is required' : null,\"hasSuccess\":passed,\"placeholder\":\"First Name (required)\",\"addon-left-icon\":\"now-ui-icons users_circle-08\"},model:{value:(_vm.firstName),callback:function ($$v) {_vm.firstName=$$v},expression:\"firstName\"}})]}}])}),_c('ValidationProvider',{attrs:{\"name\":\"lastName\",\"rules\":\"required\"},scopedSlots:_vm._u([{key:\"default\",fn:function(ref){\nvar passed = ref.passed;\nvar failed = ref.failed;\nreturn [_c('fg-input',{staticClass:\"form-control-lg\",attrs:{\"error\":failed ? 'The Last name field is required' : null,\"hasSuccess\":passed,\"placeholder\":\"Last Name (required)\",\"addon-left-icon\":\"now-ui-icons text_caps-small\"},model:{value:(_vm.lastName),callback:function ($$v) {_vm.lastName=$$v},expression:\"lastName\"}})]}}])})],1),_c('div',{staticClass:\"col-12 col-sm-10 mt-3\"},[_c('ValidationProvider',{attrs:{\"name\":\"email\",\"rules\":\"required|email\"},scopedSlots:_vm._u([{key:\"default\",fn:function(ref){\nvar passed = ref.passed;\nvar failed = ref.failed;\nreturn [_c('fg-input',{staticClass:\"form-control-lg\",attrs:{\"error\":failed ? 'The Email field is required' : null,\"hasSuccess\":passed,\"name\":\"email\",\"placeholder\":\"Email (required)\",\"addon-left-icon\":\"now-ui-icons text_caps-small\"},model:{value:(_vm.email),callback:function ($$v) {_vm.email=$$v},expression:\"email\"}})]}}])})],1)])])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\n\r\n\r\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FirstStep.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FirstStep.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./FirstStep.vue?vue&type=template&id=4bdb0a9a&\"\nimport script from \"./FirstStep.vue?vue&type=script&lang=js&\"\nexport * from \"./FirstStep.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('h5',{staticClass:\"info-text\"},[_vm._v(\"What are you doing? (checkboxes)\")]),_c('div',{staticClass:\"row justify-content-center\"},[_c('div',{staticClass:\"col-lg-10\"},[_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-sm-4\"},[_c('icon-checkbox',{attrs:{\"icon\":\"now-ui-icons design-2_ruler-pencil\",\"title\":\"Design\"},model:{value:(_vm.model.design),callback:function ($$v) {_vm.$set(_vm.model, \"design\", $$v)},expression:\"model.design\"}})],1),_c('div',{staticClass:\"col-sm-4\"},[_c('icon-checkbox',{attrs:{\"icon\":\"now-ui-icons business_bulb-63\",\"title\":\"Code\"},model:{value:(_vm.model.code),callback:function ($$v) {_vm.$set(_vm.model, \"code\", $$v)},expression:\"model.code\"}})],1),_c('div',{staticClass:\"col-sm-4\"},[_c('icon-checkbox',{attrs:{\"icon\":\"now-ui-icons tech_tv\",\"title\":\"Develop\"},model:{value:(_vm.model.develop),callback:function ($$v) {_vm.$set(_vm.model, \"develop\", $$v)},expression:\"model.develop\"}})],1)])])])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\n\r\n\r\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SecondStep.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SecondStep.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./SecondStep.vue?vue&type=template&id=3b71016d&\"\nimport script from \"./SecondStep.vue?vue&type=script&lang=js&\"\nexport * from \"./SecondStep.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('ValidationObserver',{ref:\"form\"},[_c('form',{on:{\"submit\":function($event){$event.preventDefault();return _vm.validate($event)}}},[_c('div',{staticClass:\"row justify-content-center\"},[_c('div',{staticClass:\"col-sm-12\"},[_c('h5',{staticClass:\"info-text\"},[_vm._v(\"Are you living in a nice area?\")])]),_c('div',{staticClass:\"col-sm-7\"},[_c('ValidationProvider',{attrs:{\"name\":\"streetName\",\"rules\":\"required\"},scopedSlots:_vm._u([{key:\"default\",fn:function(ref){\nvar passed = ref.passed;\nvar failed = ref.failed;\nreturn [_c('fg-input',{attrs:{\"label\":\"Street Name\",\"error\":failed ? 'The Street name field is required' : null,\"hasSuccess\":passed},model:{value:(_vm.streetName),callback:function ($$v) {_vm.streetName=$$v},expression:\"streetName\"}})]}}])})],1),_c('div',{staticClass:\"col-sm-3\"},[_c('ValidationProvider',{attrs:{\"name\":\"streetNumber\",\"rules\":\"required\"},scopedSlots:_vm._u([{key:\"default\",fn:function(ref){\nvar passed = ref.passed;\nvar failed = ref.failed;\nreturn [_c('fg-input',{attrs:{\"label\":\"Street No\",\"name\":\"street number\",\"error\":failed ? 'The Street number field is required' : null,\"hasSuccess\":passed},model:{value:(_vm.streetNo),callback:function ($$v) {_vm.streetNo=$$v},expression:\"streetNo\"}})]}}])})],1),_c('div',{staticClass:\"col-sm-5\"},[_c('ValidationProvider',{attrs:{\"name\":\"city\",\"rules\":\"required\"},scopedSlots:_vm._u([{key:\"default\",fn:function(ref){\nvar passed = ref.passed;\nvar failed = ref.failed;\nreturn [_c('fg-input',{attrs:{\"label\":\"City\",\"error\":failed ? 'The City field is required' : null,\"hasSuccess\":passed,\"name\":\"city\"},model:{value:(_vm.city),callback:function ($$v) {_vm.city=$$v},expression:\"city\"}})]}}])})],1),_c('div',{staticClass:\"col-sm-5\"},[_c('label',[_vm._v(\"Country\")]),_c('ValidationProvider',{attrs:{\"name\":\"country\",\"rules\":\"required\"},scopedSlots:_vm._u([{key:\"default\",fn:function(ref){\nvar failed = ref.failed;\nreturn [_c('fg-input',{attrs:{\"error\":failed ? 'The Country field is required' : null}},[_c('el-select',{staticClass:\"select-primary\",attrs:{\"name\":\"country\"},model:{value:(_vm.country),callback:function ($$v) {_vm.country=$$v},expression:\"country\"}},_vm._l((_vm.countryOptions),function(country){return _c('el-option',{key:country,staticClass:\"select-primary\",attrs:{\"label\":country,\"value\":country}})}),1)],1)]}}])})],1)])])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\n\r\n\r\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ThirdStep.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ThirdStep.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./ThirdStep.vue?vue&type=template&id=db811638&\"\nimport script from \"./ThirdStep.vue?vue&type=script&lang=js&\"\nexport * from \"./ThirdStep.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","\r\n\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Wizard.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Wizard.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Wizard.vue?vue&type=template&id=60eb5c84&\"\nimport script from \"./Wizard.vue?vue&type=script&lang=js&\"\nexport * from \"./Wizard.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./reclamaciones.vue?vue&type=style&index=0&lang=css&\"","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./perfilesAddEdit.vue?vue&type=style&index=0&lang=css&\"","class RolesTraduccion\r\n{\r\n idRolTraduccion = 0;\r\n nombre = \"\";\r\n descripcion = \"\";\r\n fechaCreacion = \"\";\r\n fechaModificacion = \"\";\r\n roles_idRol = 0;\r\n idiomas_idIdioma = 0;\r\n idioma = null;\r\n\r\n constructor(obj = {}) {\r\n Object.assign(this, obj);\r\n }\r\n}\r\n\r\nmodule.exports = RolesTraduccion;\r\n","'use strict';\n// based on https://github.com/bestiejs/punycode.js/blob/master/punycode.js\nvar maxInt = 2147483647; // aka. 0x7FFFFFFF or 2^31-1\nvar base = 36;\nvar tMin = 1;\nvar tMax = 26;\nvar skew = 38;\nvar damp = 700;\nvar initialBias = 72;\nvar initialN = 128; // 0x80\nvar delimiter = '-'; // '\\x2D'\nvar regexNonASCII = /[^\\0-\\u007E]/; // non-ASCII chars\nvar regexSeparators = /[.\\u3002\\uFF0E\\uFF61]/g; // RFC 3490 separators\nvar OVERFLOW_ERROR = 'Overflow: input needs wider integers to process';\nvar baseMinusTMin = base - tMin;\nvar floor = Math.floor;\nvar stringFromCharCode = String.fromCharCode;\n\n/**\n * Creates an array containing the numeric code points of each Unicode\n * character in the string. While JavaScript uses UCS-2 internally,\n * this function will convert a pair of surrogate halves (each of which\n * UCS-2 exposes as separate characters) into a single code point,\n * matching UTF-16.\n */\nvar ucs2decode = function (string) {\n var output = [];\n var counter = 0;\n var length = string.length;\n while (counter < length) {\n var value = string.charCodeAt(counter++);\n if (value >= 0xD800 && value <= 0xDBFF && counter < length) {\n // It's a high surrogate, and there is a next character.\n var extra = string.charCodeAt(counter++);\n if ((extra & 0xFC00) == 0xDC00) { // Low surrogate.\n output.push(((value & 0x3FF) << 10) + (extra & 0x3FF) + 0x10000);\n } else {\n // It's an unmatched surrogate; only append this code unit, in case the\n // next code unit is the high surrogate of a surrogate pair.\n output.push(value);\n counter--;\n }\n } else {\n output.push(value);\n }\n }\n return output;\n};\n\n/**\n * Converts a digit/integer into a basic code point.\n */\nvar digitToBasic = function (digit) {\n // 0..25 map to ASCII a..z or A..Z\n // 26..35 map to ASCII 0..9\n return digit + 22 + 75 * (digit < 26);\n};\n\n/**\n * Bias adaptation function as per section 3.4 of RFC 3492.\n * https://tools.ietf.org/html/rfc3492#section-3.4\n */\nvar adapt = function (delta, numPoints, firstTime) {\n var k = 0;\n delta = firstTime ? floor(delta / damp) : delta >> 1;\n delta += floor(delta / numPoints);\n for (; delta > baseMinusTMin * tMax >> 1; k += base) {\n delta = floor(delta / baseMinusTMin);\n }\n return floor(k + (baseMinusTMin + 1) * delta / (delta + skew));\n};\n\n/**\n * Converts a string of Unicode symbols (e.g. a domain name label) to a\n * Punycode string of ASCII-only symbols.\n */\n// eslint-disable-next-line max-statements\nvar encode = function (input) {\n var output = [];\n\n // Convert the input in UCS-2 to an array of Unicode code points.\n input = ucs2decode(input);\n\n // Cache the length.\n var inputLength = input.length;\n\n // Initialize the state.\n var n = initialN;\n var delta = 0;\n var bias = initialBias;\n var i, currentValue;\n\n // Handle the basic code points.\n for (i = 0; i < input.length; i++) {\n currentValue = input[i];\n if (currentValue < 0x80) {\n output.push(stringFromCharCode(currentValue));\n }\n }\n\n var basicLength = output.length; // number of basic code points.\n var handledCPCount = basicLength; // number of code points that have been handled;\n\n // Finish the basic string with a delimiter unless it's empty.\n if (basicLength) {\n output.push(delimiter);\n }\n\n // Main encoding loop:\n while (handledCPCount < inputLength) {\n // All non-basic code points < n have been handled already. Find the next larger one:\n var m = maxInt;\n for (i = 0; i < input.length; i++) {\n currentValue = input[i];\n if (currentValue >= n && currentValue < m) {\n m = currentValue;\n }\n }\n\n // Increase `delta` enough to advance the decoder's state to , but guard against overflow.\n var handledCPCountPlusOne = handledCPCount + 1;\n if (m - n > floor((maxInt - delta) / handledCPCountPlusOne)) {\n throw RangeError(OVERFLOW_ERROR);\n }\n\n delta += (m - n) * handledCPCountPlusOne;\n n = m;\n\n for (i = 0; i < input.length; i++) {\n currentValue = input[i];\n if (currentValue < n && ++delta > maxInt) {\n throw RangeError(OVERFLOW_ERROR);\n }\n if (currentValue == n) {\n // Represent delta as a generalized variable-length integer.\n var q = delta;\n for (var k = base; /* no condition */; k += base) {\n var t = k <= bias ? tMin : (k >= bias + tMax ? tMax : k - bias);\n if (q < t) break;\n var qMinusT = q - t;\n var baseMinusT = base - t;\n output.push(stringFromCharCode(digitToBasic(t + qMinusT % baseMinusT)));\n q = floor(qMinusT / baseMinusT);\n }\n\n output.push(stringFromCharCode(digitToBasic(q)));\n bias = adapt(delta, handledCPCountPlusOne, handledCPCount == basicLength);\n delta = 0;\n ++handledCPCount;\n }\n }\n\n ++delta;\n ++n;\n }\n return output.join('');\n};\n\nmodule.exports = function (input) {\n var encoded = [];\n var labels = input.toLowerCase().replace(regexSeparators, '\\u002E').split('.');\n var i, label;\n for (i = 0; i < labels.length; i++) {\n label = labels[i];\n encoded.push(regexNonASCII.test(label) ? 'xn--' + encode(label) : label);\n }\n return encoded.join('.');\n};\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-12\"},[_c('div',{staticClass:\"card\"},[_c('div',{staticClass:\"card-header\"},[_c('h4',{staticClass:\"card-title\"},[_vm._v(\" \"+_vm._s(_vm.$t(\"app.modules.check_order_tracking.title\"))+\" \")])]),_c('div',{staticClass:\"card-body\"},[_c('ValidationObserver',{ref:\"formDev\",scopedSlots:_vm._u([{key:\"default\",fn:function(ref){\nvar handleSubmit = ref.handleSubmit;\nreturn [_c('form',{on:{\"submit\":function($event){$event.preventDefault();return handleSubmit(_vm.submit)}}},[_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-4\"},[_vm._v(\" \"+_vm._s(_vm.$t(\"app.modules.orders.headers.order_number\"))+\" \"),_c('fg-input',[_c('el-input',{attrs:{\"type\":\"text\",\"clearable\":\"\",\"placeholder\":_vm.$t('app.modules.orders.headers.order_number'),\"aria-controls\":\"datatables\"},model:{value:(_vm.filters.searchNumPedido),callback:function ($$v) {_vm.$set(_vm.filters, \"searchNumPedido\", $$v)},expression:\"filters.searchNumPedido\"}})],1)],1),_c('div',{staticClass:\"col-4\"},[_vm._v(\" \"+_vm._s(_vm.$t(\"app.modules.orders.headers.posicionSAP\"))+\" \"),_c('fg-input',[_c('el-input',{attrs:{\"type\":\"text\",\"clearable\":\"\",\"placeholder\":_vm.$t('app.modules.orders.headers.order_number'),\"aria-controls\":\"datatables\"},model:{value:(_vm.filters.searchPosicionSAP),callback:function ($$v) {_vm.$set(_vm.filters, \"searchPosicionSAP\", $$v)},expression:\"filters.searchPosicionSAP\"}})],1)],1),_c('div',{staticClass:\"col-4\"},[_vm._v(\" \"+_vm._s(_vm.$t(\"app.modules.delivery.details.numRemision\"))+\" \"),_c('fg-input',[_c('el-input',{attrs:{\"type\":\"text\",\"clearable\":\"\",\"placeholder\":_vm.$t('app.modules.delivery.details.numRemision'),\"aria-controls\":\"datatables\"},model:{value:(_vm.filters.searchNumRemision),callback:function ($$v) {_vm.$set(_vm.filters, \"searchNumRemision\", $$v)},expression:\"filters.searchNumRemision\"}})],1)],1)]),_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-4\"},[_vm._v(\" \"+_vm._s(_vm.$t(\"app.modules.delivery.headers.transport_number\"))+\" \"),_c('fg-input',[_c('el-input',{attrs:{\"type\":\"text\",\"clearable\":\"\",\"placeholder\":_vm.$t('app.modules.delivery.headers.transport_number'),\"aria-controls\":\"datatables\"},model:{value:(_vm.filters.searchNumTransporte),callback:function ($$v) {_vm.$set(_vm.filters, \"searchNumTransporte\", $$v)},expression:\"filters.searchNumTransporte\"}})],1)],1),_c('div',{staticClass:\"col-4\"},[_vm._v(\" \"+_vm._s(_vm.$t(\"app.modules.orders.filters.created_date_ini\"))+\" \"),_c('fg-input',[_c('el-date-picker',{attrs:{\"type\":\"date\",\"placeholder\":\"Date Picker\"},model:{value:(_vm.filters.iniCreateDate),callback:function ($$v) {_vm.$set(_vm.filters, \"iniCreateDate\", $$v)},expression:\"filters.iniCreateDate\"}})],1)],1),_c('div',{staticClass:\"col-4\"},[_vm._v(\" \"+_vm._s(_vm.$t(\"app.modules.orders.filters.created_date_end\"))+\" \"),_c('fg-input',[_c('el-date-picker',{attrs:{\"type\":\"date\",\"placeholder\":\"Date Picker\"},model:{value:(_vm.filters.endCreateDate),callback:function ($$v) {_vm.$set(_vm.filters, \"endCreateDate\", $$v)},expression:\"filters.endCreateDate\"}})],1)],1)]),_c('div',{staticClass:\"text-right\",staticStyle:{\"margin-top\":\"10px\",\"padding-top\":\"20px\",\"border-top\":\"outset\"},attrs:{\"slot\":\"footer\"},slot:\"footer\"},[_c('n-button',{attrs:{\"native-type\":\"submit\",\"type\":\"primary\"}},[_vm._v(_vm._s(_vm.$t(\"app.buttons.excel\")))])],1)])]}}])})],1)])])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\n\r\n\r\n\r\n\r\n\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./consultaTrackingPedidos.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./consultaTrackingPedidos.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./consultaTrackingPedidos.vue?vue&type=template&id=021b282a&scoped=true&\"\nimport script from \"./consultaTrackingPedidos.vue?vue&type=script&lang=js&\"\nexport * from \"./consultaTrackingPedidos.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"021b282a\",\n null\n \n)\n\nexport default component.exports","/**\n * Fuse.js v6.4.3 - Lightweight fuzzy-search (http://fusejs.io)\n *\n * Copyright (c) 2020 Kiro Risk (http://kiro.me)\n * All Rights Reserved. Apache Software License 2.0\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n */\n\nfunction isArray(value) {\n return !Array.isArray\n ? getTag(value) === '[object Array]'\n : Array.isArray(value)\n}\n\n// Adapted from: https://github.com/lodash/lodash/blob/master/.internal/baseToString.js\nconst INFINITY = 1 / 0;\nfunction baseToString(value) {\n // Exit early for strings to avoid a performance hit in some environments.\n if (typeof value == 'string') {\n return value\n }\n let result = value + '';\n return result == '0' && 1 / value == -INFINITY ? '-0' : result\n}\n\nfunction toString(value) {\n return value == null ? '' : baseToString(value)\n}\n\nfunction isString(value) {\n return typeof value === 'string'\n}\n\nfunction isNumber(value) {\n return typeof value === 'number'\n}\n\n// Adapted from: https://github.com/lodash/lodash/blob/master/isBoolean.js\nfunction isBoolean(value) {\n return (\n value === true ||\n value === false ||\n (isObjectLike(value) && getTag(value) == '[object Boolean]')\n )\n}\n\nfunction isObject(value) {\n return typeof value === 'object'\n}\n\n// Checks if `value` is object-like.\nfunction isObjectLike(value) {\n return isObject(value) && value !== null\n}\n\nfunction isDefined(value) {\n return value !== undefined && value !== null\n}\n\nfunction isBlank(value) {\n return !value.trim().length\n}\n\n// Gets the `toStringTag` of `value`.\n// Adapted from: https://github.com/lodash/lodash/blob/master/.internal/getTag.js\nfunction getTag(value) {\n return value == null\n ? value === undefined\n ? '[object Undefined]'\n : '[object Null]'\n : Object.prototype.toString.call(value)\n}\n\nconst EXTENDED_SEARCH_UNAVAILABLE = 'Extended search is not available';\n\nconst INCORRECT_INDEX_TYPE = \"Incorrect 'index' type\";\n\nconst LOGICAL_SEARCH_INVALID_QUERY_FOR_KEY = (key) =>\n `Invalid value for key ${key}`;\n\nconst PATTERN_LENGTH_TOO_LARGE = (max) =>\n `Pattern length exceeds max of ${max}.`;\n\nconst MISSING_KEY_PROPERTY = (name) => `Missing ${name} property in key`;\n\nconst INVALID_KEY_WEIGHT_VALUE = (key) =>\n `Property 'weight' in key '${key}' must be a positive integer`;\n\nconst hasOwn = Object.prototype.hasOwnProperty;\n\nclass KeyStore {\n constructor(keys) {\n this._keys = [];\n this._keyMap = {};\n\n let totalWeight = 0;\n\n keys.forEach((key) => {\n let obj = createKey(key);\n\n totalWeight += obj.weight;\n\n this._keys.push(obj);\n this._keyMap[obj.id] = obj;\n\n totalWeight += obj.weight;\n });\n\n // Normalize weights so that their sum is equal to 1\n this._keys.forEach((key) => {\n key.weight /= totalWeight;\n });\n }\n get(keyId) {\n return this._keyMap[keyId]\n }\n keys() {\n return this._keys\n }\n toJSON() {\n return JSON.stringify(this._keys)\n }\n}\n\nfunction createKey(key) {\n let path = null;\n let id = null;\n let src = null;\n let weight = 1;\n\n if (isString(key) || isArray(key)) {\n src = key;\n path = createKeyPath(key);\n id = createKeyId(key);\n } else {\n if (!hasOwn.call(key, 'name')) {\n throw new Error(MISSING_KEY_PROPERTY('name'))\n }\n\n const name = key.name;\n src = name;\n\n if (hasOwn.call(key, 'weight')) {\n weight = key.weight;\n\n if (weight <= 0) {\n throw new Error(INVALID_KEY_WEIGHT_VALUE(name))\n }\n }\n\n path = createKeyPath(name);\n id = createKeyId(name);\n }\n\n return { path, id, weight, src }\n}\n\nfunction createKeyPath(key) {\n return isArray(key) ? key : key.split('.')\n}\n\nfunction createKeyId(key) {\n return isArray(key) ? key.join('.') : key\n}\n\nfunction get(obj, path) {\n let list = [];\n let arr = false;\n\n const deepGet = (obj, path, index) => {\n if (!isDefined(obj)) {\n return\n }\n if (!path[index]) {\n // If there's no path left, we've arrived at the object we care about.\n list.push(obj);\n } else {\n let key = path[index];\n\n const value = obj[key];\n\n if (!isDefined(value)) {\n return\n }\n\n // If we're at the last value in the path, and if it's a string/number/bool,\n // add it to the list\n if (\n index === path.length - 1 &&\n (isString(value) || isNumber(value) || isBoolean(value))\n ) {\n list.push(toString(value));\n } else if (isArray(value)) {\n arr = true;\n // Search each item in the array.\n for (let i = 0, len = value.length; i < len; i += 1) {\n deepGet(value[i], path, index + 1);\n }\n } else if (path.length) {\n // An object. Recurse further.\n deepGet(value, path, index + 1);\n }\n }\n };\n\n // Backwards compatibility (since path used to be a string)\n deepGet(obj, isString(path) ? path.split('.') : path, 0);\n\n return arr ? list : list[0]\n}\n\nconst MatchOptions = {\n // Whether the matches should be included in the result set. When `true`, each record in the result\n // set will include the indices of the matched characters.\n // These can consequently be used for highlighting purposes.\n includeMatches: false,\n // When `true`, the matching function will continue to the end of a search pattern even if\n // a perfect match has already been located in the string.\n findAllMatches: false,\n // Minimum number of characters that must be matched before a result is considered a match\n minMatchCharLength: 1\n};\n\nconst BasicOptions = {\n // When `true`, the algorithm continues searching to the end of the input even if a perfect\n // match is found before the end of the same input.\n isCaseSensitive: false,\n // When true, the matching function will continue to the end of a search pattern even if\n includeScore: false,\n // List of properties that will be searched. This also supports nested properties.\n keys: [],\n // Whether to sort the result list, by score\n shouldSort: true,\n // Default sort function: sort by ascending score, ascending index\n sortFn: (a, b) =>\n a.score === b.score ? (a.idx < b.idx ? -1 : 1) : a.score < b.score ? -1 : 1\n};\n\nconst FuzzyOptions = {\n // Approximately where in the text is the pattern expected to be found?\n location: 0,\n // At what point does the match algorithm give up. A threshold of '0.0' requires a perfect match\n // (of both letters and location), a threshold of '1.0' would match anything.\n threshold: 0.6,\n // Determines how close the match must be to the fuzzy location (specified above).\n // An exact letter match which is 'distance' characters away from the fuzzy location\n // would score as a complete mismatch. A distance of '0' requires the match be at\n // the exact location specified, a threshold of '1000' would require a perfect match\n // to be within 800 characters of the fuzzy location to be found using a 0.8 threshold.\n distance: 100\n};\n\nconst AdvancedOptions = {\n // When `true`, it enables the use of unix-like search commands\n useExtendedSearch: false,\n // The get function to use when fetching an object's properties.\n // The default will search nested paths *ie foo.bar.baz*\n getFn: get,\n // When `true`, search will ignore `location` and `distance`, so it won't matter\n // where in the string the pattern appears.\n // More info: https://fusejs.io/concepts/scoring-theory.html#fuzziness-score\n ignoreLocation: false,\n // When `true`, the calculation for the relevance score (used for sorting) will\n // ignore the field-length norm.\n // More info: https://fusejs.io/concepts/scoring-theory.html#field-length-norm\n ignoreFieldNorm: false\n};\n\nvar Config = {\n ...BasicOptions,\n ...MatchOptions,\n ...FuzzyOptions,\n ...AdvancedOptions\n};\n\nconst SPACE = /[^ ]+/g;\n\n// Field-length norm: the shorter the field, the higher the weight.\n// Set to 3 decimals to reduce index size.\nfunction norm(mantissa = 3) {\n const cache = new Map();\n\n return {\n get(value) {\n const numTokens = value.match(SPACE).length;\n\n if (cache.has(numTokens)) {\n return cache.get(numTokens)\n }\n\n const n = parseFloat((1 / Math.sqrt(numTokens)).toFixed(mantissa));\n\n cache.set(numTokens, n);\n\n return n\n },\n clear() {\n cache.clear();\n }\n }\n}\n\nclass FuseIndex {\n constructor({ getFn = Config.getFn } = {}) {\n this.norm = norm(3);\n this.getFn = getFn;\n this.isCreated = false;\n\n this.setIndexRecords();\n }\n setSources(docs = []) {\n this.docs = docs;\n }\n setIndexRecords(records = []) {\n this.records = records;\n }\n setKeys(keys = []) {\n this.keys = keys;\n this._keysMap = {};\n keys.forEach((key, idx) => {\n this._keysMap[key.id] = idx;\n });\n }\n create() {\n if (this.isCreated || !this.docs.length) {\n return\n }\n\n this.isCreated = true;\n\n // List is Array\n if (isString(this.docs[0])) {\n this.docs.forEach((doc, docIndex) => {\n this._addString(doc, docIndex);\n });\n } else {\n // List is Array\n this.docs.forEach((doc, docIndex) => {\n this._addObject(doc, docIndex);\n });\n }\n\n this.norm.clear();\n }\n // Adds a doc to the end of the index\n add(doc) {\n const idx = this.size();\n\n if (isString(doc)) {\n this._addString(doc, idx);\n } else {\n this._addObject(doc, idx);\n }\n }\n // Removes the doc at the specified index of the index\n removeAt(idx) {\n this.records.splice(idx, 1);\n\n // Change ref index of every subsquent doc\n for (let i = idx, len = this.size(); i < len; i += 1) {\n this.records[i].i -= 1;\n }\n }\n getValueForItemAtKeyId(item, keyId) {\n return item[this._keysMap[keyId]]\n }\n size() {\n return this.records.length\n }\n _addString(doc, docIndex) {\n if (!isDefined(doc) || isBlank(doc)) {\n return\n }\n\n let record = {\n v: doc,\n i: docIndex,\n n: this.norm.get(doc)\n };\n\n this.records.push(record);\n }\n _addObject(doc, docIndex) {\n let record = { i: docIndex, $: {} };\n\n // Iterate over every key (i.e, path), and fetch the value at that key\n this.keys.forEach((key, keyIndex) => {\n // console.log(key)\n let value = this.getFn(doc, key.path);\n\n if (!isDefined(value)) {\n return\n }\n\n if (isArray(value)) {\n let subRecords = [];\n const stack = [{ nestedArrIndex: -1, value }];\n\n while (stack.length) {\n const { nestedArrIndex, value } = stack.pop();\n\n if (!isDefined(value)) {\n continue\n }\n\n if (isString(value) && !isBlank(value)) {\n let subRecord = {\n v: value,\n i: nestedArrIndex,\n n: this.norm.get(value)\n };\n\n subRecords.push(subRecord);\n } else if (isArray(value)) {\n value.forEach((item, k) => {\n stack.push({\n nestedArrIndex: k,\n value: item\n });\n });\n }\n }\n record.$[keyIndex] = subRecords;\n } else if (!isBlank(value)) {\n let subRecord = {\n v: value,\n n: this.norm.get(value)\n };\n\n record.$[keyIndex] = subRecord;\n }\n });\n\n this.records.push(record);\n }\n toJSON() {\n return {\n keys: this.keys,\n records: this.records\n }\n }\n}\n\nfunction createIndex(keys, docs, { getFn = Config.getFn } = {}) {\n const myIndex = new FuseIndex({ getFn });\n myIndex.setKeys(keys.map(createKey));\n myIndex.setSources(docs);\n myIndex.create();\n return myIndex\n}\n\nfunction parseIndex(data, { getFn = Config.getFn } = {}) {\n const { keys, records } = data;\n const myIndex = new FuseIndex({ getFn });\n myIndex.setKeys(keys);\n myIndex.setIndexRecords(records);\n return myIndex\n}\n\nfunction transformMatches(result, data) {\n const matches = result.matches;\n data.matches = [];\n\n if (!isDefined(matches)) {\n return\n }\n\n matches.forEach((match) => {\n if (!isDefined(match.indices) || !match.indices.length) {\n return\n }\n\n const { indices, value } = match;\n\n let obj = {\n indices,\n value\n };\n\n if (match.key) {\n obj.key = match.key.src;\n }\n\n if (match.idx > -1) {\n obj.refIndex = match.idx;\n }\n\n data.matches.push(obj);\n });\n}\n\nfunction transformScore(result, data) {\n data.score = result.score;\n}\n\nfunction computeScore(\n pattern,\n {\n errors = 0,\n currentLocation = 0,\n expectedLocation = 0,\n distance = Config.distance,\n ignoreLocation = Config.ignoreLocation\n } = {}\n) {\n const accuracy = errors / pattern.length;\n\n if (ignoreLocation) {\n return accuracy\n }\n\n const proximity = Math.abs(expectedLocation - currentLocation);\n\n if (!distance) {\n // Dodge divide by zero error.\n return proximity ? 1.0 : accuracy\n }\n\n return accuracy + proximity / distance\n}\n\nfunction convertMaskToIndices(\n matchmask = [],\n minMatchCharLength = Config.minMatchCharLength\n) {\n let indices = [];\n let start = -1;\n let end = -1;\n let i = 0;\n\n for (let len = matchmask.length; i < len; i += 1) {\n let match = matchmask[i];\n if (match && start === -1) {\n start = i;\n } else if (!match && start !== -1) {\n end = i - 1;\n if (end - start + 1 >= minMatchCharLength) {\n indices.push([start, end]);\n }\n start = -1;\n }\n }\n\n // (i-1 - start) + 1 => i - start\n if (matchmask[i - 1] && i - start >= minMatchCharLength) {\n indices.push([start, i - 1]);\n }\n\n return indices\n}\n\n// Machine word size\nconst MAX_BITS = 32;\n\nfunction search(\n text,\n pattern,\n patternAlphabet,\n {\n location = Config.location,\n distance = Config.distance,\n threshold = Config.threshold,\n findAllMatches = Config.findAllMatches,\n minMatchCharLength = Config.minMatchCharLength,\n includeMatches = Config.includeMatches,\n ignoreLocation = Config.ignoreLocation\n } = {}\n) {\n if (pattern.length > MAX_BITS) {\n throw new Error(PATTERN_LENGTH_TOO_LARGE(MAX_BITS))\n }\n\n const patternLen = pattern.length;\n // Set starting location at beginning text and initialize the alphabet.\n const textLen = text.length;\n // Handle the case when location > text.length\n const expectedLocation = Math.max(0, Math.min(location, textLen));\n // Highest score beyond which we give up.\n let currentThreshold = threshold;\n // Is there a nearby exact match? (speedup)\n let bestLocation = expectedLocation;\n\n // Performance: only computer matches when the minMatchCharLength > 1\n // OR if `includeMatches` is true.\n const computeMatches = minMatchCharLength > 1 || includeMatches;\n // A mask of the matches, used for building the indices\n const matchMask = computeMatches ? Array(textLen) : [];\n\n let index;\n\n // Get all exact matches, here for speed up\n while ((index = text.indexOf(pattern, bestLocation)) > -1) {\n let score = computeScore(pattern, {\n currentLocation: index,\n expectedLocation,\n distance,\n ignoreLocation\n });\n\n currentThreshold = Math.min(score, currentThreshold);\n bestLocation = index + patternLen;\n\n if (computeMatches) {\n let i = 0;\n while (i < patternLen) {\n matchMask[index + i] = 1;\n i += 1;\n }\n }\n }\n\n // Reset the best location\n bestLocation = -1;\n\n let lastBitArr = [];\n let finalScore = 1;\n let binMax = patternLen + textLen;\n\n const mask = 1 << (patternLen - 1);\n\n for (let i = 0; i < patternLen; i += 1) {\n // Scan for the best match; each iteration allows for one more error.\n // Run a binary search to determine how far from the match location we can stray\n // at this error level.\n let binMin = 0;\n let binMid = binMax;\n\n while (binMin < binMid) {\n const score = computeScore(pattern, {\n errors: i,\n currentLocation: expectedLocation + binMid,\n expectedLocation,\n distance,\n ignoreLocation\n });\n\n if (score <= currentThreshold) {\n binMin = binMid;\n } else {\n binMax = binMid;\n }\n\n binMid = Math.floor((binMax - binMin) / 2 + binMin);\n }\n\n // Use the result from this iteration as the maximum for the next.\n binMax = binMid;\n\n let start = Math.max(1, expectedLocation - binMid + 1);\n let finish = findAllMatches\n ? textLen\n : Math.min(expectedLocation + binMid, textLen) + patternLen;\n\n // Initialize the bit array\n let bitArr = Array(finish + 2);\n\n bitArr[finish + 1] = (1 << i) - 1;\n\n for (let j = finish; j >= start; j -= 1) {\n let currentLocation = j - 1;\n let charMatch = patternAlphabet[text.charAt(currentLocation)];\n\n if (computeMatches) {\n // Speed up: quick bool to int conversion (i.e, `charMatch ? 1 : 0`)\n matchMask[currentLocation] = +!!charMatch;\n }\n\n // First pass: exact match\n bitArr[j] = ((bitArr[j + 1] << 1) | 1) & charMatch;\n\n // Subsequent passes: fuzzy match\n if (i) {\n bitArr[j] |=\n ((lastBitArr[j + 1] | lastBitArr[j]) << 1) | 1 | lastBitArr[j + 1];\n }\n\n if (bitArr[j] & mask) {\n finalScore = computeScore(pattern, {\n errors: i,\n currentLocation,\n expectedLocation,\n distance,\n ignoreLocation\n });\n\n // This match will almost certainly be better than any existing match.\n // But check anyway.\n if (finalScore <= currentThreshold) {\n // Indeed it is\n currentThreshold = finalScore;\n bestLocation = currentLocation;\n\n // Already passed `loc`, downhill from here on in.\n if (bestLocation <= expectedLocation) {\n break\n }\n\n // When passing `bestLocation`, don't exceed our current distance from `expectedLocation`.\n start = Math.max(1, 2 * expectedLocation - bestLocation);\n }\n }\n }\n\n // No hope for a (better) match at greater error levels.\n const score = computeScore(pattern, {\n errors: i + 1,\n currentLocation: expectedLocation,\n expectedLocation,\n distance,\n ignoreLocation\n });\n\n if (score > currentThreshold) {\n break\n }\n\n lastBitArr = bitArr;\n }\n\n const result = {\n isMatch: bestLocation >= 0,\n // Count exact matches (those with a score of 0) to be \"almost\" exact\n score: Math.max(0.001, finalScore)\n };\n\n if (computeMatches) {\n const indices = convertMaskToIndices(matchMask, minMatchCharLength);\n if (!indices.length) {\n result.isMatch = false;\n } else if (includeMatches) {\n result.indices = indices;\n }\n }\n\n return result\n}\n\nfunction createPatternAlphabet(pattern) {\n let mask = {};\n\n for (let i = 0, len = pattern.length; i < len; i += 1) {\n const char = pattern.charAt(i);\n mask[char] = (mask[char] || 0) | (1 << (len - i - 1));\n }\n\n return mask\n}\n\nclass BitapSearch {\n constructor(\n pattern,\n {\n location = Config.location,\n threshold = Config.threshold,\n distance = Config.distance,\n includeMatches = Config.includeMatches,\n findAllMatches = Config.findAllMatches,\n minMatchCharLength = Config.minMatchCharLength,\n isCaseSensitive = Config.isCaseSensitive,\n ignoreLocation = Config.ignoreLocation\n } = {}\n ) {\n this.options = {\n location,\n threshold,\n distance,\n includeMatches,\n findAllMatches,\n minMatchCharLength,\n isCaseSensitive,\n ignoreLocation\n };\n\n this.pattern = isCaseSensitive ? pattern : pattern.toLowerCase();\n\n this.chunks = [];\n\n if (!this.pattern.length) {\n return\n }\n\n const addChunk = (pattern, startIndex) => {\n this.chunks.push({\n pattern,\n alphabet: createPatternAlphabet(pattern),\n startIndex\n });\n };\n\n const len = this.pattern.length;\n\n if (len > MAX_BITS) {\n let i = 0;\n const remainder = len % MAX_BITS;\n const end = len - remainder;\n\n while (i < end) {\n addChunk(this.pattern.substr(i, MAX_BITS), i);\n i += MAX_BITS;\n }\n\n if (remainder) {\n const startIndex = len - MAX_BITS;\n addChunk(this.pattern.substr(startIndex), startIndex);\n }\n } else {\n addChunk(this.pattern, 0);\n }\n }\n\n searchIn(text) {\n const { isCaseSensitive, includeMatches } = this.options;\n\n if (!isCaseSensitive) {\n text = text.toLowerCase();\n }\n\n // Exact match\n if (this.pattern === text) {\n let result = {\n isMatch: true,\n score: 0\n };\n\n if (includeMatches) {\n result.indices = [[0, text.length - 1]];\n }\n\n return result\n }\n\n // Otherwise, use Bitap algorithm\n const {\n location,\n distance,\n threshold,\n findAllMatches,\n minMatchCharLength,\n ignoreLocation\n } = this.options;\n\n let allIndices = [];\n let totalScore = 0;\n let hasMatches = false;\n\n this.chunks.forEach(({ pattern, alphabet, startIndex }) => {\n const { isMatch, score, indices } = search(text, pattern, alphabet, {\n location: location + startIndex,\n distance,\n threshold,\n findAllMatches,\n minMatchCharLength,\n includeMatches,\n ignoreLocation\n });\n\n if (isMatch) {\n hasMatches = true;\n }\n\n totalScore += score;\n\n if (isMatch && indices) {\n allIndices = [...allIndices, ...indices];\n }\n });\n\n let result = {\n isMatch: hasMatches,\n score: hasMatches ? totalScore / this.chunks.length : 1\n };\n\n if (hasMatches && includeMatches) {\n result.indices = allIndices;\n }\n\n return result\n }\n}\n\nclass BaseMatch {\n constructor(pattern) {\n this.pattern = pattern;\n }\n static isMultiMatch(pattern) {\n return getMatch(pattern, this.multiRegex)\n }\n static isSingleMatch(pattern) {\n return getMatch(pattern, this.singleRegex)\n }\n search(/*text*/) {}\n}\n\nfunction getMatch(pattern, exp) {\n const matches = pattern.match(exp);\n return matches ? matches[1] : null\n}\n\n// Token: 'file\n\nclass ExactMatch extends BaseMatch {\n constructor(pattern) {\n super(pattern);\n }\n static get type() {\n return 'exact'\n }\n static get multiRegex() {\n return /^=\"(.*)\"$/\n }\n static get singleRegex() {\n return /^=(.*)$/\n }\n search(text) {\n const isMatch = text === this.pattern;\n\n return {\n isMatch,\n score: isMatch ? 0 : 1,\n indices: [0, this.pattern.length - 1]\n }\n }\n}\n\n// Token: !fire\n\nclass InverseExactMatch extends BaseMatch {\n constructor(pattern) {\n super(pattern);\n }\n static get type() {\n return 'inverse-exact'\n }\n static get multiRegex() {\n return /^!\"(.*)\"$/\n }\n static get singleRegex() {\n return /^!(.*)$/\n }\n search(text) {\n const index = text.indexOf(this.pattern);\n const isMatch = index === -1;\n\n return {\n isMatch,\n score: isMatch ? 0 : 1,\n indices: [0, text.length - 1]\n }\n }\n}\n\n// Token: ^file\n\nclass PrefixExactMatch extends BaseMatch {\n constructor(pattern) {\n super(pattern);\n }\n static get type() {\n return 'prefix-exact'\n }\n static get multiRegex() {\n return /^\\^\"(.*)\"$/\n }\n static get singleRegex() {\n return /^\\^(.*)$/\n }\n search(text) {\n const isMatch = text.startsWith(this.pattern);\n\n return {\n isMatch,\n score: isMatch ? 0 : 1,\n indices: [0, this.pattern.length - 1]\n }\n }\n}\n\n// Token: !^fire\n\nclass InversePrefixExactMatch extends BaseMatch {\n constructor(pattern) {\n super(pattern);\n }\n static get type() {\n return 'inverse-prefix-exact'\n }\n static get multiRegex() {\n return /^!\\^\"(.*)\"$/\n }\n static get singleRegex() {\n return /^!\\^(.*)$/\n }\n search(text) {\n const isMatch = !text.startsWith(this.pattern);\n\n return {\n isMatch,\n score: isMatch ? 0 : 1,\n indices: [0, text.length - 1]\n }\n }\n}\n\n// Token: .file$\n\nclass SuffixExactMatch extends BaseMatch {\n constructor(pattern) {\n super(pattern);\n }\n static get type() {\n return 'suffix-exact'\n }\n static get multiRegex() {\n return /^\"(.*)\"\\$$/\n }\n static get singleRegex() {\n return /^(.*)\\$$/\n }\n search(text) {\n const isMatch = text.endsWith(this.pattern);\n\n return {\n isMatch,\n score: isMatch ? 0 : 1,\n indices: [text.length - this.pattern.length, text.length - 1]\n }\n }\n}\n\n// Token: !.file$\n\nclass InverseSuffixExactMatch extends BaseMatch {\n constructor(pattern) {\n super(pattern);\n }\n static get type() {\n return 'inverse-suffix-exact'\n }\n static get multiRegex() {\n return /^!\"(.*)\"\\$$/\n }\n static get singleRegex() {\n return /^!(.*)\\$$/\n }\n search(text) {\n const isMatch = !text.endsWith(this.pattern);\n return {\n isMatch,\n score: isMatch ? 0 : 1,\n indices: [0, text.length - 1]\n }\n }\n}\n\nclass FuzzyMatch extends BaseMatch {\n constructor(\n pattern,\n {\n location = Config.location,\n threshold = Config.threshold,\n distance = Config.distance,\n includeMatches = Config.includeMatches,\n findAllMatches = Config.findAllMatches,\n minMatchCharLength = Config.minMatchCharLength,\n isCaseSensitive = Config.isCaseSensitive,\n ignoreLocation = Config.ignoreLocation\n } = {}\n ) {\n super(pattern);\n this._bitapSearch = new BitapSearch(pattern, {\n location,\n threshold,\n distance,\n includeMatches,\n findAllMatches,\n minMatchCharLength,\n isCaseSensitive,\n ignoreLocation\n });\n }\n static get type() {\n return 'fuzzy'\n }\n static get multiRegex() {\n return /^\"(.*)\"$/\n }\n static get singleRegex() {\n return /^(.*)$/\n }\n search(text) {\n return this._bitapSearch.searchIn(text)\n }\n}\n\n// Token: 'file\n\nclass IncludeMatch extends BaseMatch {\n constructor(pattern) {\n super(pattern);\n }\n static get type() {\n return 'include'\n }\n static get multiRegex() {\n return /^'\"(.*)\"$/\n }\n static get singleRegex() {\n return /^'(.*)$/\n }\n search(text) {\n let location = 0;\n let index;\n\n const indices = [];\n const patternLen = this.pattern.length;\n\n // Get all exact matches\n while ((index = text.indexOf(this.pattern, location)) > -1) {\n location = index + patternLen;\n indices.push([index, location - 1]);\n }\n\n const isMatch = !!indices.length;\n\n return {\n isMatch,\n score: isMatch ? 1 : 0,\n indices\n }\n }\n}\n\n// ❗Order is important. DO NOT CHANGE.\nconst searchers = [\n ExactMatch,\n IncludeMatch,\n PrefixExactMatch,\n InversePrefixExactMatch,\n InverseSuffixExactMatch,\n SuffixExactMatch,\n InverseExactMatch,\n FuzzyMatch\n];\n\nconst searchersLen = searchers.length;\n\n// Regex to split by spaces, but keep anything in quotes together\nconst SPACE_RE = / +(?=([^\\\"]*\\\"[^\\\"]*\\\")*[^\\\"]*$)/;\nconst OR_TOKEN = '|';\n\n// Return a 2D array representation of the query, for simpler parsing.\n// Example:\n// \"^core go$ | rb$ | py$ xy$\" => [[\"^core\", \"go$\"], [\"rb$\"], [\"py$\", \"xy$\"]]\nfunction parseQuery(pattern, options = {}) {\n return pattern.split(OR_TOKEN).map((item) => {\n let query = item\n .trim()\n .split(SPACE_RE)\n .filter((item) => item && !!item.trim());\n\n let results = [];\n for (let i = 0, len = query.length; i < len; i += 1) {\n const queryItem = query[i];\n\n // 1. Handle multiple query match (i.e, once that are quoted, like `\"hello world\"`)\n let found = false;\n let idx = -1;\n while (!found && ++idx < searchersLen) {\n const searcher = searchers[idx];\n let token = searcher.isMultiMatch(queryItem);\n if (token) {\n results.push(new searcher(token, options));\n found = true;\n }\n }\n\n if (found) {\n continue\n }\n\n // 2. Handle single query matches (i.e, once that are *not* quoted)\n idx = -1;\n while (++idx < searchersLen) {\n const searcher = searchers[idx];\n let token = searcher.isSingleMatch(queryItem);\n if (token) {\n results.push(new searcher(token, options));\n break\n }\n }\n }\n\n return results\n })\n}\n\n// These extended matchers can return an array of matches, as opposed\n// to a singl match\nconst MultiMatchSet = new Set([FuzzyMatch.type, IncludeMatch.type]);\n\n/**\n * Command-like searching\n * ======================\n *\n * Given multiple search terms delimited by spaces.e.g. `^jscript .python$ ruby !java`,\n * search in a given text.\n *\n * Search syntax:\n *\n * | Token | Match type | Description |\n * | ----------- | -------------------------- | -------------------------------------- |\n * | `jscript` | fuzzy-match | Items that fuzzy match `jscript` |\n * | `=scheme` | exact-match | Items that are `scheme` |\n * | `'python` | include-match | Items that include `python` |\n * | `!ruby` | inverse-exact-match | Items that do not include `ruby` |\n * | `^java` | prefix-exact-match | Items that start with `java` |\n * | `!^earlang` | inverse-prefix-exact-match | Items that do not start with `earlang` |\n * | `.js$` | suffix-exact-match | Items that end with `.js` |\n * | `!.go$` | inverse-suffix-exact-match | Items that do not end with `.go` |\n *\n * A single pipe character acts as an OR operator. For example, the following\n * query matches entries that start with `core` and end with either`go`, `rb`,\n * or`py`.\n *\n * ```\n * ^core go$ | rb$ | py$\n * ```\n */\nclass ExtendedSearch {\n constructor(\n pattern,\n {\n isCaseSensitive = Config.isCaseSensitive,\n includeMatches = Config.includeMatches,\n minMatchCharLength = Config.minMatchCharLength,\n ignoreLocation = Config.ignoreLocation,\n findAllMatches = Config.findAllMatches,\n location = Config.location,\n threshold = Config.threshold,\n distance = Config.distance\n } = {}\n ) {\n this.query = null;\n this.options = {\n isCaseSensitive,\n includeMatches,\n minMatchCharLength,\n findAllMatches,\n ignoreLocation,\n location,\n threshold,\n distance\n };\n\n this.pattern = isCaseSensitive ? pattern : pattern.toLowerCase();\n this.query = parseQuery(this.pattern, this.options);\n }\n\n static condition(_, options) {\n return options.useExtendedSearch\n }\n\n searchIn(text) {\n const query = this.query;\n\n if (!query) {\n return {\n isMatch: false,\n score: 1\n }\n }\n\n const { includeMatches, isCaseSensitive } = this.options;\n\n text = isCaseSensitive ? text : text.toLowerCase();\n\n let numMatches = 0;\n let allIndices = [];\n let totalScore = 0;\n\n // ORs\n for (let i = 0, qLen = query.length; i < qLen; i += 1) {\n const searchers = query[i];\n\n // Reset indices\n allIndices.length = 0;\n numMatches = 0;\n\n // ANDs\n for (let j = 0, pLen = searchers.length; j < pLen; j += 1) {\n const searcher = searchers[j];\n const { isMatch, indices, score } = searcher.search(text);\n\n if (isMatch) {\n numMatches += 1;\n totalScore += score;\n if (includeMatches) {\n const type = searcher.constructor.type;\n if (MultiMatchSet.has(type)) {\n allIndices = [...allIndices, ...indices];\n } else {\n allIndices.push(indices);\n }\n }\n } else {\n totalScore = 0;\n numMatches = 0;\n allIndices.length = 0;\n break\n }\n }\n\n // OR condition, so if TRUE, return\n if (numMatches) {\n let result = {\n isMatch: true,\n score: totalScore / numMatches\n };\n\n if (includeMatches) {\n result.indices = allIndices;\n }\n\n return result\n }\n }\n\n // Nothing was matched\n return {\n isMatch: false,\n score: 1\n }\n }\n}\n\nconst registeredSearchers = [];\n\nfunction register(...args) {\n registeredSearchers.push(...args);\n}\n\nfunction createSearcher(pattern, options) {\n for (let i = 0, len = registeredSearchers.length; i < len; i += 1) {\n let searcherClass = registeredSearchers[i];\n if (searcherClass.condition(pattern, options)) {\n return new searcherClass(pattern, options)\n }\n }\n\n return new BitapSearch(pattern, options)\n}\n\nconst LogicalOperator = {\n AND: '$and',\n OR: '$or'\n};\n\nconst KeyType = {\n PATH: '$path',\n PATTERN: '$val'\n};\n\nconst isExpression = (query) =>\n !!(query[LogicalOperator.AND] || query[LogicalOperator.OR]);\n\nconst isPath = (query) => !!query[KeyType.PATH];\n\nconst isLeaf = (query) =>\n !isArray(query) && isObject(query) && !isExpression(query);\n\nconst convertToExplicit = (query) => ({\n [LogicalOperator.AND]: Object.keys(query).map((key) => ({\n [key]: query[key]\n }))\n});\n\n// When `auto` is `true`, the parse function will infer and initialize and add\n// the appropriate `Searcher` instance\nfunction parse(query, options, { auto = true } = {}) {\n const next = (query) => {\n let keys = Object.keys(query);\n\n const isQueryPath = isPath(query);\n\n if (!isQueryPath && keys.length > 1 && !isExpression(query)) {\n return next(convertToExplicit(query))\n }\n\n if (isLeaf(query)) {\n const key = isQueryPath ? query[KeyType.PATH] : keys[0];\n\n const pattern = isQueryPath ? query[KeyType.PATTERN] : query[key];\n\n if (!isString(pattern)) {\n throw new Error(LOGICAL_SEARCH_INVALID_QUERY_FOR_KEY(key))\n }\n\n const obj = {\n keyId: createKeyId(key),\n pattern\n };\n\n if (auto) {\n obj.searcher = createSearcher(pattern, options);\n }\n\n return obj\n }\n\n let node = {\n children: [],\n operator: keys[0]\n };\n\n keys.forEach((key) => {\n const value = query[key];\n\n if (isArray(value)) {\n value.forEach((item) => {\n node.children.push(next(item));\n });\n }\n });\n\n return node\n };\n\n if (!isExpression(query)) {\n query = convertToExplicit(query);\n }\n\n return next(query)\n}\n\nclass Fuse {\n constructor(docs, options = {}, index) {\n this.options = { ...Config, ...options };\n\n if (\n this.options.useExtendedSearch &&\n !true\n ) {\n throw new Error(EXTENDED_SEARCH_UNAVAILABLE)\n }\n\n this._keyStore = new KeyStore(this.options.keys);\n\n this.setCollection(docs, index);\n }\n\n setCollection(docs, index) {\n this._docs = docs;\n\n if (index && !(index instanceof FuseIndex)) {\n throw new Error(INCORRECT_INDEX_TYPE)\n }\n\n this._myIndex =\n index ||\n createIndex(this.options.keys, this._docs, {\n getFn: this.options.getFn\n });\n }\n\n add(doc) {\n if (!isDefined(doc)) {\n return\n }\n\n this._docs.push(doc);\n this._myIndex.add(doc);\n }\n\n remove(predicate = (/* doc, idx */) => false) {\n const results = [];\n\n for (let i = 0, len = this._docs.length; i < len; i += 1) {\n const doc = this._docs[i];\n if (predicate(doc, i)) {\n this.removeAt(i);\n i -= 1;\n len -= 1;\n\n results.push(doc);\n }\n }\n\n return results\n }\n\n removeAt(idx) {\n this._docs.splice(idx, 1);\n this._myIndex.removeAt(idx);\n }\n\n getIndex() {\n return this._myIndex\n }\n\n search(query, { limit = -1 } = {}) {\n const {\n includeMatches,\n includeScore,\n shouldSort,\n sortFn,\n ignoreFieldNorm\n } = this.options;\n\n let results = isString(query)\n ? isString(this._docs[0])\n ? this._searchStringList(query)\n : this._searchObjectList(query)\n : this._searchLogical(query);\n\n computeScore$1(results, { ignoreFieldNorm });\n\n if (shouldSort) {\n results.sort(sortFn);\n }\n\n if (isNumber(limit) && limit > -1) {\n results = results.slice(0, limit);\n }\n\n return format(results, this._docs, {\n includeMatches,\n includeScore\n })\n }\n\n _searchStringList(query) {\n const searcher = createSearcher(query, this.options);\n const { records } = this._myIndex;\n const results = [];\n\n // Iterate over every string in the index\n records.forEach(({ v: text, i: idx, n: norm }) => {\n if (!isDefined(text)) {\n return\n }\n\n const { isMatch, score, indices } = searcher.searchIn(text);\n\n if (isMatch) {\n results.push({\n item: text,\n idx,\n matches: [{ score, value: text, norm, indices }]\n });\n }\n });\n\n return results\n }\n\n _searchLogical(query) {\n\n const expression = parse(query, this.options);\n\n const evaluate = (node, item, idx) => {\n if (!node.children) {\n const { keyId, searcher } = node;\n\n const matches = this._findMatches({\n key: this._keyStore.get(keyId),\n value: this._myIndex.getValueForItemAtKeyId(item, keyId),\n searcher\n });\n\n if (matches && matches.length) {\n return [\n {\n idx,\n item,\n matches\n }\n ]\n }\n\n return []\n }\n\n /*eslint indent: [2, 2, {\"SwitchCase\": 1}]*/\n switch (node.operator) {\n case LogicalOperator.AND: {\n const res = [];\n for (let i = 0, len = node.children.length; i < len; i += 1) {\n const child = node.children[i];\n const result = evaluate(child, item, idx);\n if (result.length) {\n res.push(...result);\n } else {\n return []\n }\n }\n return res\n }\n case LogicalOperator.OR: {\n const res = [];\n for (let i = 0, len = node.children.length; i < len; i += 1) {\n const child = node.children[i];\n const result = evaluate(child, item, idx);\n if (result.length) {\n res.push(...result);\n break\n }\n }\n return res\n }\n }\n };\n\n const records = this._myIndex.records;\n const resultMap = {};\n const results = [];\n\n records.forEach(({ $: item, i: idx }) => {\n if (isDefined(item)) {\n let expResults = evaluate(expression, item, idx);\n\n if (expResults.length) {\n // Dedupe when adding\n if (!resultMap[idx]) {\n resultMap[idx] = { idx, item, matches: [] };\n results.push(resultMap[idx]);\n }\n expResults.forEach(({ matches }) => {\n resultMap[idx].matches.push(...matches);\n });\n }\n }\n });\n\n return results\n }\n\n _searchObjectList(query) {\n const searcher = createSearcher(query, this.options);\n const { keys, records } = this._myIndex;\n const results = [];\n\n // List is Array\n records.forEach(({ $: item, i: idx }) => {\n if (!isDefined(item)) {\n return\n }\n\n let matches = [];\n\n // Iterate over every key (i.e, path), and fetch the value at that key\n keys.forEach((key, keyIndex) => {\n matches.push(\n ...this._findMatches({\n key,\n value: item[keyIndex],\n searcher\n })\n );\n });\n\n if (matches.length) {\n results.push({\n idx,\n item,\n matches\n });\n }\n });\n\n return results\n }\n _findMatches({ key, value, searcher }) {\n if (!isDefined(value)) {\n return []\n }\n\n let matches = [];\n\n if (isArray(value)) {\n value.forEach(({ v: text, i: idx, n: norm }) => {\n if (!isDefined(text)) {\n return\n }\n\n const { isMatch, score, indices } = searcher.searchIn(text);\n\n if (isMatch) {\n matches.push({\n score,\n key,\n value: text,\n idx,\n norm,\n indices\n });\n }\n });\n } else {\n const { v: text, n: norm } = value;\n\n const { isMatch, score, indices } = searcher.searchIn(text);\n\n if (isMatch) {\n matches.push({ score, key, value: text, norm, indices });\n }\n }\n\n return matches\n }\n}\n\n// Practical scoring function\nfunction computeScore$1(results, { ignoreFieldNorm = Config.ignoreFieldNorm }) {\n results.forEach((result) => {\n let totalScore = 1;\n\n result.matches.forEach(({ key, norm, score }) => {\n const weight = key ? key.weight : null;\n\n totalScore *= Math.pow(\n score === 0 && weight ? Number.EPSILON : score,\n (weight || 1) * (ignoreFieldNorm ? 1 : norm)\n );\n });\n\n result.score = totalScore;\n });\n}\n\nfunction format(\n results,\n docs,\n {\n includeMatches = Config.includeMatches,\n includeScore = Config.includeScore\n } = {}\n) {\n const transformers = [];\n\n if (includeMatches) transformers.push(transformMatches);\n if (includeScore) transformers.push(transformScore);\n\n return results.map((result) => {\n const { idx } = result;\n\n const data = {\n item: docs[idx],\n refIndex: idx\n };\n\n if (transformers.length) {\n transformers.forEach((transformer) => {\n transformer(result, data);\n });\n }\n\n return data\n })\n}\n\nFuse.version = '6.4.3';\nFuse.createIndex = createIndex;\nFuse.parseIndex = parseIndex;\nFuse.config = Config;\n\n{\n Fuse.parseQuery = parse;\n}\n\n{\n register(ExtendedSearch);\n}\n\nexport default Fuse;\n","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./notificacionesEdit.vue?vue&type=style&index=0&lang=css&\"","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-md-6\"},[_c('card',{staticClass:\"stacked-form\",attrs:{\"title\":\"Stacked Form\"}},[_c('h4',{staticClass:\"card-title\",attrs:{\"slot\":\"header\"},slot:\"header\"},[_vm._v(\" Stacked Form \")]),_c('form',{attrs:{\"method\":\"#\",\"action\":\"#\"},on:{\"submit\":function($event){$event.preventDefault();}}},[_c('div',[_c('fg-input',{attrs:{\"label\":\"Email address\",\"type\":\"email\",\"placeholder\":\"Enter email\"}}),_c('fg-input',{attrs:{\"label\":\"Password\",\"type\":\"password\",\"placeholder\":\"Password\"}}),_c('div',{staticClass:\"form-group\"},[_c('checkbox',[_vm._v(\"Subscribe to newsletter\")])],1),_c('n-button',{attrs:{\"type\":\"primary\"}},[_vm._v(\"Submit\")])],1)])])],1),_c('div',{staticClass:\"col-md-6\"},[_c('card',{attrs:{\"title\":\"Horizontal Form\"}},[_c('h4',{staticClass:\"card-title\",attrs:{\"slot\":\"header\"},slot:\"header\"},[_vm._v(\" Horizontal Form \")]),_c('form',{staticClass:\"form-horizontal\",attrs:{\"action\":\"#\",\"method\":\"#\"},on:{\"submit\":function($event){$event.preventDefault();}}},[_c('div',{staticClass:\"row\"},[_c('label',{staticClass:\"col-md-3 col-form-label\"},[_vm._v(\"Username\")]),_c('div',{staticClass:\"col-md-9\"},[_c('fg-input',{attrs:{\"placeholder\":\"Username\"}})],1)]),_c('div',{staticClass:\"row\"},[_c('label',{staticClass:\"col-md-3 col-form-label\"},[_vm._v(\"Email\")]),_c('div',{staticClass:\"col-md-9\"},[_c('fg-input',{attrs:{\"placeholder\":\"Email\",\"type\":\"email\"}})],1)]),_c('div',{staticClass:\"row\"},[_c('label',{staticClass:\"col-md-3 col-form-label\"},[_vm._v(\"Password\")]),_c('div',{staticClass:\"col-md-9\"},[_c('fg-input',{attrs:{\"placeholder\":\"Password\",\"type\":\"password\"}})],1)]),_c('div',{staticClass:\"row\"},[_c('label',{staticClass:\"col-md-3 col-form-label\"}),_c('div',{staticClass:\"col-md-9\"},[_c('checkbox',[_vm._v(\"Remember me\")])],1)])]),_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-md-9 offset-md-3 col-12\"},[_c('n-button',{attrs:{\"native-type\":\"submit\",\"type\":\"primary\"}},[_vm._v(\" Sign in \")])],1)])])],1),_c('div',{staticClass:\"col-md-12\"},[_c('card',[_c('template',{slot:\"header\"},[_c('h4',{staticClass:\"card-title\"},[_vm._v(\"Form Elements\")])]),_c('div',[_c('form',{staticClass:\"form-horizontal\",attrs:{\"method\":\"get\",\"action\":\"/\"}},[_c('div',{staticClass:\"row\"},[_c('label',{staticClass:\"col-sm-2 col-form-label\"},[_vm._v(\"With help\")]),_c('div',{staticClass:\"col-sm-10\"},[_c('fg-input',{attrs:{\"placeholder\":\"Enter email\"}},[_c('span',{staticClass:\"form-text\",attrs:{\"slot\":\"helpBlock\"},slot:\"helpBlock\"},[_vm._v(\"A block of help text that breaks onto a new line. \")])])],1)]),_c('div',{staticClass:\"row\"},[_c('label',{staticClass:\"col-sm-2 col-form-label\"},[_vm._v(\"Password\")]),_c('div',{staticClass:\"col-sm-10\"},[_c('fg-input',{attrs:{\"type\":\"password\",\"value\":\"password\"}})],1)]),_c('div',{staticClass:\"row\"},[_c('label',{staticClass:\"col-sm-2 col-form-label\"},[_vm._v(\"Placeholder\")]),_c('div',{staticClass:\"col-sm-10\"},[_c('fg-input',{attrs:{\"placeholder\":\"Placeholder\"}})],1)]),_c('div',{staticClass:\"row\"},[_c('label',{staticClass:\"col-sm-2 col-form-label\"},[_vm._v(\"Disabled\")]),_c('div',{staticClass:\"col-sm-10\"},[_c('fg-input',{attrs:{\"value\":\"Disabled input here..\",\"disabled\":\"\"}})],1)]),_c('div',{staticClass:\"row\"},[_c('label',{staticClass:\"col-sm-2 col-form-label\"},[_vm._v(\"Static Control\")]),_c('div',{staticClass:\"col-sm-10\"},[_c('fg-input',[_c('p',{staticClass:\"form-control-static\"},[_vm._v(\"hello@creative-tim.com\")])])],1)]),_c('div',{staticClass:\"row\"},[_c('label',{staticClass:\"col-sm-2 col-form-label\"},[_vm._v(\"Checkboxes and radios\")]),_c('div',{staticClass:\"col-sm-10 checkbox-radios\"},[_c('checkbox',{model:{value:(_vm.checkboxes.first),callback:function ($$v) {_vm.$set(_vm.checkboxes, \"first\", $$v)},expression:\"checkboxes.first\"}},[_vm._v(\"First checkbox\")]),_c('checkbox',{model:{value:(_vm.checkboxes.second),callback:function ($$v) {_vm.$set(_vm.checkboxes, \"second\", $$v)},expression:\"checkboxes.second\"}},[_vm._v(\"Second checkbox\")]),_c('radio',{attrs:{\"label\":\"1\"},model:{value:(_vm.radios.radio1),callback:function ($$v) {_vm.$set(_vm.radios, \"radio1\", $$v)},expression:\"radios.radio1\"}},[_vm._v(\"First Radio\")]),_c('radio',{attrs:{\"label\":\"2\"},model:{value:(_vm.radios.radio1),callback:function ($$v) {_vm.$set(_vm.radios, \"radio1\", $$v)},expression:\"radios.radio1\"}},[_vm._v(\"Second Radio\")])],1)]),_c('div',{staticClass:\"row\"},[_c('label',{staticClass:\"col-sm-2 col-form-label\"},[_vm._v(\"Inline checkboxes\")]),_c('div',{staticClass:\"col-sm-10 checkbox-radios\"},[_c('checkbox',{attrs:{\"inline\":\"\"},model:{value:(_vm.checkboxes.a),callback:function ($$v) {_vm.$set(_vm.checkboxes, \"a\", $$v)},expression:\"checkboxes.a\"}},[_vm._v(\"a\")]),_c('checkbox',{attrs:{\"inline\":\"\"},model:{value:(_vm.checkboxes.b),callback:function ($$v) {_vm.$set(_vm.checkboxes, \"b\", $$v)},expression:\"checkboxes.b\"}},[_vm._v(\"b\")]),_c('checkbox',{attrs:{\"inline\":\"\"},model:{value:(_vm.checkboxes.c),callback:function ($$v) {_vm.$set(_vm.checkboxes, \"c\", $$v)},expression:\"checkboxes.c\"}},[_vm._v(\"c\")])],1)])])])],2)],1),_c('div',{staticClass:\"col-md-12\"},[_c('card',[_c('h4',{staticClass:\"card-title\",attrs:{\"slot\":\"header\"},slot:\"header\"},[_vm._v(\"Input Variants\")]),_c('form',{staticClass:\"form-horizontal\",attrs:{\"method\":\"get\",\"action\":\"/\"}},[_c('div',{staticClass:\"row\"},[_c('label',{staticClass:\"col-sm-2 col-form-label\"},[_vm._v(\"Custom Checkboxes & radios\")]),_c('div',{staticClass:\"col-sm-4 col-sm-offset-1 checkbox-radios\"},[_c('checkbox',[_vm._v(\"Unchecked\")]),_c('checkbox',{attrs:{\"checked\":true}},[_vm._v(\"Checked\")]),_c('checkbox',{attrs:{\"disabled\":\"\"}},[_vm._v(\"Disabled Checked\")]),_c('checkbox',{attrs:{\"disabled\":\"\",\"checked\":true}},[_vm._v(\"Disabled Checked\")])],1),_c('div',{staticClass:\"col-sm-5 checkbox-radios\"},[_c('radio',{attrs:{\"label\":\"1\"},model:{value:(_vm.radios.radioOn),callback:function ($$v) {_vm.$set(_vm.radios, \"radioOn\", $$v)},expression:\"radios.radioOn\"}},[_vm._v(\"Radio is On\")]),_c('radio',{attrs:{\"label\":\"2\"},model:{value:(_vm.radios.radioOn),callback:function ($$v) {_vm.$set(_vm.radios, \"radioOn\", $$v)},expression:\"radios.radioOn\"}},[_vm._v(\"Radio is Off\")]),_c('radio',{attrs:{\"label\":\"1\",\"disabled\":\"\"},model:{value:(_vm.radios.radioOff),callback:function ($$v) {_vm.$set(_vm.radios, \"radioOff\", $$v)},expression:\"radios.radioOff\"}},[_vm._v(\"Radio is On\")]),_c('radio',{attrs:{\"label\":\"2\",\"disabled\":\"\"},model:{value:(_vm.radios.radioOff),callback:function ($$v) {_vm.$set(_vm.radios, \"radioOff\", $$v)},expression:\"radios.radioOff\"}},[_vm._v(\"Radio is Off\")])],1)]),_c('div',{staticClass:\"row\"},[_c('label',{staticClass:\"col-sm-2 col-form-label\"},[_vm._v(\"Input with success\")]),_c('div',{staticClass:\"col-sm-10\"},[_c('fg-input',{staticClass:\"has-success\",attrs:{\"value\":\"Success\"}})],1)]),_c('div',{staticClass:\"row\"},[_c('label',{staticClass:\"col-sm-2 col-form-label\"},[_vm._v(\"Input with error\")]),_c('div',{staticClass:\"col-sm-10\"},[_c('fg-input',{staticClass:\"has-danger\",attrs:{\"value\":\"Error\"}})],1)]),_c('div',{staticClass:\"row\"},[_c('label',{staticClass:\"col-sm-2 col-form-label\"},[_vm._v(\"Column sizing\")]),_c('div',{staticClass:\"col-sm-10\"},[_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-md-3\"},[_c('fg-input',{attrs:{\"placeholder\":\".col-md-3\"}})],1),_c('div',{staticClass:\"col-md-4\"},[_c('fg-input',{attrs:{\"placeholder\":\".col-md-4\"}})],1),_c('div',{staticClass:\"col-md-5\"},[_c('fg-input',{attrs:{\"placeholder\":\".col-md-5\"}})],1)])])])])])],1)])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\n\r\n\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./RegularForms.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./RegularForms.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./RegularForms.vue?vue&type=template&id=7a4bd776&\"\nimport script from \"./RegularForms.vue?vue&type=script&lang=js&\"\nexport * from \"./RegularForms.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./monedasAdd.vue?vue&type=style&index=0&lang=css&\"","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-12\"},[_c('card',{attrs:{\"card-body-classes\":\"table-full-width\",\"no-footer-line\":\"\"}},[_c('div',[_c('div',{staticClass:\"col-12 d-flex justify-content-center justify-content-sm-between flex-wrap\"},[_c('h4',{staticClass:\"card-title text-purple\"},[_vm._v(\" \"+_vm._s(_vm.$t(\"app.modules.roles.add.title\"))+\" \")])]),_c('div',{staticClass:\"col-12\"},[_c('ValidationObserver',{ref:\"formAdd\",scopedSlots:_vm._u([{key:\"default\",fn:function(ref){\nvar handleSubmit = ref.handleSubmit;\nreturn [_c('form',{on:{\"submit\":function($event){$event.preventDefault();return handleSubmit(_vm.submitNewRole)}}},[_c('h3',[_c('small',[_vm._v(\"Traducciones\")])]),_vm._l((_vm.item.langs),function(lang){return _c('div',{key:lang.idLenguaje},[_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-sm-6\"},[_c('ValidationProvider',{attrs:{\"name\":\"minLength\",\"rules\":\"required|min:5\"},scopedSlots:_vm._u([{key:\"default\",fn:function(ref){\nvar passed = ref.passed;\nvar failed = ref.failed;\nreturn [_c('fg-input',{attrs:{\"type\":\"text\",\"placeholder\":lang.idioma,\"error\":failed\n ? 'La longitud mínima para el nombre es de 5 '\n : null,\"hasSuccess\":passed,\"name\":\"minLength\",\"label\":\"Nombre del rol\"},model:{value:(lang.nombre),callback:function ($$v) {_vm.$set(lang, \"nombre\", $$v)},expression:\"lang.nombre\"}})]}}],null,true)})],1),_c('div',{staticClass:\"col-sm-6\"},[_c('ValidationProvider',{attrs:{\"name\":\"minLength\",\"rules\":\"required|min:5\"},scopedSlots:_vm._u([{key:\"default\",fn:function(ref){\n var passed = ref.passed;\n var failed = ref.failed;\nreturn [_c('fg-input',{attrs:{\"type\":\"text\",\"placeholder\":lang.idioma,\"error\":failed\n ? 'La longitud mínima para el nombre es de 5 '\n : null,\"hasSuccess\":passed,\"name\":\"minLength\",\"label\":\"Descripcion\"},model:{value:(lang.descripcion),callback:function ($$v) {_vm.$set(lang, \"descripcion\", $$v)},expression:\"lang.descripcion\"}})]}}],null,true)})],1)])])}),_c('h3',[_c('small',[_vm._v(\"Permisos\")])]),_c('div',{staticClass:\"row table-full-width\"},[_c('div',{staticClass:\"col-sm-12\"},[_c('el-table',{staticStyle:{\"width\":\"100%\"},attrs:{\"stripe\":\"\",\"data\":_vm.tableData}},[_c('el-table-column',{attrs:{\"prop\":\"titulo\",\"label\":\"Modulo\"}}),_c('el-table-column',{attrs:{\"prop\":\"nombreModulo\",\"label\":\"Permisos\"},scopedSlots:_vm._u([{key:\"default\",fn:function(scope){return _vm._l((scope.row.permisos),function(permiso){return _c('n-checkbox',{key:permiso.id_ClaimsModule,attrs:{\"label\":permiso.permiso},model:{value:(permiso.status),callback:function ($$v) {_vm.$set(permiso, \"status\", $$v)},expression:\"permiso.status\"}},[_vm._v(\" \"+_vm._s(permiso.permiso)+\" \")])})}}],null,true)})],1)],1)]),_c('div',{staticClass:\"col-sm-6 form-group has-label\"},[_c('div',{staticClass:\"row\"},[_c('label',{staticStyle:{\"margin-left\":\"15px\"}},[_vm._v(\"Rol habilitado\")])]),[_c('n-switch',{model:{value:(_vm.item.active),callback:function ($$v) {_vm.$set(_vm.item, \"active\", $$v)},expression:\"item.active\"}},[_c('i',{staticClass:\"now-ui-icons ui-1_check\",attrs:{\"slot\":\"on\"},slot:\"on\"}),_c('i',{staticClass:\"now-ui-icons ui-1_simple-remove\",attrs:{\"slot\":\"off\"},slot:\"off\"})])]],2),_c('div',{staticClass:\"text-right\",staticStyle:{\"margin-top\":\"10px\",\"padding-top\":\"20px\",\"border-top\":\"outset\"},attrs:{\"slot\":\"footer\"},slot:\"footer\"},[_c('router-link',{staticClass:\"col-2\",attrs:{\"to\":{ name: 'Roles' }}},[_c('n-button',{staticClass:\"pull-left btn-secondary\"},[_vm._v(_vm._s(_vm.$t(\"app.buttons.cancel\")))])],1),_c('n-button',{attrs:{\"native-type\":\"submit\",\"type\":\"primary\"}},[_vm._v(_vm._s(_vm.$t(\"app.buttons.save\")))])],1)],2)]}}])})],1)])])],1)])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\n\r\n\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./perfilesAdd.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./perfilesAdd.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./perfilesAdd.vue?vue&type=template&id=45e11428&\"\nimport script from \"./perfilesAdd.vue?vue&type=script&lang=js&\"\nexport * from \"./perfilesAdd.vue?vue&type=script&lang=js&\"\nimport style0 from \"./perfilesAdd.vue?vue&type=style&index=0&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","/*\r\n * Copyright (c) Microsoft Corporation. All rights reserved.\r\n * Licensed under the MIT License.\r\n */\r\n/**\r\n * @hidden\r\n * Constants\r\n */\r\nvar Constants = /** @class */ (function () {\r\n function Constants() {\r\n }\r\n Object.defineProperty(Constants, \"libraryName\", {\r\n get: function () { return \"Msal.js\"; } // used in telemetry sdkName\r\n ,\r\n enumerable: true,\r\n configurable: true\r\n });\r\n Object.defineProperty(Constants, \"claims\", {\r\n get: function () { return \"claims\"; },\r\n enumerable: true,\r\n configurable: true\r\n });\r\n Object.defineProperty(Constants, \"clientId\", {\r\n get: function () { return \"clientId\"; },\r\n enumerable: true,\r\n configurable: true\r\n });\r\n Object.defineProperty(Constants, \"adalIdToken\", {\r\n get: function () { return \"adal.idtoken\"; },\r\n enumerable: true,\r\n configurable: true\r\n });\r\n Object.defineProperty(Constants, \"cachePrefix\", {\r\n get: function () { return \"msal\"; },\r\n enumerable: true,\r\n configurable: true\r\n });\r\n Object.defineProperty(Constants, \"scopes\", {\r\n get: function () { return \"scopes\"; },\r\n enumerable: true,\r\n configurable: true\r\n });\r\n Object.defineProperty(Constants, \"no_account\", {\r\n get: function () { return \"NO_ACCOUNT\"; },\r\n enumerable: true,\r\n configurable: true\r\n });\r\n Object.defineProperty(Constants, \"upn\", {\r\n get: function () { return \"upn\"; },\r\n enumerable: true,\r\n configurable: true\r\n });\r\n Object.defineProperty(Constants, \"domain_hint\", {\r\n get: function () { return \"domain_hint\"; },\r\n enumerable: true,\r\n configurable: true\r\n });\r\n Object.defineProperty(Constants, \"prompt_select_account\", {\r\n get: function () { return \"&prompt=select_account\"; },\r\n enumerable: true,\r\n configurable: true\r\n });\r\n Object.defineProperty(Constants, \"prompt_none\", {\r\n get: function () { return \"&prompt=none\"; },\r\n enumerable: true,\r\n configurable: true\r\n });\r\n Object.defineProperty(Constants, \"prompt\", {\r\n get: function () { return \"prompt\"; },\r\n enumerable: true,\r\n configurable: true\r\n });\r\n Object.defineProperty(Constants, \"response_mode_fragment\", {\r\n get: function () { return \"&response_mode=fragment\"; },\r\n enumerable: true,\r\n configurable: true\r\n });\r\n Object.defineProperty(Constants, \"resourceDelimiter\", {\r\n get: function () { return \"|\"; },\r\n enumerable: true,\r\n configurable: true\r\n });\r\n Object.defineProperty(Constants, \"cacheDelimiter\", {\r\n get: function () { return \".\"; },\r\n enumerable: true,\r\n configurable: true\r\n });\r\n Object.defineProperty(Constants, \"popUpWidth\", {\r\n get: function () { return this._popUpWidth; },\r\n set: function (width) {\r\n this._popUpWidth = width;\r\n },\r\n enumerable: true,\r\n configurable: true\r\n });\r\n Object.defineProperty(Constants, \"popUpHeight\", {\r\n get: function () { return this._popUpHeight; },\r\n set: function (height) {\r\n this._popUpHeight = height;\r\n },\r\n enumerable: true,\r\n configurable: true\r\n });\r\n Object.defineProperty(Constants, \"login\", {\r\n get: function () { return \"LOGIN\"; },\r\n enumerable: true,\r\n configurable: true\r\n });\r\n Object.defineProperty(Constants, \"renewToken\", {\r\n get: function () { return \"RENEW_TOKEN\"; },\r\n enumerable: true,\r\n configurable: true\r\n });\r\n Object.defineProperty(Constants, \"unknown\", {\r\n get: function () { return \"UNKNOWN\"; },\r\n enumerable: true,\r\n configurable: true\r\n });\r\n Object.defineProperty(Constants, \"ADFS\", {\r\n get: function () { return \"adfs\"; },\r\n enumerable: true,\r\n configurable: true\r\n });\r\n Object.defineProperty(Constants, \"homeAccountIdentifier\", {\r\n get: function () { return \"homeAccountIdentifier\"; },\r\n enumerable: true,\r\n configurable: true\r\n });\r\n Object.defineProperty(Constants, \"common\", {\r\n get: function () { return \"common\"; },\r\n enumerable: true,\r\n configurable: true\r\n });\r\n Object.defineProperty(Constants, \"openidScope\", {\r\n get: function () { return \"openid\"; },\r\n enumerable: true,\r\n configurable: true\r\n });\r\n Object.defineProperty(Constants, \"profileScope\", {\r\n get: function () { return \"profile\"; },\r\n enumerable: true,\r\n configurable: true\r\n });\r\n Object.defineProperty(Constants, \"oidcScopes\", {\r\n get: function () { return [this.openidScope, this.profileScope]; },\r\n enumerable: true,\r\n configurable: true\r\n });\r\n Object.defineProperty(Constants, \"interactionTypeRedirect\", {\r\n get: function () { return \"redirectInteraction\"; },\r\n enumerable: true,\r\n configurable: true\r\n });\r\n Object.defineProperty(Constants, \"interactionTypePopup\", {\r\n get: function () { return \"popupInteraction\"; },\r\n enumerable: true,\r\n configurable: true\r\n });\r\n Object.defineProperty(Constants, \"interactionTypeSilent\", {\r\n get: function () { return \"silentInteraction\"; },\r\n enumerable: true,\r\n configurable: true\r\n });\r\n Object.defineProperty(Constants, \"inProgress\", {\r\n get: function () { return \"inProgress\"; },\r\n enumerable: true,\r\n configurable: true\r\n });\r\n Constants._popUpWidth = 483;\r\n Constants._popUpHeight = 600;\r\n return Constants;\r\n}());\r\nexport { Constants };\r\n/**\r\n * Keys in the hashParams\r\n */\r\nexport var ServerHashParamKeys;\r\n(function (ServerHashParamKeys) {\r\n ServerHashParamKeys[\"SCOPE\"] = \"scope\";\r\n ServerHashParamKeys[\"STATE\"] = \"state\";\r\n ServerHashParamKeys[\"ERROR\"] = \"error\";\r\n ServerHashParamKeys[\"ERROR_DESCRIPTION\"] = \"error_description\";\r\n ServerHashParamKeys[\"ACCESS_TOKEN\"] = \"access_token\";\r\n ServerHashParamKeys[\"ID_TOKEN\"] = \"id_token\";\r\n ServerHashParamKeys[\"EXPIRES_IN\"] = \"expires_in\";\r\n ServerHashParamKeys[\"SESSION_STATE\"] = \"session_state\";\r\n ServerHashParamKeys[\"CLIENT_INFO\"] = \"client_info\";\r\n})(ServerHashParamKeys || (ServerHashParamKeys = {}));\r\n/**\r\n * @hidden\r\n * @ignore\r\n * response_type from OpenIDConnect\r\n * References: https://openid.net/specs/oauth-v2-multiple-response-types-1_0.html & https://tools.ietf.org/html/rfc6749#section-4.2.1\r\n *\r\n */\r\nexport var ResponseTypes = {\r\n id_token: \"id_token\",\r\n token: \"token\",\r\n id_token_token: \"id_token token\"\r\n};\r\n/**\r\n * @hidden\r\n * CacheKeys for MSAL\r\n */\r\nexport var TemporaryCacheKeys;\r\n(function (TemporaryCacheKeys) {\r\n TemporaryCacheKeys[\"AUTHORITY\"] = \"authority\";\r\n TemporaryCacheKeys[\"ACQUIRE_TOKEN_ACCOUNT\"] = \"acquireTokenAccount\";\r\n TemporaryCacheKeys[\"SESSION_STATE\"] = \"session.state\";\r\n TemporaryCacheKeys[\"STATE_LOGIN\"] = \"state.login\";\r\n TemporaryCacheKeys[\"STATE_ACQ_TOKEN\"] = \"state.acquireToken\";\r\n TemporaryCacheKeys[\"STATE_RENEW\"] = \"state.renew\";\r\n TemporaryCacheKeys[\"NONCE_IDTOKEN\"] = \"nonce.idtoken\";\r\n TemporaryCacheKeys[\"LOGIN_REQUEST\"] = \"login.request\";\r\n TemporaryCacheKeys[\"RENEW_STATUS\"] = \"token.renew.status\";\r\n TemporaryCacheKeys[\"URL_HASH\"] = \"urlHash\";\r\n TemporaryCacheKeys[\"INTERACTION_STATUS\"] = \"interaction_status\";\r\n TemporaryCacheKeys[\"REDIRECT_REQUEST\"] = \"redirect_request\";\r\n})(TemporaryCacheKeys || (TemporaryCacheKeys = {}));\r\nexport var PersistentCacheKeys;\r\n(function (PersistentCacheKeys) {\r\n PersistentCacheKeys[\"IDTOKEN\"] = \"idtoken\";\r\n PersistentCacheKeys[\"CLIENT_INFO\"] = \"client.info\";\r\n})(PersistentCacheKeys || (PersistentCacheKeys = {}));\r\nexport var ErrorCacheKeys;\r\n(function (ErrorCacheKeys) {\r\n ErrorCacheKeys[\"LOGIN_ERROR\"] = \"login.error\";\r\n ErrorCacheKeys[\"ERROR\"] = \"error\";\r\n ErrorCacheKeys[\"ERROR_DESC\"] = \"error.description\";\r\n})(ErrorCacheKeys || (ErrorCacheKeys = {}));\r\nexport var DEFAULT_AUTHORITY = \"https://login.microsoftonline.com/common/\";\r\nexport var AAD_INSTANCE_DISCOVERY_ENDPOINT = DEFAULT_AUTHORITY + \"/discovery/instance?api-version=1.1&authorization_endpoint=\";\r\nexport var WELL_KNOWN_SUFFIX = \".well-known/openid-configuration\";\r\n/**\r\n * @hidden\r\n * SSO Types - generated to populate hints\r\n */\r\nexport var SSOTypes;\r\n(function (SSOTypes) {\r\n SSOTypes[\"ACCOUNT\"] = \"account\";\r\n SSOTypes[\"SID\"] = \"sid\";\r\n SSOTypes[\"LOGIN_HINT\"] = \"login_hint\";\r\n SSOTypes[\"ORGANIZATIONS\"] = \"organizations\";\r\n SSOTypes[\"ID_TOKEN\"] = \"id_token\";\r\n SSOTypes[\"ACCOUNT_ID\"] = \"accountIdentifier\";\r\n SSOTypes[\"HOMEACCOUNT_ID\"] = \"homeAccountIdentifier\";\r\n})(SSOTypes || (SSOTypes = {}));\r\n/**\r\n * @hidden\r\n */\r\nexport var BlacklistedEQParams = [\r\n SSOTypes.SID,\r\n SSOTypes.LOGIN_HINT\r\n];\r\nexport var NetworkRequestType = {\r\n GET: \"GET\",\r\n POST: \"POST\"\r\n};\r\n/**\r\n * we considered making this \"enum\" in the request instead of string, however it looks like the allowed list of\r\n * prompt values kept changing over past couple of years. There are some undocumented prompt values for some\r\n * internal partners too, hence the choice of generic \"string\" type instead of the \"enum\"\r\n * @hidden\r\n */\r\nexport var PromptState = {\r\n LOGIN: \"login\",\r\n SELECT_ACCOUNT: \"select_account\",\r\n CONSENT: \"consent\",\r\n NONE: \"none\"\r\n};\r\n/**\r\n * Frame name prefixes for the hidden iframe created in silent frames\r\n */\r\nexport var FramePrefix = {\r\n ID_TOKEN_FRAME: \"msalIdTokenFrame\",\r\n TOKEN_FRAME: \"msalRenewFrame\"\r\n};\r\n/**\r\n * MSAL JS Library Version\r\n */\r\nexport function libraryVersion() {\r\n return \"1.4.4\";\r\n}\r\n//# sourceMappingURL=Constants.js.map","/*\r\n * Copyright (c) Microsoft Corporation. All rights reserved.\r\n * Licensed under the MIT License.\r\n */\r\n/**\r\n * @hidden\r\n */\r\nvar CryptoUtils = /** @class */ (function () {\r\n function CryptoUtils() {\r\n }\r\n /**\r\n * Creates a new random GUID\r\n * @returns string (GUID)\r\n */\r\n CryptoUtils.createNewGuid = function () {\r\n /*\r\n * RFC4122: The version 4 UUID is meant for generating UUIDs from truly-random or\r\n * pseudo-random numbers.\r\n * The algorithm is as follows:\r\n * Set the two most significant bits (bits 6 and 7) of the\r\n * clock_seq_hi_and_reserved to zero and one, respectively.\r\n * Set the four most significant bits (bits 12 through 15) of the\r\n * time_hi_and_version field to the 4-bit version number from\r\n * Section 4.1.3. Version4\r\n * Set all the other bits to randomly (or pseudo-randomly) chosen\r\n * values.\r\n * UUID = time-low \"-\" time-mid \"-\"time-high-and-version \"-\"clock-seq-reserved and low(2hexOctet)\"-\" node\r\n * time-low = 4hexOctet\r\n * time-mid = 2hexOctet\r\n * time-high-and-version = 2hexOctet\r\n * clock-seq-and-reserved = hexOctet:\r\n * clock-seq-low = hexOctet\r\n * node = 6hexOctet\r\n * Format: xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx\r\n * y could be 1000, 1001, 1010, 1011 since most significant two bits needs to be 10\r\n * y values are 8, 9, A, B\r\n */\r\n var cryptoObj = window.crypto; // for IE 11\r\n if (cryptoObj && cryptoObj.getRandomValues) {\r\n var buffer = new Uint8Array(16);\r\n cryptoObj.getRandomValues(buffer);\r\n // buffer[6] and buffer[7] represents the time_hi_and_version field. We will set the four most significant bits (4 through 7) of buffer[6] to represent decimal number 4 (UUID version number).\r\n buffer[6] |= 0x40; // buffer[6] | 01000000 will set the 6 bit to 1.\r\n buffer[6] &= 0x4f; // buffer[6] & 01001111 will set the 4, 5, and 7 bit to 0 such that bits 4-7 == 0100 = \"4\".\r\n // buffer[8] represents the clock_seq_hi_and_reserved field. We will set the two most significant bits (6 and 7) of the clock_seq_hi_and_reserved to zero and one, respectively.\r\n buffer[8] |= 0x80; // buffer[8] | 10000000 will set the 7 bit to 1.\r\n buffer[8] &= 0xbf; // buffer[8] & 10111111 will set the 6 bit to 0.\r\n return CryptoUtils.decimalToHex(buffer[0]) + CryptoUtils.decimalToHex(buffer[1])\r\n + CryptoUtils.decimalToHex(buffer[2]) + CryptoUtils.decimalToHex(buffer[3])\r\n + \"-\" + CryptoUtils.decimalToHex(buffer[4]) + CryptoUtils.decimalToHex(buffer[5])\r\n + \"-\" + CryptoUtils.decimalToHex(buffer[6]) + CryptoUtils.decimalToHex(buffer[7])\r\n + \"-\" + CryptoUtils.decimalToHex(buffer[8]) + CryptoUtils.decimalToHex(buffer[9])\r\n + \"-\" + CryptoUtils.decimalToHex(buffer[10]) + CryptoUtils.decimalToHex(buffer[11])\r\n + CryptoUtils.decimalToHex(buffer[12]) + CryptoUtils.decimalToHex(buffer[13])\r\n + CryptoUtils.decimalToHex(buffer[14]) + CryptoUtils.decimalToHex(buffer[15]);\r\n }\r\n else {\r\n var guidHolder = \"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx\";\r\n var hex = \"0123456789abcdef\";\r\n var r = 0;\r\n var guidResponse = \"\";\r\n for (var i = 0; i < 36; i++) {\r\n if (guidHolder[i] !== \"-\" && guidHolder[i] !== \"4\") {\r\n // each x and y needs to be random\r\n r = Math.random() * 16 | 0;\r\n }\r\n if (guidHolder[i] === \"x\") {\r\n guidResponse += hex[r];\r\n }\r\n else if (guidHolder[i] === \"y\") {\r\n // clock-seq-and-reserved first hex is filtered and remaining hex values are random\r\n r &= 0x3; // bit and with 0011 to set pos 2 to zero ?0??\r\n r |= 0x8; // set pos 3 to 1 as 1???\r\n guidResponse += hex[r];\r\n }\r\n else {\r\n guidResponse += guidHolder[i];\r\n }\r\n }\r\n return guidResponse;\r\n }\r\n };\r\n /**\r\n * verifies if a string is GUID\r\n * @param guid\r\n */\r\n CryptoUtils.isGuid = function (guid) {\r\n var regexGuid = /^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/i;\r\n return regexGuid.test(guid);\r\n };\r\n /**\r\n * Decimal to Hex\r\n *\r\n * @param num\r\n */\r\n CryptoUtils.decimalToHex = function (num) {\r\n var hex = num.toString(16);\r\n while (hex.length < 2) {\r\n hex = \"0\" + hex;\r\n }\r\n return hex;\r\n };\r\n // See: https://developer.mozilla.org/en-US/docs/Web/API/WindowBase64/Base64_encoding_and_decoding#Solution_4_%E2%80%93_escaping_the_string_before_encoding_it\r\n /**\r\n * encoding string to base64 - platform specific check\r\n *\r\n * @param input\r\n */\r\n CryptoUtils.base64Encode = function (input) {\r\n return btoa(encodeURIComponent(input).replace(/%([0-9A-F]{2})/g, function toSolidBytes(match, p1) {\r\n return String.fromCharCode(Number(\"0x\" + p1));\r\n }));\r\n };\r\n /**\r\n * Decodes a base64 encoded string.\r\n *\r\n * @param input\r\n */\r\n CryptoUtils.base64Decode = function (input) {\r\n var encodedString = input.replace(/-/g, \"+\").replace(/_/g, \"/\");\r\n switch (encodedString.length % 4) {\r\n case 0:\r\n break;\r\n case 2:\r\n encodedString += \"==\";\r\n break;\r\n case 3:\r\n encodedString += \"=\";\r\n break;\r\n default:\r\n throw new Error(\"Invalid base64 string\");\r\n }\r\n return decodeURIComponent(atob(encodedString).split(\"\").map(function (c) {\r\n return \"%\" + (\"00\" + c.charCodeAt(0).toString(16)).slice(-2);\r\n }).join(\"\"));\r\n };\r\n /**\r\n * deserialize a string\r\n *\r\n * @param query\r\n */\r\n CryptoUtils.deserialize = function (query) {\r\n var match; // Regex for replacing addition symbol with a space\r\n var pl = /\\+/g;\r\n var search = /([^&=]+)=([^&]*)/g;\r\n var decode = function (s) { return decodeURIComponent(s.replace(pl, \" \")); };\r\n var obj = {};\r\n match = search.exec(query);\r\n while (match) {\r\n obj[decode(match[1])] = decode(match[2]);\r\n match = search.exec(query);\r\n }\r\n return obj;\r\n };\r\n return CryptoUtils;\r\n}());\r\nexport { CryptoUtils };\r\n//# sourceMappingURL=CryptoUtils.js.map","/*\r\n * Copyright (c) Microsoft Corporation. All rights reserved.\r\n * Licensed under the MIT License.\r\n */\r\nimport * as tslib_1 from \"tslib\";\r\nexport var AuthErrorMessage = {\r\n unexpectedError: {\r\n code: \"unexpected_error\",\r\n desc: \"Unexpected error in authentication.\"\r\n },\r\n noWindowObjectError: {\r\n code: \"no_window_object\",\r\n desc: \"No window object available. Details:\"\r\n }\r\n};\r\n/**\r\n * General error class thrown by the MSAL.js library.\r\n */\r\nvar AuthError = /** @class */ (function (_super) {\r\n tslib_1.__extends(AuthError, _super);\r\n function AuthError(errorCode, errorMessage) {\r\n var _this = _super.call(this, errorMessage) || this;\r\n Object.setPrototypeOf(_this, AuthError.prototype);\r\n _this.errorCode = errorCode;\r\n _this.errorMessage = errorMessage;\r\n _this.name = \"AuthError\";\r\n return _this;\r\n }\r\n AuthError.createUnexpectedError = function (errDesc) {\r\n return new AuthError(AuthErrorMessage.unexpectedError.code, AuthErrorMessage.unexpectedError.desc + \": \" + errDesc);\r\n };\r\n AuthError.createNoWindowObjectError = function (errDesc) {\r\n return new AuthError(AuthErrorMessage.noWindowObjectError.code, AuthErrorMessage.noWindowObjectError.desc + \" \" + errDesc);\r\n };\r\n return AuthError;\r\n}(Error));\r\nexport { AuthError };\r\n//# sourceMappingURL=AuthError.js.map","/*\r\n * Copyright (c) Microsoft Corporation. All rights reserved.\r\n * Licensed under the MIT License.\r\n */\r\nimport * as tslib_1 from \"tslib\";\r\nimport { ClientConfigurationErrorMessage, ClientConfigurationError } from \"../error/ClientConfigurationError\";\r\nimport { XhrClient } from \"../XHRClient\";\r\nimport { UrlUtils } from \"../utils/UrlUtils\";\r\nimport { TrustedAuthority } from \"./TrustedAuthority\";\r\nimport { NetworkRequestType, Constants, WELL_KNOWN_SUFFIX } from \"../utils/Constants\";\r\n/**\r\n * @hidden\r\n */\r\nexport var AuthorityType;\r\n(function (AuthorityType) {\r\n AuthorityType[AuthorityType[\"Default\"] = 0] = \"Default\";\r\n AuthorityType[AuthorityType[\"Adfs\"] = 1] = \"Adfs\";\r\n})(AuthorityType || (AuthorityType = {}));\r\n/**\r\n * @hidden\r\n */\r\nvar Authority = /** @class */ (function () {\r\n function Authority(authority, validateAuthority, authorityMetadata) {\r\n this.IsValidationEnabled = validateAuthority;\r\n this.CanonicalAuthority = authority;\r\n this.validateAsUri();\r\n this.tenantDiscoveryResponse = authorityMetadata;\r\n }\r\n Authority.isAdfs = function (authorityUrl) {\r\n var components = UrlUtils.GetUrlComponents(authorityUrl);\r\n var pathSegments = components.PathSegments;\r\n return (pathSegments.length && pathSegments[0].toLowerCase() === Constants.ADFS);\r\n };\r\n Object.defineProperty(Authority.prototype, \"AuthorityType\", {\r\n get: function () {\r\n return Authority.isAdfs(this.canonicalAuthority) ? AuthorityType.Adfs : AuthorityType.Default;\r\n },\r\n enumerable: true,\r\n configurable: true\r\n });\r\n Object.defineProperty(Authority.prototype, \"Tenant\", {\r\n get: function () {\r\n return this.CanonicalAuthorityUrlComponents.PathSegments[0];\r\n },\r\n enumerable: true,\r\n configurable: true\r\n });\r\n Object.defineProperty(Authority.prototype, \"AuthorizationEndpoint\", {\r\n get: function () {\r\n this.validateResolved();\r\n return this.tenantDiscoveryResponse.AuthorizationEndpoint.replace(/{tenant}|{tenantid}/g, this.Tenant);\r\n },\r\n enumerable: true,\r\n configurable: true\r\n });\r\n Object.defineProperty(Authority.prototype, \"EndSessionEndpoint\", {\r\n get: function () {\r\n this.validateResolved();\r\n return this.tenantDiscoveryResponse.EndSessionEndpoint.replace(/{tenant}|{tenantid}/g, this.Tenant);\r\n },\r\n enumerable: true,\r\n configurable: true\r\n });\r\n Object.defineProperty(Authority.prototype, \"SelfSignedJwtAudience\", {\r\n get: function () {\r\n this.validateResolved();\r\n return this.tenantDiscoveryResponse.Issuer.replace(/{tenant}|{tenantid}/g, this.Tenant);\r\n },\r\n enumerable: true,\r\n configurable: true\r\n });\r\n Authority.prototype.validateResolved = function () {\r\n if (!this.hasCachedMetadata()) {\r\n throw \"Please call ResolveEndpointsAsync first\";\r\n }\r\n };\r\n Object.defineProperty(Authority.prototype, \"CanonicalAuthority\", {\r\n /**\r\n * A URL that is the authority set by the developer\r\n */\r\n get: function () {\r\n return this.canonicalAuthority;\r\n },\r\n set: function (url) {\r\n this.canonicalAuthority = UrlUtils.CanonicalizeUri(url);\r\n this.canonicalAuthorityUrlComponents = null;\r\n },\r\n enumerable: true,\r\n configurable: true\r\n });\r\n Object.defineProperty(Authority.prototype, \"CanonicalAuthorityUrlComponents\", {\r\n get: function () {\r\n if (!this.canonicalAuthorityUrlComponents) {\r\n this.canonicalAuthorityUrlComponents = UrlUtils.GetUrlComponents(this.CanonicalAuthority);\r\n }\r\n return this.canonicalAuthorityUrlComponents;\r\n },\r\n enumerable: true,\r\n configurable: true\r\n });\r\n Object.defineProperty(Authority.prototype, \"DefaultOpenIdConfigurationEndpoint\", {\r\n // http://openid.net/specs/openid-connect-discovery-1_0.html#ProviderMetadata\r\n get: function () {\r\n return (this.AuthorityType === AuthorityType.Adfs) ? \"\" + this.CanonicalAuthority + WELL_KNOWN_SUFFIX : this.CanonicalAuthority + \"v2.0/\" + WELL_KNOWN_SUFFIX;\r\n },\r\n enumerable: true,\r\n configurable: true\r\n });\r\n /**\r\n * Given a string, validate that it is of the form https://domain/path\r\n */\r\n Authority.prototype.validateAsUri = function () {\r\n var components;\r\n try {\r\n components = this.CanonicalAuthorityUrlComponents;\r\n }\r\n catch (e) {\r\n throw ClientConfigurationErrorMessage.invalidAuthorityType;\r\n }\r\n if (!components.Protocol || components.Protocol.toLowerCase() !== \"https:\") {\r\n throw ClientConfigurationErrorMessage.authorityUriInsecure;\r\n }\r\n if (!components.PathSegments || components.PathSegments.length < 1) {\r\n throw ClientConfigurationErrorMessage.authorityUriInvalidPath;\r\n }\r\n };\r\n /**\r\n * Calls the OIDC endpoint and returns the response\r\n */\r\n Authority.prototype.DiscoverEndpoints = function (openIdConfigurationEndpoint, telemetryManager, correlationId) {\r\n var client = new XhrClient();\r\n var httpMethod = NetworkRequestType.GET;\r\n var httpEvent = telemetryManager.createAndStartHttpEvent(correlationId, httpMethod, openIdConfigurationEndpoint, \"openIdConfigurationEndpoint\");\r\n return client.sendRequestAsync(openIdConfigurationEndpoint, httpMethod, /* enableCaching: */ true)\r\n .then(function (response) {\r\n httpEvent.httpResponseStatus = response.statusCode;\r\n telemetryManager.stopEvent(httpEvent);\r\n return {\r\n AuthorizationEndpoint: response.body.authorization_endpoint,\r\n EndSessionEndpoint: response.body.end_session_endpoint,\r\n Issuer: response.body.issuer\r\n };\r\n })\r\n .catch(function (err) {\r\n httpEvent.serverErrorCode = err;\r\n telemetryManager.stopEvent(httpEvent);\r\n throw err;\r\n });\r\n };\r\n /**\r\n * Returns a promise.\r\n * Checks to see if the authority is in the cache\r\n * Discover endpoints via openid-configuration\r\n * If successful, caches the endpoint for later use in OIDC\r\n */\r\n Authority.prototype.resolveEndpointsAsync = function (telemetryManager, correlationId) {\r\n return tslib_1.__awaiter(this, void 0, void 0, function () {\r\n var host, openIdConfigurationEndpointResponse, _a;\r\n return tslib_1.__generator(this, function (_b) {\r\n switch (_b.label) {\r\n case 0:\r\n if (!this.IsValidationEnabled) return [3 /*break*/, 3];\r\n host = this.canonicalAuthorityUrlComponents.HostNameAndPort;\r\n if (!(TrustedAuthority.getTrustedHostList().length === 0)) return [3 /*break*/, 2];\r\n return [4 /*yield*/, TrustedAuthority.setTrustedAuthoritiesFromNetwork(this.canonicalAuthority, telemetryManager, correlationId)];\r\n case 1:\r\n _b.sent();\r\n _b.label = 2;\r\n case 2:\r\n if (!TrustedAuthority.IsInTrustedHostList(host)) {\r\n throw ClientConfigurationError.createUntrustedAuthorityError(host);\r\n }\r\n _b.label = 3;\r\n case 3:\r\n openIdConfigurationEndpointResponse = this.GetOpenIdConfigurationEndpoint();\r\n _a = this;\r\n return [4 /*yield*/, this.DiscoverEndpoints(openIdConfigurationEndpointResponse, telemetryManager, correlationId)];\r\n case 4:\r\n _a.tenantDiscoveryResponse = _b.sent();\r\n return [2 /*return*/, this.tenantDiscoveryResponse];\r\n }\r\n });\r\n });\r\n };\r\n /**\r\n * Checks if there is a cached tenant discovery response with required fields.\r\n */\r\n Authority.prototype.hasCachedMetadata = function () {\r\n return !!(this.tenantDiscoveryResponse &&\r\n this.tenantDiscoveryResponse.AuthorizationEndpoint &&\r\n this.tenantDiscoveryResponse.EndSessionEndpoint &&\r\n this.tenantDiscoveryResponse.Issuer);\r\n };\r\n /**\r\n * Returns a promise which resolves to the OIDC endpoint\r\n * Only responds with the endpoint\r\n */\r\n Authority.prototype.GetOpenIdConfigurationEndpoint = function () {\r\n return this.DefaultOpenIdConfigurationEndpoint;\r\n };\r\n return Authority;\r\n}());\r\nexport { Authority };\r\n//# sourceMappingURL=Authority.js.map","/*\r\n * Copyright (c) Microsoft Corporation. All rights reserved.\r\n * Licensed under the MIT License.\r\n */\r\n/**\r\n * @hidden\r\n */\r\nvar StringUtils = /** @class */ (function () {\r\n function StringUtils() {\r\n }\r\n /**\r\n * Check if a string is empty\r\n *\r\n * @param str\r\n */\r\n StringUtils.isEmpty = function (str) {\r\n return (typeof str === \"undefined\" || !str || 0 === str.length);\r\n };\r\n /**\r\n * Check if a string's value is a valid JSON object\r\n *\r\n * @param str\r\n */\r\n StringUtils.validateAndParseJsonCacheKey = function (str) {\r\n try {\r\n var parsedKey = JSON.parse(str);\r\n /**\r\n * There are edge cases in which JSON.parse will successfully parse a non-valid JSON object\r\n * (e.g. JSON.parse will parse an escaped string into an unescaped string), so adding a type check\r\n * of the parsed value is necessary in order to be certain that the string represents a valid JSON object.\r\n *\r\n */\r\n return (parsedKey && typeof parsedKey === \"object\") ? parsedKey : null;\r\n }\r\n catch (error) {\r\n return null;\r\n }\r\n };\r\n return StringUtils;\r\n}());\r\nexport { StringUtils };\r\n//# sourceMappingURL=StringUtils.js.map","/*\r\n * Copyright (c) Microsoft Corporation. All rights reserved.\r\n * Licensed under the MIT License.\r\n */\r\nimport * as tslib_1 from \"tslib\";\r\nimport { AuthError } from \"./AuthError\";\r\nimport { StringUtils } from \"../utils/StringUtils\";\r\nexport var ClientAuthErrorMessage = {\r\n multipleCacheAuthorities: {\r\n code: \"multiple_authorities\",\r\n desc: \"Multiple authorities found in the cache. Pass authority in the API overload.\"\r\n },\r\n endpointResolutionError: {\r\n code: \"endpoints_resolution_error\",\r\n desc: \"Error: could not resolve endpoints. Please check network and try again.\"\r\n },\r\n popUpWindowError: {\r\n code: \"popup_window_error\",\r\n desc: \"Error opening popup window. This can happen if you are using IE or if popups are blocked in the browser.\"\r\n },\r\n tokenRenewalError: {\r\n code: \"token_renewal_error\",\r\n desc: \"Token renewal operation failed due to timeout.\"\r\n },\r\n invalidIdToken: {\r\n code: \"invalid_id_token\",\r\n desc: \"Invalid ID token format.\"\r\n },\r\n invalidStateError: {\r\n code: \"invalid_state_error\",\r\n desc: \"Invalid state.\"\r\n },\r\n nonceMismatchError: {\r\n code: \"nonce_mismatch_error\",\r\n desc: \"Nonce is not matching, Nonce received: \"\r\n },\r\n loginProgressError: {\r\n code: \"login_progress_error\",\r\n desc: \"Login_In_Progress: Error during login call - login is already in progress.\"\r\n },\r\n acquireTokenProgressError: {\r\n code: \"acquiretoken_progress_error\",\r\n desc: \"AcquireToken_In_Progress: Error during login call - login is already in progress.\"\r\n },\r\n userCancelledError: {\r\n code: \"user_cancelled\",\r\n desc: \"User cancelled the flow.\"\r\n },\r\n callbackError: {\r\n code: \"callback_error\",\r\n desc: \"Error occurred in token received callback function.\"\r\n },\r\n userLoginRequiredError: {\r\n code: \"user_login_error\",\r\n desc: \"User login is required. For silent calls, request must contain either sid or login_hint\"\r\n },\r\n userDoesNotExistError: {\r\n code: \"user_non_existent\",\r\n desc: \"User object does not exist. Please call a login API.\"\r\n },\r\n clientInfoDecodingError: {\r\n code: \"client_info_decoding_error\",\r\n desc: \"The client info could not be parsed/decoded correctly. Please review the trace to determine the root cause.\"\r\n },\r\n clientInfoNotPopulatedError: {\r\n code: \"client_info_not_populated_error\",\r\n desc: \"The service did not populate client_info in the response, Please verify with the service team\"\r\n },\r\n nullOrEmptyIdToken: {\r\n code: \"null_or_empty_id_token\",\r\n desc: \"The idToken is null or empty. Please review the trace to determine the root cause.\"\r\n },\r\n idTokenNotParsed: {\r\n code: \"id_token_parsing_error\",\r\n desc: \"ID token cannot be parsed. Please review stack trace to determine root cause.\"\r\n },\r\n tokenEncodingError: {\r\n code: \"token_encoding_error\",\r\n desc: \"The token to be decoded is not encoded correctly.\"\r\n },\r\n invalidInteractionType: {\r\n code: \"invalid_interaction_type\",\r\n desc: \"The interaction type passed to the handler was incorrect or unknown\"\r\n },\r\n cacheParseError: {\r\n code: \"cannot_parse_cache\",\r\n desc: \"The cached token key is not a valid JSON and cannot be parsed\"\r\n },\r\n blockTokenRequestsInHiddenIframe: {\r\n code: \"block_token_requests\",\r\n desc: \"Token calls are blocked in hidden iframes\"\r\n }\r\n};\r\n/**\r\n * Error thrown when there is an error in the client code running on the browser.\r\n */\r\nvar ClientAuthError = /** @class */ (function (_super) {\r\n tslib_1.__extends(ClientAuthError, _super);\r\n function ClientAuthError(errorCode, errorMessage) {\r\n var _this = _super.call(this, errorCode, errorMessage) || this;\r\n _this.name = \"ClientAuthError\";\r\n Object.setPrototypeOf(_this, ClientAuthError.prototype);\r\n return _this;\r\n }\r\n ClientAuthError.createEndpointResolutionError = function (errDetail) {\r\n var errorMessage = ClientAuthErrorMessage.endpointResolutionError.desc;\r\n if (errDetail && !StringUtils.isEmpty(errDetail)) {\r\n errorMessage += \" Details: \" + errDetail;\r\n }\r\n return new ClientAuthError(ClientAuthErrorMessage.endpointResolutionError.code, errorMessage);\r\n };\r\n ClientAuthError.createMultipleAuthoritiesInCacheError = function (scope) {\r\n return new ClientAuthError(ClientAuthErrorMessage.multipleCacheAuthorities.code, \"Cache error for scope \" + scope + \": \" + ClientAuthErrorMessage.multipleCacheAuthorities.desc + \".\");\r\n };\r\n ClientAuthError.createPopupWindowError = function (errDetail) {\r\n var errorMessage = ClientAuthErrorMessage.popUpWindowError.desc;\r\n if (errDetail && !StringUtils.isEmpty(errDetail)) {\r\n errorMessage += \" Details: \" + errDetail;\r\n }\r\n return new ClientAuthError(ClientAuthErrorMessage.popUpWindowError.code, errorMessage);\r\n };\r\n ClientAuthError.createTokenRenewalTimeoutError = function () {\r\n return new ClientAuthError(ClientAuthErrorMessage.tokenRenewalError.code, ClientAuthErrorMessage.tokenRenewalError.desc);\r\n };\r\n ClientAuthError.createInvalidIdTokenError = function (idToken) {\r\n return new ClientAuthError(ClientAuthErrorMessage.invalidIdToken.code, ClientAuthErrorMessage.invalidIdToken.desc + \" Given token: \" + idToken);\r\n };\r\n // TODO: Is this not a security flaw to send the user the state expected??\r\n ClientAuthError.createInvalidStateError = function (invalidState, actualState) {\r\n return new ClientAuthError(ClientAuthErrorMessage.invalidStateError.code, ClientAuthErrorMessage.invalidStateError.desc + \" \" + invalidState + \", state expected : \" + actualState + \".\");\r\n };\r\n // TODO: Is this not a security flaw to send the user the Nonce expected??\r\n ClientAuthError.createNonceMismatchError = function (invalidNonce, actualNonce) {\r\n return new ClientAuthError(ClientAuthErrorMessage.nonceMismatchError.code, ClientAuthErrorMessage.nonceMismatchError.desc + \" \" + invalidNonce + \", nonce expected : \" + actualNonce + \".\");\r\n };\r\n ClientAuthError.createLoginInProgressError = function () {\r\n return new ClientAuthError(ClientAuthErrorMessage.loginProgressError.code, ClientAuthErrorMessage.loginProgressError.desc);\r\n };\r\n ClientAuthError.createAcquireTokenInProgressError = function () {\r\n return new ClientAuthError(ClientAuthErrorMessage.acquireTokenProgressError.code, ClientAuthErrorMessage.acquireTokenProgressError.desc);\r\n };\r\n ClientAuthError.createUserCancelledError = function () {\r\n return new ClientAuthError(ClientAuthErrorMessage.userCancelledError.code, ClientAuthErrorMessage.userCancelledError.desc);\r\n };\r\n ClientAuthError.createErrorInCallbackFunction = function (errorDesc) {\r\n return new ClientAuthError(ClientAuthErrorMessage.callbackError.code, ClientAuthErrorMessage.callbackError.desc + \" \" + errorDesc + \".\");\r\n };\r\n ClientAuthError.createUserLoginRequiredError = function () {\r\n return new ClientAuthError(ClientAuthErrorMessage.userLoginRequiredError.code, ClientAuthErrorMessage.userLoginRequiredError.desc);\r\n };\r\n ClientAuthError.createUserDoesNotExistError = function () {\r\n return new ClientAuthError(ClientAuthErrorMessage.userDoesNotExistError.code, ClientAuthErrorMessage.userDoesNotExistError.desc);\r\n };\r\n ClientAuthError.createClientInfoDecodingError = function (caughtError) {\r\n return new ClientAuthError(ClientAuthErrorMessage.clientInfoDecodingError.code, ClientAuthErrorMessage.clientInfoDecodingError.desc + \" Failed with error: \" + caughtError);\r\n };\r\n ClientAuthError.createClientInfoNotPopulatedError = function (caughtError) {\r\n return new ClientAuthError(ClientAuthErrorMessage.clientInfoNotPopulatedError.code, ClientAuthErrorMessage.clientInfoNotPopulatedError.desc + \" Failed with error: \" + caughtError);\r\n };\r\n ClientAuthError.createIdTokenNullOrEmptyError = function (invalidRawTokenString) {\r\n return new ClientAuthError(ClientAuthErrorMessage.nullOrEmptyIdToken.code, ClientAuthErrorMessage.nullOrEmptyIdToken.desc + \" Raw ID Token Value: \" + invalidRawTokenString);\r\n };\r\n ClientAuthError.createIdTokenParsingError = function (caughtParsingError) {\r\n return new ClientAuthError(ClientAuthErrorMessage.idTokenNotParsed.code, ClientAuthErrorMessage.idTokenNotParsed.desc + \" Failed with error: \" + caughtParsingError);\r\n };\r\n ClientAuthError.createTokenEncodingError = function (incorrectlyEncodedToken) {\r\n return new ClientAuthError(ClientAuthErrorMessage.tokenEncodingError.code, ClientAuthErrorMessage.tokenEncodingError.desc + \" Attempted to decode: \" + incorrectlyEncodedToken);\r\n };\r\n ClientAuthError.createInvalidInteractionTypeError = function () {\r\n return new ClientAuthError(ClientAuthErrorMessage.invalidInteractionType.code, ClientAuthErrorMessage.invalidInteractionType.desc);\r\n };\r\n ClientAuthError.createCacheParseError = function (key) {\r\n var errorMessage = \"invalid key: \" + key + \", \" + ClientAuthErrorMessage.cacheParseError.desc;\r\n return new ClientAuthError(ClientAuthErrorMessage.cacheParseError.code, errorMessage);\r\n };\r\n ClientAuthError.createBlockTokenRequestsInHiddenIframeError = function () {\r\n return new ClientAuthError(ClientAuthErrorMessage.blockTokenRequestsInHiddenIframe.code, ClientAuthErrorMessage.blockTokenRequestsInHiddenIframe.desc);\r\n };\r\n return ClientAuthError;\r\n}(AuthError));\r\nexport { ClientAuthError };\r\n//# sourceMappingURL=ClientAuthError.js.map","/*\r\n * Copyright (c) Microsoft Corporation. All rights reserved.\r\n * Licensed under the MIT License.\r\n */\r\nimport * as tslib_1 from \"tslib\";\r\nimport { ClientAuthError } from \"./ClientAuthError\";\r\nexport var ClientConfigurationErrorMessage = {\r\n configurationNotSet: {\r\n code: \"no_config_set\",\r\n desc: \"Configuration has not been set. Please call the UserAgentApplication constructor with a valid Configuration object.\"\r\n },\r\n storageNotSupported: {\r\n code: \"storage_not_supported\",\r\n desc: \"The value for the cacheLocation is not supported.\"\r\n },\r\n noRedirectCallbacksSet: {\r\n code: \"no_redirect_callbacks\",\r\n desc: \"No redirect callbacks have been set. Please call handleRedirectCallback() with the appropriate function arguments before continuing. \" +\r\n \"More information is available here: https://github.com/AzureAD/microsoft-authentication-library-for-js/wiki/MSAL-basics.\"\r\n },\r\n invalidCallbackObject: {\r\n code: \"invalid_callback_object\",\r\n desc: \"The object passed for the callback was invalid. \" +\r\n \"More information is available here: https://github.com/AzureAD/microsoft-authentication-library-for-js/wiki/MSAL-basics.\"\r\n },\r\n scopesRequired: {\r\n code: \"scopes_required\",\r\n desc: \"Scopes are required to obtain an access token.\"\r\n },\r\n emptyScopes: {\r\n code: \"empty_input_scopes_error\",\r\n desc: \"Scopes cannot be passed as empty array.\"\r\n },\r\n nonArrayScopes: {\r\n code: \"nonarray_input_scopes_error\",\r\n desc: \"Scopes cannot be passed as non-array.\"\r\n },\r\n invalidPrompt: {\r\n code: \"invalid_prompt_value\",\r\n desc: \"Supported prompt values are 'login', 'select_account', 'consent' and 'none'\",\r\n },\r\n invalidAuthorityType: {\r\n code: \"invalid_authority_type\",\r\n desc: \"The given authority is not a valid type of authority supported by MSAL. Please see here for valid authorities: .\"\r\n },\r\n authorityUriInsecure: {\r\n code: \"authority_uri_insecure\",\r\n desc: \"Authority URIs must use https.\"\r\n },\r\n authorityUriInvalidPath: {\r\n code: \"authority_uri_invalid_path\",\r\n desc: \"Given authority URI is invalid.\"\r\n },\r\n unsupportedAuthorityValidation: {\r\n code: \"unsupported_authority_validation\",\r\n desc: \"The authority validation is not supported for this authority type.\"\r\n },\r\n untrustedAuthority: {\r\n code: \"untrusted_authority\",\r\n desc: \"The provided authority is not a trusted authority. Please include this authority in the knownAuthorities config parameter or set validateAuthority=false.\"\r\n },\r\n b2cAuthorityUriInvalidPath: {\r\n code: \"b2c_authority_uri_invalid_path\",\r\n desc: \"The given URI for the B2C authority is invalid.\"\r\n },\r\n b2cKnownAuthoritiesNotSet: {\r\n code: \"b2c_known_authorities_not_set\",\r\n desc: \"Must set known authorities when validateAuthority is set to True and using B2C\"\r\n },\r\n claimsRequestParsingError: {\r\n code: \"claims_request_parsing_error\",\r\n desc: \"Could not parse the given claims request object.\"\r\n },\r\n emptyRequestError: {\r\n code: \"empty_request_error\",\r\n desc: \"Request object is required.\"\r\n },\r\n invalidCorrelationIdError: {\r\n code: \"invalid_guid_sent_as_correlationId\",\r\n desc: \"Please set the correlationId as a valid guid\"\r\n },\r\n telemetryConfigError: {\r\n code: \"telemetry_config_error\",\r\n desc: \"Telemetry config is not configured with required values\"\r\n },\r\n ssoSilentError: {\r\n code: \"sso_silent_error\",\r\n desc: \"request must contain either sid or login_hint\"\r\n },\r\n invalidAuthorityMetadataError: {\r\n code: \"authority_metadata_error\",\r\n desc: \"Invalid authorityMetadata. Must be a JSON object containing authorization_endpoint, end_session_endpoint, and issuer fields.\"\r\n }\r\n};\r\n/**\r\n * Error thrown when there is an error in configuration of the .js library.\r\n */\r\nvar ClientConfigurationError = /** @class */ (function (_super) {\r\n tslib_1.__extends(ClientConfigurationError, _super);\r\n function ClientConfigurationError(errorCode, errorMessage) {\r\n var _this = _super.call(this, errorCode, errorMessage) || this;\r\n _this.name = \"ClientConfigurationError\";\r\n Object.setPrototypeOf(_this, ClientConfigurationError.prototype);\r\n return _this;\r\n }\r\n ClientConfigurationError.createNoSetConfigurationError = function () {\r\n return new ClientConfigurationError(ClientConfigurationErrorMessage.configurationNotSet.code, \"\" + ClientConfigurationErrorMessage.configurationNotSet.desc);\r\n };\r\n ClientConfigurationError.createStorageNotSupportedError = function (givenCacheLocation) {\r\n return new ClientConfigurationError(ClientConfigurationErrorMessage.storageNotSupported.code, ClientConfigurationErrorMessage.storageNotSupported.desc + \" Given location: \" + givenCacheLocation);\r\n };\r\n ClientConfigurationError.createRedirectCallbacksNotSetError = function () {\r\n return new ClientConfigurationError(ClientConfigurationErrorMessage.noRedirectCallbacksSet.code, ClientConfigurationErrorMessage.noRedirectCallbacksSet.desc);\r\n };\r\n ClientConfigurationError.createInvalidCallbackObjectError = function (callbackObject) {\r\n return new ClientConfigurationError(ClientConfigurationErrorMessage.invalidCallbackObject.code, ClientConfigurationErrorMessage.invalidCallbackObject.desc + \" Given value for callback function: \" + callbackObject);\r\n };\r\n ClientConfigurationError.createEmptyScopesArrayError = function (scopesValue) {\r\n return new ClientConfigurationError(ClientConfigurationErrorMessage.emptyScopes.code, ClientConfigurationErrorMessage.emptyScopes.desc + \" Given value: \" + scopesValue + \".\");\r\n };\r\n ClientConfigurationError.createScopesNonArrayError = function (scopesValue) {\r\n return new ClientConfigurationError(ClientConfigurationErrorMessage.nonArrayScopes.code, ClientConfigurationErrorMessage.nonArrayScopes.desc + \" Given value: \" + scopesValue + \".\");\r\n };\r\n ClientConfigurationError.createScopesRequiredError = function (scopesValue) {\r\n return new ClientConfigurationError(ClientConfigurationErrorMessage.scopesRequired.code, ClientConfigurationErrorMessage.scopesRequired.desc + \" Given value: \" + scopesValue);\r\n };\r\n ClientConfigurationError.createInvalidPromptError = function (promptValue) {\r\n return new ClientConfigurationError(ClientConfigurationErrorMessage.invalidPrompt.code, ClientConfigurationErrorMessage.invalidPrompt.desc + \" Given value: \" + promptValue);\r\n };\r\n ClientConfigurationError.createClaimsRequestParsingError = function (claimsRequestParseError) {\r\n return new ClientConfigurationError(ClientConfigurationErrorMessage.claimsRequestParsingError.code, ClientConfigurationErrorMessage.claimsRequestParsingError.desc + \" Given value: \" + claimsRequestParseError);\r\n };\r\n ClientConfigurationError.createEmptyRequestError = function () {\r\n var _a = ClientConfigurationErrorMessage.emptyRequestError, code = _a.code, desc = _a.desc;\r\n return new ClientConfigurationError(code, desc);\r\n };\r\n ClientConfigurationError.createInvalidCorrelationIdError = function () {\r\n return new ClientConfigurationError(ClientConfigurationErrorMessage.invalidCorrelationIdError.code, ClientConfigurationErrorMessage.invalidCorrelationIdError.desc);\r\n };\r\n ClientConfigurationError.createKnownAuthoritiesNotSetError = function () {\r\n return new ClientConfigurationError(ClientConfigurationErrorMessage.b2cKnownAuthoritiesNotSet.code, ClientConfigurationErrorMessage.b2cKnownAuthoritiesNotSet.desc);\r\n };\r\n ClientConfigurationError.createInvalidAuthorityTypeError = function () {\r\n return new ClientConfigurationError(ClientConfigurationErrorMessage.invalidAuthorityType.code, ClientConfigurationErrorMessage.invalidAuthorityType.desc);\r\n };\r\n ClientConfigurationError.createUntrustedAuthorityError = function (host) {\r\n return new ClientConfigurationError(ClientConfigurationErrorMessage.untrustedAuthority.code, ClientConfigurationErrorMessage.untrustedAuthority.desc + \" Provided Authority: \" + host);\r\n };\r\n ClientConfigurationError.createTelemetryConfigError = function (config) {\r\n var _a = ClientConfigurationErrorMessage.telemetryConfigError, code = _a.code, desc = _a.desc;\r\n var requiredKeys = {\r\n applicationName: \"string\",\r\n applicationVersion: \"string\",\r\n telemetryEmitter: \"function\"\r\n };\r\n var missingKeys = Object.keys(requiredKeys)\r\n .reduce(function (keys, key) {\r\n return config[key] ? keys : keys.concat([key + \" (\" + requiredKeys[key] + \")\"]);\r\n }, []);\r\n return new ClientConfigurationError(code, desc + \" mising values: \" + missingKeys.join(\",\"));\r\n };\r\n ClientConfigurationError.createSsoSilentError = function () {\r\n return new ClientConfigurationError(ClientConfigurationErrorMessage.ssoSilentError.code, ClientConfigurationErrorMessage.ssoSilentError.desc);\r\n };\r\n ClientConfigurationError.createInvalidAuthorityMetadataError = function () {\r\n return new ClientConfigurationError(ClientConfigurationErrorMessage.invalidAuthorityMetadataError.code, ClientConfigurationErrorMessage.invalidAuthorityMetadataError.desc);\r\n };\r\n return ClientConfigurationError;\r\n}(ClientAuthError));\r\nexport { ClientConfigurationError };\r\n//# sourceMappingURL=ClientConfigurationError.js.map","/*\r\n * Copyright (c) Microsoft Corporation. All rights reserved.\r\n * Licensed under the MIT License.\r\n */\r\nimport { ClientConfigurationError } from \"./error/ClientConfigurationError\";\r\nimport { Constants } from \"./utils/Constants\";\r\nvar ScopeSet = /** @class */ (function () {\r\n function ScopeSet() {\r\n }\r\n /**\r\n * Check if there are dup scopes in a given request\r\n *\r\n * @param cachedScopes\r\n * @param scopes\r\n */\r\n // TODO: Rename this, intersecting scopes isn't a great name for duplicate checker\r\n ScopeSet.isIntersectingScopes = function (cachedScopes, scopes) {\r\n var convertedCachedScopes = this.trimAndConvertArrayToLowerCase(cachedScopes.slice());\r\n var requestScopes = this.trimAndConvertArrayToLowerCase(scopes.slice());\r\n for (var i = 0; i < requestScopes.length; i++) {\r\n if (convertedCachedScopes.indexOf(requestScopes[i].toLowerCase()) > -1) {\r\n return true;\r\n }\r\n }\r\n return false;\r\n };\r\n /**\r\n * Check if a given scope is present in the request\r\n *\r\n * @param cachedScopes\r\n * @param scopes\r\n */\r\n ScopeSet.containsScope = function (cachedScopes, scopes) {\r\n var convertedCachedScopes = this.trimAndConvertArrayToLowerCase(cachedScopes.slice());\r\n var requestScopes = this.trimAndConvertArrayToLowerCase(scopes.slice());\r\n return requestScopes.every(function (value) { return convertedCachedScopes.indexOf(value.toString().toLowerCase()) >= 0; });\r\n };\r\n /**\r\n * Trims and converts string to lower case\r\n *\r\n * @param scopes\r\n */\r\n // TODO: Rename this, too generic name for a function that only deals with scopes\r\n ScopeSet.trimAndConvertToLowerCase = function (scope) {\r\n return scope.trim().toLowerCase();\r\n };\r\n /**\r\n * Performs trimAndConvertToLowerCase on string array\r\n * @param scopes\r\n */\r\n ScopeSet.trimAndConvertArrayToLowerCase = function (scopes) {\r\n var _this = this;\r\n return scopes.map(function (scope) { return _this.trimAndConvertToLowerCase(scope); });\r\n };\r\n /**\r\n * Trims each scope in scopes array\r\n * @param scopes\r\n */\r\n ScopeSet.trimScopes = function (scopes) {\r\n return scopes.map(function (scope) { return scope.trim(); });\r\n };\r\n /**\r\n * Remove one element from a scope array\r\n *\r\n * @param scopes\r\n * @param scope\r\n */\r\n // TODO: Rename this, too generic name for a function that only deals with scopes\r\n ScopeSet.removeElement = function (scopes, scope) {\r\n var scopeVal = this.trimAndConvertToLowerCase(scope);\r\n return scopes.filter(function (value) { return value !== scopeVal; });\r\n };\r\n /**\r\n * Parse the scopes into a formatted scopeList\r\n * @param scopes\r\n */\r\n ScopeSet.parseScope = function (scopes) {\r\n var scopeList = \"\";\r\n if (scopes) {\r\n for (var i = 0; i < scopes.length; ++i) {\r\n scopeList += (i !== scopes.length - 1) ? scopes[i] + \" \" : scopes[i];\r\n }\r\n }\r\n return scopeList;\r\n };\r\n /**\r\n * @hidden\r\n *\r\n * Used to validate the scopes input parameter requested by the developer.\r\n * @param {Array} scopes - Developer requested permissions. Not all scopes are guaranteed to be included in the access token returned.\r\n * @param {boolean} scopesRequired - Boolean indicating whether the scopes array is required or not\r\n * @ignore\r\n */\r\n ScopeSet.validateInputScope = function (scopes, scopesRequired) {\r\n if (!scopes) {\r\n if (scopesRequired) {\r\n throw ClientConfigurationError.createScopesRequiredError(scopes);\r\n }\r\n else {\r\n return;\r\n }\r\n }\r\n // Check that scopes is an array object (also throws error if scopes == null)\r\n if (!Array.isArray(scopes)) {\r\n throw ClientConfigurationError.createScopesNonArrayError(scopes);\r\n }\r\n // Check that scopes is not an empty array\r\n if (scopes.length < 1 && scopesRequired) {\r\n throw ClientConfigurationError.createEmptyScopesArrayError(scopes.toString());\r\n }\r\n };\r\n /**\r\n * @hidden\r\n *\r\n * Extracts scope value from the state sent with the authentication request.\r\n * @param {string} state\r\n * @returns {string} scope.\r\n * @ignore\r\n */\r\n ScopeSet.getScopeFromState = function (state) {\r\n if (state) {\r\n var splitIndex = state.indexOf(Constants.resourceDelimiter);\r\n if (splitIndex > -1 && splitIndex + 1 < state.length) {\r\n return state.substring(splitIndex + 1);\r\n }\r\n }\r\n return \"\";\r\n };\r\n /**\r\n * @ignore\r\n * Appends extraScopesToConsent if passed\r\n * @param {@link AuthenticationParameters}\r\n */\r\n ScopeSet.appendScopes = function (reqScopes, reqExtraScopesToConsent) {\r\n if (reqScopes) {\r\n var convertedExtraScopes = reqExtraScopesToConsent ? this.trimAndConvertArrayToLowerCase(reqExtraScopesToConsent.slice()) : null;\r\n var convertedReqScopes = this.trimAndConvertArrayToLowerCase(reqScopes.slice());\r\n return convertedExtraScopes ? convertedReqScopes.concat(convertedExtraScopes) : convertedReqScopes;\r\n }\r\n return null;\r\n };\r\n // #endregion\r\n /**\r\n * @ignore\r\n * Returns true if the scopes array only contains openid and/or profile\r\n */\r\n ScopeSet.onlyContainsOidcScopes = function (scopes) {\r\n var scopesCount = scopes.length;\r\n var oidcScopesFound = 0;\r\n if (scopes.indexOf(Constants.openidScope) > -1) {\r\n oidcScopesFound += 1;\r\n }\r\n if (scopes.indexOf(Constants.profileScope) > -1) {\r\n oidcScopesFound += 1;\r\n }\r\n return (scopesCount > 0 && scopesCount === oidcScopesFound);\r\n };\r\n /**\r\n * @ignore\r\n * Returns true if the scopes array only contains openid and/or profile\r\n */\r\n ScopeSet.containsAnyOidcScopes = function (scopes) {\r\n var containsOpenIdScope = scopes.indexOf(Constants.openidScope) > -1;\r\n var containsProfileScope = scopes.indexOf(Constants.profileScope) > -1;\r\n return (containsOpenIdScope || containsProfileScope);\r\n };\r\n /**\r\n * @ignore\r\n * Returns true if the clientId is the only scope in the array\r\n */\r\n ScopeSet.onlyContainsClientId = function (scopes, clientId) {\r\n // Double negation to force false value returned in case scopes is null\r\n return !!scopes && (scopes.indexOf(clientId) > -1 && scopes.length === 1);\r\n };\r\n /**\r\n * @ignore\r\n * Adds missing OIDC scopes to scopes array without duplication. Since STS requires OIDC scopes for\r\n * all implicit flow requests, 'openid' and 'profile' should always be included in the final request\r\n */\r\n ScopeSet.appendDefaultScopes = function (scopes) {\r\n var extendedScopes = scopes;\r\n if (extendedScopes.indexOf(Constants.openidScope) === -1) {\r\n extendedScopes.push(Constants.openidScope);\r\n }\r\n if (extendedScopes.indexOf(Constants.profileScope) === -1) {\r\n extendedScopes.push(Constants.profileScope);\r\n }\r\n return extendedScopes;\r\n };\r\n /**\r\n * @ignore\r\n * Removes present OIDC scopes from scopes array.\r\n */\r\n ScopeSet.removeDefaultScopes = function (scopes) {\r\n return scopes.filter(function (scope) {\r\n return (scope !== Constants.openidScope && scope !== Constants.profileScope);\r\n });\r\n };\r\n /**\r\n * @ignore\r\n * Removes clientId from scopes array if included as only scope. If it's not the only scope, it is treated as a resource scope.\r\n * @param scopes Array: Pre-normalized scopes array\r\n * @param clientId string: The application's clientId that is searched for in the scopes array\r\n */\r\n ScopeSet.translateClientIdIfSingleScope = function (scopes, clientId) {\r\n return this.onlyContainsClientId(scopes, clientId) ? Constants.oidcScopes : scopes;\r\n };\r\n return ScopeSet;\r\n}());\r\nexport { ScopeSet };\r\n//# sourceMappingURL=ScopeSet.js.map","/*\r\n * Copyright (c) Microsoft Corporation. All rights reserved.\r\n * Licensed under the MIT License.\r\n */\r\nimport { Constants, SSOTypes, ServerHashParamKeys } from \"./Constants\";\r\nimport { ScopeSet } from \"../ScopeSet\";\r\nimport { StringUtils } from \"./StringUtils\";\r\nimport { CryptoUtils } from \"./CryptoUtils\";\r\n/**\r\n * @hidden\r\n */\r\nvar UrlUtils = /** @class */ (function () {\r\n function UrlUtils() {\r\n }\r\n /**\r\n * generates the URL with QueryString Parameters\r\n * @param scopes\r\n */\r\n UrlUtils.createNavigateUrl = function (serverRequestParams) {\r\n var str = this.createNavigationUrlString(serverRequestParams);\r\n var authEndpoint = serverRequestParams.authorityInstance.AuthorizationEndpoint;\r\n // if the endpoint already has queryparams, lets add to it, otherwise add the first one\r\n if (authEndpoint.indexOf(\"?\") < 0) {\r\n authEndpoint += \"?\";\r\n }\r\n else {\r\n authEndpoint += \"&\";\r\n }\r\n var requestUrl = \"\" + authEndpoint + str.join(\"&\");\r\n return requestUrl;\r\n };\r\n /**\r\n * Generate the array of all QueryStringParams to be sent to the server\r\n * @param scopes\r\n */\r\n UrlUtils.createNavigationUrlString = function (serverRequestParams) {\r\n var scopes = ScopeSet.appendDefaultScopes(serverRequestParams.scopes);\r\n var str = [];\r\n str.push(\"response_type=\" + serverRequestParams.responseType);\r\n str.push(\"scope=\" + encodeURIComponent(ScopeSet.parseScope(scopes)));\r\n str.push(\"client_id=\" + encodeURIComponent(serverRequestParams.clientId));\r\n str.push(\"redirect_uri=\" + encodeURIComponent(serverRequestParams.redirectUri));\r\n str.push(\"state=\" + encodeURIComponent(serverRequestParams.state));\r\n str.push(\"nonce=\" + encodeURIComponent(serverRequestParams.nonce));\r\n str.push(\"client_info=1\");\r\n str.push(\"x-client-SKU=\" + serverRequestParams.xClientSku);\r\n str.push(\"x-client-Ver=\" + serverRequestParams.xClientVer);\r\n if (serverRequestParams.promptValue) {\r\n str.push(\"prompt=\" + encodeURIComponent(serverRequestParams.promptValue));\r\n }\r\n if (serverRequestParams.claimsValue) {\r\n str.push(\"claims=\" + encodeURIComponent(serverRequestParams.claimsValue));\r\n }\r\n if (serverRequestParams.queryParameters) {\r\n str.push(serverRequestParams.queryParameters);\r\n }\r\n if (serverRequestParams.extraQueryParameters) {\r\n str.push(serverRequestParams.extraQueryParameters);\r\n }\r\n str.push(\"client-request-id=\" + encodeURIComponent(serverRequestParams.correlationId));\r\n return str;\r\n };\r\n /**\r\n * Returns current window URL as redirect uri\r\n */\r\n UrlUtils.getCurrentUrl = function () {\r\n return window.location.href.split(\"?\")[0].split(\"#\")[0];\r\n };\r\n /**\r\n * Returns given URL with query string removed\r\n */\r\n UrlUtils.removeHashFromUrl = function (url) {\r\n return url.split(\"#\")[0];\r\n };\r\n /**\r\n * Given a url like https://a:b/common/d?e=f#g, and a tenantId, returns https://a:b/tenantId/d\r\n * @param href The url\r\n * @param tenantId The tenant id to replace\r\n */\r\n UrlUtils.replaceTenantPath = function (url, tenantId) {\r\n var lowerCaseUrl = url.toLowerCase();\r\n var urlObject = this.GetUrlComponents(lowerCaseUrl);\r\n var pathArray = urlObject.PathSegments;\r\n if (tenantId && (pathArray.length !== 0 && (pathArray[0] === Constants.common || pathArray[0] === SSOTypes.ORGANIZATIONS))) {\r\n pathArray[0] = tenantId;\r\n }\r\n return this.constructAuthorityUriFromObject(urlObject, pathArray);\r\n };\r\n UrlUtils.constructAuthorityUriFromObject = function (urlObject, pathArray) {\r\n return this.CanonicalizeUri(urlObject.Protocol + \"//\" + urlObject.HostNameAndPort + \"/\" + pathArray.join(\"/\"));\r\n };\r\n /**\r\n * Checks if an authority is common (ex. https://a:b/common/)\r\n * @param url The url\r\n * @returns true if authority is common and false otherwise\r\n */\r\n UrlUtils.isCommonAuthority = function (url) {\r\n var authority = this.CanonicalizeUri(url);\r\n var pathArray = this.GetUrlComponents(authority).PathSegments;\r\n return (pathArray.length !== 0 && pathArray[0] === Constants.common);\r\n };\r\n /**\r\n * Checks if an authority is for organizations (ex. https://a:b/organizations/)\r\n * @param url The url\r\n * @returns true if authority is for and false otherwise\r\n */\r\n UrlUtils.isOrganizationsAuthority = function (url) {\r\n var authority = this.CanonicalizeUri(url);\r\n var pathArray = this.GetUrlComponents(authority).PathSegments;\r\n return (pathArray.length !== 0 && pathArray[0] === SSOTypes.ORGANIZATIONS);\r\n };\r\n /**\r\n * Parses out the components from a url string.\r\n * @returns An object with the various components. Please cache this value insted of calling this multiple times on the same url.\r\n */\r\n UrlUtils.GetUrlComponents = function (url) {\r\n if (!url) {\r\n throw \"Url required\";\r\n }\r\n // https://gist.github.com/curtisz/11139b2cfcaef4a261e0\r\n var regEx = RegExp(\"^(([^:/?#]+):)?(//([^/?#]*))?([^?#]*)(\\\\?([^#]*))?(#(.*))?\");\r\n var match = url.match(regEx);\r\n if (!match || match.length < 6) {\r\n throw \"Valid url required\";\r\n }\r\n var urlComponents = {\r\n Protocol: match[1],\r\n HostNameAndPort: match[4],\r\n AbsolutePath: match[5]\r\n };\r\n var pathSegments = urlComponents.AbsolutePath.split(\"/\");\r\n pathSegments = pathSegments.filter(function (val) { return val && val.length > 0; }); // remove empty elements\r\n urlComponents.PathSegments = pathSegments;\r\n if (match[6]) {\r\n urlComponents.Search = match[6];\r\n }\r\n if (match[8]) {\r\n urlComponents.Hash = match[8];\r\n }\r\n return urlComponents;\r\n };\r\n /**\r\n * Given a url or path, append a trailing slash if one doesnt exist\r\n *\r\n * @param url\r\n */\r\n UrlUtils.CanonicalizeUri = function (url) {\r\n if (url) {\r\n url = url.toLowerCase();\r\n }\r\n if (url && !UrlUtils.endsWith(url, \"/\")) {\r\n url += \"/\";\r\n }\r\n return url;\r\n };\r\n /**\r\n * Checks to see if the url ends with the suffix\r\n * Required because we are compiling for es5 instead of es6\r\n * @param url\r\n * @param str\r\n */\r\n // TODO: Rename this, not clear what it is supposed to do\r\n UrlUtils.endsWith = function (url, suffix) {\r\n if (!url || !suffix) {\r\n return false;\r\n }\r\n return url.indexOf(suffix, url.length - suffix.length) !== -1;\r\n };\r\n /**\r\n * Utils function to remove the login_hint and domain_hint from the i/p extraQueryParameters\r\n * @param url\r\n * @param name\r\n */\r\n UrlUtils.urlRemoveQueryStringParameter = function (url, name) {\r\n if (StringUtils.isEmpty(url)) {\r\n return url;\r\n }\r\n var regex = new RegExp(\"(\\\\&\" + name + \"=)[^\\&]+\");\r\n url = url.replace(regex, \"\");\r\n // name=value&\r\n regex = new RegExp(\"(\" + name + \"=)[^\\&]+&\");\r\n url = url.replace(regex, \"\");\r\n // name=value\r\n regex = new RegExp(\"(\" + name + \"=)[^\\&]+\");\r\n url = url.replace(regex, \"\");\r\n return url;\r\n };\r\n /**\r\n * @hidden\r\n * @ignore\r\n *\r\n * Returns the anchor part(#) of the URL\r\n */\r\n UrlUtils.getHashFromUrl = function (urlStringOrFragment) {\r\n var hashIndex1 = urlStringOrFragment.indexOf(\"#\");\r\n var hashIndex2 = urlStringOrFragment.indexOf(\"#/\");\r\n if (hashIndex2 > -1) {\r\n return urlStringOrFragment.substring(hashIndex2 + 2);\r\n }\r\n else if (hashIndex1 > -1) {\r\n return urlStringOrFragment.substring(hashIndex1 + 1);\r\n }\r\n return urlStringOrFragment;\r\n };\r\n /**\r\n * @hidden\r\n * Check if the url contains a hash with known properties\r\n * @ignore\r\n */\r\n UrlUtils.urlContainsHash = function (urlString) {\r\n var parameters = UrlUtils.deserializeHash(urlString);\r\n return (parameters.hasOwnProperty(ServerHashParamKeys.ERROR_DESCRIPTION) ||\r\n parameters.hasOwnProperty(ServerHashParamKeys.ERROR) ||\r\n parameters.hasOwnProperty(ServerHashParamKeys.ACCESS_TOKEN) ||\r\n parameters.hasOwnProperty(ServerHashParamKeys.ID_TOKEN));\r\n };\r\n /**\r\n * @hidden\r\n * Returns deserialized portion of URL hash\r\n * @ignore\r\n */\r\n UrlUtils.deserializeHash = function (urlFragment) {\r\n var hash = UrlUtils.getHashFromUrl(urlFragment);\r\n return CryptoUtils.deserialize(hash);\r\n };\r\n /**\r\n * @ignore\r\n * @param {string} URI\r\n * @returns {string} host from the URI\r\n *\r\n * extract URI from the host\r\n */\r\n UrlUtils.getHostFromUri = function (uri) {\r\n // remove http:// or https:// from uri\r\n var extractedUri = String(uri).replace(/^(https?:)\\/\\//, \"\");\r\n extractedUri = extractedUri.split(\"/\")[0];\r\n return extractedUri;\r\n };\r\n return UrlUtils;\r\n}());\r\nexport { UrlUtils };\r\n//# sourceMappingURL=UrlUtils.js.map","/*\r\n * Copyright (c) Microsoft Corporation. All rights reserved.\r\n * Licensed under the MIT License.\r\n */\r\nimport { CryptoUtils } from \"../utils/CryptoUtils\";\r\nimport { UrlUtils } from \"../utils/UrlUtils\";\r\n/**\r\n * @hidden\r\n */\r\nvar AccessTokenKey = /** @class */ (function () {\r\n function AccessTokenKey(authority, clientId, scopes, uid, utid) {\r\n this.authority = UrlUtils.CanonicalizeUri(authority);\r\n this.clientId = clientId;\r\n this.scopes = scopes;\r\n this.homeAccountIdentifier = CryptoUtils.base64Encode(uid) + \".\" + CryptoUtils.base64Encode(utid);\r\n }\r\n return AccessTokenKey;\r\n}());\r\nexport { AccessTokenKey };\r\n//# sourceMappingURL=AccessTokenKey.js.map","/*\r\n * Copyright (c) Microsoft Corporation. All rights reserved.\r\n * Licensed under the MIT License.\r\n */\r\n/**\r\n * @hidden\r\n */\r\nvar AccessTokenValue = /** @class */ (function () {\r\n function AccessTokenValue(accessToken, idToken, expiresIn, homeAccountIdentifier) {\r\n this.accessToken = accessToken;\r\n this.idToken = idToken;\r\n this.expiresIn = expiresIn;\r\n this.homeAccountIdentifier = homeAccountIdentifier;\r\n }\r\n return AccessTokenValue;\r\n}());\r\nexport { AccessTokenValue };\r\n//# sourceMappingURL=AccessTokenValue.js.map","/*\r\n * Copyright (c) Microsoft Corporation. All rights reserved.\r\n * Licensed under the MIT License.\r\n */\r\nimport { CryptoUtils } from \"./utils/CryptoUtils\";\r\nimport { SSOTypes, Constants, PromptState, libraryVersion, ResponseTypes } from \"./utils/Constants\";\r\nimport { StringUtils } from \"./utils/StringUtils\";\r\nimport { ScopeSet } from \"./ScopeSet\";\r\n/**\r\n * Nonce: OIDC Nonce definition: https://openid.net/specs/openid-connect-core-1_0.html#IDToken\r\n * State: OAuth Spec: https://tools.ietf.org/html/rfc6749#section-10.12\r\n * @hidden\r\n */\r\nvar ServerRequestParameters = /** @class */ (function () {\r\n /**\r\n * Constructor\r\n * @param authority\r\n * @param clientId\r\n * @param scope\r\n * @param responseType\r\n * @param redirectUri\r\n * @param state\r\n */\r\n function ServerRequestParameters(authority, clientId, responseType, redirectUri, scopes, state, correlationId) {\r\n this.authorityInstance = authority;\r\n this.clientId = clientId;\r\n this.nonce = CryptoUtils.createNewGuid();\r\n // set scope to clientId if null\r\n this.scopes = scopes ? scopes.slice() : Constants.oidcScopes;\r\n this.scopes = ScopeSet.trimScopes(this.scopes);\r\n // set state (already set at top level)\r\n this.state = state;\r\n // set correlationId\r\n this.correlationId = correlationId;\r\n // telemetry information\r\n this.xClientSku = \"MSAL.JS\";\r\n this.xClientVer = libraryVersion();\r\n this.responseType = responseType;\r\n this.redirectUri = redirectUri;\r\n }\r\n Object.defineProperty(ServerRequestParameters.prototype, \"authority\", {\r\n get: function () {\r\n return this.authorityInstance ? this.authorityInstance.CanonicalAuthority : null;\r\n },\r\n enumerable: true,\r\n configurable: true\r\n });\r\n /**\r\n * @hidden\r\n * @ignore\r\n *\r\n * Utility to populate QueryParameters and ExtraQueryParameters to ServerRequestParamerers\r\n * @param request\r\n * @param serverAuthenticationRequest\r\n */\r\n ServerRequestParameters.prototype.populateQueryParams = function (account, request, adalIdTokenObject, silentCall) {\r\n var queryParameters = {};\r\n if (request) {\r\n // add the prompt parameter to serverRequestParameters if passed\r\n if (request.prompt) {\r\n this.promptValue = request.prompt;\r\n }\r\n // Add claims challenge to serverRequestParameters if passed\r\n if (request.claimsRequest) {\r\n this.claimsValue = request.claimsRequest;\r\n }\r\n // if the developer provides one of these, give preference to developer choice\r\n if (ServerRequestParameters.isSSOParam(request)) {\r\n queryParameters = this.constructUnifiedCacheQueryParameter(request, null);\r\n }\r\n }\r\n if (adalIdTokenObject) {\r\n queryParameters = this.constructUnifiedCacheQueryParameter(null, adalIdTokenObject);\r\n }\r\n /*\r\n * adds sid/login_hint if not populated\r\n * this.logger.verbose(\"Calling addHint parameters\");\r\n */\r\n queryParameters = this.addHintParameters(account, queryParameters);\r\n // sanity check for developer passed extraQueryParameters\r\n var eQParams = request ? request.extraQueryParameters : null;\r\n // Populate the extraQueryParameters to be sent to the server\r\n this.queryParameters = ServerRequestParameters.generateQueryParametersString(queryParameters);\r\n this.extraQueryParameters = ServerRequestParameters.generateQueryParametersString(eQParams, silentCall);\r\n };\r\n // #region QueryParam helpers\r\n /**\r\n * Constructs extraQueryParameters to be sent to the server for the AuthenticationParameters set by the developer\r\n * in any login() or acquireToken() calls\r\n * @param idTokenObject\r\n * @param extraQueryParameters\r\n * @param sid\r\n * @param loginHint\r\n */\r\n // TODO: check how this behaves when domain_hint only is sent in extraparameters and idToken has no upn.\r\n ServerRequestParameters.prototype.constructUnifiedCacheQueryParameter = function (request, idTokenObject) {\r\n // preference order: account > sid > login_hint\r\n var ssoType;\r\n var ssoData;\r\n var serverReqParam = {};\r\n // if account info is passed, account.sid > account.login_hint\r\n if (request) {\r\n if (request.account) {\r\n var account = request.account;\r\n if (account.sid) {\r\n ssoType = SSOTypes.SID;\r\n ssoData = account.sid;\r\n }\r\n else if (account.userName) {\r\n ssoType = SSOTypes.LOGIN_HINT;\r\n ssoData = account.userName;\r\n }\r\n }\r\n // sid from request\r\n else if (request.sid) {\r\n ssoType = SSOTypes.SID;\r\n ssoData = request.sid;\r\n }\r\n // loginHint from request\r\n else if (request.loginHint) {\r\n ssoType = SSOTypes.LOGIN_HINT;\r\n ssoData = request.loginHint;\r\n }\r\n }\r\n // adalIdToken retrieved from cache\r\n else if (idTokenObject) {\r\n if (idTokenObject.hasOwnProperty(Constants.upn)) {\r\n ssoType = SSOTypes.ID_TOKEN;\r\n ssoData = idTokenObject.upn;\r\n }\r\n }\r\n serverReqParam = this.addSSOParameter(ssoType, ssoData);\r\n return serverReqParam;\r\n };\r\n /**\r\n * @hidden\r\n *\r\n * Adds login_hint to authorization URL which is used to pre-fill the username field of sign in page for the user if known ahead of time\r\n * domain_hint if added skips the email based discovery process of the user - only supported for interactive calls in implicit_flow\r\n * domain_req utid received as part of the clientInfo\r\n * login_req uid received as part of clientInfo\r\n * Also does a sanity check for extraQueryParameters passed by the user to ensure no repeat queryParameters\r\n *\r\n * @param {@link Account} account - Account for which the token is requested\r\n * @param queryparams\r\n * @param {@link ServerRequestParameters}\r\n * @ignore\r\n */\r\n ServerRequestParameters.prototype.addHintParameters = function (account, qParams) {\r\n /*\r\n * This is a final check for all queryParams added so far; preference order: sid > login_hint\r\n * sid cannot be passed along with login_hint or domain_hint, hence we check both are not populated yet in queryParameters\r\n */\r\n if (account && !qParams[SSOTypes.SID]) {\r\n // sid - populate only if login_hint is not already populated and the account has sid\r\n var populateSID = !qParams[SSOTypes.LOGIN_HINT] && account.sid && this.promptValue === PromptState.NONE;\r\n if (populateSID) {\r\n qParams = this.addSSOParameter(SSOTypes.SID, account.sid, qParams);\r\n }\r\n // login_hint - account.userName\r\n else {\r\n var populateLoginHint = !qParams[SSOTypes.LOGIN_HINT] && account.userName && !StringUtils.isEmpty(account.userName);\r\n if (populateLoginHint) {\r\n qParams = this.addSSOParameter(SSOTypes.LOGIN_HINT, account.userName, qParams);\r\n }\r\n }\r\n }\r\n return qParams;\r\n };\r\n /**\r\n * Add SID to extraQueryParameters\r\n * @param sid\r\n */\r\n ServerRequestParameters.prototype.addSSOParameter = function (ssoType, ssoData, ssoParam) {\r\n if (!ssoParam) {\r\n ssoParam = {};\r\n }\r\n if (!ssoData) {\r\n return ssoParam;\r\n }\r\n switch (ssoType) {\r\n case SSOTypes.SID: {\r\n ssoParam[SSOTypes.SID] = ssoData;\r\n break;\r\n }\r\n case SSOTypes.ID_TOKEN: {\r\n ssoParam[SSOTypes.LOGIN_HINT] = ssoData;\r\n break;\r\n }\r\n case SSOTypes.LOGIN_HINT: {\r\n ssoParam[SSOTypes.LOGIN_HINT] = ssoData;\r\n break;\r\n }\r\n }\r\n return ssoParam;\r\n };\r\n /**\r\n * Utility to generate a QueryParameterString from a Key-Value mapping of extraQueryParameters passed\r\n * @param extraQueryParameters\r\n */\r\n ServerRequestParameters.generateQueryParametersString = function (queryParameters, silentCall) {\r\n var paramsString = null;\r\n if (queryParameters) {\r\n Object.keys(queryParameters).forEach(function (key) {\r\n // sid cannot be passed along with login_hint or domain_hint\r\n if (key === Constants.domain_hint && (silentCall || queryParameters[SSOTypes.SID])) {\r\n return;\r\n }\r\n if (paramsString == null) {\r\n paramsString = key + \"=\" + encodeURIComponent(queryParameters[key]);\r\n }\r\n else {\r\n paramsString += \"&\" + key + \"=\" + encodeURIComponent(queryParameters[key]);\r\n }\r\n });\r\n }\r\n return paramsString;\r\n };\r\n // #endregion\r\n /**\r\n * Check to see if there are SSO params set in the Request\r\n * @param request\r\n */\r\n ServerRequestParameters.isSSOParam = function (request) {\r\n return request && (request.account || request.sid || request.loginHint);\r\n };\r\n /**\r\n * Returns the correct response_type string attribute for an acquireToken request configuration\r\n * @param accountsMatch boolean: Determines whether the account in the request matches the cached account\r\n * @param scopes Array: AuthenticationRequest scopes configuration\r\n * @param loginScopesOnly boolean: True if the scopes array ONLY contains the clientId or any combination of OIDC scopes, without resource scopes\r\n */\r\n ServerRequestParameters.determineResponseType = function (accountsMatch, scopes) {\r\n // Supports getting an id_token by sending in clientId as only scope or OIDC scopes as only scopes\r\n if (ScopeSet.onlyContainsOidcScopes(scopes)) {\r\n return ResponseTypes.id_token;\r\n }\r\n // If accounts match, check if OIDC scopes are included, otherwise return id_token_token\r\n return (accountsMatch) ? this.responseTypeForMatchingAccounts(scopes) : ResponseTypes.id_token_token;\r\n };\r\n /**\r\n * Returns the correct response_type string attribute for an acquireToken request configuration that contains an\r\n * account that matches the account in the MSAL cache.\r\n * @param scopes Array: AuthenticationRequest scopes configuration\r\n */\r\n ServerRequestParameters.responseTypeForMatchingAccounts = function (scopes) {\r\n // Opt-into also requesting an ID token by sending in 'openid', 'profile' or both along with resource scopes when login is not necessary.\r\n return (ScopeSet.containsAnyOidcScopes(scopes)) ? ResponseTypes.id_token_token : ResponseTypes.token;\r\n };\r\n return ServerRequestParameters;\r\n}());\r\nexport { ServerRequestParameters };\r\n//# sourceMappingURL=ServerRequestParameters.js.map","/*\r\n * Copyright (c) Microsoft Corporation. All rights reserved.\r\n * Licensed under the MIT License.\r\n */\r\nimport { NetworkRequestType } from \"./utils/Constants\";\r\n/**\r\n * XHR client for JSON endpoints\r\n * https://www.npmjs.com/package/async-promise\r\n * @hidden\r\n */\r\nvar XhrClient = /** @class */ (function () {\r\n function XhrClient() {\r\n }\r\n XhrClient.prototype.sendRequestAsync = function (url, method, enableCaching) {\r\n var _this = this;\r\n return new Promise(function (resolve, reject) {\r\n var xhr = new XMLHttpRequest();\r\n xhr.open(method, url, /* async: */ true);\r\n if (enableCaching) {\r\n /*\r\n * TODO: (shivb) ensure that this can be cached\r\n * xhr.setRequestHeader(\"Cache-Control\", \"Public\");\r\n */\r\n }\r\n xhr.onload = function () {\r\n if (xhr.status < 200 || xhr.status >= 300) {\r\n reject(_this.handleError(xhr.responseText));\r\n }\r\n var jsonResponse;\r\n try {\r\n jsonResponse = JSON.parse(xhr.responseText);\r\n }\r\n catch (e) {\r\n reject(_this.handleError(xhr.responseText));\r\n }\r\n var response = {\r\n statusCode: xhr.status,\r\n body: jsonResponse\r\n };\r\n resolve(response);\r\n };\r\n xhr.onerror = function () {\r\n reject(xhr.status);\r\n };\r\n if (method === NetworkRequestType.GET) {\r\n xhr.send();\r\n }\r\n else {\r\n throw \"not implemented\";\r\n }\r\n });\r\n };\r\n XhrClient.prototype.handleError = function (responseText) {\r\n var jsonResponse;\r\n try {\r\n jsonResponse = JSON.parse(responseText);\r\n if (jsonResponse.error) {\r\n return jsonResponse.error;\r\n }\r\n else {\r\n throw responseText;\r\n }\r\n }\r\n catch (e) {\r\n return responseText;\r\n }\r\n };\r\n return XhrClient;\r\n}());\r\nexport { XhrClient };\r\n//# sourceMappingURL=XHRClient.js.map","/*\r\n * Copyright (c) Microsoft Corporation. All rights reserved.\r\n * Licensed under the MIT License.\r\n */\r\nimport * as tslib_1 from \"tslib\";\r\nimport { XhrClient } from \"../XHRClient\";\r\nimport { AAD_INSTANCE_DISCOVERY_ENDPOINT, NetworkRequestType } from \"../utils/Constants\";\r\nimport { UrlUtils } from \"../utils/UrlUtils\";\r\nvar TrustedAuthority = /** @class */ (function () {\r\n function TrustedAuthority() {\r\n }\r\n /**\r\n *\r\n * @param validateAuthority\r\n * @param knownAuthorities\r\n */\r\n TrustedAuthority.setTrustedAuthoritiesFromConfig = function (validateAuthority, knownAuthorities) {\r\n if (validateAuthority && !this.getTrustedHostList().length) {\r\n knownAuthorities.forEach(function (authority) {\r\n TrustedAuthority.TrustedHostList.push(authority.toLowerCase());\r\n });\r\n }\r\n };\r\n /**\r\n *\r\n * @param telemetryManager\r\n * @param correlationId\r\n */\r\n TrustedAuthority.getAliases = function (authorityToVerify, telemetryManager, correlationId) {\r\n return tslib_1.__awaiter(this, void 0, void 0, function () {\r\n var client, httpMethod, instanceDiscoveryEndpoint, httpEvent;\r\n return tslib_1.__generator(this, function (_a) {\r\n client = new XhrClient();\r\n httpMethod = NetworkRequestType.GET;\r\n instanceDiscoveryEndpoint = \"\" + AAD_INSTANCE_DISCOVERY_ENDPOINT + authorityToVerify + \"oauth2/v2.0/authorize\";\r\n httpEvent = telemetryManager.createAndStartHttpEvent(correlationId, httpMethod, instanceDiscoveryEndpoint, \"getAliases\");\r\n return [2 /*return*/, client.sendRequestAsync(instanceDiscoveryEndpoint, httpMethod, true)\r\n .then(function (response) {\r\n httpEvent.httpResponseStatus = response.statusCode;\r\n telemetryManager.stopEvent(httpEvent);\r\n return response.body.metadata;\r\n })\r\n .catch(function (err) {\r\n httpEvent.serverErrorCode = err;\r\n telemetryManager.stopEvent(httpEvent);\r\n throw err;\r\n })];\r\n });\r\n });\r\n };\r\n /**\r\n *\r\n * @param telemetryManager\r\n * @param correlationId\r\n */\r\n TrustedAuthority.setTrustedAuthoritiesFromNetwork = function (authorityToVerify, telemetryManager, correlationId) {\r\n return tslib_1.__awaiter(this, void 0, void 0, function () {\r\n var metadata, host;\r\n return tslib_1.__generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0: return [4 /*yield*/, this.getAliases(authorityToVerify, telemetryManager, correlationId)];\r\n case 1:\r\n metadata = _a.sent();\r\n metadata.forEach(function (entry) {\r\n var authorities = entry.aliases;\r\n authorities.forEach(function (authority) {\r\n TrustedAuthority.TrustedHostList.push(authority.toLowerCase());\r\n });\r\n });\r\n host = UrlUtils.GetUrlComponents(authorityToVerify).HostNameAndPort;\r\n if (TrustedAuthority.getTrustedHostList().length && !TrustedAuthority.IsInTrustedHostList(host)) {\r\n // Custom Domain scenario, host is trusted because Instance Discovery call succeeded\r\n TrustedAuthority.TrustedHostList.push(host.toLowerCase());\r\n }\r\n return [2 /*return*/];\r\n }\r\n });\r\n });\r\n };\r\n TrustedAuthority.getTrustedHostList = function () {\r\n return this.TrustedHostList;\r\n };\r\n /**\r\n * Checks to see if the host is in a list of trusted hosts\r\n * @param host\r\n */\r\n TrustedAuthority.IsInTrustedHostList = function (host) {\r\n return this.TrustedHostList.indexOf(host.toLowerCase()) > -1;\r\n };\r\n TrustedAuthority.TrustedHostList = [];\r\n return TrustedAuthority;\r\n}());\r\nexport { TrustedAuthority };\r\n//# sourceMappingURL=TrustedAuthority.js.map","/*\r\n * Copyright (c) Microsoft Corporation. All rights reserved.\r\n * Licensed under the MIT License.\r\n */\r\nimport { StringUtils } from \"./utils/StringUtils\";\r\nimport { libraryVersion } from \"./utils/Constants\";\r\nexport var LogLevel;\r\n(function (LogLevel) {\r\n LogLevel[LogLevel[\"Error\"] = 0] = \"Error\";\r\n LogLevel[LogLevel[\"Warning\"] = 1] = \"Warning\";\r\n LogLevel[LogLevel[\"Info\"] = 2] = \"Info\";\r\n LogLevel[LogLevel[\"Verbose\"] = 3] = \"Verbose\";\r\n})(LogLevel || (LogLevel = {}));\r\nvar Logger = /** @class */ (function () {\r\n function Logger(localCallback, options) {\r\n if (options === void 0) { options = {}; }\r\n /**\r\n * @hidden\r\n */\r\n this.level = LogLevel.Info;\r\n var _a = options.correlationId, correlationId = _a === void 0 ? \"\" : _a, _b = options.level, level = _b === void 0 ? LogLevel.Info : _b, _c = options.piiLoggingEnabled, piiLoggingEnabled = _c === void 0 ? false : _c;\r\n this.localCallback = localCallback;\r\n this.correlationId = correlationId;\r\n this.level = level;\r\n this.piiLoggingEnabled = piiLoggingEnabled;\r\n }\r\n /**\r\n * @hidden\r\n */\r\n Logger.prototype.logMessage = function (logLevel, logMessage, containsPii) {\r\n if ((logLevel > this.level) || (!this.piiLoggingEnabled && containsPii)) {\r\n return;\r\n }\r\n var timestamp = new Date().toUTCString();\r\n var log;\r\n if (!StringUtils.isEmpty(this.correlationId)) {\r\n log = timestamp + \":\" + this.correlationId + \"-\" + libraryVersion() + \"-\" + LogLevel[logLevel] + (containsPii ? \"-pii\" : \"\") + \" \" + logMessage;\r\n }\r\n else {\r\n log = timestamp + \":\" + libraryVersion() + \"-\" + LogLevel[logLevel] + (containsPii ? \"-pii\" : \"\") + \" \" + logMessage;\r\n }\r\n this.executeCallback(logLevel, log, containsPii);\r\n };\r\n /**\r\n * @hidden\r\n */\r\n Logger.prototype.executeCallback = function (level, message, containsPii) {\r\n if (this.localCallback) {\r\n this.localCallback(level, message, containsPii);\r\n }\r\n };\r\n /**\r\n * @hidden\r\n */\r\n Logger.prototype.error = function (message) {\r\n this.logMessage(LogLevel.Error, message, false);\r\n };\r\n /**\r\n * @hidden\r\n */\r\n Logger.prototype.errorPii = function (message) {\r\n this.logMessage(LogLevel.Error, message, true);\r\n };\r\n /**\r\n * @hidden\r\n */\r\n Logger.prototype.warning = function (message) {\r\n this.logMessage(LogLevel.Warning, message, false);\r\n };\r\n /**\r\n * @hidden\r\n */\r\n Logger.prototype.warningPii = function (message) {\r\n this.logMessage(LogLevel.Warning, message, true);\r\n };\r\n /**\r\n * @hidden\r\n */\r\n Logger.prototype.info = function (message) {\r\n this.logMessage(LogLevel.Info, message, false);\r\n };\r\n /**\r\n * @hidden\r\n */\r\n Logger.prototype.infoPii = function (message) {\r\n this.logMessage(LogLevel.Info, message, true);\r\n };\r\n /**\r\n * @hidden\r\n */\r\n Logger.prototype.verbose = function (message) {\r\n this.logMessage(LogLevel.Verbose, message, false);\r\n };\r\n /**\r\n * @hidden\r\n */\r\n Logger.prototype.verbosePii = function (message) {\r\n this.logMessage(LogLevel.Verbose, message, true);\r\n };\r\n Logger.prototype.isPiiLoggingEnabled = function () {\r\n return this.piiLoggingEnabled;\r\n };\r\n return Logger;\r\n}());\r\nexport { Logger };\r\n//# sourceMappingURL=Logger.js.map","/*\r\n * Copyright (c) Microsoft Corporation. All rights reserved.\r\n * Licensed under the MIT License.\r\n */\r\nimport { CryptoUtils } from \"./utils/CryptoUtils\";\r\nimport { ClientAuthError } from \"./error/ClientAuthError\";\r\nimport { StringUtils } from \"./utils/StringUtils\";\r\n/**\r\n * @hidden\r\n */\r\nvar ClientInfo = /** @class */ (function () {\r\n function ClientInfo(rawClientInfo, authority) {\r\n if (!rawClientInfo || StringUtils.isEmpty(rawClientInfo)) {\r\n this.uid = \"\";\r\n this.utid = \"\";\r\n return;\r\n }\r\n try {\r\n var decodedClientInfo = CryptoUtils.base64Decode(rawClientInfo);\r\n var clientInfo = JSON.parse(decodedClientInfo);\r\n if (clientInfo) {\r\n if (clientInfo.hasOwnProperty(\"uid\")) {\r\n this.uid = authority ? ClientInfo.stripPolicyFromUid(clientInfo.uid, authority) : clientInfo.uid;\r\n }\r\n if (clientInfo.hasOwnProperty(\"utid\")) {\r\n this.utid = clientInfo.utid;\r\n }\r\n }\r\n }\r\n catch (e) {\r\n throw ClientAuthError.createClientInfoDecodingError(e);\r\n }\r\n }\r\n Object.defineProperty(ClientInfo.prototype, \"uid\", {\r\n get: function () {\r\n return this._uid ? this._uid : \"\";\r\n },\r\n set: function (uid) {\r\n this._uid = uid;\r\n },\r\n enumerable: true,\r\n configurable: true\r\n });\r\n Object.defineProperty(ClientInfo.prototype, \"utid\", {\r\n get: function () {\r\n return this._utid ? this._utid : \"\";\r\n },\r\n set: function (utid) {\r\n this._utid = utid;\r\n },\r\n enumerable: true,\r\n configurable: true\r\n });\r\n ClientInfo.createClientInfoFromIdToken = function (idToken, authority) {\r\n var clientInfo = {\r\n uid: idToken.subject,\r\n utid: \"\"\r\n };\r\n return new ClientInfo(CryptoUtils.base64Encode(JSON.stringify(clientInfo)), authority);\r\n };\r\n ClientInfo.stripPolicyFromUid = function (uid, authority) {\r\n var uidSegments = uid.split(\"-\");\r\n // Reverse the url segments so the last one is more easily accessible\r\n var urlSegments = authority.split(\"/\").reverse();\r\n var policy = \"\";\r\n if (!StringUtils.isEmpty(urlSegments[0])) {\r\n policy = urlSegments[0];\r\n }\r\n else if (urlSegments.length > 1) {\r\n // If the original url had a trailing slash, urlSegments[0] would be \"\" so take the next element\r\n policy = urlSegments[1];\r\n }\r\n if (uidSegments[uidSegments.length - 1] === policy) {\r\n // If the last segment of uid matches the last segment of authority url, remove the last segment of uid\r\n return uidSegments.slice(0, uidSegments.length - 1).join(\"-\");\r\n }\r\n return uid;\r\n };\r\n ClientInfo.prototype.encodeClientInfo = function () {\r\n var clientInfo = JSON.stringify({ uid: this.uid, utid: this.utid });\r\n return CryptoUtils.base64Encode(clientInfo);\r\n };\r\n return ClientInfo;\r\n}());\r\nexport { ClientInfo };\r\n//# sourceMappingURL=ClientInfo.js.map","/*\r\n * Copyright (c) Microsoft Corporation. All rights reserved.\r\n * Licensed under the MIT License.\r\n */\r\n/**\r\n * @hidden\r\n */\r\nvar TimeUtils = /** @class */ (function () {\r\n function TimeUtils() {\r\n }\r\n /**\r\n * Returns time in seconds for expiration based on string value passed in.\r\n *\r\n * @param expiresIn\r\n */\r\n TimeUtils.parseExpiresIn = function (expiresIn) {\r\n // if AAD did not send \"expires_in\" property, use default expiration of 3599 seconds, for some reason AAD sends 3599 as \"expires_in\" value instead of 3600\r\n if (!expiresIn) {\r\n expiresIn = \"3599\";\r\n }\r\n return parseInt(expiresIn, 10);\r\n };\r\n /**\r\n * Return the current time in Unix time (seconds). Date.getTime() returns in milliseconds.\r\n */\r\n TimeUtils.now = function () {\r\n return Math.round(new Date().getTime() / 1000.0);\r\n };\r\n /**\r\n * Returns the amount of time in milliseconds since the page loaded.\r\n */\r\n TimeUtils.relativeNowMs = function () {\r\n return window.performance.now();\r\n };\r\n return TimeUtils;\r\n}());\r\nexport { TimeUtils };\r\n//# sourceMappingURL=TimeUtils.js.map","/*\r\n * Copyright (c) Microsoft Corporation. All rights reserved.\r\n * Licensed under the MIT License.\r\n */\r\nimport { CryptoUtils } from \"./CryptoUtils\";\r\nimport { StringUtils } from \"./StringUtils\";\r\nimport { TimeUtils } from \"./TimeUtils\";\r\n/**\r\n * @hidden\r\n */\r\nvar TokenUtils = /** @class */ (function () {\r\n function TokenUtils() {\r\n }\r\n /**\r\n * decode a JWT\r\n *\r\n * @param jwtToken\r\n */\r\n TokenUtils.decodeJwt = function (jwtToken) {\r\n if (StringUtils.isEmpty(jwtToken)) {\r\n return null;\r\n }\r\n var idTokenPartsRegex = /^([^\\.\\s]*)\\.([^\\.\\s]+)\\.([^\\.\\s]*)$/;\r\n var matches = idTokenPartsRegex.exec(jwtToken);\r\n if (!matches || matches.length < 4) {\r\n // this._requestContext.logger.warn(\"The returned id_token is not parseable.\");\r\n return null;\r\n }\r\n var crackedToken = {\r\n header: matches[1],\r\n JWSPayload: matches[2],\r\n JWSSig: matches[3]\r\n };\r\n return crackedToken;\r\n };\r\n /**\r\n * Evaluates whether token cache item expiration is within expiration offset range\r\n * @param tokenCacheItem\r\n */\r\n TokenUtils.validateExpirationIsWithinOffset = function (expiration, tokenRenewalOffsetSeconds) {\r\n var offset = tokenRenewalOffsetSeconds || 300;\r\n return expiration && (expiration > TimeUtils.now() + offset);\r\n };\r\n /**\r\n * Extract IdToken by decoding the RAWIdToken\r\n *\r\n * @param encodedIdToken\r\n */\r\n TokenUtils.extractIdToken = function (encodedIdToken) {\r\n // id token will be decoded to get the username\r\n var decodedToken = this.decodeJwt(encodedIdToken);\r\n if (!decodedToken) {\r\n return null;\r\n }\r\n try {\r\n var base64IdToken = decodedToken.JWSPayload;\r\n var base64Decoded = CryptoUtils.base64Decode(base64IdToken);\r\n if (!base64Decoded) {\r\n // this._requestContext.logger.info(\"The returned id_token could not be base64 url safe decoded.\");\r\n return null;\r\n }\r\n // ECMA script has JSON built-in support\r\n return JSON.parse(base64Decoded);\r\n }\r\n catch (err) {\r\n // this._requestContext.logger.error(\"The returned id_token could not be decoded\" + err);\r\n }\r\n return null;\r\n };\r\n return TokenUtils;\r\n}());\r\nexport { TokenUtils };\r\n//# sourceMappingURL=TokenUtils.js.map","/*\r\n * Copyright (c) Microsoft Corporation. All rights reserved.\r\n * Licensed under the MIT License.\r\n */\r\nimport { ClientAuthError } from \"./error/ClientAuthError\";\r\nimport { TokenUtils } from \"./utils/TokenUtils\";\r\nimport { StringUtils } from \"./utils/StringUtils\";\r\n/**\r\n * @hidden\r\n */\r\nvar IdToken = /** @class */ (function () {\r\n /* tslint:disable:no-string-literal */\r\n function IdToken(rawIdToken) {\r\n if (StringUtils.isEmpty(rawIdToken)) {\r\n throw ClientAuthError.createIdTokenNullOrEmptyError(rawIdToken);\r\n }\r\n try {\r\n this.rawIdToken = rawIdToken;\r\n this.claims = TokenUtils.extractIdToken(rawIdToken);\r\n if (this.claims) {\r\n if (this.claims.hasOwnProperty(\"iss\")) {\r\n this.issuer = this.claims[\"iss\"];\r\n }\r\n if (this.claims.hasOwnProperty(\"oid\")) {\r\n this.objectId = this.claims[\"oid\"];\r\n }\r\n if (this.claims.hasOwnProperty(\"sub\")) {\r\n this.subject = this.claims[\"sub\"];\r\n }\r\n if (this.claims.hasOwnProperty(\"tid\")) {\r\n this.tenantId = this.claims[\"tid\"];\r\n }\r\n if (this.claims.hasOwnProperty(\"ver\")) {\r\n this.version = this.claims[\"ver\"];\r\n }\r\n if (this.claims.hasOwnProperty(\"preferred_username\")) {\r\n this.preferredName = this.claims[\"preferred_username\"];\r\n }\r\n else if (this.claims.hasOwnProperty(\"upn\")) {\r\n this.preferredName = this.claims[\"upn\"];\r\n }\r\n if (this.claims.hasOwnProperty(\"name\")) {\r\n this.name = this.claims[\"name\"];\r\n }\r\n if (this.claims.hasOwnProperty(\"nonce\")) {\r\n this.nonce = this.claims[\"nonce\"];\r\n }\r\n if (this.claims.hasOwnProperty(\"exp\")) {\r\n this.expiration = this.claims[\"exp\"];\r\n }\r\n if (this.claims.hasOwnProperty(\"home_oid\")) {\r\n this.homeObjectId = this.claims[\"home_oid\"];\r\n }\r\n if (this.claims.hasOwnProperty(\"sid\")) {\r\n this.sid = this.claims[\"sid\"];\r\n }\r\n if (this.claims.hasOwnProperty(\"cloud_instance_host_name\")) {\r\n this.cloudInstance = this.claims[\"cloud_instance_host_name\"];\r\n }\r\n /* tslint:enable:no-string-literal */\r\n }\r\n }\r\n catch (e) {\r\n /*\r\n * TODO: This error here won't really every be thrown, since extractIdToken() returns null if the decodeJwt() fails.\r\n * Need to add better error handling here to account for being unable to decode jwts.\r\n */\r\n throw ClientAuthError.createIdTokenParsingError(e);\r\n }\r\n }\r\n return IdToken;\r\n}());\r\nexport { IdToken };\r\n//# sourceMappingURL=IdToken.js.map","/*\r\n * Copyright (c) Microsoft Corporation. All rights reserved.\r\n * Licensed under the MIT License.\r\n */\r\n/**\r\n * @hidden\r\n */\r\nvar AccessTokenCacheItem = /** @class */ (function () {\r\n function AccessTokenCacheItem(key, value) {\r\n this.key = key;\r\n this.value = value;\r\n }\r\n return AccessTokenCacheItem;\r\n}());\r\nexport { AccessTokenCacheItem };\r\n//# sourceMappingURL=AccessTokenCacheItem.js.map","/*\r\n * Copyright (c) Microsoft Corporation. All rights reserved.\r\n * Licensed under the MIT License.\r\n */\r\nimport { ClientConfigurationError } from \"../error/ClientConfigurationError\";\r\nimport { AuthError } from \"../error/AuthError\";\r\n/**\r\n * @hidden\r\n */\r\nvar BrowserStorage = /** @class */ (function () {\r\n function BrowserStorage(cacheLocation) {\r\n if (!window) {\r\n throw AuthError.createNoWindowObjectError(\"Browser storage class could not find window object\");\r\n }\r\n var storageSupported = typeof window[cacheLocation] !== \"undefined\" && window[cacheLocation] != null;\r\n if (!storageSupported) {\r\n throw ClientConfigurationError.createStorageNotSupportedError(cacheLocation);\r\n }\r\n this.cacheLocation = cacheLocation;\r\n }\r\n /**\r\n * add value to storage\r\n * @param key\r\n * @param value\r\n * @param enableCookieStorage\r\n */\r\n BrowserStorage.prototype.setItem = function (key, value, enableCookieStorage) {\r\n window[this.cacheLocation].setItem(key, value);\r\n if (enableCookieStorage) {\r\n this.setItemCookie(key, value);\r\n }\r\n };\r\n /**\r\n * get one item by key from storage\r\n * @param key\r\n * @param enableCookieStorage\r\n */\r\n BrowserStorage.prototype.getItem = function (key, enableCookieStorage) {\r\n if (enableCookieStorage && this.getItemCookie(key)) {\r\n return this.getItemCookie(key);\r\n }\r\n return window[this.cacheLocation].getItem(key);\r\n };\r\n /**\r\n * remove value from storage\r\n * @param key\r\n */\r\n BrowserStorage.prototype.removeItem = function (key) {\r\n return window[this.cacheLocation].removeItem(key);\r\n };\r\n /**\r\n * clear storage (remove all items from it)\r\n */\r\n BrowserStorage.prototype.clear = function () {\r\n return window[this.cacheLocation].clear();\r\n };\r\n /**\r\n * add value to cookies\r\n * @param cName\r\n * @param cValue\r\n * @param expires\r\n */\r\n BrowserStorage.prototype.setItemCookie = function (cName, cValue, expires) {\r\n var cookieStr = cName + \"=\" + cValue + \";path=/;\";\r\n if (expires) {\r\n var expireTime = this.getCookieExpirationTime(expires);\r\n cookieStr += \"expires=\" + expireTime + \";\";\r\n }\r\n document.cookie = cookieStr;\r\n };\r\n /**\r\n * get one item by key from cookies\r\n * @param cName\r\n */\r\n BrowserStorage.prototype.getItemCookie = function (cName) {\r\n var name = cName + \"=\";\r\n var ca = document.cookie.split(\";\");\r\n for (var i = 0; i < ca.length; i++) {\r\n var c = ca[i];\r\n while (c.charAt(0) === \" \") {\r\n c = c.substring(1);\r\n }\r\n if (c.indexOf(name) === 0) {\r\n return c.substring(name.length, c.length);\r\n }\r\n }\r\n return \"\";\r\n };\r\n /**\r\n * Clear an item in the cookies by key\r\n * @param cName\r\n */\r\n BrowserStorage.prototype.clearItemCookie = function (cName) {\r\n this.setItemCookie(cName, \"\", -1);\r\n };\r\n /**\r\n * Get cookie expiration time\r\n * @param cookieLifeDays\r\n */\r\n BrowserStorage.prototype.getCookieExpirationTime = function (cookieLifeDays) {\r\n var today = new Date();\r\n var expr = new Date(today.getTime() + cookieLifeDays * 24 * 60 * 60 * 1000);\r\n return expr.toUTCString();\r\n };\r\n return BrowserStorage;\r\n}());\r\nexport { BrowserStorage };\r\n//# sourceMappingURL=BrowserStorage.js.map","/*\r\n * Copyright (c) Microsoft Corporation. All rights reserved.\r\n * Licensed under the MIT License.\r\n */\r\nimport * as tslib_1 from \"tslib\";\r\nimport { Constants, PromptState, BlacklistedEQParams } from \"./Constants\";\r\nimport { ClientConfigurationError } from \"../error/ClientConfigurationError\";\r\nimport { ScopeSet } from \"../ScopeSet\";\r\nimport { StringUtils } from \"./StringUtils\";\r\nimport { CryptoUtils } from \"./CryptoUtils\";\r\nimport { TimeUtils } from \"./TimeUtils\";\r\nimport { ClientAuthError } from \"../error/ClientAuthError\";\r\n/**\r\n * @hidden\r\n */\r\nvar RequestUtils = /** @class */ (function () {\r\n function RequestUtils() {\r\n }\r\n /**\r\n * @ignore\r\n *\r\n * @param request\r\n * @param isLoginCall\r\n * @param cacheStorage\r\n * @param clientId\r\n *\r\n * validates all request parameters and generates a consumable request object\r\n */\r\n RequestUtils.validateRequest = function (request, isLoginCall, clientId, interactionType) {\r\n // Throw error if request is empty for acquire * calls\r\n if (!isLoginCall && !request) {\r\n throw ClientConfigurationError.createEmptyRequestError();\r\n }\r\n var scopes;\r\n var extraQueryParameters;\r\n if (request) {\r\n // if extraScopesToConsent is passed in loginCall, append them to the login request; Validate and filter scopes (the validate function will throw if validation fails)\r\n scopes = isLoginCall ? ScopeSet.appendScopes(request.scopes, request.extraScopesToConsent) : request.scopes;\r\n ScopeSet.validateInputScope(scopes, !isLoginCall);\r\n scopes = ScopeSet.translateClientIdIfSingleScope(scopes, clientId);\r\n // validate prompt parameter\r\n this.validatePromptParameter(request.prompt);\r\n // validate extraQueryParameters\r\n extraQueryParameters = this.validateEQParameters(request.extraQueryParameters, request.claimsRequest);\r\n // validate claimsRequest\r\n this.validateClaimsRequest(request.claimsRequest);\r\n }\r\n // validate and generate state and correlationId\r\n var state = this.validateAndGenerateState(request && request.state, interactionType);\r\n var correlationId = this.validateAndGenerateCorrelationId(request && request.correlationId);\r\n var validatedRequest = tslib_1.__assign({}, request, { extraQueryParameters: extraQueryParameters,\r\n scopes: scopes,\r\n state: state,\r\n correlationId: correlationId });\r\n return validatedRequest;\r\n };\r\n /**\r\n * @ignore\r\n *\r\n * Utility to test if valid prompt value is passed in the request\r\n * @param request\r\n */\r\n RequestUtils.validatePromptParameter = function (prompt) {\r\n if (prompt) {\r\n if ([PromptState.LOGIN, PromptState.SELECT_ACCOUNT, PromptState.CONSENT, PromptState.NONE].indexOf(prompt) < 0) {\r\n throw ClientConfigurationError.createInvalidPromptError(prompt);\r\n }\r\n }\r\n };\r\n /**\r\n * @ignore\r\n *\r\n * Removes unnecessary or duplicate query parameters from extraQueryParameters\r\n * @param request\r\n */\r\n RequestUtils.validateEQParameters = function (extraQueryParameters, claimsRequest) {\r\n var eQParams = tslib_1.__assign({}, extraQueryParameters);\r\n if (!eQParams) {\r\n return null;\r\n }\r\n if (claimsRequest) {\r\n // this.logger.warning(\"Removed duplicate claims from extraQueryParameters. Please use either the claimsRequest field OR pass as extraQueryParameter - not both.\");\r\n delete eQParams[Constants.claims];\r\n }\r\n BlacklistedEQParams.forEach(function (param) {\r\n if (eQParams[param]) {\r\n // this.logger.warning(\"Removed duplicate \" + param + \" from extraQueryParameters. Please use the \" + param + \" field in request object.\");\r\n delete eQParams[param];\r\n }\r\n });\r\n return eQParams;\r\n };\r\n /**\r\n * @ignore\r\n *\r\n * Validates the claims passed in request is a JSON\r\n * TODO: More validation will be added when the server team tells us how they have actually implemented claims\r\n * @param claimsRequest\r\n */\r\n RequestUtils.validateClaimsRequest = function (claimsRequest) {\r\n if (!claimsRequest) {\r\n return;\r\n }\r\n try {\r\n JSON.parse(claimsRequest);\r\n }\r\n catch (e) {\r\n throw ClientConfigurationError.createClaimsRequestParsingError(e);\r\n }\r\n };\r\n /**\r\n * @ignore\r\n *\r\n * generate unique state per request\r\n * @param userState User-provided state value\r\n * @returns State string include library state and user state\r\n */\r\n RequestUtils.validateAndGenerateState = function (userState, interactionType) {\r\n return !StringUtils.isEmpty(userState) ? \"\" + RequestUtils.generateLibraryState(interactionType) + Constants.resourceDelimiter + userState : RequestUtils.generateLibraryState(interactionType);\r\n };\r\n /**\r\n * Generates the state value used by the library.\r\n *\r\n * @returns Base64 encoded string representing the state\r\n */\r\n RequestUtils.generateLibraryState = function (interactionType) {\r\n var stateObject = {\r\n id: CryptoUtils.createNewGuid(),\r\n ts: TimeUtils.now(),\r\n method: interactionType\r\n };\r\n var stateString = JSON.stringify(stateObject);\r\n return CryptoUtils.base64Encode(stateString);\r\n };\r\n /**\r\n * Decodes the state value into a StateObject\r\n *\r\n * @param state State value returned in the request\r\n * @returns Parsed values from the encoded state value\r\n */\r\n RequestUtils.parseLibraryState = function (state) {\r\n var libraryState = decodeURIComponent(state).split(Constants.resourceDelimiter)[0];\r\n if (CryptoUtils.isGuid(libraryState)) {\r\n // If state is guid, assume timestamp is now and is redirect, as redirect should be only method where this can happen.\r\n return {\r\n id: libraryState,\r\n ts: TimeUtils.now(),\r\n method: Constants.interactionTypeRedirect\r\n };\r\n }\r\n try {\r\n var stateString = CryptoUtils.base64Decode(libraryState);\r\n var stateObject = JSON.parse(stateString);\r\n return stateObject;\r\n }\r\n catch (e) {\r\n throw ClientAuthError.createInvalidStateError(state, null);\r\n }\r\n };\r\n /**\r\n * @ignore\r\n *\r\n * validate correlationId and generate if not valid or not set by the user\r\n * @param correlationId\r\n */\r\n RequestUtils.validateAndGenerateCorrelationId = function (correlationId) {\r\n // validate user set correlationId or set one for the user if null\r\n if (correlationId && !CryptoUtils.isGuid(correlationId)) {\r\n throw ClientConfigurationError.createInvalidCorrelationIdError();\r\n }\r\n return CryptoUtils.isGuid(correlationId) ? correlationId : CryptoUtils.createNewGuid();\r\n };\r\n /**\r\n * Create a request signature\r\n * @param request\r\n */\r\n RequestUtils.createRequestSignature = function (request) {\r\n return \"\" + request.scopes.join(\" \").toLowerCase() + Constants.resourceDelimiter + request.authority;\r\n };\r\n return RequestUtils;\r\n}());\r\nexport { RequestUtils };\r\n//# sourceMappingURL=RequestUtils.js.map","/*\r\n * Copyright (c) Microsoft Corporation. All rights reserved.\r\n * Licensed under the MIT License.\r\n */\r\nimport * as tslib_1 from \"tslib\";\r\nimport { Constants, PersistentCacheKeys, TemporaryCacheKeys, ErrorCacheKeys, ServerHashParamKeys } from \"../utils/Constants\";\r\nimport { AccessTokenCacheItem } from \"./AccessTokenCacheItem\";\r\nimport { BrowserStorage } from \"./BrowserStorage\";\r\nimport { RequestUtils } from \"../utils/RequestUtils\";\r\nimport { StringUtils } from \"../utils/StringUtils\";\r\n/**\r\n * @hidden\r\n */\r\nvar AuthCache = /** @class */ (function (_super) {\r\n tslib_1.__extends(AuthCache, _super);\r\n function AuthCache(clientId, cacheLocation, storeAuthStateInCookie) {\r\n var _this = _super.call(this, cacheLocation) || this;\r\n _this.clientId = clientId;\r\n // This is hardcoded to true for now. We may make this configurable in the future\r\n _this.rollbackEnabled = true;\r\n _this.migrateCacheEntries(storeAuthStateInCookie);\r\n return _this;\r\n }\r\n /**\r\n * Support roll back to old cache schema until the next major release: true by default now\r\n * @param storeAuthStateInCookie\r\n */\r\n AuthCache.prototype.migrateCacheEntries = function (storeAuthStateInCookie) {\r\n var _this = this;\r\n var idTokenKey = Constants.cachePrefix + \".\" + PersistentCacheKeys.IDTOKEN;\r\n var clientInfoKey = Constants.cachePrefix + \".\" + PersistentCacheKeys.CLIENT_INFO;\r\n var errorKey = Constants.cachePrefix + \".\" + ErrorCacheKeys.ERROR;\r\n var errorDescKey = Constants.cachePrefix + \".\" + ErrorCacheKeys.ERROR_DESC;\r\n var idTokenValue = _super.prototype.getItem.call(this, idTokenKey);\r\n var clientInfoValue = _super.prototype.getItem.call(this, clientInfoKey);\r\n var errorValue = _super.prototype.getItem.call(this, errorKey);\r\n var errorDescValue = _super.prototype.getItem.call(this, errorDescKey);\r\n var values = [idTokenValue, clientInfoValue, errorValue, errorDescValue];\r\n var keysToMigrate = [PersistentCacheKeys.IDTOKEN, PersistentCacheKeys.CLIENT_INFO, ErrorCacheKeys.ERROR, ErrorCacheKeys.ERROR_DESC];\r\n keysToMigrate.forEach(function (cacheKey, index) { return _this.duplicateCacheEntry(cacheKey, values[index], storeAuthStateInCookie); });\r\n };\r\n /**\r\n * Utility function to help with roll back keys\r\n * @param newKey\r\n * @param value\r\n * @param storeAuthStateInCookie\r\n */\r\n AuthCache.prototype.duplicateCacheEntry = function (newKey, value, storeAuthStateInCookie) {\r\n if (value) {\r\n this.setItem(newKey, value, storeAuthStateInCookie);\r\n }\r\n };\r\n /**\r\n * Prepend msal. to each key; Skip for any JSON object as Key (defined schemas do not need the key appended: AccessToken Keys or the upcoming schema)\r\n * @param key\r\n * @param addInstanceId\r\n */\r\n AuthCache.prototype.generateCacheKey = function (key, addInstanceId) {\r\n try {\r\n // Defined schemas do not need the key appended\r\n JSON.parse(key);\r\n return key;\r\n }\r\n catch (e) {\r\n if (key.indexOf(\"\" + Constants.cachePrefix) === 0 || key.indexOf(Constants.adalIdToken) === 0) {\r\n return key;\r\n }\r\n return addInstanceId ? Constants.cachePrefix + \".\" + this.clientId + \".\" + key : Constants.cachePrefix + \".\" + key;\r\n }\r\n };\r\n /**\r\n * Validates that the input cache key contains the account search terms (clientId and homeAccountIdentifier) and\r\n * then whether or not it contains the \"scopes\", depending on the token type being searched for. With matching account\r\n * search terms, Access Token search tries to match the \"scopes\" keyword, while Id Token search expects \"scopes\" to not be included.\r\n * @param key\r\n * @param clientId\r\n * @param homeAccountIdentifier\r\n * @param tokenType\r\n */\r\n AuthCache.prototype.matchKeyForType = function (key, clientId, homeAccountIdentifier, tokenType) {\r\n // All valid token cache item keys are valid JSON objects, ignore keys that aren't\r\n var parsedKey = StringUtils.validateAndParseJsonCacheKey(key);\r\n if (!parsedKey) {\r\n return null;\r\n }\r\n // Does the cache item match the request account\r\n var accountMatches = key.match(clientId) && key.match(homeAccountIdentifier);\r\n // Does the cache item match the requested token type\r\n var tokenTypeMatches = false;\r\n switch (tokenType) {\r\n case ServerHashParamKeys.ACCESS_TOKEN:\r\n // Cache item is an access token if scopes are included in the cache item key\r\n tokenTypeMatches = !!key.match(Constants.scopes);\r\n break;\r\n case ServerHashParamKeys.ID_TOKEN:\r\n // Cache may be an ID token if scopes are NOT included in the cache item key\r\n tokenTypeMatches = !key.match(Constants.scopes);\r\n break;\r\n }\r\n return (accountMatches && tokenTypeMatches) ? parsedKey : null;\r\n };\r\n /**\r\n * add value to storage\r\n * @param key\r\n * @param value\r\n * @param enableCookieStorage\r\n */\r\n AuthCache.prototype.setItem = function (key, value, enableCookieStorage) {\r\n _super.prototype.setItem.call(this, this.generateCacheKey(key, true), value, enableCookieStorage);\r\n // Values stored in cookies will have rollback disabled to minimize cookie length\r\n if (this.rollbackEnabled && !enableCookieStorage) {\r\n _super.prototype.setItem.call(this, this.generateCacheKey(key, false), value, enableCookieStorage);\r\n }\r\n };\r\n /**\r\n * get one item by key from storage\r\n * @param key\r\n * @param enableCookieStorage\r\n */\r\n AuthCache.prototype.getItem = function (key, enableCookieStorage) {\r\n return _super.prototype.getItem.call(this, this.generateCacheKey(key, true), enableCookieStorage);\r\n };\r\n /**\r\n * remove value from storage\r\n * @param key\r\n */\r\n AuthCache.prototype.removeItem = function (key) {\r\n _super.prototype.removeItem.call(this, this.generateCacheKey(key, true));\r\n if (this.rollbackEnabled) {\r\n _super.prototype.removeItem.call(this, this.generateCacheKey(key, false));\r\n }\r\n };\r\n /**\r\n * Reset the cache items\r\n */\r\n AuthCache.prototype.resetCacheItems = function () {\r\n var storage = window[this.cacheLocation];\r\n var key;\r\n for (key in storage) {\r\n // Check if key contains msal prefix; For now, we are clearing all cache items created by MSAL.js\r\n if (storage.hasOwnProperty(key) && (key.indexOf(Constants.cachePrefix) !== -1)) {\r\n _super.prototype.removeItem.call(this, key);\r\n // TODO: Clear cache based on client id (clarify use cases where this is needed)\r\n }\r\n }\r\n };\r\n /**\r\n * Reset all temporary cache items\r\n */\r\n AuthCache.prototype.resetTempCacheItems = function (state) {\r\n var _this = this;\r\n var stateId = state && RequestUtils.parseLibraryState(state).id;\r\n var isTokenRenewalInProgress = this.tokenRenewalInProgress(state);\r\n var storage = window[this.cacheLocation];\r\n // check state and remove associated cache\r\n if (stateId && !isTokenRenewalInProgress) {\r\n Object.keys(storage).forEach(function (key) {\r\n if (key.indexOf(stateId) !== -1) {\r\n _this.removeItem(key);\r\n _super.prototype.clearItemCookie.call(_this, key);\r\n }\r\n });\r\n }\r\n // delete the interaction status cache\r\n this.removeItem(TemporaryCacheKeys.INTERACTION_STATUS);\r\n this.removeItem(TemporaryCacheKeys.REDIRECT_REQUEST);\r\n };\r\n /**\r\n * Set cookies for IE\r\n * @param cName\r\n * @param cValue\r\n * @param expires\r\n */\r\n AuthCache.prototype.setItemCookie = function (cName, cValue, expires) {\r\n _super.prototype.setItemCookie.call(this, this.generateCacheKey(cName, true), cValue, expires);\r\n if (this.rollbackEnabled) {\r\n _super.prototype.setItemCookie.call(this, this.generateCacheKey(cName, false), cValue, expires);\r\n }\r\n };\r\n AuthCache.prototype.clearItemCookie = function (cName) {\r\n _super.prototype.clearItemCookie.call(this, this.generateCacheKey(cName, true));\r\n if (this.rollbackEnabled) {\r\n _super.prototype.clearItemCookie.call(this, this.generateCacheKey(cName, false));\r\n }\r\n };\r\n /**\r\n * get one item by key from cookies\r\n * @param cName\r\n */\r\n AuthCache.prototype.getItemCookie = function (cName) {\r\n return _super.prototype.getItemCookie.call(this, this.generateCacheKey(cName, true));\r\n };\r\n /**\r\n * Get all tokens of a certain type from the cache\r\n * @param clientId\r\n * @param homeAccountIdentifier\r\n * @param tokenType\r\n */\r\n AuthCache.prototype.getAllTokensByType = function (clientId, homeAccountIdentifier, tokenType) {\r\n var _this = this;\r\n var results = Object.keys(window[this.cacheLocation]).reduce(function (tokens, key) {\r\n var matchedTokenKey = _this.matchKeyForType(key, clientId, homeAccountIdentifier, tokenType);\r\n if (matchedTokenKey) {\r\n var value = _this.getItem(key);\r\n if (value) {\r\n try {\r\n var newAccessTokenCacheItem = new AccessTokenCacheItem(matchedTokenKey, JSON.parse(value));\r\n return tokens.concat([newAccessTokenCacheItem]);\r\n }\r\n catch (err) {\r\n // Skip cache items with non-valid JSON values\r\n return tokens;\r\n }\r\n }\r\n }\r\n return tokens;\r\n }, []);\r\n return results;\r\n };\r\n /**\r\n * Get all access tokens in the cache\r\n * @param clientId\r\n * @param homeAccountIdentifier\r\n */\r\n AuthCache.prototype.getAllAccessTokens = function (clientId, homeAccountIdentifier) {\r\n return this.getAllTokensByType(clientId, homeAccountIdentifier, ServerHashParamKeys.ACCESS_TOKEN);\r\n };\r\n /**\r\n * Get all id tokens in the cache in the form of AccessTokenCacheItem objects so they are\r\n * in a normalized format and can make use of the existing cached access token validation logic\r\n */\r\n AuthCache.prototype.getAllIdTokens = function (clientId, homeAccountIdentifier) {\r\n return this.getAllTokensByType(clientId, homeAccountIdentifier, ServerHashParamKeys.ID_TOKEN);\r\n };\r\n /**\r\n * Get all access and ID tokens in the cache\r\n * @param clientId\r\n * @param homeAccountIdentifier\r\n */\r\n AuthCache.prototype.getAllTokens = function (clientId, homeAccountIdentifier) {\r\n var accessTokens = this.getAllAccessTokens(clientId, homeAccountIdentifier);\r\n var idTokens = this.getAllIdTokens(clientId, homeAccountIdentifier);\r\n return accessTokens.concat(idTokens);\r\n };\r\n /**\r\n * Return if the token renewal is still in progress\r\n *\r\n * @param stateValue\r\n */\r\n AuthCache.prototype.tokenRenewalInProgress = function (stateValue) {\r\n var renewStatus = this.getItem(AuthCache.generateTemporaryCacheKey(TemporaryCacheKeys.RENEW_STATUS, stateValue));\r\n return !!(renewStatus && renewStatus === Constants.inProgress);\r\n };\r\n /**\r\n * Clear all cookies\r\n */\r\n AuthCache.prototype.clearMsalCookie = function (state) {\r\n var _this = this;\r\n /*\r\n * If state is truthy, remove values associated with that request.\r\n * Otherwise, remove all MSAL cookies.\r\n */\r\n if (state) {\r\n this.clearItemCookie(AuthCache.generateTemporaryCacheKey(TemporaryCacheKeys.NONCE_IDTOKEN, state));\r\n this.clearItemCookie(AuthCache.generateTemporaryCacheKey(TemporaryCacheKeys.STATE_LOGIN, state));\r\n this.clearItemCookie(AuthCache.generateTemporaryCacheKey(TemporaryCacheKeys.LOGIN_REQUEST, state));\r\n this.clearItemCookie(AuthCache.generateTemporaryCacheKey(TemporaryCacheKeys.STATE_ACQ_TOKEN, state));\r\n }\r\n else {\r\n var cookies = document.cookie.split(\";\");\r\n cookies.forEach(function (cookieString) {\r\n var cookieName = cookieString.trim().split(\"=\")[0];\r\n if (cookieName.indexOf(Constants.cachePrefix) > -1) {\r\n _super.prototype.clearItemCookie.call(_this, cookieName);\r\n }\r\n });\r\n }\r\n };\r\n /**\r\n * Create acquireTokenAccountKey to cache account object\r\n * @param accountId\r\n * @param state\r\n */\r\n AuthCache.generateAcquireTokenAccountKey = function (accountId, state) {\r\n var stateId = RequestUtils.parseLibraryState(state).id;\r\n return \"\" + TemporaryCacheKeys.ACQUIRE_TOKEN_ACCOUNT + Constants.resourceDelimiter + accountId + Constants.resourceDelimiter + stateId;\r\n };\r\n /**\r\n * Create authorityKey to cache authority\r\n * @param state\r\n */\r\n AuthCache.generateAuthorityKey = function (state) {\r\n return AuthCache.generateTemporaryCacheKey(TemporaryCacheKeys.AUTHORITY, state);\r\n };\r\n /**\r\n * Generates the cache key for temporary cache items, using request state\r\n * @param tempCacheKey Cache key prefix\r\n * @param state Request state value\r\n */\r\n AuthCache.generateTemporaryCacheKey = function (tempCacheKey, state) {\r\n // Use the state id (a guid), in the interest of shorter key names, which is important for cookies.\r\n var stateId = RequestUtils.parseLibraryState(state).id;\r\n return \"\" + tempCacheKey + Constants.resourceDelimiter + stateId;\r\n };\r\n return AuthCache;\r\n}(BrowserStorage));\r\nexport { AuthCache };\r\n//# sourceMappingURL=AuthCache.js.map","/*\r\n * Copyright (c) Microsoft Corporation. All rights reserved.\r\n * Licensed under the MIT License.\r\n */\r\nimport { CryptoUtils } from \"./utils/CryptoUtils\";\r\nimport { StringUtils } from \"./utils/StringUtils\";\r\n/**\r\n * accountIdentifier combination of idToken.uid and idToken.utid\r\n * homeAccountIdentifier combination of clientInfo.uid and clientInfo.utid\r\n * userName idToken.preferred_username\r\n * name idToken.name\r\n * idToken idToken\r\n * sid idToken.sid - session identifier\r\n * environment idtoken.issuer (the authority that issues the token)\r\n */\r\nvar Account = /** @class */ (function () {\r\n /**\r\n * Creates an Account Object\r\n * @praram accountIdentifier\r\n * @param homeAccountIdentifier\r\n * @param userName\r\n * @param name\r\n * @param idToken\r\n * @param sid\r\n * @param environment\r\n */\r\n function Account(accountIdentifier, homeAccountIdentifier, userName, name, idTokenClaims, sid, environment) {\r\n this.accountIdentifier = accountIdentifier;\r\n this.homeAccountIdentifier = homeAccountIdentifier;\r\n this.userName = userName;\r\n this.name = name;\r\n // will be deprecated soon\r\n this.idToken = idTokenClaims;\r\n this.idTokenClaims = idTokenClaims;\r\n this.sid = sid;\r\n this.environment = environment;\r\n }\r\n /**\r\n * @hidden\r\n * @param idToken\r\n * @param clientInfo\r\n */\r\n Account.createAccount = function (idToken, clientInfo) {\r\n // create accountIdentifier\r\n var accountIdentifier = idToken.objectId || idToken.subject;\r\n // create homeAccountIdentifier\r\n var uid = clientInfo ? clientInfo.uid : \"\";\r\n var utid = clientInfo ? clientInfo.utid : \"\";\r\n var homeAccountIdentifier;\r\n if (!StringUtils.isEmpty(uid)) {\r\n homeAccountIdentifier = StringUtils.isEmpty(utid) ? CryptoUtils.base64Encode(uid) : CryptoUtils.base64Encode(uid) + \".\" + CryptoUtils.base64Encode(utid);\r\n }\r\n return new Account(accountIdentifier, homeAccountIdentifier, idToken.preferredName, idToken.name, idToken.claims, idToken.sid, idToken.issuer);\r\n };\r\n /**\r\n * Utils function to compare two Account objects - used to check if the same user account is logged in\r\n *\r\n * @param a1: Account object\r\n * @param a2: Account object\r\n */\r\n Account.compareAccounts = function (a1, a2) {\r\n if (!a1 || !a2) {\r\n return false;\r\n }\r\n if (a1.homeAccountIdentifier && a2.homeAccountIdentifier) {\r\n if (a1.homeAccountIdentifier === a2.homeAccountIdentifier) {\r\n return true;\r\n }\r\n }\r\n return false;\r\n };\r\n return Account;\r\n}());\r\nexport { Account };\r\n//# sourceMappingURL=Account.js.map","/*\r\n * Copyright (c) Microsoft Corporation. All rights reserved.\r\n * Licensed under the MIT License.\r\n */\r\nimport { ClientAuthError } from \"../error/ClientAuthError\";\r\nimport { UrlUtils } from \"./UrlUtils\";\r\nimport { TemporaryCacheKeys, Constants } from \"./Constants\";\r\nimport { TimeUtils } from \"./TimeUtils\";\r\nvar WindowUtils = /** @class */ (function () {\r\n function WindowUtils() {\r\n }\r\n /**\r\n * @hidden\r\n * Checks if the current page is running in an iframe.\r\n * @ignore\r\n */\r\n WindowUtils.isInIframe = function () {\r\n return window.parent !== window;\r\n };\r\n /**\r\n * @hidden\r\n * Check if the current page is running in a popup.\r\n * @ignore\r\n */\r\n WindowUtils.isInPopup = function () {\r\n return !!(window.opener && window.opener !== window);\r\n };\r\n /**\r\n * @hidden\r\n * @param prefix\r\n * @param scopes\r\n * @param authority\r\n */\r\n WindowUtils.generateFrameName = function (prefix, requestSignature) {\r\n return \"\" + prefix + Constants.resourceDelimiter + requestSignature;\r\n };\r\n /**\r\n * @hidden\r\n * Polls an iframe until it loads a url with a hash\r\n * @ignore\r\n */\r\n WindowUtils.monitorIframeForHash = function (contentWindow, timeout, urlNavigate, logger) {\r\n return new Promise(function (resolve, reject) {\r\n /*\r\n * Polling for iframes can be purely timing based,\r\n * since we don't need to account for interaction.\r\n */\r\n var nowMark = TimeUtils.relativeNowMs();\r\n var timeoutMark = nowMark + timeout;\r\n logger.verbose(\"monitorWindowForIframe polling started\");\r\n var intervalId = setInterval(function () {\r\n if (TimeUtils.relativeNowMs() > timeoutMark) {\r\n logger.error(\"monitorIframeForHash unable to find hash in url, timing out\");\r\n logger.errorPii(\"monitorIframeForHash polling timed out for url: \" + urlNavigate);\r\n clearInterval(intervalId);\r\n reject(ClientAuthError.createTokenRenewalTimeoutError());\r\n return;\r\n }\r\n var href;\r\n try {\r\n /*\r\n * Will throw if cross origin,\r\n * which should be caught and ignored\r\n * since we need the interval to keep running while on STS UI.\r\n */\r\n href = contentWindow.location.href;\r\n }\r\n catch (e) { }\r\n if (href && UrlUtils.urlContainsHash(href)) {\r\n logger.verbose(\"monitorIframeForHash found url in hash\");\r\n clearInterval(intervalId);\r\n resolve(contentWindow.location.hash);\r\n }\r\n }, WindowUtils.POLLING_INTERVAL_MS);\r\n });\r\n };\r\n /**\r\n * @hidden\r\n * Polls a popup until it loads a url with a hash\r\n * @ignore\r\n */\r\n WindowUtils.monitorPopupForHash = function (contentWindow, timeout, urlNavigate, logger) {\r\n return new Promise(function (resolve, reject) {\r\n /*\r\n * Polling for popups needs to be tick-based,\r\n * since a non-trivial amount of time can be spent on interaction (which should not count against the timeout).\r\n */\r\n var maxTicks = timeout / WindowUtils.POLLING_INTERVAL_MS;\r\n var ticks = 0;\r\n logger.verbose(\"monitorWindowForHash polling started\");\r\n var intervalId = setInterval(function () {\r\n if (contentWindow.closed) {\r\n logger.error(\"monitorWindowForHash window closed\");\r\n clearInterval(intervalId);\r\n reject(ClientAuthError.createUserCancelledError());\r\n return;\r\n }\r\n var href;\r\n try {\r\n /*\r\n * Will throw if cross origin,\r\n * which should be caught and ignored\r\n * since we need the interval to keep running while on STS UI.\r\n */\r\n href = contentWindow.location.href;\r\n }\r\n catch (e) { }\r\n // Don't process blank pages or cross domain\r\n if (!href || href === \"about:blank\") {\r\n return;\r\n }\r\n /*\r\n * Only run clock when we are on same domain for popups\r\n * as popup operations can take a long time.\r\n */\r\n ticks++;\r\n if (href && UrlUtils.urlContainsHash(href)) {\r\n logger.verbose(\"monitorPopupForHash found url in hash\");\r\n clearInterval(intervalId);\r\n resolve(contentWindow.location.hash);\r\n }\r\n else if (ticks > maxTicks) {\r\n logger.error(\"monitorPopupForHash unable to find hash in url, timing out\");\r\n logger.errorPii(\"monitorPopupForHash polling timed out for url: \" + urlNavigate);\r\n clearInterval(intervalId);\r\n reject(ClientAuthError.createTokenRenewalTimeoutError());\r\n }\r\n }, WindowUtils.POLLING_INTERVAL_MS);\r\n });\r\n };\r\n /**\r\n * @hidden\r\n * Loads iframe with authorization endpoint URL\r\n * @ignore\r\n */\r\n WindowUtils.loadFrame = function (urlNavigate, frameName, timeoutMs, logger) {\r\n var _this = this;\r\n /*\r\n * This trick overcomes iframe navigation in IE\r\n * IE does not load the page consistently in iframe\r\n */\r\n logger.infoPii(\"LoadFrame: \" + frameName);\r\n return new Promise(function (resolve, reject) {\r\n setTimeout(function () {\r\n var frameHandle = _this.loadFrameSync(urlNavigate, frameName, logger);\r\n if (!frameHandle) {\r\n reject(\"Unable to load iframe with name: \" + frameName);\r\n return;\r\n }\r\n resolve(frameHandle);\r\n }, timeoutMs);\r\n });\r\n };\r\n /**\r\n * @hidden\r\n * Loads the iframe synchronously when the navigateTimeFrame is set to `0`\r\n * @param urlNavigate\r\n * @param frameName\r\n * @param logger\r\n */\r\n WindowUtils.loadFrameSync = function (urlNavigate, frameName, logger) {\r\n var frameHandle = WindowUtils.addHiddenIFrame(frameName, logger);\r\n // returning to handle null in loadFrame, also to avoid null object access errors\r\n if (!frameHandle) {\r\n return null;\r\n }\r\n else if (frameHandle.src === \"\" || frameHandle.src === \"about:blank\") {\r\n frameHandle.src = urlNavigate;\r\n logger.infoPii(\"Frame Name : \" + frameName + \" Navigated to: \" + urlNavigate);\r\n }\r\n return frameHandle;\r\n };\r\n /**\r\n * @hidden\r\n * Adds the hidden iframe for silent token renewal.\r\n * @ignore\r\n */\r\n WindowUtils.addHiddenIFrame = function (iframeId, logger) {\r\n if (typeof iframeId === \"undefined\") {\r\n return null;\r\n }\r\n logger.infoPii(\"Add msal frame to document:\" + iframeId);\r\n var adalFrame = document.getElementById(iframeId);\r\n if (!adalFrame) {\r\n if (document.createElement &&\r\n document.documentElement &&\r\n (window.navigator.userAgent.indexOf(\"MSIE 5.0\") === -1)) {\r\n var ifr = document.createElement(\"iframe\");\r\n ifr.setAttribute(\"id\", iframeId);\r\n ifr.setAttribute(\"aria-hidden\", \"true\");\r\n ifr.style.visibility = \"hidden\";\r\n ifr.style.position = \"absolute\";\r\n ifr.style.width = ifr.style.height = \"0\";\r\n ifr.style.border = \"0\";\r\n ifr.setAttribute(\"sandbox\", \"allow-scripts allow-same-origin allow-forms\");\r\n adalFrame = document.getElementsByTagName(\"body\")[0].appendChild(ifr);\r\n }\r\n else if (document.body && document.body.insertAdjacentHTML) {\r\n document.body.insertAdjacentHTML(\"beforeend\", \"\");\r\n }\r\n if (window.frames && window.frames[iframeId]) {\r\n adalFrame = window.frames[iframeId];\r\n }\r\n }\r\n return adalFrame;\r\n };\r\n /**\r\n * @hidden\r\n * Removes a hidden iframe from the page.\r\n * @ignore\r\n */\r\n WindowUtils.removeHiddenIframe = function (iframe) {\r\n if (document.body === iframe.parentNode) {\r\n document.body.removeChild(iframe);\r\n }\r\n };\r\n /**\r\n * @hidden\r\n * Find and return the iframe element with the given hash\r\n * @ignore\r\n */\r\n WindowUtils.getIframeWithHash = function (hash) {\r\n var iframes = document.getElementsByTagName(\"iframe\");\r\n var iframeArray = Array.apply(null, Array(iframes.length)).map(function (iframe, index) { return iframes.item(index); }); // eslint-disable-line prefer-spread\r\n return iframeArray.filter(function (iframe) {\r\n try {\r\n return iframe.contentWindow.location.hash === hash;\r\n }\r\n catch (e) {\r\n return false;\r\n }\r\n })[0];\r\n };\r\n /**\r\n * @hidden\r\n * Returns an array of all the popups opened by MSAL\r\n * @ignore\r\n */\r\n WindowUtils.getPopups = function () {\r\n if (!window.openedWindows) {\r\n window.openedWindows = [];\r\n }\r\n return window.openedWindows;\r\n };\r\n /**\r\n * @hidden\r\n * Find and return the popup with the given hash\r\n * @ignore\r\n */\r\n WindowUtils.getPopUpWithHash = function (hash) {\r\n return WindowUtils.getPopups().filter(function (popup) {\r\n try {\r\n return popup.location.hash === hash;\r\n }\r\n catch (e) {\r\n return false;\r\n }\r\n })[0];\r\n };\r\n /**\r\n * @hidden\r\n * Add the popup to the known list of popups\r\n * @ignore\r\n */\r\n WindowUtils.trackPopup = function (popup) {\r\n WindowUtils.getPopups().push(popup);\r\n };\r\n /**\r\n * @hidden\r\n * Close all popups\r\n * @ignore\r\n */\r\n WindowUtils.closePopups = function () {\r\n WindowUtils.getPopups().forEach(function (popup) { return popup.close(); });\r\n };\r\n /**\r\n * @ignore\r\n *\r\n * blocks any login/acquireToken calls to reload from within a hidden iframe (generated for silent calls)\r\n */\r\n WindowUtils.blockReloadInHiddenIframes = function () {\r\n // return an error if called from the hidden iframe created by the msal js silent calls\r\n if (UrlUtils.urlContainsHash(window.location.hash) && WindowUtils.isInIframe()) {\r\n throw ClientAuthError.createBlockTokenRequestsInHiddenIframeError();\r\n }\r\n };\r\n /**\r\n *\r\n * @param cacheStorage\r\n */\r\n WindowUtils.checkIfBackButtonIsPressed = function (cacheStorage) {\r\n var redirectCache = cacheStorage.getItem(TemporaryCacheKeys.REDIRECT_REQUEST);\r\n // if redirect request is set and there is no hash\r\n if (redirectCache && !UrlUtils.urlContainsHash(window.location.hash)) {\r\n var splitCache = redirectCache.split(Constants.resourceDelimiter);\r\n splitCache.shift();\r\n var state = splitCache.length > 0 ? splitCache.join(Constants.resourceDelimiter) : null;\r\n cacheStorage.resetTempCacheItems(state);\r\n }\r\n };\r\n /**\r\n * Removes url fragment from browser url\r\n */\r\n WindowUtils.clearUrlFragment = function () {\r\n // Office.js sets history.replaceState to null\r\n if (typeof history.replaceState === \"function\") {\r\n // Full removes \"#\" from url\r\n history.replaceState(null, null, \"\" + window.location.pathname + window.location.search);\r\n }\r\n else {\r\n window.location.hash = \"\";\r\n }\r\n };\r\n /**\r\n * @hidden\r\n * Interval in milliseconds that we poll a window\r\n * @ignore\r\n */\r\n WindowUtils.POLLING_INTERVAL_MS = 50;\r\n return WindowUtils;\r\n}());\r\nexport { WindowUtils };\r\n//# sourceMappingURL=WindowUtils.js.map","/*\r\n * Copyright (c) Microsoft Corporation. All rights reserved.\r\n * Licensed under the MIT License.\r\n */\r\nimport * as tslib_1 from \"tslib\";\r\nimport { ResponseTypes, ServerHashParamKeys } from \"./Constants\";\r\n/*\r\n * Copyright (c) Microsoft Corporation. All rights reserved.\r\n * Licensed under the MIT License.\r\n */\r\n/**\r\n * @hidden\r\n */\r\nvar ResponseUtils = /** @class */ (function () {\r\n function ResponseUtils() {\r\n }\r\n ResponseUtils.setResponseIdToken = function (originalResponse, idTokenObj) {\r\n if (!originalResponse) {\r\n return null;\r\n }\r\n else if (!idTokenObj) {\r\n return originalResponse;\r\n }\r\n var exp = Number(idTokenObj.expiration);\r\n if (exp && !originalResponse.expiresOn) {\r\n originalResponse.expiresOn = new Date(exp * 1000);\r\n }\r\n return tslib_1.__assign({}, originalResponse, { idToken: idTokenObj, idTokenClaims: idTokenObj.claims, uniqueId: idTokenObj.objectId || idTokenObj.subject, tenantId: idTokenObj.tenantId });\r\n };\r\n ResponseUtils.buildAuthResponse = function (idToken, authResponse, serverAuthenticationRequest, account, scopes, accountState) {\r\n switch (serverAuthenticationRequest.responseType) {\r\n case ResponseTypes.id_token:\r\n authResponse = tslib_1.__assign({}, authResponse, { tokenType: ServerHashParamKeys.ID_TOKEN, account: account, scopes: scopes, accountState: accountState });\r\n authResponse = ResponseUtils.setResponseIdToken(authResponse, idToken);\r\n return (authResponse.idToken) ? authResponse : null;\r\n case ResponseTypes.id_token_token:\r\n authResponse = ResponseUtils.setResponseIdToken(authResponse, idToken);\r\n return (authResponse && authResponse.accessToken && authResponse.idToken) ? authResponse : null;\r\n case ResponseTypes.token:\r\n authResponse = ResponseUtils.setResponseIdToken(authResponse, idToken);\r\n return authResponse;\r\n default:\r\n return null;\r\n }\r\n };\r\n return ResponseUtils;\r\n}());\r\nexport { ResponseUtils };\r\n//# sourceMappingURL=ResponseUtils.js.map","/*\r\n * Copyright (c) Microsoft Corporation. All rights reserved.\r\n * Licensed under the MIT License.\r\n */\r\nimport * as tslib_1 from \"tslib\";\r\n/**\r\n * @hidden\r\n */\r\nimport { Authority } from \"./Authority\";\r\nimport { StringUtils } from \"../utils/StringUtils\";\r\nimport { ClientConfigurationError } from \"../error/ClientConfigurationError\";\r\nvar AuthorityFactory = /** @class */ (function () {\r\n function AuthorityFactory() {\r\n }\r\n AuthorityFactory.saveMetadataFromNetwork = function (authorityInstance, telemetryManager, correlationId) {\r\n return tslib_1.__awaiter(this, void 0, void 0, function () {\r\n var metadata;\r\n return tslib_1.__generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0: return [4 /*yield*/, authorityInstance.resolveEndpointsAsync(telemetryManager, correlationId)];\r\n case 1:\r\n metadata = _a.sent();\r\n this.metadataMap.set(authorityInstance.CanonicalAuthority, metadata);\r\n return [2 /*return*/, metadata];\r\n }\r\n });\r\n });\r\n };\r\n AuthorityFactory.getMetadata = function (authorityUrl) {\r\n return this.metadataMap.get(authorityUrl);\r\n };\r\n AuthorityFactory.saveMetadataFromConfig = function (authorityUrl, authorityMetadataJson) {\r\n try {\r\n if (authorityMetadataJson) {\r\n var parsedMetadata = JSON.parse(authorityMetadataJson);\r\n if (!parsedMetadata.authorization_endpoint || !parsedMetadata.end_session_endpoint || !parsedMetadata.issuer) {\r\n throw ClientConfigurationError.createInvalidAuthorityMetadataError();\r\n }\r\n this.metadataMap.set(authorityUrl, {\r\n AuthorizationEndpoint: parsedMetadata.authorization_endpoint,\r\n EndSessionEndpoint: parsedMetadata.end_session_endpoint,\r\n Issuer: parsedMetadata.issuer\r\n });\r\n }\r\n }\r\n catch (e) {\r\n throw ClientConfigurationError.createInvalidAuthorityMetadataError();\r\n }\r\n };\r\n /**\r\n * Create an authority object of the correct type based on the url\r\n * Performs basic authority validation - checks to see if the authority is of a valid type (eg aad, b2c)\r\n */\r\n AuthorityFactory.CreateInstance = function (authorityUrl, validateAuthority, authorityMetadata) {\r\n if (StringUtils.isEmpty(authorityUrl)) {\r\n return null;\r\n }\r\n if (authorityMetadata) {\r\n // todo: log statements\r\n this.saveMetadataFromConfig(authorityUrl, authorityMetadata);\r\n }\r\n return new Authority(authorityUrl, validateAuthority, this.metadataMap.get(authorityUrl));\r\n };\r\n AuthorityFactory.metadataMap = new Map();\r\n return AuthorityFactory;\r\n}());\r\nexport { AuthorityFactory };\r\n//# sourceMappingURL=AuthorityFactory.js.map","/*\r\n * Copyright (c) Microsoft Corporation. All rights reserved.\r\n * Licensed under the MIT License.\r\n */\r\nimport * as tslib_1 from \"tslib\";\r\nimport { Logger } from \"./Logger\";\r\nimport { UrlUtils } from \"./utils/UrlUtils\";\r\n/**\r\n * Defaults for the Configuration Options\r\n */\r\nvar FRAME_TIMEOUT = 6000;\r\nvar OFFSET = 300;\r\nvar NAVIGATE_FRAME_WAIT = 500;\r\nvar DEFAULT_AUTH_OPTIONS = {\r\n clientId: \"\",\r\n authority: null,\r\n validateAuthority: true,\r\n authorityMetadata: \"\",\r\n knownAuthorities: [],\r\n redirectUri: function () { return UrlUtils.getCurrentUrl(); },\r\n postLogoutRedirectUri: function () { return UrlUtils.getCurrentUrl(); },\r\n navigateToLoginRequestUrl: true\r\n};\r\nvar DEFAULT_CACHE_OPTIONS = {\r\n cacheLocation: \"sessionStorage\",\r\n storeAuthStateInCookie: false\r\n};\r\nvar DEFAULT_SYSTEM_OPTIONS = {\r\n logger: new Logger(null),\r\n loadFrameTimeout: FRAME_TIMEOUT,\r\n tokenRenewalOffsetSeconds: OFFSET,\r\n navigateFrameWait: NAVIGATE_FRAME_WAIT\r\n};\r\nvar DEFAULT_FRAMEWORK_OPTIONS = {\r\n isAngular: false,\r\n unprotectedResources: new Array(),\r\n protectedResourceMap: new Map()\r\n};\r\n/**\r\n * MSAL function that sets the default options when not explicitly configured from app developer\r\n *\r\n * @param TAuthOptions\r\n * @param TCacheOptions\r\n * @param TSystemOptions\r\n * @param TFrameworkOptions\r\n * @param TAuthorityDataOptions\r\n *\r\n * @returns TConfiguration object\r\n */\r\nexport function buildConfiguration(_a) {\r\n var auth = _a.auth, _b = _a.cache, cache = _b === void 0 ? {} : _b, _c = _a.system, system = _c === void 0 ? {} : _c, _d = _a.framework, framework = _d === void 0 ? {} : _d;\r\n var overlayedConfig = {\r\n auth: tslib_1.__assign({}, DEFAULT_AUTH_OPTIONS, auth),\r\n cache: tslib_1.__assign({}, DEFAULT_CACHE_OPTIONS, cache),\r\n system: tslib_1.__assign({}, DEFAULT_SYSTEM_OPTIONS, system),\r\n framework: tslib_1.__assign({}, DEFAULT_FRAMEWORK_OPTIONS, framework)\r\n };\r\n return overlayedConfig;\r\n}\r\n//# sourceMappingURL=Configuration.js.map","/*\r\n * Copyright (c) Microsoft Corporation. All rights reserved.\r\n * Licensed under the MIT License.\r\n */\r\nimport * as tslib_1 from \"tslib\";\r\nimport { AuthError } from \"./AuthError\";\r\nexport var ServerErrorMessage = {\r\n serverUnavailable: {\r\n code: \"server_unavailable\",\r\n desc: \"Server is temporarily unavailable.\"\r\n },\r\n unknownServerError: {\r\n code: \"unknown_server_error\"\r\n },\r\n};\r\n/**\r\n * Error thrown when there is an error with the server code, for example, unavailability.\r\n */\r\nvar ServerError = /** @class */ (function (_super) {\r\n tslib_1.__extends(ServerError, _super);\r\n function ServerError(errorCode, errorMessage) {\r\n var _this = _super.call(this, errorCode, errorMessage) || this;\r\n _this.name = \"ServerError\";\r\n Object.setPrototypeOf(_this, ServerError.prototype);\r\n return _this;\r\n }\r\n ServerError.createServerUnavailableError = function () {\r\n return new ServerError(ServerErrorMessage.serverUnavailable.code, ServerErrorMessage.serverUnavailable.desc);\r\n };\r\n ServerError.createUnknownServerError = function (errorDesc) {\r\n return new ServerError(ServerErrorMessage.unknownServerError.code, errorDesc);\r\n };\r\n return ServerError;\r\n}(AuthError));\r\nexport { ServerError };\r\n//# sourceMappingURL=ServerError.js.map","/*\r\n * Copyright (c) Microsoft Corporation. All rights reserved.\r\n * Licensed under the MIT License.\r\n */\r\nimport * as tslib_1 from \"tslib\";\r\nimport { ServerError } from \"./ServerError\";\r\nexport var InteractionRequiredAuthErrorMessage = {\r\n interactionRequired: {\r\n code: \"interaction_required\"\r\n },\r\n consentRequired: {\r\n code: \"consent_required\"\r\n },\r\n loginRequired: {\r\n code: \"login_required\"\r\n },\r\n};\r\n/**\r\n * Error thrown when the user is required to perform an interactive token request.\r\n */\r\nvar InteractionRequiredAuthError = /** @class */ (function (_super) {\r\n tslib_1.__extends(InteractionRequiredAuthError, _super);\r\n function InteractionRequiredAuthError(errorCode, errorMessage) {\r\n var _this = _super.call(this, errorCode, errorMessage) || this;\r\n _this.name = \"InteractionRequiredAuthError\";\r\n Object.setPrototypeOf(_this, InteractionRequiredAuthError.prototype);\r\n return _this;\r\n }\r\n InteractionRequiredAuthError.isInteractionRequiredError = function (errorString) {\r\n var interactionRequiredCodes = [\r\n InteractionRequiredAuthErrorMessage.interactionRequired.code,\r\n InteractionRequiredAuthErrorMessage.consentRequired.code,\r\n InteractionRequiredAuthErrorMessage.loginRequired.code\r\n ];\r\n return errorString && interactionRequiredCodes.indexOf(errorString) > -1;\r\n };\r\n InteractionRequiredAuthError.createLoginRequiredAuthError = function (errorDesc) {\r\n return new InteractionRequiredAuthError(InteractionRequiredAuthErrorMessage.loginRequired.code, errorDesc);\r\n };\r\n InteractionRequiredAuthError.createInteractionRequiredAuthError = function (errorDesc) {\r\n return new InteractionRequiredAuthError(InteractionRequiredAuthErrorMessage.interactionRequired.code, errorDesc);\r\n };\r\n InteractionRequiredAuthError.createConsentRequiredAuthError = function (errorDesc) {\r\n return new InteractionRequiredAuthError(InteractionRequiredAuthErrorMessage.consentRequired.code, errorDesc);\r\n };\r\n return InteractionRequiredAuthError;\r\n}(ServerError));\r\nexport { InteractionRequiredAuthError };\r\n//# sourceMappingURL=InteractionRequiredAuthError.js.map","/*\r\n * Copyright (c) Microsoft Corporation. All rights reserved.\r\n * Licensed under the MIT License.\r\n */\r\nexport function buildResponseStateOnly(state) {\r\n return {\r\n uniqueId: \"\",\r\n tenantId: \"\",\r\n tokenType: \"\",\r\n idToken: null,\r\n idTokenClaims: null,\r\n accessToken: \"\",\r\n scopes: null,\r\n expiresOn: null,\r\n account: null,\r\n accountState: state,\r\n fromCache: false\r\n };\r\n}\r\n//# sourceMappingURL=AuthResponse.js.map","/*\r\n * Copyright (c) Microsoft Corporation. All rights reserved.\r\n * Licensed under the MIT License.\r\n */\r\nexport var EVENT_NAME_PREFIX = \"msal.\";\r\nexport var EVENT_NAME_KEY = \"event_name\";\r\nexport var START_TIME_KEY = \"start_time\";\r\nexport var ELAPSED_TIME_KEY = \"elapsed_time\";\r\nexport var TELEMETRY_BLOB_EVENT_NAMES = {\r\n MsalCorrelationIdConstStrKey: \"Microsoft.MSAL.correlation_id\",\r\n ApiTelemIdConstStrKey: \"msal.api_telem_id\",\r\n ApiIdConstStrKey: \"msal.api_id\",\r\n BrokerAppConstStrKey: \"Microsoft_MSAL_broker_app\",\r\n CacheEventCountConstStrKey: \"Microsoft_MSAL_cache_event_count\",\r\n HttpEventCountTelemetryBatchKey: \"Microsoft_MSAL_http_event_count\",\r\n IdpConstStrKey: \"Microsoft_MSAL_idp\",\r\n IsSilentTelemetryBatchKey: \"\",\r\n IsSuccessfulConstStrKey: \"Microsoft_MSAL_is_successful\",\r\n ResponseTimeConstStrKey: \"Microsoft_MSAL_response_time\",\r\n TenantIdConstStrKey: \"Microsoft_MSAL_tenant_id\",\r\n UiEventCountTelemetryBatchKey: \"Microsoft_MSAL_ui_event_count\"\r\n};\r\n// This is used to replace the real tenant in telemetry info\r\nexport var TENANT_PLACEHOLDER = \"\";\r\n//# sourceMappingURL=TelemetryConstants.js.map","/*\r\n * Copyright (c) Microsoft Corporation. All rights reserved.\r\n * Licensed under the MIT License.\r\n */\r\nvar _a;\r\nimport * as tslib_1 from \"tslib\";\r\nimport TelemetryEvent from \"./TelemetryEvent\";\r\nimport { TELEMETRY_BLOB_EVENT_NAMES } from \"./TelemetryConstants\";\r\nimport { scrubTenantFromUri, hashPersonalIdentifier, prependEventNamePrefix } from \"./TelemetryUtils\";\r\nexport var EVENT_KEYS = {\r\n AUTHORITY: prependEventNamePrefix(\"authority\"),\r\n AUTHORITY_TYPE: prependEventNamePrefix(\"authority_type\"),\r\n PROMPT: prependEventNamePrefix(\"ui_behavior\"),\r\n TENANT_ID: prependEventNamePrefix(\"tenant_id\"),\r\n USER_ID: prependEventNamePrefix(\"user_id\"),\r\n WAS_SUCESSFUL: prependEventNamePrefix(\"was_successful\"),\r\n API_ERROR_CODE: prependEventNamePrefix(\"api_error_code\"),\r\n LOGIN_HINT: prependEventNamePrefix(\"login_hint\")\r\n};\r\nexport var API_CODE;\r\n(function (API_CODE) {\r\n API_CODE[API_CODE[\"AcquireTokenRedirect\"] = 2001] = \"AcquireTokenRedirect\";\r\n API_CODE[API_CODE[\"AcquireTokenSilent\"] = 2002] = \"AcquireTokenSilent\";\r\n API_CODE[API_CODE[\"AcquireTokenPopup\"] = 2003] = \"AcquireTokenPopup\";\r\n API_CODE[API_CODE[\"LoginRedirect\"] = 2004] = \"LoginRedirect\";\r\n API_CODE[API_CODE[\"LoginPopup\"] = 2005] = \"LoginPopup\";\r\n API_CODE[API_CODE[\"Logout\"] = 2006] = \"Logout\";\r\n})(API_CODE || (API_CODE = {}));\r\nexport var API_EVENT_IDENTIFIER;\r\n(function (API_EVENT_IDENTIFIER) {\r\n API_EVENT_IDENTIFIER[\"AcquireTokenRedirect\"] = \"AcquireTokenRedirect\";\r\n API_EVENT_IDENTIFIER[\"AcquireTokenSilent\"] = \"AcquireTokenSilent\";\r\n API_EVENT_IDENTIFIER[\"AcquireTokenPopup\"] = \"AcquireTokenPopup\";\r\n API_EVENT_IDENTIFIER[\"LoginRedirect\"] = \"LoginRedirect\";\r\n API_EVENT_IDENTIFIER[\"LoginPopup\"] = \"LoginPopup\";\r\n API_EVENT_IDENTIFIER[\"Logout\"] = \"Logout\";\r\n})(API_EVENT_IDENTIFIER || (API_EVENT_IDENTIFIER = {}));\r\nvar mapEventIdentiferToCode = (_a = {},\r\n _a[API_EVENT_IDENTIFIER.AcquireTokenSilent] = API_CODE.AcquireTokenSilent,\r\n _a[API_EVENT_IDENTIFIER.AcquireTokenPopup] = API_CODE.AcquireTokenPopup,\r\n _a[API_EVENT_IDENTIFIER.AcquireTokenRedirect] = API_CODE.AcquireTokenRedirect,\r\n _a[API_EVENT_IDENTIFIER.LoginPopup] = API_CODE.LoginPopup,\r\n _a[API_EVENT_IDENTIFIER.LoginRedirect] = API_CODE.LoginRedirect,\r\n _a[API_EVENT_IDENTIFIER.Logout] = API_CODE.Logout,\r\n _a);\r\nvar ApiEvent = /** @class */ (function (_super) {\r\n tslib_1.__extends(ApiEvent, _super);\r\n function ApiEvent(correlationId, piiEnabled, apiEventIdentifier) {\r\n var _this = _super.call(this, prependEventNamePrefix(\"api_event\"), correlationId, apiEventIdentifier) || this;\r\n if (apiEventIdentifier) {\r\n _this.apiCode = mapEventIdentiferToCode[apiEventIdentifier];\r\n _this.apiEventIdentifier = apiEventIdentifier;\r\n }\r\n _this.piiEnabled = piiEnabled;\r\n return _this;\r\n }\r\n Object.defineProperty(ApiEvent.prototype, \"apiEventIdentifier\", {\r\n set: function (apiEventIdentifier) {\r\n this.event[TELEMETRY_BLOB_EVENT_NAMES.ApiTelemIdConstStrKey] = apiEventIdentifier;\r\n },\r\n enumerable: true,\r\n configurable: true\r\n });\r\n Object.defineProperty(ApiEvent.prototype, \"apiCode\", {\r\n set: function (apiCode) {\r\n this.event[TELEMETRY_BLOB_EVENT_NAMES.ApiIdConstStrKey] = apiCode;\r\n },\r\n enumerable: true,\r\n configurable: true\r\n });\r\n Object.defineProperty(ApiEvent.prototype, \"authority\", {\r\n set: function (uri) {\r\n this.event[EVENT_KEYS.AUTHORITY] = scrubTenantFromUri(uri).toLowerCase();\r\n },\r\n enumerable: true,\r\n configurable: true\r\n });\r\n Object.defineProperty(ApiEvent.prototype, \"apiErrorCode\", {\r\n set: function (errorCode) {\r\n this.event[EVENT_KEYS.API_ERROR_CODE] = errorCode;\r\n },\r\n enumerable: true,\r\n configurable: true\r\n });\r\n Object.defineProperty(ApiEvent.prototype, \"tenantId\", {\r\n set: function (tenantId) {\r\n this.event[EVENT_KEYS.TENANT_ID] = this.piiEnabled && tenantId ?\r\n hashPersonalIdentifier(tenantId)\r\n : null;\r\n },\r\n enumerable: true,\r\n configurable: true\r\n });\r\n Object.defineProperty(ApiEvent.prototype, \"accountId\", {\r\n set: function (accountId) {\r\n this.event[EVENT_KEYS.USER_ID] = this.piiEnabled && accountId ?\r\n hashPersonalIdentifier(accountId)\r\n : null;\r\n },\r\n enumerable: true,\r\n configurable: true\r\n });\r\n Object.defineProperty(ApiEvent.prototype, \"wasSuccessful\", {\r\n get: function () {\r\n return this.event[EVENT_KEYS.WAS_SUCESSFUL] === true;\r\n },\r\n set: function (wasSuccessful) {\r\n this.event[EVENT_KEYS.WAS_SUCESSFUL] = wasSuccessful;\r\n },\r\n enumerable: true,\r\n configurable: true\r\n });\r\n Object.defineProperty(ApiEvent.prototype, \"loginHint\", {\r\n set: function (loginHint) {\r\n this.event[EVENT_KEYS.LOGIN_HINT] = this.piiEnabled && loginHint ?\r\n hashPersonalIdentifier(loginHint)\r\n : null;\r\n },\r\n enumerable: true,\r\n configurable: true\r\n });\r\n Object.defineProperty(ApiEvent.prototype, \"authorityType\", {\r\n set: function (authorityType) {\r\n this.event[EVENT_KEYS.AUTHORITY_TYPE] = authorityType.toLowerCase();\r\n },\r\n enumerable: true,\r\n configurable: true\r\n });\r\n Object.defineProperty(ApiEvent.prototype, \"promptType\", {\r\n set: function (promptType) {\r\n this.event[EVENT_KEYS.PROMPT] = promptType.toLowerCase();\r\n },\r\n enumerable: true,\r\n configurable: true\r\n });\r\n return ApiEvent;\r\n}(TelemetryEvent));\r\nexport default ApiEvent;\r\n//# sourceMappingURL=ApiEvent.js.map","/*\r\n * Copyright (c) Microsoft Corporation. All rights reserved.\r\n * Licensed under the MIT License.\r\n */\r\nimport { TENANT_PLACEHOLDER, EVENT_NAME_PREFIX } from \"./TelemetryConstants\";\r\nimport { CryptoUtils } from \"../utils/CryptoUtils\";\r\nimport { UrlUtils } from \"../utils/UrlUtils\";\r\nimport { Authority } from \"../authority/Authority\";\r\nexport var scrubTenantFromUri = function (uri) {\r\n var url = UrlUtils.GetUrlComponents(uri);\r\n // validate trusted host\r\n if (Authority.isAdfs(uri)) {\r\n /**\r\n * returning what was passed because the library needs to work with uris that are non\r\n * AAD trusted but passed by users such as B2C or others.\r\n * HTTP Events for instance can take a url to the open id config endpoint\r\n */\r\n return uri;\r\n }\r\n var pathParams = url.PathSegments;\r\n if (pathParams && pathParams.length >= 2) {\r\n var tenantPosition = pathParams[1] === \"tfp\" ? 2 : 1;\r\n if (tenantPosition < pathParams.length) {\r\n pathParams[tenantPosition] = TENANT_PLACEHOLDER;\r\n }\r\n }\r\n return url.Protocol + \"//\" + url.HostNameAndPort + \"/\" + pathParams.join(\"/\");\r\n};\r\nexport var hashPersonalIdentifier = function (valueToHash) {\r\n /*\r\n * TODO sha256 this\r\n * Current test runner is being funny with node libs that are webpacked anyway\r\n * need a different solution\r\n */\r\n return CryptoUtils.base64Encode(valueToHash);\r\n};\r\nexport var prependEventNamePrefix = function (suffix) { return \"\" + EVENT_NAME_PREFIX + (suffix || \"\"); };\r\nexport var supportsBrowserPerformance = function () { return !!(typeof window !== \"undefined\" &&\r\n \"performance\" in window &&\r\n window.performance.mark &&\r\n window.performance.measure); };\r\nexport var endBrowserPerformanceMeasurement = function (measureName, startMark, endMark) {\r\n if (supportsBrowserPerformance()) {\r\n window.performance.mark(endMark);\r\n window.performance.measure(measureName, startMark, endMark);\r\n window.performance.clearMeasures(measureName);\r\n window.performance.clearMarks(startMark);\r\n window.performance.clearMarks(endMark);\r\n }\r\n};\r\nexport var startBrowserPerformanceMeasurement = function (startMark) {\r\n if (supportsBrowserPerformance()) {\r\n window.performance.mark(startMark);\r\n }\r\n};\r\n//# sourceMappingURL=TelemetryUtils.js.map","/*\r\n * Copyright (c) Microsoft Corporation. All rights reserved.\r\n * Licensed under the MIT License.\r\n */\r\nimport * as tslib_1 from \"tslib\";\r\nimport { TELEMETRY_BLOB_EVENT_NAMES, EVENT_NAME_KEY, START_TIME_KEY, ELAPSED_TIME_KEY } from \"./TelemetryConstants\";\r\nimport { prependEventNamePrefix, startBrowserPerformanceMeasurement, endBrowserPerformanceMeasurement } from \"./TelemetryUtils\";\r\nimport { CryptoUtils } from \"../utils/CryptoUtils\";\r\nvar TelemetryEvent = /** @class */ (function () {\r\n function TelemetryEvent(eventName, correlationId, eventLabel) {\r\n var _a;\r\n this.eventId = CryptoUtils.createNewGuid();\r\n this.label = eventLabel;\r\n this.event = (_a = {},\r\n _a[prependEventNamePrefix(EVENT_NAME_KEY)] = eventName,\r\n _a[prependEventNamePrefix(ELAPSED_TIME_KEY)] = -1,\r\n _a[\"\" + TELEMETRY_BLOB_EVENT_NAMES.MsalCorrelationIdConstStrKey] = correlationId,\r\n _a);\r\n }\r\n TelemetryEvent.prototype.setElapsedTime = function (time) {\r\n this.event[prependEventNamePrefix(ELAPSED_TIME_KEY)] = time;\r\n };\r\n TelemetryEvent.prototype.stop = function () {\r\n // Set duration of event\r\n this.setElapsedTime(+Date.now() - +this.startTimestamp);\r\n endBrowserPerformanceMeasurement(this.displayName, this.perfStartMark, this.perfEndMark);\r\n };\r\n TelemetryEvent.prototype.start = function () {\r\n this.startTimestamp = Date.now();\r\n this.event[prependEventNamePrefix(START_TIME_KEY)] = this.startTimestamp;\r\n startBrowserPerformanceMeasurement(this.perfStartMark);\r\n };\r\n Object.defineProperty(TelemetryEvent.prototype, \"telemetryCorrelationId\", {\r\n get: function () {\r\n return this.event[\"\" + TELEMETRY_BLOB_EVENT_NAMES.MsalCorrelationIdConstStrKey];\r\n },\r\n set: function (value) {\r\n this.event[\"\" + TELEMETRY_BLOB_EVENT_NAMES.MsalCorrelationIdConstStrKey] = value;\r\n },\r\n enumerable: true,\r\n configurable: true\r\n });\r\n Object.defineProperty(TelemetryEvent.prototype, \"eventName\", {\r\n get: function () {\r\n return this.event[prependEventNamePrefix(EVENT_NAME_KEY)];\r\n },\r\n enumerable: true,\r\n configurable: true\r\n });\r\n TelemetryEvent.prototype.get = function () {\r\n return tslib_1.__assign({}, this.event, { eventId: this.eventId });\r\n };\r\n Object.defineProperty(TelemetryEvent.prototype, \"key\", {\r\n get: function () {\r\n return this.telemetryCorrelationId + \"_\" + this.eventId + \"-\" + this.eventName;\r\n },\r\n enumerable: true,\r\n configurable: true\r\n });\r\n Object.defineProperty(TelemetryEvent.prototype, \"displayName\", {\r\n get: function () {\r\n return \"Msal-\" + this.label + \"-\" + this.telemetryCorrelationId;\r\n },\r\n enumerable: true,\r\n configurable: true\r\n });\r\n Object.defineProperty(TelemetryEvent.prototype, \"perfStartMark\", {\r\n get: function () {\r\n return \"start-\" + this.key;\r\n },\r\n enumerable: true,\r\n configurable: true\r\n });\r\n Object.defineProperty(TelemetryEvent.prototype, \"perfEndMark\", {\r\n get: function () {\r\n return \"end-\" + this.key;\r\n },\r\n enumerable: true,\r\n configurable: true\r\n });\r\n return TelemetryEvent;\r\n}());\r\nexport default TelemetryEvent;\r\n//# sourceMappingURL=TelemetryEvent.js.map","/*\r\n * Copyright (c) Microsoft Corporation. All rights reserved.\r\n * Licensed under the MIT License.\r\n */\r\nimport * as tslib_1 from \"tslib\";\r\nimport { TELEMETRY_BLOB_EVENT_NAMES } from \"./TelemetryConstants\";\r\nimport TelemetryEvent from \"./TelemetryEvent\";\r\nimport { prependEventNamePrefix } from \"./TelemetryUtils\";\r\nvar DefaultEvent = /** @class */ (function (_super) {\r\n tslib_1.__extends(DefaultEvent, _super);\r\n // TODO Platform Type\r\n function DefaultEvent(platform, correlationId, clientId, eventCount) {\r\n var _this = _super.call(this, prependEventNamePrefix(\"default_event\"), correlationId, \"DefaultEvent\") || this;\r\n _this.event[prependEventNamePrefix(\"client_id\")] = clientId;\r\n _this.event[prependEventNamePrefix(\"sdk_plaform\")] = platform.sdk;\r\n _this.event[prependEventNamePrefix(\"sdk_version\")] = platform.sdkVersion;\r\n _this.event[prependEventNamePrefix(\"application_name\")] = platform.applicationName;\r\n _this.event[prependEventNamePrefix(\"application_version\")] = platform.applicationVersion;\r\n _this.event[prependEventNamePrefix(\"effective_connection_speed\")] = platform.networkInformation && platform.networkInformation.connectionSpeed;\r\n _this.event[\"\" + TELEMETRY_BLOB_EVENT_NAMES.UiEventCountTelemetryBatchKey] = _this.getEventCount(prependEventNamePrefix(\"ui_event\"), eventCount);\r\n _this.event[\"\" + TELEMETRY_BLOB_EVENT_NAMES.HttpEventCountTelemetryBatchKey] = _this.getEventCount(prependEventNamePrefix(\"http_event\"), eventCount);\r\n _this.event[\"\" + TELEMETRY_BLOB_EVENT_NAMES.CacheEventCountConstStrKey] = _this.getEventCount(prependEventNamePrefix(\"cache_event\"), eventCount);\r\n return _this;\r\n // / Device id?\r\n }\r\n DefaultEvent.prototype.getEventCount = function (eventName, eventCount) {\r\n if (!eventCount[eventName]) {\r\n return 0;\r\n }\r\n return eventCount[eventName];\r\n };\r\n return DefaultEvent;\r\n}(TelemetryEvent));\r\nexport default DefaultEvent;\r\n//# sourceMappingURL=DefaultEvent.js.map","/*\r\n * Copyright (c) Microsoft Corporation. All rights reserved.\r\n * Licensed under the MIT License.\r\n */\r\nimport * as tslib_1 from \"tslib\";\r\nimport TelemetryEvent from \"./TelemetryEvent\";\r\nimport { scrubTenantFromUri, prependEventNamePrefix } from \"./TelemetryUtils\";\r\nimport { ServerRequestParameters } from \"../ServerRequestParameters\";\r\nexport var EVENT_KEYS = {\r\n HTTP_PATH: prependEventNamePrefix(\"http_path\"),\r\n USER_AGENT: prependEventNamePrefix(\"user_agent\"),\r\n QUERY_PARAMETERS: prependEventNamePrefix(\"query_parameters\"),\r\n API_VERSION: prependEventNamePrefix(\"api_version\"),\r\n RESPONSE_CODE: prependEventNamePrefix(\"response_code\"),\r\n O_AUTH_ERROR_CODE: prependEventNamePrefix(\"oauth_error_code\"),\r\n HTTP_METHOD: prependEventNamePrefix(\"http_method\"),\r\n REQUEST_ID_HEADER: prependEventNamePrefix(\"request_id_header\"),\r\n SPE_INFO: prependEventNamePrefix(\"spe_info\"),\r\n SERVER_ERROR_CODE: prependEventNamePrefix(\"server_error_code\"),\r\n SERVER_SUB_ERROR_CODE: prependEventNamePrefix(\"server_sub_error_code\"),\r\n URL: prependEventNamePrefix(\"url\")\r\n};\r\nvar HttpEvent = /** @class */ (function (_super) {\r\n tslib_1.__extends(HttpEvent, _super);\r\n function HttpEvent(correlationId, eventLabel) {\r\n return _super.call(this, prependEventNamePrefix(\"http_event\"), correlationId, eventLabel) || this;\r\n }\r\n Object.defineProperty(HttpEvent.prototype, \"url\", {\r\n set: function (url) {\r\n var scrubbedUri = scrubTenantFromUri(url);\r\n this.event[EVENT_KEYS.URL] = scrubbedUri && scrubbedUri.toLowerCase();\r\n },\r\n enumerable: true,\r\n configurable: true\r\n });\r\n Object.defineProperty(HttpEvent.prototype, \"httpPath\", {\r\n set: function (httpPath) {\r\n this.event[EVENT_KEYS.HTTP_PATH] = scrubTenantFromUri(httpPath).toLowerCase();\r\n },\r\n enumerable: true,\r\n configurable: true\r\n });\r\n Object.defineProperty(HttpEvent.prototype, \"userAgent\", {\r\n set: function (userAgent) {\r\n this.event[EVENT_KEYS.USER_AGENT] = userAgent;\r\n },\r\n enumerable: true,\r\n configurable: true\r\n });\r\n Object.defineProperty(HttpEvent.prototype, \"queryParams\", {\r\n set: function (queryParams) {\r\n this.event[EVENT_KEYS.QUERY_PARAMETERS] = ServerRequestParameters.generateQueryParametersString(queryParams);\r\n },\r\n enumerable: true,\r\n configurable: true\r\n });\r\n Object.defineProperty(HttpEvent.prototype, \"apiVersion\", {\r\n set: function (apiVersion) {\r\n this.event[EVENT_KEYS.API_VERSION] = apiVersion.toLowerCase();\r\n },\r\n enumerable: true,\r\n configurable: true\r\n });\r\n Object.defineProperty(HttpEvent.prototype, \"httpResponseStatus\", {\r\n set: function (statusCode) {\r\n this.event[EVENT_KEYS.RESPONSE_CODE] = statusCode;\r\n },\r\n enumerable: true,\r\n configurable: true\r\n });\r\n Object.defineProperty(HttpEvent.prototype, \"oAuthErrorCode\", {\r\n set: function (errorCode) {\r\n this.event[EVENT_KEYS.O_AUTH_ERROR_CODE] = errorCode;\r\n },\r\n enumerable: true,\r\n configurable: true\r\n });\r\n Object.defineProperty(HttpEvent.prototype, \"httpMethod\", {\r\n set: function (httpMethod) {\r\n this.event[EVENT_KEYS.HTTP_METHOD] = httpMethod;\r\n },\r\n enumerable: true,\r\n configurable: true\r\n });\r\n Object.defineProperty(HttpEvent.prototype, \"requestIdHeader\", {\r\n set: function (requestIdHeader) {\r\n this.event[EVENT_KEYS.REQUEST_ID_HEADER] = requestIdHeader;\r\n },\r\n enumerable: true,\r\n configurable: true\r\n });\r\n Object.defineProperty(HttpEvent.prototype, \"speInfo\", {\r\n /**\r\n * Indicates whether the request was executed on a ring serving SPE traffic.\r\n * An empty string indicates this occurred on an outer ring, and the string \"I\"\r\n * indicates the request occurred on the inner ring\r\n */\r\n set: function (speInfo) {\r\n this.event[EVENT_KEYS.SPE_INFO] = speInfo;\r\n },\r\n enumerable: true,\r\n configurable: true\r\n });\r\n Object.defineProperty(HttpEvent.prototype, \"serverErrorCode\", {\r\n set: function (errorCode) {\r\n this.event[EVENT_KEYS.SERVER_ERROR_CODE] = errorCode;\r\n },\r\n enumerable: true,\r\n configurable: true\r\n });\r\n Object.defineProperty(HttpEvent.prototype, \"serverSubErrorCode\", {\r\n set: function (subErrorCode) {\r\n this.event[EVENT_KEYS.SERVER_SUB_ERROR_CODE] = subErrorCode;\r\n },\r\n enumerable: true,\r\n configurable: true\r\n });\r\n return HttpEvent;\r\n}(TelemetryEvent));\r\nexport default HttpEvent;\r\n//# sourceMappingURL=HttpEvent.js.map","/*\r\n * Copyright (c) Microsoft Corporation. All rights reserved.\r\n * Licensed under the MIT License.\r\n */\r\nimport * as tslib_1 from \"tslib\";\r\nimport DefaultEvent from \"./DefaultEvent\";\r\nimport { libraryVersion, Constants } from \"../utils/Constants\";\r\nimport ApiEvent from \"./ApiEvent\";\r\nimport HttpEvent from \"./HttpEvent\";\r\nvar TelemetryManager = /** @class */ (function () {\r\n function TelemetryManager(config, telemetryEmitter, logger) {\r\n // correlation Id to list of events\r\n this.completedEvents = {};\r\n // event key to event\r\n this.inProgressEvents = {};\r\n // correlation id to map of eventname to count\r\n this.eventCountByCorrelationId = {};\r\n // Implement after API EVENT\r\n this.onlySendFailureTelemetry = false;\r\n // TODO THROW if bad options\r\n this.telemetryPlatform = tslib_1.__assign({ sdk: Constants.libraryName, sdkVersion: libraryVersion(), networkInformation: {\r\n // @ts-ignore\r\n connectionSpeed: typeof navigator !== \"undefined\" && navigator.connection && navigator.connection.effectiveType\r\n } }, config.platform);\r\n this.clientId = config.clientId;\r\n this.onlySendFailureTelemetry = config.onlySendFailureTelemetry;\r\n /*\r\n * TODO, when i get to wiring this through, think about what it means if\r\n * a developer does not implement telem at all, we still instrument, but telemetryEmitter can be\r\n * optional?\r\n */\r\n this.telemetryEmitter = telemetryEmitter;\r\n this.logger = logger;\r\n }\r\n TelemetryManager.getTelemetrymanagerStub = function (clientId, logger) {\r\n var applicationName = \"UnSetStub\";\r\n var applicationVersion = \"0.0\";\r\n var telemetryEmitter = function () { };\r\n var telemetryPlatform = {\r\n applicationName: applicationName,\r\n applicationVersion: applicationVersion\r\n };\r\n var telemetryManagerConfig = {\r\n platform: telemetryPlatform,\r\n clientId: clientId\r\n };\r\n return new this(telemetryManagerConfig, telemetryEmitter, logger);\r\n };\r\n TelemetryManager.prototype.startEvent = function (event) {\r\n this.logger.verbose(\"Telemetry Event started: \" + event.key);\r\n if (!this.telemetryEmitter) {\r\n return;\r\n }\r\n event.start();\r\n this.inProgressEvents[event.key] = event;\r\n };\r\n TelemetryManager.prototype.stopEvent = function (event) {\r\n this.logger.verbose(\"Telemetry Event stopped: \" + event.key);\r\n if (!this.telemetryEmitter || !this.inProgressEvents[event.key]) {\r\n return;\r\n }\r\n event.stop();\r\n this.incrementEventCount(event);\r\n var completedEvents = this.completedEvents[event.telemetryCorrelationId];\r\n this.completedEvents[event.telemetryCorrelationId] = (completedEvents || []).concat([event]);\r\n delete this.inProgressEvents[event.key];\r\n };\r\n TelemetryManager.prototype.flush = function (correlationId) {\r\n var _this = this;\r\n this.logger.verbose(\"Flushing telemetry events: \" + correlationId);\r\n // If there is only unfinished events should this still return them?\r\n if (!this.telemetryEmitter || !this.completedEvents[correlationId]) {\r\n return;\r\n }\r\n var orphanedEvents = this.getOrphanedEvents(correlationId);\r\n orphanedEvents.forEach(function (event) { return _this.incrementEventCount(event); });\r\n var eventsToFlush = this.completedEvents[correlationId].concat(orphanedEvents);\r\n delete this.completedEvents[correlationId];\r\n var eventCountsToFlush = this.eventCountByCorrelationId[correlationId];\r\n delete this.eventCountByCorrelationId[correlationId];\r\n // TODO add funcitonality for onlyFlushFailures after implementing api event? ??\r\n if (!eventsToFlush || !eventsToFlush.length) {\r\n return;\r\n }\r\n var defaultEvent = new DefaultEvent(this.telemetryPlatform, correlationId, this.clientId, eventCountsToFlush);\r\n var eventsWithDefaultEvent = eventsToFlush.concat([defaultEvent]);\r\n this.telemetryEmitter(eventsWithDefaultEvent.map(function (e) { return e.get(); }));\r\n };\r\n TelemetryManager.prototype.createAndStartApiEvent = function (correlationId, apiEventIdentifier) {\r\n var apiEvent = new ApiEvent(correlationId, this.logger.isPiiLoggingEnabled(), apiEventIdentifier);\r\n this.startEvent(apiEvent);\r\n return apiEvent;\r\n };\r\n TelemetryManager.prototype.stopAndFlushApiEvent = function (correlationId, apiEvent, wasSuccessful, errorCode) {\r\n apiEvent.wasSuccessful = wasSuccessful;\r\n if (errorCode) {\r\n apiEvent.apiErrorCode = errorCode;\r\n }\r\n this.stopEvent(apiEvent);\r\n this.flush(correlationId);\r\n };\r\n TelemetryManager.prototype.createAndStartHttpEvent = function (correlation, httpMethod, url, eventLabel) {\r\n var httpEvent = new HttpEvent(correlation, eventLabel);\r\n httpEvent.url = url;\r\n httpEvent.httpMethod = httpMethod;\r\n this.startEvent(httpEvent);\r\n return httpEvent;\r\n };\r\n TelemetryManager.prototype.incrementEventCount = function (event) {\r\n var _a;\r\n /*\r\n * TODO, name cache event different?\r\n * if type is cache event, change name\r\n */\r\n var eventName = event.eventName;\r\n var eventCount = this.eventCountByCorrelationId[event.telemetryCorrelationId];\r\n if (!eventCount) {\r\n this.eventCountByCorrelationId[event.telemetryCorrelationId] = (_a = {},\r\n _a[eventName] = 1,\r\n _a);\r\n }\r\n else {\r\n eventCount[eventName] = eventCount[eventName] ? eventCount[eventName] + 1 : 1;\r\n }\r\n };\r\n TelemetryManager.prototype.getOrphanedEvents = function (correlationId) {\r\n var _this = this;\r\n return Object.keys(this.inProgressEvents)\r\n .reduce(function (memo, eventKey) {\r\n if (eventKey.indexOf(correlationId) !== -1) {\r\n var event_1 = _this.inProgressEvents[eventKey];\r\n delete _this.inProgressEvents[eventKey];\r\n return memo.concat([event_1]);\r\n }\r\n return memo;\r\n }, []);\r\n };\r\n return TelemetryManager;\r\n}());\r\nexport default TelemetryManager;\r\n//# sourceMappingURL=TelemetryManager.js.map","/*\r\n * Copyright (c) Microsoft Corporation. All rights reserved.\r\n * Licensed under the MIT License.\r\n */\r\nimport { ScopeSet } from \"../ScopeSet\";\r\nimport { UrlUtils } from \"./UrlUtils\";\r\n/**\r\n * @hidden\r\n */\r\nvar AuthCacheUtils = /** @class */ (function () {\r\n function AuthCacheUtils() {\r\n }\r\n AuthCacheUtils.filterTokenCacheItemsByScope = function (tokenCacheItems, requestScopes) {\r\n return tokenCacheItems.filter(function (cacheItem) {\r\n var cachedScopes = cacheItem.key.scopes.split(\" \");\r\n var searchScopes = ScopeSet.removeDefaultScopes(requestScopes);\r\n // If requestScopes contain only default scopes search for default scopes otherwise search for everything but default scopes\r\n return searchScopes.length === 0 ? ScopeSet.containsScope(cachedScopes, requestScopes) : ScopeSet.containsScope(cachedScopes, searchScopes);\r\n });\r\n };\r\n AuthCacheUtils.filterTokenCacheItemsByAuthority = function (tokenCacheItems, authority) {\r\n return tokenCacheItems.filter(function (cacheItem) { return UrlUtils.CanonicalizeUri(cacheItem.key.authority) === authority; });\r\n };\r\n AuthCacheUtils.filterTokenCacheItemsByDomain = function (tokenCacheItems, requestDomain) {\r\n return tokenCacheItems.filter(function (cacheItem) {\r\n var cacheItemDomain = UrlUtils.GetUrlComponents(cacheItem.key.authority).HostNameAndPort;\r\n return cacheItemDomain === requestDomain;\r\n });\r\n };\r\n return AuthCacheUtils;\r\n}());\r\nexport { AuthCacheUtils };\r\n//# sourceMappingURL=AuthCacheUtils.js.map","/*\r\n * Copyright (c) Microsoft Corporation. All rights reserved.\r\n * Licensed under the MIT License.\r\n */\r\nimport * as tslib_1 from \"tslib\";\r\nimport { AccessTokenKey } from \"./cache/AccessTokenKey\";\r\nimport { AccessTokenValue } from \"./cache/AccessTokenValue\";\r\nimport { ServerRequestParameters } from \"./ServerRequestParameters\";\r\nimport { AuthorityType } from \"./authority/Authority\";\r\nimport { ClientInfo } from \"./ClientInfo\";\r\nimport { IdToken } from \"./IdToken\";\r\nimport { AuthCache } from \"./cache/AuthCache\";\r\nimport { Account } from \"./Account\";\r\nimport { ScopeSet } from \"./ScopeSet\";\r\nimport { StringUtils } from \"./utils/StringUtils\";\r\nimport { WindowUtils } from \"./utils/WindowUtils\";\r\nimport { TokenUtils } from \"./utils/TokenUtils\";\r\nimport { TimeUtils } from \"./utils/TimeUtils\";\r\nimport { UrlUtils } from \"./utils/UrlUtils\";\r\nimport { RequestUtils } from \"./utils/RequestUtils\";\r\nimport { ResponseUtils } from \"./utils/ResponseUtils\";\r\nimport { AuthorityFactory } from \"./authority/AuthorityFactory\";\r\nimport { buildConfiguration } from \"./Configuration\";\r\nimport { ClientConfigurationError } from \"./error/ClientConfigurationError\";\r\nimport { AuthError } from \"./error/AuthError\";\r\nimport { ClientAuthError, ClientAuthErrorMessage } from \"./error/ClientAuthError\";\r\nimport { ServerError } from \"./error/ServerError\";\r\nimport { InteractionRequiredAuthError } from \"./error/InteractionRequiredAuthError\";\r\nimport { buildResponseStateOnly } from \"./AuthResponse\";\r\nimport TelemetryManager from \"./telemetry/TelemetryManager\";\r\nimport { API_EVENT_IDENTIFIER } from \"./telemetry/ApiEvent\";\r\nimport { Constants, ServerHashParamKeys, ResponseTypes, TemporaryCacheKeys, PersistentCacheKeys, ErrorCacheKeys, FramePrefix } from \"./utils/Constants\";\r\nimport { CryptoUtils } from \"./utils/CryptoUtils\";\r\nimport { TrustedAuthority } from \"./authority/TrustedAuthority\";\r\nimport { AuthCacheUtils } from \"./utils/AuthCacheUtils\";\r\n// default authority\r\nvar DEFAULT_AUTHORITY = \"https://login.microsoftonline.com/common\";\r\n/**\r\n * UserAgentApplication class\r\n *\r\n * Object Instance that the developer can use to make loginXX OR acquireTokenXX functions\r\n */\r\nvar UserAgentApplication = /** @class */ (function () {\r\n /**\r\n * @constructor\r\n * Constructor for the UserAgentApplication used to instantiate the UserAgentApplication object\r\n *\r\n * Important attributes in the Configuration object for auth are:\r\n * - clientID: the application ID of your application.\r\n * You can obtain one by registering your application with our Application registration portal : https://portal.azure.com/#blade/Microsoft_AAD_IAM/ActiveDirectoryMenuBlade/RegisteredAppsPreview\r\n * - authority: the authority URL for your application.\r\n *\r\n * In Azure AD, authority is a URL indicating the Azure active directory that MSAL uses to obtain tokens.\r\n * It is of the form https://login.microsoftonline.com/<Enter_the_Tenant_Info_Here>.\r\n * If your application supports Accounts in one organizational directory, replace \"Enter_the_Tenant_Info_Here\" value with the Tenant Id or Tenant name (for example, contoso.microsoft.com).\r\n * If your application supports Accounts in any organizational directory, replace \"Enter_the_Tenant_Info_Here\" value with organizations.\r\n * If your application supports Accounts in any organizational directory and personal Microsoft accounts, replace \"Enter_the_Tenant_Info_Here\" value with common.\r\n * To restrict support to Personal Microsoft accounts only, replace \"Enter_the_Tenant_Info_Here\" value with consumers.\r\n *\r\n *\r\n * In Azure B2C, authority is of the form https://<instance>/tfp/<tenant>/<policyName>/\r\n *\r\n * @param {@link (Configuration:type)} configuration object for the MSAL UserAgentApplication instance\r\n */\r\n function UserAgentApplication(configuration) {\r\n // callbacks for token/error\r\n this.authResponseCallback = null;\r\n this.tokenReceivedCallback = null;\r\n this.errorReceivedCallback = null;\r\n // Set the Configuration\r\n this.config = buildConfiguration(configuration);\r\n this.logger = this.config.system.logger;\r\n this.clientId = this.config.auth.clientId;\r\n this.inCookie = this.config.cache.storeAuthStateInCookie;\r\n this.telemetryManager = this.getTelemetryManagerFromConfig(this.config.system.telemetry, this.clientId);\r\n TrustedAuthority.setTrustedAuthoritiesFromConfig(this.config.auth.validateAuthority, this.config.auth.knownAuthorities);\r\n AuthorityFactory.saveMetadataFromConfig(this.config.auth.authority, this.config.auth.authorityMetadata);\r\n // if no authority is passed, set the default: \"https://login.microsoftonline.com/common\"\r\n this.authority = this.config.auth.authority || DEFAULT_AUTHORITY;\r\n // cache keys msal - typescript throws an error if any value other than \"localStorage\" or \"sessionStorage\" is passed\r\n this.cacheStorage = new AuthCache(this.clientId, this.config.cache.cacheLocation, this.inCookie);\r\n // Initialize window handling code\r\n window.activeRenewals = {};\r\n window.renewStates = [];\r\n window.callbackMappedToRenewStates = {};\r\n window.promiseMappedToRenewStates = {};\r\n window.msal = this;\r\n var urlHash = window.location.hash;\r\n var urlContainsHash = UrlUtils.urlContainsHash(urlHash);\r\n // check if back button is pressed\r\n WindowUtils.checkIfBackButtonIsPressed(this.cacheStorage);\r\n // On the server 302 - Redirect, handle this\r\n if (urlContainsHash) {\r\n var stateInfo = this.getResponseState(urlHash);\r\n if (stateInfo.method === Constants.interactionTypeRedirect) {\r\n this.handleRedirectAuthenticationResponse(urlHash);\r\n }\r\n }\r\n }\r\n Object.defineProperty(UserAgentApplication.prototype, \"authority\", {\r\n /**\r\n * Method to manage the authority URL.\r\n *\r\n * @returns {string} authority\r\n */\r\n get: function () {\r\n return this.authorityInstance.CanonicalAuthority;\r\n },\r\n /**\r\n * setter for the authority URL\r\n * @param {string} authority\r\n */\r\n // If the developer passes an authority, create an instance\r\n set: function (val) {\r\n this.authorityInstance = AuthorityFactory.CreateInstance(val, this.config.auth.validateAuthority);\r\n },\r\n enumerable: true,\r\n configurable: true\r\n });\r\n /**\r\n * Get the current authority instance from the MSAL configuration object\r\n *\r\n * @returns {@link Authority} authority instance\r\n */\r\n UserAgentApplication.prototype.getAuthorityInstance = function () {\r\n return this.authorityInstance;\r\n };\r\n UserAgentApplication.prototype.handleRedirectCallback = function (authOrTokenCallback, errorReceivedCallback) {\r\n if (!authOrTokenCallback) {\r\n throw ClientConfigurationError.createInvalidCallbackObjectError(authOrTokenCallback);\r\n }\r\n // Set callbacks\r\n if (errorReceivedCallback) {\r\n this.tokenReceivedCallback = authOrTokenCallback;\r\n this.errorReceivedCallback = errorReceivedCallback;\r\n this.logger.warning(\"This overload for callback is deprecated - please change the format of the callbacks to a single callback as shown: (err: AuthError, response: AuthResponse).\");\r\n }\r\n else {\r\n this.authResponseCallback = authOrTokenCallback;\r\n }\r\n if (this.redirectError) {\r\n this.authErrorHandler(Constants.interactionTypeRedirect, this.redirectError, this.redirectResponse);\r\n }\r\n else if (this.redirectResponse) {\r\n this.authResponseHandler(Constants.interactionTypeRedirect, this.redirectResponse);\r\n }\r\n };\r\n /**\r\n * Public API to verify if the URL contains the hash with known properties\r\n * @param hash\r\n */\r\n UserAgentApplication.prototype.urlContainsHash = function (hash) {\r\n this.logger.verbose(\"UrlContainsHash has been called\");\r\n return UrlUtils.urlContainsHash(hash);\r\n };\r\n UserAgentApplication.prototype.authResponseHandler = function (interactionType, response, resolve) {\r\n this.logger.verbose(\"AuthResponseHandler has been called\");\r\n if (interactionType === Constants.interactionTypeRedirect) {\r\n this.logger.verbose(\"Interaction type is redirect\");\r\n if (this.errorReceivedCallback) {\r\n this.logger.verbose(\"Two callbacks were provided to handleRedirectCallback, calling success callback with response\");\r\n this.tokenReceivedCallback(response);\r\n }\r\n else if (this.authResponseCallback) {\r\n this.logger.verbose(\"One callback was provided to handleRedirectCallback, calling authResponseCallback with response\");\r\n this.authResponseCallback(null, response);\r\n }\r\n }\r\n else if (interactionType === Constants.interactionTypePopup) {\r\n this.logger.verbose(\"Interaction type is popup, resolving\");\r\n resolve(response);\r\n }\r\n else {\r\n throw ClientAuthError.createInvalidInteractionTypeError();\r\n }\r\n };\r\n UserAgentApplication.prototype.authErrorHandler = function (interactionType, authErr, response, reject) {\r\n this.logger.verbose(\"AuthErrorHandler has been called\");\r\n // set interaction_status to complete\r\n this.cacheStorage.removeItem(TemporaryCacheKeys.INTERACTION_STATUS);\r\n if (interactionType === Constants.interactionTypeRedirect) {\r\n this.logger.verbose(\"Interaction type is redirect\");\r\n if (this.errorReceivedCallback) {\r\n this.logger.verbose(\"Two callbacks were provided to handleRedirectCallback, calling error callback\");\r\n this.errorReceivedCallback(authErr, response.accountState);\r\n }\r\n else if (this.authResponseCallback) {\r\n this.logger.verbose(\"One callback was provided to handleRedirectCallback, calling authResponseCallback with error\");\r\n this.authResponseCallback(authErr, response);\r\n }\r\n else {\r\n this.logger.verbose(\"handleRedirectCallback has not been called and no callbacks are registered, throwing error\");\r\n throw authErr;\r\n }\r\n }\r\n else if (interactionType === Constants.interactionTypePopup) {\r\n this.logger.verbose(\"Interaction type is popup, rejecting\");\r\n reject(authErr);\r\n }\r\n else {\r\n throw ClientAuthError.createInvalidInteractionTypeError();\r\n }\r\n };\r\n // #endregion\r\n /**\r\n * Use when initiating the login process by redirecting the user's browser to the authorization endpoint.\r\n * @param {@link (AuthenticationParameters:type)}\r\n */\r\n UserAgentApplication.prototype.loginRedirect = function (userRequest) {\r\n this.logger.verbose(\"LoginRedirect has been called\");\r\n // validate request\r\n var request = RequestUtils.validateRequest(userRequest, true, this.clientId, Constants.interactionTypeRedirect);\r\n this.acquireTokenInteractive(Constants.interactionTypeRedirect, true, request, null, null);\r\n };\r\n /**\r\n * Use when you want to obtain an access_token for your API by redirecting the user's browser window to the authorization endpoint.\r\n * @param {@link (AuthenticationParameters:type)}\r\n *\r\n * To renew idToken, please pass clientId as the only scope in the Authentication Parameters\r\n */\r\n UserAgentApplication.prototype.acquireTokenRedirect = function (userRequest) {\r\n this.logger.verbose(\"AcquireTokenRedirect has been called\");\r\n // validate request\r\n var request = RequestUtils.validateRequest(userRequest, false, this.clientId, Constants.interactionTypeRedirect);\r\n this.acquireTokenInteractive(Constants.interactionTypeRedirect, false, request, null, null);\r\n };\r\n /**\r\n * Use when initiating the login process via opening a popup window in the user's browser\r\n *\r\n * @param {@link (AuthenticationParameters:type)}\r\n *\r\n * @returns {Promise.} - a promise that is fulfilled when this function has completed, or rejected if an error was raised. Returns the {@link AuthResponse} object\r\n */\r\n UserAgentApplication.prototype.loginPopup = function (userRequest) {\r\n var _this = this;\r\n this.logger.verbose(\"LoginPopup has been called\");\r\n // validate request\r\n var request = RequestUtils.validateRequest(userRequest, true, this.clientId, Constants.interactionTypePopup);\r\n var apiEvent = this.telemetryManager.createAndStartApiEvent(request.correlationId, API_EVENT_IDENTIFIER.LoginPopup);\r\n return new Promise(function (resolve, reject) {\r\n _this.acquireTokenInteractive(Constants.interactionTypePopup, true, request, resolve, reject);\r\n })\r\n .then(function (resp) {\r\n _this.logger.verbose(\"Successfully logged in\");\r\n _this.telemetryManager.stopAndFlushApiEvent(request.correlationId, apiEvent, true);\r\n return resp;\r\n })\r\n .catch(function (error) {\r\n _this.cacheStorage.resetTempCacheItems(request.state);\r\n _this.telemetryManager.stopAndFlushApiEvent(request.correlationId, apiEvent, false, error.errorCode);\r\n throw error;\r\n });\r\n };\r\n /**\r\n * Use when you want to obtain an access_token for your API via opening a popup window in the user's browser\r\n * @param {@link AuthenticationParameters}\r\n *\r\n * To renew idToken, please pass clientId as the only scope in the Authentication Parameters\r\n * @returns {Promise.} - a promise that is fulfilled when this function has completed, or rejected if an error was raised. Returns the {@link AuthResponse} object\r\n */\r\n UserAgentApplication.prototype.acquireTokenPopup = function (userRequest) {\r\n var _this = this;\r\n this.logger.verbose(\"AcquireTokenPopup has been called\");\r\n // validate request\r\n var request = RequestUtils.validateRequest(userRequest, false, this.clientId, Constants.interactionTypePopup);\r\n var apiEvent = this.telemetryManager.createAndStartApiEvent(request.correlationId, API_EVENT_IDENTIFIER.AcquireTokenPopup);\r\n return new Promise(function (resolve, reject) {\r\n _this.acquireTokenInteractive(Constants.interactionTypePopup, false, request, resolve, reject);\r\n })\r\n .then(function (resp) {\r\n _this.logger.verbose(\"Successfully acquired token\");\r\n _this.telemetryManager.stopAndFlushApiEvent(request.correlationId, apiEvent, true);\r\n return resp;\r\n })\r\n .catch(function (error) {\r\n _this.cacheStorage.resetTempCacheItems(request.state);\r\n _this.telemetryManager.stopAndFlushApiEvent(request.correlationId, apiEvent, false, error.errorCode);\r\n throw error;\r\n });\r\n };\r\n // #region Acquire Token\r\n /**\r\n * Use when initiating the login process or when you want to obtain an access_token for your API,\r\n * either by redirecting the user's browser window to the authorization endpoint or via opening a popup window in the user's browser.\r\n * @param {@link (AuthenticationParameters:type)}\r\n *\r\n * To renew idToken, please pass clientId as the only scope in the Authentication Parameters\r\n */\r\n UserAgentApplication.prototype.acquireTokenInteractive = function (interactionType, isLoginCall, request, resolve, reject) {\r\n var _this = this;\r\n this.logger.verbose(\"AcquireTokenInteractive has been called\");\r\n // block the request if made from the hidden iframe\r\n WindowUtils.blockReloadInHiddenIframes();\r\n var interactionProgress = this.cacheStorage.getItem(TemporaryCacheKeys.INTERACTION_STATUS);\r\n if (interactionType === Constants.interactionTypeRedirect) {\r\n this.cacheStorage.setItem(TemporaryCacheKeys.REDIRECT_REQUEST, \"\" + Constants.inProgress + Constants.resourceDelimiter + request.state);\r\n }\r\n // If already in progress, do not proceed\r\n if (interactionProgress === Constants.inProgress) {\r\n var thrownError = isLoginCall ? ClientAuthError.createLoginInProgressError() : ClientAuthError.createAcquireTokenInProgressError();\r\n var stateOnlyResponse = buildResponseStateOnly(this.getAccountState(request.state));\r\n this.cacheStorage.resetTempCacheItems(request.state);\r\n this.authErrorHandler(interactionType, thrownError, stateOnlyResponse, reject);\r\n return;\r\n }\r\n // Get the account object if a session exists\r\n var account;\r\n if (request && request.account && !isLoginCall) {\r\n account = request.account;\r\n this.logger.verbose(\"Account set from request\");\r\n }\r\n else {\r\n account = this.getAccount();\r\n this.logger.verbose(\"Account set from MSAL Cache\");\r\n }\r\n // If no session exists, prompt the user to login.\r\n if (!account && !ServerRequestParameters.isSSOParam(request)) {\r\n if (isLoginCall) {\r\n // extract ADAL id_token if exists\r\n var adalIdToken = this.extractADALIdToken();\r\n // silent login if ADAL id_token is retrieved successfully - SSO\r\n if (adalIdToken && !request.scopes) {\r\n this.logger.info(\"ADAL's idToken exists. Extracting login information from ADAL's idToken\");\r\n var tokenRequest = this.buildIDTokenRequest(request);\r\n this.silentLogin = true;\r\n this.acquireTokenSilent(tokenRequest).then(function (response) {\r\n _this.silentLogin = false;\r\n _this.logger.info(\"Unified cache call is successful\");\r\n _this.authResponseHandler(interactionType, response, resolve);\r\n return;\r\n }, function (error) {\r\n _this.silentLogin = false;\r\n _this.logger.error(\"Error occurred during unified cache ATS: \" + error);\r\n // proceed to login since ATS failed\r\n _this.acquireTokenHelper(null, interactionType, isLoginCall, request, resolve, reject);\r\n });\r\n }\r\n // No ADAL token found, proceed to login\r\n else {\r\n this.logger.verbose(\"Login call but no token found, proceed to login\");\r\n this.acquireTokenHelper(null, interactionType, isLoginCall, request, resolve, reject);\r\n }\r\n }\r\n // AcquireToken call, but no account or context given, so throw error\r\n else {\r\n this.logger.verbose(\"AcquireToken call, no context or account given\");\r\n this.logger.info(\"User login is required\");\r\n var stateOnlyResponse = buildResponseStateOnly(this.getAccountState(request.state));\r\n this.cacheStorage.resetTempCacheItems(request.state);\r\n this.authErrorHandler(interactionType, ClientAuthError.createUserLoginRequiredError(), stateOnlyResponse, reject);\r\n return;\r\n }\r\n }\r\n // User session exists\r\n else {\r\n this.logger.verbose(\"User session exists, login not required\");\r\n this.acquireTokenHelper(account, interactionType, isLoginCall, request, resolve, reject);\r\n }\r\n };\r\n /**\r\n * @hidden\r\n * @ignore\r\n * Helper function to acquireToken\r\n *\r\n */\r\n UserAgentApplication.prototype.acquireTokenHelper = function (account, interactionType, isLoginCall, request, resolve, reject) {\r\n return tslib_1.__awaiter(this, void 0, void 0, function () {\r\n var requestSignature, serverAuthenticationRequest, acquireTokenAuthority, popUpWindow, responseType, loginStartPage, urlNavigate, hash, error_1, navigate, err_1;\r\n return tslib_1.__generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0:\r\n this.logger.verbose(\"AcquireTokenHelper has been called\");\r\n this.logger.verbose(\"Interaction type: \" + interactionType + \". isLoginCall: \" + isLoginCall);\r\n // Track the acquireToken progress\r\n this.cacheStorage.setItem(TemporaryCacheKeys.INTERACTION_STATUS, Constants.inProgress);\r\n requestSignature = request.scopes ? request.scopes.join(\" \").toLowerCase() : Constants.oidcScopes.join(\" \");\r\n this.logger.verbosePii(\"Request signature: \" + requestSignature);\r\n acquireTokenAuthority = (request && request.authority) ? AuthorityFactory.CreateInstance(request.authority, this.config.auth.validateAuthority, request.authorityMetadata) : this.authorityInstance;\r\n _a.label = 1;\r\n case 1:\r\n _a.trys.push([1, 11, , 12]);\r\n if (!!acquireTokenAuthority.hasCachedMetadata()) return [3 /*break*/, 3];\r\n this.logger.verbose(\"No cached metadata for authority\");\r\n return [4 /*yield*/, AuthorityFactory.saveMetadataFromNetwork(acquireTokenAuthority, this.telemetryManager, request.correlationId)];\r\n case 2:\r\n _a.sent();\r\n return [3 /*break*/, 4];\r\n case 3:\r\n this.logger.verbose(\"Cached metadata found for authority\");\r\n _a.label = 4;\r\n case 4:\r\n responseType = isLoginCall ? ResponseTypes.id_token : this.getTokenType(account, request.scopes);\r\n loginStartPage = request.redirectStartPage || window.location.href;\r\n serverAuthenticationRequest = new ServerRequestParameters(acquireTokenAuthority, this.clientId, responseType, this.getRedirectUri(request && request.redirectUri), request.scopes, request.state, request.correlationId);\r\n this.logger.verbose(\"Finished building server authentication request\");\r\n this.updateCacheEntries(serverAuthenticationRequest, account, isLoginCall, loginStartPage);\r\n this.logger.verbose(\"Updating cache entries\");\r\n // populate QueryParameters (sid/login_hint) and any other extraQueryParameters set by the developer\r\n serverAuthenticationRequest.populateQueryParams(account, request);\r\n this.logger.verbose(\"Query parameters populated from account\");\r\n urlNavigate = UrlUtils.createNavigateUrl(serverAuthenticationRequest) + Constants.response_mode_fragment;\r\n // set state in cache\r\n if (interactionType === Constants.interactionTypeRedirect) {\r\n if (!isLoginCall) {\r\n this.cacheStorage.setItem(AuthCache.generateTemporaryCacheKey(TemporaryCacheKeys.STATE_ACQ_TOKEN, request.state), serverAuthenticationRequest.state, this.inCookie);\r\n this.logger.verbose(\"State cached for redirect\");\r\n this.logger.verbosePii(\"State cached: \" + serverAuthenticationRequest.state);\r\n }\r\n else {\r\n this.logger.verbose(\"Interaction type redirect but login call is true. State not cached\");\r\n }\r\n }\r\n else if (interactionType === Constants.interactionTypePopup) {\r\n window.renewStates.push(serverAuthenticationRequest.state);\r\n window.requestType = isLoginCall ? Constants.login : Constants.renewToken;\r\n this.logger.verbose(\"State saved to window\");\r\n this.logger.verbosePii(\"State saved: \" + serverAuthenticationRequest.state);\r\n // Register callback to capture results from server\r\n this.registerCallback(serverAuthenticationRequest.state, requestSignature, resolve, reject);\r\n }\r\n else {\r\n this.logger.verbose(\"Invalid interaction error. State not cached\");\r\n throw ClientAuthError.createInvalidInteractionTypeError();\r\n }\r\n if (!(interactionType === Constants.interactionTypePopup)) return [3 /*break*/, 9];\r\n this.logger.verbose(\"Interaction type is popup. Generating popup window\");\r\n // Generate a popup window\r\n try {\r\n popUpWindow = this.openPopup(urlNavigate, \"msal\", Constants.popUpWidth, Constants.popUpHeight);\r\n // Push popup window handle onto stack for tracking\r\n WindowUtils.trackPopup(popUpWindow);\r\n }\r\n catch (e) {\r\n this.logger.info(ClientAuthErrorMessage.popUpWindowError.code + \":\" + ClientAuthErrorMessage.popUpWindowError.desc);\r\n this.cacheStorage.setItem(ErrorCacheKeys.ERROR, ClientAuthErrorMessage.popUpWindowError.code);\r\n this.cacheStorage.setItem(ErrorCacheKeys.ERROR_DESC, ClientAuthErrorMessage.popUpWindowError.desc);\r\n if (reject) {\r\n reject(ClientAuthError.createPopupWindowError());\r\n return [2 /*return*/];\r\n }\r\n }\r\n if (!popUpWindow) return [3 /*break*/, 8];\r\n _a.label = 5;\r\n case 5:\r\n _a.trys.push([5, 7, , 8]);\r\n return [4 /*yield*/, WindowUtils.monitorPopupForHash(popUpWindow, this.config.system.loadFrameTimeout, urlNavigate, this.logger)];\r\n case 6:\r\n hash = _a.sent();\r\n this.handleAuthenticationResponse(hash);\r\n // Request completed successfully, set to completed\r\n this.cacheStorage.removeItem(TemporaryCacheKeys.INTERACTION_STATUS);\r\n this.logger.info(\"Closing popup window\");\r\n // TODO: Check how this can be extracted for any framework specific code?\r\n if (this.config.framework.isAngular) {\r\n this.broadcast(\"msal:popUpHashChanged\", hash);\r\n }\r\n WindowUtils.closePopups();\r\n return [3 /*break*/, 8];\r\n case 7:\r\n error_1 = _a.sent();\r\n if (reject) {\r\n reject(error_1);\r\n }\r\n if (this.config.framework.isAngular) {\r\n this.broadcast(\"msal:popUpClosed\", error_1.errorCode + Constants.resourceDelimiter + error_1.errorMessage);\r\n }\r\n else {\r\n // Request failed, set to canceled\r\n this.cacheStorage.removeItem(TemporaryCacheKeys.INTERACTION_STATUS);\r\n popUpWindow.close();\r\n }\r\n return [3 /*break*/, 8];\r\n case 8: return [3 /*break*/, 10];\r\n case 9:\r\n // If onRedirectNavigate is implemented, invoke it and provide urlNavigate\r\n if (request.onRedirectNavigate) {\r\n this.logger.verbose(\"Invoking onRedirectNavigate callback\");\r\n navigate = request.onRedirectNavigate(urlNavigate);\r\n // Returning false from onRedirectNavigate will stop navigation\r\n if (navigate !== false) {\r\n this.logger.verbose(\"onRedirectNavigate did not return false, navigating\");\r\n this.navigateWindow(urlNavigate);\r\n }\r\n else {\r\n this.logger.verbose(\"onRedirectNavigate returned false, stopping navigation\");\r\n }\r\n }\r\n else {\r\n // Otherwise, perform navigation\r\n this.logger.verbose(\"Navigating window to urlNavigate\");\r\n this.navigateWindow(urlNavigate);\r\n }\r\n _a.label = 10;\r\n case 10: return [3 /*break*/, 12];\r\n case 11:\r\n err_1 = _a.sent();\r\n this.logger.error(err_1);\r\n this.cacheStorage.resetTempCacheItems(request.state);\r\n this.authErrorHandler(interactionType, ClientAuthError.createEndpointResolutionError(err_1.toString), buildResponseStateOnly(request.state), reject);\r\n if (popUpWindow) {\r\n popUpWindow.close();\r\n }\r\n return [3 /*break*/, 12];\r\n case 12: return [2 /*return*/];\r\n }\r\n });\r\n });\r\n };\r\n /**\r\n * API interfacing idToken request when applications already have a session/hint acquired by authorization client applications\r\n * @param request\r\n */\r\n UserAgentApplication.prototype.ssoSilent = function (request) {\r\n this.logger.verbose(\"ssoSilent has been called\");\r\n // throw an error on an empty request\r\n if (!request) {\r\n throw ClientConfigurationError.createEmptyRequestError();\r\n }\r\n // throw an error on no hints passed\r\n if (!request.sid && !request.loginHint) {\r\n throw ClientConfigurationError.createSsoSilentError();\r\n }\r\n return this.acquireTokenSilent(tslib_1.__assign({}, request, { scopes: Constants.oidcScopes }));\r\n };\r\n /**\r\n * Use this function to obtain a token before every call to the API / resource provider\r\n *\r\n * MSAL return's a cached token when available\r\n * Or it send's a request to the STS to obtain a new token using a hidden iframe.\r\n *\r\n * @param {@link AuthenticationParameters}\r\n *\r\n * To renew idToken, please pass clientId as the only scope in the Authentication Parameters\r\n * @returns {Promise.} - a promise that is fulfilled when this function has completed, or rejected if an error was raised. Returns the {@link AuthResponse} object\r\n *\r\n */\r\n UserAgentApplication.prototype.acquireTokenSilent = function (userRequest) {\r\n var _this = this;\r\n this.logger.verbose(\"AcquireTokenSilent has been called\");\r\n // validate the request\r\n var request = RequestUtils.validateRequest(userRequest, false, this.clientId, Constants.interactionTypeSilent);\r\n var apiEvent = this.telemetryManager.createAndStartApiEvent(request.correlationId, API_EVENT_IDENTIFIER.AcquireTokenSilent);\r\n var requestSignature = RequestUtils.createRequestSignature(request);\r\n return new Promise(function (resolve, reject) { return tslib_1.__awaiter(_this, void 0, void 0, function () {\r\n var scope, account, adalIdToken, responseType, serverAuthenticationRequest, adalIdTokenObject, userContainedClaims, authErr, cacheResultResponse, logMessage, err_2;\r\n return tslib_1.__generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0:\r\n // block the request if made from the hidden iframe\r\n WindowUtils.blockReloadInHiddenIframes();\r\n scope = request.scopes.join(\" \").toLowerCase();\r\n this.logger.verbosePii(\"Serialized scopes: \" + scope);\r\n if (request.account) {\r\n account = request.account;\r\n this.logger.verbose(\"Account set from request\");\r\n }\r\n else {\r\n account = this.getAccount();\r\n this.logger.verbose(\"Account set from MSAL Cache\");\r\n }\r\n adalIdToken = this.cacheStorage.getItem(Constants.adalIdToken);\r\n // In the event of no account being passed in the config, no session id, and no pre-existing adalIdToken, user will need to log in\r\n if (!account && !(request.sid || request.loginHint) && StringUtils.isEmpty(adalIdToken)) {\r\n this.logger.info(\"User login is required\");\r\n // The promise rejects with a UserLoginRequiredError, which should be caught and user should be prompted to log in interactively\r\n return [2 /*return*/, reject(ClientAuthError.createUserLoginRequiredError())];\r\n }\r\n responseType = this.getTokenType(account, request.scopes);\r\n this.logger.verbose(\"Response type: \" + responseType);\r\n serverAuthenticationRequest = new ServerRequestParameters(AuthorityFactory.CreateInstance(request.authority, this.config.auth.validateAuthority, request.authorityMetadata), this.clientId, responseType, this.getRedirectUri(request.redirectUri), request.scopes, request.state, request.correlationId);\r\n this.logger.verbose(\"Finished building server authentication request\");\r\n // populate QueryParameters (sid/login_hint) and any other extraQueryParameters set by the developer\r\n if (ServerRequestParameters.isSSOParam(request) || account) {\r\n serverAuthenticationRequest.populateQueryParams(account, request, null, true);\r\n this.logger.verbose(\"Query parameters populated from existing SSO or account\");\r\n }\r\n // if user didn't pass login_hint/sid and adal's idtoken is present, extract the login_hint from the adalIdToken\r\n else if (!account && !StringUtils.isEmpty(adalIdToken)) {\r\n adalIdTokenObject = TokenUtils.extractIdToken(adalIdToken);\r\n this.logger.verbose(\"ADAL's idToken exists. Extracting login information from ADAL's idToken to populate query parameters\");\r\n serverAuthenticationRequest.populateQueryParams(account, null, adalIdTokenObject, true);\r\n }\r\n else {\r\n this.logger.verbose(\"No additional query parameters added\");\r\n }\r\n userContainedClaims = request.claimsRequest || serverAuthenticationRequest.claimsValue;\r\n // If request.forceRefresh is set to true, force a request for a new token instead of getting it from the cache\r\n if (!userContainedClaims && !request.forceRefresh) {\r\n try {\r\n cacheResultResponse = this.getCachedToken(serverAuthenticationRequest, account);\r\n }\r\n catch (e) {\r\n authErr = e;\r\n }\r\n }\r\n if (!cacheResultResponse) return [3 /*break*/, 1];\r\n this.logger.verbose(\"Token found in cache lookup\");\r\n this.logger.verbosePii(\"Scopes found: \" + JSON.stringify(cacheResultResponse.scopes));\r\n resolve(cacheResultResponse);\r\n return [2 /*return*/, null];\r\n case 1:\r\n if (!authErr) return [3 /*break*/, 2];\r\n this.logger.infoPii(authErr.errorCode + \":\" + authErr.errorMessage);\r\n reject(authErr);\r\n return [2 /*return*/, null];\r\n case 2:\r\n logMessage = void 0;\r\n if (userContainedClaims) {\r\n logMessage = \"Skipped cache lookup since claims were given\";\r\n }\r\n else if (request.forceRefresh) {\r\n logMessage = \"Skipped cache lookup since request.forceRefresh option was set to true\";\r\n }\r\n else {\r\n logMessage = \"No valid token found in cache lookup\";\r\n }\r\n this.logger.verbose(logMessage);\r\n // Cache result can return null if cache is empty. In that case, set authority to default value if no authority is passed to the API.\r\n if (!serverAuthenticationRequest.authorityInstance) {\r\n serverAuthenticationRequest.authorityInstance = request.authority ?\r\n AuthorityFactory.CreateInstance(request.authority, this.config.auth.validateAuthority, request.authorityMetadata)\r\n : this.authorityInstance;\r\n }\r\n this.logger.verbosePii(\"Authority instance: \" + serverAuthenticationRequest.authority);\r\n _a.label = 3;\r\n case 3:\r\n _a.trys.push([3, 7, , 8]);\r\n if (!!serverAuthenticationRequest.authorityInstance.hasCachedMetadata()) return [3 /*break*/, 5];\r\n this.logger.verbose(\"No cached metadata for authority\");\r\n return [4 /*yield*/, AuthorityFactory.saveMetadataFromNetwork(serverAuthenticationRequest.authorityInstance, this.telemetryManager, request.correlationId)];\r\n case 4:\r\n _a.sent();\r\n this.logger.verbose(\"Authority has been updated with endpoint discovery response\");\r\n return [3 /*break*/, 6];\r\n case 5:\r\n this.logger.verbose(\"Cached metadata found for authority\");\r\n _a.label = 6;\r\n case 6:\r\n /*\r\n * refresh attempt with iframe\r\n * Already renewing for this scope, callback when we get the token.\r\n */\r\n if (window.activeRenewals[requestSignature]) {\r\n this.logger.verbose(\"Renewing token in progress. Registering callback\");\r\n // Active renewals contains the state for each renewal.\r\n this.registerCallback(window.activeRenewals[requestSignature], requestSignature, resolve, reject);\r\n }\r\n else {\r\n if (request.scopes && ScopeSet.onlyContainsOidcScopes(request.scopes)) {\r\n /*\r\n * App uses idToken to send to api endpoints\r\n * Default scope is tracked as OIDC scopes to store this token\r\n */\r\n this.logger.verbose(\"OpenID Connect scopes only, renewing idToken\");\r\n this.silentLogin = true;\r\n this.renewIdToken(requestSignature, resolve, reject, account, serverAuthenticationRequest);\r\n }\r\n else {\r\n // renew access token\r\n this.logger.verbose(\"Renewing access token\");\r\n this.renewToken(requestSignature, resolve, reject, account, serverAuthenticationRequest);\r\n }\r\n }\r\n return [3 /*break*/, 8];\r\n case 7:\r\n err_2 = _a.sent();\r\n this.logger.error(err_2);\r\n reject(ClientAuthError.createEndpointResolutionError(err_2.toString()));\r\n return [2 /*return*/, null];\r\n case 8: return [2 /*return*/];\r\n }\r\n });\r\n }); })\r\n .then(function (res) {\r\n _this.logger.verbose(\"Successfully acquired token\");\r\n _this.telemetryManager.stopAndFlushApiEvent(request.correlationId, apiEvent, true);\r\n return res;\r\n })\r\n .catch(function (error) {\r\n _this.cacheStorage.resetTempCacheItems(request.state);\r\n _this.telemetryManager.stopAndFlushApiEvent(request.correlationId, apiEvent, false, error.errorCode);\r\n throw error;\r\n });\r\n };\r\n // #endregion\r\n // #region Popup Window Creation\r\n /**\r\n * @hidden\r\n *\r\n * Configures popup window for login.\r\n *\r\n * @param urlNavigate\r\n * @param title\r\n * @param popUpWidth\r\n * @param popUpHeight\r\n * @ignore\r\n * @hidden\r\n */\r\n UserAgentApplication.prototype.openPopup = function (urlNavigate, title, popUpWidth, popUpHeight) {\r\n this.logger.verbose(\"OpenPopup has been called\");\r\n try {\r\n /**\r\n * adding winLeft and winTop to account for dual monitor\r\n * using screenLeft and screenTop for IE8 and earlier\r\n */\r\n var winLeft = window.screenLeft ? window.screenLeft : window.screenX;\r\n var winTop = window.screenTop ? window.screenTop : window.screenY;\r\n /**\r\n * window.innerWidth displays browser window\"s height and width excluding toolbars\r\n * using document.documentElement.clientWidth for IE8 and earlier\r\n */\r\n var width = window.innerWidth || document.documentElement.clientWidth || document.body.clientWidth;\r\n var height = window.innerHeight || document.documentElement.clientHeight || document.body.clientHeight;\r\n var left = ((width / 2) - (popUpWidth / 2)) + winLeft;\r\n var top_1 = ((height / 2) - (popUpHeight / 2)) + winTop;\r\n // open the window\r\n var popupWindow = window.open(urlNavigate, title, \"width=\" + popUpWidth + \", height=\" + popUpHeight + \", top=\" + top_1 + \", left=\" + left + \", scrollbars=yes\");\r\n if (!popupWindow) {\r\n throw ClientAuthError.createPopupWindowError();\r\n }\r\n if (popupWindow.focus) {\r\n popupWindow.focus();\r\n }\r\n return popupWindow;\r\n }\r\n catch (e) {\r\n this.cacheStorage.removeItem(TemporaryCacheKeys.INTERACTION_STATUS);\r\n throw ClientAuthError.createPopupWindowError(e.toString());\r\n }\r\n };\r\n // #endregion\r\n // #region Iframe Management\r\n /**\r\n * @hidden\r\n * Calling _loadFrame but with a timeout to signal failure in loadframeStatus. Callbacks are left.\r\n * registered when network errors occur and subsequent token requests for same resource are registered to the pending request.\r\n * @ignore\r\n */\r\n UserAgentApplication.prototype.loadIframeTimeout = function (urlNavigate, frameName, requestSignature) {\r\n return tslib_1.__awaiter(this, void 0, void 0, function () {\r\n var expectedState, iframe, _a, hash, error_2;\r\n return tslib_1.__generator(this, function (_b) {\r\n switch (_b.label) {\r\n case 0:\r\n expectedState = window.activeRenewals[requestSignature];\r\n this.logger.verbosePii(\"Set loading state to pending for: \" + requestSignature + \":\" + expectedState);\r\n this.cacheStorage.setItem(AuthCache.generateTemporaryCacheKey(TemporaryCacheKeys.RENEW_STATUS, expectedState), Constants.inProgress);\r\n if (!this.config.system.navigateFrameWait) return [3 /*break*/, 2];\r\n return [4 /*yield*/, WindowUtils.loadFrame(urlNavigate, frameName, this.config.system.navigateFrameWait, this.logger)];\r\n case 1:\r\n _a = _b.sent();\r\n return [3 /*break*/, 3];\r\n case 2:\r\n _a = WindowUtils.loadFrameSync(urlNavigate, frameName, this.logger);\r\n _b.label = 3;\r\n case 3:\r\n iframe = _a;\r\n _b.label = 4;\r\n case 4:\r\n _b.trys.push([4, 6, , 7]);\r\n return [4 /*yield*/, WindowUtils.monitorIframeForHash(iframe.contentWindow, this.config.system.loadFrameTimeout, urlNavigate, this.logger)];\r\n case 5:\r\n hash = _b.sent();\r\n if (hash) {\r\n this.handleAuthenticationResponse(hash);\r\n }\r\n return [3 /*break*/, 7];\r\n case 6:\r\n error_2 = _b.sent();\r\n if (this.cacheStorage.getItem(AuthCache.generateTemporaryCacheKey(TemporaryCacheKeys.RENEW_STATUS, expectedState)) === Constants.inProgress) {\r\n // fail the iframe session if it's in pending state\r\n this.logger.verbose(\"Loading frame has timed out after: \" + (this.config.system.loadFrameTimeout / 1000) + \" seconds for scope/authority \" + requestSignature + \":\" + expectedState);\r\n // Error after timeout\r\n if (expectedState && window.callbackMappedToRenewStates[expectedState]) {\r\n window.callbackMappedToRenewStates[expectedState](null, error_2);\r\n }\r\n this.cacheStorage.removeItem(AuthCache.generateTemporaryCacheKey(TemporaryCacheKeys.RENEW_STATUS, expectedState));\r\n }\r\n WindowUtils.removeHiddenIframe(iframe);\r\n throw error_2;\r\n case 7:\r\n WindowUtils.removeHiddenIframe(iframe);\r\n return [2 /*return*/];\r\n }\r\n });\r\n });\r\n };\r\n // #endregion\r\n // #region General Helpers\r\n /**\r\n * @hidden\r\n * Used to redirect the browser to the STS authorization endpoint\r\n * @param {string} urlNavigate - URL of the authorization endpoint\r\n */\r\n UserAgentApplication.prototype.navigateWindow = function (urlNavigate, popupWindow) {\r\n // Navigate if valid URL\r\n if (urlNavigate && !StringUtils.isEmpty(urlNavigate)) {\r\n var navigateWindow = popupWindow ? popupWindow : window;\r\n var logMessage = popupWindow ? \"Navigated Popup window to:\" + urlNavigate : \"Navigate to:\" + urlNavigate;\r\n this.logger.infoPii(logMessage);\r\n navigateWindow.location.assign(urlNavigate);\r\n }\r\n else {\r\n this.logger.info(\"Navigate url is empty\");\r\n throw AuthError.createUnexpectedError(\"Navigate url is empty\");\r\n }\r\n };\r\n /**\r\n * @hidden\r\n * Used to add the developer requested callback to the array of callbacks for the specified scopes. The updated array is stored on the window object\r\n * @param {string} expectedState - Unique state identifier (guid).\r\n * @param {string} scope - Developer requested permissions. Not all scopes are guaranteed to be included in the access token returned.\r\n * @param {Function} resolve - The resolve function of the promise object.\r\n * @param {Function} reject - The reject function of the promise object.\r\n * @ignore\r\n */\r\n UserAgentApplication.prototype.registerCallback = function (expectedState, requestSignature, resolve, reject) {\r\n var _this = this;\r\n // track active renewals\r\n window.activeRenewals[requestSignature] = expectedState;\r\n // initialize callbacks mapped array\r\n if (!window.promiseMappedToRenewStates[expectedState]) {\r\n window.promiseMappedToRenewStates[expectedState] = [];\r\n }\r\n // indexing on the current state, push the callback params to callbacks mapped\r\n window.promiseMappedToRenewStates[expectedState].push({ resolve: resolve, reject: reject });\r\n // Store the server response in the current window??\r\n if (!window.callbackMappedToRenewStates[expectedState]) {\r\n window.callbackMappedToRenewStates[expectedState] = function (response, error) {\r\n // reset active renewals\r\n window.activeRenewals[requestSignature] = null;\r\n // for all promiseMappedtoRenewStates for a given 'state' - call the reject/resolve with error/token respectively\r\n for (var i = 0; i < window.promiseMappedToRenewStates[expectedState].length; ++i) {\r\n try {\r\n if (error) {\r\n window.promiseMappedToRenewStates[expectedState][i].reject(error);\r\n }\r\n else if (response) {\r\n window.promiseMappedToRenewStates[expectedState][i].resolve(response);\r\n }\r\n else {\r\n _this.cacheStorage.resetTempCacheItems(expectedState);\r\n throw AuthError.createUnexpectedError(\"Error and response are both null\");\r\n }\r\n }\r\n catch (e) {\r\n _this.logger.warning(e);\r\n }\r\n }\r\n // reset\r\n window.promiseMappedToRenewStates[expectedState] = null;\r\n window.callbackMappedToRenewStates[expectedState] = null;\r\n };\r\n }\r\n };\r\n // #endregion\r\n // #region Logout\r\n /**\r\n * Use to log out the current user, and redirect the user to the postLogoutRedirectUri.\r\n * Default behaviour is to redirect the user to `window.location.href`.\r\n */\r\n UserAgentApplication.prototype.logout = function (correlationId) {\r\n this.logger.verbose(\"Logout has been called\");\r\n this.logoutAsync(correlationId);\r\n };\r\n /**\r\n * Async version of logout(). Use to log out the current user.\r\n * @param correlationId Request correlationId\r\n */\r\n UserAgentApplication.prototype.logoutAsync = function (correlationId) {\r\n return tslib_1.__awaiter(this, void 0, void 0, function () {\r\n var requestCorrelationId, apiEvent, correlationIdParam, postLogoutQueryParam, urlNavigate, error_3;\r\n return tslib_1.__generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0:\r\n requestCorrelationId = correlationId || CryptoUtils.createNewGuid();\r\n apiEvent = this.telemetryManager.createAndStartApiEvent(requestCorrelationId, API_EVENT_IDENTIFIER.Logout);\r\n this.clearCache();\r\n this.account = null;\r\n _a.label = 1;\r\n case 1:\r\n _a.trys.push([1, 5, , 6]);\r\n if (!!this.authorityInstance.hasCachedMetadata()) return [3 /*break*/, 3];\r\n this.logger.verbose(\"No cached metadata for authority\");\r\n return [4 /*yield*/, AuthorityFactory.saveMetadataFromNetwork(this.authorityInstance, this.telemetryManager, correlationId)];\r\n case 2:\r\n _a.sent();\r\n return [3 /*break*/, 4];\r\n case 3:\r\n this.logger.verbose(\"Cached metadata found for authority\");\r\n _a.label = 4;\r\n case 4:\r\n correlationIdParam = \"client-request-id=\" + requestCorrelationId;\r\n postLogoutQueryParam = void 0;\r\n if (this.getPostLogoutRedirectUri()) {\r\n postLogoutQueryParam = \"&post_logout_redirect_uri=\" + encodeURIComponent(this.getPostLogoutRedirectUri());\r\n this.logger.verbose(\"redirectUri found and set\");\r\n }\r\n else {\r\n postLogoutQueryParam = \"\";\r\n this.logger.verbose(\"No redirectUri set for app. postLogoutQueryParam is empty\");\r\n }\r\n urlNavigate = void 0;\r\n if (this.authorityInstance.EndSessionEndpoint) {\r\n urlNavigate = this.authorityInstance.EndSessionEndpoint + \"?\" + correlationIdParam + postLogoutQueryParam;\r\n this.logger.verbose(\"EndSessionEndpoint found and urlNavigate set\");\r\n this.logger.verbosePii(\"urlNavigate set to: \" + this.authorityInstance.EndSessionEndpoint);\r\n }\r\n else {\r\n urlNavigate = this.authority + \"oauth2/v2.0/logout?\" + correlationIdParam + postLogoutQueryParam;\r\n this.logger.verbose(\"No endpoint, urlNavigate set to default\");\r\n }\r\n this.telemetryManager.stopAndFlushApiEvent(requestCorrelationId, apiEvent, true);\r\n this.logger.verbose(\"Navigating window to urlNavigate\");\r\n this.navigateWindow(urlNavigate);\r\n return [3 /*break*/, 6];\r\n case 5:\r\n error_3 = _a.sent();\r\n this.telemetryManager.stopAndFlushApiEvent(requestCorrelationId, apiEvent, false, error_3.errorCode);\r\n return [3 /*break*/, 6];\r\n case 6: return [2 /*return*/];\r\n }\r\n });\r\n });\r\n };\r\n /**\r\n * @hidden\r\n * Clear all access tokens and ID tokens in the cache.\r\n * @ignore\r\n */\r\n UserAgentApplication.prototype.clearCache = function () {\r\n this.logger.verbose(\"Clearing cache\");\r\n window.renewStates = [];\r\n var tokenCacheItems = this.cacheStorage.getAllTokens(Constants.clientId, Constants.homeAccountIdentifier);\r\n for (var i = 0; i < tokenCacheItems.length; i++) {\r\n this.cacheStorage.removeItem(JSON.stringify(tokenCacheItems[i].key));\r\n }\r\n this.cacheStorage.resetCacheItems();\r\n this.cacheStorage.clearMsalCookie();\r\n this.logger.verbose(\"Cache cleared\");\r\n };\r\n /**\r\n * @hidden\r\n * Clear a given access token from the cache.\r\n *\r\n * @param accessToken\r\n */\r\n UserAgentApplication.prototype.clearCacheForScope = function (accessToken) {\r\n this.logger.verbose(\"Clearing access token from cache\");\r\n var accessTokenItems = this.cacheStorage.getAllAccessTokens(Constants.clientId, Constants.homeAccountIdentifier);\r\n for (var i = 0; i < accessTokenItems.length; i++) {\r\n var token = accessTokenItems[i];\r\n if (token.value.accessToken === accessToken) {\r\n this.cacheStorage.removeItem(JSON.stringify(token.key));\r\n this.logger.verbosePii(\"Access token removed: \" + token.key);\r\n }\r\n }\r\n };\r\n // #endregion\r\n // #region Response\r\n /**\r\n * @hidden\r\n * @ignore\r\n * Checks if the redirect response is received from the STS. In case of redirect, the url fragment has either id_token, access_token or error.\r\n * @param {string} hash - Hash passed from redirect page.\r\n * @returns {Boolean} - true if response contains id_token, access_token or error, false otherwise.\r\n */\r\n UserAgentApplication.prototype.isCallback = function (hash) {\r\n this.logger.info(\"isCallback will be deprecated in favor of urlContainsHash in MSAL.js v2.0.\");\r\n this.logger.verbose(\"isCallback has been called\");\r\n return UrlUtils.urlContainsHash(hash);\r\n };\r\n /**\r\n * @hidden\r\n * Used to call the constructor callback with the token/error\r\n * @param {string} [hash=window.location.hash] - Hash fragment of Url.\r\n */\r\n UserAgentApplication.prototype.processCallBack = function (hash, stateInfo, parentCallback) {\r\n this.logger.info(\"ProcessCallBack has been called. Processing callback from redirect response\");\r\n // get the state info from the hash\r\n if (!stateInfo) {\r\n this.logger.verbose(\"StateInfo is null, getting stateInfo from hash\");\r\n stateInfo = this.getResponseState(hash);\r\n }\r\n var response;\r\n var authErr;\r\n // Save the token info from the hash\r\n try {\r\n response = this.saveTokenFromHash(hash, stateInfo);\r\n }\r\n catch (err) {\r\n authErr = err;\r\n }\r\n try {\r\n // Clear the cookie in the hash\r\n this.cacheStorage.clearMsalCookie(stateInfo.state);\r\n var accountState = this.getAccountState(stateInfo.state);\r\n if (response) {\r\n if ((stateInfo.requestType === Constants.renewToken) || response.accessToken) {\r\n if (window.parent !== window) {\r\n this.logger.verbose(\"Window is in iframe, acquiring token silently\");\r\n }\r\n else {\r\n this.logger.verbose(\"Acquiring token interactive in progress\");\r\n }\r\n this.logger.verbose(\"Response tokenType set to \" + ServerHashParamKeys.ACCESS_TOKEN);\r\n response.tokenType = ServerHashParamKeys.ACCESS_TOKEN;\r\n }\r\n else if (stateInfo.requestType === Constants.login) {\r\n this.logger.verbose(\"Response tokenType set to \" + ServerHashParamKeys.ID_TOKEN);\r\n response.tokenType = ServerHashParamKeys.ID_TOKEN;\r\n }\r\n if (!parentCallback) {\r\n this.logger.verbose(\"Setting redirectResponse\");\r\n this.redirectResponse = response;\r\n return;\r\n }\r\n }\r\n else if (!parentCallback) {\r\n this.logger.verbose(\"Response is null, setting redirectResponse with state\");\r\n this.redirectResponse = buildResponseStateOnly(accountState);\r\n this.redirectError = authErr;\r\n this.cacheStorage.resetTempCacheItems(stateInfo.state);\r\n return;\r\n }\r\n this.logger.verbose(\"Calling callback provided to processCallback\");\r\n parentCallback(response, authErr);\r\n }\r\n catch (err) {\r\n this.logger.error(\"Error occurred in token received callback function: \" + err);\r\n throw ClientAuthError.createErrorInCallbackFunction(err.toString());\r\n }\r\n };\r\n /**\r\n * @hidden\r\n * This method must be called for processing the response received from the STS if using popups or iframes. It extracts the hash, processes the token or error\r\n * information and saves it in the cache. It then resolves the promises with the result.\r\n * @param {string} [hash=window.location.hash] - Hash fragment of Url.\r\n */\r\n UserAgentApplication.prototype.handleAuthenticationResponse = function (hash) {\r\n this.logger.verbose(\"HandleAuthenticationResponse has been called\");\r\n // retrieve the hash\r\n var locationHash = hash || window.location.hash;\r\n // if (window.parent !== window), by using self, window.parent becomes equal to window in getResponseState method specifically\r\n var stateInfo = this.getResponseState(locationHash);\r\n this.logger.verbose(\"Obtained state from response\");\r\n var tokenResponseCallback = window.callbackMappedToRenewStates[stateInfo.state];\r\n this.processCallBack(locationHash, stateInfo, tokenResponseCallback);\r\n };\r\n /**\r\n * @hidden\r\n * This method must be called for processing the response received from the STS when using redirect flows. It extracts the hash, processes the token or error\r\n * information and saves it in the cache. The result can then be accessed by user registered callbacks.\r\n * @param {string} [hash=window.location.hash] - Hash fragment of Url.\r\n */\r\n UserAgentApplication.prototype.handleRedirectAuthenticationResponse = function (hash) {\r\n this.logger.info(\"Returned from redirect url\");\r\n this.logger.verbose(\"HandleRedirectAuthenticationResponse has been called\");\r\n // clear hash from window\r\n WindowUtils.clearUrlFragment();\r\n this.logger.verbose(\"Window.location.hash cleared\");\r\n // if (window.parent !== window), by using self, window.parent becomes equal to window in getResponseState method specifically\r\n var stateInfo = this.getResponseState(hash);\r\n // if set to navigate to loginRequest page post login\r\n if (this.config.auth.navigateToLoginRequestUrl && window.parent === window) {\r\n this.logger.verbose(\"Window.parent is equal to window, not in popup or iframe. Navigation to login request url after login turned on\");\r\n var loginRequestUrl = this.cacheStorage.getItem(AuthCache.generateTemporaryCacheKey(TemporaryCacheKeys.LOGIN_REQUEST, stateInfo.state), this.inCookie);\r\n // Redirect to home page if login request url is null (real null or the string null)\r\n if (!loginRequestUrl || loginRequestUrl === \"null\") {\r\n this.logger.error(\"Unable to get valid login request url from cache, redirecting to home page\");\r\n window.location.assign(\"/\");\r\n return;\r\n }\r\n else {\r\n this.logger.verbose(\"Valid login request url obtained from cache\");\r\n var currentUrl = UrlUtils.removeHashFromUrl(window.location.href);\r\n var finalRedirectUrl = UrlUtils.removeHashFromUrl(loginRequestUrl);\r\n if (currentUrl !== finalRedirectUrl) {\r\n this.logger.verbose(\"Current url is not login request url, navigating\");\r\n this.logger.verbosePii(\"CurrentUrl: \" + currentUrl + \", finalRedirectUrl: \" + finalRedirectUrl);\r\n window.location.assign(\"\" + finalRedirectUrl + hash);\r\n return;\r\n }\r\n else {\r\n this.logger.verbose(\"Current url matches login request url\");\r\n var loginRequestUrlComponents = UrlUtils.GetUrlComponents(loginRequestUrl);\r\n if (loginRequestUrlComponents.Hash) {\r\n this.logger.verbose(\"Login request url contains hash, resetting non-msal hash\");\r\n window.location.hash = loginRequestUrlComponents.Hash;\r\n }\r\n }\r\n }\r\n }\r\n else if (!this.config.auth.navigateToLoginRequestUrl) {\r\n this.logger.verbose(\"Default navigation to start page after login turned off\");\r\n }\r\n this.processCallBack(hash, stateInfo, null);\r\n };\r\n /**\r\n * @hidden\r\n * Creates a stateInfo object from the URL fragment and returns it.\r\n * @param {string} hash - Hash passed from redirect page\r\n * @returns {TokenResponse} an object created from the redirect response from AAD comprising of the keys - parameters, requestType, stateMatch, stateResponse and valid.\r\n * @ignore\r\n */\r\n UserAgentApplication.prototype.getResponseState = function (hash) {\r\n this.logger.verbose(\"GetResponseState has been called\");\r\n var parameters = UrlUtils.deserializeHash(hash);\r\n var stateResponse;\r\n if (!parameters) {\r\n throw AuthError.createUnexpectedError(\"Hash was not parsed correctly.\");\r\n }\r\n if (parameters.hasOwnProperty(ServerHashParamKeys.STATE)) {\r\n this.logger.verbose(\"Hash contains state. Creating stateInfo object\");\r\n var parsedState = RequestUtils.parseLibraryState(parameters.state);\r\n stateResponse = {\r\n requestType: Constants.unknown,\r\n state: parameters.state,\r\n timestamp: parsedState.ts,\r\n method: parsedState.method,\r\n stateMatch: false\r\n };\r\n }\r\n else {\r\n throw AuthError.createUnexpectedError(\"Hash does not contain state.\");\r\n }\r\n /*\r\n * async calls can fire iframe and login request at the same time if developer does not use the API as expected\r\n * incoming callback needs to be looked up to find the request type\r\n */\r\n // loginRedirect\r\n if (stateResponse.state === this.cacheStorage.getItem(AuthCache.generateTemporaryCacheKey(TemporaryCacheKeys.STATE_LOGIN, stateResponse.state), this.inCookie) || stateResponse.state === this.silentAuthenticationState) {\r\n this.logger.verbose(\"State matches cached state, setting requestType to login\");\r\n stateResponse.requestType = Constants.login;\r\n stateResponse.stateMatch = true;\r\n return stateResponse;\r\n }\r\n // acquireTokenRedirect\r\n else if (stateResponse.state === this.cacheStorage.getItem(AuthCache.generateTemporaryCacheKey(TemporaryCacheKeys.STATE_ACQ_TOKEN, stateResponse.state), this.inCookie)) {\r\n this.logger.verbose(\"State matches cached state, setting requestType to renewToken\");\r\n stateResponse.requestType = Constants.renewToken;\r\n stateResponse.stateMatch = true;\r\n return stateResponse;\r\n }\r\n // external api requests may have many renewtoken requests for different resource\r\n if (!stateResponse.stateMatch) {\r\n this.logger.verbose(\"State does not match cached state, setting requestType to type from window\");\r\n stateResponse.requestType = window.requestType;\r\n var statesInParentContext = window.renewStates;\r\n for (var i = 0; i < statesInParentContext.length; i++) {\r\n if (statesInParentContext[i] === stateResponse.state) {\r\n this.logger.verbose(\"Matching state found for request\");\r\n stateResponse.stateMatch = true;\r\n break;\r\n }\r\n }\r\n if (!stateResponse.stateMatch) {\r\n this.logger.verbose(\"Matching state not found for request\");\r\n }\r\n }\r\n return stateResponse;\r\n };\r\n // #endregion\r\n // #region Token Processing (Extract to TokenProcessing.ts)\r\n /**\r\n * @hidden\r\n * Used to get token for the specified set of scopes from the cache\r\n * @param {@link ServerRequestParameters} - Request sent to the STS to obtain an id_token/access_token\r\n * @param {Account} account - Account for which the scopes were requested\r\n */\r\n UserAgentApplication.prototype.getCachedToken = function (serverAuthenticationRequest, account) {\r\n this.logger.verbose(\"GetCachedToken has been called\");\r\n var scopes = serverAuthenticationRequest.scopes;\r\n /**\r\n * Id Token should be returned in every acquireTokenSilent call. The only exception is a response_type = token\r\n * request when a valid ID Token is not present in the cache.\r\n */\r\n var idToken = this.getCachedIdToken(serverAuthenticationRequest, account);\r\n var authResponse = this.getCachedAccessToken(serverAuthenticationRequest, account, scopes);\r\n var accountState = this.getAccountState(serverAuthenticationRequest.state);\r\n return ResponseUtils.buildAuthResponse(idToken, authResponse, serverAuthenticationRequest, account, scopes, accountState);\r\n };\r\n /**\r\n * @hidden\r\n *\r\n * Uses passed in authority to further filter an array of tokenCacheItems until only the token being searched for remains, then returns that tokenCacheItem.\r\n * This method will throw if authority filtering still yields multiple matching tokens and will return null if not tokens match the authority passed in.\r\n *\r\n * @param authority\r\n * @param tokenCacheItems\r\n * @param request\r\n * @param requestScopes\r\n * @param tokenType\r\n */\r\n UserAgentApplication.prototype.getTokenCacheItemByAuthority = function (authority, tokenCacheItems, requestScopes, tokenType) {\r\n var _this = this;\r\n var filteredAuthorityItems;\r\n if (UrlUtils.isCommonAuthority(authority) || UrlUtils.isOrganizationsAuthority(authority)) {\r\n filteredAuthorityItems = AuthCacheUtils.filterTokenCacheItemsByDomain(tokenCacheItems, UrlUtils.GetUrlComponents(authority).HostNameAndPort);\r\n }\r\n else {\r\n filteredAuthorityItems = AuthCacheUtils.filterTokenCacheItemsByAuthority(tokenCacheItems, authority);\r\n }\r\n if (filteredAuthorityItems.length === 1) {\r\n return filteredAuthorityItems[0];\r\n }\r\n else if (filteredAuthorityItems.length > 1) {\r\n this.logger.warning(\"Multiple matching tokens found. Cleaning cache and requesting a new token.\");\r\n filteredAuthorityItems.forEach(function (accessTokenCacheItem) {\r\n _this.cacheStorage.removeItem(JSON.stringify(accessTokenCacheItem.key));\r\n });\r\n return null;\r\n }\r\n else {\r\n this.logger.verbose(\"No matching tokens of type \" + tokenType + \" found\");\r\n return null;\r\n }\r\n };\r\n /**\r\n *\r\n * @hidden\r\n *\r\n * Searches the token cache for an ID Token that matches the request parameter and returns it as an IdToken object.\r\n *\r\n * @param serverAuthenticationRequest\r\n * @param account\r\n */\r\n UserAgentApplication.prototype.getCachedIdToken = function (serverAuthenticationRequest, account) {\r\n this.logger.verbose(\"Getting all cached tokens of type ID Token\");\r\n var idTokenCacheItems = this.cacheStorage.getAllIdTokens(this.clientId, account ? account.homeAccountIdentifier : null);\r\n var matchAuthority = serverAuthenticationRequest.authority || this.authority;\r\n var idTokenCacheItem = this.getTokenCacheItemByAuthority(matchAuthority, idTokenCacheItems, null, ServerHashParamKeys.ID_TOKEN);\r\n if (idTokenCacheItem) {\r\n this.logger.verbose(\"Evaluating ID token found\");\r\n var idTokenIsStillValid = this.evaluateTokenExpiration(idTokenCacheItem);\r\n if (idTokenIsStillValid) {\r\n this.logger.verbose(\"ID token expiration is within offset, using ID token found in cache\");\r\n var idTokenValue = idTokenCacheItem.value;\r\n if (idTokenValue) {\r\n this.logger.verbose(\"ID Token found in cache is valid and unexpired\");\r\n }\r\n else {\r\n this.logger.verbose(\"ID Token found in cache is invalid\");\r\n }\r\n return (idTokenValue) ? new IdToken(idTokenValue.idToken) : null;\r\n }\r\n else {\r\n this.logger.verbose(\"Cached ID token is expired, removing from cache\");\r\n this.cacheStorage.removeItem(JSON.stringify(idTokenCacheItem.key));\r\n return null;\r\n }\r\n }\r\n else {\r\n this.logger.verbose(\"No tokens found\");\r\n return null;\r\n }\r\n };\r\n /**\r\n *\r\n * @hidden\r\n *\r\n * Searches the token cache for an access token that matches the request parameters and returns it as an AuthResponse.\r\n *\r\n * @param serverAuthenticationRequest\r\n * @param account\r\n * @param scopes\r\n */\r\n UserAgentApplication.prototype.getCachedAccessToken = function (serverAuthenticationRequest, account, scopes) {\r\n this.logger.verbose(\"Getting all cached tokens of type Access Token\");\r\n var tokenCacheItems = this.cacheStorage.getAllAccessTokens(this.clientId, account ? account.homeAccountIdentifier : null);\r\n var scopeFilteredTokenCacheItems = AuthCacheUtils.filterTokenCacheItemsByScope(tokenCacheItems, scopes);\r\n var matchAuthority = serverAuthenticationRequest.authority || this.authority;\r\n // serverAuthenticationRequest.authority can only be common or organizations if not null\r\n var accessTokenCacheItem = this.getTokenCacheItemByAuthority(matchAuthority, scopeFilteredTokenCacheItems, scopes, ServerHashParamKeys.ACCESS_TOKEN);\r\n if (!accessTokenCacheItem) {\r\n this.logger.verbose(\"No matching token found when filtering by scope and authority\");\r\n var authorityList = this.getUniqueAuthority(tokenCacheItems, \"authority\");\r\n if (authorityList.length > 1) {\r\n throw ClientAuthError.createMultipleAuthoritiesInCacheError(scopes.toString());\r\n }\r\n this.logger.verbose(\"Single authority used, setting authorityInstance\");\r\n serverAuthenticationRequest.authorityInstance = AuthorityFactory.CreateInstance(authorityList[0], this.config.auth.validateAuthority);\r\n return null;\r\n }\r\n else {\r\n serverAuthenticationRequest.authorityInstance = AuthorityFactory.CreateInstance(accessTokenCacheItem.key.authority, this.config.auth.validateAuthority);\r\n this.logger.verbose(\"Evaluating access token found\");\r\n var tokenIsStillValid = this.evaluateTokenExpiration(accessTokenCacheItem);\r\n // The response value will stay null if token retrieved from the cache is expired, otherwise it will be populated with said token's data\r\n if (tokenIsStillValid) {\r\n this.logger.verbose(\"Access token expiration is within offset, using access token found in cache\");\r\n if (!account) {\r\n account = this.getAccount();\r\n if (!account) {\r\n throw AuthError.createUnexpectedError(\"Account should not be null here.\");\r\n }\r\n }\r\n var aState = this.getAccountState(serverAuthenticationRequest.state);\r\n var response = {\r\n uniqueId: \"\",\r\n tenantId: \"\",\r\n tokenType: ServerHashParamKeys.ACCESS_TOKEN,\r\n idToken: null,\r\n idTokenClaims: null,\r\n accessToken: accessTokenCacheItem.value.accessToken,\r\n scopes: accessTokenCacheItem.key.scopes.split(\" \"),\r\n expiresOn: new Date(Number(accessTokenCacheItem.value.expiresIn) * 1000),\r\n account: account,\r\n accountState: aState,\r\n fromCache: true\r\n };\r\n return response;\r\n }\r\n else {\r\n this.logger.verbose(\"Access token expired, removing from cache\");\r\n this.cacheStorage.removeItem(JSON.stringify(accessTokenCacheItem.key));\r\n return null;\r\n }\r\n }\r\n };\r\n /**\r\n * Returns true if the token passed in is within the acceptable expiration time offset, false if it is expired.\r\n * @param tokenCacheItem\r\n * @param serverAuthenticationRequest\r\n */\r\n UserAgentApplication.prototype.evaluateTokenExpiration = function (tokenCacheItem) {\r\n var expiration = Number(tokenCacheItem.value.expiresIn);\r\n return TokenUtils.validateExpirationIsWithinOffset(expiration, this.config.system.tokenRenewalOffsetSeconds);\r\n };\r\n /**\r\n * @hidden\r\n * Used to get a unique list of authorities from the cache\r\n * @param {Array} accessTokenCacheItems - accessTokenCacheItems saved in the cache\r\n * @ignore\r\n */\r\n UserAgentApplication.prototype.getUniqueAuthority = function (accessTokenCacheItems, property) {\r\n this.logger.verbose(\"GetUniqueAuthority has been called\");\r\n var authorityList = [];\r\n var flags = [];\r\n accessTokenCacheItems.forEach(function (element) {\r\n if (element.key.hasOwnProperty(property) && (flags.indexOf(element.key[property]) === -1)) {\r\n flags.push(element.key[property]);\r\n authorityList.push(element.key[property]);\r\n }\r\n });\r\n return authorityList;\r\n };\r\n /**\r\n * @hidden\r\n * Check if ADAL id_token exists and return if exists.\r\n *\r\n */\r\n UserAgentApplication.prototype.extractADALIdToken = function () {\r\n this.logger.verbose(\"ExtractADALIdToken has been called\");\r\n var adalIdToken = this.cacheStorage.getItem(Constants.adalIdToken);\r\n return (!StringUtils.isEmpty(adalIdToken)) ? TokenUtils.extractIdToken(adalIdToken) : null;\r\n };\r\n /**\r\n * @hidden\r\n * Acquires access token using a hidden iframe.\r\n * @ignore\r\n */\r\n UserAgentApplication.prototype.renewToken = function (requestSignature, resolve, reject, account, serverAuthenticationRequest) {\r\n this.logger.verbose(\"RenewToken has been called\");\r\n this.logger.verbosePii(\"RenewToken scope and authority: \" + requestSignature);\r\n var frameName = WindowUtils.generateFrameName(FramePrefix.TOKEN_FRAME, requestSignature);\r\n WindowUtils.addHiddenIFrame(frameName, this.logger);\r\n this.updateCacheEntries(serverAuthenticationRequest, account, false);\r\n this.logger.verbosePii(\"RenewToken expected state: \" + serverAuthenticationRequest.state);\r\n // Build urlNavigate with \"prompt=none\" and navigate to URL in hidden iFrame\r\n var urlNavigate = UrlUtils.urlRemoveQueryStringParameter(UrlUtils.createNavigateUrl(serverAuthenticationRequest), Constants.prompt) + Constants.prompt_none + Constants.response_mode_fragment;\r\n window.renewStates.push(serverAuthenticationRequest.state);\r\n window.requestType = Constants.renewToken;\r\n this.logger.verbose(\"Set window.renewState and requestType\");\r\n this.registerCallback(serverAuthenticationRequest.state, requestSignature, resolve, reject);\r\n this.logger.infoPii(\"Navigate to: \" + urlNavigate);\r\n this.loadIframeTimeout(urlNavigate, frameName, requestSignature).catch(function (error) { return reject(error); });\r\n };\r\n /**\r\n * @hidden\r\n * Renews idtoken for app's own backend when clientId is passed as a single scope in the scopes array.\r\n * @ignore\r\n */\r\n UserAgentApplication.prototype.renewIdToken = function (requestSignature, resolve, reject, account, serverAuthenticationRequest) {\r\n this.logger.info(\"RenewIdToken has been called\");\r\n var frameName = WindowUtils.generateFrameName(FramePrefix.ID_TOKEN_FRAME, requestSignature);\r\n WindowUtils.addHiddenIFrame(frameName, this.logger);\r\n this.updateCacheEntries(serverAuthenticationRequest, account, false);\r\n this.logger.verbose(\"RenewIdToken expected state: \" + serverAuthenticationRequest.state);\r\n // Build urlNavigate with \"prompt=none\" and navigate to URL in hidden iFrame\r\n var urlNavigate = UrlUtils.urlRemoveQueryStringParameter(UrlUtils.createNavigateUrl(serverAuthenticationRequest), Constants.prompt) + Constants.prompt_none + Constants.response_mode_fragment;\r\n if (this.silentLogin) {\r\n this.logger.verbose(\"Silent login is true, set silentAuthenticationState\");\r\n window.requestType = Constants.login;\r\n this.silentAuthenticationState = serverAuthenticationRequest.state;\r\n }\r\n else {\r\n this.logger.verbose(\"Not silent login, set window.renewState and requestType\");\r\n window.requestType = Constants.renewToken;\r\n window.renewStates.push(serverAuthenticationRequest.state);\r\n }\r\n // note: scope here is clientId\r\n this.registerCallback(serverAuthenticationRequest.state, requestSignature, resolve, reject);\r\n this.logger.infoPii(\"Navigate to:\\\" \" + urlNavigate);\r\n this.loadIframeTimeout(urlNavigate, frameName, requestSignature).catch(function (error) { return reject(error); });\r\n };\r\n /**\r\n * @hidden\r\n *\r\n * This method builds an Access Token Cache item and saves it to the cache, returning the original\r\n * AuthResponse augmented with a parsed expiresOn attribute.\r\n *\r\n * @param response The AuthResponse object that contains the token to be saved\r\n * @param authority The authority under which the ID token will be cached\r\n * @param scopes The scopes to be added to the cache item key (undefined for ID token cache items)\r\n * @param clientInfo Client Info object that is used to generate the homeAccountIdentifier\r\n * @param expiration Token expiration timestamp\r\n */\r\n UserAgentApplication.prototype.saveToken = function (response, authority, scopes, clientInfo, expiration) {\r\n var accessTokenKey = new AccessTokenKey(authority, this.clientId, scopes, clientInfo.uid, clientInfo.utid);\r\n var accessTokenValue = new AccessTokenValue(response.accessToken, response.idToken.rawIdToken, expiration.toString(), clientInfo.encodeClientInfo());\r\n this.cacheStorage.setItem(JSON.stringify(accessTokenKey), JSON.stringify(accessTokenValue));\r\n if (expiration) {\r\n this.logger.verbose(\"New expiration set for token\");\r\n response.expiresOn = new Date(expiration * 1000);\r\n }\r\n else {\r\n this.logger.error(\"Could not parse expiresIn parameter for access token\");\r\n }\r\n return response;\r\n };\r\n /**\r\n * @hidden\r\n *\r\n * This method sets up the elements of an ID Token cache item and calls saveToken to save it in\r\n * Access Token Cache item format for the client application to use.\r\n *\r\n * @param response The AuthResponse object that will be used to build the cache item\r\n * @param authority The authority under which the ID token will be cached\r\n * @param parameters The response's Hash Params, which contain the ID token returned from the server\r\n * @param clientInfo Client Info object that is used to generate the homeAccountIdentifier\r\n * @param idTokenObj ID Token object from which the ID token's expiration is extracted\r\n */\r\n /* tslint:disable:no-string-literal */\r\n UserAgentApplication.prototype.saveIdToken = function (response, authority, parameters, clientInfo, idTokenObj) {\r\n this.logger.verbose(\"SaveIdToken has been called\");\r\n var idTokenResponse = tslib_1.__assign({}, response);\r\n // Scopes are undefined so they don't show up in ID token cache key\r\n var scopes;\r\n idTokenResponse.scopes = Constants.oidcScopes;\r\n idTokenResponse.accessToken = parameters[ServerHashParamKeys.ID_TOKEN];\r\n var expiration = Number(idTokenObj.expiration);\r\n // Set ID Token item in cache\r\n this.logger.verbose(\"Saving ID token to cache\");\r\n return this.saveToken(idTokenResponse, authority, scopes, clientInfo, expiration);\r\n };\r\n /**\r\n * @hidden\r\n *\r\n * This method sets up the elements of an Access Token cache item and calls saveToken to save it to the cache\r\n *\r\n * @param response The AuthResponse object that will be used to build the cache item\r\n * @param authority The authority under which the access token will be cached\r\n * @param parameters The response's Hash Params, which contain the access token returned from the server\r\n * @param clientInfo Client Info object that is used to generate the homeAccountIdentifier\r\n */\r\n /* tslint:disable:no-string-literal */\r\n UserAgentApplication.prototype.saveAccessToken = function (response, authority, parameters, clientInfo) {\r\n this.logger.verbose(\"SaveAccessToken has been called\");\r\n var accessTokenResponse = tslib_1.__assign({}, response);\r\n // read the scopes\r\n var scope = parameters[ServerHashParamKeys.SCOPE];\r\n var consentedScopes = scope.split(\" \");\r\n // retrieve all access tokens from the cache, remove the dup scopes\r\n var accessTokenCacheItems = this.cacheStorage.getAllAccessTokens(this.clientId, authority);\r\n this.logger.verbose(\"Retrieving all access tokens from cache and removing duplicates\");\r\n for (var i = 0; i < accessTokenCacheItems.length; i++) {\r\n var accessTokenCacheItem = accessTokenCacheItems[i];\r\n if (accessTokenCacheItem.key.homeAccountIdentifier === response.account.homeAccountIdentifier) {\r\n var cachedScopes = accessTokenCacheItem.key.scopes.split(\" \");\r\n if (ScopeSet.isIntersectingScopes(cachedScopes, consentedScopes)) {\r\n this.cacheStorage.removeItem(JSON.stringify(accessTokenCacheItem.key));\r\n }\r\n }\r\n }\r\n accessTokenResponse.accessToken = parameters[ServerHashParamKeys.ACCESS_TOKEN];\r\n accessTokenResponse.scopes = consentedScopes;\r\n var expiresIn = TimeUtils.parseExpiresIn(parameters[ServerHashParamKeys.EXPIRES_IN]);\r\n var parsedState = RequestUtils.parseLibraryState(parameters[ServerHashParamKeys.STATE]);\r\n var expiration = parsedState.ts + expiresIn;\r\n this.logger.verbose(\"Saving access token to cache\");\r\n return this.saveToken(accessTokenResponse, authority, scope, clientInfo, expiration);\r\n };\r\n /**\r\n * @hidden\r\n * Saves token or error received in the response from AAD in the cache. In case of id_token, it also creates the account object.\r\n * @ignore\r\n */\r\n UserAgentApplication.prototype.saveTokenFromHash = function (hash, stateInfo) {\r\n this.logger.verbose(\"SaveTokenFromHash has been called\");\r\n this.logger.info(\"State status: \" + stateInfo.stateMatch + \"; Request type: \" + stateInfo.requestType);\r\n var response = {\r\n uniqueId: \"\",\r\n tenantId: \"\",\r\n tokenType: \"\",\r\n idToken: null,\r\n idTokenClaims: null,\r\n accessToken: null,\r\n scopes: [],\r\n expiresOn: null,\r\n account: null,\r\n accountState: \"\",\r\n fromCache: false\r\n };\r\n var error;\r\n var hashParams = UrlUtils.deserializeHash(hash);\r\n var authorityKey = \"\";\r\n var acquireTokenAccountKey = \"\";\r\n var idTokenObj = null;\r\n // If server returns an error\r\n if (hashParams.hasOwnProperty(ServerHashParamKeys.ERROR_DESCRIPTION) || hashParams.hasOwnProperty(ServerHashParamKeys.ERROR)) {\r\n this.logger.verbose(\"Server returned an error\");\r\n this.logger.infoPii(\"Error : \" + hashParams[ServerHashParamKeys.ERROR] + \"; Error description: \" + hashParams[ServerHashParamKeys.ERROR_DESCRIPTION]);\r\n this.cacheStorage.setItem(ErrorCacheKeys.ERROR, hashParams[ServerHashParamKeys.ERROR]);\r\n this.cacheStorage.setItem(ErrorCacheKeys.ERROR_DESC, hashParams[ServerHashParamKeys.ERROR_DESCRIPTION]);\r\n // login\r\n if (stateInfo.requestType === Constants.login) {\r\n this.logger.verbose(\"RequestType is login, caching login error, generating authorityKey\");\r\n this.cacheStorage.setItem(ErrorCacheKeys.LOGIN_ERROR, hashParams[ServerHashParamKeys.ERROR_DESCRIPTION] + \":\" + hashParams[ServerHashParamKeys.ERROR]);\r\n authorityKey = AuthCache.generateAuthorityKey(stateInfo.state);\r\n }\r\n // acquireToken\r\n if (stateInfo.requestType === Constants.renewToken) {\r\n this.logger.verbose(\"RequestType is renewToken, generating acquireTokenAccountKey\");\r\n authorityKey = AuthCache.generateAuthorityKey(stateInfo.state);\r\n var account = this.getAccount();\r\n var accountId = void 0;\r\n if (account && !StringUtils.isEmpty(account.homeAccountIdentifier)) {\r\n accountId = account.homeAccountIdentifier;\r\n this.logger.verbose(\"AccountId is set\");\r\n }\r\n else {\r\n accountId = Constants.no_account;\r\n this.logger.verbose(\"AccountId is set as no_account\");\r\n }\r\n acquireTokenAccountKey = AuthCache.generateAcquireTokenAccountKey(accountId, stateInfo.state);\r\n }\r\n var _a = ServerHashParamKeys.ERROR, hashErr = hashParams[_a], _b = ServerHashParamKeys.ERROR_DESCRIPTION, hashErrDesc = hashParams[_b];\r\n if (InteractionRequiredAuthError.isInteractionRequiredError(hashErr) ||\r\n InteractionRequiredAuthError.isInteractionRequiredError(hashErrDesc)) {\r\n error = new InteractionRequiredAuthError(hashParams[ServerHashParamKeys.ERROR], hashParams[ServerHashParamKeys.ERROR_DESCRIPTION]);\r\n }\r\n else {\r\n error = new ServerError(hashParams[ServerHashParamKeys.ERROR], hashParams[ServerHashParamKeys.ERROR_DESCRIPTION]);\r\n }\r\n }\r\n // If the server returns \"Success\"\r\n else {\r\n this.logger.verbose(\"Server returns success\");\r\n // Verify the state from redirect and record tokens to storage if exists\r\n if (stateInfo.stateMatch) {\r\n this.logger.info(\"State is right\");\r\n if (hashParams.hasOwnProperty(ServerHashParamKeys.SESSION_STATE)) {\r\n this.logger.verbose(\"Fragment has session state, caching\");\r\n this.cacheStorage.setItem(AuthCache.generateTemporaryCacheKey(TemporaryCacheKeys.SESSION_STATE, stateInfo.state), hashParams[ServerHashParamKeys.SESSION_STATE]);\r\n }\r\n response.accountState = this.getAccountState(stateInfo.state);\r\n var clientInfo = void 0;\r\n // Process access_token\r\n if (hashParams.hasOwnProperty(ServerHashParamKeys.ACCESS_TOKEN)) {\r\n this.logger.info(\"Fragment has access token\");\r\n response.accessToken = hashParams[ServerHashParamKeys.ACCESS_TOKEN];\r\n if (hashParams.hasOwnProperty(ServerHashParamKeys.SCOPE)) {\r\n response.scopes = hashParams[ServerHashParamKeys.SCOPE].split(\" \");\r\n }\r\n // retrieve the id_token from response if present\r\n if (hashParams.hasOwnProperty(ServerHashParamKeys.ID_TOKEN)) {\r\n this.logger.verbose(\"Fragment has id_token\");\r\n idTokenObj = new IdToken(hashParams[ServerHashParamKeys.ID_TOKEN]);\r\n }\r\n else {\r\n this.logger.verbose(\"No idToken on fragment, getting idToken from cache\");\r\n idTokenObj = new IdToken(this.cacheStorage.getItem(PersistentCacheKeys.IDTOKEN));\r\n }\r\n response = ResponseUtils.setResponseIdToken(response, idTokenObj);\r\n // set authority\r\n var authority = this.populateAuthority(stateInfo.state, this.inCookie, this.cacheStorage, idTokenObj);\r\n this.logger.verbose(\"Got authority from cache\");\r\n // retrieve client_info - if it is not found, generate the uid and utid from idToken\r\n if (hashParams.hasOwnProperty(ServerHashParamKeys.CLIENT_INFO)) {\r\n this.logger.verbose(\"Fragment has clientInfo\");\r\n clientInfo = new ClientInfo(hashParams[ServerHashParamKeys.CLIENT_INFO], authority);\r\n }\r\n else if (this.authorityInstance.AuthorityType === AuthorityType.Adfs) {\r\n clientInfo = ClientInfo.createClientInfoFromIdToken(idTokenObj, authority);\r\n }\r\n else {\r\n this.logger.warning(\"ClientInfo not received in the response from AAD\");\r\n }\r\n response.account = Account.createAccount(idTokenObj, clientInfo);\r\n this.logger.verbose(\"Account object created from response\");\r\n var accountKey = void 0;\r\n if (response.account && !StringUtils.isEmpty(response.account.homeAccountIdentifier)) {\r\n this.logger.verbose(\"AccountKey set\");\r\n accountKey = response.account.homeAccountIdentifier;\r\n }\r\n else {\r\n this.logger.verbose(\"AccountKey set as no_account\");\r\n accountKey = Constants.no_account;\r\n }\r\n acquireTokenAccountKey = AuthCache.generateAcquireTokenAccountKey(accountKey, stateInfo.state);\r\n var acquireTokenAccountKey_noaccount = AuthCache.generateAcquireTokenAccountKey(Constants.no_account, stateInfo.state);\r\n this.logger.verbose(\"AcquireTokenAccountKey generated\");\r\n var cachedAccount = this.cacheStorage.getItem(acquireTokenAccountKey);\r\n var acquireTokenAccount = void 0;\r\n // Check with the account in the Cache\r\n if (!StringUtils.isEmpty(cachedAccount)) {\r\n acquireTokenAccount = JSON.parse(cachedAccount);\r\n this.logger.verbose(\"AcquireToken request account retrieved from cache\");\r\n if (response.account && acquireTokenAccount && Account.compareAccounts(response.account, acquireTokenAccount)) {\r\n response = this.saveAccessToken(response, authority, hashParams, clientInfo);\r\n this.logger.info(\"The user object received in the response is the same as the one passed in the acquireToken request\");\r\n }\r\n else {\r\n this.logger.warning(\"The account object created from the response is not the same as the one passed in the acquireToken request\");\r\n }\r\n }\r\n else if (!StringUtils.isEmpty(this.cacheStorage.getItem(acquireTokenAccountKey_noaccount))) {\r\n this.logger.verbose(\"No acquireToken account retrieved from cache\");\r\n response = this.saveAccessToken(response, authority, hashParams, clientInfo);\r\n }\r\n }\r\n // Process id_token\r\n if (hashParams.hasOwnProperty(ServerHashParamKeys.ID_TOKEN)) {\r\n this.logger.info(\"Fragment has idToken\");\r\n // set the idToken\r\n idTokenObj = new IdToken(hashParams[ServerHashParamKeys.ID_TOKEN]);\r\n // set authority\r\n var authority = this.populateAuthority(stateInfo.state, this.inCookie, this.cacheStorage, idTokenObj);\r\n response = ResponseUtils.setResponseIdToken(response, idTokenObj);\r\n if (hashParams.hasOwnProperty(ServerHashParamKeys.CLIENT_INFO)) {\r\n this.logger.verbose(\"Fragment has clientInfo\");\r\n clientInfo = new ClientInfo(hashParams[ServerHashParamKeys.CLIENT_INFO], authority);\r\n }\r\n else if (this.authorityInstance.AuthorityType === AuthorityType.Adfs) {\r\n clientInfo = ClientInfo.createClientInfoFromIdToken(idTokenObj, authority);\r\n }\r\n else {\r\n this.logger.warning(\"ClientInfo not received in the response from AAD\");\r\n }\r\n this.account = Account.createAccount(idTokenObj, clientInfo);\r\n response.account = this.account;\r\n this.logger.verbose(\"Account object created from response\");\r\n if (idTokenObj && idTokenObj.nonce) {\r\n this.logger.verbose(\"IdToken has nonce\");\r\n // check nonce integrity if idToken has nonce - throw an error if not matched\r\n var cachedNonce = this.cacheStorage.getItem(AuthCache.generateTemporaryCacheKey(TemporaryCacheKeys.NONCE_IDTOKEN, stateInfo.state), this.inCookie);\r\n if (idTokenObj.nonce !== cachedNonce) {\r\n this.account = null;\r\n this.cacheStorage.setItem(ErrorCacheKeys.LOGIN_ERROR, \"Nonce Mismatch. Expected Nonce: \" + cachedNonce + \",\" + \"Actual Nonce: \" + idTokenObj.nonce);\r\n this.logger.error(\"Nonce Mismatch. Expected Nonce: \" + cachedNonce + \", Actual Nonce: \" + idTokenObj.nonce);\r\n error = ClientAuthError.createNonceMismatchError(cachedNonce, idTokenObj.nonce);\r\n }\r\n // Save the token\r\n else {\r\n this.logger.verbose(\"Nonce matches, saving idToken to cache\");\r\n this.cacheStorage.setItem(PersistentCacheKeys.IDTOKEN, hashParams[ServerHashParamKeys.ID_TOKEN], this.inCookie);\r\n this.cacheStorage.setItem(PersistentCacheKeys.CLIENT_INFO, clientInfo.encodeClientInfo(), this.inCookie);\r\n // Save idToken as access token item for app itself\r\n this.saveIdToken(response, authority, hashParams, clientInfo, idTokenObj);\r\n }\r\n }\r\n else {\r\n this.logger.verbose(\"No idToken or no nonce. Cache key for Authority set as state\");\r\n authorityKey = stateInfo.state;\r\n acquireTokenAccountKey = stateInfo.state;\r\n this.logger.error(\"Invalid id_token received in the response\");\r\n error = ClientAuthError.createInvalidIdTokenError(idTokenObj);\r\n this.cacheStorage.setItem(ErrorCacheKeys.ERROR, error.errorCode);\r\n this.cacheStorage.setItem(ErrorCacheKeys.ERROR_DESC, error.errorMessage);\r\n }\r\n }\r\n }\r\n // State mismatch - unexpected/invalid state\r\n else {\r\n this.logger.verbose(\"State mismatch\");\r\n authorityKey = stateInfo.state;\r\n acquireTokenAccountKey = stateInfo.state;\r\n var expectedState = this.cacheStorage.getItem(AuthCache.generateTemporaryCacheKey(TemporaryCacheKeys.STATE_LOGIN, stateInfo.state), this.inCookie);\r\n this.logger.error(\"State Mismatch. Expected State: \" + expectedState + \", Actual State: \" + stateInfo.state);\r\n error = ClientAuthError.createInvalidStateError(stateInfo.state, expectedState);\r\n this.cacheStorage.setItem(ErrorCacheKeys.ERROR, error.errorCode);\r\n this.cacheStorage.setItem(ErrorCacheKeys.ERROR_DESC, error.errorMessage);\r\n }\r\n }\r\n // Set status to completed\r\n this.cacheStorage.removeItem(AuthCache.generateTemporaryCacheKey(TemporaryCacheKeys.RENEW_STATUS, stateInfo.state));\r\n this.cacheStorage.resetTempCacheItems(stateInfo.state);\r\n this.logger.verbose(\"Status set to complete, temporary cache cleared\");\r\n // this is required if navigateToLoginRequestUrl=false\r\n if (this.inCookie) {\r\n this.logger.verbose(\"InCookie is true, setting authorityKey in cookie\");\r\n this.cacheStorage.setItemCookie(authorityKey, \"\", -1);\r\n this.cacheStorage.clearMsalCookie(stateInfo.state);\r\n }\r\n if (error) {\r\n // Error case, set status to cancelled\r\n throw error;\r\n }\r\n if (!response) {\r\n throw AuthError.createUnexpectedError(\"Response is null\");\r\n }\r\n return response;\r\n };\r\n /**\r\n * Set Authority when saving Token from the hash\r\n * @param state\r\n * @param inCookie\r\n * @param cacheStorage\r\n * @param idTokenObj\r\n * @param response\r\n */\r\n UserAgentApplication.prototype.populateAuthority = function (state, inCookie, cacheStorage, idTokenObj) {\r\n this.logger.verbose(\"PopulateAuthority has been called\");\r\n var authorityKey = AuthCache.generateAuthorityKey(state);\r\n var cachedAuthority = cacheStorage.getItem(authorityKey, inCookie);\r\n // retrieve the authority from cache and replace with tenantID\r\n return StringUtils.isEmpty(cachedAuthority) ? cachedAuthority : UrlUtils.replaceTenantPath(cachedAuthority, idTokenObj.tenantId);\r\n };\r\n /* tslint:enable:no-string-literal */\r\n // #endregion\r\n // #region Account\r\n /**\r\n * Returns the signed in account\r\n * (the account object is created at the time of successful login)\r\n * or null when no state is found\r\n * @returns {@link Account} - the account object stored in MSAL\r\n */\r\n UserAgentApplication.prototype.getAccount = function () {\r\n // if a session already exists, get the account from the session\r\n if (this.account) {\r\n return this.account;\r\n }\r\n // frame is used to get idToken and populate the account for the given session\r\n var rawIdToken = this.cacheStorage.getItem(PersistentCacheKeys.IDTOKEN, this.inCookie);\r\n var rawClientInfo = this.cacheStorage.getItem(PersistentCacheKeys.CLIENT_INFO, this.inCookie);\r\n if (!StringUtils.isEmpty(rawIdToken) && !StringUtils.isEmpty(rawClientInfo)) {\r\n var idToken = new IdToken(rawIdToken);\r\n var clientInfo = new ClientInfo(rawClientInfo, \"\");\r\n this.account = Account.createAccount(idToken, clientInfo);\r\n return this.account;\r\n }\r\n // if login not yet done, return null\r\n return null;\r\n };\r\n /**\r\n * @hidden\r\n *\r\n * Extracts state value from the accountState sent with the authentication request.\r\n * @returns {string} scope.\r\n * @ignore\r\n */\r\n UserAgentApplication.prototype.getAccountState = function (state) {\r\n if (state) {\r\n var splitIndex = state.indexOf(Constants.resourceDelimiter);\r\n if (splitIndex > -1 && splitIndex + 1 < state.length) {\r\n return state.substring(splitIndex + 1);\r\n }\r\n }\r\n return state;\r\n };\r\n /**\r\n * Use to get a list of unique accounts in MSAL cache based on homeAccountIdentifier.\r\n *\r\n * @param {@link Array} Account - all unique accounts in MSAL cache.\r\n */\r\n UserAgentApplication.prototype.getAllAccounts = function () {\r\n var accounts = [];\r\n var accessTokenCacheItems = this.cacheStorage.getAllAccessTokens(Constants.clientId, Constants.homeAccountIdentifier);\r\n for (var i = 0; i < accessTokenCacheItems.length; i++) {\r\n var idToken = new IdToken(accessTokenCacheItems[i].value.idToken);\r\n var clientInfo = new ClientInfo(accessTokenCacheItems[i].value.homeAccountIdentifier, \"\");\r\n var account = Account.createAccount(idToken, clientInfo);\r\n accounts.push(account);\r\n }\r\n return this.getUniqueAccounts(accounts);\r\n };\r\n /**\r\n * @hidden\r\n *\r\n * Used to filter accounts based on homeAccountIdentifier\r\n * @param {Array} Accounts - accounts saved in the cache\r\n * @ignore\r\n */\r\n UserAgentApplication.prototype.getUniqueAccounts = function (accounts) {\r\n if (!accounts || accounts.length <= 1) {\r\n return accounts;\r\n }\r\n var flags = [];\r\n var uniqueAccounts = [];\r\n for (var index = 0; index < accounts.length; ++index) {\r\n if (accounts[index].homeAccountIdentifier && flags.indexOf(accounts[index].homeAccountIdentifier) === -1) {\r\n flags.push(accounts[index].homeAccountIdentifier);\r\n uniqueAccounts.push(accounts[index]);\r\n }\r\n }\r\n return uniqueAccounts;\r\n };\r\n // #endregion\r\n // #region Angular\r\n /**\r\n * @hidden\r\n *\r\n * Broadcast messages - Used only for Angular? *\r\n * @param eventName\r\n * @param data\r\n */\r\n UserAgentApplication.prototype.broadcast = function (eventName, data) {\r\n var evt = new CustomEvent(eventName, { detail: data });\r\n window.dispatchEvent(evt);\r\n };\r\n /**\r\n * @hidden\r\n *\r\n * Helper function to retrieve the cached token\r\n *\r\n * @param scopes\r\n * @param {@link Account} account\r\n * @param state\r\n * @return {@link AuthResponse} AuthResponse\r\n */\r\n UserAgentApplication.prototype.getCachedTokenInternal = function (scopes, account, state, correlationId) {\r\n // Get the current session's account object\r\n var accountObject = account || this.getAccount();\r\n if (!accountObject) {\r\n return null;\r\n }\r\n // Construct AuthenticationRequest based on response type; set \"redirectUri\" from the \"request\" which makes this call from Angular - for this.getRedirectUri()\r\n var newAuthority = this.authorityInstance ? this.authorityInstance : AuthorityFactory.CreateInstance(this.authority, this.config.auth.validateAuthority);\r\n var responseType = this.getTokenType(accountObject, scopes);\r\n var serverAuthenticationRequest = new ServerRequestParameters(newAuthority, this.clientId, responseType, this.getRedirectUri(), scopes, state, correlationId);\r\n // get cached token\r\n return this.getCachedToken(serverAuthenticationRequest, account);\r\n };\r\n /**\r\n * @hidden\r\n *\r\n * Get scopes for the Endpoint - Used in Angular to track protected and unprotected resources without interaction from the developer app\r\n * Note: Please check if we need to set the \"redirectUri\" from the \"request\" which makes this call from Angular - for this.getRedirectUri()\r\n *\r\n * @param endpoint\r\n */\r\n UserAgentApplication.prototype.getScopesForEndpoint = function (endpoint) {\r\n // if user specified list of unprotectedResources, no need to send token to these endpoints, return null.\r\n if (this.config.framework.unprotectedResources.length > 0) {\r\n for (var i = 0; i < this.config.framework.unprotectedResources.length; i++) {\r\n if (endpoint.indexOf(this.config.framework.unprotectedResources[i]) > -1) {\r\n return null;\r\n }\r\n }\r\n }\r\n // process all protected resources and send the matched one\r\n if (this.config.framework.protectedResourceMap.size > 0) {\r\n for (var _i = 0, _a = Array.from(this.config.framework.protectedResourceMap.keys()); _i < _a.length; _i++) {\r\n var key = _a[_i];\r\n // configEndpoint is like /api/Todo requested endpoint can be /api/Todo/1\r\n if (endpoint.indexOf(key) > -1) {\r\n return this.config.framework.protectedResourceMap.get(key);\r\n }\r\n }\r\n }\r\n /*\r\n * default resource will be clientid if nothing specified\r\n * App will use idtoken for calls to itself\r\n * check if it's staring from http or https, needs to match with app host\r\n */\r\n if (endpoint.indexOf(\"http://\") > -1 || endpoint.indexOf(\"https://\") > -1) {\r\n if (UrlUtils.getHostFromUri(endpoint) === UrlUtils.getHostFromUri(this.getRedirectUri())) {\r\n return new Array(this.clientId);\r\n }\r\n }\r\n else {\r\n /*\r\n * in angular level, the url for $http interceptor call could be relative url,\r\n * if it's relative call, we'll treat it as app backend call.\r\n */\r\n return new Array(this.clientId);\r\n }\r\n // if not the app's own backend or not a domain listed in the endpoints structure\r\n return null;\r\n };\r\n /**\r\n * Return boolean flag to developer to help inform if login is in progress\r\n * @returns {boolean} true/false\r\n */\r\n UserAgentApplication.prototype.getLoginInProgress = function () {\r\n return this.cacheStorage.getItem(TemporaryCacheKeys.INTERACTION_STATUS) === Constants.inProgress;\r\n };\r\n /**\r\n * @hidden\r\n * @ignore\r\n *\r\n * @param loginInProgress\r\n */\r\n UserAgentApplication.prototype.setInteractionInProgress = function (inProgress) {\r\n if (inProgress) {\r\n this.cacheStorage.setItem(TemporaryCacheKeys.INTERACTION_STATUS, Constants.inProgress);\r\n }\r\n else {\r\n this.cacheStorage.removeItem(TemporaryCacheKeys.INTERACTION_STATUS);\r\n }\r\n };\r\n /**\r\n * @hidden\r\n * @ignore\r\n *\r\n * @param loginInProgress\r\n */\r\n UserAgentApplication.prototype.setloginInProgress = function (loginInProgress) {\r\n this.setInteractionInProgress(loginInProgress);\r\n };\r\n /**\r\n * @hidden\r\n * @ignore\r\n *\r\n * returns the status of acquireTokenInProgress\r\n */\r\n UserAgentApplication.prototype.getAcquireTokenInProgress = function () {\r\n return this.cacheStorage.getItem(TemporaryCacheKeys.INTERACTION_STATUS) === Constants.inProgress;\r\n };\r\n /**\r\n * @hidden\r\n * @ignore\r\n *\r\n * @param acquireTokenInProgress\r\n */\r\n UserAgentApplication.prototype.setAcquireTokenInProgress = function (acquireTokenInProgress) {\r\n this.setInteractionInProgress(acquireTokenInProgress);\r\n };\r\n /**\r\n * @hidden\r\n * @ignore\r\n *\r\n * returns the logger handle\r\n */\r\n UserAgentApplication.prototype.getLogger = function () {\r\n return this.logger;\r\n };\r\n /**\r\n * Sets the logger callback.\r\n * @param logger Logger callback\r\n */\r\n UserAgentApplication.prototype.setLogger = function (logger) {\r\n this.logger = logger;\r\n };\r\n // #endregion\r\n // #region Getters and Setters\r\n /**\r\n * Use to get the redirect uri configured in MSAL or null.\r\n * Evaluates redirectUri if its a function, otherwise simply returns its value.\r\n *\r\n * @returns {string} redirect URL\r\n */\r\n UserAgentApplication.prototype.getRedirectUri = function (reqRedirectUri) {\r\n if (reqRedirectUri) {\r\n return reqRedirectUri;\r\n }\r\n else if (typeof this.config.auth.redirectUri === \"function\") {\r\n return this.config.auth.redirectUri();\r\n }\r\n return this.config.auth.redirectUri;\r\n };\r\n /**\r\n * Use to get the post logout redirect uri configured in MSAL or null.\r\n * Evaluates postLogoutredirectUri if its a function, otherwise simply returns its value.\r\n *\r\n * @returns {string} post logout redirect URL\r\n */\r\n UserAgentApplication.prototype.getPostLogoutRedirectUri = function () {\r\n if (typeof this.config.auth.postLogoutRedirectUri === \"function\") {\r\n return this.config.auth.postLogoutRedirectUri();\r\n }\r\n return this.config.auth.postLogoutRedirectUri;\r\n };\r\n /**\r\n * Use to get the current {@link Configuration} object in MSAL\r\n *\r\n * @returns {@link Configuration}\r\n */\r\n UserAgentApplication.prototype.getCurrentConfiguration = function () {\r\n if (!this.config) {\r\n throw ClientConfigurationError.createNoSetConfigurationError();\r\n }\r\n return this.config;\r\n };\r\n /**\r\n * @ignore\r\n *\r\n * Utils function to create the Authentication\r\n * @param {@link account} account object\r\n * @param scopes\r\n *\r\n * @returns {string} token type: token, id_token or id_token token\r\n *\r\n */\r\n UserAgentApplication.prototype.getTokenType = function (accountObject, scopes) {\r\n var accountsMatch = Account.compareAccounts(accountObject, this.getAccount());\r\n return ServerRequestParameters.determineResponseType(accountsMatch, scopes);\r\n };\r\n /**\r\n * @hidden\r\n * @ignore\r\n *\r\n * Sets the cachekeys for and stores the account information in cache\r\n * @param account\r\n * @param state\r\n * @hidden\r\n */\r\n UserAgentApplication.prototype.setAccountCache = function (account, state) {\r\n // Cache acquireTokenAccountKey\r\n var accountId = account ? this.getAccountId(account) : Constants.no_account;\r\n var acquireTokenAccountKey = AuthCache.generateAcquireTokenAccountKey(accountId, state);\r\n this.cacheStorage.setItem(acquireTokenAccountKey, JSON.stringify(account));\r\n };\r\n /**\r\n * @hidden\r\n * @ignore\r\n *\r\n * Sets the cacheKey for and stores the authority information in cache\r\n * @param state\r\n * @param authority\r\n * @hidden\r\n */\r\n UserAgentApplication.prototype.setAuthorityCache = function (state, authority) {\r\n // Cache authorityKey\r\n var authorityKey = AuthCache.generateAuthorityKey(state);\r\n this.cacheStorage.setItem(authorityKey, UrlUtils.CanonicalizeUri(authority), this.inCookie);\r\n };\r\n /**\r\n * Updates account, authority, and nonce in cache\r\n * @param serverAuthenticationRequest\r\n * @param account\r\n * @hidden\r\n * @ignore\r\n */\r\n UserAgentApplication.prototype.updateCacheEntries = function (serverAuthenticationRequest, account, isLoginCall, loginStartPage) {\r\n // Cache Request Originator Page\r\n if (loginStartPage) {\r\n this.cacheStorage.setItem(AuthCache.generateTemporaryCacheKey(TemporaryCacheKeys.LOGIN_REQUEST, serverAuthenticationRequest.state), loginStartPage, this.inCookie);\r\n }\r\n // Cache account and authority\r\n if (isLoginCall) {\r\n // Cache the state\r\n this.cacheStorage.setItem(AuthCache.generateTemporaryCacheKey(TemporaryCacheKeys.STATE_LOGIN, serverAuthenticationRequest.state), serverAuthenticationRequest.state, this.inCookie);\r\n }\r\n else {\r\n this.setAccountCache(account, serverAuthenticationRequest.state);\r\n }\r\n // Cache authorityKey\r\n this.setAuthorityCache(serverAuthenticationRequest.state, serverAuthenticationRequest.authority);\r\n // Cache nonce\r\n this.cacheStorage.setItem(AuthCache.generateTemporaryCacheKey(TemporaryCacheKeys.NONCE_IDTOKEN, serverAuthenticationRequest.state), serverAuthenticationRequest.nonce, this.inCookie);\r\n };\r\n /**\r\n * Returns the unique identifier for the logged in account\r\n * @param account\r\n * @hidden\r\n * @ignore\r\n */\r\n UserAgentApplication.prototype.getAccountId = function (account) {\r\n // return `${account.accountIdentifier}` + Constants.resourceDelimiter + `${account.homeAccountIdentifier}`;\r\n var accountId;\r\n if (!StringUtils.isEmpty(account.homeAccountIdentifier)) {\r\n accountId = account.homeAccountIdentifier;\r\n }\r\n else {\r\n accountId = Constants.no_account;\r\n }\r\n return accountId;\r\n };\r\n /**\r\n * @ignore\r\n * @param extraQueryParameters\r\n *\r\n * Construct 'tokenRequest' from the available data in adalIdToken\r\n */\r\n UserAgentApplication.prototype.buildIDTokenRequest = function (request) {\r\n var tokenRequest = {\r\n scopes: Constants.oidcScopes,\r\n authority: this.authority,\r\n account: this.getAccount(),\r\n extraQueryParameters: request.extraQueryParameters,\r\n correlationId: request.correlationId\r\n };\r\n return tokenRequest;\r\n };\r\n /**\r\n * @ignore\r\n * @param config\r\n * @param clientId\r\n *\r\n * Construct TelemetryManager from Configuration\r\n */\r\n UserAgentApplication.prototype.getTelemetryManagerFromConfig = function (config, clientId) {\r\n if (!config) { // if unset\r\n return TelemetryManager.getTelemetrymanagerStub(clientId, this.logger);\r\n }\r\n // if set then validate\r\n var applicationName = config.applicationName, applicationVersion = config.applicationVersion, telemetryEmitter = config.telemetryEmitter;\r\n if (!applicationName || !applicationVersion || !telemetryEmitter) {\r\n throw ClientConfigurationError.createTelemetryConfigError(config);\r\n }\r\n // if valid then construct\r\n var telemetryPlatform = {\r\n applicationName: applicationName,\r\n applicationVersion: applicationVersion\r\n };\r\n var telemetryManagerConfig = {\r\n platform: telemetryPlatform,\r\n clientId: clientId\r\n };\r\n return new TelemetryManager(telemetryManagerConfig, telemetryEmitter, this.logger);\r\n };\r\n return UserAgentApplication;\r\n}());\r\nexport { UserAgentApplication };\r\n//# sourceMappingURL=UserAgentApplication.js.map","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./subcategoriaproductoEdit.vue?vue&type=style&index=0&lang=css&\"","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('modal',{attrs:{\"show\":_vm.modalEdit},on:{\"update:show\":function($event){_vm.modalEdit=$event}}},[_c('h4',{staticClass:\"title title-up\",attrs:{\"slot\":\"header\"},slot:\"header\"},[_vm._v(\" \"+_vm._s(_vm.$t(\"app.modules.currencies.edit.title\"))+\" \")]),_c('ValidationObserver',{ref:\"formEdit\",scopedSlots:_vm._u([{key:\"default\",fn:function(ref){\nvar handleSubmit = ref.handleSubmit;\nreturn [_c('form',{on:{\"submit\":function($event){$event.preventDefault();return handleSubmit(_vm.editRow)}}},[_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-sm-12\"},[_c('ValidationProvider',{attrs:{\"name\":\"minLength\",\"rules\":\"required|min:2\"},scopedSlots:_vm._u([{key:\"default\",fn:function(ref){\nvar passed = ref.passed;\nvar failed = ref.failed;\nreturn [_c('fg-input',{attrs:{\"type\":\"text\",\"error\":failed ? 'La longitud mínima para el nombre es de 2 ' : null,\"hasSuccess\":passed,\"name\":\"minLength\",\"label\":_vm.$t('app.modules.currencies.headers.name')},model:{value:(_vm.item.nombre),callback:function ($$v) {_vm.$set(_vm.item, \"nombre\", $$v)},expression:\"item.nombre\"}})]}}],null,true)})],1)]),_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-sm-6\"},[_c('ValidationProvider',{attrs:{\"name\":\"minLength\",\"rules\":\"required|min:2\"},scopedSlots:_vm._u([{key:\"default\",fn:function(ref){\nvar passed = ref.passed;\nvar failed = ref.failed;\nreturn [_c('fg-input',{attrs:{\"type\":\"text\",\"error\":failed ? 'La longitud mínima para el nombre es de 5 ' : null,\"hasSuccess\":passed,\"name\":\"minLength\",\"label\":_vm.$t('app.modules.currencies.headers.abbreviation')},model:{value:(_vm.item.abreviatura),callback:function ($$v) {_vm.$set(_vm.item, \"abreviatura\", $$v)},expression:\"item.abreviatura\"}})]}}],null,true)})],1)]),_c('div',{staticClass:\"col-sm-6 form-group has-label\"},[_c('div',{staticClass:\"row\"},[_c('label',{staticStyle:{\"margin-left\":\"15px\"}},[_vm._v(\"Estatus\")])]),[_c('n-switch',{model:{value:(_vm.item.activo),callback:function ($$v) {_vm.$set(_vm.item, \"activo\", $$v)},expression:\"item.activo\"}},[_c('i',{staticClass:\"now-ui-icons ui-1_check\",attrs:{\"slot\":\"on\"},slot:\"on\"}),_c('i',{staticClass:\"now-ui-icons ui-1_simple-remove\",attrs:{\"slot\":\"off\"},slot:\"off\"})])]],2),_c('div',{staticClass:\"text-right\",staticStyle:{\"margin-top\":\"10px\",\"padding-top\":\"20px\",\"border-top\":\"outset\"},attrs:{\"slot\":\"footer\"},slot:\"footer\"},[_c('n-button',{staticClass:\"pull-left btn-secondary\",nativeOn:{\"click\":function($event){return _vm.cancelEdit()}}},[_vm._v(_vm._s(_vm.$t(\"app.buttons.cancel\")))]),_c('n-button',{attrs:{\"native-type\":\"submit\",\"type\":\"primary\"}},[_vm._v(_vm._s(_vm.$t(\"app.buttons.save\")))])],1)])]}}])})],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\n\r\n\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./monedasEdit.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./monedasEdit.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./monedasEdit.vue?vue&type=template&id=212a1f62&\"\nimport script from \"./monedasEdit.vue?vue&type=script&lang=js&\"\nexport * from \"./monedasEdit.vue?vue&type=script&lang=js&\"\nimport style0 from \"./monedasEdit.vue?vue&type=style&index=0&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-12\"},[_c('div',{staticClass:\"new-button-div\"},[_c('verify-permission',{attrs:{\"controller\":\"PropiedadFamiliaProducto\",\"action\":\"addPropiedadFamiliaProducto\"}},[_c('n-button',{attrs:{\"type\":\"primary\",\"round\":\"\"},nativeOn:{\"click\":function($event){return _vm.openItemAdd()}}},[_c('i',{staticClass:\"now-ui-icons ui-1_simple-add\",attrs:{\"slot\":\"label\"},slot:\"label\"}),_vm._v(\" \"+_vm._s(_vm.$t(\"app.buttons.new\"))+\" \")])],1)],1),_c('card',{attrs:{\"card-body-classes\":\"table-full-width\",\"no-footer-line\":\"\"}},[_c('div',[_c('div',{staticClass:\"col-12 d-flex justify-content-center justify-content-sm-between flex-wrap\"},[_c('h4',{staticClass:\"card-title text-purple\"},[_vm._v(_vm._s(_vm.$t(\"app.modules.product_family_prop.title\")))]),_c('fg-input',[_c('el-input',{staticClass:\"mb-3\",staticStyle:{\"width\":\"300px\"},attrs:{\"type\":\"search\",\"clearable\":\"\",\"prefix-icon\":\"el-icon-search \",\"placeholder\":_vm.$t('app.general.search'),\"aria-controls\":\"datatables\"},model:{value:(_vm.searchQuery),callback:function ($$v) {_vm.searchQuery=$$v},expression:\"searchQuery\"}})],1)],1),_c('el-table',{staticStyle:{\"width\":\"100%\"},attrs:{\"stripe\":\"\",\"data\":_vm.queriedData}},[_vm._l((_vm.tableColumns),function(column){return _c('el-table-column',{key:column.label,attrs:{\"minWidth\":column.minWidth,\"prop\":column.prop,\"label\":_vm.$t(column.label),\"className\":column.className,\"sortable\":\"\"}})}),_c('el-table-column',{attrs:{\"className\":\"is-center\",\"labelClassName\":\"is-center\",\"label\":_vm.$t('app.modules.product_family_prop.headers.content_type'),\"minWidth\":\"200\"},scopedSlots:_vm._u([{key:\"default\",fn:function(scope){return [_vm._v(\" \"+_vm._s(_vm.$t('app.modules.product_family_prop.headers.'+scope.row.tipo))+\" \")]}}])}),_c('el-table-column',{attrs:{\"className\":\"is-center\",\"labelClassName\":\"is-center\",\"label\":_vm.$t('app.modules.product_family_prop.headers.status'),\"minWidth\":\"160\"},scopedSlots:_vm._u([{key:\"default\",fn:function(scope){return [_c('n-switch',{attrs:{\"color\":\"black\"},on:{\"input\":function($event){return _vm.active(scope.row)}},model:{value:(scope.row.activo),callback:function ($$v) {_vm.$set(scope.row, \"activo\", $$v)},expression:\"scope.row.activo\"}},[_c('i',{staticClass:\"now-ui-icons ui-1_check\",attrs:{\"slot\":\"on\"},slot:\"on\"}),_c('i',{staticClass:\"now-ui-icons ui-1_simple-remove\",attrs:{\"slot\":\"off\"},slot:\"off\"})])]}}])}),_c('el-table-column',{attrs:{\"minWidth\":200,\"className\":\"is-center\",\"labelClassName\":\"is-center\"},scopedSlots:_vm._u([{key:\"default\",fn:function(scope){return _c('div',{staticClass:\"table-actions dropdown\"},[_c('el-popover',{attrs:{\"placement\":\"bottom\",\"width\":\"250\",\"trigger\":\"click\"}},[_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-12 options\"},[_c('verify-permission',{attrs:{\"controller\":\"PropiedadFamiliaProducto\",\"action\":\"updatePropiedadFamiliaProducto\"}},[_c('n-button',{staticClass:\"options-button\",attrs:{\"type\":\"primary\",\"size\":\"sm\"},nativeOn:{\"click\":function($event){return _vm.openItemEdit(scope.row)}}},[_vm._v(\" \"+_vm._s(_vm.$t('app.buttons.edit'))+\" \")])],1)],1)]),_c('n-button',{staticStyle:{\"background-color\":\"white\"},attrs:{\"slot\":\"reference\",\"size\":\"sm\",\"icon\":\"\"},slot:\"reference\"},[_c('i',{staticClass:\"fa fa-ellipsis-v\",staticStyle:{\"color\":\"black\"}})])],1)],1)}}])})],2)],1),_c('div',{staticClass:\"col-12 d-flex justify-content-center justify-content-sm-between flex-wrap\",attrs:{\"slot\":\"footer\"},slot:\"footer\"},[_c('div',{},[_c('p',{staticClass:\"card-category\"},[_vm._v(\" \"+_vm._s(_vm.$t(\"app.pagination.showing\"))+\" \"+_vm._s(_vm.from + 1)+\" \"+_vm._s(_vm.$t(\"app.pagination.of\"))+\" \"+_vm._s(_vm.to)+\" \"+_vm._s(_vm.$t(\"app.pagination.of\"))+\" \"+_vm._s(_vm.total)+\" \"+_vm._s(_vm.$t(\"app.pagination.records\"))+\" \")])]),_c('n-pagination',{staticClass:\"pagination-no-border\",attrs:{\"per-page\":_vm.pagination.perPage,\"total\":_vm.total},model:{value:(_vm.pagination.currentPage),callback:function ($$v) {_vm.$set(_vm.pagination, \"currentPage\", $$v)},expression:\"pagination.currentPage\"}})],1)]),_c('propiedad-familia-producto-add')],1)])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\n\r\n\r\n\r\n\r\n\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./propiedadFamiliaProducto.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./propiedadFamiliaProducto.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./propiedadFamiliaProducto.vue?vue&type=template&id=12ae3eb3&scoped=true&\"\nimport script from \"./propiedadFamiliaProducto.vue?vue&type=script&lang=js&\"\nexport * from \"./propiedadFamiliaProducto.vue?vue&type=script&lang=js&\"\nimport style0 from \"./propiedadFamiliaProducto.vue?vue&type=style&index=0&lang=css&\"\nimport style1 from \"./propiedadFamiliaProducto.vue?vue&type=style&index=1&id=12ae3eb3&scoped=true&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"12ae3eb3\",\n null\n \n)\n\nexport default component.exports","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./familiaProductoAddEdit.vue?vue&type=style&index=0&lang=css&\"","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-12\"},[_c('div',{staticClass:\"card\"},[_c('div',{staticClass:\"card-header\"},[_c('h4',{staticClass:\"card-title\"},[_vm._v(\" \"+_vm._s(_vm.$t(_vm.title))+\" \")])]),_c('div',{staticClass:\"card-body\"},[_c('ValidationObserver',{ref:\"formAdd\",scopedSlots:_vm._u([{key:\"default\",fn:function(ref){\nvar handleSubmit = ref.handleSubmit;\nreturn [_c('form',{on:{\"submit\":function($event){$event.preventDefault();return handleSubmit(_vm.submitNewRole)}}},[_vm._l((_vm.role.traducciones),function(lang,index){return _c('div',{key:'rol-tem' + index,staticClass:\"row\"},[_c('div',{staticClass:\"col-2\"},[_c('div',{staticClass:\"form-group has-label\"},[_c('label',[_vm._v(_vm._s(lang.idioma.idioma))])])]),_c('div',{staticClass:\"col-5\"},[_c('div',{staticClass:\"form-group has-label\"},[_c('fg-input',{attrs:{\"type\":\"text\",\"placeholder\":lang.idioma.idioma,\"label\":_vm.$t('app.modules.roles.headers.name')},model:{value:(lang.nombre),callback:function ($$v) {_vm.$set(lang, \"nombre\", $$v)},expression:\"lang.nombre\"}})],1)]),_c('div',{staticClass:\"col-5\"},[_c('div',{staticClass:\"form-group has-label\"},[_c('label',[_vm._v(_vm._s(_vm.$t(\"app.modules.roles.headers.description\")))]),_c('el-input',{attrs:{\"type\":\"textarea\",\"rows\":2,\"placeholder\":_vm.$t('app.modules.roles.headers.description')},model:{value:(lang.descripcion),callback:function ($$v) {_vm.$set(lang, \"descripcion\", $$v)},expression:\"lang.descripcion\"}})],1)])])}),_c('div',{staticClass:\"row\",staticStyle:{\"margin-top\":\"10px\"}},[_c('div',{staticClass:\"col-4\"},[_c('label',{staticStyle:{\"margin-right\":\"10px\"}},[_vm._v(_vm._s(_vm.$t(\"app.modules.roles.headers.external\")))]),_c('n-switch',{model:{value:(_vm.role.externo),callback:function ($$v) {_vm.$set(_vm.role, \"externo\", $$v)},expression:\"role.externo\"}},[_c('i',{staticClass:\"now-ui-icons ui-1_check\",attrs:{\"slot\":\"on\"},slot:\"on\"}),_c('i',{staticClass:\"now-ui-icons ui-1_simple-remove\",attrs:{\"slot\":\"off\"},slot:\"off\"})])],1),_c('div',{staticClass:\"col-4\"},[_c('div',{staticClass:\"form-group has-label\"},[_c('label',{staticStyle:{\"margin-right\":\"10px\"}},[_vm._v(_vm._s(_vm.$t(\"app.general.state\")))]),_c('n-switch',{model:{value:(_vm.role.activo),callback:function ($$v) {_vm.$set(_vm.role, \"activo\", $$v)},expression:\"role.activo\"}},[_c('i',{staticClass:\"now-ui-icons ui-1_check\",attrs:{\"slot\":\"on\"},slot:\"on\"}),_c('i',{staticClass:\"now-ui-icons ui-1_simple-remove\",attrs:{\"slot\":\"off\"},slot:\"off\"})])],1)])]),_c('h3',[_c('small',[_vm._v(\"Permisos\")])]),_c('div',{staticClass:\"row table-full-width\"},[_c('div',{staticClass:\"col-12\"},[_c('el-table',{ref:\"multipleTable\",staticStyle:{\"width\":\"100%\"},attrs:{\"stripe\":\"\",\"data\":_vm.groups},on:{\"select-all\":_vm.handleCheckAll,\"select\":_vm.handleCheckRow}},[_c('el-table-column',{attrs:{\"label\":_vm.$t('app.modules.roles.headers.groups'),\"width\":\"300\"},scopedSlots:_vm._u([{key:\"default\",fn:function(scope){return [_vm._v(\" \"+_vm._s(scope.row.name)+\" \")]}}],null,true)}),_c('el-table-column',{attrs:{\"type\":\"selection\",\"width\":\"55\"}}),_c('el-table-column',{attrs:{\"label\":\"Permisos\"},scopedSlots:_vm._u([{key:\"default\",fn:function(scope){return [_c('el-checkbox-group',{nativeOn:{\"change\":function($event){return _vm.handleCheckPermission(scope.row)}},model:{value:(scope.row.checkedPermisos),callback:function ($$v) {_vm.$set(scope.row, \"checkedPermisos\", $$v)},expression:\"scope.row.checkedPermisos\"}},[_c('div',{staticClass:\"row\"},_vm._l((scope.row.permisos),function(permiso,index){return _c('div',{key:'tem-pemmi' + index,staticClass:\"col-4 custom-checkbox\"},[(permiso.name !== null)?_c('div',[_c('n-checkbox',{key:permiso.action,attrs:{\"label\":permiso.action}},[_vm._v(\" \"+_vm._s(permiso.name !== null ? permiso.name : permiso.action)+\" \")])],1):_vm._e()])}),0)])]}}],null,true)})],1)],1)]),_c('div',{staticClass:\"text-right\",staticStyle:{\"margin-top\":\"10px\",\"padding-top\":\"20px\",\"border-top\":\"outset\"},attrs:{\"slot\":\"footer\"},slot:\"footer\"},[_c('router-link',{staticClass:\"col-2\",attrs:{\"to\":{ name: 'Roles' }}},[_c('n-button',{staticClass:\"pull-left btn-secondary\"},[_vm._v(_vm._s(_vm.$t(\"app.buttons.cancel\")))])],1),_c('verify-permission',{attrs:{\"controller\":\"Roles\",\"action\":\"addRole\"}},[_c('n-button',{attrs:{\"native-type\":\"submit\",\"type\":\"primary\"}},[_vm._v(_vm._s(_vm.$t(\"app.buttons.save\")))])],1)],1)],2)]}}])})],1)])])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\n\r\n\r\n\r\n\r\n\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./perfilesAddEdit.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./perfilesAddEdit.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./perfilesAddEdit.vue?vue&type=template&id=438eb8b2&scoped=true&\"\nimport script from \"./perfilesAddEdit.vue?vue&type=script&lang=js&\"\nexport * from \"./perfilesAddEdit.vue?vue&type=script&lang=js&\"\nimport style0 from \"./perfilesAddEdit.vue?vue&type=style&index=0&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"438eb8b2\",\n null\n \n)\n\nexport default component.exports","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./incidenciaEdit.vue?vue&type=style&index=0&lang=css&\"","class SubcategoriaProducto\r\n{\r\n idSubcategoriaProducto = 0;\r\n nombreSubcategoria = \"\";\r\n activo = true;\r\n idCategoriaProducto = 0;\r\n accion = \"\";\r\n fechahora = \"\";\r\n nombreCategoria = \"\";\r\n usuarios_idUsuario = 0;\r\n\r\n traducciones = null;\r\n\r\n constructor(obj = {}) {\r\n Object.assign(this, obj);\r\n }\r\n}\r\n\r\nmodule.exports = SubcategoriaProducto;\r\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('modal',{attrs:{\"show\":_vm.modals.classic},on:{\"update:show\":function($event){return _vm.$set(_vm.modals, \"classic\", $event)}}},[_c('h4',{staticClass:\"title title-up\",attrs:{\"slot\":\"header\"},slot:\"header\"},[_vm._v(\" \"+_vm._s(_vm.$t(\"app.modules.measurements.add.title\"))+\" \")]),_c('ValidationObserver',{ref:\"formAdd\",scopedSlots:_vm._u([{key:\"default\",fn:function(ref){\nvar handleSubmit = ref.handleSubmit;\nreturn [_c('form',{on:{\"submit\":function($event){$event.preventDefault();return handleSubmit(_vm.submitNewUnidadMedida)}}},[_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-sm-12\"},[_c('ValidationProvider',{attrs:{\"name\":\"minLength\",\"rules\":\"required|min:2\"},scopedSlots:_vm._u([{key:\"default\",fn:function(ref){\nvar passed = ref.passed;\nvar failed = ref.failed;\nreturn [_c('fg-input',{attrs:{\"type\":\"text\",\"error\":failed ? 'La longitud mínima para el nombre es de 2 ' : null,\"hasSuccess\":passed,\"name\":\"minLength\",\"label\":_vm.$t('app.modules.measurements.headers.name')},model:{value:(_vm.item.nombre),callback:function ($$v) {_vm.$set(_vm.item, \"nombre\", $$v)},expression:\"item.nombre\"}})]}}],null,true)})],1)]),_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-sm-12\"},[_c('ValidationProvider',{attrs:{\"name\":\"minLength\",\"rules\":\"required|min:2\"},scopedSlots:_vm._u([{key:\"default\",fn:function(ref){\nvar passed = ref.passed;\nvar failed = ref.failed;\nreturn [_c('fg-input',{attrs:{\"type\":\"text\",\"error\":failed ? 'La longitud mínima para el nombre es de 2 ' : null,\"hasSuccess\":passed,\"name\":\"minLength\",\"label\":_vm.$t('app.modules.measurements.headers.abbreviation')},model:{value:(_vm.item.abreviacion),callback:function ($$v) {_vm.$set(_vm.item, \"abreviacion\", $$v)},expression:\"item.abreviacion\"}})]}}],null,true)})],1)]),_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-sm-6 form-group has-label\"},[_c('div',{staticClass:\"row\"},[_c('label',{staticStyle:{\"margin-left\":\"15px\"}},[_vm._v(_vm._s(_vm.$t(\"app.general.state\")))])]),[_c('n-switch',{model:{value:(_vm.item.activo),callback:function ($$v) {_vm.$set(_vm.item, \"activo\", $$v)},expression:\"item.activo\"}},[_c('i',{staticClass:\"now-ui-icons ui-1_check\",attrs:{\"slot\":\"on\"},slot:\"on\"}),_c('i',{staticClass:\"now-ui-icons ui-1_simple-remove\",attrs:{\"slot\":\"off\"},slot:\"off\"})])]],2)]),_c('div',{staticClass:\"text-right\",staticStyle:{\"margin-top\":\"10px\",\"padding-top\":\"20px\",\"border-top\":\"outset\"},attrs:{\"slot\":\"footer\"},slot:\"footer\"},[_c('n-button',{staticClass:\"pull-left btn-secondary\",nativeOn:{\"click\":function($event){return _vm.cancelAdd()}}},[_vm._v(_vm._s(_vm.$t(\"app.buttons.cancel\")))]),_c('n-button',{attrs:{\"native-type\":\"submit\",\"type\":\"primary\"}},[_vm._v(_vm._s(_vm.$t(\"app.buttons.save\")))])],1)])]}}])})],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\n\r\n\r\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./unidadMedidaAdd.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./unidadMedidaAdd.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./unidadMedidaAdd.vue?vue&type=template&id=227c94bf&\"\nimport script from \"./unidadMedidaAdd.vue?vue&type=script&lang=js&\"\nexport * from \"./unidadMedidaAdd.vue?vue&type=script&lang=js&\"\nimport style0 from \"./unidadMedidaAdd.vue?vue&type=style&index=0&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","'use strict';\n\nvar isArray = Array.isArray;\nvar keyList = Object.keys;\nvar hasProp = Object.prototype.hasOwnProperty;\n\nmodule.exports = function equal(a, b) {\n if (a === b) return true;\n\n if (a && b && typeof a == 'object' && typeof b == 'object') {\n var arrA = isArray(a)\n , arrB = isArray(b)\n , i\n , length\n , key;\n\n if (arrA && arrB) {\n length = a.length;\n if (length != b.length) return false;\n for (i = length; i-- !== 0;)\n if (!equal(a[i], b[i])) return false;\n return true;\n }\n\n if (arrA != arrB) return false;\n\n var dateA = a instanceof Date\n , dateB = b instanceof Date;\n if (dateA != dateB) return false;\n if (dateA && dateB) return a.getTime() == b.getTime();\n\n var regexpA = a instanceof RegExp\n , regexpB = b instanceof RegExp;\n if (regexpA != regexpB) return false;\n if (regexpA && regexpB) return a.toString() == b.toString();\n\n var keys = keyList(a);\n length = keys.length;\n\n if (length !== keyList(b).length)\n return false;\n\n for (i = length; i-- !== 0;)\n if (!hasProp.call(b, keys[i])) return false;\n\n for (i = length; i-- !== 0;) {\n key = keys[i];\n if (!equal(a[key], b[key])) return false;\n }\n\n return true;\n }\n\n return a!==a && b!==b;\n};\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('modal',{attrs:{\"show\":_vm.modalEdit},on:{\"update:show\":function($event){_vm.modalEdit=$event}}},[_c('h4',{staticClass:\"title title-up\",attrs:{\"slot\":\"header\"},slot:\"header\"},[_vm._v(\" \"+_vm._s(_vm.$t(\"app.modules.category_product.edit.title\"))+\" \")]),_c('ValidationObserver',{ref:\"formEdit\",scopedSlots:_vm._u([{key:\"default\",fn:function(ref){\nvar handleSubmit = ref.handleSubmit;\nreturn [_c('form',{on:{\"submit\":function($event){$event.preventDefault();return handleSubmit(_vm.editRow)}}},[_vm._l((_vm.category.traducciones),function(lang){return _c('div',[_c('h6',[_vm._v(_vm._s(lang.idioma.idioma))]),_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-12\"},[_c('fg-input',{attrs:{\"type\":\"text\",\"name\":\"minLength\",\"label\":_vm.$t('app.modules.category_product.headers.name')},model:{value:(lang.nombreCategoria),callback:function ($$v) {_vm.$set(lang, \"nombreCategoria\", $$v)},expression:\"lang.nombreCategoria\"}})],1)]),_c('div',{staticClass:\"separate\"})])}),_c('div',{staticClass:\"col-sm-6 form-group has-label\"},[_c('div',{staticClass:\"row\"},[_c('label',{staticStyle:{\"margin-left\":\"15px\"}},[_vm._v(_vm._s(_vm.$t(\"app.modules.messages.headers.state\")))])]),[_c('n-switch',{model:{value:(_vm.category.activo),callback:function ($$v) {_vm.$set(_vm.category, \"activo\", $$v)},expression:\"category.activo\"}},[_c('i',{staticClass:\"now-ui-icons ui-1_check\",attrs:{\"slot\":\"on\"},slot:\"on\"}),_c('i',{staticClass:\"now-ui-icons ui-1_simple-remove\",attrs:{\"slot\":\"off\"},slot:\"off\"})])]],2),_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-sm-6 form-group has-label\"},[_c('div',{staticClass:\"row\"},[_c('label',{staticStyle:{\"margin-left\":\"15px\"}},[_vm._v(_vm._s(_vm.$t('app.modules.category_product.headers.type')))])]),[_c('el-select',{attrs:{\"placeholder\":_vm.$t('app.modules.category_product.headers.type'),\"size\":\"large\"},model:{value:(_vm.category.numIndex),callback:function ($$v) {_vm.$set(_vm.category, \"numIndex\", $$v)},expression:\"category.numIndex\"}},[_c('el-option',{key:'cc-0',attrs:{\"label\":_vm.$t('app.modules.category_product.types.none'),\"value\":0}}),_vm._l((_vm.constCategoriaIndex.vals),function(type,index){return _c('el-option',{key:'cc-'+index,attrs:{\"label\":_vm.$t('app.modules.category_product.types.'+type),\"value\":parseInt(index)}})})],2)]],2)]),_c('div',{staticClass:\"text-right\",staticStyle:{\"margin-top\":\"10px\",\"padding-top\":\"20px\",\"border-top\":\"outset\"},attrs:{\"slot\":\"footer\"},slot:\"footer\"},[_c('n-button',{staticClass:\"pull-left btn-secondary\",nativeOn:{\"click\":function($event){return _vm.cancelEdit()}}},[_vm._v(_vm._s(_vm.$t(\"app.buttons.cancel\")))]),_c('verify-permission',{attrs:{\"controller\":\"CategoriaProducto\",\"action\":\"UpdateCategoriaProducto\"}},[_c('n-button',{attrs:{\"native-type\":\"submit\",\"type\":\"primary\"}},[_vm._v(_vm._s(_vm.$t(\"app.buttons.save\")))])],1)],1)],2)]}}])})],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\n\r\n\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./categoriaproductoEdit.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./categoriaproductoEdit.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./categoriaproductoEdit.vue?vue&type=template&id=1cc49201&\"\nimport script from \"./categoriaproductoEdit.vue?vue&type=script&lang=js&\"\nexport * from \"./categoriaproductoEdit.vue?vue&type=script&lang=js&\"\nimport style0 from \"./categoriaproductoEdit.vue?vue&type=style&index=0&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-12\"},[_c('div',{staticClass:\"new-button-div\"},[_c('verify-permission',{attrs:{\"controller\":\"Comunicaciones\",\"action\":\"postComunicacion\"}},[_c('n-button',{attrs:{\"type\":\"primary\",\"round\":\"\"},nativeOn:{\"click\":function($event){return _vm.openItemAdd()}}},[_c('i',{staticClass:\"now-ui-icons ui-1_simple-add\",attrs:{\"slot\":\"label\"},slot:\"label\"}),_vm._v(\" \"+_vm._s(_vm.$t(\"app.buttons.new\"))+\" \")])],1)],1),_c('card',{attrs:{\"card-body-classes\":\"table-full-width\",\"no-footer-line\":\"\"}},[_c('el-collapse',{attrs:{\"accordion\":\"\"}},[_c('el-collapse-item',{staticClass:\"col-12\",attrs:{\"name\":\"1\",\"title\":_vm.$t('app.modules.messages.search')}},[_c('div',{staticClass:\"col-md-12\"},[_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-lg-2 col-md-3 col-sm-6\"},[_vm._v(\" \"+_vm._s(_vm.$t(\"app.modules.messages.headers.type\"))+\" \"),_c('el-select',{attrs:{\"type\":\"primary\",\"filterable\":\"\",\"placeholder\":_vm.$t('app.modules.messages.headers.state')},model:{value:(_vm.typeSelected),callback:function ($$v) {_vm.typeSelected=$$v},expression:\"typeSelected\"}},[_c('el-option',{attrs:{\"label\":_vm.$t('app.general.all'),\"value\":\"0\"}}),_c('el-option',{attrs:{\"label\":_vm.$t('app.modules.messages.types.promo'),\"value\":\"1\"}}),_c('el-option',{attrs:{\"label\":_vm.$t('app.modules.messages.types.advice'),\"value\":\"2\"}}),_c('el-option',{attrs:{\"label\":_vm.$t('app.modules.messages.types.bulletin'),\"value\":\"3\"}})],1)],1),_c('div',{staticClass:\"col-lg-2 col-md-3 col-sm-6\"},[_vm._v(\" \"+_vm._s(_vm.$t(\"app.general.state\"))+\" \"),_c('el-select',{attrs:{\"type\":\"primary\",\"filterable\":\"\",\"placeholder\":_vm.$t('app.general.state')},model:{value:(_vm.statusSelected),callback:function ($$v) {_vm.statusSelected=$$v},expression:\"statusSelected\"}},[_c('el-option',{attrs:{\"label\":_vm.$t('app.general.all'),\"value\":\"0\"}}),_c('el-option',{attrs:{\"label\":_vm.$t('app.general.active'),\"value\":_vm.$t('app.general.active')}}),_c('el-option',{attrs:{\"label\":_vm.$t('app.general.inactive'),\"value\":_vm.$t('app.general.inactive')}})],1)],1),_c('div',{class:_vm.sizes},[_vm._v(\" \"+_vm._s(_vm.$t(\"app.modules.orders.filters.created_date_ini\"))+\" \"),_c('fg-input',[_c('el-date-picker',{attrs:{\"type\":\"date\",\"placeholder\":\"Date Picker\"},model:{value:(_vm.iniDate),callback:function ($$v) {_vm.iniDate=$$v},expression:\"iniDate\"}})],1)],1),_c('div',{class:_vm.sizes},[_vm._v(\" \"+_vm._s(_vm.$t(\"app.modules.orders.filters.created_date_end\"))+\" \"),_c('fg-input',[_c('el-date-picker',{attrs:{\"type\":\"date\",\"placeholder\":\"Date Picker\"},model:{value:(_vm.endDate),callback:function ($$v) {_vm.endDate=$$v},expression:\"endDate\"}})],1)],1),_c('div',{class:_vm.sizes},[_vm._v(\" \"+_vm._s(_vm.$t(\"app.modules.messages.headers.name\"))+\" \"),_c('fg-input',[_c('el-input',{staticClass:\"mb-2\",staticStyle:{\"width\":\"200px\"},attrs:{\"type\":\"search\",\"clearable\":\"\",\"prefix-icon\":\"el-icon-search \",\"placeholder\":_vm.$t('app.general.search'),\"aria-controls\":\"datatables\"},model:{value:(_vm.searchQuery),callback:function ($$v) {_vm.searchQuery=$$v},expression:\"searchQuery\"}})],1)],1)])])])],1),_c('div',{staticClass:\"col-12 d-flex justify-content-center justify-content-sm-between flex-wrap\"},[_c('h4',{staticClass:\"card-title text-purple\"},[_vm._v(\" \"+_vm._s(_vm.$t(\"app.modules.messages.title\"))+\" \")])]),_c('div',[_c('el-table',{staticStyle:{\"width\":\"100%\"},attrs:{\"stripe\":\"\",\"data\":_vm.queriedData}},[_c('el-table-column',{attrs:{\"prop\":\"idTipoComunicado\",\"label\":_vm.$t('app.modules.messages.headers.type'),\"min-width\":\"120\",\"sortable\":\"\"},scopedSlots:_vm._u([{key:\"default\",fn:function(scope){return [(scope.row.idTipoComunicado == 1)?_c('span',[_vm._v(\" \"+_vm._s(_vm.$t(\"app.modules.messages.types.promo\"))+\" \")]):_vm._e(),(scope.row.idTipoComunicado == 2)?_c('span',[_vm._v(\" \"+_vm._s(_vm.$t(\"app.modules.messages.types.advice\"))+\" \")]):_vm._e(),(scope.row.idTipoComunicado == 3)?_c('span',[_vm._v(\" \"+_vm._s(_vm.$t(\"app.modules.messages.types.bulletin\"))+\" \")]):_vm._e()]}}])}),_c('el-table-column',{attrs:{\"prop\":\"fechaRegistro\",\"label\":_vm.$t('app.modules.messages.headers.create_date'),\"min-width\":\"250\",\"sortable\":\"\"},scopedSlots:_vm._u([{key:\"default\",fn:function(scope){return [_vm._v(\" \"+_vm._s(scope.row.fechaRegistro)+\" \")]}}])}),_c('el-table-column',{attrs:{\"prop\":\"nombreComunicacion\",\"label\":_vm.$t('app.modules.messages.headers.name'),\"min-width\":\"200\",\"sortable\":\"\"},scopedSlots:_vm._u([{key:\"default\",fn:function(scope){return [_vm._v(\" \"+_vm._s(scope.row.nombreComunicacion)+\" \")]}}])}),_c('el-table-column',{attrs:{\"prop\":\"fechaInicio\",\"label\":_vm.$t('app.modules.messages.headers.ini_date'),\"min-width\":\"200\",\"sortable\":\"\"},scopedSlots:_vm._u([{key:\"default\",fn:function(scope){return [_vm._v(\" \"+_vm._s(scope.row.fechaInicio)+\" \")]}}])}),_c('el-table-column',{attrs:{\"prop\":\"fechaFin\",\"label\":_vm.$t('app.modules.messages.headers.end_date'),\"min-width\":\"200\",\"sortable\":\"\"},scopedSlots:_vm._u([{key:\"default\",fn:function(scope){return [_vm._v(\" \"+_vm._s(scope.row.fechaFin)+\" \")]}}])}),_c('el-table-column',{attrs:{\"prop\":\"activo\",\"label\":_vm.$t('app.modules.messages.headers.state'),\"min-width\":\"120\",\"className\":\"is-center\"},scopedSlots:_vm._u([{key:\"default\",fn:function(scope){return [_vm._v(\" \"+_vm._s(scope.row.activo ? _vm.$t(\"app.general.active\") : _vm.$t(\"app.general.inactive\"))+\" \")]}}])}),_c('el-table-column',{attrs:{\"label\":_vm.$t('app.general.active'),\"min-width\":\"100\",\"className\":\"is-center\"},scopedSlots:_vm._u([{key:\"default\",fn:function(props){return [_c('n-switch',{ref:'switch-' + props.$index,attrs:{\"color\":\"black\"},on:{\"input\":function($event){return _vm.activeMessage(props.row, 'switch-' + props.$index)}},model:{value:(props.row.activo),callback:function ($$v) {_vm.$set(props.row, \"activo\", $$v)},expression:\"props.row.activo\"}},[_c('i',{staticClass:\"now-ui-icons ui-1_check\",attrs:{\"slot\":\"on\"},slot:\"on\"}),_c('i',{staticClass:\"now-ui-icons ui-1_simple-remove\",attrs:{\"slot\":\"off\"},slot:\"off\"})])]}}])}),_c('el-table-column',{attrs:{\"min-width\":100,\"className\":\"is-center\"},scopedSlots:_vm._u([{key:\"default\",fn:function(props){return _c('div',{staticClass:\"table-actions dropdown\"},[_c('el-popover',{ref:'refOption' + props.$index,attrs:{\"placement\":\"bottom\",\"width\":\"250\",\"trigger\":\"click\"}},[_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-12 options\"},[_c('verify-permission',{attrs:{\"controller\":\"Comunicaciones\",\"action\":\"updateComunicado\"}},[_c('n-button',{staticClass:\"options-button\",attrs:{\"type\":\"primary\",\"size\":\"sm\",\"round\":\"\"},nativeOn:{\"click\":function($event){return _vm.EditMessage(\n props.$index,\n props.row,\n 'refOption' + props.$index\n )}}},[_vm._v(\" \"+_vm._s(_vm.$t(\"app.modules.messages.edit.title\"))+\" \")])],1),_c('verify-permission',{attrs:{\"controller\":\"Comunicaciones\",\"action\":\"getTraduccionesComunicaciones\"}},[_c('n-button',{staticClass:\"options-button\",attrs:{\"type\":\"primary\",\"size\":\"sm\",\"round\":\"\"},nativeOn:{\"click\":function($event){return _vm.DetailsMessage(\n props.$index,\n props.row,\n 'refOption' + props.$index\n )}}},[_vm._v(\" \"+_vm._s(_vm.$t(\"app.modules.messages.details.title\"))+\" \")])],1)],1)]),_c('n-button',{staticClass:\"button-options-table\",attrs:{\"slot\":\"reference\",\"size\":\"sm\",\"icon\":\"\"},slot:\"reference\"},[_c('i',{staticClass:\"fa fa-ellipsis-v\",staticStyle:{\"color\":\"black\"}})])],1)],1)}}])})],1)],1),_c('div',{staticClass:\"col-12 d-flex justify-content-center justify-content-sm-between flex-wrap\",attrs:{\"slot\":\"footer\"},slot:\"footer\"},[_c('div',{},[_c('p',{staticClass:\"card-category\"},[_vm._v(\" \"+_vm._s(_vm.$t(\"app.pagination.showing\"))+\" \"+_vm._s(_vm.from + 1)+\" \"+_vm._s(_vm.$t(\"app.pagination.of\"))+\" \"+_vm._s(_vm.to)+\" \"+_vm._s(_vm.$t(\"app.pagination.of\"))+\" \"+_vm._s(_vm.total)+\" \"+_vm._s(_vm.$t(\"app.pagination.records\"))+\" \")])]),_c('n-pagination',{staticClass:\"pagination-no-border\",attrs:{\"per-page\":_vm.pagination.perPage,\"total\":_vm.total},model:{value:(_vm.pagination.currentPage),callback:function ($$v) {_vm.$set(_vm.pagination, \"currentPage\", $$v)},expression:\"pagination.currentPage\"}})],1)],1),_c('comunicados-add'),_c('comunicados-edit'),_c('comunicados-details')],1)])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\n\r\n\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./comunicados.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./comunicados.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./comunicados.vue?vue&type=template&id=347ddbb4&\"\nimport script from \"./comunicados.vue?vue&type=script&lang=js&\"\nexport * from \"./comunicados.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('modal',{attrs:{\"show\":_vm.modalDocs},on:{\"update:show\":function($event){_vm.modalDocs=$event}}},[_c('h4',{staticClass:\"title text-purple\",attrs:{\"slot\":\"header\"},slot:\"header\"},[_vm._v(\" \"+_vm._s(_vm.$t(\"app.modules.orders.documents.current_documents\"))+\" \")]),_c('div',{staticClass:\"col-sm-12\"},[_c('div',{staticClass:\"row\"},[_c('el-table',{staticStyle:{\"width\":\"100%\"},attrs:{\"data\":_vm.tableData}},[_c('el-table-column',{attrs:{\"prop\":\"fechaCreacion\",\"label\":_vm.$t('app.modules.orders.documents.date_attached'),\"min-width\":\"200\"}}),_c('el-table-column',{attrs:{\"prop\":\"tipoDocumento\",\"label\":_vm.$t('app.modules.orders.documents.doc_type'),\"min-width\":\"230\"}}),_c('el-table-column',{attrs:{\"prop\":\"documento\",\"label\":_vm.$t('app.modules.orders.documents.link'),\"min-width\":\"230\"},scopedSlots:_vm._u([{key:\"default\",fn:function(scope){return [_c('el-link',{attrs:{\"href\":_vm.server + scope.row.documento,\"target\":\"_blank\",\"icon\":\"el-icon-document\"}},[_vm._v(_vm._s(_vm.$t(\"app.modules.orders.documents.single\")))]),_c('span',{staticStyle:{\"margin-left\":\"10px\"}},[_vm._v(_vm._s(scope.row.date))])]}}])}),_c('el-table-column',{attrs:{\"width-min\":\"200\"},scopedSlots:_vm._u([{key:\"default\",fn:function(props){return _c('div',{staticClass:\"table-actions dropdown\"},[_c('el-popover',{ref:'refOption' + props.$index,attrs:{\"placement\":\"bottom\",\"width\":\"300\",\"trigger\":\"click\"}},[_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-12 options\"},[_c('n-button',{staticClass:\"options-button\",attrs:{\"type\":\"primary\",\"size\":\"sm\",\"round\":\"\"},nativeOn:{\"click\":function($event){return _vm.promptDelete(\n props.$index,\n props.row,\n 'refOption' + props.$index\n )}}},[_vm._v(\" \"+_vm._s(_vm.$t(\"app.buttons.delete\"))+\" \")])],1)]),_c('n-button',{staticClass:\"button-options-table\",attrs:{\"slot\":\"reference\",\"size\":\"sm\",\"icon\":\"\"},slot:\"reference\"},[_c('i',{staticClass:\"fa fa-ellipsis-v\",staticStyle:{\"color\":\"black\"}})])],1)],1)}}])})],1)],1)]),_c('div',{staticClass:\"text-right\",attrs:{\"slot\":\"footer\"},slot:\"footer\"},[_c('n-button',{staticClass:\"btn-secondary\",nativeOn:{\"click\":function($event){return _vm.cancelDocs($event)}}},[_vm._v(_vm._s(_vm.$t(\"app.buttons.close\")))])],1)])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\n\r\n\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./pedidosDocs.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./pedidosDocs.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./pedidosDocs.vue?vue&type=template&id=f7b62040&\"\nimport script from \"./pedidosDocs.vue?vue&type=script&lang=js&\"\nexport * from \"./pedidosDocs.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-12\"},[_c('div',{staticClass:\"new-button-div\"},[_c('n-button',{attrs:{\"type\":\"primary\",\"round\":\"\"},nativeOn:{\"click\":function($event){return _vm.addNewReasonDeclining()}}},[_c('i',{staticClass:\"now-ui-icons ui-1_simple-add\",attrs:{\"slot\":\"label\"},slot:\"label\"}),_vm._v(\" \"+_vm._s(_vm.$t(\"app.modules.reasons_declining_order.add.title\"))+\" \")])],1),_c('card',{attrs:{\"card-body-classes\":\"table-full-width\",\"no-footer-line\":\"\"}},[_c('div',{staticClass:\"col-12 d-flex justify-content-left justify-content-sm-left flex-wrap\"}),_c('div',[_c('div',{staticClass:\"col-12 d-flex justify-content-center justify-content-sm-between flex-wrap\"},[_c('h4',{staticClass:\"card-title text-purple\"},[_vm._v(\" \"+_vm._s(_vm.$t(\"app.modules.reasons_declining_order.title\"))+\" \")]),_c('fg-input',[_c('el-input',{staticClass:\"mb-3\",staticStyle:{\"width\":\"300px\"},attrs:{\"type\":\"search\",\"clearable\":\"\",\"prefix-icon\":\"el-icon-search \",\"placeholder\":_vm.$t('app.general.search'),\"aria-controls\":\"datatables\"},model:{value:(_vm.searchQuery),callback:function ($$v) {_vm.searchQuery=$$v},expression:\"searchQuery\"}})],1)],1),_c('el-table',{staticStyle:{\"width\":\"100%\"},attrs:{\"stripe\":\"\",\"data\":_vm.queriedData}},[_c('el-table-column',{attrs:{\"prop\":\"nombreMotivo\",\"label\":this.$t('app.modules.reasons_declining_order.headers.reason'),\"sortable\":\"\",\"min-width\":\"200\"}}),_c('el-table-column',{attrs:{\"label\":_vm.$t('app.general.active'),\"min-width\":\"200\"},scopedSlots:_vm._u([{key:\"default\",fn:function(scope){return [_vm._v(\" \"+_vm._s(scope.row.activo ? _vm.$t(\"app.general.active\") : _vm.$t(\"app.general.inactive\"))+\" \")]}}])}),_c('el-table-column',{attrs:{\"label\":_vm.$t('app.general.active'),\"min-width\":200},scopedSlots:_vm._u([{key:\"default\",fn:function(props){return [_c('n-switch',{attrs:{\"color\":\"black\"},on:{\"input\":function($event){return _vm.active(props.row)}},model:{value:(props.row.activo),callback:function ($$v) {_vm.$set(props.row, \"activo\", $$v)},expression:\"props.row.activo\"}},[_c('i',{staticClass:\"now-ui-icons ui-1_check\",attrs:{\"slot\":\"on\"},slot:\"on\"}),_c('i',{staticClass:\"now-ui-icons ui-1_simple-remove\",attrs:{\"slot\":\"off\"},slot:\"off\"})])]}}])}),_c('el-table-column',{attrs:{\"min-width\":200,\"label\":_vm.$t('app.general.actions')},scopedSlots:_vm._u([{key:\"default\",fn:function(props){return _c('div',{staticClass:\"table-actions dropdown\"},[_c('el-popover',{ref:'refOption' + props.$index,attrs:{\"placement\":\"bottom\",\"width\":\"250\",\"trigger\":\"click\"}},[_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-12 options\"},[_c('n-button',{staticClass:\"options-button\",attrs:{\"type\":\"primary\",\"size\":\"sm\",\"round\":\"\"},nativeOn:{\"click\":function($event){return _vm.editarRazon(\n props.$index,\n props.row,\n 'refOption' + props.$index\n )}}},[_vm._v(\" \"+_vm._s(_vm.$t(\"app.modules.reasons_declining_order.edit.title\"))+\" \")])],1)]),_c('n-button',{staticClass:\"button-options-table\",attrs:{\"slot\":\"reference\",\"size\":\"sm\",\"icon\":\"\"},slot:\"reference\"},[_c('i',{staticClass:\"fa fa-ellipsis-v\",staticStyle:{\"color\":\"black\"}})])],1)],1)}}])})],1)],1),_c('div',{staticClass:\"col-12 d-flex justify-content-center justify-content-sm-between flex-wrap\",attrs:{\"slot\":\"footer\"},slot:\"footer\"},[_c('div',{},[_c('p',{staticClass:\"card-category\"},[_vm._v(\" \"+_vm._s(_vm.$t(\"app.pagination.showing\"))+\" \"+_vm._s(_vm.from + 1)+\" \"+_vm._s(_vm.$t(\"app.pagination.of\"))+\" \"+_vm._s(_vm.to)+\" \"+_vm._s(_vm.$t(\"app.pagination.of\"))+\" \"+_vm._s(_vm.total)+\" \"+_vm._s(_vm.$t(\"app.pagination.records\"))+\" \")])]),_c('n-pagination',{staticClass:\"pagination-no-border\",attrs:{\"per-page\":_vm.pagination.perPage,\"total\":_vm.total},model:{value:(_vm.pagination.currentPage),callback:function ($$v) {_vm.$set(_vm.pagination, \"currentPage\", $$v)},expression:\"pagination.currentPage\"}})],1)]),_c('declining-reason-add'),_c('declining-reason-edit')],1)])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\n\r\n\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./motivoDeclinacion.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./motivoDeclinacion.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./motivoDeclinacion.vue?vue&type=template&id=075165fa&\"\nimport script from \"./motivoDeclinacion.vue?vue&type=script&lang=js&\"\nexport * from \"./motivoDeclinacion.vue?vue&type=script&lang=js&\"\nimport style0 from \"./motivoDeclinacion.vue?vue&type=style&index=0&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./subcategoriaproductoAdd.vue?vue&type=style&index=0&lang=css&\"","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./notificacionesAdd.vue?vue&type=style&index=0&lang=css&\"","class CategoriaProductoTraduccion\r\n{\r\n idCategoriaProductoTraduccion = 0;\r\n nombreCategoria = null;\r\n categoriaProducto_idCategoriaProducto = 0;\r\n idiomas_idIdioma = 0;\r\n idioma = null;\r\n\r\n constructor(obj = {}) {\r\n Object.assign(this, obj);\r\n }\r\n}\r\n\r\nmodule.exports = CategoriaProductoTraduccion;\r\n","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./productocaracteristica.vue?vue&type=style&index=0&lang=css&\"","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('modal',{attrs:{\"show\":_vm.modals.classic},on:{\"update:show\":function($event){return _vm.$set(_vm.modals, \"classic\", $event)}}},[_c('h4',{staticClass:\"title title-up\",attrs:{\"slot\":\"header\"},slot:\"header\"},[_vm._v(\"Nueva Subcategoria de producto\")]),_c('ValidationObserver',{ref:\"formAdd\",scopedSlots:_vm._u([{key:\"default\",fn:function(ref){\nvar handleSubmit = ref.handleSubmit;\nreturn [_c('form',{on:{\"submit\":function($event){$event.preventDefault();return handleSubmit(_vm.submitNewItem)}}},[_c('div',{staticClass:\"row\"},[_c('el-select',{attrs:{\"size\":\"large\",\"placeholder\":_vm.$t('app.modules.category_product.headers.category')},model:{value:(_vm.subcategory.idCategoriaProducto),callback:function ($$v) {_vm.$set(_vm.subcategory, \"idCategoriaProducto\", $$v)},expression:\"subcategory.idCategoriaProducto\"}},_vm._l((_vm.categorias),function(rol){return _c('el-option',{key:rol.idCategoriaProducto,staticClass:\"select-primary\",attrs:{\"value\":rol.idCategoriaProducto,\"label\":rol.nombreCategoria}})}),1)],1),_vm._l((_vm.subcategory.traducciones),function(lang){return _c('div',[_c('h6',[_vm._v(_vm._s(lang.idioma.idioma))]),_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-12\"},[_c('fg-input',{attrs:{\"type\":\"text\",\"name\":\"minLength\",\"label\":_vm.$t('app.modules.category_product.headers.name')},model:{value:(lang.nombreSubcategoria),callback:function ($$v) {_vm.$set(lang, \"nombreSubcategoria\", $$v)},expression:\"lang.nombreSubcategoria\"}})],1)]),_c('div',{staticClass:\"separate\"})])}),_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-sm-6 form-group has-label\"},[_c('div',{staticClass:\"row\"},[_c('label',{staticStyle:{\"margin-left\":\"15px\"}},[_vm._v(_vm._s(_vm.$t(\"app.modules.messages.headers.state\")))])]),[_c('n-switch',{model:{value:(_vm.subcategory.activo),callback:function ($$v) {_vm.$set(_vm.subcategory, \"activo\", $$v)},expression:\"subcategory.activo\"}},[_c('i',{staticClass:\"now-ui-icons ui-1_check\",attrs:{\"slot\":\"on\"},slot:\"on\"}),_c('i',{staticClass:\"now-ui-icons ui-1_simple-remove\",attrs:{\"slot\":\"off\"},slot:\"off\"})])]],2)]),_c('div',{staticClass:\"text-right\",staticStyle:{\"margin-top\":\"10px\",\"padding-top\":\"20px\",\"border-top\":\"outset\"},attrs:{\"slot\":\"footer\"},slot:\"footer\"},[_c('n-button',{staticClass:\"pull-left btn-secondary\",nativeOn:{\"click\":function($event){return _vm.cancelAdd($event)}}},[_vm._v(_vm._s(_vm.$t(\"app.buttons.cancel\")))]),_c('verify-permission',{attrs:{\"controller\":\"Subcategoria\",\"action\":\"AddSubcategoria\"}},[_c('n-button',{attrs:{\"native-type\":\"submit\",\"type\":\"primary\"}},[_vm._v(_vm._s(_vm.$t(\"app.buttons.save\")))])],1)],1)],2)]}}])})],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\n\r\n\r\n\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./subcategoriaproductoAdd.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./subcategoriaproductoAdd.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./subcategoriaproductoAdd.vue?vue&type=template&id=363ab01c&scoped=true&\"\nimport script from \"./subcategoriaproductoAdd.vue?vue&type=script&lang=js&\"\nexport * from \"./subcategoriaproductoAdd.vue?vue&type=script&lang=js&\"\nimport style0 from \"./subcategoriaproductoAdd.vue?vue&type=style&index=0&lang=css&\"\nimport style1 from \"./subcategoriaproductoAdd.vue?vue&type=style&index=1&id=363ab01c&scoped=true&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"363ab01c\",\n null\n \n)\n\nexport default component.exports","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./subcategoriaproductoEdit.vue?vue&type=style&index=1&id=032dd72a&scoped=true&lang=css&\"","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./verSolicitud.vue?vue&type=style&index=0&lang=css&\"","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./pedidosDocsAdd.vue?vue&type=style&index=0&lang=css&\"","'use strict';\n// TODO: in core-js@4, move /modules/ dependencies to public entries for better optimization by tools like `preset-env`\nrequire('../modules/es.array.iterator');\nvar $ = require('../internals/export');\nvar getBuiltIn = require('../internals/get-built-in');\nvar USE_NATIVE_URL = require('../internals/native-url');\nvar redefine = require('../internals/redefine');\nvar redefineAll = require('../internals/redefine-all');\nvar setToStringTag = require('../internals/set-to-string-tag');\nvar createIteratorConstructor = require('../internals/create-iterator-constructor');\nvar InternalStateModule = require('../internals/internal-state');\nvar anInstance = require('../internals/an-instance');\nvar hasOwn = require('../internals/has');\nvar bind = require('../internals/function-bind-context');\nvar classof = require('../internals/classof');\nvar anObject = require('../internals/an-object');\nvar isObject = require('../internals/is-object');\nvar create = require('../internals/object-create');\nvar createPropertyDescriptor = require('../internals/create-property-descriptor');\nvar getIterator = require('../internals/get-iterator');\nvar getIteratorMethod = require('../internals/get-iterator-method');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar $fetch = getBuiltIn('fetch');\nvar Headers = getBuiltIn('Headers');\nvar ITERATOR = wellKnownSymbol('iterator');\nvar URL_SEARCH_PARAMS = 'URLSearchParams';\nvar URL_SEARCH_PARAMS_ITERATOR = URL_SEARCH_PARAMS + 'Iterator';\nvar setInternalState = InternalStateModule.set;\nvar getInternalParamsState = InternalStateModule.getterFor(URL_SEARCH_PARAMS);\nvar getInternalIteratorState = InternalStateModule.getterFor(URL_SEARCH_PARAMS_ITERATOR);\n\nvar plus = /\\+/g;\nvar sequences = Array(4);\n\nvar percentSequence = function (bytes) {\n return sequences[bytes - 1] || (sequences[bytes - 1] = RegExp('((?:%[\\\\da-f]{2}){' + bytes + '})', 'gi'));\n};\n\nvar percentDecode = function (sequence) {\n try {\n return decodeURIComponent(sequence);\n } catch (error) {\n return sequence;\n }\n};\n\nvar deserialize = function (it) {\n var result = it.replace(plus, ' ');\n var bytes = 4;\n try {\n return decodeURIComponent(result);\n } catch (error) {\n while (bytes) {\n result = result.replace(percentSequence(bytes--), percentDecode);\n }\n return result;\n }\n};\n\nvar find = /[!'()~]|%20/g;\n\nvar replace = {\n '!': '%21',\n \"'\": '%27',\n '(': '%28',\n ')': '%29',\n '~': '%7E',\n '%20': '+'\n};\n\nvar replacer = function (match) {\n return replace[match];\n};\n\nvar serialize = function (it) {\n return encodeURIComponent(it).replace(find, replacer);\n};\n\nvar parseSearchParams = function (result, query) {\n if (query) {\n var attributes = query.split('&');\n var index = 0;\n var attribute, entry;\n while (index < attributes.length) {\n attribute = attributes[index++];\n if (attribute.length) {\n entry = attribute.split('=');\n result.push({\n key: deserialize(entry.shift()),\n value: deserialize(entry.join('='))\n });\n }\n }\n }\n};\n\nvar updateSearchParams = function (query) {\n this.entries.length = 0;\n parseSearchParams(this.entries, query);\n};\n\nvar validateArgumentsLength = function (passed, required) {\n if (passed < required) throw TypeError('Not enough arguments');\n};\n\nvar URLSearchParamsIterator = createIteratorConstructor(function Iterator(params, kind) {\n setInternalState(this, {\n type: URL_SEARCH_PARAMS_ITERATOR,\n iterator: getIterator(getInternalParamsState(params).entries),\n kind: kind\n });\n}, 'Iterator', function next() {\n var state = getInternalIteratorState(this);\n var kind = state.kind;\n var step = state.iterator.next();\n var entry = step.value;\n if (!step.done) {\n step.value = kind === 'keys' ? entry.key : kind === 'values' ? entry.value : [entry.key, entry.value];\n } return step;\n});\n\n// `URLSearchParams` constructor\n// https://url.spec.whatwg.org/#interface-urlsearchparams\nvar URLSearchParamsConstructor = function URLSearchParams(/* init */) {\n anInstance(this, URLSearchParamsConstructor, URL_SEARCH_PARAMS);\n var init = arguments.length > 0 ? arguments[0] : undefined;\n var that = this;\n var entries = [];\n var iteratorMethod, iterator, next, step, entryIterator, entryNext, first, second, key;\n\n setInternalState(that, {\n type: URL_SEARCH_PARAMS,\n entries: entries,\n updateURL: function () { /* empty */ },\n updateSearchParams: updateSearchParams\n });\n\n if (init !== undefined) {\n if (isObject(init)) {\n iteratorMethod = getIteratorMethod(init);\n if (typeof iteratorMethod === 'function') {\n iterator = iteratorMethod.call(init);\n next = iterator.next;\n while (!(step = next.call(iterator)).done) {\n entryIterator = getIterator(anObject(step.value));\n entryNext = entryIterator.next;\n if (\n (first = entryNext.call(entryIterator)).done ||\n (second = entryNext.call(entryIterator)).done ||\n !entryNext.call(entryIterator).done\n ) throw TypeError('Expected sequence with length 2');\n entries.push({ key: first.value + '', value: second.value + '' });\n }\n } else for (key in init) if (hasOwn(init, key)) entries.push({ key: key, value: init[key] + '' });\n } else {\n parseSearchParams(entries, typeof init === 'string' ? init.charAt(0) === '?' ? init.slice(1) : init : init + '');\n }\n }\n};\n\nvar URLSearchParamsPrototype = URLSearchParamsConstructor.prototype;\n\nredefineAll(URLSearchParamsPrototype, {\n // `URLSearchParams.prototype.append` method\n // https://url.spec.whatwg.org/#dom-urlsearchparams-append\n append: function append(name, value) {\n validateArgumentsLength(arguments.length, 2);\n var state = getInternalParamsState(this);\n state.entries.push({ key: name + '', value: value + '' });\n state.updateURL();\n },\n // `URLSearchParams.prototype.delete` method\n // https://url.spec.whatwg.org/#dom-urlsearchparams-delete\n 'delete': function (name) {\n validateArgumentsLength(arguments.length, 1);\n var state = getInternalParamsState(this);\n var entries = state.entries;\n var key = name + '';\n var index = 0;\n while (index < entries.length) {\n if (entries[index].key === key) entries.splice(index, 1);\n else index++;\n }\n state.updateURL();\n },\n // `URLSearchParams.prototype.get` method\n // https://url.spec.whatwg.org/#dom-urlsearchparams-get\n get: function get(name) {\n validateArgumentsLength(arguments.length, 1);\n var entries = getInternalParamsState(this).entries;\n var key = name + '';\n var index = 0;\n for (; index < entries.length; index++) {\n if (entries[index].key === key) return entries[index].value;\n }\n return null;\n },\n // `URLSearchParams.prototype.getAll` method\n // https://url.spec.whatwg.org/#dom-urlsearchparams-getall\n getAll: function getAll(name) {\n validateArgumentsLength(arguments.length, 1);\n var entries = getInternalParamsState(this).entries;\n var key = name + '';\n var result = [];\n var index = 0;\n for (; index < entries.length; index++) {\n if (entries[index].key === key) result.push(entries[index].value);\n }\n return result;\n },\n // `URLSearchParams.prototype.has` method\n // https://url.spec.whatwg.org/#dom-urlsearchparams-has\n has: function has(name) {\n validateArgumentsLength(arguments.length, 1);\n var entries = getInternalParamsState(this).entries;\n var key = name + '';\n var index = 0;\n while (index < entries.length) {\n if (entries[index++].key === key) return true;\n }\n return false;\n },\n // `URLSearchParams.prototype.set` method\n // https://url.spec.whatwg.org/#dom-urlsearchparams-set\n set: function set(name, value) {\n validateArgumentsLength(arguments.length, 1);\n var state = getInternalParamsState(this);\n var entries = state.entries;\n var found = false;\n var key = name + '';\n var val = value + '';\n var index = 0;\n var entry;\n for (; index < entries.length; index++) {\n entry = entries[index];\n if (entry.key === key) {\n if (found) entries.splice(index--, 1);\n else {\n found = true;\n entry.value = val;\n }\n }\n }\n if (!found) entries.push({ key: key, value: val });\n state.updateURL();\n },\n // `URLSearchParams.prototype.sort` method\n // https://url.spec.whatwg.org/#dom-urlsearchparams-sort\n sort: function sort() {\n var state = getInternalParamsState(this);\n var entries = state.entries;\n // Array#sort is not stable in some engines\n var slice = entries.slice();\n var entry, entriesIndex, sliceIndex;\n entries.length = 0;\n for (sliceIndex = 0; sliceIndex < slice.length; sliceIndex++) {\n entry = slice[sliceIndex];\n for (entriesIndex = 0; entriesIndex < sliceIndex; entriesIndex++) {\n if (entries[entriesIndex].key > entry.key) {\n entries.splice(entriesIndex, 0, entry);\n break;\n }\n }\n if (entriesIndex === sliceIndex) entries.push(entry);\n }\n state.updateURL();\n },\n // `URLSearchParams.prototype.forEach` method\n forEach: function forEach(callback /* , thisArg */) {\n var entries = getInternalParamsState(this).entries;\n var boundFunction = bind(callback, arguments.length > 1 ? arguments[1] : undefined, 3);\n var index = 0;\n var entry;\n while (index < entries.length) {\n entry = entries[index++];\n boundFunction(entry.value, entry.key, this);\n }\n },\n // `URLSearchParams.prototype.keys` method\n keys: function keys() {\n return new URLSearchParamsIterator(this, 'keys');\n },\n // `URLSearchParams.prototype.values` method\n values: function values() {\n return new URLSearchParamsIterator(this, 'values');\n },\n // `URLSearchParams.prototype.entries` method\n entries: function entries() {\n return new URLSearchParamsIterator(this, 'entries');\n }\n}, { enumerable: true });\n\n// `URLSearchParams.prototype[@@iterator]` method\nredefine(URLSearchParamsPrototype, ITERATOR, URLSearchParamsPrototype.entries);\n\n// `URLSearchParams.prototype.toString` method\n// https://url.spec.whatwg.org/#urlsearchparams-stringification-behavior\nredefine(URLSearchParamsPrototype, 'toString', function toString() {\n var entries = getInternalParamsState(this).entries;\n var result = [];\n var index = 0;\n var entry;\n while (index < entries.length) {\n entry = entries[index++];\n result.push(serialize(entry.key) + '=' + serialize(entry.value));\n } return result.join('&');\n}, { enumerable: true });\n\nsetToStringTag(URLSearchParamsConstructor, URL_SEARCH_PARAMS);\n\n$({ global: true, forced: !USE_NATIVE_URL }, {\n URLSearchParams: URLSearchParamsConstructor\n});\n\n// Wrap `fetch` for correct work with polyfilled `URLSearchParams`\n// https://github.com/zloirock/core-js/issues/674\nif (!USE_NATIVE_URL && typeof $fetch == 'function' && typeof Headers == 'function') {\n $({ global: true, enumerable: true, forced: true }, {\n fetch: function fetch(input /* , init */) {\n var args = [input];\n var init, body, headers;\n if (arguments.length > 1) {\n init = arguments[1];\n if (isObject(init)) {\n body = init.body;\n if (classof(body) === URL_SEARCH_PARAMS) {\n headers = init.headers ? new Headers(init.headers) : new Headers();\n if (!headers.has('content-type')) {\n headers.set('content-type', 'application/x-www-form-urlencoded;charset=UTF-8');\n }\n init = create(init, {\n body: createPropertyDescriptor(0, String(body)),\n headers: createPropertyDescriptor(0, headers)\n });\n }\n }\n args.push(init);\n } return $fetch.apply(this, args);\n }\n });\n}\n\nmodule.exports = {\n URLSearchParams: URLSearchParamsConstructor,\n getState: getInternalParamsState\n};\n","var anObject = require('../internals/an-object');\nvar getIteratorMethod = require('../internals/get-iterator-method');\n\nmodule.exports = function (it) {\n var iteratorMethod = getIteratorMethod(it);\n if (typeof iteratorMethod != 'function') {\n throw TypeError(String(it) + ' is not iterable');\n } return anObject(iteratorMethod.call(it));\n};\n","export * from \"-!../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./unidadMedidaEdit.vue?vue&type=style&index=0&lang=css&\"","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./categoriaproductoEdit.vue?vue&type=style&index=0&lang=css&\"","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./subcategoriaproductoAdd.vue?vue&type=style&index=1&id=363ab01c&scoped=true&lang=css&\"","export * from \"-!../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./unidadMedidaAdd.vue?vue&type=style&index=0&lang=css&\"","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./empresaTransportista.vue?vue&type=style&index=0&lang=css&\"","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./categoriaproductoAdd.vue?vue&type=style&index=0&lang=css&\"","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-12\"},[_c('card',{attrs:{\"card-body-classes\":\"table-full-width\",\"no-footer-line\":\"\"}},[_c('div',[_c('div',{staticClass:\"col-12 d-flex justify-content-center justify-content-sm-between flex-wrap\"},[_c('h4',{staticClass:\"card-title text-purple\"},[_vm._v(\" \"+_vm._s(_vm.$t(\"app.modules.corporate_roles.new_corporate_rol.title\"))+\" \")])]),_c('div',{staticClass:\"col-12\"},[_c('ValidationObserver',{ref:\"formAdd\",scopedSlots:_vm._u([{key:\"default\",fn:function(ref){\nvar handleSubmit = ref.handleSubmit;\nreturn [_c('form',{on:{\"submit\":function($event){$event.preventDefault();return handleSubmit(_vm.submitNewCorpRole)}}},[_c('h3',[_c('small',[_vm._v(_vm._s(_vm.$t(\"app.general.translates\")))])]),_vm._l((_vm.item.langs),function(lang){return _c('div',{key:lang.idLenguaje},[_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-sm-6\"},[_c('ValidationProvider',{attrs:{\"name\":\"minLength\",\"rules\":\"required|min:5\"},scopedSlots:_vm._u([{key:\"default\",fn:function(ref){\nvar passed = ref.passed;\nvar failed = ref.failed;\nreturn [_c('fg-input',{attrs:{\"type\":\"text\",\"placeholder\":lang.idioma,\"error\":failed\n ? 'La longitud mínima para el nombre es de 5 '\n : null,\"hasSuccess\":passed,\"name\":\"minLength\",\"label\":_vm.$t('app.modules.corporate_roles.new_corporate_rol.name')},model:{value:(lang.nombre),callback:function ($$v) {_vm.$set(lang, \"nombre\", $$v)},expression:\"lang.nombre\"}})]}}],null,true)})],1),_c('div',{staticClass:\"col-sm-6\"},[_c('ValidationProvider',{attrs:{\"name\":\"minLength\",\"rules\":\"required|min:5\"},scopedSlots:_vm._u([{key:\"default\",fn:function(ref){\n var passed = ref.passed;\n var failed = ref.failed;\nreturn [_c('fg-input',{attrs:{\"type\":\"text\",\"placeholder\":lang.idioma,\"error\":failed\n ? 'La longitud mínima para el nombre es de 5 '\n : null,\"hasSuccess\":passed,\"name\":\"minLength\",\"label\":_vm.$t(\n 'app.modules.corporate_roles.new_corporate_rol.description'\n )},model:{value:(lang.descripcion),callback:function ($$v) {_vm.$set(lang, \"descripcion\", $$v)},expression:\"lang.descripcion\"}})]}}],null,true)})],1)])])}),_c('h3',[_c('small',[_vm._v(_vm._s(_vm.$t(\"app.modules.corporate_roles.new_corporate_rol.permission\")))])]),_c('div',{staticClass:\"row table-full-width\"},[_c('div',{staticClass:\"col-sm-12\"},[_c('el-table',{attrs:{\"stripe\":\"\",\"data\":_vm.tableData}},[_c('el-table-column',{staticClass:\"col-4\",attrs:{\"prop\":\"titulo\",\"label\":_vm.$t(\n 'app.modules.corporate_roles.new_corporate_rol.module'\n )}}),_c('el-table-column',{staticClass:\"col-8\",attrs:{\"prop\":\"nombreModulo\",\"label\":_vm.$t(\n 'app.modules.corporate_roles.new_corporate_rol.permission'\n )},scopedSlots:_vm._u([{key:\"default\",fn:function(scope){return _vm._l((scope.row.permisos),function(permiso){return _c('n-checkbox',{key:permiso.id_ClaimsModule,attrs:{\"label\":permiso.permiso},model:{value:(permiso.status),callback:function ($$v) {_vm.$set(permiso, \"status\", $$v)},expression:\"permiso.status\"}},[_vm._v(\" \"+_vm._s(permiso.permiso)+\" \")])})}}],null,true)})],1)],1)]),_c('div',{staticClass:\"col-sm-6 form-group has-label\"},[_c('div',{staticClass:\"row\"},[_c('label',{staticStyle:{\"margin-left\":\"15px\"}},[_vm._v(_vm._s(_vm.$t(\"app.general.active\")))])]),[_c('n-switch',{model:{value:(_vm.item.activo),callback:function ($$v) {_vm.$set(_vm.item, \"activo\", $$v)},expression:\"item.activo\"}},[_c('i',{staticClass:\"now-ui-icons ui-1_check\",attrs:{\"slot\":\"on\"},slot:\"on\"}),_c('i',{staticClass:\"now-ui-icons ui-1_simple-remove\",attrs:{\"slot\":\"off\"},slot:\"off\"})])]],2),_c('div',{staticClass:\"text-right\",staticStyle:{\"margin-top\":\"10px\",\"padding-top\":\"20px\",\"border-top\":\"outset\"},attrs:{\"slot\":\"footer\"},slot:\"footer\"},[_c('router-link',{staticClass:\"col-2\",attrs:{\"to\":{ name: 'Roles empresariales' }}},[_c('n-button',{staticClass:\"pull-left btn-secondary\"},[_vm._v(_vm._s(_vm.$t(\"app.buttons.cancel\")))])],1),_c('n-button',{attrs:{\"native-type\":\"submit\",\"type\":\"primary\"}},[_vm._v(\" \"+_vm._s(_vm.$t(\"app.buttons.save\"))+\" \")])],1)],2)]}}])})],1)])])],1)])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\n\r\n\r\n\r\n\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./perfilEmpresarialAdd.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./perfilEmpresarialAdd.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./perfilEmpresarialAdd.vue?vue&type=template&id=27ecdc81&\"\nimport script from \"./perfilEmpresarialAdd.vue?vue&type=script&lang=js&\"\nexport * from \"./perfilEmpresarialAdd.vue?vue&type=script&lang=js&\"\nimport style0 from \"./perfilEmpresarialAdd.vue?vue&type=style&index=0&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./perfilesAdd.vue?vue&type=style&index=0&lang=css&\"","class Role\r\n{\r\n idRol = 0;\r\n activo = false;\r\n fechaRegistro = \"\";\r\n fechaEdicion = \"\";\r\n externo = false;\r\n idUsuario = \"\";\r\n deshabilitar = false;\r\n permisos = \"\";\r\n traducciones = [];\r\n\r\n constructor(obj = {}) {\r\n Object.assign(this, obj);\r\n }\r\n}\r\n\r\nmodule.exports = Role;\r\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('modal',{attrs:{\"show\":_vm.modalEdit},on:{\"update:show\":function($event){_vm.modalEdit=$event}}},[_c('h4',{staticClass:\"title title-up\",attrs:{\"slot\":\"header\"},slot:\"header\"},[_vm._v(\" \"+_vm._s(_vm.$t(\"app.modules.notifications.edit.title\"))+\" \")]),_c('ValidationObserver',{ref:\"formEdit\",scopedSlots:_vm._u([{key:\"default\",fn:function(ref){\nvar handleSubmit = ref.handleSubmit;\nreturn [_c('form',{on:{\"submit\":function($event){$event.preventDefault();return handleSubmit(_vm.editRow)}}},[_c('div',{staticClass:\"row text-left\"},_vm._l((_vm.item.traducciones),function(lang){return _c('div',{key:lang.idLenguaje,class:_vm.sizes},[_c('ValidationProvider',{attrs:{\"name\":_vm.$t('app.modules.documentTypes.headers.name'),\"rules\":\"required\"},scopedSlots:_vm._u([{key:\"default\",fn:function(ref){\nvar passed = ref.passed;\nvar failed = ref.failed;\nreturn [_c('fg-input',{attrs:{\"type\":\"text\",\"error\":failed ? _vm.required_text : null,\"hasSuccess\":passed,\"placeholder\":lang.idioma,\"label\":_vm.$t('app.modules.documentTypes.headers.name')},model:{value:(lang.notificacion_traduccion),callback:function ($$v) {_vm.$set(lang, \"notificacion_traduccion\", $$v)},expression:\"lang.notificacion_traduccion\"}})]}}],null,true)})],1)}),0),_c('div',{staticClass:\"col-sm-6 form-group has-label\"},[_c('div',{staticClass:\"row\"},[_c('label',{staticStyle:{\"margin-left\":\"15px\"}},[_vm._v(_vm._s(_vm.$t(\"app.general.state\")))])]),[_c('n-switch',{model:{value:(_vm.item.activo),callback:function ($$v) {_vm.$set(_vm.item, \"activo\", $$v)},expression:\"item.activo\"}},[_c('i',{staticClass:\"now-ui-icons ui-1_check\",attrs:{\"slot\":\"on\"},slot:\"on\"}),_c('i',{staticClass:\"now-ui-icons ui-1_simple-remove\",attrs:{\"slot\":\"off\"},slot:\"off\"})])]],2),_c('div',{staticClass:\"text-right\",staticStyle:{\"margin-top\":\"10px\",\"padding-top\":\"20px\",\"border-top\":\"outset\"},attrs:{\"slot\":\"footer\"},slot:\"footer\"},[_c('n-button',{staticClass:\"pull-left btn-secondary\",nativeOn:{\"click\":function($event){return _vm.cancelEdit()}}},[_vm._v(_vm._s(_vm.$t(\"app.buttons.cancel\")))]),_c('n-button',{attrs:{\"native-type\":\"submit\",\"type\":\"primary\"}},[_vm._v(_vm._s(_vm.$t(\"app.buttons.save\")))])],1)])]}}])})],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\n\r\n\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./notificacionesEdit.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./notificacionesEdit.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./notificacionesEdit.vue?vue&type=template&id=4fab060e&\"\nimport script from \"./notificacionesEdit.vue?vue&type=script&lang=js&\"\nexport * from \"./notificacionesEdit.vue?vue&type=script&lang=js&\"\nimport style0 from \"./notificacionesEdit.vue?vue&type=style&index=0&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-12\"},[_c('div',{staticClass:\"new-button-div\"},[_c('n-button',{attrs:{\"type\":\"primary\",\"round\":\"\"},nativeOn:{\"click\":function($event){return _vm.exportToPDF()}}},[_c('i',{staticClass:\"now-ui-icons files_paper\",attrs:{\"slot\":\"label\"},slot:\"label\"}),_vm._v(\" \"+_vm._s(_vm.$t(\"app.buttons.pdf\"))+\" \")])],1),_c('img',{attrs:{\"src\":\"img/redi.png\"}}),_c('vue-html2pdf',{ref:\"html2Pdf\",attrs:{\"show-layout\":false,\"float-layout\":true,\"enable-download\":true,\"preview-modal\":true,\"paginate-elements-by-height\":1400,\"filename\":\"hee hee\",\"pdf-quality\":2,\"manual-pagination\":false,\"pdf-format\":\"a4\",\"pdf-orientation\":\"landscape\",\"pdf-content-width\":\"800px\"},on:{\"progress\":function($event){return _vm.onProgress($event)},\"hasStartedGeneration\":function($event){return _vm.hasStartedGeneration()},\"hasGenerated\":function($event){return _vm.hasGenerated($event)}}},[_c('section',{attrs:{\"slot\":\"pdf-content\"},slot:\"pdf-content\"},[_c('el-table',{staticStyle:{\"width\":\"100%\"},attrs:{\"stripe\":\"\",\"data\":_vm.account}},[_c('el-table-column',{attrs:{\"prop\":\"idClienteSAP\",\"label\":this.$t('app.modules.customers.client_code_SAP'),\"min-width\":280}}),_c('el-table-column',{attrs:{\"prop\":\"facturaFiscal\",\"label\":this.$t('app.modules.account_statements.headers.fiscal_bill'),\"min-width\":280}}),_c('el-table-column',{attrs:{\"prop\":\"facturaComercial\",\"label\":this.$t('app.modules.account_statements.headers.commercial_bill'),\"min-width\":280}}),_c('el-table-column',{attrs:{\"prop\":\"fechaFaturacion\",\"label\":this.$t('app.modules.account_statements.headers.bill_date'),\"min-width\":280}}),_c('el-table-column',{attrs:{\"prop\":\"moneda\",\"label\":this.$t('app.modules.account_statements.headers.money'),\"min-width\":280}}),_c('el-table-column',{attrs:{\"prop\":\"monto\",\"label\":this.$t('app.modules.account_statements.headers.amount'),\"min-width\":280}}),_c('el-table-column',{attrs:{\"prop\":\"terminosPago\",\"label\":this.$t('app.modules.account_statements.headers.payment_terms'),\"min-width\":280}}),_c('el-table-column',{attrs:{\"prop\":\"vencimiento\",\"label\":this.$t('app.modules.account_statements.headers.expire_date'),\"min-width\":280}})],1)],1)])],1)])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\n\r\n\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./estadoCuentaClientePDF.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./estadoCuentaClientePDF.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./estadoCuentaClientePDF.vue?vue&type=template&id=308ad815&\"\nimport script from \"./estadoCuentaClientePDF.vue?vue&type=script&lang=js&\"\nexport * from \"./estadoCuentaClientePDF.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","class CategoriaProducto\r\n{\r\n idCategoriaProducto = 0;\r\n nombreCategoria = \"\";\r\n activo = true;\r\n usuario_idUsuario = \"\";\r\n accion = \"\";\r\n fechahora = \"\";\r\n idEmpresa = 0;\r\n numIndex = 0;\r\n\r\n traducciones = null;\r\n subcategorias = null;\r\n\r\n constructor(obj = {}) {\r\n Object.assign(this, obj);\r\n }\r\n}\r\n\r\nmodule.exports = CategoriaProducto;\r\n","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Calendar.vue?vue&type=style&index=0&lang=css&\"","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('modal',{attrs:{\"show\":_vm.modalOpen,\"showClose\":false}},[_c('h4',{staticClass:\"title title-up\",attrs:{\"slot\":\"header\"},slot:\"header\"},[_vm._v(\" \"+_vm._s(_vm.title)+\" \")]),_c('ValidationObserver',{ref:\"formAdd\",scopedSlots:_vm._u([{key:\"default\",fn:function(ref){\nvar handleSubmit = ref.handleSubmit;\nreturn [_c('form',{on:{\"submit\":function($event){$event.preventDefault();return handleSubmit(_vm.submit)}}},[_c('div',{staticClass:\"row\"},[_c('label',{staticStyle:{\"margin-left\":\"15px\"}},[_vm._v(_vm._s(_vm.$t('app.modules.logitic_mapping_settings.headers.categories')))]),_c('div',{staticClass:\"col-12 form-group has-label\"},[_c('el-select',{attrs:{\"disabled\":!!_vm.item.idUsuarioLogistica,\"placeholder\":_vm.$t('app.modules.logitic_mapping_settings.headers.categories'),\"size\":\"large\"},model:{value:(_vm.item.idCategoriaProducto),callback:function ($$v) {_vm.$set(_vm.item, \"idCategoriaProducto\", $$v)},expression:\"item.idCategoriaProducto\"}},_vm._l((_vm.categorias),function(category){return _c('el-option',{key:category.idCategoriaProducto,attrs:{\"label\":category.nombreCategoria,\"value\":category.idCategoriaProducto}})}),1)],1)]),_c('div',{staticClass:\"row\"},[_c('label',{staticStyle:{\"margin-left\":\"15px\"}},[_vm._v(_vm._s(_vm.$t('app.modules.logitic_mapping_settings.headers.type_pack')))]),_c('div',{staticClass:\"col-12 form-group has-label\"},[_c('el-select',{attrs:{\"disabled\":!!_vm.item.idUsuarioLogistica,\"placeholder\":_vm.$t('app.modules.logitic_mapping_settings.headers.type_pack'),\"size\":\"large\"},model:{value:(_vm.item.tipoEmpaquetado),callback:function ($$v) {_vm.$set(_vm.item, \"tipoEmpaquetado\", $$v)},expression:\"item.tipoEmpaquetado\"}},_vm._l((_vm.tipoEmpaquetado),function(tipo,key){return _c('el-option',{key:key,attrs:{\"label\":_vm.$t('app.enums.tipos_empaquedato_vals.'+tipo),\"value\":parseInt(key)}})}),1)],1)]),_c('div',{staticClass:\"row\"},[_c('label',{staticStyle:{\"margin-left\":\"15px\"}},[_vm._v(_vm._s(_vm.$t('app.modules.logitic_mapping_settings.headers.sales_area')))]),_c('div',{staticClass:\"col-12 form-group has-label\"},[_c('el-select',{attrs:{\"disabled\":!!_vm.item.idUsuarioLogistica,\"placeholder\":_vm.$t('app.modules.logitic_mapping_settings.headers.sales_area'),\"size\":\"large\"},model:{value:(_vm.item.idZonaComercial),callback:function ($$v) {_vm.$set(_vm.item, \"idZonaComercial\", $$v)},expression:\"item.idZonaComercial\"}},_vm._l((_vm.zonasComerciales),function(zone){return _c('el-option',{key:zone.idZonaComercial,attrs:{\"label\":zone.nombreZonaComercial,\"value\":zone.idZonaComercial}})}),1)],1)]),_c('div',{staticClass:\"row\"},[_c('label',{staticStyle:{\"margin-left\":\"15px\"}},[_vm._v(_vm._s(_vm.$t('app.modules.logitic_mapping_settings.headers.center')))]),_c('div',{staticClass:\"col-12 form-group has-label\"},[_c('el-select',{attrs:{\"disabled\":!!_vm.item.idUsuarioLogistica,\"placeholder\":_vm.$t('app.modules.logitic_mapping_settings.headers.center'),\"size\":\"large\"},model:{value:(_vm.item.idCentroDistribucion),callback:function ($$v) {_vm.$set(_vm.item, \"idCentroDistribucion\", $$v)},expression:\"item.idCentroDistribucion\"}},_vm._l((_vm.centros),function(item){return _c('el-option',{key:item.idCentroDistribucion,attrs:{\"label\":item.nombre,\"value\":item.idCentroDistribucion}})}),1)],1)]),_c('div',{staticClass:\"row\"},[_c('label',{staticStyle:{\"margin-left\":\"15px\"}},[_vm._v(_vm._s(_vm.$t('app.modules.logitic_mapping_settings.headers.transport')))]),_c('div',{staticClass:\"col-12 form-group has-label\"},[_c('el-select',{attrs:{\"disabled\":!!_vm.item.idUsuarioLogistica,\"placeholder\":_vm.$t('app.modules.logitic_mapping_settings.headers.transport'),\"size\":\"large\"},model:{value:(_vm.item.idClaveTransporte),callback:function ($$v) {_vm.$set(_vm.item, \"idClaveTransporte\", $$v)},expression:\"item.idClaveTransporte\"}},_vm._l((_vm.claves),function(item){return _c('el-option',{key:item.idClaveTransporte,attrs:{\"label\":item.nombre,\"value\":item.idClaveTransporte}})}),1)],1)]),_c('div',{staticClass:\"row\"},[_c('label',{staticStyle:{\"margin-left\":\"15px\"}},[_vm._v(_vm._s(_vm.$t('app.modules.logitic_mapping_settings.headers.user')))]),_c('div',{staticClass:\"col-12 form-group has-label\"},[_c('el-select',{attrs:{\"placeholder\":_vm.$t('app.modules.logitic_mapping_settings.headers.user'),\"size\":\"large\"},model:{value:(_vm.item.idUsuario),callback:function ($$v) {_vm.$set(_vm.item, \"idUsuario\", $$v)},expression:\"item.idUsuario\"}},_vm._l((_vm.usuarios),function(user){return _c('el-option',{key:user.idUsuario,attrs:{\"label\":user.nombre,\"value\":user.idUsuario}})}),1)],1)]),_c('div',{staticClass:\"row\"},[_c('label',{staticStyle:{\"margin-left\":\"15px\"}},[_vm._v(_vm._s(_vm.$t('app.modules.logitic_mapping_settings.headers.additional_users')))]),_c('div',{staticClass:\"col-12 form-group has-label\"},[_c('el-select',{attrs:{\"multiple\":\"\",\"placeholder\":_vm.$t('app.modules.logitic_mapping_settings.headers.additional_users'),\"size\":\"large\"},model:{value:(_vm.item.UsuariosAdicionales),callback:function ($$v) {_vm.$set(_vm.item, \"UsuariosAdicionales\", $$v)},expression:\"item.UsuariosAdicionales\"}},_vm._l((_vm.usuarios),function(user){return _c('el-option',{key:user.idUsuario,attrs:{\"label\":user.nombre,\"value\":user.idUsuario}})}),1)],1)]),_c('div',{staticClass:\"text-right\",staticStyle:{\"margin-top\":\"10px\",\"padding-top\":\"20px\",\"border-top\":\"outset\"},attrs:{\"slot\":\"footer\"},slot:\"footer\"},[_c('n-button',{staticClass:\"pull-left btn-secondary\",nativeOn:{\"click\":function($event){return _vm.close()}}},[_vm._v(_vm._s(_vm.$t(\"app.buttons.cancel\")))]),_c('n-button',{attrs:{\"native-type\":\"submit\",\"type\":\"primary\",\"disabled\":_vm.inProgress}},[_vm._v(_vm._s(_vm.$t(\"app.buttons.save\")))])],1)])]}}])})],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\n\r\n\r\n\r\n\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./configuracionAsignacionLogisticaAddEdit.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./configuracionAsignacionLogisticaAddEdit.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./configuracionAsignacionLogisticaAddEdit.vue?vue&type=template&id=7e6d07ec&scoped=true&\"\nimport script from \"./configuracionAsignacionLogisticaAddEdit.vue?vue&type=script&lang=js&\"\nexport * from \"./configuracionAsignacionLogisticaAddEdit.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"7e6d07ec\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('modal',{attrs:{\"show\":_vm.modalEdit},on:{\"update:show\":function($event){_vm.modalEdit=$event}}},[_c('h4',{staticClass:\"title title-up\",attrs:{\"slot\":\"header\"},slot:\"header\"},[_vm._v(\" \"+_vm._s(_vm.$t(\"app.modules.measurements.edit.title\"))+\" \")]),_c('ValidationObserver',{ref:\"formEdit\",scopedSlots:_vm._u([{key:\"default\",fn:function(ref){\nvar handleSubmit = ref.handleSubmit;\nreturn [_c('form',{on:{\"submit\":function($event){$event.preventDefault();return handleSubmit(_vm.editUnidadMedida)}}},[_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-sm-12\"},[_c('ValidationProvider',{attrs:{\"name\":\"minLength\",\"rules\":\"required|min:2\"},scopedSlots:_vm._u([{key:\"default\",fn:function(ref){\nvar passed = ref.passed;\nvar failed = ref.failed;\nreturn [_c('fg-input',{attrs:{\"type\":\"text\",\"error\":failed ? 'La longitud mínima para el nombre es de 2 ' : null,\"hasSuccess\":passed,\"name\":\"minLength\",\"label\":_vm.$t('app.modules.measurements.headers.name')},model:{value:(_vm.item.nombre),callback:function ($$v) {_vm.$set(_vm.item, \"nombre\", $$v)},expression:\"item.nombre\"}})]}}],null,true)})],1)]),_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-sm-6\"},[_c('ValidationProvider',{attrs:{\"name\":\"minLength\",\"rules\":\"required|min:2\"},scopedSlots:_vm._u([{key:\"default\",fn:function(ref){\nvar passed = ref.passed;\nvar failed = ref.failed;\nreturn [_c('fg-input',{attrs:{\"type\":\"text\",\"error\":failed ? 'La longitud mínima para el nombre es de 5 ' : null,\"hasSuccess\":passed,\"name\":\"minLength\",\"label\":_vm.$t('app.modules.measurements.headers.abbreviation')},model:{value:(_vm.item.abreviacion),callback:function ($$v) {_vm.$set(_vm.item, \"abreviacion\", $$v)},expression:\"item.abreviacion\"}})]}}],null,true)})],1)]),_c('div',{staticClass:\"col-sm-6 form-group has-label\"},[_c('div',{staticClass:\"row\"},[_c('label',{staticStyle:{\"margin-left\":\"15px\"}},[_vm._v(_vm._s(_vm.$t(\"app.general.state\")))])]),[_c('n-switch',{model:{value:(_vm.item.activo),callback:function ($$v) {_vm.$set(_vm.item, \"activo\", $$v)},expression:\"item.activo\"}},[_c('i',{staticClass:\"now-ui-icons ui-1_check\",attrs:{\"slot\":\"on\"},slot:\"on\"}),_c('i',{staticClass:\"now-ui-icons ui-1_simple-remove\",attrs:{\"slot\":\"off\"},slot:\"off\"})])]],2),_c('div',{staticClass:\"text-right\",staticStyle:{\"margin-top\":\"10px\",\"padding-top\":\"20px\",\"border-top\":\"outset\"},attrs:{\"slot\":\"footer\"},slot:\"footer\"},[_c('n-button',{staticClass:\"pull-left btn-secondary\",nativeOn:{\"click\":function($event){return _vm.cancelEdit()}}},[_vm._v(_vm._s(_vm.$t(\"app.buttons.cancel\")))]),_c('n-button',{attrs:{\"native-type\":\"submit\",\"type\":\"primary\"}},[_vm._v(_vm._s(_vm.$t(\"app.buttons.save\")))])],1)])]}}])})],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\n\r\n\r\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./unidadMedidaEdit.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./unidadMedidaEdit.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./unidadMedidaEdit.vue?vue&type=template&id=4f6883d5&\"\nimport script from \"./unidadMedidaEdit.vue?vue&type=script&lang=js&\"\nexport * from \"./unidadMedidaEdit.vue?vue&type=script&lang=js&\"\nimport style0 from \"./unidadMedidaEdit.vue?vue&type=style&index=0&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('modal',{attrs:{\"show\":_vm.modals.classic},on:{\"update:show\":function($event){return _vm.$set(_vm.modals, \"classic\", $event)}}},[_c('h4',{staticClass:\"title title-up\",attrs:{\"slot\":\"header\"},slot:\"header\"},[_vm._v(\" \"+_vm._s(_vm.$t(\"app.modules.faq.title\"))+\" \")]),_c('ValidationObserver',{ref:\"formAdd\",scopedSlots:_vm._u([{key:\"default\",fn:function(ref){\nvar handleSubmit = ref.handleSubmit;\nreturn [_c('form',{on:{\"submit\":function($event){$event.preventDefault();return handleSubmit(_vm.submitNewMessage)}}},[_vm._l((_vm.item.langs),function(lang,index){return _c('div',{key:'rol-tem' + index,staticClass:\"row\"},[_c('div',{staticClass:\"col-2\"},[_c('div',{staticClass:\"form-group has-label\"},[_c('label',[_vm._v(_vm._s(lang.idioma))])])]),_c('div',{staticClass:\"col-5\"},[_c('div',{staticClass:\"form-group has-label\"},[_c('fg-input',{attrs:{\"type\":\"text\",\"placeholder\":lang.idioma,\"label\":_vm.$t('app.modules.faq.add.question')},model:{value:(lang.pregunta),callback:function ($$v) {_vm.$set(lang, \"pregunta\", $$v)},expression:\"lang.pregunta\"}})],1)]),_c('div',{staticClass:\"col-5\"},[_c('div',{staticClass:\"form-group has-label\"},[_c('label',[_vm._v(_vm._s(_vm.$t(\"app.modules.faq.add.answer\")))]),_c('el-input',{attrs:{\"type\":\"textarea\",\"rows\":2,\"placeholder\":_vm.$t('app.modules.faq.add.answer')},model:{value:(lang.respuesta),callback:function ($$v) {_vm.$set(lang, \"respuesta\", $$v)},expression:\"lang.respuesta\"}})],1)])])})],2)]}}])})],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\n\r\n\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./preguntasAdd.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./preguntasAdd.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./preguntasAdd.vue?vue&type=template&id=932d243e&\"\nimport script from \"./preguntasAdd.vue?vue&type=script&lang=js&\"\nexport * from \"./preguntasAdd.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-12\"},[_c('card',{attrs:{\"card-body-classes\":\"table-full-width\",\"no-footer-line\":\"\"}},[_c('div',[_c('div',{staticClass:\"col-12 d-flex justify-content-center justify-content-sm-between flex-wrap\"},[_c('h4',{staticClass:\"card-title text-purple\"},[_vm._v(\" \"+_vm._s(_vm.$t(\"app.modules.complaints.title\"))+\" \")])]),_c('div',{staticClass:\"col-12\"},[_c('el-collapse',{attrs:{\"accordion\":\"\"}},[_c('el-collapse-item',{staticClass:\"col-12\",attrs:{\"name\":\"1\",\"title\":_vm.$t('app.modules.complaints.headers.search')}},[_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-3\"},[_c('div',{staticClass:\"form-group has-label\"},[_c('el-select',{attrs:{\"filterable\":\"\",\"size\":\"large\",\"placeholder\":_vm.$t('app.modules.complaints.headers.status')},model:{value:(_vm.typeSelected),callback:function ($$v) {_vm.typeSelected=$$v},expression:\"typeSelected\"}},[_c('el-option',{attrs:{\"label\":_vm.$t('app.modules.complaints.headers.status'),\"value\":\"\"}}),_vm._l((_vm.estadosReclamaciones),function(item){return _c('el-option',{key:item.idEstadoReclamacion,attrs:{\"label\":item.estadoReclamacion,\"value\":item.idEstadoReclamacion}})})],2)],1)]),_c('div',{staticClass:\"col-9\"},[_c('fg-input',[_c('el-input',{staticClass:\"mb-3\",staticStyle:{\"width\":\"300px\"},attrs:{\"type\":\"search\",\"clearable\":\"\",\"prefix-icon\":\"el-icon-search \",\"placeholder\":_vm.$t('app.general.search'),\"aria-controls\":\"datatables\"},model:{value:(_vm.searchQuery),callback:function ($$v) {_vm.searchQuery=$$v},expression:\"searchQuery\"}})],1)],1)])])],1)],1),_c('el-table',{staticStyle:{\"width\":\"100%\"},attrs:{\"stripe\":\"\",\"data\":_vm.queriedData}},[_c('el-table-column',{attrs:{\"prop\":\"idReclamacion\",\"label\":this.$t('app.modules.complaints.headers.claim_number'),\"sortable\":\"\",\"width\":\"270\"}}),_c('el-table-column',{attrs:{\"prop\":\"numeroCliente\",\"label\":this.$t('app.modules.complaints.headers.number_cliente'),\"sortable\":\"\",\"width\":\"250\"}}),_c('el-table-column',{attrs:{\"prop\":\"razonSocial\",\"label\":this.$t('app.modules.complaints.headers.bussiness_name'),\"sortable\":\"\",\"min-width\":\"200\"}}),_c('el-table-column',{attrs:{\"prop\":\"fechaRegistro\",\"label\":this.$t('app.modules.complaints.headers.registration_date'),\"sortable\":\"\",\"min-width\":\"250\"}}),_c('el-table-column',{attrs:{\"prop\":\"nombre\",\"label\":this.$t('app.modules.complaints.headers.claimant_name'),\"sortable\":\"\",\"width\":\"300\"}}),_c('el-table-column',{attrs:{\"prop\":\"estadoReclamacion\",\"label\":this.$t('app.modules.complaints.headers.status'),\"sortable\":\"\",\"min-width\":\"200\"}}),_c('el-table-column',{attrs:{\"className\":\"is-center\",\"min-width\":100},scopedSlots:_vm._u([{key:\"default\",fn:function(props){return _c('div',{staticClass:\"table-actions dropdown\"},[_c('el-popover',{ref:'refOption' + props.$index,attrs:{\"placement\":\"bottom\",\"width\":\"250\",\"trigger\":\"click\"}},[_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-12 options\"},[_c('n-button',{staticClass:\"options-button\",attrs:{\"type\":\"primary\",\"size\":\"sm\",\"round\":\"\"},nativeOn:{\"click\":function($event){return _vm.EditItem(\n props.$index,\n props.row,\n 'refOption' + props.$index\n )}}},[_vm._v(\" \"+_vm._s(_vm.$t(\"app.modules.complaints.buttons.show_details\"))+\" \")])],1),_c('div',{staticClass:\"col-12 options\"},[_c('verify-permission',{attrs:{\"controller\":\"Reclamaciones\",\"action\":\"postAcuseRecibidoReclamacion\"}},[(props.row.reclamacion_idEstadoReclamacion == 1)?_c('n-button',{staticClass:\"options-button\",attrs:{\"type\":\"primary\",\"size\":\"sm\",\"round\":\"\"},nativeOn:{\"click\":function($event){return _vm.enviarAcuse(\n props.$index,\n props.row,\n 'refOption' + props.$index\n )}}},[_vm._v(\" \"+_vm._s(_vm.$t(\"app.modules.complaints.buttons.send\"))+\" \")]):_vm._e()],1)],1)]),_c('n-button',{staticClass:\"button-options-table\",attrs:{\"slot\":\"reference\",\"size\":\"sm\",\"icon\":\"\"},slot:\"reference\"},[_c('i',{staticClass:\"fa fa-ellipsis-v\",staticStyle:{\"color\":\"black\"}})])],1)],1)}}])})],1)],1),_c('div',{staticClass:\"col-12 d-flex justify-content-center justify-content-sm-between flex-wrap\",attrs:{\"slot\":\"footer\"},slot:\"footer\"},[_c('div',{},[_c('p',{staticClass:\"card-category\"},[_vm._v(\" \"+_vm._s(_vm.$t(\"app.pagination.showing\"))+\" \"+_vm._s(_vm.from + 1)+\" \"+_vm._s(_vm.$t(\"app.pagination.of\"))+\" \"+_vm._s(_vm.to)+\" \"+_vm._s(_vm.$t(\"app.pagination.of\"))+\" \"+_vm._s(_vm.total)+\" \"+_vm._s(_vm.$t(\"app.pagination.records\"))+\" \")])]),_c('n-pagination',{staticClass:\"pagination-no-border\",attrs:{\"per-page\":_vm.pagination.perPage,\"total\":_vm.total},model:{value:(_vm.pagination.currentPage),callback:function ($$v) {_vm.$set(_vm.pagination, \"currentPage\", $$v)},expression:\"pagination.currentPage\"}})],1)]),_c('reclamaciones-add-edit')],1)])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\n\r\n\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./reclamaciones.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./reclamaciones.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./reclamaciones.vue?vue&type=template&id=296678e4&\"\nimport script from \"./reclamaciones.vue?vue&type=script&lang=js&\"\nexport * from \"./reclamaciones.vue?vue&type=script&lang=js&\"\nimport style0 from \"./reclamaciones.vue?vue&type=style&index=0&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./familiaProductoAddEdit.vue?vue&type=style&index=1&id=3fdf239a&scoped=true&lang=css&\"","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-12\"},[_c('card',{attrs:{\"card-body-classes\":\"table-full-width\",\"no-footer-line\":\"\"}},[_c('div',[_c('div',{staticClass:\"col-12 d-flex justify-content-center justify-content-sm-between flex-wrap\"},[_c('h4',{staticClass:\"card-title text-purple\"},[_vm._v(\" \"+_vm._s(_vm.$t(\"app.modules.notifications.title\"))+\" \")]),_c('fg-input',[_c('el-input',{staticClass:\"mb-3\",staticStyle:{\"width\":\"300px\"},attrs:{\"type\":\"search\",\"clearable\":\"\",\"prefix-icon\":\"el-icon-search \",\"placeholder\":_vm.$t('app.general.search'),\"aria-controls\":\"datatables\"},model:{value:(_vm.searchQuery),callback:function ($$v) {_vm.searchQuery=$$v},expression:\"searchQuery\"}})],1)],1),_c('el-table',{staticStyle:{\"width\":\"100%\"},attrs:{\"stripe\":\"\",\"data\":_vm.queriedData}},[_c('el-table-column',{attrs:{\"prop\":\"idTipoNotificacion\",\"label\":this.$t('app.modules.notifications.headers.identifier'),\"sortable\":\"\",\"min-width\":\"200\"}}),_c('el-table-column',{attrs:{\"prop\":\"tipoNotificacion\",\"label\":this.$t('app.modules.notifications.headers.notification'),\"sortable\":\"\",\"min-width\":\"200\"}}),_c('el-table-column',{attrs:{\"label\":_vm.$t('app.general.active')},scopedSlots:_vm._u([{key:\"default\",fn:function(props){return [_c('n-switch',{attrs:{\"color\":\"black\"},on:{\"input\":function($event){return _vm.active(props.row)}},model:{value:(props.row.activo),callback:function ($$v) {_vm.$set(props.row, \"activo\", $$v)},expression:\"props.row.activo\"}},[_c('i',{staticClass:\"now-ui-icons ui-1_check\",attrs:{\"slot\":\"on\"},slot:\"on\"}),_c('i',{staticClass:\"now-ui-icons ui-1_simple-remove\",attrs:{\"slot\":\"off\"},slot:\"off\"})])]}}])}),_c('el-table-column',{attrs:{\"min-width\":200,\"label\":_vm.$t('app.general.actions')},scopedSlots:_vm._u([{key:\"default\",fn:function(props){return _c('div',{staticClass:\"table-actions dropdown\"},[_c('el-popover',{ref:'refOption' + props.$index,attrs:{\"placement\":\"bottom\",\"width\":\"250\",\"trigger\":\"click\"}},[_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-12 options\"},[_c('n-button',{staticClass:\"options-button\",attrs:{\"type\":\"primary\",\"size\":\"sm\",\"round\":\"\"},nativeOn:{\"click\":function($event){return _vm.EditItem(\n props.$index,\n props.row,\n 'refOption' + props.$index\n )}}},[_vm._v(\" \"+_vm._s(_vm.$t(\"app.modules.notifications.edit.title\"))+\" \")])],1)]),_c('n-button',{staticClass:\"button-options-table\",attrs:{\"slot\":\"reference\",\"size\":\"sm\",\"icon\":\"\"},slot:\"reference\"},[_c('i',{staticClass:\"fa fa-ellipsis-v\",staticStyle:{\"color\":\"black\"}})])],1)],1)}}])})],1)],1),_c('div',{staticClass:\"col-12 d-flex justify-content-center justify-content-sm-between flex-wrap\",attrs:{\"slot\":\"footer\"},slot:\"footer\"},[_c('div',{},[_c('p',{staticClass:\"card-category\"},[_vm._v(\" \"+_vm._s(_vm.$t(\"app.pagination.showing\"))+\" \"+_vm._s(_vm.from + 1)+\" \"+_vm._s(_vm.$t(\"app.pagination.of\"))+\" \"+_vm._s(_vm.to)+\" \"+_vm._s(_vm.$t(\"app.pagination.of\"))+\" \"+_vm._s(_vm.total)+\" \"+_vm._s(_vm.$t(\"app.pagination.records\"))+\" \")])]),_c('n-pagination',{staticClass:\"pagination-no-border\",attrs:{\"per-page\":_vm.pagination.perPage,\"total\":_vm.total},model:{value:(_vm.pagination.currentPage),callback:function ($$v) {_vm.$set(_vm.pagination, \"currentPage\", $$v)},expression:\"pagination.currentPage\"}})],1)]),_c('notificaciones-add'),_c('notificaciones-edit')],1)])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\n\r\n\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./notificaciones.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./notificaciones.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./notificaciones.vue?vue&type=template&id=d112d4e8&\"\nimport script from \"./notificaciones.vue?vue&type=script&lang=js&\"\nexport * from \"./notificaciones.vue?vue&type=script&lang=js&\"\nimport style0 from \"./notificaciones.vue?vue&type=style&index=0&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","class GrupoPropiedadFamiliaProductoTraduccion\r\n{\r\n idGrupoPropFamProdTrad = 0;\r\n nombreGrupo = null;\r\n idiomas_idIdioma = 0;\r\n grupoPropiedadFamiliaProducto_idGrupoPropiedad = 0;\r\n idioma = null;\r\n\r\n constructor(obj = {}) {\r\n Object.assign(this, obj);\r\n }\r\n}\r\n\r\nmodule.exports = GrupoPropiedadFamiliaProductoTraduccion;\r\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-12\"},[_c('div',{staticClass:\"card\"},[_c('div',{staticClass:\"card-header\"},[_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-4\"},[_c('h4',{staticClass:\"card-title\"},[_vm._v(\" \"+_vm._s(_vm.$t(\"app.modules.develop.title\"))+\" \")])]),_c('div',{staticClass:\"col-8\"},[_c('n-button',{staticClass:\"float-right\",attrs:{\"type\":\"primary\",\"round\":\"\"},nativeOn:{\"click\":function($event){return _vm.download()}}},[_c('i',{staticClass:\"now-ui-icons arrows-1_cloud-download-93\",attrs:{\"slot\":\"label\"},slot:\"label\"}),_vm._v(\" \"+_vm._s(_vm.$t(\"app.modules.develop.buttons.help_file\"))+\" \")])],1)])]),_c('div',{staticClass:\"card-body\"},[_c('ValidationObserver',{ref:\"formDev\",scopedSlots:_vm._u([{key:\"default\",fn:function(ref){\nvar handleSubmit = ref.handleSubmit;\nreturn [_c('form',{on:{\"submit\":function($event){$event.preventDefault();return handleSubmit(_vm.submit)}}},[_c('div',{staticClass:\"col-12\"},[_c('div',{staticClass:\"form-group has-label\"},[_c('fg-input',{attrs:{\"type\":\"text\",\"disabled\":\"\",\"label\":_vm.$t('app.modules.develop.headers.read'),\"value\":_vm.route_read_tracking}})],1),_c('div',{staticClass:\"form-group has-label\"},[_c('fg-input',{attrs:{\"type\":\"text\",\"disabled\":\"\",\"label\":_vm.$t('app.modules.develop.headers.add_tracking'),\"value\":_vm.route_add_tracking}})],1),_c('div',{staticClass:\"form-group has-label\"},[_c('fg-input',{attrs:{\"type\":\"text\",\"disabled\":\"\",\"label\":_vm.$t('app.modules.develop.headers.add_incidencia'),\"value\":_vm.route_add_incidencias}})],1),_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-11\"},[_c('div',{staticClass:\"form-group has-label\"},[_c('fg-input',{attrs:{\"type\":\"text\",\"disabled\":\"\",\"label\":_vm.$t('app.modules.develop.headers.token'),\"value\":_vm.empresa.token}})],1)]),_c('div',{staticClass:\"col-1\",staticStyle:{\"text-align\":\"right\"}},[_c('n-button',{staticStyle:{\"margin-top\":\"20px\"},attrs:{\"type\":\"primary\",\"round\":\"\"},nativeOn:{\"click\":function($event){return _vm.generateToken($event)}}},[_vm._v(\" \"+_vm._s(_vm.$t('app.modules.develop.buttons.generate'))+\" \")])],1)]),_c('div',{staticClass:\"form-group has-label\"},[_c('label',[_vm._v(_vm._s(_vm.$t(\"app.modules.develop.headers.carrier_user\")))]),_c('el-select',{attrs:{\"placeholder\":_vm.$t('app.modules.develop.headers.carrier_user'),\"size\":\"large\"},model:{value:(_vm.empresa.usuarios_idUsuario),callback:function ($$v) {_vm.$set(_vm.empresa, \"usuarios_idUsuario\", $$v)},expression:\"empresa.usuarios_idUsuario\"}},_vm._l((_vm.users),function(item){return _c('el-option',{key:item.idUsuario,attrs:{\"label\":item.nombre,\"value\":item.idUsuario}})}),1)],1)]),_c('div',{staticClass:\"text-right\",staticStyle:{\"margin-top\":\"10px\",\"padding-top\":\"20px\",\"border-top\":\"outset\"},attrs:{\"slot\":\"footer\"},slot:\"footer\"},[_c('n-button',{attrs:{\"native-type\":\"submit\",\"type\":\"primary\"}},[_vm._v(_vm._s(_vm.$t(\"app.buttons.save\")))])],1)])]}}])})],1)])])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\n\r\n\r\n\r\n\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./desarrolladorIndex.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./desarrolladorIndex.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./desarrolladorIndex.vue?vue&type=template&id=2fa73006&scoped=true&\"\nimport script from \"./desarrolladorIndex.vue?vue&type=script&lang=js&\"\nexport * from \"./desarrolladorIndex.vue?vue&type=script&lang=js&\"\nimport style0 from \"./desarrolladorIndex.vue?vue&type=style&index=0&id=2fa73006&scoped=true&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"2fa73006\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('modal',{attrs:{\"show\":_vm.modals.classic},on:{\"update:show\":function($event){return _vm.$set(_vm.modals, \"classic\", $event)}}},[_c('h4',{staticClass:\"title title-up\",attrs:{\"slot\":\"header\"},slot:\"header\"},[_vm._v(\" \"+_vm._s(_vm.$t(\"app.modules.reasons_declining_order.edit.title\"))+\" \")]),_c('ValidationObserver',{ref:\"formEdit\",scopedSlots:_vm._u([{key:\"default\",fn:function(ref){\nvar handleSubmit = ref.handleSubmit;\nreturn [_c('form',{on:{\"submit\":function($event){$event.preventDefault();return handleSubmit(_vm.submitEditReason)}}},[_c('div',{staticClass:\"row text-left\"},_vm._l((_vm.item.traducciones),function(lang){return _c('div',{key:lang.idLenguaje,class:_vm.sizes},[_c('b',[_vm._v(_vm._s(lang.idioma))]),_c('ValidationProvider',{attrs:{\"name\":_vm.$t('app.modules.reasons_declining_order.headers.reason'),\"rules\":\"required\"},scopedSlots:_vm._u([{key:\"default\",fn:function(ref){\nvar passed = ref.passed;\nvar failed = ref.failed;\nreturn [_c('fg-input',{attrs:{\"type\":\"text\",\"error\":failed ? _vm.required_text : null,\"hasSuccess\":passed,\"placeholder\":lang.idioma,\"label\":_vm.$t('app.modules.reasons_declining_order.headers.reason')},model:{value:(lang.declinacionDescripcion),callback:function ($$v) {_vm.$set(lang, \"declinacionDescripcion\", $$v)},expression:\"lang.declinacionDescripcion\"}})]}}],null,true)})],1)}),0),_c('div',{staticClass:\"col-sm-6 form-group has-label\"},[_c('div',{staticStyle:{\"margin-bottom\":\"-5px\",\"margin-left\":\"-12px\"}},[_c('label',[_vm._v(_vm._s(_vm.$t(\"app.general.state\")))])]),[_c('n-switch',{model:{value:(_vm.item.activo),callback:function ($$v) {_vm.$set(_vm.item, \"activo\", $$v)},expression:\"item.activo\"}},[_c('i',{staticClass:\"now-ui-icons ui-1_check\",attrs:{\"slot\":\"on\"},slot:\"on\"}),_c('i',{staticClass:\"now-ui-icons ui-1_simple-remove\",attrs:{\"slot\":\"off\"},slot:\"off\"})])]],2),_c('div',{staticClass:\"text-right\",staticStyle:{\"margin-top\":\"10px\",\"padding-top\":\"20px\",\"border-top\":\"outset\"},attrs:{\"slot\":\"footer\"},slot:\"footer\"},[_c('n-button',{staticClass:\"pull-left btn-secondary\",nativeOn:{\"click\":function($event){return _vm.cancelEdit()}}},[_vm._v(_vm._s(_vm.$t(\"app.buttons.cancel\")))]),_c('n-button',{attrs:{\"native-type\":\"submit\",\"type\":\"primary\"}},[_vm._v(_vm._s(_vm.$t(\"app.buttons.save\")))])],1)])]}}])})],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\n\r\n\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./motivoDeclinacionEdit.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./motivoDeclinacionEdit.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./motivoDeclinacionEdit.vue?vue&type=template&id=1ec5938b&\"\nimport script from \"./motivoDeclinacionEdit.vue?vue&type=script&lang=js&\"\nexport * from \"./motivoDeclinacionEdit.vue?vue&type=script&lang=js&\"\nimport style0 from \"./motivoDeclinacionEdit.vue?vue&type=style&index=0&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('modal',{attrs:{\"show\":_vm.modalEdit},on:{\"update:show\":function($event){_vm.modalEdit=$event}}},[_c('h4',{staticClass:\"title title-up\",attrs:{\"slot\":\"header\"},slot:\"header\"},[_vm._v(\"Editar Subcategoria\")]),_c('ValidationObserver',{ref:\"formEdit\",scopedSlots:_vm._u([{key:\"default\",fn:function(ref){\nvar handleSubmit = ref.handleSubmit;\nreturn [_c('form',{on:{\"submit\":function($event){$event.preventDefault();return handleSubmit(_vm.editRow)}}},[_c('div',{staticClass:\"row\"},[_c('el-select',{attrs:{\"size\":\"large\",\"placeholder\":_vm.$t('app.modules.category_product.headers.category')},model:{value:(_vm.subcategory.idCategoriaProducto),callback:function ($$v) {_vm.$set(_vm.subcategory, \"idCategoriaProducto\", $$v)},expression:\"subcategory.idCategoriaProducto\"}},_vm._l((_vm.categorias),function(rol){return _c('el-option',{key:rol.idCategoriaProducto,staticClass:\"select-primary\",attrs:{\"value\":rol.idCategoriaProducto,\"label\":rol.nombreCategoria}})}),1)],1),_vm._l((_vm.subcategory.traducciones),function(lang){return _c('div',[_c('h6',[_vm._v(_vm._s(lang.idioma.idioma))]),_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-12\"},[_c('fg-input',{attrs:{\"type\":\"text\",\"name\":\"minLength\",\"label\":_vm.$t('app.modules.subcategory_product.headers.name')},model:{value:(lang.nombreSubcategoria),callback:function ($$v) {_vm.$set(lang, \"nombreSubcategoria\", $$v)},expression:\"lang.nombreSubcategoria\"}})],1)]),_c('div',{staticClass:\"separate\"})])}),_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-sm-6 form-group has-label\"},[_c('div',{staticClass:\"row\"},[_c('label',{staticStyle:{\"margin-left\":\"15px\"}},[_vm._v(_vm._s(_vm.$t(\"app.modules.messages.headers.state\")))])]),[_c('n-switch',{model:{value:(_vm.subcategory.activo),callback:function ($$v) {_vm.$set(_vm.subcategory, \"activo\", $$v)},expression:\"subcategory.activo\"}},[_c('i',{staticClass:\"now-ui-icons ui-1_check\",attrs:{\"slot\":\"on\"},slot:\"on\"}),_c('i',{staticClass:\"now-ui-icons ui-1_simple-remove\",attrs:{\"slot\":\"off\"},slot:\"off\"})])]],2)]),_c('div',{staticClass:\"text-right\",staticStyle:{\"margin-top\":\"10px\",\"padding-top\":\"20px\",\"border-top\":\"outset\"},attrs:{\"slot\":\"footer\"},slot:\"footer\"},[_c('n-button',{staticClass:\"pull-left btn-secondary\",nativeOn:{\"click\":function($event){return _vm.cancelEdit($event)}}},[_vm._v(_vm._s(_vm.$t(\"app.buttons.cancel\")))]),_c('verify-permission',{attrs:{\"controller\":\"Subcategoria\",\"action\":\"UpdateSubcategoria\"}},[_c('n-button',{attrs:{\"native-type\":\"submit\",\"type\":\"primary\"}},[_vm._v(_vm._s(_vm.$t(\"app.buttons.save\")))])],1)],1)],2)]}}])})],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\n\r\n\r\n\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./subcategoriaproductoEdit.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./subcategoriaproductoEdit.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./subcategoriaproductoEdit.vue?vue&type=template&id=032dd72a&scoped=true&\"\nimport script from \"./subcategoriaproductoEdit.vue?vue&type=script&lang=js&\"\nexport * from \"./subcategoriaproductoEdit.vue?vue&type=script&lang=js&\"\nimport style0 from \"./subcategoriaproductoEdit.vue?vue&type=style&index=0&lang=css&\"\nimport style1 from \"./subcategoriaproductoEdit.vue?vue&type=style&index=1&id=032dd72a&scoped=true&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"032dd72a\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('modal',{attrs:{\"show\":_vm.modals.classic,\"type\":\"mini\"},on:{\"update:show\":function($event){return _vm.$set(_vm.modals, \"classic\", $event)}}},[_c('h4',{staticClass:\"title title-up\",attrs:{\"slot\":\"header\"},slot:\"header\"},[_vm._v(\" \"+_vm._s(_vm.$t(\"app.modules.order_entry_schedule.add.title\"))+\" \")]),_c('ValidationObserver',{ref:\"formAdd\",scopedSlots:_vm._u([{key:\"default\",fn:function(ref){\nvar handleSubmit = ref.handleSubmit;\nreturn [_c('form',{on:{\"submit\":function($event){$event.preventDefault();return handleSubmit(_vm.submitNewType)}}},[_c('div',{staticClass:\"row text-left\"},[_c('div',{class:'form-group has-label ' + _vm.sizes},[_c('label',[_vm._v(_vm._s(_vm.$t(\"app.modules.order_entry_schedule.headers.order_category\")))]),_c('el-select',{staticClass:\"select-primary\",attrs:{\"size\":\"large\",\"placeholder\":_vm.$t('app.modules.order_entry_schedule.headers.order_category')},model:{value:(_vm.item.catProd_idCategoriaProducto),callback:function ($$v) {_vm.$set(_vm.item, \"catProd_idCategoriaProducto\", $$v)},expression:\"item.catProd_idCategoriaProducto\"}},_vm._l((_vm.categorias),function(categoria){return _c('el-option',{key:categoria.idCategoriaProducto,staticClass:\"select-primary\",attrs:{\"value\":categoria.idCategoriaProducto,\"label\":categoria.nombreCategoria}})}),1),(_vm.selectedEmptyOption)?_c('div',{staticClass:\"text-danger invalid-feedback\",staticStyle:{\"display\":\"block\"}},[_vm._v(\" \"+_vm._s(_vm.required_text)+\" \")]):_vm._e()],1),_c('div',{class:'form-group has-label ' + _vm.sizes},[_c('label',[_vm._v(_vm._s(_vm.$t(\"app.modules.order_entry_schedule.headers.end_time\")))]),[_c('el-time-picker',{attrs:{\"arrow-control\":\"\",\"placeholder\":_vm.$t('app.modules.order_entry_schedule.headers.end_time')},model:{value:(_vm.horafin),callback:function ($$v) {_vm.horafin=$$v},expression:\"horafin\"}}),(_vm.selectedEmpty)?_c('div',{staticClass:\"text-danger invalid-feedback\",staticStyle:{\"display\":\"block\"}},[_vm._v(\" \"+_vm._s(_vm.required_text)+\" \")]):_vm._e()]],2)]),_c('div',{staticClass:\"text-right\",staticStyle:{\"margin-top\":\"10px\",\"padding-top\":\"20px\",\"border-top\":\"outset\"},attrs:{\"slot\":\"footer\"},slot:\"footer\"},[_c('n-button',{staticClass:\"pull-left btn-secondary\",nativeOn:{\"click\":function($event){return _vm.cancelAdd()}}},[_vm._v(_vm._s(_vm.$t(\"app.buttons.cancel\")))]),_c('n-button',{attrs:{\"native-type\":\"submit\",\"type\":\"primary\"}},[_vm._v(_vm._s(_vm.$t(\"app.buttons.save\")))])],1)])]}}])})],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\n\r\n\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./horarioIngresoAdd.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./horarioIngresoAdd.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./horarioIngresoAdd.vue?vue&type=template&id=31c21e52&\"\nimport script from \"./horarioIngresoAdd.vue?vue&type=script&lang=js&\"\nexport * from \"./horarioIngresoAdd.vue?vue&type=script&lang=js&\"\nimport style0 from \"./horarioIngresoAdd.vue?vue&type=style&index=0&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('modal',{attrs:{\"show\":_vm.modals.classic},on:{\"update:show\":function($event){return _vm.$set(_vm.modals, \"classic\", $event)}}},[_c('h4',{staticClass:\"title title-up\",attrs:{\"slot\":\"header\"},slot:\"header\"},[_vm._v(\" \"+_vm._s(_vm.$t(\"app.modules.currencies.add.title\"))+\" \")]),_c('ValidationObserver',{ref:\"formAdd\",scopedSlots:_vm._u([{key:\"default\",fn:function(ref){\nvar handleSubmit = ref.handleSubmit;\nreturn [_c('form',{on:{\"submit\":function($event){$event.preventDefault();return handleSubmit(_vm.submitNewMoneda)}}},[_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-sm-12\"},[_c('ValidationProvider',{attrs:{\"name\":\"minLength\",\"rules\":\"required|min:2\"},scopedSlots:_vm._u([{key:\"default\",fn:function(ref){\nvar passed = ref.passed;\nvar failed = ref.failed;\nreturn [_c('fg-input',{attrs:{\"type\":\"text\",\"error\":failed ? 'La longitud mínima para el nombre es de 2 ' : null,\"hasSuccess\":passed,\"name\":\"minLength\",\"label\":_vm.$t('app.modules.currencies.headers.name')},model:{value:(_vm.item.nombre),callback:function ($$v) {_vm.$set(_vm.item, \"nombre\", $$v)},expression:\"item.nombre\"}})]}}],null,true)})],1)]),_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-sm-12\"},[_c('ValidationProvider',{attrs:{\"name\":\"minLength\",\"rules\":\"required|min:2\"},scopedSlots:_vm._u([{key:\"default\",fn:function(ref){\nvar passed = ref.passed;\nvar failed = ref.failed;\nreturn [_c('fg-input',{attrs:{\"type\":\"text\",\"error\":failed ? 'La longitud mínima para el nombre es de 2 ' : null,\"hasSuccess\":passed,\"name\":\"minLength\",\"label\":_vm.$t('app.modules.currencies.headers.abbreviation')},model:{value:(_vm.item.abreviatura),callback:function ($$v) {_vm.$set(_vm.item, \"abreviatura\", $$v)},expression:\"item.abreviatura\"}})]}}],null,true)})],1)]),_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-sm-6 form-group has-label\"},[_c('div',{staticClass:\"row\"},[_c('label',{staticStyle:{\"margin-left\":\"15px\"}},[_vm._v(_vm._s(_vm.$t(\"app.general.active\")))])]),[_c('n-switch',{model:{value:(_vm.item.activo),callback:function ($$v) {_vm.$set(_vm.item, \"activo\", $$v)},expression:\"item.activo\"}},[_c('i',{staticClass:\"now-ui-icons ui-1_check\",attrs:{\"slot\":\"on\"},slot:\"on\"}),_c('i',{staticClass:\"now-ui-icons ui-1_simple-remove\",attrs:{\"slot\":\"off\"},slot:\"off\"})])]],2)]),_c('div',{staticClass:\"text-right\",staticStyle:{\"margin-top\":\"10px\",\"padding-top\":\"20px\",\"border-top\":\"outset\"},attrs:{\"slot\":\"footer\"},slot:\"footer\"},[_c('n-button',{staticClass:\"pull-left btn-secondary\",nativeOn:{\"click\":function($event){return _vm.cancelAdd()}}},[_vm._v(_vm._s(_vm.$t(\"app.buttons.cancel\")))]),_c('n-button',{attrs:{\"native-type\":\"submit\",\"type\":\"primary\"}},[_vm._v(_vm._s(_vm.$t(\"app.buttons.save\")))])],1)])]}}])})],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\n\r\n\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./monedasAdd.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./monedasAdd.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./monedasAdd.vue?vue&type=template&id=5e7c1616&\"\nimport script from \"./monedasAdd.vue?vue&type=script&lang=js&\"\nexport * from \"./monedasAdd.vue?vue&type=script&lang=js&\"\nimport style0 from \"./monedasAdd.vue?vue&type=style&index=0&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-12\"},[_c('div',{staticClass:\"new-button-div\"},[_c('verify-permission',{attrs:{\"controller\":\"EmpresaTransportista\",\"action\":\"addEmpresasTransportistasExcel\"}},[_c('n-button',{attrs:{\"type\":\"primary\",\"round\":\"\"},nativeOn:{\"click\":function($event){return _vm.addNewCompany()}}},[_c('i',{staticClass:\"now-ui-icons ui-1_simple-add\",attrs:{\"slot\":\"label\"},slot:\"label\"}),_vm._v(\" \"+_vm._s(_vm.$t(\"app.modules.transport_company.add.title\"))+\" \")])],1)],1),_c('card',{attrs:{\"card-body-classes\":\"table-full-width\",\"no-footer-line\":\"\"}},[_c('div',{staticClass:\"col-12 d-flex justify-content-left justify-content-sm-left flex-wrap\"}),_c('div',[_c('div',{staticClass:\"col-12 d-flex justify-content-center justify-content-sm-between flex-wrap\"},[_c('h4',{staticClass:\"card-title text-purple\"},[_vm._v(\" \"+_vm._s(_vm.$t(\"app.modules.transport_company.title\"))+\" \")]),_c('fg-input',[_c('el-input',{staticClass:\"mb-3\",staticStyle:{\"width\":\"300px\"},attrs:{\"type\":\"search\",\"clearable\":\"\",\"prefix-icon\":\"el-icon-search \",\"placeholder\":_vm.$t('app.general.search'),\"aria-controls\":\"datatables\"},model:{value:(_vm.searchQuery),callback:function ($$v) {_vm.searchQuery=$$v},expression:\"searchQuery\"}})],1)],1),_c('el-table',{staticStyle:{\"width\":\"100%\"},attrs:{\"stripe\":\"\",\"data\":_vm.queriedData}},[_c('el-table-column',{attrs:{\"prop\":\"idSap\",\"label\":this.$t('app.modules.transport_company.headers.sap_id'),\"sortable\":\"\",\"min-width\":\"250\"}}),_c('el-table-column',{attrs:{\"prop\":\"nombreEmpresa\",\"label\":this.$t('app.modules.transport_company.headers.name'),\"sortable\":\"\",\"min-width\":\"270\"}}),_c('el-table-column',{attrs:{\"label\":_vm.$t('app.general.active'),\"min-width\":\"200\"},scopedSlots:_vm._u([{key:\"default\",fn:function(scope){return [_vm._v(\" \"+_vm._s(scope.row.estatus ? _vm.$t(\"app.general.active\") : _vm.$t(\"app.general.inactive\"))+\" \")]}}])}),_c('verify-permission',{attrs:{\"controller\":\"EmpresaTransportista\",\"action\":\"activarDesactivarTransportista\"}},[_c('el-table-column',{attrs:{\"label\":_vm.$t('app.general.active'),\"min-width\":200},scopedSlots:_vm._u([{key:\"default\",fn:function(props){return [_c('n-switch',{attrs:{\"color\":\"black\"},on:{\"input\":function($event){return _vm.active(props.row)}},model:{value:(props.row.estatus),callback:function ($$v) {_vm.$set(props.row, \"estatus\", $$v)},expression:\"props.row.estatus\"}},[_c('i',{staticClass:\"now-ui-icons ui-1_check\",attrs:{\"slot\":\"on\"},slot:\"on\"}),_c('i',{staticClass:\"now-ui-icons ui-1_simple-remove\",attrs:{\"slot\":\"off\"},slot:\"off\"})])]}}])})],1)],1)],1),_c('div',{staticClass:\"col-12 d-flex justify-content-center justify-content-sm-between flex-wrap\",attrs:{\"slot\":\"footer\"},slot:\"footer\"},[_c('div',{},[_c('p',{staticClass:\"card-category\"},[_vm._v(\" \"+_vm._s(_vm.$t(\"app.pagination.showing\"))+\" \"+_vm._s(_vm.from + 1)+\" \"+_vm._s(_vm.$t(\"app.pagination.of\"))+\" \"+_vm._s(_vm.to)+\" \"+_vm._s(_vm.$t(\"app.pagination.of\"))+\" \"+_vm._s(_vm.total)+\" \"+_vm._s(_vm.$t(\"app.pagination.records\"))+\" \")])]),_c('n-pagination',{staticClass:\"pagination-no-border\",attrs:{\"per-page\":_vm.pagination.perPage,\"total\":_vm.total},model:{value:(_vm.pagination.currentPage),callback:function ($$v) {_vm.$set(_vm.pagination, \"currentPage\", $$v)},expression:\"pagination.currentPage\"}})],1)]),_c('empresa-transportista-add')],1)])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\n\r\n\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./empresaTransportista.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./empresaTransportista.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./empresaTransportista.vue?vue&type=template&id=1fe081ea&\"\nimport script from \"./empresaTransportista.vue?vue&type=script&lang=js&\"\nexport * from \"./empresaTransportista.vue?vue&type=script&lang=js&\"\nimport style0 from \"./empresaTransportista.vue?vue&type=style&index=0&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('modal',{attrs:{\"show\":_vm.modals.classic},on:{\"update:show\":function($event){return _vm.$set(_vm.modals, \"classic\", $event)}}},[_c('h4',{staticClass:\"title title-up\",attrs:{\"slot\":\"header\"},slot:\"header\"},[_vm._v(_vm._s(_vm.$t('app.modules.product_family_prop.add.title')))]),_c('ValidationObserver',{ref:\"formAdd\",scopedSlots:_vm._u([{key:\"default\",fn:function(ref){\nvar handleSubmit = ref.handleSubmit;\nreturn [_c('form',{on:{\"submit\":function($event){$event.preventDefault();return handleSubmit(_vm.execAction)}}},[_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-sm-12\"},[_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-12\"},[_c('label',[_vm._v(_vm._s(_vm.$t('app.modules.product_family_prop_group.headers.name')))])]),_c('div',{staticClass:\"col-10\"},[_c('el-select',{attrs:{\"placeholder\":_vm.$t('app.modules.product_family_prop_group.headers.name'),\"size\":\"large\",\"allowCreate\":\"\"},model:{value:(_vm.property.grupoPropiedadFamiliaProducto_idGrupoPropiedad),callback:function ($$v) {_vm.$set(_vm.property, \"grupoPropiedadFamiliaProducto_idGrupoPropiedad\", $$v)},expression:\"property.grupoPropiedadFamiliaProducto_idGrupoPropiedad\"}},_vm._l((_vm.groups),function(group){return _c('el-option',{key:group.idGrupoPropiedad,attrs:{\"label\":group.nombreGrupo,\"value\":group.idGrupoPropiedad}})}),1)],1),_c('div',{staticClass:\"col-2\"},[_c('verify-permission',{attrs:{\"controller\":\"GrupoPropiedadFamiliaProducto\",\"action\":\"postGrupoPropiedadFamiliaProducto\"}},[_c('n-button',{staticClass:\"btn like btn-md\",attrs:{\"type\":\"success\",\"title\":_vm.$t('app.buttons.add'),\"round\":\"\",\"icon\":\"\",\"size\":\"md\"},nativeOn:{\"click\":function($event){return _vm.openGroupAdd()}}},[_c('i',{staticClass:\"fa fa-plus\"})])],1)],1)]),_c('div',{staticClass:\"separate\"}),_vm._l((_vm.property.traducciones),function(lang){return _c('div',[_c('h6',[_vm._v(_vm._s(lang.idioma.idioma))]),_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-12\"},[_c('fg-input',{attrs:{\"type\":\"text\",\"name\":\"minLength\",\"label\":_vm.$t('app.modules.product_family_prop.headers.name')},model:{value:(lang.nombrePropiedad),callback:function ($$v) {_vm.$set(lang, \"nombrePropiedad\", $$v)},expression:\"lang.nombrePropiedad\"}})],1)]),_c('div',{staticClass:\"separate\"})])}),_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-8\"},[_c('el-select',{attrs:{\"placeholder\":_vm.$t('app.modules.product_family_prop.headers.content_type'),\"size\":\"large\"},model:{value:(_vm.property.tipo),callback:function ($$v) {_vm.$set(_vm.property, \"tipo\", $$v)},expression:\"property.tipo\"}},_vm._l((_vm.types),function(type){return _c('el-option',{key:type,attrs:{\"label\":_vm.$t('app.modules.product_family_prop.headers.'+type.name),\"value\":type.name}})}),1)],1),_c('div',{staticClass:\"col-4 is-center\",staticStyle:{\"text-align\":\"center\"}},[_vm._v(\" \"+_vm._s(_vm.$t(\"app.general.active\"))+\" \"),_c('br'),_c('n-switch',{model:{value:(_vm.property.activo),callback:function ($$v) {_vm.$set(_vm.property, \"activo\", $$v)},expression:\"property.activo\"}})],1)])],2)]),_c('div',{staticClass:\"text-right\",staticStyle:{\"margin-top\":\"10px\",\"padding-top\":\"20px\",\"border-top\":\"outset\"},attrs:{\"slot\":\"footer\"},slot:\"footer\"},[_c('n-button',{staticClass:\"pull-left btn-secondary\",nativeOn:{\"click\":function($event){return _vm.cancelAdd()}}},[_vm._v(_vm._s(_vm.$t(\"app.buttons.cancel\")))]),_c('verify-permission',{attrs:{\"controller\":\"PropiedadFamiliaProducto\",\"action\":\"addPropiedadFamiliaProducto\"}},[_c('n-button',{attrs:{\"native-type\":\"submit\",\"type\":\"primary\"}},[_vm._v(_vm._s(_vm.$t(\"app.buttons.save\")))])],1)],1)])]}}])}),_c('grupo-propiedad-familia-producto-add')],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('modal',{attrs:{\"show\":_vm.modals.classic},on:{\"update:show\":function($event){return _vm.$set(_vm.modals, \"classic\", $event)}}},[_c('h4',{staticClass:\"title title-up\",attrs:{\"slot\":\"header\"},slot:\"header\"},[_vm._v(_vm._s(_vm.$t('app.modules.product_family_prop_group.add.title')))]),_c('ValidationObserver',{ref:\"formAdd\",scopedSlots:_vm._u([{key:\"default\",fn:function(ref){\nvar handleSubmit = ref.handleSubmit;\nreturn [_c('form',{on:{\"submit\":function($event){$event.preventDefault();return handleSubmit(_vm.submitNewGroup)}}},[_vm._l((_vm.group.traducciones),function(lang){return _c('div',[_c('h6',[_vm._v(_vm._s(lang.idioma.idioma))]),_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-sm-12\"},[_c('fg-input',{attrs:{\"type\":\"text\",\"name\":\"minLength\",\"label\":_vm.$t('app.modules.product_family_prop.headers.name')},model:{value:(lang.nombreGrupo),callback:function ($$v) {_vm.$set(lang, \"nombreGrupo\", $$v)},expression:\"lang.nombreGrupo\"}})],1)])])}),_c('div',{staticClass:\"text-right\",staticStyle:{\"margin-top\":\"10px\",\"padding-top\":\"20px\",\"border-top\":\"outset\"},attrs:{\"slot\":\"footer\"},slot:\"footer\"},[_c('n-button',{staticClass:\"pull-left\",nativeOn:{\"click\":function($event){return _vm.cancelAdd()}}},[_vm._v(_vm._s(_vm.$t(\"app.buttons.cancel\")))]),_c('n-button',{attrs:{\"native-type\":\"submit\",\"type\":\"primary\"}},[_vm._v(_vm._s(_vm.$t(\"app.buttons.save\")))])],1)],2)]}}])})],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\n\r\n\r\n\r\n\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./grupoPropiedadFamiliaProductoAdd.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./grupoPropiedadFamiliaProductoAdd.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./grupoPropiedadFamiliaProductoAdd.vue?vue&type=template&id=d8f2b930&scoped=true&\"\nimport script from \"./grupoPropiedadFamiliaProductoAdd.vue?vue&type=script&lang=js&\"\nexport * from \"./grupoPropiedadFamiliaProductoAdd.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"d8f2b930\",\n null\n \n)\n\nexport default component.exports","\r\n\r\n\r\n\r\n\r\n\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./propiedadFamiliaProductoAdd.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./propiedadFamiliaProductoAdd.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./propiedadFamiliaProductoAdd.vue?vue&type=template&id=1e3270da&scoped=true&\"\nimport script from \"./propiedadFamiliaProductoAdd.vue?vue&type=script&lang=js&\"\nexport * from \"./propiedadFamiliaProductoAdd.vue?vue&type=script&lang=js&\"\nimport style0 from \"./propiedadFamiliaProductoAdd.vue?vue&type=style&index=0&lang=css&\"\nimport style1 from \"./propiedadFamiliaProductoAdd.vue?vue&type=style&index=1&id=1e3270da&scoped=true&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"1e3270da\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-12\"},[_c('div',{staticClass:\"card\"},[_c('div',{staticClass:\"card-header\"},[_c('h4',{staticClass:\"card-title\"},[_vm._v(\" \"+_vm._s(_vm.$t(_vm.title))+\" \")]),_c('p',{staticClass:\"text-primary\"},[_vm._v(\" \"+_vm._s(_vm.$t(\"app.modules.product_family.addEdit.sub_text\"))+\" \")])]),_c('div',{staticClass:\"card-body\"},[_c('ValidationObserver',{ref:\"formAdd\",scopedSlots:_vm._u([{key:\"default\",fn:function(ref){\nvar handleSubmit = ref.handleSubmit;\nreturn [_c('form',{on:{\"submit\":function($event){$event.preventDefault();return handleSubmit(_vm.verifySave)}}},[_c('div',{staticClass:\"col-12\"},[_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-4\"},[_c('fg-input',{attrs:{\"type\":\"text\",\"label\":_vm.$t('app.modules.product_family.headers.name')},model:{value:(_vm.product_family.productoPadre),callback:function ($$v) {_vm.$set(_vm.product_family, \"productoPadre\", $$v)},expression:\"product_family.productoPadre\"}})],1),_c('div',{staticClass:\"col-4\"},[_c('div',{staticClass:\"form-group has-label\"},[_c('label',[_vm._v(_vm._s(_vm.$t(\"app.modules.product_family.headers.category_name\")))]),_c('el-select',{attrs:{\"placeholder\":_vm.$t('app.modules.product_family.headers.category_name'),\"size\":\"large\"},on:{\"change\":_vm.selectCategory},model:{value:(\n _vm.product_family.categoriaProducto_idCategoriaProducto\n ),callback:function ($$v) {_vm.$set(_vm.product_family, \"categoriaProducto_idCategoriaProducto\", $$v)},expression:\"\\n product_family.categoriaProducto_idCategoriaProducto\\n \"}},_vm._l((_vm.categories),function(category){return _c('el-option',{key:category.idCategoriaProducto,attrs:{\"label\":category.nombreCategoria,\"value\":category.idCategoriaProducto}})}),1)],1)]),_c('div',{staticClass:\"col-4\"},[_c('div',{staticClass:\"form-group has-label\"},[_c('label',[_vm._v(_vm._s(_vm.$t( \"app.modules.product_family.headers.subcategory_name\" )))]),(_vm.subcategories.length > 0)?_c('el-select',{attrs:{\"placeholder\":_vm.$t(\n 'app.modules.product_family.headers.subcategory_name'\n ),\"size\":\"large\",\"allowCreate\":\"\"},model:{value:(\n _vm.product_family.subcategoriaProducto_idSubcategoriaProducto\n ),callback:function ($$v) {_vm.$set(_vm.product_family, \"subcategoriaProducto_idSubcategoriaProducto\", $$v)},expression:\"\\n product_family.subcategoriaProducto_idSubcategoriaProducto\\n \"}},_vm._l((_vm.subcategories),function(subcat){return _c('el-option',{key:subcat.idSubcategoriaProducto,attrs:{\"label\":subcat.nombreSubcategoria,\"value\":subcat.idSubcategoriaProducto}})}),1):_vm._e()],1)])]),_c('div',{staticClass:\"separate\"}),_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-12\"},[_c('div',{staticClass:\"form-group has-label\"},[_c('label',[_vm._v(_vm._s(_vm.$t( \"app.modules.product_family.addEdit.headers.iconography\" )))]),_c('el-upload',{attrs:{\"action\":\"#\",\"accept\":\"image/*\",\"auto-upload\":false,\"list-type\":\"picture-card\",\"multiple\":\"\",\"file-list\":_vm.fileList,\"name\":\"iconography\",\"on-change\":_vm.changeIconography,\"on-remove\":_vm.changeIconography}},[_c('i',{staticClass:\"el-icon-plus\"})])],1)])]),_c('div',{staticClass:\"separate\"}),_vm._l((_vm.product_family.traducciones),function(lang){return _c('div',[_c('item-traduccion',{key:lang.idFamiliaProductoTraduccion,attrs:{\"traduccion\":lang}})],1)}),_c('div',{staticClass:\"separate\"}),_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-12\"},[_c('label',[_vm._v(_vm._s(_vm.$t( \"app.modules.product_family.addEdit.headers.group_properties\" )))])])]),_vm._l((_vm.product_family.propiedades),function(property,index){return _c('div',[_c('item-propiedad',{attrs:{\"groups\":_vm.groups,\"propiedad\":property,\"index\":index},on:{\"removeProperty\":function($event){return _vm.removeProperty($event)}}}),_c('div',{staticClass:\"separate\"})],1)}),_c('div',{staticClass:\"row\",staticStyle:{\"padding\":\"0 14px\",\"cursor\":\"pointer\"},on:{\"click\":_vm.addProperty}},[_c('div',{staticClass:\"col-12 new_prop\"},[_c('i',{staticClass:\"fa fa-plus\"})])])],2),_c('div',{staticClass:\"row\",staticStyle:{\"margin-top\":\"10px\",\"padding-top\":\"20px\",\"border-top\":\"outset\"},attrs:{\"slot\":\"footer\"},slot:\"footer\"},[_c('div',{staticClass:\"col-4\",staticStyle:{\"text-align\":\"left\"}},[_vm._v(\" \"+_vm._s(_vm.$t(\"app.modules.product_family.buttons.publish\"))+\" \"),_c('n-switch',{model:{value:(_vm.product_family.publicado),callback:function ($$v) {_vm.$set(_vm.product_family, \"publicado\", $$v)},expression:\"product_family.publicado\"}})],1),_c('div',{staticClass:\"col-4\",staticStyle:{\"text-align\":\"center\"}},[_c('n-button',{staticStyle:{\"font-size\":\"1.2rem\"},attrs:{\"native-type\":\"submit\",\"type\":\"primary\",\"disabled\":_vm.disabledButton},on:{\"click\":function($event){_vm.disabledButton = true}}},[_vm._v(_vm._s(_vm.$t(\"app.buttons.save\")))])],1),_c('div',{staticClass:\"col-4\",staticStyle:{\"text-align\":\"right\"}},[_c('n-button',{staticClass:\"btn-secondary\",staticStyle:{\"font-size\":\"1.2rem\"},attrs:{\"type\":\"default\"},nativeOn:{\"click\":function($event){return _vm.$router.push({name: 'Familias productos'})}}},[_vm._v(_vm._s(_vm.$t(\"app.buttons.cancel\")))])],1)])])]}}])})],1)])])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\n\r\n\r\n\r\n\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./familiaProductoAddEdit.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./familiaProductoAddEdit.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./familiaProductoAddEdit.vue?vue&type=template&id=3fdf239a&scoped=true&\"\nimport script from \"./familiaProductoAddEdit.vue?vue&type=script&lang=js&\"\nexport * from \"./familiaProductoAddEdit.vue?vue&type=script&lang=js&\"\nimport style0 from \"./familiaProductoAddEdit.vue?vue&type=style&index=0&lang=css&\"\nimport style1 from \"./familiaProductoAddEdit.vue?vue&type=style&index=1&id=3fdf239a&scoped=true&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"3fdf239a\",\n null\n \n)\n\nexport default component.exports","/*\nFullCalendar Vue Component v4.4.0\nDocs: https://fullcalendar.io/docs/vue\nLicense: MIT\n*/\nimport deepEqual from 'fast-deep-equal';\nimport { Calendar } from '@fullcalendar/core';\n\nfunction _typeof(obj) {\n \"@babel/helpers - typeof\";\n\n if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") {\n _typeof = function (obj) {\n return typeof obj;\n };\n } else {\n _typeof = function (obj) {\n return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj;\n };\n }\n\n return _typeof(obj);\n}\n\nvar hasOwnProperty = Object.prototype.hasOwnProperty;\n/*\nReally simple clone utility. Only copies plain arrays, objects, and Dates. Transfers everything else as-is.\nWanted to use a third-party lib, but none did exactly this.\n*/\n\nfunction deepCopy(input) {\n if (Array.isArray(input)) {\n return input.map(deepCopy);\n } else if (input instanceof Date) {\n return new Date(input.valueOf());\n } else if (_typeof(input) === 'object' && input) {\n // non-null object\n return mapHash(input, deepCopy);\n } else {\n // everything else (null, function, etc)\n return input;\n }\n}\nfunction mapHash(input, func) {\n var output = {};\n\n for (var key in input) {\n if (hasOwnProperty.call(input, key)) {\n output[key] = func(input[key], key);\n }\n }\n\n return output;\n}\n\n/*\nthe docs point to this file as an index of options.\nwhen this files is moved, update the docs.\n*/\n\n/*\nTODO: figure out booleans so attributes can be defined like:\n\n*/\nvar PROP_DEFS = {\n header: {},\n footer: {},\n customButtons: {},\n buttonIcons: {},\n themeSystem: {},\n bootstrapFontAwesome: {},\n firstDay: {},\n dir: {},\n weekends: {},\n hiddenDays: {},\n fixedWeekCount: {},\n weekNumbers: {},\n weekNumbersWithinDays: {},\n weekNumberCalculation: {},\n businessHours: {},\n showNonCurrentDates: {},\n height: {},\n contentHeight: {},\n aspectRatio: {},\n handleWindowResize: {},\n windowResizeDelay: {},\n eventLimit: {},\n eventLimitClick: {},\n timeZone: {},\n now: {},\n defaultView: {},\n allDaySlot: {},\n allDayText: {},\n slotDuration: {},\n slotLabelFormat: {},\n slotLabelInterval: {},\n snapDuration: {},\n scrollTime: {},\n minTime: {},\n maxTime: {},\n slotEventOverlap: {},\n listDayFormat: {},\n listDayAltFormat: {},\n noEventsMessage: {},\n defaultDate: {},\n nowIndicator: {},\n visibleRange: {},\n validRange: {},\n dateIncrement: {},\n dateAlignment: {},\n duration: {},\n dayCount: {},\n locales: {},\n locale: {},\n eventTimeFormat: {},\n columnHeader: {},\n columnHeaderFormat: {},\n columnHeaderText: {},\n columnHeaderHtml: {},\n titleFormat: {},\n weekLabel: {},\n displayEventTime: {},\n displayEventEnd: {},\n eventLimitText: {},\n dayPopoverFormat: {},\n navLinks: {},\n navLinkDayClick: {},\n navLinkWeekClick: {},\n selectable: {},\n selectMirror: {},\n unselectAuto: {},\n unselectCancel: {},\n defaultAllDayEventDuration: {},\n defaultTimedEventDuration: {},\n cmdFormatter: {},\n defaultRangeSeparator: {},\n selectConstraint: {},\n selectOverlap: {},\n selectAllow: {},\n editable: {},\n eventStartEditable: {},\n eventDurationEditable: {},\n eventConstraint: {},\n eventOverlap: {},\n eventAllow: {},\n eventClassName: {},\n eventClassNames: {},\n eventBackgroundColor: {},\n eventBorderColor: {},\n eventTextColor: {},\n eventColor: {},\n events: {},\n eventSources: {},\n allDayDefault: {},\n startParam: {},\n endParam: {},\n lazyFetching: {},\n nextDayThreshold: {},\n eventOrder: {},\n rerenderDelay: {},\n dragRevertDuration: {},\n dragScroll: {},\n longPressDelay: {},\n eventLongPressDelay: {},\n droppable: {},\n dropAccept: {},\n eventDataTransform: {},\n allDayMaintainDuration: {},\n eventResizableFromStart: {},\n timeGridEventMinHeight: {},\n allDayHtml: {},\n eventDragMinDistance: {},\n eventResourceEditable: {},\n eventSourceFailure: {},\n eventSourceSuccess: {},\n forceEventDuration: {},\n progressiveEventRendering: {},\n selectLongPressDelay: {},\n selectMinDistance: {},\n timeZoneParam: {},\n titleRangeSeparator: {},\n // compound OptionsInput...\n buttonText: {},\n views: {},\n plugins: {},\n // scheduler...\n schedulerLicenseKey: {},\n resources: {},\n resourceLabelText: {},\n resourceOrder: {},\n filterResourcesWithEvents: {},\n resourceText: {},\n resourceGroupField: {},\n resourceGroupText: {},\n resourceAreaWidth: {},\n resourceColumns: {},\n resourcesInitiallyExpanded: {},\n slotWidth: {},\n datesAboveResources: {},\n googleCalendarApiKey: {},\n refetchResourcesOnNavigate: {},\n // used to be emissions but are now props...\n datesRender: {},\n datesDestroy: {},\n dayRender: {},\n eventRender: {},\n eventDestroy: {},\n viewSkeletonRender: {},\n viewSkeletonDestroy: {},\n resourceRender: {}\n};\nvar PROP_IS_DEEP = {\n header: true,\n footer: true,\n events: true,\n eventSources: true,\n resources: true\n};\nvar EMISSION_NAMES = ['windowResize', 'dateClick', 'eventClick', 'eventMouseEnter', 'eventMouseLeave', 'select', 'unselect', 'loading', 'eventPositioned', '_eventsPositioned', 'eventDragStart', 'eventDragStop', 'eventDrop', 'eventResizeStart', 'eventResizeStop', 'eventResize', 'drop', 'eventReceive', 'eventLeave', '_destroyed', // should now be props... (TODO: eventually remove)\n'datesRender', 'datesDestroy', 'dayRender', 'eventRender', 'eventDestroy', 'viewSkeletonRender', 'viewSkeletonDestroy', 'resourceRender']; // identify deprecated emissions (TODO: eventually remove)\n\nvar EMISSION_USE_PROP = {\n datesRender: true,\n datesDestroy: true,\n dayRender: true,\n eventRender: true,\n eventDestroy: true,\n viewSkeletonRender: true,\n viewSkeletonDestroy: true,\n resourceRender: true\n};\n\n/*\nVOCAB:\n\"props\" are the values passed in from the parent (they are NOT listeners/emissions)\n\"emissions\" are another way to say \"events that will fire\"\n\"options\" are the options that the FullCalendar API accepts\n\nNOTE: \"deep\" props are complex objects that we want to watch for internal changes.\nVue allows a reference to be internally mutated. Each time we detect a mutation,\nwe use deepCopy to freeze the state. This has the added benefit of stripping the\ngetter/setter methods that Vue embeds.\n*/\n\nvar FullCalendarComponent = {\n props: PROP_DEFS,\n // INTERNALS\n // this.$options.calendar\n // this.$options.deepCopies - all current deep options\n // this.$options.dirtyOptions - null/undefined means nothing dirty\n data: function data() {\n return {\n renderId: 0,\n deepCopies: {}\n };\n },\n render: function render(createElement) {\n return createElement('div', {\n // when renderId is changed, Vue will trigger a real-DOM async rerender, calling beforeUpdate/updated\n attrs: {\n 'data-fc-render-id': this.renderId\n }\n });\n },\n mounted: function mounted() {\n warnDeprecatedListeners(this.$listeners);\n this.$options.calendar = new Calendar(this.$el, this.buildCalendarOptions());\n this.$options.calendar.render();\n },\n beforeUpdate: function beforeUpdate() {\n this.renderDirty();\n },\n beforeDestroy: function beforeDestroy() {\n this.$options.calendar.destroy();\n },\n watch: mapHash(PROP_DEFS, buildPropWatcher),\n methods: {\n buildCalendarOptions: function buildCalendarOptions() {\n var _this = this;\n\n var options = {};\n var _iteratorNormalCompletion = true;\n var _didIteratorError = false;\n var _iteratorError = undefined;\n\n try {\n var _loop = function _loop() {\n var emissionName = _step.value;\n\n options[emissionName] = function () {\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n _this.$emit.apply(_this, [emissionName].concat(args));\n };\n };\n\n for (var _iterator = EMISSION_NAMES[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {\n _loop();\n } // do after emissions. these props will override emissions with same name\n\n } catch (err) {\n _didIteratorError = true;\n _iteratorError = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion && _iterator[\"return\"] != null) {\n _iterator[\"return\"]();\n }\n } finally {\n if (_didIteratorError) {\n throw _iteratorError;\n }\n }\n }\n\n for (var propName in PROP_DEFS) {\n var propVal = this[propName]; // protect against FullCalendar choking on undefined options\n\n if (propVal !== undefined) {\n if (PROP_IS_DEEP[propName]) {\n propVal = deepCopy(propVal); // freeze state\n\n this.deepCopies[propName] = propVal; // side effect!\n }\n\n options[propName] = propVal;\n }\n }\n\n return options;\n },\n recordDirtyOption: function recordDirtyOption(optionName, newVal) {\n (this.$options.dirtyOptions || (this.$options.dirtyOptions = {}))[optionName] = newVal;\n this.renderId++; // triggers a render eventually\n },\n renderDirty: function renderDirty() {\n var dirtyOptions = this.$options.dirtyOptions;\n\n if (dirtyOptions) {\n this.$options.dirtyOptions = null; // clear before rendering. might trigger new dirtiness\n\n this.$options.calendar.mutateOptions(dirtyOptions, [], false, deepEqual);\n }\n },\n getApi: function getApi() {\n return this.$options.calendar;\n }\n }\n};\n\nfunction buildPropWatcher(propDef, propName) {\n if (PROP_IS_DEEP[propName]) {\n return {\n deep: true,\n // listen to children as well\n handler: function handler(newVal) {\n // use this instead of the handler's param because if same reference, will always be equal\n var oldVal = this.deepCopies[propName];\n\n if (!deepEqual(newVal, oldVal)) {\n newVal = deepCopy(newVal); // freeze state\n\n this.deepCopies[propName] = newVal; // always keep this up to date\n\n this.recordDirtyOption(propName, newVal);\n }\n }\n };\n } else {\n return function (newVal) {\n this.recordDirtyOption(propName, newVal);\n };\n }\n}\n\nfunction warnDeprecatedListeners(listenerHash) {\n for (var emissionName in listenerHash) {\n if (EMISSION_USE_PROP[emissionName]) {\n console.warn('Use of ' + emissionName + ' as an event is deprecated. Please convert to a prop.');\n }\n }\n}\n\n/*\nRegisters the component globally if appropriate.\nThis modules exposes the component AND an install function.\n\nDerived from:\nhttps://vuejs.org/v2/cookbook/packaging-sfc-for-npm.html\n*/\n\nvar installed = false; // declare install function executed by Vue.use()\n\nfunction install(Vue) {\n if (!installed) {\n installed = true;\n Vue.component('FullCalendar', FullCalendarComponent);\n }\n} // detect a globally availble version of Vue (eg. in browser via \r\n\r\n\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./reclamacionesAddEdit.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./reclamacionesAddEdit.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./reclamacionesAddEdit.vue?vue&type=template&id=33f9e46d&scoped=true&\"\nimport script from \"./reclamacionesAddEdit.vue?vue&type=script&lang=js&\"\nexport * from \"./reclamacionesAddEdit.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"33f9e46d\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('modal',{attrs:{\"show\":_vm.modalOpen,\"showClose\":false}},[_c('h4',{staticClass:\"title title-up\",attrs:{\"slot\":\"header\"},slot:\"header\"},[_vm._v(\" \"+_vm._s(_vm.title)+\" \")]),_c('ValidationObserver',{ref:\"formAdd\",scopedSlots:_vm._u([{key:\"default\",fn:function(ref){\nvar handleSubmit = ref.handleSubmit;\nreturn [_c('form',{on:{\"submit\":function($event){$event.preventDefault();return handleSubmit(_vm.submit)}}},[_c('div',{staticClass:\"row\"},[_c('label',{staticStyle:{\"margin-left\":\"15px\"}},[_vm._v(_vm._s(_vm.$t('app.modules.sac_mapping_settings.headers.categories')))]),_c('div',{staticClass:\"col-12 form-group has-label\"},[_c('el-select',{attrs:{\"disabled\":!!_vm.item.idusuariosServicioCliente,\"placeholder\":_vm.$t('app.modules.sac_mapping_settings.headers.categories'),\"size\":\"large\"},model:{value:(_vm.item.CategoriaProducto_idCategoriaProducto),callback:function ($$v) {_vm.$set(_vm.item, \"CategoriaProducto_idCategoriaProducto\", $$v)},expression:\"item.CategoriaProducto_idCategoriaProducto\"}},_vm._l((_vm.categorias),function(category){return _c('el-option',{key:category.idCategoriaProducto,attrs:{\"label\":category.nombreCategoria,\"value\":category.idCategoriaProducto}})}),1)],1)]),_c('div',{staticClass:\"row\"},[_c('label',{staticStyle:{\"margin-left\":\"15px\"}},[_vm._v(_vm._s(_vm.$t('app.modules.sac_mapping_settings.headers.type_pack')))]),_c('div',{staticClass:\"col-12 form-group has-label\"},[_c('el-select',{attrs:{\"disabled\":!!_vm.item.idusuariosServicioCliente,\"placeholder\":_vm.$t('app.modules.sac_mapping_settings.headers.type_pack'),\"size\":\"large\"},model:{value:(_vm.item.tipoEmpaquetado),callback:function ($$v) {_vm.$set(_vm.item, \"tipoEmpaquetado\", $$v)},expression:\"item.tipoEmpaquetado\"}},_vm._l((_vm.tipoEmpaquetado),function(tipo,key){return _c('el-option',{key:key,attrs:{\"label\":_vm.$t('app.enums.tipos_empaquedato_vals.'+tipo),\"value\":parseInt(key)}})}),1)],1)]),_c('div',{staticClass:\"row\"},[_c('label',{staticStyle:{\"margin-left\":\"15px\"}},[_vm._v(_vm._s(_vm.$t('app.modules.sac_mapping_settings.headers.sales_area')))]),_c('div',{staticClass:\"col-12 form-group has-label\"},[_c('el-select',{attrs:{\"disabled\":!!_vm.item.idusuariosServicioCliente,\"placeholder\":_vm.$t('app.modules.sac_mapping_settings.headers.sales_area'),\"size\":\"large\"},model:{value:(_vm.item.ZonaComercial_idZonaComercial),callback:function ($$v) {_vm.$set(_vm.item, \"ZonaComercial_idZonaComercial\", $$v)},expression:\"item.ZonaComercial_idZonaComercial\"}},_vm._l((_vm.zonasComerciales),function(zone){return _c('el-option',{key:zone.idZonaComercial,attrs:{\"label\":zone.nombreZonaComercial,\"value\":zone.idZonaComercial}})}),1)],1)]),_c('div',{staticClass:\"row\"},[_c('label',{staticStyle:{\"margin-left\":\"15px\"}},[_vm._v(_vm._s(_vm.$t('app.modules.sac_mapping_settings.headers.user')))]),_c('div',{staticClass:\"col-12 form-group has-label\"},[_c('el-select',{attrs:{\"placeholder\":_vm.$t('app.modules.sac_mapping_settings.headers.user'),\"size\":\"large\"},model:{value:(_vm.item.Usuarios_idUsuario),callback:function ($$v) {_vm.$set(_vm.item, \"Usuarios_idUsuario\", $$v)},expression:\"item.Usuarios_idUsuario\"}},_vm._l((_vm.usuarios),function(user){return _c('el-option',{key:user.idUsuario,attrs:{\"label\":user.nombre,\"value\":user.idUsuario}})}),1)],1)]),_c('div',{staticClass:\"text-right\",staticStyle:{\"margin-top\":\"10px\",\"padding-top\":\"20px\",\"border-top\":\"outset\"},attrs:{\"slot\":\"footer\"},slot:\"footer\"},[_c('n-button',{staticClass:\"pull-left btn-secondary\",nativeOn:{\"click\":function($event){return _vm.close()}}},[_vm._v(_vm._s(_vm.$t(\"app.buttons.cancel\")))]),_c('n-button',{attrs:{\"native-type\":\"submit\",\"type\":\"primary\",\"disabled\":_vm.inProgress}},[_vm._v(_vm._s(_vm.$t(\"app.buttons.save\")))])],1)])]}}])})],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\n\r\n\r\n\r\n\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./configuracionAsignacionesSACAddEdit.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./configuracionAsignacionesSACAddEdit.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./configuracionAsignacionesSACAddEdit.vue?vue&type=template&id=3570561c&scoped=true&\"\nimport script from \"./configuracionAsignacionesSACAddEdit.vue?vue&type=script&lang=js&\"\nexport * from \"./configuracionAsignacionesSACAddEdit.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"3570561c\",\n null\n \n)\n\nexport default component.exports","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./notificaciones.vue?vue&type=style&index=0&lang=css&\"","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-12\"},[_c('div',{staticClass:\"new-button-div\"},[_c('n-button',{attrs:{\"type\":\"primary\",\"round\":\"\"},nativeOn:{\"click\":function($event){return _vm.addNewMotDev()}}},[_c('i',{staticClass:\"now-ui-icons ui-1_simple-add\",attrs:{\"slot\":\"label\"},slot:\"label\"}),_vm._v(\" \"+_vm._s(_vm.$t(\"app.modules.return_catalog.buttons.add\"))+\" \")])],1),_c('card',{attrs:{\"card-body-classes\":\"table-full-width\",\"no-footer-line\":\"\"}},[_c('div',{staticClass:\"col-md-12\"},[_c('div',{staticClass:\"col-12 d-flex justify-content-center justify-content-sm-between flex-wrap\"},[_c('h4',{staticClass:\"card-title text-purple\"},[_vm._v(\" \"+_vm._s(_vm.$t(\"app.modules.return_catalog.title\"))+\" \")]),_c('fg-input',[_c('el-input',{staticClass:\"mb-3\",staticStyle:{\"width\":\"300px\"},attrs:{\"type\":\"search\",\"clearable\":\"\",\"prefix-icon\":\"el-icon-search \",\"placeholder\":_vm.$t('app.general.search'),\"aria-controls\":\"datatables\"},model:{value:(_vm.searchQuery),callback:function ($$v) {_vm.searchQuery=$$v},expression:\"searchQuery\"}})],1)],1),_c('el-table',{staticStyle:{\"width\":\"100%\"},attrs:{\"stripe\":\"\",\"data\":_vm.queriedData}},[_c('el-table-column',{attrs:{\"prop\":\"nombre\",\"label\":this.$t('app.modules.return_catalog.headers.name'),\"sortable\":\"\",\"min-width\":\"300\"}}),_c('el-table-column',{attrs:{\"label\":_vm.$t('app.general.active'),\"min-width\":\"200\"},scopedSlots:_vm._u([{key:\"default\",fn:function(scope){return [_vm._v(\" \"+_vm._s(scope.row.estatus ? _vm.$t(\"app.general.active\") : _vm.$t(\"app.general.inactive\"))+\" \")]}}])}),_c('el-table-column',{attrs:{\"label\":_vm.$t('app.general.active'),\"min-width\":200},scopedSlots:_vm._u([{key:\"default\",fn:function(props){return [_c('n-switch',{attrs:{\"color\":\"black\"},on:{\"input\":function($event){return _vm.activeIncident(props.row)}},model:{value:(props.row.estatus),callback:function ($$v) {_vm.$set(props.row, \"estatus\", $$v)},expression:\"props.row.estatus\"}},[_c('i',{staticClass:\"now-ui-icons ui-1_check\",attrs:{\"slot\":\"on\"},slot:\"on\"}),_c('i',{staticClass:\"now-ui-icons ui-1_simple-remove\",attrs:{\"slot\":\"off\"},slot:\"off\"})])]}}])}),_c('el-table-column',{attrs:{\"min-width\":200,\"label\":_vm.$t('app.general.actions')},scopedSlots:_vm._u([{key:\"default\",fn:function(props){return _c('div',{staticClass:\"table-actions dropdown\"},[_c('el-popover',{ref:'refOption' + props.$index,attrs:{\"placement\":\"bottom\",\"width\":\"250\",\"trigger\":\"click\"}},[_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-12 options\"},[_c('n-button',{staticClass:\"options-button\",attrs:{\"type\":\"primary\",\"size\":\"sm\",\"round\":\"\"},nativeOn:{\"click\":function($event){return _vm.editarTipo(\n props.$index,\n props.row,\n 'refOption' + props.$index\n )}}},[_vm._v(\" \"+_vm._s(_vm.$t(\"app.modules.return_catalog.buttons.edit\"))+\" \")])],1)]),_c('n-button',{staticClass:\"button-options-table\",attrs:{\"slot\":\"reference\",\"size\":\"sm\",\"icon\":\"\"},slot:\"reference\"},[_c('i',{staticClass:\"fa fa-ellipsis-v\",staticStyle:{\"color\":\"black\"}})])],1)],1)}}])})],1)],1),_c('div',{staticClass:\"col-12 d-flex justify-content-center justify-content-sm-between flex-wrap\",attrs:{\"slot\":\"footer\"},slot:\"footer\"},[_c('div',{},[_c('p',{staticClass:\"card-category\"},[_vm._v(\" \"+_vm._s(_vm.$t(\"app.pagination.showing\"))+\" \"+_vm._s(_vm.from + 1)+\" \"+_vm._s(_vm.$t(\"app.pagination.of\"))+\" \"+_vm._s(_vm.to)+\" \"+_vm._s(_vm.$t(\"app.pagination.of\"))+\" \"+_vm._s(_vm.total)+\" \"+_vm._s(_vm.$t(\"app.pagination.records\"))+\" \")])]),_c('n-pagination',{staticClass:\"pagination-no-border\",attrs:{\"per-page\":_vm.pagination.perPage,\"total\":_vm.total},model:{value:(_vm.pagination.currentPage),callback:function ($$v) {_vm.$set(_vm.pagination, \"currentPage\", $$v)},expression:\"pagination.currentPage\"}})],1)]),_c('motivos-devolucion-add'),_c('motivos-devolucion-edit')],1)])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\n\r\n\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./motivosDevolucion.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./motivosDevolucion.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./motivosDevolucion.vue?vue&type=template&id=16adee49&\"\nimport script from \"./motivosDevolucion.vue?vue&type=script&lang=js&\"\nexport * from \"./motivosDevolucion.vue?vue&type=script&lang=js&\"\nimport style0 from \"./motivosDevolucion.vue?vue&type=style&index=0&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('modal',{attrs:{\"show\":_vm.modals.classic},on:{\"update:show\":function($event){return _vm.$set(_vm.modals, \"classic\", $event)}}},[_c('h4',{staticClass:\"title title-up\",attrs:{\"slot\":\"header\"},slot:\"header\"},[_vm._v(\"Agregar Notificacion\")]),_c('ValidationObserver',{ref:\"formAdd\",scopedSlots:_vm._u([{key:\"default\",fn:function(ref){\nvar handleSubmit = ref.handleSubmit;\nreturn [_c('form',{on:{\"submit\":function($event){$event.preventDefault();return handleSubmit(_vm.submitNewNotificacion)}}},[_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-sm-12\"},[_c('ValidationProvider',{attrs:{\"name\":\"minLength\",\"rules\":\"required|min:2\"},scopedSlots:_vm._u([{key:\"default\",fn:function(ref){\nvar passed = ref.passed;\nvar failed = ref.failed;\nreturn [_c('fg-input',{attrs:{\"type\":\"text\",\"error\":failed ? 'La longitud mínima para el nombre es de 2 ' : null,\"hasSuccess\":passed,\"name\":\"minLength\",\"label\":\"Tipo de Notificación\"},model:{value:(_vm.item.tipoNotificacion),callback:function ($$v) {_vm.$set(_vm.item, \"tipoNotificacion\", $$v)},expression:\"item.tipoNotificacion\"}})]}}],null,true)})],1)]),_c('div',{staticClass:\"row\"}),_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-sm-6 form-group has-label\"},[_c('div',{staticClass:\"row\"},[_c('label',{staticStyle:{\"margin-left\":\"15px\"}},[_vm._v(\"Estatus\")])]),[_c('n-switch',{model:{value:(_vm.item.activo),callback:function ($$v) {_vm.$set(_vm.item, \"activo\", $$v)},expression:\"item.activo\"}},[_c('i',{staticClass:\"now-ui-icons ui-1_check\",attrs:{\"slot\":\"on\"},slot:\"on\"}),_c('i',{staticClass:\"now-ui-icons ui-1_simple-remove\",attrs:{\"slot\":\"off\"},slot:\"off\"})])]],2)]),_c('div',{staticClass:\"text-right\",staticStyle:{\"margin-top\":\"10px\",\"padding-top\":\"20px\",\"border-top\":\"outset\"},attrs:{\"slot\":\"footer\"},slot:\"footer\"},[_c('n-button',{staticClass:\"pull-left btn-secondary\",nativeOn:{\"click\":function($event){return _vm.cancelAdd()}}},[_vm._v(\"Cancelar\")]),_c('n-button',{attrs:{\"native-type\":\"submit\",\"type\":\"primary\"}},[_vm._v(\"Guardar\")])],1)])]}}])})],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\n\r\n\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./notificacionesAdd.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./notificacionesAdd.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./notificacionesAdd.vue?vue&type=template&id=77d89e68&\"\nimport script from \"./notificacionesAdd.vue?vue&type=script&lang=js&\"\nexport * from \"./notificacionesAdd.vue?vue&type=script&lang=js&\"\nimport style0 from \"./notificacionesAdd.vue?vue&type=style&index=0&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('modal',{attrs:{\"show\":_vm.modals.classic},on:{\"update:show\":function($event){return _vm.$set(_vm.modals, \"classic\", $event)}}},[_c('h4',{staticClass:\"title title-up\",attrs:{\"slot\":\"header\"},slot:\"header\"},[_vm._v(\" \"+_vm._s(_vm.$t(\"app.modules.messages.add.title\"))+\" \")]),_c('ValidationObserver',{ref:\"formAdd\",scopedSlots:_vm._u([{key:\"default\",fn:function(ref){\nvar handleSubmit = ref.handleSubmit;\nreturn [_c('form',{attrs:{\"id\":\"formAdd\",\"name\":\"formAdd\"},on:{\"submit\":function($event){$event.preventDefault();return handleSubmit(_vm.submitNewMessage)}}},[_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-sm-12\"},[_c('ValidationProvider',{attrs:{\"name\":\"minLength\",\"rules\":\"required|min:2\"},scopedSlots:_vm._u([{key:\"default\",fn:function(ref){\nvar passed = ref.passed;\nvar failed = ref.failed;\nreturn [_c('fg-input',{attrs:{\"type\":\"text\",\"error\":failed ? _vm.$t('app.validation.min_length') + '2' : null,\"hasSuccess\":passed,\"name\":\"minLength\",\"label\":_vm.$t('app.modules.messages.headers.name')},model:{value:(_vm.item.nombreComunicacion),callback:function ($$v) {_vm.$set(_vm.item, \"nombreComunicacion\", $$v)},expression:\"item.nombreComunicacion\"}})]}}],null,true)})],1)]),_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-sm-12\"},[_c('ValidationProvider',{attrs:{\"name\":\"required\",\"rules\":\"required\"},scopedSlots:_vm._u([{key:\"default\",fn:function(ref){\nvar passed = ref.passed;\nvar failed = ref.failed;\nreturn [_c('fg-input',{attrs:{\"error\":failed ? _vm.$t('app.validation.required') : null,\"hasSuccess\":passed,\"name\":\"required\",\"label\":_vm.$t('app.modules.messages.headers.ini_date')}},[_c('el-date-picker',{attrs:{\"type\":\"date\",\"placeholder\":\"Date Picker\"},model:{value:(_vm.item.fechaInicio),callback:function ($$v) {_vm.$set(_vm.item, \"fechaInicio\", $$v)},expression:\"item.fechaInicio\"}})],1)]}}],null,true)})],1)]),_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-sm-12\"},[_c('ValidationProvider',{attrs:{\"name\":\"required\",\"rules\":\"required\"},scopedSlots:_vm._u([{key:\"default\",fn:function(ref){\nvar passed = ref.passed;\nvar failed = ref.failed;\nreturn [_c('fg-input',{attrs:{\"error\":failed ? _vm.$t('app.validation.required') : null,\"hasSuccess\":passed,\"name\":\"required\",\"label\":_vm.$t('app.modules.messages.headers.end_date')}},[_c('el-date-picker',{attrs:{\"type\":\"date\",\"placeholder\":\"Date Picker\"},model:{value:(_vm.item.fechaFin),callback:function ($$v) {_vm.$set(_vm.item, \"fechaFin\", $$v)},expression:\"item.fechaFin\"}})],1)]}}],null,true)})],1)]),_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-sm-4\"},[_vm._v(\" \"+_vm._s(_vm.$t(\"app.modules.messages.headers.public\"))+\" \"),_c('br'),_c('n-switch',{model:{value:(_vm.item.tipoUsuarioVisualizar),callback:function ($$v) {_vm.$set(_vm.item, \"tipoUsuarioVisualizar\", $$v)},expression:\"item.tipoUsuarioVisualizar\"}})],1),_c('div',{staticClass:\"col-sm-4\"},[_vm._v(\" \"+_vm._s(_vm.$t(\"app.general.active\"))+\" \"),_c('br'),_c('n-switch',{model:{value:(_vm.item.activo),callback:function ($$v) {_vm.$set(_vm.item, \"activo\", $$v)},expression:\"item.activo\"}})],1),_c('div',{staticClass:\"col-sm-4\"},[_c('label',[_vm._v(_vm._s(_vm.$t(\"app.modules.messages.headers.type\")))]),_c('ValidationProvider',{attrs:{\"name\":\"requiredFase\",\"rules\":\"min_value:1\"},scopedSlots:_vm._u([{key:\"default\",fn:function(ref){\nvar failed = ref.failed;\nreturn [_c('el-select',{staticClass:\"select-danger\",attrs:{\"filterable\":\"\",\"placeholder\":_vm.$t('app.modules.orders.headers.type')},model:{value:(_vm.typeSelected),callback:function ($$v) {_vm.typeSelected=$$v},expression:\"typeSelected\"}},[_c('el-option',{attrs:{\"label\":_vm.$t('app.general.all'),\"value\":\"0\"}}),_c('el-option',{attrs:{\"label\":_vm.$t('app.modules.messages.types.promo'),\"value\":\"1\"}}),_c('el-option',{attrs:{\"label\":_vm.$t('app.modules.messages.types.advice'),\"value\":\"2\"}}),_c('el-option',{attrs:{\"label\":_vm.$t('app.modules.messages.types.bulletin'),\"value\":\"3\"}})],1),(failed)?_c('div',{staticClass:\"text-danger invalid-feedback\",staticStyle:{\"display\":\"block\"}},[_vm._v(\" \"+_vm._s(_vm.required_text)+\" \")]):_vm._e()]}}],null,true)})],1)]),_c('div',{attrs:{\"clas\":\"row\"}},[_c('b',[_vm._v(_vm._s(_vm.$t(\"app.translations\")))]),_vm._l((_vm.item.langs),function(lang,index){return _c('div',{key:lang.idioma_idIdioma,staticClass:\"col-sm-12\"},[_c('b',[_vm._v(_vm._s(lang.idioma))]),_c('ValidationProvider',{attrs:{\"name\":'minLength-' + lang,\"rules\":\"required|min:2\"},scopedSlots:_vm._u([{key:\"default\",fn:function(ref){\nvar passed = ref.passed;\nvar failed = ref.failed;\nreturn [_c('fg-input',{attrs:{\"type\":\"text\",\"error\":failed ? _vm.$t('app.validation.min_length') + '2' : null,\"hasSuccess\":passed,\"name\":\"minLength\",\"label\":_vm.$t('app.modules.messages.add.link')},model:{value:(_vm.item.langs[index].enlaceComunicacion),callback:function ($$v) {_vm.$set(_vm.item.langs[index], \"enlaceComunicacion\", $$v)},expression:\"item.langs[index].enlaceComunicacion\"}})]}}],null,true)}),_c('el-upload',{ref:\"upload\",refInFor:true,staticClass:\"upload-demo\",attrs:{\"action\":\"#\",\"on-change\":_vm.handleFile,\"name\":lang.idioma,\"auto-upload\":false,\"accept\":\"image/png, image/jpeg\"}},[_c('n-button',{attrs:{\"slot\":\"trigger\",\"size\":\"small\",\"type\":\"primary\",\"id\":lang.idioma_idIdioma},nativeOn:{\"click\":function($event){return _vm.onClick($event)}},slot:\"trigger\"},[_vm._v(_vm._s(_vm.$t(\"app.upload.select_file\")))]),_c('div',{staticClass:\"el-upload__tip\",attrs:{\"slot\":\"tip\"},slot:\"tip\"},[_vm._v(\" \"+_vm._s(_vm.$t(\"app.upload.image_size_limit\"))+\" \")])],1)],1)})],2),_c('div',{staticClass:\"text-right\",staticStyle:{\"margin-top\":\"10px\",\"padding-top\":\"20px\",\"border-top\":\"outset\"},attrs:{\"slot\":\"footer\"},slot:\"footer\"},[_c('n-button',{staticClass:\"pull-left btn-secondary\",nativeOn:{\"click\":function($event){return _vm.cancelAdd()}}},[_vm._v(_vm._s(_vm.$t(\"app.buttons.cancel\")))]),_c('n-button',{attrs:{\"native-type\":\"submit\",\"type\":\"primary\"}},[_vm._v(_vm._s(_vm.$t(\"app.buttons.save\")))])],1)])]}}])})],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\n\r\n\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./comunicadosAdd.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./comunicadosAdd.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./comunicadosAdd.vue?vue&type=template&id=1779fdbc&\"\nimport script from \"./comunicadosAdd.vue?vue&type=script&lang=js&\"\nexport * from \"./comunicadosAdd.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","class Idioma\r\n{\r\n idIdioma = 0;\r\n idioma = 0;\r\n clave = \"\";\r\n usuario = \"\";\r\n\r\n constructor(obj = {}) {\r\n Object.assign(this, obj);\r\n }\r\n}\r\n\r\nmodule.exports = Idioma;\r\n","class PropiedadFamiliaProductoTraduccion\r\n{\r\n idFamiliaProductoTraduccion = 0;\r\n nombrePropiedad=null;\r\n idiomas_idIdioma = 0;\r\n familiaProducto_idFamiliaProducto = 0;\r\n idioma = null;\r\n\r\n constructor(obj = {}) {\r\n Object.assign(this, obj);\r\n }\r\n}\r\n\r\nmodule.exports = PropiedadFamiliaProductoTraduccion;\r\n\r\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('modal',{attrs:{\"show\":_vm.comDetails},on:{\"update:show\":function($event){_vm.comDetails=$event}}},[_c('h4',{staticClass:\"title title-up\",attrs:{\"slot\":\"header\"},slot:\"header\"},[_vm._v(\" \"+_vm._s(_vm.$t(\"app.modules.messages.details.title\"))+\" \")]),_c('ValidationObserver',{ref:\"formEditCom\",scopedSlots:_vm._u([{key:\"default\",fn:function(ref){\nvar handleSubmit = ref.handleSubmit;\nreturn [_c('form',{attrs:{\"id\":\"formEditCom\",\"name\":\"formEditCom\"},on:{\"submit\":function($event){$event.preventDefault();return handleSubmit(_vm.submitEditMessage)}}},[_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-sm-12\"},[_c('ValidationProvider',{attrs:{\"name\":\"minLength\",\"rules\":\"required|min:2\"},scopedSlots:_vm._u([{key:\"default\",fn:function(ref){\nvar passed = ref.passed;\nvar failed = ref.failed;\nreturn [_c('fg-input',{attrs:{\"type\":\"text\",\"disabled\":\"\",\"error\":failed ? _vm.$t('app.validation.min_length') + '2' : null,\"hasSuccess\":passed,\"name\":\"minLength\",\"label\":_vm.$t('app.modules.messages.headers.name')},model:{value:(_vm.item.nombreComunicacion),callback:function ($$v) {_vm.$set(_vm.item, \"nombreComunicacion\", $$v)},expression:\"item.nombreComunicacion\"}})]}}],null,true)})],1)]),_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-sm-12\"},[_c('ValidationProvider',{attrs:{\"name\":\"required\",\"rules\":\"required\"},scopedSlots:_vm._u([{key:\"default\",fn:function(ref){\nvar passed = ref.passed;\nvar failed = ref.failed;\nreturn [_c('fg-input',{attrs:{\"error\":failed ? _vm.$t('app.validation.required') : null,\"hasSuccess\":passed,\"name\":\"required\",\"label\":_vm.$t('app.modules.messages.headers.registration_date')}},[_c('el-date-picker',{attrs:{\"disabled\":\"\",\"type\":\"date\",\"placeholder\":\"Date Picker\"},model:{value:(_vm.item.fechaRegistro),callback:function ($$v) {_vm.$set(_vm.item, \"fechaRegistro\", $$v)},expression:\"item.fechaRegistro\"}})],1)]}}],null,true)})],1)]),_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-sm-12\"},[_c('ValidationProvider',{attrs:{\"name\":\"required\",\"rules\":\"required\"},scopedSlots:_vm._u([{key:\"default\",fn:function(ref){\nvar passed = ref.passed;\nvar failed = ref.failed;\nreturn [_c('fg-input',{attrs:{\"error\":failed ? _vm.$t('app.validation.required') : null,\"hasSuccess\":passed,\"name\":\"required\",\"label\":_vm.$t('app.modules.messages.headers.ini_date')}},[_c('el-date-picker',{attrs:{\"disabled\":\"\",\"type\":\"date\",\"placeholder\":\"Date Picker\"},model:{value:(_vm.item.fechaInicio),callback:function ($$v) {_vm.$set(_vm.item, \"fechaInicio\", $$v)},expression:\"item.fechaInicio\"}})],1)]}}],null,true)})],1)]),_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-sm-12\"},[_c('ValidationProvider',{attrs:{\"name\":\"required\",\"rules\":\"required\"},scopedSlots:_vm._u([{key:\"default\",fn:function(ref){\nvar passed = ref.passed;\nvar failed = ref.failed;\nreturn [_c('fg-input',{attrs:{\"error\":failed ? _vm.$t('app.validation.required') : null,\"hasSuccess\":passed,\"name\":\"required\",\"label\":_vm.$t('app.modules.messages.headers.end_date')}},[_c('el-date-picker',{attrs:{\"type\":\"date\",\"disabled\":\"\",\"placeholder\":\"Date Picker\"},model:{value:(_vm.item.fechaFin),callback:function ($$v) {_vm.$set(_vm.item, \"fechaFin\", $$v)},expression:\"item.fechaFin\"}})],1)]}}],null,true)})],1)]),_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-sm-4\"},[_vm._v(\" \"+_vm._s(_vm.$t(\"app.modules.messages.headers.public\"))+\" \"),_c('br'),_c('n-switch',{attrs:{\"disabled\":\"\"},model:{value:(_vm.item.tipoUsuarioVisualizar),callback:function ($$v) {_vm.$set(_vm.item, \"tipoUsuarioVisualizar\", $$v)},expression:\"item.tipoUsuarioVisualizar\"}})],1),_c('div',{staticClass:\"col-sm-4\"},[_vm._v(\" \"+_vm._s(_vm.$t(\"app.general.active\"))+\" \"),_c('br'),_c('n-switch',{attrs:{\"disabled\":\"\"},model:{value:(_vm.item.activo),callback:function ($$v) {_vm.$set(_vm.item, \"activo\", $$v)},expression:\"item.activo\"}})],1),_c('div',{staticClass:\"col-sm-4 form-group has-label\"},[_c('label',[_vm._v(_vm._s(_vm.$t(\"app.modules.order_entry_schedule.headers.order_category\")))]),[_c('el-select',{staticClass:\"select-danger\",attrs:{\"disabled\":\"\",\"placeholder\":\"Single Select\"},model:{value:(_vm.item.tipoComunicado_idTipoComunicado),callback:function ($$v) {_vm.$set(_vm.item, \"tipoComunicado_idTipoComunicado\", $$v)},expression:\"item.tipoComunicado_idTipoComunicado\"}},_vm._l((_vm.types),function(option){return _c('el-option',{key:option.id,staticClass:\"select-danger\",attrs:{\"value\":option.id,\"label\":option.text}})}),1)]],2)]),_c('div',{attrs:{\"clas\":\"row\"}},[_c('b',[_vm._v(_vm._s(_vm.$t(\"app.translations\")))]),_vm._l((_vm.item.langs),function(lang){return _c('div',{key:lang.idioma_idIdioma,staticClass:\"col-sm-12\"},[_c('b',[_vm._v(_vm._s(lang.idioma))]),_c('ValidationProvider',{attrs:{\"name\":\"minLength\",\"rules\":\"required|min:2\"},scopedSlots:_vm._u([{key:\"default\",fn:function(ref){\nvar passed = ref.passed;\nvar failed = ref.failed;\nreturn [_c('fg-input',{attrs:{\"type\":\"text\",\"disabled\":\"\",\"error\":failed ? _vm.$t('app.validation.min_length') + '2' : null,\"hasSuccess\":passed,\"name\":\"minLength\",\"label\":_vm.$t('app.modules.messages.add.text')},model:{value:(lang.textoComunicacion),callback:function ($$v) {_vm.$set(lang, \"textoComunicacion\", $$v)},expression:\"lang.textoComunicacion\"}})]}}],null,true)}),_c('ValidationProvider',{attrs:{\"name\":\"minLength\",\"rules\":\"required|min:2\"},scopedSlots:_vm._u([{key:\"default\",fn:function(ref){\nvar passed = ref.passed;\nvar failed = ref.failed;\nreturn [_c('fg-input',{attrs:{\"type\":\"text\",\"disabled\":\"\",\"error\":failed ? _vm.$t('app.validation.min_length') + '2' : null,\"hasSuccess\":passed,\"name\":\"minLength\",\"label\":_vm.$t('app.modules.messages.add.link')},model:{value:(lang.enlaceComunicacion),callback:function ($$v) {_vm.$set(lang, \"enlaceComunicacion\", $$v)},expression:\"lang.enlaceComunicacion\"}})]}}],null,true)}),[_c('card',{staticStyle:{\"width\":\"20rem\"}},[_c('el-image',{staticStyle:{\"width\":\"100px\",\"height\":\"100px\"},attrs:{\"src\":_vm.server + lang.imagenComunicacion,\"preview-src-list\":[_vm.server + lang.imagenComunicacion]}}),_c('p',{staticClass:\"card-text\"},[_vm._v(\" \"+_vm._s(_vm.$t(\"app.modules.messages.headers.current_image\"))+\" \")])],1)]],2)})],2),_c('div',{staticClass:\"text-right\",staticStyle:{\"margin-top\":\"10px\",\"padding-top\":\"20px\",\"border-top\":\"outset\"},attrs:{\"slot\":\"footer\"},slot:\"footer\"},[_c('n-button',{staticClass:\"pull-left btn-secondary\",nativeOn:{\"click\":function($event){return _vm.cancelAdd()}}},[_vm._v(_vm._s(_vm.$t(\"app.buttons.cancel\")))])],1)])]}}])})],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\n\r\n\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./preguntasDetails.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./preguntasDetails.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./preguntasDetails.vue?vue&type=template&id=32a9244a&\"\nimport script from \"./preguntasDetails.vue?vue&type=script&lang=js&\"\nexport * from \"./preguntasDetails.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports"],"sourceRoot":""}