sigesp 0.10.0-20240129 → 1.0.1-20240419
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/esm2020/lib/app/app.component.mjs +14 -0
- package/esm2020/lib/app/app.module.mjs +34 -0
- package/esm2020/lib/core/interfaces/Auditoria.mjs +49 -0
- package/esm2020/lib/core/interfaces/Banco.mjs +2 -0
- package/esm2020/lib/core/interfaces/Catalogo.mjs +2 -0
- package/esm2020/lib/core/interfaces/CentroCosto.mjs +2 -0
- package/esm2020/lib/core/interfaces/Clasificacion.mjs +2 -0
- package/esm2020/lib/core/interfaces/Cliente.mjs +2 -0
- package/esm2020/lib/core/interfaces/ComprobantePresupuestario.mjs +2 -0
- package/esm2020/lib/core/interfaces/Comunidad.mjs +2 -0
- package/esm2020/lib/core/interfaces/Configuracion.mjs +2 -0
- package/esm2020/lib/core/interfaces/ConfiguracionRPC.mjs +2 -0
- package/esm2020/lib/core/interfaces/ConfiguracionSCG.mjs +2 -0
- package/esm2020/lib/core/interfaces/ConfigurationSPG.mjs +2 -0
- package/esm2020/lib/core/interfaces/Constantes.mjs +360 -0
- package/esm2020/lib/core/interfaces/CuentaEgresos.mjs +2 -0
- package/esm2020/lib/core/interfaces/CuentaIngreso.mjs +2 -0
- package/esm2020/lib/core/interfaces/CuentaIngresoEstructura.mjs +2 -0
- package/esm2020/lib/core/interfaces/CuentaInstitucional.mjs +2 -0
- package/esm2020/lib/core/interfaces/CuentaPresupuesto.mjs +2 -0
- package/esm2020/lib/core/interfaces/CuentasPorPagar.mjs +2 -0
- package/esm2020/lib/core/interfaces/Documento.mjs +2 -0
- package/esm2020/lib/core/interfaces/EntradaSuministro.mjs +2 -0
- package/esm2020/lib/core/interfaces/Especialidad.mjs +2 -0
- package/esm2020/lib/core/interfaces/EstructuraPresupuestaria.mjs +2 -0
- package/esm2020/lib/core/interfaces/FuenteFinanciamiento.mjs +2 -0
- package/esm2020/lib/core/interfaces/IBancoCuentasPorPagar.mjs +2 -0
- package/esm2020/lib/core/interfaces/ITipoDepositos.mjs +2 -0
- package/esm2020/lib/core/interfaces/Integracion.mjs +2 -0
- package/esm2020/lib/core/interfaces/Lugares.mjs +2 -0
- package/esm2020/lib/core/interfaces/Moneda.mjs +2 -0
- package/esm2020/lib/core/interfaces/Nomina.mjs +27 -0
- package/esm2020/lib/core/interfaces/PlanUnicoCuenta.mjs +2 -0
- package/esm2020/lib/core/interfaces/Presupuesto.mjs +2 -0
- package/esm2020/lib/core/interfaces/Proveedor.mjs +2 -0
- package/esm2020/lib/core/interfaces/RecursosHumanos.mjs +4 -0
- package/esm2020/lib/core/interfaces/Request.mjs +2 -0
- package/esm2020/lib/core/interfaces/Response.mjs +2 -0
- package/esm2020/lib/core/interfaces/Seguridad.mjs +2 -0
- package/esm2020/lib/core/interfaces/Servicios.mjs +2 -0
- package/esm2020/lib/core/interfaces/Sistema.mjs +2 -0
- package/esm2020/lib/core/interfaces/Tributos.mjs +2 -0
- package/esm2020/lib/core/interfaces/UnidadTributaria.mjs +2 -0
- package/esm2020/lib/core/interfaces/Usuario.mjs +2 -0
- package/esm2020/lib/core/interfaces/UsuarioPrefijo.mjs +2 -0
- package/esm2020/lib/core/models/CFG/Empresa.model.mjs +151 -0
- package/esm2020/lib/core/models/CFG/Enterprise.model.mjs +70 -0
- package/esm2020/lib/core/models/CFG/MPrefijo.model.mjs +64 -0
- package/esm2020/lib/core/models/CFG/Procede.model.mjs +31 -0
- package/esm2020/lib/core/models/CFG/TasaCambio.model.mjs +34 -0
- package/esm2020/lib/core/models/CFG/comunidad.model.mjs +22 -0
- package/esm2020/lib/core/models/CFG/locations.model.mjs +170 -0
- package/esm2020/lib/core/models/CFG/moneda.model.mjs +72 -0
- package/esm2020/lib/core/models/CFG/userPrefix.model.mjs +46 -0
- package/esm2020/lib/core/models/CXP/MConceptosCXP.model.mjs +34 -0
- package/esm2020/lib/core/models/CXP/MTipoDocumentoCXP.model.mjs +44 -0
- package/esm2020/lib/core/models/RPC/clasification.model.mjs +16 -0
- package/esm2020/lib/core/models/RPC/configuracionRPC.model.mjs +23 -0
- package/esm2020/lib/core/models/RPC/document.model.mjs +16 -0
- package/esm2020/lib/core/models/RPC/proveedores.model.mjs +9 -0
- package/esm2020/lib/core/models/RPC/providerBeneficiary.model.mjs +164 -0
- package/esm2020/lib/core/models/RPC/specialty.model.mjs +12 -0
- package/esm2020/lib/core/models/SCB/bank.model.mjs +181 -0
- package/esm2020/lib/core/models/SCG/IncomeAccount.mjs +83 -0
- package/esm2020/lib/core/models/SCG/accountMarriage.model.mjs +29 -0
- package/esm2020/lib/core/models/SCG/centroCosto.model.mjs +65 -0
- package/esm2020/lib/core/models/SCG/configuracionSCG.model.mjs +169 -0
- package/esm2020/lib/core/models/SCG/cuentaInstitucional.model.mjs +89 -0
- package/esm2020/lib/core/models/SCG/planUnicoCuenta.model.mjs +17 -0
- package/esm2020/lib/core/models/SFV/MClienteModel.mjs +116 -0
- package/esm2020/lib/core/models/SIV/MDetaContable.model.mjs +62 -0
- package/esm2020/lib/core/models/SIV/MDetaEntrada.model.mjs +94 -0
- package/esm2020/lib/core/models/SIV/MEntradaSuministro.model.mjs +132 -0
- package/esm2020/lib/core/models/SIV/MTipoDepositos.model.mjs +61 -0
- package/esm2020/lib/core/models/SNO/MAnticipoPrestaciones.model.mjs +100 -0
- package/esm2020/lib/core/models/SNO/MArchivoTxtCampo.model.mjs +61 -0
- package/esm2020/lib/core/models/SNO/MArchivosTxt.model.mjs +41 -0
- package/esm2020/lib/core/models/SNO/MAsignacionCargo.model.mjs +205 -0
- package/esm2020/lib/core/models/SNO/MAspectoEvaluacion.model.mjs +90 -0
- package/esm2020/lib/core/models/SNO/MAuditoria.model.mjs +61 -0
- package/esm2020/lib/core/models/SNO/MBeneficiario.model.mjs +137 -0
- package/esm2020/lib/core/models/SNO/MCargaFamiliar.model.mjs +52 -0
- package/esm2020/lib/core/models/SNO/MCargaMasiva.model.mjs +34 -0
- package/esm2020/lib/core/models/SNO/MCargosPersonal.model.mjs +101 -0
- package/esm2020/lib/core/models/SNO/MClasificacionObrero.mdel.mjs +46 -0
- package/esm2020/lib/core/models/SNO/MCodigoUnicoRac.model.mjs +39 -0
- package/esm2020/lib/core/models/SNO/MComponete.model.mjs +38 -0
- package/esm2020/lib/core/models/SNO/MConceptoVacaciones.model.mjs +85 -0
- package/esm2020/lib/core/models/SNO/MConceptosNomina.model.mjs +234 -0
- package/esm2020/lib/core/models/SNO/MConceptosPersonalNomina.model.mjs +97 -0
- package/esm2020/lib/core/models/SNO/MConcursante.model.mjs +317 -0
- package/esm2020/lib/core/models/SNO/MConcurso.model.mjs +246 -0
- package/esm2020/lib/core/models/SNO/MConfiguracionSNO.model.mjs +404 -0
- package/esm2020/lib/core/models/SNO/MConstanteNomina.model.mjs +67 -0
- package/esm2020/lib/core/models/SNO/MConstantePersonalNomina.model.mjs +79 -0
- package/esm2020/lib/core/models/SNO/MDedicacion.model.mjs +35 -0
- package/esm2020/lib/core/models/SNO/MDefinicionNomina.model.mjs +343 -0
- package/esm2020/lib/core/models/SNO/MDefinicionesBasicas.model.mjs +84 -0
- package/esm2020/lib/core/models/SNO/MDeudaAnterior.model.mjs +40 -0
- package/esm2020/lib/core/models/SNO/MEncargaduria.model.mjs +138 -0
- package/esm2020/lib/core/models/SNO/MEscalaEvaluacion.model.mjs +38 -0
- package/esm2020/lib/core/models/SNO/MEscalaEvaluacionDt.model.mjs +37 -0
- package/esm2020/lib/core/models/SNO/MEstructuraOrganizativa.model.mjs +119 -0
- package/esm2020/lib/core/models/SNO/MFamiliares.model.mjs +86 -0
- package/esm2020/lib/core/models/SNO/MFeriados.model.mjs +43 -0
- package/esm2020/lib/core/models/SNO/MFideicomiso.model.mjs +406 -0
- package/esm2020/lib/core/models/SNO/MFormacionAcademica.model.mjs +49 -0
- package/esm2020/lib/core/models/SNO/MGrado.model.mjs +47 -0
- package/esm2020/lib/core/models/SNO/MHojaTiempo.model.mjs +117 -0
- package/esm2020/lib/core/models/SNO/MImpuestoSobreRenta.model.mjs +73 -0
- package/esm2020/lib/core/models/SNO/MMetodoBanco.model.mjs +105 -0
- package/esm2020/lib/core/models/SNO/MNominaSimple.model.mjs +86 -0
- package/esm2020/lib/core/models/SNO/MPeriodoNomina.model.mjs +95 -0
- package/esm2020/lib/core/models/SNO/MPermisos.model.mjs +68 -0
- package/esm2020/lib/core/models/SNO/MPersonal.model.mjs +626 -0
- package/esm2020/lib/core/models/SNO/MPersonalJubilado.model.mjs +64 -0
- package/esm2020/lib/core/models/SNO/MPersonalNomina.model.mjs +313 -0
- package/esm2020/lib/core/models/SNO/MPlanHorario.model.mjs +116 -0
- package/esm2020/lib/core/models/SNO/MPlantillaConstancia.model.mjs +31 -0
- package/esm2020/lib/core/models/SNO/MPrestamo.model.mjs +221 -0
- package/esm2020/lib/core/models/SNO/MPrimaGrados.model.mjs +43 -0
- package/esm2020/lib/core/models/SNO/MPrimasConcepto.model.mjs +43 -0
- package/esm2020/lib/core/models/SNO/MRango.model.mjs +43 -0
- package/esm2020/lib/core/models/SNO/MReportesRRHH.mjs +402 -0
- package/esm2020/lib/core/models/SNO/MRequisitosConcursante.model.mjs +46 -0
- package/esm2020/lib/core/models/SNO/MRequisitosConcursos.model.mjs +37 -0
- package/esm2020/lib/core/models/SNO/MRequisitosMinimos.model.mjs +113 -0
- package/esm2020/lib/core/models/SNO/MSalarioHistorico.model.mjs +70 -0
- package/esm2020/lib/core/models/SNO/MSolicitudEmpleo.model.mjs +121 -0
- package/esm2020/lib/core/models/SNO/MTablaVacaciones.model.mjs +57 -0
- package/esm2020/lib/core/models/SNO/MTablaVacacionesPeriodo.model.mjs +40 -0
- package/esm2020/lib/core/models/SNO/MTabulador.model.mjs +96 -0
- package/esm2020/lib/core/models/SNO/MTipoEvaluacion.model.mjs +75 -0
- package/esm2020/lib/core/models/SNO/MTipoPersonal.model.mjs +34 -0
- package/esm2020/lib/core/models/SNO/MTiposEnfermedad.model.mjs +37 -0
- package/esm2020/lib/core/models/SNO/MTrabajoAnterior.model.mjs +65 -0
- package/esm2020/lib/core/models/SNO/MUbicacionFisica.model.mjs +61 -0
- package/esm2020/lib/core/models/SNO/MVacacionesPersonal.model.mjs +115 -0
- package/esm2020/lib/core/models/SOC/charge.model.mjs +66 -0
- package/esm2020/lib/core/models/SOC/clause.model.mjs +31 -0
- package/esm2020/lib/core/models/SOC/clauseModality.model.mjs +35 -0
- package/esm2020/lib/core/models/SOC/configuracionSOC.model.mjs +62 -0
- package/esm2020/lib/core/models/SOC/service.model.mjs +46 -0
- package/esm2020/lib/core/models/SOC/serviceCharge.model.mjs +37 -0
- package/esm2020/lib/core/models/SOC/serviceType.model.mjs +31 -0
- package/esm2020/lib/core/models/SPG/UnidadAdministradoraCentral.mjs +43 -0
- package/esm2020/lib/core/models/SPG/administrativeUnit.model.mjs +112 -0
- package/esm2020/lib/core/models/SPG/comprobantePresupuestario.model.mjs +51 -0
- package/esm2020/lib/core/models/SPG/configurationSPG.model.mjs +59 -0
- package/esm2020/lib/core/models/SPG/cuentaPresupuesto.model.mjs +120 -0
- package/esm2020/lib/core/models/SPG/estructuraPresupuestaria.model.mjs +176 -0
- package/esm2020/lib/core/models/SPG/expensiveAccount.model.mjs +108 -0
- package/esm2020/lib/core/models/SPG/fuenteFinanciamiento.model.mjs +31 -0
- package/esm2020/lib/core/models/SPG/incomeStructureAccount.model.mjs +81 -0
- package/esm2020/lib/core/models/SPG/organizationType.model.mjs +12 -0
- package/esm2020/lib/core/models/SSS/component.model.mjs +44 -0
- package/esm2020/lib/core/models/SSS/group.model.mjs +30 -0
- package/esm2020/lib/core/models/SSS/log.model.mjs +29 -0
- package/esm2020/lib/core/models/SSS/securityConfiguration.model.mjs +20 -0
- package/esm2020/lib/core/models/SSS/sistema.mjs +71 -0
- package/esm2020/lib/core/models/SSS/user.model.mjs +32 -0
- package/esm2020/lib/core/models/SSS/userDetail.model.mjs +73 -0
- package/esm2020/lib/core/models/SSS/userPermit.model.mjs +47 -0
- package/esm2020/lib/core/models/SSS/userRights.model.mjs +104 -0
- package/esm2020/lib/core/models/STB/MCargosAdicionales.mjs +84 -0
- package/esm2020/lib/core/models/STB/deduction.model.mjs +90 -0
- package/esm2020/lib/core/models/STB/deductionType.model.mjs +20 -0
- package/esm2020/lib/core/models/STB/unidadTributaria.model.mjs +14 -0
- package/esm2020/lib/core/models/basic-model.model.mjs +8 -0
- package/esm2020/lib/shared/components/catalogo/catalogo.component.mjs +72 -0
- package/esm2020/lib/shared/components/catalogo-doble-input/catalogo-doble-input.component.mjs +83 -0
- package/esm2020/lib/shared/components/catalogo-estructuras/catalogo-estructuras.component.mjs +74 -0
- package/esm2020/lib/shared/components/confirm/confirm.component.mjs +35 -0
- package/esm2020/lib/shared/components/icon/icon.component.mjs +22 -0
- package/esm2020/lib/shared/components/table-select/table-select.component.mjs +99 -0
- package/esm2020/lib/shared/material/customPaginator.mjs +24 -0
- package/esm2020/lib/shared/material/material.module.mjs +322 -0
- package/esm2020/lib/shared/pipes/iso-currency.pipe.mjs +43 -0
- package/esm2020/lib/shared/shared.module.mjs +66 -0
- package/esm2020/lib/sigesp.service.mjs +2050 -0
- package/esm2020/lib/validation.service.mjs +131 -0
- package/esm2020/public-api.mjs +156 -0
- package/esm2020/sigesp.mjs +5 -0
- package/fesm2015/{sigesp.js → sigesp.mjs} +643 -330
- package/fesm2015/sigesp.mjs.map +1 -0
- package/fesm2020/sigesp.mjs +14484 -0
- package/fesm2020/sigesp.mjs.map +1 -0
- package/index.d.ts +5 -0
- package/lib/app/app.component.d.ts +3 -0
- package/lib/app/app.module.d.ts +8 -0
- package/lib/core/interfaces/Nomina.d.ts +3 -0
- package/lib/core/interfaces/Presupuesto.d.ts +18 -6
- package/lib/core/interfaces/RecursosHumanos.d.ts +6 -0
- package/lib/core/models/SNO/MAuditoria.model.d.ts +1 -1
- package/lib/core/models/SNO/MFamiliares.model.d.ts +2 -2
- package/lib/core/models/SNO/MPersonal.model.d.ts +3 -0
- package/lib/core/models/SNO/MPersonalJubilado.model.d.ts +3 -0
- package/lib/core/models/SNO/MPersonalNomina.model.d.ts +3 -0
- package/lib/core/models/SPG/UnidadAdministradoraCentral.d.ts +15 -0
- package/lib/core/models/SPG/administrativeUnit.model.d.ts +4 -2
- package/lib/shared/components/catalogo/catalogo.component.d.ts +4 -1
- package/lib/shared/components/catalogo-doble-input/catalogo-doble-input.component.d.ts +3 -0
- package/lib/shared/components/catalogo-estructuras/catalogo-estructuras.component.d.ts +4 -1
- package/lib/shared/components/confirm/confirm.component.d.ts +3 -0
- package/lib/shared/components/icon/icon.component.d.ts +3 -0
- package/lib/shared/components/table-select/table-select.component.d.ts +4 -1
- package/lib/shared/material/material.module.d.ts +46 -0
- package/lib/shared/pipes/iso-currency.pipe.d.ts +3 -0
- package/lib/shared/shared.module.d.ts +14 -0
- package/lib/sigesp.service.d.ts +12 -7
- package/lib/validation.service.d.ts +3 -0
- package/package.json +23 -11
- package/public-api.d.ts +10 -1
- package/bundles/sigesp.umd.js +0 -15496
- package/bundles/sigesp.umd.js.map +0 -1
- package/bundles/sigesp.umd.min.js +0 -2
- package/bundles/sigesp.umd.min.js.map +0 -1
- package/esm2015/lib/app/app.component.js +0 -15
- package/esm2015/lib/app/app.module.js +0 -23
- package/esm2015/lib/core/interfaces/Auditoria.js +0 -49
- package/esm2015/lib/core/interfaces/Banco.js +0 -2
- package/esm2015/lib/core/interfaces/Catalogo.js +0 -2
- package/esm2015/lib/core/interfaces/CentroCosto.js +0 -2
- package/esm2015/lib/core/interfaces/Clasificacion.js +0 -2
- package/esm2015/lib/core/interfaces/Cliente.js +0 -2
- package/esm2015/lib/core/interfaces/ComprobantePresupuestario.js +0 -2
- package/esm2015/lib/core/interfaces/Comunidad.js +0 -2
- package/esm2015/lib/core/interfaces/Configuracion.js +0 -2
- package/esm2015/lib/core/interfaces/ConfiguracionRPC.js +0 -2
- package/esm2015/lib/core/interfaces/ConfiguracionSCG.js +0 -2
- package/esm2015/lib/core/interfaces/ConfigurationSPG.js +0 -2
- package/esm2015/lib/core/interfaces/Constantes.js +0 -359
- package/esm2015/lib/core/interfaces/CuentaEgresos.js +0 -2
- package/esm2015/lib/core/interfaces/CuentaIngreso.js +0 -2
- package/esm2015/lib/core/interfaces/CuentaIngresoEstructura.js +0 -2
- package/esm2015/lib/core/interfaces/CuentaInstitucional.js +0 -2
- package/esm2015/lib/core/interfaces/CuentaPresupuesto.js +0 -2
- package/esm2015/lib/core/interfaces/CuentasPorPagar.js +0 -2
- package/esm2015/lib/core/interfaces/Documento.js +0 -2
- package/esm2015/lib/core/interfaces/EntradaSuministro.js +0 -2
- package/esm2015/lib/core/interfaces/Especialidad.js +0 -2
- package/esm2015/lib/core/interfaces/EstructuraPresupuestaria.js +0 -2
- package/esm2015/lib/core/interfaces/FuenteFinanciamiento.js +0 -2
- package/esm2015/lib/core/interfaces/IBancoCuentasPorPagar.js +0 -2
- package/esm2015/lib/core/interfaces/ITipoDepositos.js +0 -2
- package/esm2015/lib/core/interfaces/Integracion.js +0 -2
- package/esm2015/lib/core/interfaces/Lugares.js +0 -2
- package/esm2015/lib/core/interfaces/Moneda.js +0 -2
- package/esm2015/lib/core/interfaces/Nomina.js +0 -27
- package/esm2015/lib/core/interfaces/PlanUnicoCuenta.js +0 -2
- package/esm2015/lib/core/interfaces/Presupuesto.js +0 -2
- package/esm2015/lib/core/interfaces/Proveedor.js +0 -2
- package/esm2015/lib/core/interfaces/RecursosHumanos.js +0 -4
- package/esm2015/lib/core/interfaces/Request.js +0 -2
- package/esm2015/lib/core/interfaces/Response.js +0 -2
- package/esm2015/lib/core/interfaces/Seguridad.js +0 -2
- package/esm2015/lib/core/interfaces/Servicios.js +0 -2
- package/esm2015/lib/core/interfaces/Sistema.js +0 -2
- package/esm2015/lib/core/interfaces/Tributos.js +0 -2
- package/esm2015/lib/core/interfaces/UnidadTributaria.js +0 -2
- package/esm2015/lib/core/interfaces/Usuario.js +0 -2
- package/esm2015/lib/core/interfaces/UsuarioPrefijo.js +0 -2
- package/esm2015/lib/core/models/CFG/Empresa.model.js +0 -151
- package/esm2015/lib/core/models/CFG/Enterprise.model.js +0 -70
- package/esm2015/lib/core/models/CFG/MPrefijo.model.js +0 -64
- package/esm2015/lib/core/models/CFG/Procede.model.js +0 -31
- package/esm2015/lib/core/models/CFG/TasaCambio.model.js +0 -34
- package/esm2015/lib/core/models/CFG/comunidad.model.js +0 -22
- package/esm2015/lib/core/models/CFG/locations.model.js +0 -170
- package/esm2015/lib/core/models/CFG/moneda.model.js +0 -72
- package/esm2015/lib/core/models/CFG/userPrefix.model.js +0 -46
- package/esm2015/lib/core/models/CXP/MConceptosCXP.model.js +0 -34
- package/esm2015/lib/core/models/CXP/MTipoDocumentoCXP.model.js +0 -44
- package/esm2015/lib/core/models/RPC/clasification.model.js +0 -16
- package/esm2015/lib/core/models/RPC/configuracionRPC.model.js +0 -23
- package/esm2015/lib/core/models/RPC/document.model.js +0 -16
- package/esm2015/lib/core/models/RPC/proveedores.model.js +0 -9
- package/esm2015/lib/core/models/RPC/providerBeneficiary.model.js +0 -164
- package/esm2015/lib/core/models/RPC/specialty.model.js +0 -12
- package/esm2015/lib/core/models/SCB/bank.model.js +0 -181
- package/esm2015/lib/core/models/SCG/IncomeAccount.js +0 -83
- package/esm2015/lib/core/models/SCG/accountMarriage.model.js +0 -29
- package/esm2015/lib/core/models/SCG/centroCosto.model.js +0 -65
- package/esm2015/lib/core/models/SCG/configuracionSCG.model.js +0 -169
- package/esm2015/lib/core/models/SCG/cuentaInstitucional.model.js +0 -89
- package/esm2015/lib/core/models/SCG/planUnicoCuenta.model.js +0 -17
- package/esm2015/lib/core/models/SFV/MClienteModel.js +0 -116
- package/esm2015/lib/core/models/SIV/MDetaContable.model.js +0 -62
- package/esm2015/lib/core/models/SIV/MDetaEntrada.model.js +0 -94
- package/esm2015/lib/core/models/SIV/MEntradaSuministro.model.js +0 -132
- package/esm2015/lib/core/models/SIV/MTipoDepositos.model.js +0 -61
- package/esm2015/lib/core/models/SNO/MAnticipoPrestaciones.model.js +0 -100
- package/esm2015/lib/core/models/SNO/MArchivoTxtCampo.model.js +0 -61
- package/esm2015/lib/core/models/SNO/MArchivosTxt.model.js +0 -41
- package/esm2015/lib/core/models/SNO/MAsignacionCargo.model.js +0 -205
- package/esm2015/lib/core/models/SNO/MAspectoEvaluacion.model.js +0 -90
- package/esm2015/lib/core/models/SNO/MAuditoria.model.js +0 -61
- package/esm2015/lib/core/models/SNO/MBeneficiario.model.js +0 -137
- package/esm2015/lib/core/models/SNO/MCargaFamiliar.model.js +0 -52
- package/esm2015/lib/core/models/SNO/MCargaMasiva.model.js +0 -34
- package/esm2015/lib/core/models/SNO/MCargosPersonal.model.js +0 -101
- package/esm2015/lib/core/models/SNO/MClasificacionObrero.mdel.js +0 -46
- package/esm2015/lib/core/models/SNO/MCodigoUnicoRac.model.js +0 -39
- package/esm2015/lib/core/models/SNO/MComponete.model.js +0 -38
- package/esm2015/lib/core/models/SNO/MConceptoVacaciones.model.js +0 -85
- package/esm2015/lib/core/models/SNO/MConceptosNomina.model.js +0 -234
- package/esm2015/lib/core/models/SNO/MConceptosPersonalNomina.model.js +0 -97
- package/esm2015/lib/core/models/SNO/MConcursante.model.js +0 -317
- package/esm2015/lib/core/models/SNO/MConcurso.model.js +0 -246
- package/esm2015/lib/core/models/SNO/MConfiguracionSNO.model.js +0 -404
- package/esm2015/lib/core/models/SNO/MConstanteNomina.model.js +0 -67
- package/esm2015/lib/core/models/SNO/MConstantePersonalNomina.model.js +0 -79
- package/esm2015/lib/core/models/SNO/MDedicacion.model.js +0 -35
- package/esm2015/lib/core/models/SNO/MDefinicionNomina.model.js +0 -343
- package/esm2015/lib/core/models/SNO/MDefinicionesBasicas.model.js +0 -84
- package/esm2015/lib/core/models/SNO/MDeudaAnterior.model.js +0 -40
- package/esm2015/lib/core/models/SNO/MEncargaduria.model.js +0 -138
- package/esm2015/lib/core/models/SNO/MEscalaEvaluacion.model.js +0 -38
- package/esm2015/lib/core/models/SNO/MEscalaEvaluacionDt.model.js +0 -37
- package/esm2015/lib/core/models/SNO/MEstructuraOrganizativa.model.js +0 -119
- package/esm2015/lib/core/models/SNO/MFamiliares.model.js +0 -86
- package/esm2015/lib/core/models/SNO/MFeriados.model.js +0 -43
- package/esm2015/lib/core/models/SNO/MFideicomiso.model.js +0 -406
- package/esm2015/lib/core/models/SNO/MFormacionAcademica.model.js +0 -49
- package/esm2015/lib/core/models/SNO/MGrado.model.js +0 -47
- package/esm2015/lib/core/models/SNO/MHojaTiempo.model.js +0 -117
- package/esm2015/lib/core/models/SNO/MImpuestoSobreRenta.model.js +0 -73
- package/esm2015/lib/core/models/SNO/MMetodoBanco.model.js +0 -105
- package/esm2015/lib/core/models/SNO/MNominaSimple.model.js +0 -86
- package/esm2015/lib/core/models/SNO/MPeriodoNomina.model.js +0 -95
- package/esm2015/lib/core/models/SNO/MPermisos.model.js +0 -68
- package/esm2015/lib/core/models/SNO/MPersonal.model.js +0 -617
- package/esm2015/lib/core/models/SNO/MPersonalJubilado.model.js +0 -58
- package/esm2015/lib/core/models/SNO/MPersonalNomina.model.js +0 -307
- package/esm2015/lib/core/models/SNO/MPlanHorario.model.js +0 -116
- package/esm2015/lib/core/models/SNO/MPlantillaConstancia.model.js +0 -31
- package/esm2015/lib/core/models/SNO/MPrestamo.model.js +0 -221
- package/esm2015/lib/core/models/SNO/MPrimaGrados.model.js +0 -43
- package/esm2015/lib/core/models/SNO/MPrimasConcepto.model.js +0 -43
- package/esm2015/lib/core/models/SNO/MRango.model.js +0 -43
- package/esm2015/lib/core/models/SNO/MReportesRRHH.js +0 -402
- package/esm2015/lib/core/models/SNO/MRequisitosConcursante.model.js +0 -46
- package/esm2015/lib/core/models/SNO/MRequisitosConcursos.model.js +0 -37
- package/esm2015/lib/core/models/SNO/MRequisitosMinimos.model.js +0 -113
- package/esm2015/lib/core/models/SNO/MSalarioHistorico.model.js +0 -70
- package/esm2015/lib/core/models/SNO/MSolicitudEmpleo.model.js +0 -121
- package/esm2015/lib/core/models/SNO/MTablaVacaciones.model.js +0 -57
- package/esm2015/lib/core/models/SNO/MTablaVacacionesPeriodo.model.js +0 -40
- package/esm2015/lib/core/models/SNO/MTabulador.model.js +0 -96
- package/esm2015/lib/core/models/SNO/MTipoEvaluacion.model.js +0 -75
- package/esm2015/lib/core/models/SNO/MTipoPersonal.model.js +0 -34
- package/esm2015/lib/core/models/SNO/MTiposEnfermedad.model.js +0 -37
- package/esm2015/lib/core/models/SNO/MTrabajoAnterior.model.js +0 -65
- package/esm2015/lib/core/models/SNO/MUbicacionFisica.model.js +0 -61
- package/esm2015/lib/core/models/SNO/MVacacionesPersonal.model.js +0 -115
- package/esm2015/lib/core/models/SOC/charge.model.js +0 -66
- package/esm2015/lib/core/models/SOC/clause.model.js +0 -31
- package/esm2015/lib/core/models/SOC/clauseModality.model.js +0 -35
- package/esm2015/lib/core/models/SOC/configuracionSOC.model.js +0 -62
- package/esm2015/lib/core/models/SOC/service.model.js +0 -46
- package/esm2015/lib/core/models/SOC/serviceCharge.model.js +0 -37
- package/esm2015/lib/core/models/SOC/serviceType.model.js +0 -31
- package/esm2015/lib/core/models/SPG/administrativeUnit.model.js +0 -106
- package/esm2015/lib/core/models/SPG/comprobantePresupuestario.model.js +0 -51
- package/esm2015/lib/core/models/SPG/configurationSPG.model.js +0 -59
- package/esm2015/lib/core/models/SPG/cuentaPresupuesto.model.js +0 -120
- package/esm2015/lib/core/models/SPG/estructuraPresupuestaria.model.js +0 -176
- package/esm2015/lib/core/models/SPG/expensiveAccount.model.js +0 -108
- package/esm2015/lib/core/models/SPG/fuenteFinanciamiento.model.js +0 -26
- package/esm2015/lib/core/models/SPG/incomeStructureAccount.model.js +0 -81
- package/esm2015/lib/core/models/SPG/organizationType.model.js +0 -12
- package/esm2015/lib/core/models/SSS/component.model.js +0 -44
- package/esm2015/lib/core/models/SSS/group.model.js +0 -30
- package/esm2015/lib/core/models/SSS/log.model.js +0 -29
- package/esm2015/lib/core/models/SSS/securityConfiguration.model.js +0 -20
- package/esm2015/lib/core/models/SSS/sistema.js +0 -71
- package/esm2015/lib/core/models/SSS/user.model.js +0 -32
- package/esm2015/lib/core/models/SSS/userDetail.model.js +0 -73
- package/esm2015/lib/core/models/SSS/userPermit.model.js +0 -47
- package/esm2015/lib/core/models/SSS/userRights.model.js +0 -104
- package/esm2015/lib/core/models/STB/MCargosAdicionales.js +0 -84
- package/esm2015/lib/core/models/STB/deduction.model.js +0 -90
- package/esm2015/lib/core/models/STB/deductionType.model.js +0 -20
- package/esm2015/lib/core/models/STB/unidadTributaria.model.js +0 -14
- package/esm2015/lib/core/models/basic-model.model.js +0 -8
- package/esm2015/lib/shared/components/catalogo/catalogo.component.js +0 -59
- package/esm2015/lib/shared/components/catalogo-doble-input/catalogo-doble-input.component.js +0 -70
- package/esm2015/lib/shared/components/catalogo-estructuras/catalogo-estructuras.component.js +0 -62
- package/esm2015/lib/shared/components/confirm/confirm.component.js +0 -30
- package/esm2015/lib/shared/components/icon/icon.component.js +0 -20
- package/esm2015/lib/shared/components/table-select/table-select.component.js +0 -85
- package/esm2015/lib/shared/material/customPaginator.js +0 -24
- package/esm2015/lib/shared/material/material.module.js +0 -145
- package/esm2015/lib/shared/pipes/iso-currency.pipe.js +0 -39
- package/esm2015/lib/shared/shared.module.js +0 -51
- package/esm2015/lib/sigesp.service.js +0 -2082
- package/esm2015/lib/validation.service.js +0 -130
- package/esm2015/public-api.js +0 -147
- package/esm2015/sigesp.js +0 -15
- package/fesm2015/sigesp.js.map +0 -1
- package/sigesp.d.ts +0 -32
- package/sigesp.metadata.json +0 -1
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
import { MBasicModel } from '../basic-model.model';
|
|
2
|
+
export class MConstantePersonalNomina extends MBasicModel {
|
|
3
|
+
constructor(e = null) {
|
|
4
|
+
super();
|
|
5
|
+
this.idEnterprise = 0;
|
|
6
|
+
this.idEmpresa = 0;
|
|
7
|
+
this.idNomina = 0;
|
|
8
|
+
this.idConstante = 0;
|
|
9
|
+
this.idPersonalNomina = 0;
|
|
10
|
+
this.nombreConstante = '';
|
|
11
|
+
this.monstoConstante = 0;
|
|
12
|
+
this.montoTopeConstante = 0;
|
|
13
|
+
this.nombrePersonal = '';
|
|
14
|
+
this.apellidoPersonal = '';
|
|
15
|
+
this.denominacionOrganigrama = '';
|
|
16
|
+
this.codigoOrganigrama = '';
|
|
17
|
+
this.codigoPersonal = '';
|
|
18
|
+
this.toppeModificacion = 0;
|
|
19
|
+
this.constantHojaTiempo = 0;
|
|
20
|
+
this.codigoConstante = '';
|
|
21
|
+
this.idCargoPersonal = 0;
|
|
22
|
+
this.codigoCargoPersonal = '';
|
|
23
|
+
this.denominacionCargoPersonal = '';
|
|
24
|
+
this.idPersonal = 0;
|
|
25
|
+
if (e) {
|
|
26
|
+
this.idEnterprise = +e.id_enterprise;
|
|
27
|
+
this.idEmpresa = +e.id_empresa;
|
|
28
|
+
this.idNomina = +e.id_nomina;
|
|
29
|
+
this.idConstante = +e.id_constante;
|
|
30
|
+
this.idPersonalNomina = +e.id_personalnomina;
|
|
31
|
+
this.monstoConstante = parseFloat(e.moncons);
|
|
32
|
+
this.montoTopeConstante = parseFloat(e.montopcons);
|
|
33
|
+
this.nombrePersonal = e.nomper;
|
|
34
|
+
this.apellidoPersonal = e.apeper;
|
|
35
|
+
this.denominacionOrganigrama = e.denestorg;
|
|
36
|
+
this.codigoOrganigrama = e.codestorg;
|
|
37
|
+
this.codigoPersonal = e.codper;
|
|
38
|
+
this.toppeModificacion = parseInt(e.esttopmod);
|
|
39
|
+
this.nombreConstante = e.nomcons;
|
|
40
|
+
this.codigoConstante = e.codcons;
|
|
41
|
+
this.constantHojaTiempo = +e.conhojtie;
|
|
42
|
+
this.idCargoPersonal = parseInt(e.id_carper);
|
|
43
|
+
this.codigoCargoPersonal = e.codcar;
|
|
44
|
+
this.denominacionCargoPersonal = e.descar;
|
|
45
|
+
this.idPersonal = e.id_personal;
|
|
46
|
+
}
|
|
47
|
+
else {
|
|
48
|
+
this.isNew = true;
|
|
49
|
+
}
|
|
50
|
+
}
|
|
51
|
+
dataInterface() {
|
|
52
|
+
return {
|
|
53
|
+
id_enterprise: this.idEnterprise.toString(),
|
|
54
|
+
id_empresa: this.idEmpresa,
|
|
55
|
+
id_nomina: this.idNomina.toString(),
|
|
56
|
+
id_constante: this.idConstante.toString(),
|
|
57
|
+
id_personalnomina: this.idPersonalNomina.toString(),
|
|
58
|
+
moncons: this.monstoConstante.toString(),
|
|
59
|
+
montopcons: this.montoTopeConstante.toString(),
|
|
60
|
+
nomper: this.nombrePersonal,
|
|
61
|
+
apeper: this.apellidoPersonal,
|
|
62
|
+
codestorg: this.codigoOrganigrama,
|
|
63
|
+
denestorg: this.denominacionOrganigrama,
|
|
64
|
+
codper: this.codigoPersonal,
|
|
65
|
+
esttopmod: this.toppeModificacion.toString(),
|
|
66
|
+
nomcons: this.nombreConstante,
|
|
67
|
+
conhojtie: this.constantHojaTiempo.toString(),
|
|
68
|
+
codcons: this.codigoConstante,
|
|
69
|
+
id_carper: this.idCargoPersonal.toString(),
|
|
70
|
+
codcar: this.codigoCargoPersonal,
|
|
71
|
+
descar: this.denominacionCargoPersonal,
|
|
72
|
+
id_personal: this.idPersonal,
|
|
73
|
+
};
|
|
74
|
+
}
|
|
75
|
+
nombreCompleto() {
|
|
76
|
+
return this.apellidoPersonal + ', ' + this.nombrePersonal;
|
|
77
|
+
}
|
|
78
|
+
}
|
|
79
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiTUNvbnN0YW50ZVBlcnNvbmFsTm9taW5hLm1vZGVsLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc2lnZXNwL3NyYy9saWIvY29yZS9tb2RlbHMvU05PL01Db25zdGFudGVQZXJzb25hbE5vbWluYS5tb2RlbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFFbkQsTUFBTSxPQUFPLHdCQUF5QixTQUFRLFdBQVc7SUF1QnJELFlBQVksSUFBMkIsSUFBSTtRQUN2QyxLQUFLLEVBQUUsQ0FBQztRQXZCTCxpQkFBWSxHQUFRLENBQUMsQ0FBQztRQUN0QixjQUFTLEdBQVEsQ0FBQyxDQUFDO1FBQ25CLGFBQVEsR0FBUSxDQUFDLENBQUM7UUFDbEIsZ0JBQVcsR0FBUSxDQUFDLENBQUM7UUFDckIscUJBQWdCLEdBQVEsQ0FBQyxDQUFDO1FBQzFCLG9CQUFlLEdBQVEsRUFBRSxDQUFDO1FBQzFCLG9CQUFlLEdBQVEsQ0FBQyxDQUFDO1FBQzVCLHVCQUFrQixHQUFRLENBQUMsQ0FBQztRQUN6QixtQkFBYyxHQUFTLEVBQUUsQ0FBQztRQUMxQixxQkFBZ0IsR0FBUyxFQUFFLENBQUM7UUFDNUIsNEJBQXVCLEdBQVMsRUFBRSxDQUFDO1FBQ25DLHNCQUFpQixHQUFTLEVBQUUsQ0FBQztRQUM3QixtQkFBYyxHQUFRLEVBQUUsQ0FBQztRQUN6QixzQkFBaUIsR0FBUSxDQUFDLENBQUM7UUFDM0IsdUJBQWtCLEdBQVEsQ0FBQyxDQUFDO1FBQzVCLG9CQUFlLEdBQVEsRUFBRSxDQUFDO1FBQzFCLG9CQUFlLEdBQVEsQ0FBQyxDQUFDO1FBQ3pCLHdCQUFtQixHQUFRLEVBQUUsQ0FBQztRQUM5Qiw4QkFBeUIsR0FBUSxFQUFFLENBQUM7UUFDcEMsZUFBVSxHQUFRLENBQUMsQ0FBQztRQUt2QixJQUFJLENBQUMsRUFBQztZQUNGLElBQUks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Q0FBQyxtQkFBbUI7WUFDL0IsTUFBTSxFQUFDLElBQUksQ0FBQyx5QkFBeUI7WUFDckMsV0FBVyxFQUFDLElBQUksQ0FBQyxVQUFVO1NBRTlCLENBQUE7SUFDTCxDQUFDO0lBRU0sY0FBYztRQUNqQixPQUFPLElBQUksQ0FBQyxnQkFBZ0IsR0FBQyxJQUFJLEdBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQztJQUMxRCxDQUFDO0NBQ0oiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJQ29uc3RhbnRlUGVyc29uYU5vbWluYSB9IGZyb20gJy4uLy4uL2ludGVyZmFjZXMvTm9taW5hJztcclxuaW1wb3J0IHsgTUJhc2ljTW9kZWwgfSBmcm9tICcuLi9iYXNpYy1tb2RlbC5tb2RlbCc7XHJcblxyXG5leHBvcnQgY2xhc3MgTUNvbnN0YW50ZVBlcnNvbmFsTm9taW5hIGV4dGVuZHMgTUJhc2ljTW9kZWwge1xyXG4gICAgcHVibGljIGlkRW50ZXJwcmlzZTpudW1iZXI9MDtcclxuICAgIHB1YmxpYyBpZEVtcHJlc2E6bnVtYmVyPTA7IFxyXG4gICAgcHVibGljIGlkTm9taW5hOm51bWJlcj0wOyBcclxuICAgIHB1YmxpYyBpZENvbnN0YW50ZTpudW1iZXI9MDsgXHJcbiAgICBwdWJsaWMgaWRQZXJzb25hbE5vbWluYTpudW1iZXI9MDsgXHJcbiAgICBwdWJsaWMgbm9tYnJlQ29uc3RhbnRlOnN0cmluZz0nJztcclxuICAgIHB1YmxpYyBtb25zdG9Db25zdGFudGU6bnVtYmVyPTA7IFxyXG5cdHB1YmxpYyBtb250b1RvcGVDb25zdGFudGU6bnVtYmVyPTA7ICBcclxuICAgIHB1YmxpYyBub21icmVQZXJzb25hbDogc3RyaW5nPScnO1xyXG4gICAgcHVibGljIGFwZWxsaWRvUGVyc29uYWw6IHN0cmluZz0nJztcclxuICAgIHB1YmxpYyBkZW5vbWluYWNpb25PcmdhbmlncmFtYTogc3RyaW5nPScnO1xyXG4gICAgcHVibGljIGNvZGlnb09yZ2FuaWdyYW1hOiBzdHJpbmc9Jyc7XHJcbiAgICBwdWJsaWMgY29kaWdvUGVyc29uYWw6c3RyaW5nPScnO1xyXG4gICAgcHVibGljIHRvcHBlTW9kaWZpY2FjaW9uOm51bWJlcj0wOyBcclxuICAgIHB1YmxpYyBjb25zdGFudEhvamFUaWVtcG86bnVtYmVyPTA7XHJcbiAgICBwdWJsaWMgY29kaWdvQ29uc3RhbnRlOnN0cmluZz0nJztcclxuICAgIHB1YmxpYyBpZENhcmdvUGVyc29uYWw6bnVtYmVyPTA7XHJcbiAgICBwdWJsaWMgY29kaWdvQ2FyZ29QZXJzb25hbDpzdHJpbmc9Jyc7XHJcbiAgICBwdWJsaWMgZGVub21pbmFjaW9uQ2FyZ29QZXJzb25hbDpzdHJpbmc9Jyc7XHJcbiAgICBwdWJsaWMgaWRQZXJzb25hbDpudW1iZXI9MDtcclxuXHJcbiAgICBcclxuICAgIGNvbnN0cnVjdG9yKGU6SUNvbnN0YW50ZVBlcnNvbmFOb21pbmE9IG51bGwpe1xyXG4gICAgICAgIHN1cGVyKCk7XHJcbiAgICAgICAgaWYgKGUpe1xyXG4gICAgICAgICAgICB0aGlzLmlkRW50ZXJwcmlzZT0rZS5pZF9lbnRlcnByaXNlOyAgXHJcbiAgICAgICAgICAgIHRoaXMuaWRFbXByZXNhPStlLmlkX2VtcHJlc2HCoFxyXG4gICAgICAgICAgICB0aGlzLmlkTm9taW5hPStlLmlkX25vbWluYTtcclxuICAgICAgICAgICAgdGhpcy5pZENvbnN0YW50ZT0rZS5pZF9jb25zdGFudGU7XHJcbiAgICAgICAgICAgIHRoaXMuaWRQZXJzb25hbE5vbWluYT0rZS5pZF9wZXJzb25hbG5vbWluYTsgXHJcbiAgICAgICAgICAgIHRoaXMubW9uc3RvQ29uc3RhbnRlPXBhcnNlRmxvYXQoZS5tb25jb25zKTtcclxuXHQgICAgICAgIHRoaXMubW9udG9Ub3BlQ29uc3RhbnRlPXBhcnNlRmxvYXQoZS5tb250b3Bjb25zKTsgICBcclxuICAgICAgICAgICAgdGhpcy5ub21icmVQZXJzb25hbD1lLm5vbXBlcjtcclxuICAgICAgICAgICAgdGhpcy5hcGVsbGlkb1BlcnNvbmFsPWUuYXBlcGVyO1xyXG4gICAgICAgICAgICB0aGlzLmRlbm9taW5hY2lvbk9yZ2FuaWdyYW1hPWUuZGVuZXN0b3JnO1xyXG4gICAgICAgICAgICB0aGlzLmNvZGlnb09yZ2FuaWdyYW1hPWUuY29kZXN0b3JnO1xyXG4gICAgICAgICAgICB0aGlzLmNvZGlnb1BlcnNvbmFsPWUuY29kcGVyO1xyXG4gICAgICAgICAgICB0aGlzLnRvcHBlTW9kaWZpY2FjaW9uPXBhcnNlSW50KGUuZXN0dG9wbW9kKVxyXG4gICAgICAgICAgICB0aGlzLm5vbWJyZUNvbnN0YW50ZT1lLm5vbWNvbnM7XHJcbiAgICAgICAgICAgIHRoaXMuY29kaWdvQ29uc3RhbnRlPWUuY29kY29ucztcclxuICAgICAgICAgICAgdGhpcy5jb25zdGFudEhvamFUaWVtcG89K2UuY29uaG9qdGllO1xyXG4gICAgICAgICAgICB0aGlzLmlkQ2FyZ29QZXJzb25hbD1wYXJzZUludChlLmlkX2NhcnBlcik7XHJcbiAgICAgICAgICAgIHRoaXMuY29kaWdvQ2FyZ29QZXJzb25hbD1lLmNvZGNhcjtcclxuICAgICAgICAgICAgdGhpcy5kZW5vbWluYWNpb25DYXJnb1BlcnNvbmFsPWUuZGVzY2FyO1xyXG4gICAgICAgICAgICB0aGlzLmlkUGVyc29uYWw9ZS5pZF9wZXJzb25hbDtcclxuICAgIFxyXG4gICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgIHRoaXMuaXNOZXc9dHJ1ZTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgcHVibGljIGRhdGFJbnRlcmZhY2UoKTpJQ29uc3RhbnRlUGVyc29uYU5vbWluYXtcclxuICAgICAgICByZXR1cm4ge1xyXG4gICAgICAgICAgICBpZF9lbnRlcnByaXNlOnRoaXMuaWRFbnRlcnByaXNlLnRvU3RyaW5nKCksXHJcbiAgICAgICAgICAgIGlkX2VtcHJlc2HCoDp0aGlzLmlkRW1wcmVzYSxcclxuICAgICAgICAgICAgaWRfbm9taW5hOnRoaXMuaWROb21pbmEudG9TdHJpbmcoKSwgXHJcbiAgICAgICAgICAgIGlkX2NvbnN0YW50ZTp0aGlzLmlkQ29uc3RhbnRlLnRvU3RyaW5nKCksIFxyXG4gICAgICAgICAgICBpZF9wZXJzb25hbG5vbWluYTp0aGlzLmlkUGVyc29uYWxOb21pbmEudG9TdHJpbmcoKSxcclxuICAgICAgICAgICAgbW9uY29uczp0aGlzLm1vbnN0b0NvbnN0YW50ZS50b1N0cmluZygpLCAgXHJcbiAgICAgICAgICAgIG1vbnRvcGNvbnM6dGhpcy5tb250b1RvcGVDb25zdGFudGUudG9TdHJpbmcoKSwgXHJcbiAgICAgICAgICAgIG5vbXBlcjogdGhpcy5ub21icmVQZXJzb25hbCxcclxuICAgICAgICAgICAgYXBlcGVyOiB0aGlzLmFwZWxsaWRvUGVyc29uYWwsXHJcbiAgICAgICAgICAgIGNvZGVzdG9yZzp0aGlzLmNvZGlnb09yZ2FuaWdyYW1hLFxyXG4gICAgICAgICAgICBkZW5lc3Rvcmc6dGhpcy5kZW5vbWluYWNpb25PcmdhbmlncmFtYSxcclxuICAgICAgICAgICAgY29kcGVyOnRoaXMuY29kaWdvUGVyc29uYWwsXHJcbiAgICAgICAgICAgIGVzdHRvcG1vZDogdGhpcy50b3BwZU1vZGlmaWNhY2lvbi50b1N0cmluZygpLFxyXG4gICAgICAgICAgICBub21jb25zOnRoaXMubm9tYnJlQ29uc3RhbnRlLFxyXG4gICAgICAgICAgICBjb25ob2p0aWU6dGhpcy5jb25zdGFudEhvamFUaWVtcG8udG9TdHJpbmcoKSxcclxuICAgICAgICAgICAgY29kY29uczp0aGlzLmNvZGlnb0NvbnN0YW50ZSxcclxuICAgICAgICAgICAgaWRfY2FycGVyOnRoaXMuaWRDYXJnb1BlcnNvbmFsLnRvU3RyaW5nKCksXHJcbiAgICAgICAgICAgIGNvZGNhcjp0aGlzLmNvZGlnb0NhcmdvUGVyc29uYWwsXHJcbiAgICAgICAgICAgIGRlc2Nhcjp0aGlzLmRlbm9taW5hY2lvbkNhcmdvUGVyc29uYWwsXHJcbiAgICAgICAgICAgIGlkX3BlcnNvbmFsOnRoaXMuaWRQZXJzb25hbCxcclxuXHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIHB1YmxpYyBub21icmVDb21wbGV0bygpOnN0cmluZ3tcclxuICAgICAgICByZXR1cm4gdGhpcy5hcGVsbGlkb1BlcnNvbmFsKycsICcrdGhpcy5ub21icmVQZXJzb25hbDtcclxuICAgIH1cclxufSJdfQ==
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import { MBasicModel } from "../basic-model.model";
|
|
2
|
+
import { MTipoPersonal } from "./MTipoPersonal.model";
|
|
3
|
+
export class MDedicacion extends MBasicModel {
|
|
4
|
+
constructor(e = null) {
|
|
5
|
+
super();
|
|
6
|
+
this.idEnterprise = 0;
|
|
7
|
+
this.idEmpresa = 0;
|
|
8
|
+
this.idDedicacion = 0;
|
|
9
|
+
this.codigoDedicacion = '';
|
|
10
|
+
this.denominacionDedicacion = '';
|
|
11
|
+
this.tipoPersonal = [];
|
|
12
|
+
if (e) {
|
|
13
|
+
this.idEnterprise = +e.id_enterprise;
|
|
14
|
+
this.idEmpresa = +e.id_empresa;
|
|
15
|
+
this.idDedicacion = parseInt(e.id_dedicacion);
|
|
16
|
+
this.codigoDedicacion = e.codded;
|
|
17
|
+
this.denominacionDedicacion = e.dended;
|
|
18
|
+
this.tipoPersonal = e.detalles.map(e => new MTipoPersonal(e));
|
|
19
|
+
}
|
|
20
|
+
else {
|
|
21
|
+
this.isNew = true;
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
dataInterface() {
|
|
25
|
+
return {
|
|
26
|
+
id_enterprise: this.idEnterprise.toString(),
|
|
27
|
+
id_empresa: this.idEmpresa,
|
|
28
|
+
id_dedicacion: this.idDedicacion.toString(),
|
|
29
|
+
codded: this.codigoDedicacion,
|
|
30
|
+
dended: this.denominacionDedicacion,
|
|
31
|
+
detalles: this.tipoPersonal.map(function (e) { return e.dataInterface(); }),
|
|
32
|
+
};
|
|
33
|
+
}
|
|
34
|
+
}
|
|
35
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiTURlZGljYWNpb24ubW9kZWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zaWdlc3Avc3JjL2xpYi9jb3JlL21vZGVscy9TTk8vTURlZGljYWNpb24ubW9kZWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBRW5ELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUV0RCxNQUFNLE9BQU8sV0FBWSxTQUFRLFdBQVc7SUFReEMsWUFBYSxJQUFjLElBQUk7UUFDM0IsS0FBSyxFQUFFLENBQUM7UUFSTCxpQkFBWSxHQUFRLENBQUMsQ0FBQztRQUN0QixjQUFTLEdBQVEsQ0FBQyxDQUFDO1FBQ25CLGlCQUFZLEdBQVMsQ0FBQyxDQUFDO1FBQ3ZCLHFCQUFnQixHQUFTLEVBQUUsQ0FBQztRQUM1QiwyQkFBc0IsR0FBUyxFQUFFLENBQUM7UUFDbEMsaUJBQVksR0FBa0IsRUFBRSxDQUFDO1FBSXBDLElBQUksQ0FBQyxFQUFDO1lBQ0YsSUFBSSxDQUFDLFlBQVksR0FBQyxDQUFDLENBQUMsQ0FBQyxhQUFhLENBQUM7WUFDbkMsSUFBSSxDQUFDLFNBQVMsR0FBQyxDQUFDLENBQUMsQ0FBQyxVQUFVLENBQUE7WUFDNUIsSUFBSSxDQUFDLFlBQVksR0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLGFBQWEsQ0FBQyxDQUFDO1lBQzVDLElBQUksQ0FBQyxnQkFBZ0IsR0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDO1lBQy9CLElBQUksQ0FBQyxzQkFBc0IsR0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDO1lBQ3JDLElBQUksQ0FBQyxZQUFZLEdBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFBLEVBQUUsQ0FBQyxJQUFJLGFBQWEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO1NBQzlEO2FBQU87WUFDSixJQUFJLENBQUMsS0FBSyxHQUFDLElBQUksQ0FBQztTQUNuQjtJQUNMLENBQUM7SUFFTSxhQUFhO1FBQ2hCLE9BQU87WUFDSCxhQUFhLEVBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxRQUFRLEVBQUU7WUFDMUMsVUFBVSxFQUFFLElBQUksQ0FBQyxTQUFTO1lBQzFCLGFBQWEsRUFBRSxJQUFJLENBQUMsWUFBWSxDQUFDLFFBQVEsRUFBRTtZQUMzQyxNQUFNLEVBQUUsSUFBSSxDQUFDLGdCQUFnQjtZQUM3QixNQUFNLEVBQUUsSUFBSSxDQUFDLHNCQUFzQjtZQUNuQyxRQUFRLEVBQUUsSUFBSSxDQUFDLFlBQVksQ0FBQyxHQUFHLENBQUMsVUFBVSxDQUFDLElBQUksT0FBTyxDQUFDLENBQUMsYUFBYSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUM7U0FDOUUsQ0FBQTtJQUNMLENBQUM7Q0FDSiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE1CYXNpY01vZGVsIH0gZnJvbSBcIi4uL2Jhc2ljLW1vZGVsLm1vZGVsXCI7XHJcbmltcG9ydCB7IElEZWRpY2FjaW9uIH0gZnJvbSBcIi4uLy4uL2ludGVyZmFjZXMvUmVjdXJzb3NIdW1hbm9zXCI7XHJcbmltcG9ydCB7IE1UaXBvUGVyc29uYWwgfSBmcm9tIFwiLi9NVGlwb1BlcnNvbmFsLm1vZGVsXCI7XHJcblxyXG5leHBvcnQgY2xhc3MgTURlZGljYWNpb24gZXh0ZW5kcyBNQmFzaWNNb2RlbHtcclxuICAgIHB1YmxpYyBpZEVudGVycHJpc2U6bnVtYmVyPTA7XHJcbiAgICBwdWJsaWMgaWRFbXByZXNhOm51bWJlcj0wOyBcclxuICAgIHB1YmxpYyBpZERlZGljYWNpb246IG51bWJlcj0wO1xyXG4gICAgcHVibGljIGNvZGlnb0RlZGljYWNpb246IHN0cmluZz0nJztcclxuICAgIHB1YmxpYyBkZW5vbWluYWNpb25EZWRpY2FjaW9uOiBzdHJpbmc9Jyc7XHJcbiAgICBwdWJsaWMgdGlwb1BlcnNvbmFsOiBNVGlwb1BlcnNvbmFsW109W107XHJcblxyXG4gICAgY29uc3RydWN0b3IgKGU6SURlZGljYWNpb249bnVsbCkge1xyXG4gICAgICAgIHN1cGVyKCk7XHJcbiAgICAgICAgaWYgKGUpe1xyXG4gICAgICAgICAgICB0aGlzLmlkRW50ZXJwcmlzZT0rZS5pZF9lbnRlcnByaXNlOyAgXHJcbiAgICAgICAgICAgIHRoaXMuaWRFbXByZXNhPStlLmlkX2VtcHJlc2HCoFxyXG4gICAgICAgICAgICB0aGlzLmlkRGVkaWNhY2lvbj1wYXJzZUludChlLmlkX2RlZGljYWNpb24pO1xyXG4gICAgICAgICAgICB0aGlzLmNvZGlnb0RlZGljYWNpb249ZS5jb2RkZWQ7XHJcbiAgICAgICAgICAgIHRoaXMuZGVub21pbmFjaW9uRGVkaWNhY2lvbj1lLmRlbmRlZDtcclxuICAgICAgICAgICAgdGhpcy50aXBvUGVyc29uYWw9ZS5kZXRhbGxlcy5tYXAoZT0+IG5ldyBNVGlwb1BlcnNvbmFsKGUpKTtcclxuICAgICAgICB9ICBlbHNlIHtcclxuICAgICAgICAgICAgdGhpcy5pc05ldz10cnVlO1xyXG4gICAgICAgIH0gICAgICAgXHJcbiAgICB9XHJcblxyXG4gICAgcHVibGljIGRhdGFJbnRlcmZhY2UoKTpJRGVkaWNhY2lvbntcclxuICAgICAgICByZXR1cm4ge1xyXG4gICAgICAgICAgICBpZF9lbnRlcnByaXNlOnRoaXMuaWRFbnRlcnByaXNlLnRvU3RyaW5nKCksXHJcbiAgICAgICAgICAgIGlkX2VtcHJlc2HCoDp0aGlzLmlkRW1wcmVzYSxcclxuICAgICAgICAgICAgaWRfZGVkaWNhY2lvbjogdGhpcy5pZERlZGljYWNpb24udG9TdHJpbmcoKSxcclxuICAgICAgICAgICAgY29kZGVkOiB0aGlzLmNvZGlnb0RlZGljYWNpb24sXHJcbiAgICAgICAgICAgIGRlbmRlZDogdGhpcy5kZW5vbWluYWNpb25EZWRpY2FjaW9uLFxyXG4gICAgICAgICAgICBkZXRhbGxlczogdGhpcy50aXBvUGVyc29uYWwubWFwKGZ1bmN0aW9uIChlKSB7IHJldHVybiBlLmRhdGFJbnRlcmZhY2UoKTsgfSksXHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59Il19
|
|
@@ -0,0 +1,343 @@
|
|
|
1
|
+
import { MBasicModel } from '../basic-model.model';
|
|
2
|
+
import { MPeriodoNomina } from './MPeriodoNomina.model';
|
|
3
|
+
import * as moment from 'moment';
|
|
4
|
+
export class MDefinicionNomina extends MBasicModel {
|
|
5
|
+
constructor(e = null) {
|
|
6
|
+
super();
|
|
7
|
+
this.idEnterprise = 0;
|
|
8
|
+
this.idEmpresa = 0;
|
|
9
|
+
this.idNomina = 0;
|
|
10
|
+
this.codigoNomina = '';
|
|
11
|
+
this.denominacionNomina = '';
|
|
12
|
+
this.tipoPeroiodoNomina = '';
|
|
13
|
+
this.descripcionPeriodoNomina = '';
|
|
14
|
+
this.anoCursoNomina = 0;
|
|
15
|
+
this.fechaInicioNomina = '1900-01-01';
|
|
16
|
+
this.periodoActualNomina = '001';
|
|
17
|
+
this.numeroPeriodoNomina = 0;
|
|
18
|
+
this.tipoNomina = 0;
|
|
19
|
+
this.racNomina = 0;
|
|
20
|
+
this.adelantoPagoNomina = 0;
|
|
21
|
+
this.nominaEspecial = 0;
|
|
22
|
+
this.nominaCestaTicket = 0;
|
|
23
|
+
this.cestaTicketMetodoNomina = '';
|
|
24
|
+
this.codigoOrganismoCestaTicket = '';
|
|
25
|
+
this.ContabilizacionNomina = 'CCP';
|
|
26
|
+
this.destinoComprobanteNomina = 'B';
|
|
27
|
+
this.idProveedor = 0;
|
|
28
|
+
this.cuentaContableNomina = '';
|
|
29
|
+
this.notaDebitoBanco = 0;
|
|
30
|
+
this.recepcionDocumentoNomina = 0;
|
|
31
|
+
this.tipoDocumentoNomina = 0;
|
|
32
|
+
this.contabilizacionAporteNomina = 'CCP';
|
|
33
|
+
this.recepcionDocumentoAporte = 0;
|
|
34
|
+
this.tipoDocumentoAporte = 0;
|
|
35
|
+
this.periodoARestableceNomina = '';
|
|
36
|
+
this.validarContabilizacionPeriodoAnteriorNomina = 0;
|
|
37
|
+
this.tituloReporteNomina = '';
|
|
38
|
+
this.contabilizacionFideicomisoNomina = 'CCP';
|
|
39
|
+
this.recepcionDocumentoFideicomiso = 0;
|
|
40
|
+
this.tipoDocumentoFideicomiso = 0;
|
|
41
|
+
this.idBeneficiarioFideicomiso = 0;
|
|
42
|
+
this.cuentaContableFideicomiso = '';
|
|
43
|
+
this.informacionParaReporte = '';
|
|
44
|
+
this.dividirConceptoQuincena = 0;
|
|
45
|
+
this.recepcionDocumentoPagoPersonalCheque = 0;
|
|
46
|
+
this.tipoDocumentoPagoPersonalCheque = 0;
|
|
47
|
+
this.estatusCuentaAlternativa = 0;
|
|
48
|
+
this.racObreroNomina = 0;
|
|
49
|
+
this.nominaLiquidacion = 0;
|
|
50
|
+
this.hojaTiempoNomina = 0;
|
|
51
|
+
this.codigoFuenteFinanciamiento = 0;
|
|
52
|
+
this.cerrarSinDisponibilidad = 0;
|
|
53
|
+
this.estatusAgruparAportes = 0;
|
|
54
|
+
this.recepcionDocumentoCausa = 0;
|
|
55
|
+
this.tipoDocumentoCausa = 0;
|
|
56
|
+
this.idConceptoClasificacionParaNomina = 0;
|
|
57
|
+
this.idConceptoClasificacionParaAporte = 0;
|
|
58
|
+
this.idConceptoClasificacionParaCausa = 0;
|
|
59
|
+
this.idConceptoClasificacionParaPersonal = 0;
|
|
60
|
+
this.idConceptoClasificacionParaFideicomiso = 0;
|
|
61
|
+
this.denominacionConceptoClasificacionParaNomina = '';
|
|
62
|
+
this.denominacionConceptoClasificacionParaAporte = '';
|
|
63
|
+
this.denominacionConceptoClasificacionParaCausa = '';
|
|
64
|
+
this.denominacionConceptoClasificacionParaPersonal = '';
|
|
65
|
+
this.denominacionConceptoClasificacionParaFideicomiso = '';
|
|
66
|
+
this.denominacionTipoDocumentoNomina = '';
|
|
67
|
+
this.denominacionTipoDocumentoCausa = '';
|
|
68
|
+
this.denominacionTipoDocumentoPagoPersonalCheque = '';
|
|
69
|
+
this.denominacionTipoDocumentoFideicomiso = '';
|
|
70
|
+
this.denominacionTipoDocumentoAporte = '';
|
|
71
|
+
this.codigoFuenteFinanciamientoMostar = '';
|
|
72
|
+
this.denominacionCodigoFuenteFinanciamiento = '';
|
|
73
|
+
this.nombreProveedor = '';
|
|
74
|
+
this.nombreBeneficiarioFideicomiso = '';
|
|
75
|
+
this.codigoCentroCosto = '';
|
|
76
|
+
this.cestaTickectSueltos = 0;
|
|
77
|
+
this.codigoUsuario = '';
|
|
78
|
+
this.denominacionCentroConsto = '';
|
|
79
|
+
this.denominacionCuentaContable = '';
|
|
80
|
+
this.idPeriodoNomina = 0;
|
|
81
|
+
this.idPeriodoRestablecerNomina = 0;
|
|
82
|
+
this.estatusIncidencia = 0;
|
|
83
|
+
this.segmentarPersonal = 3000;
|
|
84
|
+
this.periodosNomina = [];
|
|
85
|
+
if (e) {
|
|
86
|
+
this.idEnterprise = +e.id_enterprise;
|
|
87
|
+
this.idEmpresa = +e.id_empresa;
|
|
88
|
+
this.idNomina = parseInt(e.id_nomina);
|
|
89
|
+
this.codigoNomina = e.codnom;
|
|
90
|
+
this.denominacionNomina = e.dennom;
|
|
91
|
+
this.tipoPeroiodoNomina = e.tippernom;
|
|
92
|
+
this.descripcionPeriodoNomina = e.despernom;
|
|
93
|
+
this.anoCursoNomina = parseInt(e.anocurnom);
|
|
94
|
+
this.fechaInicioNomina = e.fecininom;
|
|
95
|
+
this.periodoActualNomina = e.peractnom;
|
|
96
|
+
this.numeroPeriodoNomina = parseInt(e.numpernom);
|
|
97
|
+
this.tipoNomina = parseInt(e.tipnom);
|
|
98
|
+
this.racNomina = parseInt(e.racnom);
|
|
99
|
+
this.adelantoPagoNomina = parseInt(e.adenom);
|
|
100
|
+
this.nominaEspecial = parseInt(e.espnom);
|
|
101
|
+
this.nominaCestaTicket = parseInt(e.ctnom);
|
|
102
|
+
this.cestaTicketMetodoNomina = e.ctmetnom;
|
|
103
|
+
this.codigoOrganismoCestaTicket = e.codorgcestic;
|
|
104
|
+
this.ContabilizacionNomina = e.consulnom;
|
|
105
|
+
this.destinoComprobanteNomina = e.descomnom;
|
|
106
|
+
this.idProveedor = parseInt(e.id_proveedor);
|
|
107
|
+
this.cuentaContableNomina = e.cueconnom;
|
|
108
|
+
this.notaDebitoBanco = parseInt(e.notdebnom);
|
|
109
|
+
this.recepcionDocumentoNomina = parseInt(e.recdocnom);
|
|
110
|
+
this.tipoDocumentoNomina = parseInt(e.tipdocnom);
|
|
111
|
+
this.contabilizacionAporteNomina = e.conaponom;
|
|
112
|
+
this.recepcionDocumentoAporte = parseInt(e.recdocapo);
|
|
113
|
+
this.tipoDocumentoAporte = parseInt(e.tipdocapo);
|
|
114
|
+
this.periodoARestableceNomina = e.perresnom;
|
|
115
|
+
this.validarContabilizacionPeriodoAnteriorNomina = parseInt(e.conpernom);
|
|
116
|
+
this.tituloReporteNomina = e.titrepnom;
|
|
117
|
+
this.contabilizacionFideicomisoNomina = e.confidnom;
|
|
118
|
+
this.recepcionDocumentoFideicomiso = parseInt(e.recdocfid);
|
|
119
|
+
this.tipoDocumentoFideicomiso = parseInt(e.tipdocfid);
|
|
120
|
+
this.idBeneficiarioFideicomiso = parseInt(e.id_benfid);
|
|
121
|
+
this.cuentaContableFideicomiso = e.cueconfid;
|
|
122
|
+
this.informacionParaReporte = e.informa;
|
|
123
|
+
this.dividirConceptoQuincena = parseInt(e.divcon);
|
|
124
|
+
this.recepcionDocumentoPagoPersonalCheque = parseInt(e.recdocpagperche);
|
|
125
|
+
this.tipoDocumentoPagoPersonalCheque = parseInt(e.tipdocpagperche);
|
|
126
|
+
this.estatusCuentaAlternativa = parseInt(e.estctaalt);
|
|
127
|
+
this.racObreroNomina = parseInt(e.racobrnom);
|
|
128
|
+
this.nominaLiquidacion = parseInt(e.nomliq);
|
|
129
|
+
this.hojaTiempoNomina = parseInt(e.hojtienom);
|
|
130
|
+
this.codigoFuenteFinanciamiento = parseInt(e.codfuefin);
|
|
131
|
+
this.cerrarSinDisponibilidad = parseInt(e.cersindis);
|
|
132
|
+
this.estatusAgruparAportes = parseInt(e.estagrapo);
|
|
133
|
+
this.recepcionDocumentoCausa = parseInt(e.recdoccaunom);
|
|
134
|
+
this.tipoDocumentoCausa = parseInt(e.tipdoccaunom);
|
|
135
|
+
this.idConceptoClasificacionParaNomina = parseInt(e.id_concxpnom);
|
|
136
|
+
this.idConceptoClasificacionParaAporte = parseInt(e.id_concxpapo);
|
|
137
|
+
this.idConceptoClasificacionParaCausa = parseInt(e.id_concxpcau);
|
|
138
|
+
this.idConceptoClasificacionParaPersonal = parseInt(e.id_concxpper);
|
|
139
|
+
this.idConceptoClasificacionParaFideicomiso = parseInt(e.id_concxpfid);
|
|
140
|
+
this.codigoCentroCosto = e.codcencos;
|
|
141
|
+
this.denominacionCentroConsto = e.dencencos;
|
|
142
|
+
this.cestaTickectSueltos = parseInt(e.cestiksuel);
|
|
143
|
+
this.denominacionCodigoFuenteFinanciamiento = e.codigoftefin + ' - ' + e.denfuefin;
|
|
144
|
+
this.denominacionCuentaContable = e.denctacont;
|
|
145
|
+
this.nombreProveedor = e.nompro;
|
|
146
|
+
this.estatusIncidencia = parseInt(e.estincidencia);
|
|
147
|
+
this.periodosNomina = e.periodos.map(e => new MPeriodoNomina(e));
|
|
148
|
+
this.idPeriodoNomina = parseInt(e.id_periodoactual);
|
|
149
|
+
this.idPeriodoRestablecerNomina = parseInt(e.id_perresnom);
|
|
150
|
+
this.segmentarPersonal = parseInt(e.segper);
|
|
151
|
+
}
|
|
152
|
+
else {
|
|
153
|
+
this.isNew = true;
|
|
154
|
+
}
|
|
155
|
+
}
|
|
156
|
+
dataInterface() {
|
|
157
|
+
this.getPeriodoNomina();
|
|
158
|
+
if (this.segmentarPersonal == 0) {
|
|
159
|
+
this.segmentarPersonal = 10000;
|
|
160
|
+
}
|
|
161
|
+
return {
|
|
162
|
+
id_enterprise: this.idEnterprise.toString(),
|
|
163
|
+
id_empresa: this.idEmpresa,
|
|
164
|
+
id_nomina: this.idNomina.toString(),
|
|
165
|
+
codnom: this.codigoNomina,
|
|
166
|
+
dennom: this.denominacionNomina,
|
|
167
|
+
tippernom: this.tipoPeroiodoNomina,
|
|
168
|
+
despernom: this.descripcionPeriodoNomina,
|
|
169
|
+
anocurnom: this.anoCursoNomina.toString(),
|
|
170
|
+
fecininom: this.fechaInicioNomina,
|
|
171
|
+
peractnom: this.periodoActualNomina,
|
|
172
|
+
numpernom: this.numeroPeriodoNomina.toString(),
|
|
173
|
+
tipnom: this.tipoNomina.toString(),
|
|
174
|
+
racnom: this.racNomina.toString(),
|
|
175
|
+
adenom: this.adelantoPagoNomina.toString(),
|
|
176
|
+
espnom: this.nominaEspecial.toString(),
|
|
177
|
+
ctnom: this.nominaCestaTicket.toString(),
|
|
178
|
+
ctmetnom: this.cestaTicketMetodoNomina,
|
|
179
|
+
codorgcestic: this.codigoOrganismoCestaTicket,
|
|
180
|
+
consulnom: this.ContabilizacionNomina,
|
|
181
|
+
descomnom: this.destinoComprobanteNomina,
|
|
182
|
+
id_proveedor: this.idProveedor.toString(),
|
|
183
|
+
cueconnom: this.cuentaContableNomina,
|
|
184
|
+
notdebnom: this.notaDebitoBanco.toString(),
|
|
185
|
+
recdocnom: this.recepcionDocumentoNomina.toString(),
|
|
186
|
+
tipdocnom: this.tipoDocumentoNomina.toString(),
|
|
187
|
+
conaponom: this.contabilizacionAporteNomina,
|
|
188
|
+
recdocapo: this.recepcionDocumentoAporte.toString(),
|
|
189
|
+
tipdocapo: this.tipoDocumentoAporte.toString(),
|
|
190
|
+
perresnom: this.periodoARestableceNomina,
|
|
191
|
+
conpernom: this.validarContabilizacionPeriodoAnteriorNomina.toString(),
|
|
192
|
+
titrepnom: this.tituloReporteNomina,
|
|
193
|
+
confidnom: this.contabilizacionFideicomisoNomina,
|
|
194
|
+
recdocfid: this.recepcionDocumentoFideicomiso.toString(),
|
|
195
|
+
tipdocfid: this.tipoDocumentoFideicomiso.toString(),
|
|
196
|
+
id_benfid: this.idBeneficiarioFideicomiso.toString(),
|
|
197
|
+
cueconfid: this.cuentaContableFideicomiso,
|
|
198
|
+
informa: this.informacionParaReporte,
|
|
199
|
+
divcon: this.dividirConceptoQuincena.toString(),
|
|
200
|
+
recdocpagperche: this.recepcionDocumentoPagoPersonalCheque.toString(),
|
|
201
|
+
tipdocpagperche: this.tipoDocumentoPagoPersonalCheque.toString(),
|
|
202
|
+
estctaalt: this.estatusCuentaAlternativa.toString(),
|
|
203
|
+
racobrnom: this.racObreroNomina.toString(),
|
|
204
|
+
nomliq: this.nominaLiquidacion.toString(),
|
|
205
|
+
hojtienom: this.hojaTiempoNomina.toString(),
|
|
206
|
+
codfuefin: this.codigoFuenteFinanciamiento.toString(),
|
|
207
|
+
cersindis: this.cerrarSinDisponibilidad.toString(),
|
|
208
|
+
estagrapo: this.estatusAgruparAportes.toString(),
|
|
209
|
+
recdoccaunom: this.recepcionDocumentoCausa.toString(),
|
|
210
|
+
tipdoccaunom: this.tipoDocumentoCausa.toString(),
|
|
211
|
+
id_concxpnom: this.idConceptoClasificacionParaNomina.toString(),
|
|
212
|
+
id_concxpapo: this.idConceptoClasificacionParaAporte.toString(),
|
|
213
|
+
id_concxpcau: this.idConceptoClasificacionParaCausa.toString(),
|
|
214
|
+
id_concxpper: this.idConceptoClasificacionParaPersonal.toString(),
|
|
215
|
+
id_concxpfid: this.idConceptoClasificacionParaFideicomiso.toString(),
|
|
216
|
+
cestiksuel: this.cestaTickectSueltos.toString(),
|
|
217
|
+
codcencos: this.codigoCentroCosto,
|
|
218
|
+
codusu: this.codigoUsuario,
|
|
219
|
+
codigoftefin: this.codigoFuenteFinanciamiento.toString(),
|
|
220
|
+
denfuefin: this.denominacionCodigoFuenteFinanciamiento,
|
|
221
|
+
dencencos: this.denominacionCentroConsto,
|
|
222
|
+
denctacont: this.denominacionCuentaContable,
|
|
223
|
+
nompro: this.nombreProveedor,
|
|
224
|
+
id_periodoactual: this.idPeriodoNomina.toString(),
|
|
225
|
+
id_perresnom: this.idPeriodoRestablecerNomina.toString(),
|
|
226
|
+
estincidencia: this.estatusIncidencia.toString(),
|
|
227
|
+
segper: this.segmentarPersonal.toString(),
|
|
228
|
+
periodos: this.periodosNomina.map((function (e) { return e.dataInterface(); })),
|
|
229
|
+
};
|
|
230
|
+
}
|
|
231
|
+
getPeriodoNomina() {
|
|
232
|
+
if (this.tipoPeroiodoNomina == '0') {
|
|
233
|
+
this.numeroPeriodoNomina = 52;
|
|
234
|
+
}
|
|
235
|
+
else if (this.tipoPeroiodoNomina == '1') {
|
|
236
|
+
this.numeroPeriodoNomina = 24;
|
|
237
|
+
}
|
|
238
|
+
else if (this.tipoPeroiodoNomina == '2') {
|
|
239
|
+
this.numeroPeriodoNomina = 12;
|
|
240
|
+
}
|
|
241
|
+
else if (this.tipoPeroiodoNomina == '3') {
|
|
242
|
+
this.numeroPeriodoNomina = 1;
|
|
243
|
+
}
|
|
244
|
+
}
|
|
245
|
+
/**
|
|
246
|
+
*
|
|
247
|
+
* @returns Tipo de nomina {Semanal, Quincenal,Mensual,Anual}
|
|
248
|
+
*/
|
|
249
|
+
denominacionNumeroNomina() {
|
|
250
|
+
if (this.numeroPeriodoNomina == 52) {
|
|
251
|
+
return 'Semanal';
|
|
252
|
+
}
|
|
253
|
+
else if (this.numeroPeriodoNomina == 24) {
|
|
254
|
+
return 'Quincenal';
|
|
255
|
+
}
|
|
256
|
+
else if (this.numeroPeriodoNomina == 12) {
|
|
257
|
+
return 'Mensual';
|
|
258
|
+
}
|
|
259
|
+
else if (this.numeroPeriodoNomina == 1) {
|
|
260
|
+
return 'Anual';
|
|
261
|
+
}
|
|
262
|
+
}
|
|
263
|
+
/**
|
|
264
|
+
*
|
|
265
|
+
* @returns posicion del array donde esta el periodo actual de la nomina, de lo contrario -1
|
|
266
|
+
*/
|
|
267
|
+
indice() {
|
|
268
|
+
return this.periodosNomina.findIndex(e => e.codigoPeriodo == this.periodoActualNomina);
|
|
269
|
+
}
|
|
270
|
+
/**
|
|
271
|
+
* @returns Fecha final de la nomina
|
|
272
|
+
*/
|
|
273
|
+
fechaFinalNomina() {
|
|
274
|
+
let i = this.periodosNomina.length - 1;
|
|
275
|
+
let fechaFin = this.periodosNomina[i].fechaHastaperiodo;
|
|
276
|
+
return moment(fechaFin).format('DD/MM/YYYY');
|
|
277
|
+
}
|
|
278
|
+
/**
|
|
279
|
+
* @returns fecha de inicio a fin de la nomina
|
|
280
|
+
*/
|
|
281
|
+
fechaNomina() {
|
|
282
|
+
let i = this.periodosNomina.length - 1;
|
|
283
|
+
let fechaFin = this.periodosNomina[i].fechaHastaperiodo;
|
|
284
|
+
let fechaIni = this.periodosNomina[i].fechaDesdePeriodo;
|
|
285
|
+
return moment(fechaIni).format('DD/MM/YYYY') + ' al ' + moment(fechaFin).format('DD/MM/YYYY');
|
|
286
|
+
}
|
|
287
|
+
/**
|
|
288
|
+
*
|
|
289
|
+
* @returns Retorna es estatus del periodo actual de la nomina {
|
|
290
|
+
* Sin Calcular, contabilizada,Periodo Contabilizado,
|
|
291
|
+
* Periodo y Aporte Contabilizado, Aporte Contabilizado }
|
|
292
|
+
*/
|
|
293
|
+
estatusNomina() {
|
|
294
|
+
let i = this.indice();
|
|
295
|
+
if (i >= 0) {
|
|
296
|
+
return this.periodosNomina[i].estatusPeriodo();
|
|
297
|
+
}
|
|
298
|
+
}
|
|
299
|
+
/**
|
|
300
|
+
*
|
|
301
|
+
* @returns Si la nomina puede ser modificada (verdadero, falso)
|
|
302
|
+
*/
|
|
303
|
+
editable() {
|
|
304
|
+
let i = this.indice();
|
|
305
|
+
return this.periodosNomina[i].periodoEditable();
|
|
306
|
+
}
|
|
307
|
+
/**
|
|
308
|
+
* @returns indica si el perido actual esta abierto
|
|
309
|
+
* @returns verdadero/falso
|
|
310
|
+
*/
|
|
311
|
+
periodoCerrado() {
|
|
312
|
+
let i = this.indice();
|
|
313
|
+
return this.periodosNomina[i].cerrarPeriodo == 1;
|
|
314
|
+
}
|
|
315
|
+
/**
|
|
316
|
+
* @returns Fecha inicio del periodo actual de la nomina
|
|
317
|
+
*/
|
|
318
|
+
fechaIncioPeriodoActual() {
|
|
319
|
+
let i = this.indice();
|
|
320
|
+
return this.periodosNomina[i].fechaDesdePeriodo;
|
|
321
|
+
}
|
|
322
|
+
/**
|
|
323
|
+
* @returns Fecha final del periodo actual de la nomina
|
|
324
|
+
*/
|
|
325
|
+
fechaFinaPeriodoActual() {
|
|
326
|
+
return this.periodosNomina[this.indice()].fechaHastaperiodo;
|
|
327
|
+
}
|
|
328
|
+
ultimoPeriodoNomina() {
|
|
329
|
+
if (this.numeroPeriodoNomina == 52) {
|
|
330
|
+
return '052';
|
|
331
|
+
}
|
|
332
|
+
else if (this.numeroPeriodoNomina == 24) {
|
|
333
|
+
return '024';
|
|
334
|
+
}
|
|
335
|
+
else if (this.numeroPeriodoNomina == 12) {
|
|
336
|
+
return '012';
|
|
337
|
+
}
|
|
338
|
+
else if (this.numeroPeriodoNomina == 1) {
|
|
339
|
+
return '001';
|
|
340
|
+
}
|
|
341
|
+
}
|
|
342
|
+
}
|
|
343
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiTURlZmluaWNpb25Ob21pbmEubW9kZWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zaWdlc3Avc3JjL2xpYi9jb3JlL21vZGVscy9TTk8vTURlZmluaWNpb25Ob21pbmEubW9kZWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBRW5ELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUN4RCxPQUFPLEtBQUksTUFBTSxNQUFNLFFBQVEsQ0FBQztBQUVoQyxNQUFNLE9BQU8saUJBQWtCLFNBQVEsV0FBVztJQWdGaEQsWUFBWSxJQUFVLElBQUk7UUFDeEIsS0FBSyxFQUFFLENBQUM7UUFoRkgsaUJBQVksR0FBUSxDQUFDLENBQUM7UUFDdEIsY0FBUyxHQUFRLENBQUMsQ0FBQztRQUNuQixhQUFRLEdBQVEsQ0FBQyxDQUFDO1FBQ2xCLGlCQUFZLEdBQVEsRUFBRSxDQUFDO1FBQ3ZCLHVCQUFrQixHQUFRLEVBQUUsQ0FBQztRQUM3Qix1QkFBa0IsR0FBUSxFQUFFLENBQUM7UUFDN0IsNkJBQXdCLEdBQVEsRUFBRSxDQUFDO1FBQ25DLG1CQUFjLEdBQVEsQ0FBQyxDQUFDO1FBQ3hCLHNCQUFpQixHQUFRLFlBQVksQ0FBQztRQUN0Qyx3QkFBbUIsR0FBUSxLQUFLLENBQUM7UUFDakMsd0JBQW1CLEdBQVEsQ0FBQyxDQUFDO1FBQzdCLGVBQVUsR0FBUSxDQUFDLENBQUM7UUFDcEIsY0FBUyxHQUFRLENBQUMsQ0FBQztRQUNuQix1QkFBa0IsR0FBUSxDQUFDLENBQUM7UUFDNUIsbUJBQWMsR0FBUSxDQUFDLENBQUM7UUFDeEIsc0JBQWlCLEdBQVEsQ0FBQyxDQUFDO1FBQzNCLDRCQUF1QixHQUFRLEVBQUUsQ0FBQztRQUNsQywrQkFBMEIsR0FBUSxFQUFFLENBQUM7UUFDckMsMEJBQXFCLEdBQVEsS0FBSyxDQUFDO1FBQ25DLDZCQUF3QixHQUFRLEdBQUcsQ0FBQztRQUNwQyxnQkFBVyxHQUFRLENBQUMsQ0FBQztRQUNyQix5QkFBb0IsR0FBUSxFQUFFLENBQUM7UUFDL0Isb0JBQWUsR0FBUSxDQUFDLENBQUM7UUFDekIsNkJBQXdCLEdBQVEsQ0FBQyxDQUFDO1FBQ2xDLHdCQUFtQixHQUFRLENBQUMsQ0FBQztRQUM3QixnQ0FBMkIsR0FBUSxLQUFLLENBQUM7UUFDekMsNkJBQXdCLEdBQVEsQ0FBQyxDQUFDO1FBQ2xDLHdCQUFtQixHQUFRLENBQUMsQ0FBQztRQUM3Qiw2QkFBd0IsR0FBUSxFQUFFLENBQUM7UUFDbkMsZ0RBQTJDLEdBQVEsQ0FBQyxDQUFDO1FBQ3JELHdCQUFtQixHQUFRLEVBQUUsQ0FBQztRQUM5QixxQ0FBZ0MsR0FBUSxLQUFLLENBQUM7UUFDOUMsa0NBQTZCLEdBQVEsQ0FBQyxDQUFDO1FBQ3ZDLDZCQUF3QixHQUFRLENBQUMsQ0FBQztRQUNsQyw4QkFBeUIsR0FBUSxDQUFDLENBQUM7UUFDbkMsOEJBQXlCLEdBQVEsRUFBRSxDQUFDO1FBQ3BDLDJCQUFzQixHQUFRLEVBQUUsQ0FBQztRQUNqQyw0QkFBdUIsR0FBUSxDQUFDLENBQUM7UUFDakMseUNBQW9DLEdBQVEsQ0FBQyxDQUFDO1FBQzlDLG9DQUErQixHQUFRLENBQUMsQ0FBQztRQUN6Qyw2QkFBd0IsR0FBUSxDQUFDLENBQUM7UUFDbEMsb0JBQWUsR0FBUSxDQUFDLENBQUM7UUFDekIsc0JBQWlCLEdBQVEsQ0FBQyxDQUFDO1FBQzNCLHFCQUFnQixHQUFRLENBQUMsQ0FBQztRQUMxQiwrQkFBMEIsR0FBUSxDQUFDLENBQUM7UUFDcEMsNEJBQXVCLEdBQVEsQ0FBQyxDQUFDO1FBQ2pDLDBCQUFxQixHQUFRLENBQUMsQ0FBQztRQUMvQiw0QkFBdUIsR0FBUSxDQUFDLENBQUM7UUFDakMsdUJBQWtCLEdBQVEsQ0FBQyxDQUFDO1FBQzVCLHNDQUFpQyxHQUFRLENBQUMsQ0FBQztRQUMzQyxzQ0FBaUMsR0FBUSxDQUFDLENBQUM7UUFDM0MscUNBQWdDLEdBQVEsQ0FBQyxDQUFDO1FBQzFDLHdDQUFtQyxHQUFRLENBQUMsQ0FBQztRQUM3QywyQ0FBc0MsR0FBUSxDQUFDLENBQUM7UUFDaEQsZ0RBQTJDLEdBQUMsRUFBRSxDQUFDO1FBQy9DLGdEQUEyQyxHQUFDLEVBQUUsQ0FBQztRQUMvQywrQ0FBMEMsR0FBQyxFQUFFLENBQUM7UUFDOUMsa0RBQTZDLEdBQUMsRUFBRSxDQUFDO1FBQ2pELHFEQUFnRCxHQUFDLEVBQUUsQ0FBQztRQUNwRCxvQ0FBK0IsR0FBUSxFQUFFLENBQUM7UUFDMUMsbUNBQThCLEdBQVEsRUFBRSxDQUFDO1FBQ3pDLGdEQUEyQyxHQUFRLEVBQUUsQ0FBQztRQUN0RCx5Q0FBb0MsR0FBUSxFQUFFLENBQUM7UUFDL0Msb0NBQStCLEdBQUMsRUFBRSxDQUFDO1FBQ25DLHFDQUFnQyxHQUFRLEVBQUUsQ0FBQztRQUMzQywyQ0FBc0MsR0FBUSxFQUFFLENBQUM7UUFDakQsb0JBQWUsR0FBUSxFQUFFLENBQUM7UUFDMUIsa0NBQTZCLEdBQVEsRUFBRSxDQUFDO1FBQ3hDLHNCQUFpQixHQUFRLEVBQUUsQ0FBQztRQUM1Qix3QkFBbUIsR0FBUSxDQUFDLENBQUM7UUFDN0Isa0JBQWEsR0FBUSxFQUFFLENBQUM7UUFDeEIsNkJBQXdCLEdBQVEsRUFBRSxDQUFDO1FBQ25DLCtCQUEwQixHQUFRLEVBQUUsQ0FBQztRQUNyQyxvQkFBZSxHQUFRLENBQUMsQ0FBQztRQUN6QiwrQkFBMEIsR0FBUSxDQUFDLENBQUM7UUFDcEMsc0JBQWlCLEdBQVEsQ0FBQyxDQUFDO1FBQzVCLHNCQUFpQixHQUFRLElBQUksQ0FBQztRQUM3QixtQkFBYyxHQUFrQixFQUFFLENBQUM7UUFJdEMsSUFBSSxDQUFDLEVBQUM7WUFDSixJQUFJLENBQUMsWUFBWSxHQUFDLENBQUMsQ0FBQyxDQUFDLGFBQWEsQ0FBQztZQUNuQyxJQUFJLENBQUMsU0FBUyxHQUFDLENBQUMsQ0FBQyxDQUFDLFVBQVUsQ0FBQTtZQUM1QixJQUFJLENBQUMsUUFBUSxHQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDLENBQUM7WUFDbEMsSUFBSSxDQUFDLFlBQVksR0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDO1lBQzNCLElBQUksQ0FBQyxrQkFBa0IsR0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDO1lBQ2pDLElBQUksQ0FBQyxrQkFBa0IsR0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDO1lBQ3BDLElBQUksQ0FBQyx3QkFBd0IsR0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDO1lBQzFDLElBQUksQ0FBQyxjQUFjLEdBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUMsQ0FBQztZQUMxQyxJQUFJLENBQUMsaUJBQWlCLEdBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQztZQUNuQyxJQUFJLENBQUMsbUJBQW1CLEdBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQztZQUNyQyxJQUFJLENBQUMsbUJBQW1CLEdBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUMsQ0FBQztZQUMvQyxJQUFJLENBQUMsVUFBVSxHQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUM7WUFDbkMsSUFBSSxDQUFDLFNBQVMsR0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDO1lBQ2xDLElBQUksQ0FBQyxrQkFBa0IsR0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDO1lBQzNDLElBQUksQ0FBQyxjQUFjLEdBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQztZQUN2QyxJQUFJLENBQUMsaUJBQWlCLEdBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQztZQUN6QyxJQUFJLENBQUMsdUJBQXVCLEdBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQztZQUN4QyxJQUFJLENBQUMsMEJBQTBCLEdBQUMsQ0FBQyxDQUFDLFlBQVksQ0FBQztZQUMvQyxJQUFJLENBQUMscUJBQXFCLEdBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQztZQUN2QyxJQUFJLENBQUMsd0JBQXdCLEdBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQztZQUMxQyxJQUFJLENBQUMsV0FBVyxHQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsWUFBWSxDQUFDLENBQUM7WUFDMUMsSUFBSSxDQUFDLG9CQUFvQixHQUFDLENBQUMsQ0FBQyxTQUFTLENBQUM7WUFDdEMsSUFBSSxDQUFDLGVBQWUsR0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxDQUFDO1lBQzNDLElBQUksQ0FBQyx3QkFBd0IsR0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxDQUFDO1lBQ3BELElBQUksQ0FBQyxtQkFBbUIsR0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxDQUFDO1lBQy9DLElBQUksQ0FBQywyQkFBMkIsR0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDO1lBQzdDLElBQUksQ0FBQyx3QkFBd0IsR0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxDQUFDO1lBQ3BELElBQUksQ0FBQyxtQkFBbUIsR0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxDQUFDO1lBQy9DLElBQUksQ0FBQyx3QkFBd0IsR0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDO1lBQzFDLElBQUksQ0FBQywyQ0FBMkMsR0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxDQUFDO1lBQ3ZFLElBQUksQ0FBQyxtQkFBbUIsR0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDO1lBQ3JDLElBQUksQ0FBQyxnQ0FBZ0MsR0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDO1lBQ2xELElBQUksQ0FBQyw2QkFBNkIsR0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxDQUFDO1lBQ3pELElBQUksQ0FBQyx3QkFBd0IsR0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxDQUFDO1lBQ3BELElBQUksQ0FBQyx5QkFBeUIsR0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxDQUFDO1lBQ3JELElBQUksQ0FBQyx5QkFBeUIsR0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDO1lBQzNDLElBQUksQ0FBQyxzQkFBc0IsR0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDO1lBQ3RDLElBQUksQ0FBQyx1QkFBdUIsR0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDO1lBQ2hELElBQUksQ0FBQyxvQ0FBb0MsR0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLGVBQWUsQ0FBQyxDQUFDO1lBQ3RFLElBQUksQ0FBQywrQkFBK0IsR0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLGVBQWUsQ0FBQyxDQUFDO1lBQ2pFLElBQUksQ0FBQyx3QkFBd0IsR0FBRSxRQUFRLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxDQUFDO1lBQ3JELElBQUksQ0FBQyxlQUFlLEdBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUMsQ0FBQztZQUMzQyxJQUFJLENBQUMsaUJBQWlCLEdBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQztZQUMxQyxJQUFJLENBQUMsZ0JBQWdCLEdBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUMsQ0FBQztZQUM1QyxJQUFJLENBQUMsMEJBQTBCLEdBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUMsQ0FBQztZQUN0RCxJQUFJLENBQUMsdUJBQXVCLEdBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUMsQ0FBQztZQUNuRCxJQUFJLENBQUMscUJBQXFCLEdBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUMsQ0FBQztZQUNqRCxJQUFJLENBQUMsdUJBQXVCLEdBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxZQUFZLENBQUMsQ0FBQztZQUN0RCxJQUFJLENBQUMsa0JBQWtCLEdBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxZQUFZLENBQUMsQ0FBQztZQUNqRCxJQUFJLENBQUMsaUNBQWlDLEdBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxZQUFZLENBQUMsQ0FBQztZQUNoRSxJQUFJLENBQUMsaUNBQWlDLEdBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxZQUFZLENBQUMsQ0FBQztZQUNoRSxJQUFJLENBQUMsZ0NBQWdDLEdBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxZQUFZLENBQUMsQ0FBQztZQUMvRCxJQUFJLENBQUMsbUNBQW1DLEdBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxZQUFZLENBQUMsQ0FBQztZQUNsRSxJQUFJLENBQUMsc0NBQXNDLEdBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxZQUFZLENBQUMsQ0FBQztZQUNyRSxJQUFJLENBQUMsaUJBQWlCLEdBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQTtZQUNsQyxJQUFJLENBQUMsd0JBQXdCLEdBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQTtZQUN6QyxJQUFJLENBQUMsbUJBQW1CLEdBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxVQUFVLENBQUMsQ0FBQTtZQUMvQyxJQUFJLENBQUMsc0NBQXNDLEdBQUMsQ0FBQyxDQUFDLFlBQVksR0FBQyxLQUFLLEdBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQTtZQUM1RSxJQUFJLENBQUMsMEJBQTBCLEdBQUUsQ0FBQyxDQUFDLFVBQVUsQ0FBQTtZQUM3QyxJQUFJLENBQUMsZUFBZSxHQUFFLENBQUMsQ0FBQyxNQUFNLENBQUM7WUFDL0IsSUFBSSxDQUFDLGlCQUFpQixHQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsYUFBYSxDQUFDLENBQUM7WUFDakQsSUFBSSxDQUFDLGNBQWMsR0FBQyxDQUFDLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUEsRUFBRSxDQUFBLElBQUksY0FBYyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFDN0QsSUFBSSxDQUFDLGVBQWUsR0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLGdCQUFnQixDQUFDLENBQUM7WUFDbEQsSUFBSSxDQUFDLDBCQUEwQixHQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsWUFBWSxDQUFDLENBQUM7WUFDekQsSUFBSSxDQUFDLGlCQUFpQixHQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUM7U0FDN0M7YUFBTTtZQUNMLElBQUksQ0FBQyxLQUFLLEdBQUMsSUFBSSxDQUFDO1NBQ2pCO0lBQ0wsQ0FBQztJQUVNLGFBQWE7UUFDaEIsSUFBSSxDQUFFLGdCQUFnQixFQUFFLENBQUM7UUFDekIsSUFBRyxJQUFJLENBQUMsaUJBQWlCLElBQUUsQ0FBQyxFQUFDO1lBQzNCLElBQUksQ0FBQyxpQkFBaUIsR0FBQyxLQUFLLENBQUM7U0FDOUI7UUFDRCxPQUFPO1lBQ0wsYUFBYSxFQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsUUFBUSxFQUFFO1lBQzFDLFVBQVUsRUFBRSxJQUFJLENBQUMsU0FBUztZQUM1QixTQUFTLEVBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxRQUFRLEVBQUU7WUFDOUIsTUFBTSxFQUFDLElBQUksQ0FBQyxZQUFZO1lBQ3hCLE1BQU0sRUFBQyxJQUFJLENBQUMsa0JBQWtCO1lBQzlCLFNBQVMsRUFBQyxJQUFJLENBQUMsa0JBQWtCO1lBQ2pDLFNBQVMsRUFBQyxJQUFJLENBQUMsd0JBQXdCO1lBQ3ZDLFNBQVMsRUFBQyxJQUFJLENBQUMsY0FBYyxDQUFDLFFBQVEsRUFBRTtZQUN4QyxTQUFTLEVBQUMsSUFBSSxDQUFDLGlCQUFpQjtZQUNoQyxTQUFTLEVBQUMsSUFBSSxDQUFDLG1CQUFtQjtZQUNsQyxTQUFTLEVBQUMsSUFBSSxDQUFDLG1CQUFtQixDQUFDLFFBQVEsRUFBRTtZQUM3QyxNQUFNLEVBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxRQUFRLEVBQUU7WUFDakMsTUFBTSxFQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsUUFBUSxFQUFFO1lBQ2hDLE1BQU0sRUFBQyxJQUFJLENBQUMsa0JBQWtCLENBQUMsUUFBUSxFQUFFO1lBQ3pDLE1BQU0sRUFBQyxJQUFJLENBQUMsY0FBYyxDQUFDLFFBQVEsRUFBRTtZQUNyQyxLQUFLLEVBQUMsSUFBSSxDQUFDLGlCQUFpQixDQUFDLFFBQVEsRUFBRTtZQUN2QyxRQUFRLEVBQUMsSUFBSSxDQUFDLHVCQUF1QjtZQUNyQyxZQUFZLEVBQUMsSUFBSSxDQUFDLDBCQUEwQjtZQUM1QyxTQUFTLEVBQUMsSUFBSSxDQUFDLHFCQUFxQjtZQUNwQyxTQUFTLEVBQUMsSUFBSSxDQUFDLHdCQUF3QjtZQUN2QyxZQUFZLEVBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxRQUFRLEVBQUU7WUFDeEMsU0FBUyxFQUFDLElBQUksQ0FBQyxvQkFBb0I7WUFDbkMsU0FBUyxFQUFDLElBQUksQ0FBQyxlQUFlLENBQUMsUUFBUSxFQUFFO1lBQ3pDLFNBQVMsRUFBQyxJQUFJLENBQUMsd0JBQXdCLENBQUMsUUFBUSxFQUFFO1lBQ2xELFNBQVMsRUFBQyxJQUFJLENBQUMsbUJBQW1CLENBQUMsUUFBUSxFQUFFO1lBQzdDLFNBQVMsRUFBQyxJQUFJLENBQUMsMkJBQTJCO1lBQzFDLFNBQVMsRUFBQyxJQUFJLENBQUMsd0JBQXdCLENBQUMsUUFBUSxFQUFFO1lBQ2xELFNBQVMsRUFBQyxJQUFJLENBQUMsbUJBQW1CLENBQUMsUUFBUSxFQUFFO1lBQzdDLFNBQVMsRUFBQyxJQUFJLENBQUMsd0JBQXdCO1lBQ3ZDLFNBQVMsRUFBQyxJQUFJLENBQUMsMkNBQTJDLENBQUMsUUFBUSxFQUFFO1lBQ3JFLFNBQVMsRUFBQyxJQUFJLENBQUMsbUJBQW1CO1lBQ2xDLFNBQVMsRUFBQyxJQUFJLENBQUMsZ0NBQWdDO1lBQy9DLFNBQVMsRUFBQyxJQUFJLENBQUMsNkJBQTZCLENBQUMsUUFBUSxFQUFFO1lBQ3ZELFNBQVMsRUFBQyxJQUFJLENBQUMsd0JBQXdCLENBQUMsUUFBUSxFQUFFO1lBQ2xELFNBQVMsRUFBQyxJQUFJLENBQUMseUJBQXlCLENBQUMsUUFBUSxFQUFFO1lBQ25ELFNBQVMsRUFBQyxJQUFJLENBQUMseUJBQXlCO1lBQ3hDLE9BQU8sRUFBQyxJQUFJLENBQUMsc0JBQXNCO1lBQ25DLE1BQU0sRUFBQyxJQUFJLENBQUMsdUJBQXVCLENBQUMsUUFBUSxFQUFFO1lBQzlDLGVBQWUsRUFBQyxJQUFJLENBQUMsb0NBQW9DLENBQUMsUUFBUSxFQUFFO1lBQ3BFLGVBQWUsRUFBQyxJQUFJLENBQUMsK0JBQStCLENBQUMsUUFBUSxFQUFFO1lBQy9ELFNBQVMsRUFBQyxJQUFJLENBQUMsd0JBQXdCLENBQUUsUUFBUSxFQUFFO1lBQ25ELFNBQVMsRUFBQyxJQUFJLENBQUMsZUFBZSxDQUFDLFFBQVEsRUFBRTtZQUN6QyxNQUFNLEVBQUMsSUFBSSxDQUFDLGlCQUFpQixDQUFDLFFBQVEsRUFBRTtZQUN4QyxTQUFTLEVBQUMsSUFBSSxDQUFDLGdCQUFnQixDQUFDLFFBQVEsRUFBRTtZQUMxQyxTQUFTLEVBQUMsSUFBSSxDQUFDLDBCQUEwQixDQUFDLFFBQVEsRUFBRTtZQUNwRCxTQUFTLEVBQUMsSUFBSSxDQUFDLHVCQUF1QixDQUFDLFFBQVEsRUFBRTtZQUNqRCxTQUFTLEVBQUMsSUFBSSxDQUFDLHFCQUFxQixDQUFDLFFBQVEsRUFBRTtZQUMvQyxZQUFZLEVBQUMsSUFBSSxDQUFDLHVCQUF1QixDQUFDLFFBQVEsRUFBRTtZQUNwRCxZQUFZLEVBQUMsSUFBSSxDQUFDLGtCQUFrQixDQUFDLFFBQVEsRUFBRTtZQUMvQyxZQUFZLEVBQUMsSUFBSSxDQUFDLGlDQUFpQyxDQUFDLFFBQVEsRUFBRTtZQUM5RCxZQUFZLEVBQUMsSUFBSSxDQUFDLGlDQUFpQyxDQUFDLFFBQVEsRUFBRTtZQUM5RCxZQUFZLEVBQUMsSUFBSSxDQUFDLGdDQUFnQyxDQUFDLFFBQVEsRUFBRTtZQUM3RCxZQUFZLEVBQUMsSUFBSSxDQUFDLG1DQUFtQyxDQUFDLFFBQVEsRUFBRTtZQUNoRSxZQUFZLEVBQUMsSUFBSSxDQUFDLHNDQUFzQyxDQUFDLFFBQVEsRUFBRTtZQUNuRSxVQUFVLEVBQUMsSUFBSSxDQUFDLG1CQUFtQixDQUFDLFFBQVEsRUFBRTtZQUM5QyxTQUFTLEVBQUMsSUFBSSxDQUFDLGlCQUFpQjtZQUNoQyxNQUFNLEVBQUMsSUFBSSxDQUFDLGFBQWE7WUFDekIsWUFBWSxFQUFDLElBQUksQ0FBQywwQkFBMEIsQ0FBQyxRQUFRLEVBQUU7WUFDdkQsU0FBUyxFQUFDLElBQUksQ0FBQyxzQ0FBc0M7WUFDckQsU0FBUyxFQUFFLElBQUksQ0FBQyx3QkFBd0I7WUFDeEMsVUFBVSxFQUFFLElBQUksQ0FBQywwQkFBMEI7WUFDM0MsTUFBTSxFQUFDLElBQUksQ0FBQyxlQUFlO1lBQzNCLGdCQUFnQixFQUFDLElBQUksQ0FBQyxlQUFlLENBQUMsUUFBUSxFQUFFO1lBQ2hELFlBQVksRUFBQyxJQUFJLENBQUMsMEJBQTBCLENBQUMsUUFBUSxFQUFFO1lBQ3ZELGFBQWEsRUFBQyxJQUFJLENBQUMsaUJBQWlCLENBQUMsUUFBUSxFQUFFO1lBQy9DLE1BQU0sRUFBQyxJQUFJLENBQUMsaUJBQWlCLENBQUMsUUFBUSxFQUFFO1lBQ3hDLFFBQVEsRUFBQyxJQUFJLENBQUMsY0FBYyxDQUFDLEdBQUcsQ0FBQyxDQUFDLFVBQVUsQ0FBQyxJQUFJLE9BQU8sQ0FBQyxDQUFDLGFBQWEsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7U0FDakYsQ0FBQTtJQUNMLENBQUM7SUFFTSxnQkFBZ0I7UUFDckIsSUFBSSxJQUFJLENBQUMsa0JBQWtCLElBQUUsR0FBRyxFQUFDO1lBQy9CLElBQUksQ0FBQyxtQkFBbUIsR0FBQyxFQUFFLENBQUE7U0FDNUI7YUFBTyxJQUFJLElBQUksQ0FBQyxrQkFBa0IsSUFBRSxHQUFHLEVBQUM7WUFDdkMsSUFBSSxDQUFDLG1CQUFtQixHQUFDLEVBQUUsQ0FBQTtTQUM1QjthQUFPLElBQUksSUFBSSxDQUFDLGtCQUFrQixJQUFFLEdBQUcsRUFBQztZQUN2QyxJQUFJLENBQUMsbUJBQW1CLEdBQUMsRUFBRSxDQUFBO1NBQzVCO2FBQU8sSUFBSSxJQUFJLENBQUMsa0JBQWtCLElBQUUsR0FBRyxFQUFDO1lBQ3ZDLElBQUksQ0FBQyxtQkFBbUIsR0FBQyxDQUFDLENBQUE7U0FDM0I7SUFDSCxDQUFDO0lBRUQ7OztPQUdHO0lBQ0ksd0JBQXdCO1FBQzdCLElBQUksSUFBSSxDQUFDLG1CQUFtQixJQUFFLEVBQUUsRUFBQztZQUMvQixPQUFPLFNBQVMsQ0FBQTtTQUNqQjthQUFPLElBQUksSUFBSSxDQUFDLG1CQUFtQixJQUFFLEVBQUUsRUFBQztZQUN2QyxPQUFPLFdBQVcsQ0FBQTtTQUNuQjthQUFPLElBQUksSUFBSSxDQUFDLG1CQUFtQixJQUFFLEVBQUUsRUFBQztZQUN2QyxPQUFPLFNBQVMsQ0FBQTtTQUNqQjthQUFPLElBQUksSUFBSSxDQUFDLG1CQUFtQixJQUFFLENBQUMsRUFBQztZQUN0QyxPQUFPLE9BQU8sQ0FBQTtTQUNmO0lBQ0gsQ0FBQztJQUVEOzs7T0FHRztJQUNJLE1BQU07UUFDWCxPQUFPLElBQUksQ0FBQyxjQUFjLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQSxFQUFFLENBQUMsQ0FBQyxDQUFDLGFBQWEsSUFBRyxJQUFJLENBQUMsbUJBQW1CLENBQUMsQ0FBQztJQUN2RixDQUFDO0lBR0Q7O09BRUc7SUFDSSxnQkFBZ0I7UUFDckIsSUFBSSxDQUFDLEdBQUUsSUFBSSxDQUFDLGNBQWMsQ0FBQyxNQUFNLEdBQUMsQ0FBQyxDQUFDO1FBQ3BDLElBQUksUUFBUSxHQUFFLElBQUksQ0FBQyxjQUFjLENBQUMsQ0FBQyxDQUFDLENBQUMsaUJBQWlCLENBQUM7UUFDdkQsT0FBTyxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUMsTUFBTSxDQUFDLFlBQVksQ0FBQyxDQUFDO0lBQy9DLENBQUM7SUFFRDs7T0FFRztJQUNJLFdBQVc7UUFDaEIsSUFBSSxDQUFDLEdBQUUsSUFBSSxDQUFDLGNBQWMsQ0FBQyxNQUFNLEdBQUMsQ0FBQyxDQUFDO1FBQ3BDLElBQUksUUFBUSxHQUFFLElBQUksQ0FBQyxjQUFjLENBQUMsQ0FBQyxDQUFDLENBQUMsaUJBQWlCLENBQUM7UUFDdkQsSUFBSSxRQUFRLEdBQUUsSUFBSSxDQUFDLGNBQWMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxpQkFBaUIsQ0FBQztRQUN2RCxPQUFPLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQyxNQUFNLENBQUMsWUFBWSxDQUFDLEdBQUMsTUFBTSxHQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQyxNQUFNLENBQUMsWUFBWSxDQUFDLENBQUE7SUFDM0YsQ0FBQztJQUVEOzs7OztPQUtHO0lBRUksYUFBYTtRQUNsQixJQUFJLENBQUMsR0FBRyxJQUFJLENBQUMsTUFBTSxFQUFFLENBQUM7UUFDdEIsSUFBSSxDQUFDLElBQUUsQ0FBQyxFQUFDO1lBQ1AsT0FBTyxJQUFJLENBQUMsY0FBYyxDQUFDLENBQUMsQ0FBQyxDQUFDLGNBQWMsRUFBRSxDQUFBO1NBQy9DO0lBQ0gsQ0FBQztJQUVEOzs7T0FHRztJQUNJLFFBQVE7UUFDYixJQUFJLENBQUMsR0FBRSxJQUFJLENBQUMsTUFBTSxFQUFFLENBQUM7UUFDckIsT0FBTyxJQUFJLENBQUMsY0FBYyxDQUFDLENBQUMsQ0FBQyxDQUFDLGVBQWUsRUFBRSxDQUFBO0lBQ2pELENBQUM7SUFFRDs7O09BR0c7SUFDSyxjQUFjO1FBQ3BCLElBQUksQ0FBQyxHQUFFLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQztRQUNyQixPQUFPLElBQUksQ0FBQyxjQUFjLENBQUMsQ0FBQyxDQUFDLENBQUMsYUFBYSxJQUFFLENBQUMsQ0FBQTtJQUNoRCxDQUFDO0lBR0Q7O09BRUc7SUFDSSx1QkFBdUI7UUFDNUIsSUFBSSxDQUFDLEdBQUUsSUFBSSxDQUFDLE1BQU0sRUFBRSxDQUFDO1FBQ3JCLE9BQU8sSUFBSSxDQUFDLGNBQWMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxpQkFBaUIsQ0FBQztJQUNsRCxDQUFDO0lBRUg7O09BRUc7SUFDTSxzQkFBc0I7UUFDM0IsT0FBTyxJQUFJLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQyxDQUFDLGlCQUFpQixDQUFDO0lBQzlELENBQUM7SUFFTSxtQkFBbUI7UUFDeEIsSUFBSSxJQUFJLENBQUMsbUJBQW1CLElBQUUsRUFBRSxFQUFDO1lBQy9CLE9BQU8sS0FBSyxDQUFBO1NBQ2I7YUFBTyxJQUFJLElBQUksQ0FBQyxtQkFBbUIsSUFBRSxFQUFFLEVBQUM7WUFDdkMsT0FBTyxLQUFLLENBQUE7U0FDYjthQUFPLElBQUksSUFBSSxDQUFDLG1CQUFtQixJQUFFLEVBQUUsRUFBQztZQUN2QyxPQUFPLEtBQUssQ0FBQTtTQUNiO2FBQU8sSUFBSSxJQUFJLENBQUMsbUJBQW1CLElBQUUsQ0FBQyxFQUFDO1lBQ3RDLE9BQU8sS0FBSyxDQUFBO1NBQ2I7SUFFSCxDQUFDO0NBS0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBNQmFzaWNNb2RlbCB9IGZyb20gJy4uL2Jhc2ljLW1vZGVsLm1vZGVsJztcclxuaW1wb3J0IHsgSU5vbWluYSwgfSBmcm9tICcuLi8uLi9pbnRlcmZhY2VzL05vbWluYSc7XHJcbmltcG9ydCB7IE1QZXJpb2RvTm9taW5hIH0gZnJvbSAnLi9NUGVyaW9kb05vbWluYS5tb2RlbCc7XHJcbmltcG9ydCAqYXMgbW9tZW50IGZyb20gJ21vbWVudCc7XHJcblxyXG5leHBvcnQgY2xhc3MgTURlZmluaWNpb25Ob21pbmEgZXh0ZW5kcyBNQmFzaWNNb2RlbCB7IFxyXG4gIHB1YmxpYyBpZEVudGVycHJpc2U6bnVtYmVyPTA7XHJcbiAgcHVibGljIGlkRW1wcmVzYTpudW1iZXI9MDsgXHJcbiAgcHVibGljIGlkTm9taW5hOm51bWJlcj0wO1xyXG4gIHB1YmxpYyBjb2RpZ29Ob21pbmE6c3RyaW5nPScnO1xyXG4gIHB1YmxpYyBkZW5vbWluYWNpb25Ob21pbmE6c3RyaW5nPScnO1xyXG4gIHB1YmxpYyB0aXBvUGVyb2lvZG9Ob21pbmE6c3RyaW5nPScnO1xyXG4gIHB1YmxpYyBkZXNjcmlwY2lvblBlcmlvZG9Ob21pbmE6c3RyaW5nPScnO1xyXG4gIHB1YmxpYyBhbm9DdXJzb05vbWluYTpudW1iZXI9MDtcclxuICBwdWJsaWMgZmVjaGFJbmljaW9Ob21pbmE6c3RyaW5nPScxOTAwLTAxLTAxJztcclxuICBwdWJsaWMgcGVyaW9kb0FjdHVhbE5vbWluYTpzdHJpbmc9JzAwMSc7XHJcbiAgcHVibGljIG51bWVyb1BlcmlvZG9Ob21pbmE6bnVtYmVyPTA7XHJcbiAgcHVibGljIHRpcG9Ob21pbmE6bnVtYmVyPTA7XHJcbiAgcHVibGljIHJhY05vbWluYTpudW1iZXI9MDtcclxuICBwdWJsaWMgYWRlbGFudG9QYWdvTm9taW5hOm51bWJlcj0wO1xyXG4gIHB1YmxpYyBub21pbmFFc3BlY2lhbDpudW1iZXI9MDtcclxuICBwdWJsaWMgbm9taW5hQ2VzdGFUaWNrZXQ6bnVtYmVyPTA7XHJcbiAgcHVibGljIGNlc3RhVGlja2V0TWV0b2RvTm9taW5hOnN0cmluZz0nJztcclxuICBwdWJsaWMgY29kaWdvT3JnYW5pc21vQ2VzdGFUaWNrZXQ6c3RyaW5nPScnO1xyXG4gIHB1YmxpYyBDb250YWJpbGl6YWNpb25Ob21pbmE6c3RyaW5nPSdDQ1AnO1xyXG4gIHB1YmxpYyBkZXN0aW5vQ29tcHJvYmFudGVOb21pbmE6c3RyaW5nPSdCJztcclxuICBwdWJsaWMgaWRQcm92ZWVkb3I6bnVtYmVyPTA7XHJcbiAgcHVibGljIGN1ZW50YUNvbnRhYmxlTm9taW5hOnN0cmluZz0nJztcclxuICBwdWJsaWMgbm90YURlYml0b0JhbmNvOm51bWJlcj0wO1xyXG4gIHB1YmxpYyByZWNlcGNpb25Eb2N1bWVudG9Ob21pbmE6bnVtYmVyPTA7XHJcbiAgcHVibGljIHRpcG9Eb2N1bWVudG9Ob21pbmE6bnVtYmVyPTA7XHJcbiAgcHVibGljIGNvbnRhYmlsaXphY2lvbkFwb3J0ZU5vbWluYTpzdHJpbmc9J0NDUCc7XHJcbiAgcHVibGljIHJlY2VwY2lvbkRvY3VtZW50b0Fwb3J0ZTpudW1iZXI9MDtcclxuICBwdWJsaWMgdGlwb0RvY3VtZW50b0Fwb3J0ZTpudW1iZXI9MDtcclxuICBwdWJsaWMgcGVyaW9kb0FSZXN0YWJsZWNlTm9taW5hOnN0cmluZz0nJztcclxuICBwdWJsaWMgdmFsaWRhckNvbnRhYmlsaXphY2lvblBlcmlvZG9BbnRlcmlvck5vbWluYTpudW1iZXI9MDtcclxuICBwdWJsaWMgdGl0dWxvUmVwb3J0ZU5vbWluYTpzdHJpbmc9Jyc7XHJcbiAgcHVibGljIGNvbnRhYmlsaXphY2lvbkZpZGVpY29taXNvTm9taW5hOnN0cmluZz0nQ0NQJztcclxuICBwdWJsaWMgcmVjZXBjaW9uRG9jdW1lbnRvRmlkZWljb21pc286bnVtYmVyPTA7XHJcbiAgcHVibGljIHRpcG9Eb2N1bWVudG9GaWRlaWNvbWlzbzpudW1iZXI9MDtcclxuICBwdWJsaWMgaWRCZW5lZmljaWFyaW9GaWRlaWNvbWlzbzpudW1iZXI9MDtcclxuICBwdWJsaWMgY3VlbnRhQ29udGFibGVGaWRlaWNvbWlzbzpzdHJpbmc9Jyc7XHJcbiAgcHVibGljIGluZm9ybWFjaW9uUGFyYVJlcG9ydGU6c3RyaW5nPScnO1xyXG4gIHB1YmxpYyBkaXZpZGlyQ29uY2VwdG9RdWluY2VuYTpudW1iZXI9MDtcclxuICBwdWJsaWMgcmVjZXBjaW9uRG9jdW1lbnRvUGFnb1BlcnNvbmFsQ2hlcXVlOm51bWJlcj0wO1xyXG4gIHB1YmxpYyB0aXBvRG9jdW1lbnRvUGFnb1BlcnNvbmFsQ2hlcXVlOm51bWJlcj0wO1xyXG4gIHB1YmxpYyBlc3RhdHVzQ3VlbnRhQWx0ZXJuYXRpdmE6bnVtYmVyPTA7XHJcbiAgcHVibGljIHJhY09icmVyb05vbWluYTpudW1iZXI9MDtcclxuICBwdWJsaWMgbm9taW5hTGlxdWlkYWNpb246bnVtYmVyPTA7XHJcbiAgcHVibGljIGhvamFUaWVtcG9Ob21pbmE6bnVtYmVyPTA7XHJcbiAgcHVibGljIGNvZGlnb0Z1ZW50ZUZpbmFuY2lhbWllbnRvOm51bWJlcj0wO1xyXG4gIHB1YmxpYyBjZXJyYXJTaW5EaXNwb25pYmlsaWRhZDpudW1iZXI9MDtcclxuICBwdWJsaWMgZXN0YXR1c0FncnVwYXJBcG9ydGVzOm51bWJlcj0wO1xyXG4gIHB1YmxpYyByZWNlcGNpb25Eb2N1bWVudG9DYXVzYTpudW1iZXI9MDtcclxuICBwdWJsaWMgdGlwb0RvY3VtZW50b0NhdXNhOm51bWJlcj0wO1xyXG4gIHB1YmxpYyBpZENvbmNlcHRvQ2xhc2lmaWNhY2lvblBhcmFOb21pbmE6bnVtYmVyPTA7XHJcbiAgcHVibGljIGlkQ29uY2VwdG9DbGFzaWZpY2FjaW9uUGFyYUFwb3J0ZTpudW1iZXI9MDtcclxuICBwdWJsaWMgaWRDb25jZXB0b0NsYXNpZmljYWNpb25QYXJhQ2F1c2E6bnVtYmVyPTA7XHJcbiAgcHVibGljIGlkQ29uY2VwdG9DbGFzaWZpY2FjaW9uUGFyYVBlcnNvbmFsOm51bWJlcj0wO1xyXG4gIHB1YmxpYyBpZENvbmNlcHRvQ2xhc2lmaWNhY2lvblBhcmFGaWRlaWNvbWlzbzpudW1iZXI9MDtcclxuICBwdWJsaWMgZGVub21pbmFjaW9uQ29uY2VwdG9DbGFzaWZpY2FjaW9uUGFyYU5vbWluYT0nJztcclxuICBwdWJsaWMgZGVub21pbmFjaW9uQ29uY2VwdG9DbGFzaWZpY2FjaW9uUGFyYUFwb3J0ZT0nJztcclxuICBwdWJsaWMgZGVub21pbmFjaW9uQ29uY2VwdG9DbGFzaWZpY2FjaW9uUGFyYUNhdXNhPScnO1xyXG4gIHB1YmxpYyBkZW5vbWluYWNpb25Db25jZXB0b0NsYXNpZmljYWNpb25QYXJhUGVyc29uYWw9Jyc7XHJcbiAgcHVibGljIGRlbm9taW5hY2lvbkNvbmNlcHRvQ2xhc2lmaWNhY2lvblBhcmFGaWRlaWNvbWlzbz0nJztcclxuICBwdWJsaWMgZGVub21pbmFjaW9uVGlwb0RvY3VtZW50b05vbWluYTpzdHJpbmc9Jyc7XHJcbiAgcHVibGljIGRlbm9taW5hY2lvblRpcG9Eb2N1bWVudG9DYXVzYTpzdHJpbmc9Jyc7XHJcbiAgcHVibGljIGRlbm9taW5hY2lvblRpcG9Eb2N1bWVudG9QYWdvUGVyc29uYWxDaGVxdWU6c3RyaW5nPScnO1xyXG4gIHB1YmxpYyBkZW5vbWluYWNpb25UaXBvRG9jdW1lbnRvRmlkZWljb21pc286c3RyaW5nPScnO1xyXG4gIHB1YmxpYyBkZW5vbWluYWNpb25UaXBvRG9jdW1lbnRvQXBvcnRlPScnO1xyXG4gIHB1YmxpYyBjb2RpZ29GdWVudGVGaW5hbmNpYW1pZW50b01vc3RhcjpzdHJpbmc9Jyc7XHJcbiAgcHVibGljIGRlbm9taW5hY2lvbkNvZGlnb0Z1ZW50ZUZpbmFuY2lhbWllbnRvOnN0cmluZz0nJzsgIFxyXG4gIHB1YmxpYyBub21icmVQcm92ZWVkb3I6c3RyaW5nPScnO1xyXG4gIHB1YmxpYyBub21icmVCZW5lZmljaWFyaW9GaWRlaWNvbWlzbzpzdHJpbmc9Jyc7XHJcbiAgcHVibGljIGNvZGlnb0NlbnRyb0Nvc3RvOnN0cmluZz0nJztcclxuICBwdWJsaWMgY2VzdGFUaWNrZWN0U3VlbHRvczpudW1iZXI9MDtcclxuICBwdWJsaWMgY29kaWdvVXN1YXJpbzpzdHJpbmc9Jyc7XHJcbiAgcHVibGljIGRlbm9taW5hY2lvbkNlbnRyb0NvbnN0bzpzdHJpbmc9Jyc7XHJcbiAgcHVibGljIGRlbm9taW5hY2lvbkN1ZW50YUNvbnRhYmxlOnN0cmluZz0nJztcclxuICBwdWJsaWMgaWRQZXJpb2RvTm9taW5hOm51bWJlcj0wO1xyXG4gIHB1YmxpYyBpZFBlcmlvZG9SZXN0YWJsZWNlck5vbWluYTpudW1iZXI9MDtcclxuICBwdWJsaWMgZXN0YXR1c0luY2lkZW5jaWE6bnVtYmVyPTA7XHJcblx0cHVibGljIHNlZ21lbnRhclBlcnNvbmFsOm51bWJlcj0zMDAwO1xyXG4gIHB1YmxpYyBwZXJpb2Rvc05vbWluYTpNUGVyaW9kb05vbWluYVtdPVtdO1xyXG5cclxuICBjb25zdHJ1Y3RvcihlOklOb21pbmE9bnVsbCl7XHJcbiAgICBzdXBlcigpO1xyXG4gICAgICBpZiAoZSl7XHJcbiAgICAgICAgdGhpcy5pZEVudGVycHJpc2U9K2UuaWRfZW50ZXJwcmlzZTsgIFxyXG4gICAgICAgIHRoaXMuaWRFbXByZXNhPStlLmlkX2VtcHJlc2HCoFxyXG4gICAgICAgIHRoaXMuaWROb21pbmE9cGFyc2VJbnQoZS5pZF9ub21pbmEpO1xyXG4gICAgICAgICAgdGhpcy5jb2RpZ29Ob21pbmE9ZS5jb2Rub207XHJcbiAgICAgICAgICB0aGlzLmRlbm9taW5hY2lvbk5vbWluYT1lLmRlbm5vbTtcclxuICAgICAgICAgIHRoaXMudGlwb1Blcm9pb2RvTm9taW5hPWUudGlwcGVybm9tO1xyXG4gICAgICAgICAgdGhpcy5kZXNjcmlwY2lvblBlcmlvZG9Ob21pbmE9ZS5kZXNwZXJub207XHJcbiAgICAgICAgICB0aGlzLmFub0N1cnNvTm9taW5hPXBhcnNlSW50KGUuYW5vY3Vybm9tKTtcclxuICAgICAgICAgIHRoaXMuZmVjaGFJbmljaW9Ob21pbmE9ZS5mZWNpbmlub207XHJcbiAgICAgICAgICB0aGlzLnBlcmlvZG9BY3R1YWxOb21pbmE9ZS5wZXJhY3Rub207XHJcbiAgICAgICAgICB0aGlzLm51bWVyb1BlcmlvZG9Ob21pbmE9cGFyc2VJbnQoZS5udW1wZXJub20pO1xyXG4gICAgICAgICAgdGhpcy50aXBvTm9taW5hPXBhcnNlSW50KGUudGlwbm9tKTtcclxuICAgICAgICAgIHRoaXMucmFjTm9taW5hPXBhcnNlSW50KGUucmFjbm9tKTtcclxuICAgICAgICAgIHRoaXMuYWRlbGFudG9QYWdvTm9taW5hPXBhcnNlSW50KGUuYWRlbm9tKTtcclxuICAgICAgICAgIHRoaXMubm9taW5hRXNwZWNpYWw9cGFyc2VJbnQoZS5lc3Bub20pO1xyXG4gICAgICAgICAgdGhpcy5ub21pbmFDZXN0YVRpY2tldD1wYXJzZUludChlLmN0bm9tKTtcclxuICAgICAgICAgIHRoaXMuY2VzdGFUaWNrZXRNZXRvZG9Ob21pbmE9ZS5jdG1ldG5vbTtcclxuICAgICAgICAgIHRoaXMuY29kaWdvT3JnYW5pc21vQ2VzdGFUaWNrZXQ9ZS5jb2RvcmdjZXN0aWM7XHJcbiAgICAgICAgICB0aGlzLkNvbnRhYmlsaXphY2lvbk5vbWluYT1lLmNvbnN1bG5vbTtcclxuICAgICAgICAgIHRoaXMuZGVzdGlub0NvbXByb2JhbnRlTm9taW5hPWUuZGVzY29tbm9tO1xyXG4gICAgICAgICAgdGhpcy5pZFByb3ZlZWRvcj1wYXJzZUludChlLmlkX3Byb3ZlZWRvcik7XHJcbiAgICAgICAgICB0aGlzLmN1ZW50YUNvbnRhYmxlTm9taW5hPWUuY3VlY29ubm9tO1xyXG4gICAgICAgICAgdGhpcy5ub3RhRGViaXRvQmFuY289cGFyc2VJbnQoZS5ub3RkZWJub20pO1xyXG4gICAgICAgICAgdGhpcy5yZWNlcGNpb25Eb2N1bWVudG9Ob21pbmE9cGFyc2VJbnQoZS5yZWNkb2Nub20pO1xyXG4gICAgICAgICAgdGhpcy50aXBvRG9jdW1lbnRvTm9taW5hPXBhcnNlSW50KGUudGlwZG9jbm9tKTtcclxuICAgICAgICAgIHRoaXMuY29udGFiaWxpemFjaW9uQXBvcnRlTm9taW5hPWUuY29uYXBvbm9tO1xyXG4gICAgICAgICAgdGhpcy5yZWNlcGNpb25Eb2N1bWVudG9BcG9ydGU9cGFyc2VJbnQoZS5yZWNkb2NhcG8pO1xyXG4gICAgICAgICAgdGhpcy50aXBvRG9jdW1lbnRvQXBvcnRlPXBhcnNlSW50KGUudGlwZG9jYXBvKTtcclxuICAgICAgICAgIHRoaXMucGVyaW9kb0FSZXN0YWJsZWNlTm9taW5hPWUucGVycmVzbm9tO1xyXG4gICAgICAgICAgdGhpcy52YWxpZGFyQ29udGFiaWxpemFjaW9uUGVyaW9kb0FudGVyaW9yTm9taW5hPXBhcnNlSW50KGUuY29ucGVybm9tKTtcclxuICAgICAgICAgIHRoaXMudGl0dWxvUmVwb3J0ZU5vbWluYT1lLnRpdHJlcG5vbTtcclxuICAgICAgICAgIHRoaXMuY29udGFiaWxpemFjaW9uRmlkZWljb21pc29Ob21pbmE9ZS5jb25maWRub207XHJcbiAgICAgICAgICB0aGlzLnJlY2VwY2lvbkRvY3VtZW50b0ZpZGVpY29taXNvPXBhcnNlSW50KGUucmVjZG9jZmlkKTtcclxuICAgICAgICAgIHRoaXMudGlwb0RvY3VtZW50b0ZpZGVpY29taXNvPXBhcnNlSW50KGUudGlwZG9jZmlkKTtcclxuICAgICAgICAgIHRoaXMuaWRCZW5lZmljaWFyaW9GaWRlaWNvbWlzbz1wYXJzZUludChlLmlkX2JlbmZpZCk7XHJcbiAgICAgICAgICB0aGlzLmN1ZW50YUNvbnRhYmxlRmlkZWljb21pc289ZS5jdWVjb25maWQ7XHJcbiAgICAgICAgICB0aGlzLmluZm9ybWFjaW9uUGFyYVJlcG9ydGU9ZS5pbmZvcm1hO1xyXG4gICAgICAgICAgdGhpcy5kaXZpZGlyQ29uY2VwdG9RdWluY2VuYT1wYXJzZUludChlLmRpdmNvbik7XHJcbiAgICAgICAgICB0aGlzLnJlY2VwY2lvbkRvY3VtZW50b1BhZ29QZXJzb25hbENoZXF1ZT1wYXJzZUludChlLnJlY2RvY3BhZ3BlcmNoZSk7XHJcbiAgICAgICAgICB0aGlzLnRpcG9Eb2N1bWVudG9QYWdvUGVyc29uYWxDaGVxdWU9cGFyc2VJbnQoZS50aXBkb2NwYWdwZXJjaGUpO1xyXG4gICAgICAgICAgdGhpcy5lc3RhdHVzQ3VlbnRhQWx0ZXJuYXRpdmHCoD1wYXJzZUludChlLmVzdGN0YWFsdCk7XHJcbiAgICAgICAgICB0aGlzLnJhY09icmVyb05vbWluYT1wYXJzZUludChlLnJhY29icm5vbSk7XHJcbiAgICAgICAgICB0aGlzLm5vbWluYUxpcXVpZGFjaW9uPXBhcnNlSW50KGUubm9tbGlxKTtcclxuICAgICAgICAgIHRoaXMuaG9qYVRpZW1wb05vbWluYT1wYXJzZUludChlLmhvanRpZW5vbSk7XHJcbiAgICAgICAgICB0aGlzLmNvZGlnb0Z1ZW50ZUZpbmFuY2lhbWllbnRvPXBhcnNlSW50KGUuY29kZnVlZmluKTtcclxuICAgICAgICAgIHRoaXMuY2VycmFyU2luRGlzcG9uaWJpbGlkYWQ9cGFyc2VJbnQoZS5jZXJzaW5kaXMpO1xyXG4gICAgICAgICAgdGhpcy5lc3RhdHVzQWdydXBhckFwb3J0ZXM9cGFyc2VJbnQoZS5lc3RhZ3JhcG8pO1xyXG4gICAgICAgICAgdGhpcy5yZWNlcGNpb25Eb2N1bWVudG9DYXVzYT1wYXJzZUludChlLnJlY2RvY2NhdW5vbSk7XHJcbiAgICAgICAgICB0aGlzLnRpcG9Eb2N1bWVudG9DYXVzYT1wYXJzZUludChlLnRpcGRvY2NhdW5vbSk7XHJcbiAgICAgICAgICB0aGlzLmlkQ29uY2VwdG9DbGFzaWZpY2FjaW9uUGFyYU5vbWluYT1wYXJzZUludChlLmlkX2NvbmN4cG5vbSk7XHJcbiAgICAgICAgICB0aGlzLmlkQ29uY2VwdG9DbGFzaWZpY2FjaW9uUGFyYUFwb3J0ZT1wYXJzZUludChlLmlkX2NvbmN4cGFwbyk7XHJcbiAgICAgICAgICB0aGlzLmlkQ29uY2VwdG9DbGFzaWZpY2FjaW9uUGFyYUNhdXNhPXBhcnNlSW50KGUuaWRfY29uY3hwY2F1KTtcclxuICAgICAgICAgIHRoaXMuaWRDb25jZXB0b0NsYXNpZmljYWNpb25QYXJhUGVyc29uYWw9cGFyc2VJbnQoZS5pZF9jb25jeHBwZXIpO1xyXG4gICAgICAgICAgdGhpcy5pZENvbmNlcHRvQ2xhc2lmaWNhY2lvblBhcmFGaWRlaWNvbWlzbz1wYXJzZUludChlLmlkX2NvbmN4cGZpZCk7XHJcbiAgICAgICAgICB0aGlzLmNvZGlnb0NlbnRyb0Nvc3RvPWUuY29kY2VuY29zXHJcbiAgICAgICAgICB0aGlzLmRlbm9taW5hY2lvbkNlbnRyb0NvbnN0bz1lLmRlbmNlbmNvc1xyXG4gICAgICAgICAgdGhpcy5jZXN0YVRpY2tlY3RTdWVsdG9zPXBhcnNlSW50KGUuY2VzdGlrc3VlbCkgICAgICAgICAgICAgICAgICAgICAgICAgXHJcbiAgICAgICAgICB0aGlzLmRlbm9taW5hY2lvbkNvZGlnb0Z1ZW50ZUZpbmFuY2lhbWllbnRvPWUuY29kaWdvZnRlZmluKycgLSAnK2UuZGVuZnVlZmluICBcclxuICAgICAgICAgIHRoaXMuZGVub21pbmFjaW9uQ3VlbnRhQ29udGFibGU9IGUuZGVuY3RhY29udCAgXHJcbiAgICAgICAgICB0aGlzLm5vbWJyZVByb3ZlZWRvcj0gZS5ub21wcm87XHJcbiAgICAgICAgICB0aGlzLmVzdGF0dXNJbmNpZGVuY2lhPXBhcnNlSW50KGUuZXN0aW5jaWRlbmNpYSk7XHJcbiAgICAgICAgICB0aGlzLnBlcmlvZG9zTm9taW5hPWUucGVyaW9kb3MubWFwKGU9Pm5ldyBNUGVyaW9kb05vbWluYShlKSk7XHJcbiAgICAgICAgICB0aGlzLmlkUGVyaW9kb05vbWluYT1wYXJzZUludChlLmlkX3BlcmlvZG9hY3R1YWwpO1xyXG4gICAgICAgICAgdGhpcy5pZFBlcmlvZG9SZXN0YWJsZWNlck5vbWluYT1wYXJzZUludChlLmlkX3BlcnJlc25vbSk7IFxyXG4gICAgICAgICAgdGhpcy5zZWdtZW50YXJQZXJzb25hbD1wYXJzZUludChlLnNlZ3Blcik7IFxyXG4gICAgICB9IGVsc2Uge1xyXG4gICAgICAgIHRoaXMuaXNOZXc9dHJ1ZTtcclxuICAgICAgfVxyXG4gIH1cclxuXHJcbiAgcHVibGljIGRhdGFJbnRlcmZhY2UoKTpJTm9taW5hIHtcclxuICAgICAgdGhpcy4gZ2V0UGVyaW9kb05vbWluYSgpO1xyXG4gICAgICBpZih0aGlzLnNlZ21lbnRhclBlcnNvbmFsPT0wKXtcclxuICAgICAgICB0aGlzLnNlZ21lbnRhclBlcnNvbmFsPTEwMDAwO1xyXG4gICAgICB9XHJcbiAgICAgIHJldHVybiB7XHJcbiAgICAgICAgaWRfZW50ZXJwcmlzZTp0aGlzLmlkRW50ZXJwcmlzZS50b1N0cmluZygpLFxyXG4gICAgICAgIGlkX2VtcHJlc2HCoDp0aGlzLmlkRW1wcmVzYSxcclxuICAgICAgaWRfbm9taW5hOnRoaXMuaWROb21pbmEudG9TdHJpbmcoKSxcclxuICAgICAgICAgIGNvZG5vbTp0aGlzLmNvZGlnb05vbWluYSxcclxuICAgICAgICAgIGRlbm5vbTp0aGlzLmRlbm9taW5hY2lvbk5vbWluYSxcclxuICAgICAgICAgIHRpcHBlcm5vbTp0aGlzLnRpcG9QZXJvaW9kb05vbWluYSxcclxuICAgICAgICAgIGRlc3Blcm5vbTp0aGlzLmRlc2NyaXBjaW9uUGVyaW9kb05vbWluYSxcclxuICAgICAgICAgIGFub2N1cm5vbTp0aGlzLmFub0N1cnNvTm9taW5hLnRvU3RyaW5nKCksXHJcbiAgICAgICAgICBmZWNpbmlub206dGhpcy5mZWNoYUluaWNpb05vbWluYSxcclxuICAgICAgICAgIHBlcmFjdG5vbTp0aGlzLnBlcmlvZG9BY3R1YWxOb21pbmEsXHJcbiAgICAgICAgICBudW1wZXJub206dGhpcy5udW1lcm9QZXJpb2RvTm9taW5hLnRvU3RyaW5nKCksXHJcbiAgICAgICAgICB0aXBub206dGhpcy50aXBvTm9taW5hLnRvU3RyaW5nKCksXHJcbiAgICAgICAgICByYWNub206dGhpcy5yYWNOb21pbmEudG9TdHJpbmcoKSxcclxuICAgICAgICAgIGFkZW5vbTp0aGlzLmFkZWxhbnRvUGFnb05vbWluYS50b1N0cmluZygpLFxyXG4gICAgICAgICAgZXNwbm9tOnRoaXMubm9taW5hRXNwZWNpYWwudG9TdHJpbmcoKSxcclxuICAgICAgICAgIGN0bm9tOnRoaXMubm9taW5hQ2VzdGFUaWNrZXQudG9TdHJpbmcoKSxcclxuICAgICAgICAgIGN0bWV0bm9tOnRoaXMuY2VzdGFUaWNrZXRNZXRvZG9Ob21pbmEsXHJcbiAgICAgICAgICBjb2RvcmdjZXN0aWM6dGhpcy5jb2RpZ29PcmdhbmlzbW9DZXN0YVRpY2tldCxcclxuICAgICAgICAgIGNvbnN1bG5vbTp0aGlzLkNvbnRhYmlsaXphY2lvbk5vbWluYSxcclxuICAgICAgICAgIGRlc2NvbW5vbTp0aGlzLmRlc3Rpbm9Db21wcm9iYW50ZU5vbWluYSxcclxuICAgICAgICAgIGlkX3Byb3ZlZWRvcjp0aGlzLmlkUHJvdmVlZG9yLnRvU3RyaW5nKCksXHJcbiAgICAgICAgICBjdWVjb25ub206dGhpcy5jdWVudGFDb250YWJsZU5vbWluYSxcclxuICAgICAgICAgIG5vdGRlYm5vbTp0aGlzLm5vdGFEZWJpdG9CYW5jby50b1N0cmluZygpLFxyXG4gICAgICAgICAgcmVjZG9jbm9tOnRoaXMucmVjZXBjaW9uRG9jdW1lbnRvTm9taW5hLnRvU3RyaW5nKCksXHJcbiAgICAgICAgICB0aXBkb2Nub206dGhpcy50aXBvRG9jdW1lbnRvTm9taW5hLnRvU3RyaW5nKCksXHJcbiAgICAgICAgICBjb25hcG9ub206dGhpcy5jb250YWJpbGl6YWNpb25BcG9ydGVOb21pbmEsXHJcbiAgICAgICAgICByZWNkb2NhcG86dGhpcy5yZWNlcGNpb25Eb2N1bWVudG9BcG9ydGUudG9TdHJpbmcoKSxcclxuICAgICAgICAgIHRpcGRvY2Fwbzp0aGlzLnRpcG9Eb2N1bWVudG9BcG9ydGUudG9TdHJpbmcoKSxcclxuICAgICAgICAgIHBlcnJlc25vbTp0aGlzLnBlcmlvZG9BUmVzdGFibGVjZU5vbWluYSxcclxuICAgICAgICAgIGNvbnBlcm5vbTp0aGlzLnZhbGlkYXJDb250YWJpbGl6YWNpb25QZXJpb2RvQW50ZXJpb3JOb21pbmEudG9TdHJpbmcoKSxcclxuICAgICAgICAgIHRpdHJlcG5vbTp0aGlzLnRpdHVsb1JlcG9ydGVOb21pbmEsXHJcbiAgICAgICAgICBjb25maWRub206dGhpcy5jb250YWJpbGl6YWNpb25GaWRlaWNvbWlzb05vbWluYSxcclxuICAgICAgICAgIHJlY2RvY2ZpZDp0aGlzLnJlY2VwY2lvbkRvY3VtZW50b0ZpZGVpY29taXNvLnRvU3RyaW5nKCksXHJcbiAgICAgICAgICB0aXBkb2NmaWQ6dGhpcy50aXBvRG9jdW1lbnRvRmlkZWljb21pc28udG9TdHJpbmcoKSxcclxuICAgICAgICAgIGlkX2JlbmZpZDp0aGlzLmlkQmVuZWZpY2lhcmlvRmlkZWljb21pc28udG9TdHJpbmcoKSxcclxuICAgICAgICAgIGN1ZWNvbmZpZDp0aGlzLmN1ZW50YUNvbnRhYmxlRmlkZWljb21pc28sXHJcbiAgICAgICAgICBpbmZvcm1hOnRoaXMuaW5mb3JtYWNpb25QYXJhUmVwb3J0ZSxcclxuICAgICAgICAgIGRpdmNvbjp0aGlzLmRpdmlkaXJDb25jZXB0b1F1aW5jZW5hLnRvU3RyaW5nKCksXHJcbiAgICAgICAgICByZWNkb2NwYWdwZXJjaGU6dGhpcy5yZWNlcGNpb25Eb2N1bWVudG9QYWdvUGVyc29uYWxDaGVxdWUudG9TdHJpbmcoKSxcclxuICAgICAgICAgIHRpcGRvY3BhZ3BlcmNoZTp0aGlzLnRpcG9Eb2N1bWVudG9QYWdvUGVyc29uYWxDaGVxdWUudG9TdHJpbmcoKSxcclxuICAgICAgICAgIGVzdGN0YWFsdDp0aGlzLmVzdGF0dXNDdWVudGFBbHRlcm5hdGl2YcKgLnRvU3RyaW5nKCksXHJcbiAgICAgICAgICByYWNvYnJub206dGhpcy5yYWNPYnJlcm9Ob21pbmEudG9TdHJpbmcoKSxcclxuICAgICAgICAgIG5vbWxpcTp0aGlzLm5vbWluYUxpcXVpZGFjaW9uLnRvU3RyaW5nKCksXHJcbiAgICAgICAgICBob2p0aWVub206dGhpcy5ob2phVGllbXBvTm9taW5hLnRvU3RyaW5nKCksXHJcbiAgICAgICAgICBjb2RmdWVmaW46dGhpcy5jb2RpZ29GdWVudGVGaW5hbmNpYW1pZW50by50b1N0cmluZygpLFxyXG4gICAgICAgICAgY2Vyc2luZGlzOnRoaXMuY2VycmFyU2luRGlzcG9uaWJpbGlkYWQudG9TdHJpbmcoKSxcclxuICAgICAgICAgIGVzdGFncmFwbzp0aGlzLmVzdGF0dXNBZ3J1cGFyQXBvcnRlcy50b1N0cmluZygpLFxyXG4gICAgICAgICAgcmVjZG9jY2F1bm9tOnRoaXMucmVjZXBjaW9uRG9jdW1lbnRvQ2F1c2EudG9TdHJpbmcoKSxcclxuICAgICAgICAgIHRpcGRvY2NhdW5vbTp0aGlzLnRpcG9Eb2N1bWVudG9DYXVzYS50b1N0cmluZygpLFxyXG4gICAgICAgICAgaWRfY29uY3hwbm9tOnRoaXMuaWRDb25jZXB0b0NsYXNpZmljYWNpb25QYXJhTm9taW5hLnRvU3RyaW5nKCksXHJcbiAgICAgICAgICBpZF9jb25jeHBhcG86dGhpcy5pZENvbmNlcHRvQ2xhc2lmaWNhY2lvblBhcmFBcG9ydGUudG9TdHJpbmcoKSxcclxuICAgICAgICAgIGlkX2NvbmN4cGNhdTp0aGlzLmlkQ29uY2VwdG9DbGFzaWZpY2FjaW9uUGFyYUNhdXNhLnRvU3RyaW5nKCksXHJcbiAgICAgICAgICBpZF9jb25jeHBwZXI6dGhpcy5pZENvbmNlcHRvQ2xhc2lmaWNhY2lvblBhcmFQZXJzb25hbC50b1N0cmluZygpLFxyXG4gICAgICAgICAgaWRfY29uY3hwZmlkOnRoaXMuaWRDb25jZXB0b0NsYXNpZmljYWNpb25QYXJhRmlkZWljb21pc28udG9TdHJpbmcoKSwgICAgICAgICAgICAgICBcclxuICAgICAgICAgIGNlc3Rpa3N1ZWw6dGhpcy5jZXN0YVRpY2tlY3RTdWVsdG9zLnRvU3RyaW5nKCksXHJcbiAgICAgICAgICBjb2RjZW5jb3M6dGhpcy5jb2RpZ29DZW50cm9Db3N0byxcclxuICAgICAgICAgIGNvZHVzdTp0aGlzLmNvZGlnb1VzdWFyaW8sXHJcbiAgICAgICAgICBjb2RpZ29mdGVmaW46dGhpcy5jb2RpZ29GdWVudGVGaW5hbmNpYW1pZW50by50b1N0cmluZygpLFxyXG4gICAgICAgICAgZGVuZnVlZmluOnRoaXMuZGVub21pbmFjaW9uQ29kaWdvRnVlbnRlRmluYW5jaWFtaWVudG8sXHJcbiAgICAgICAgICBkZW5jZW5jb3M6IHRoaXMuZGVub21pbmFjaW9uQ2VudHJvQ29uc3RvLFxyXG4gICAgICAgICAgZGVuY3RhY29udDogdGhpcy5kZW5vbWluYWNpb25DdWVudGFDb250YWJsZSxcclxuICAgICAgICAgIG5vbXBybzp0aGlzLm5vbWJyZVByb3ZlZWRvcixcclxuICAgICAgICAgIGlkX3BlcmlvZG9hY3R1YWw6dGhpcy5pZFBlcmlvZG9Ob21pbmEudG9TdHJpbmcoKSxcclxuICAgICAgICAgIGlkX3BlcnJlc25vbTp0aGlzLmlkUGVyaW9kb1Jlc3RhYmxlY2VyTm9taW5hLnRvU3RyaW5nKCksXHJcbiAgICAgICAgICBlc3RpbmNpZGVuY2lhOnRoaXMuZXN0YXR1c0luY2lkZW5jaWEudG9TdHJpbmcoKSxcclxuICAgICAgICAgIHNlZ3Blcjp0aGlzLnNlZ21lbnRhclBlcnNvbmFsLnRvU3RyaW5nKCksXHJcbiAgICAgICAgICBwZXJpb2Rvczp0aGlzLnBlcmlvZG9zTm9taW5hLm1hcCgoZnVuY3Rpb24gKGUpIHsgcmV0dXJuIGUuZGF0YUludGVyZmFjZSgpOyB9KSksICAgICAgICAgIFxyXG4gICAgICB9XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgZ2V0UGVyaW9kb05vbWluYSgpe1xyXG4gICAgaWYgKHRoaXMudGlwb1Blcm9pb2RvTm9taW5hPT0nMCcpe1xyXG4gICAgICB0aGlzLm51bWVyb1BlcmlvZG9Ob21pbmE9NTJcclxuICAgIH0gZWxzZSAgaWYgKHRoaXMudGlwb1Blcm9pb2RvTm9taW5hPT0nMScpe1xyXG4gICAgICB0aGlzLm51bWVyb1BlcmlvZG9Ob21pbmE9MjRcclxuICAgIH0gZWxzZSAgaWYgKHRoaXMudGlwb1Blcm9pb2RvTm9taW5hPT0nMicpe1xyXG4gICAgICB0aGlzLm51bWVyb1BlcmlvZG9Ob21pbmE9MTJcclxuICAgIH0gIGVsc2UgaWYgKHRoaXMudGlwb1Blcm9pb2RvTm9taW5hPT0nMycpe1xyXG4gICAgICB0aGlzLm51bWVyb1BlcmlvZG9Ob21pbmE9MVxyXG4gICAgfSAgICAgICAgICBcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIFxyXG4gICAqIEByZXR1cm5zIFRpcG8gZGUgbm9taW5hIHtTZW1hbmFsLCBRdWluY2VuYWwsTWVuc3VhbCxBbnVhbH1cclxuICAgKi9cclxuICBwdWJsaWMgZGVub21pbmFjaW9uTnVtZXJvTm9taW5hKCk6c3RyaW5ne1xyXG4gICAgaWYgKHRoaXMubnVtZXJvUGVyaW9kb05vbWluYT09NTIpe1xyXG4gICAgICByZXR1cm4gJ1NlbWFuYWwnXHJcbiAgICB9IGVsc2UgIGlmICh0aGlzLm51bWVyb1BlcmlvZG9Ob21pbmE9PTI0KXtcclxuICAgICAgcmV0dXJuICdRdWluY2VuYWwnXHJcbiAgICB9IGVsc2UgIGlmICh0aGlzLm51bWVyb1BlcmlvZG9Ob21pbmE9PTEyKXtcclxuICAgICAgcmV0dXJuICdNZW5zdWFsJ1xyXG4gICAgfSAgZWxzZSBpZiAodGhpcy5udW1lcm9QZXJpb2RvTm9taW5hPT0xKXtcclxuICAgICAgcmV0dXJuICdBbnVhbCdcclxuICAgIH0gICAgXHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBcclxuICAgKiBAcmV0dXJucyBwb3NpY2lvbiBkZWwgYXJyYXkgZG9uZGUgZXN0YSBlbCBwZXJpb2RvIGFjdHVhbCBkZSBsYSBub21pbmEsIGRlIGxvIGNvbnRyYXJpbyAtMVxyXG4gICAqL1xyXG4gIHB1YmxpYyBpbmRpY2UoKTpudW1iZXIgeyAgICAgICAgICBcclxuICAgIHJldHVybiB0aGlzLnBlcmlvZG9zTm9taW5hLmZpbmRJbmRleChlPT4gZS5jb2RpZ29QZXJpb2RvPT0gdGhpcy5wZXJpb2RvQWN0dWFsTm9taW5hKTtcclxuICB9XHJcblxyXG5cclxuICAvKipcclxuICAgKiAgQHJldHVybnMgRmVjaGEgZmluYWwgZGUgbGEgbm9taW5hXHJcbiAgICovXHJcbiAgcHVibGljIGZlY2hhRmluYWxOb21pbmEoKTpzdHJpbmd7XHJcbiAgICBsZXQgaT0gdGhpcy5wZXJpb2Rvc05vbWluYS5sZW5ndGgtMTtcclxuICAgIGxldCBmZWNoYUZpbj0gdGhpcy5wZXJpb2Rvc05vbWluYVtpXS5mZWNoYUhhc3RhcGVyaW9kbztcclxuICAgIHJldHVybiBtb21lbnQoZmVjaGFGaW4pLmZvcm1hdCgnREQvTU0vWVlZWScpO1xyXG4gIH1cclxuICBcclxuICAvKiogICAgICAgICBcclxuICAgKiBAcmV0dXJucyBmZWNoYSBkZSBpbmljaW8gYSBmaW4gZGUgbGEgbm9taW5hXHJcbiAgICovXHJcbiAgcHVibGljIGZlY2hhTm9taW5hKCk6c3RyaW5ne1xyXG4gICAgbGV0IGk9IHRoaXMucGVyaW9kb3NOb21pbmEubGVuZ3RoLTE7XHJcbiAgICBsZXQgZmVjaGFGaW49IHRoaXMucGVyaW9kb3NOb21pbmFbaV0uZmVjaGFIYXN0YXBlcmlvZG87XHJcbiAgICBsZXQgZmVjaGFJbmk9IHRoaXMucGVyaW9kb3NOb21pbmFbaV0uZmVjaGFEZXNkZVBlcmlvZG87XHJcbiAgICByZXR1cm4gbW9tZW50KGZlY2hhSW5pKS5mb3JtYXQoJ0REL01NL1lZWVknKSsnIGFsICcrbW9tZW50KGZlY2hhRmluKS5mb3JtYXQoJ0REL01NL1lZWVknKVxyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogXHJcbiAgICogQHJldHVybnMgUmV0b3JuYSBlcyBlc3RhdHVzIGRlbCBwZXJpb2RvIGFjdHVhbCBkZSBsYSBub21pbmEge1xyXG4gICAqIFNpbiBDYWxjdWxhciwgY29udGFiaWxpemFkYSxQZXJpb2RvIENvbnRhYmlsaXphZG8sXHJcbiAgICogUGVyaW9kbyB5IEFwb3J0ZSBDb250YWJpbGl6YWRvLCBBcG9ydGUgQ29udGFiaWxpemFkbyB9XHJcbiAgICovXHJcblxyXG4gIHB1YmxpYyBlc3RhdHVzTm9taW5hKCk6c3RyaW5nIHtcclxuICAgIGxldCBpID0gdGhpcy5pbmRpY2UoKTtcclxuICAgIGlmIChpPj0wKXtcclxuICAgICAgcmV0dXJuIHRoaXMucGVyaW9kb3NOb21pbmFbaV0uZXN0YXR1c1BlcmlvZG8oKVxyXG4gICAgfSAgXHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBcclxuICAgKiBAcmV0dXJucyBTaSBsYSBub21pbmEgcHVlZGUgc2VyIG1vZGlmaWNhZGEgKHZlcmRhZGVybywgZmFsc28pXHJcbiAgICovXHJcbiAgcHVibGljIGVkaXRhYmxlKCk6Ym9vbGVhbiB7XHJcbiAgICBsZXQgaT0gdGhpcy5pbmRpY2UoKTtcclxuICAgIHJldHVybiB0aGlzLnBlcmlvZG9zTm9taW5hW2ldLnBlcmlvZG9FZGl0YWJsZSgpXHJcbiAgfSBcclxuXHJcbiAgLyoqXHJcbiAgICogQHJldHVybnMgaW5kaWNhIHNpIGVsIHBlcmlkbyBhY3R1YWwgZXN0YSBhYmllcnRvXHJcbiAgICogQHJldHVybnMgdmVyZGFkZXJvL2ZhbHNvXHJcbiAgICovICAgICAgICBcclxuICAgcHVibGljIHBlcmlvZG9DZXJyYWRvKCk6Ym9vbGVhbiB7XHJcbiAgICBsZXQgaT0gdGhpcy5pbmRpY2UoKTtcclxuICAgIHJldHVybiB0aGlzLnBlcmlvZG9zTm9taW5hW2ldLmNlcnJhclBlcmlvZG89PTFcclxuICB9IFxyXG5cclxuXHJcbiAgLyoqXHJcbiAgICogQHJldHVybnMgRmVjaGEgaW5pY2lvIGRlbCBwZXJpb2RvIGFjdHVhbCBkZSBsYSBub21pbmFcclxuICAgKi9cclxuICBwdWJsaWMgZmVjaGFJbmNpb1BlcmlvZG9BY3R1YWwoKTpzdHJpbmd7XHJcbiAgICBsZXQgaT0gdGhpcy5pbmRpY2UoKTtcclxuICAgIHJldHVybiB0aGlzLnBlcmlvZG9zTm9taW5hW2ldLmZlY2hhRGVzZGVQZXJpb2RvO1xyXG4gIH1cclxuXHJcbi8qKlxyXG4gKiBAcmV0dXJucyBGZWNoYSBmaW5hbCBkZWwgcGVyaW9kbyBhY3R1YWwgZGUgbGEgbm9taW5hXHJcbiAqL1xyXG4gIHB1YmxpYyBmZWNoYUZpbmFQZXJpb2RvQWN0dWFsKCk6c3RyaW5ne1xyXG4gICAgcmV0dXJuIHRoaXMucGVyaW9kb3NOb21pbmFbdGhpcy5pbmRpY2UoKV0uZmVjaGFIYXN0YXBlcmlvZG87XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgdWx0aW1vUGVyaW9kb05vbWluYSgpOnN0cmluZyB7XHJcbiAgICBpZiAodGhpcy5udW1lcm9QZXJpb2RvTm9taW5hPT01Mil7XHJcbiAgICAgIHJldHVybiAnMDUyJ1xyXG4gICAgfSBlbHNlICBpZiAodGhpcy5udW1lcm9QZXJpb2RvTm9taW5hPT0yNCl7XHJcbiAgICAgIHJldHVybiAnMDI0J1xyXG4gICAgfSBlbHNlICBpZiAodGhpcy5udW1lcm9QZXJpb2RvTm9taW5hPT0xMil7XHJcbiAgICAgIHJldHVybiAnMDEyJ1xyXG4gICAgfSAgZWxzZSBpZiAodGhpcy5udW1lcm9QZXJpb2RvTm9taW5hPT0xKXtcclxuICAgICAgcmV0dXJuICcwMDEnXHJcbiAgICB9ICAgIFxyXG4gICAgICAgIFxyXG4gIH1cclxuXHJcblxyXG4gIFxyXG4gICAgIFxyXG59IFxyXG5cclxuXHJcblxyXG4iXX0=
|