Análisis predictivo y detección de anomalías en el consumo de MIPS del Grupo Éxito : optimización y eficiencia operacional

El consumo de Millones de Instrucciones Por Segundo (MIPS) es un factor crítico en la eficiencia operativa de Grupo Éxito, dado su impacto en la infraestructura tecnológica y los costos asociados. En este trabajo, se relata el desarrollo de un microservicio diseñado para optimizar el análisis del co...

Full description

Autores:
González Londoño, Estiben Andrey
Tipo de recurso:
Trabajo de grado de pregrado
Fecha de publicación:
2025
Institución:
Universidad de Antioquia
Repositorio:
Repositorio UdeA
Idioma:
spa
OAI Identifier:
oai:bibliotecadigital.udea.edu.co:10495/45833
Acceso en línea:
https://hdl.handle.net/10495/45833
Palabra clave:
MIPS (Computer architecture)
MIPS (Arquitectura de computadores)
Detección de anomalías (Seguridad informática)
Anomaly detection (Computer security)
Análisis predictivo
Predictive analytics
Minería de datos
Data mining
Python (Lenguaje de programación de computadores)
Python (Computer program language)
Tecnología de la información - Administración
Information technology - Management
Scrum (Desarrollo de software
Scrum (Computer software development)
Microsoft Azure (Plataforma informática)
Microsoft Azure (Computing platform)
Automatización
Automation
Análisis de datos
Data analysis
Visualización de datos
Data visualization
Grupo Éxito
Predicción de consumo
Optimización de recursos
Gestión de infraestructura
Docker (Software)
Docker (Software)
http://id.loc.gov/authorities/subjects/sh99000179
http://id.loc.gov/authorities/subjects/sh2005007675
http://id.loc.gov/authorities/subjects/sh2020007371
http://id.loc.gov/authorities/subjects/sh97002073
http://id.loc.gov/authorities/subjects/sh96008834
http://id.loc.gov/authorities/subjects/sh2008006980
http://id.loc.gov/authorities/subjects/sh2001003039
http://id.loc.gov/authorities/subjects/sh2016001752
http://vocabularies.unesco.org/thesaurus/concept3401
http://vocabularies.unesco.org/thesaurus/concept2214
http://vocabularies.unesco.org/thesaurus/concept17105
ODS 9: Industria, innovación e infraestructura. Construir infraestructuras resilientes, promover la industrialización inclusiva y sostenible y fomentar la innovación
Rights
openAccess
License
http://creativecommons.org/licenses/by-nc-sa/4.0/
id UDEA2_c5bab1de97e79b4d7900d0bc22d36077
oai_identifier_str oai:bibliotecadigital.udea.edu.co:10495/45833
network_acronym_str UDEA2
network_name_str Repositorio UdeA
repository_id_str
dc.title.spa.fl_str_mv Análisis predictivo y detección de anomalías en el consumo de MIPS del Grupo Éxito : optimización y eficiencia operacional
title Análisis predictivo y detección de anomalías en el consumo de MIPS del Grupo Éxito : optimización y eficiencia operacional
spellingShingle Análisis predictivo y detección de anomalías en el consumo de MIPS del Grupo Éxito : optimización y eficiencia operacional
MIPS (Computer architecture)
MIPS (Arquitectura de computadores)
Detección de anomalías (Seguridad informática)
Anomaly detection (Computer security)
Análisis predictivo
Predictive analytics
Minería de datos
Data mining
Python (Lenguaje de programación de computadores)
Python (Computer program language)
Tecnología de la información - Administración
Information technology - Management
Scrum (Desarrollo de software
Scrum (Computer software development)
Microsoft Azure (Plataforma informática)
Microsoft Azure (Computing platform)
Automatización
Automation
Análisis de datos
Data analysis
Visualización de datos
Data visualization
Grupo Éxito
Predicción de consumo
Optimización de recursos
Gestión de infraestructura
Docker (Software)
Docker (Software)
http://id.loc.gov/authorities/subjects/sh99000179
http://id.loc.gov/authorities/subjects/sh2005007675
http://id.loc.gov/authorities/subjects/sh2020007371
http://id.loc.gov/authorities/subjects/sh97002073
http://id.loc.gov/authorities/subjects/sh96008834
http://id.loc.gov/authorities/subjects/sh2008006980
http://id.loc.gov/authorities/subjects/sh2001003039
http://id.loc.gov/authorities/subjects/sh2016001752
http://vocabularies.unesco.org/thesaurus/concept3401
http://vocabularies.unesco.org/thesaurus/concept2214
http://vocabularies.unesco.org/thesaurus/concept17105
ODS 9: Industria, innovación e infraestructura. Construir infraestructuras resilientes, promover la industrialización inclusiva y sostenible y fomentar la innovación
title_short Análisis predictivo y detección de anomalías en el consumo de MIPS del Grupo Éxito : optimización y eficiencia operacional
title_full Análisis predictivo y detección de anomalías en el consumo de MIPS del Grupo Éxito : optimización y eficiencia operacional
title_fullStr Análisis predictivo y detección de anomalías en el consumo de MIPS del Grupo Éxito : optimización y eficiencia operacional
title_full_unstemmed Análisis predictivo y detección de anomalías en el consumo de MIPS del Grupo Éxito : optimización y eficiencia operacional
title_sort Análisis predictivo y detección de anomalías en el consumo de MIPS del Grupo Éxito : optimización y eficiencia operacional
dc.creator.fl_str_mv González Londoño, Estiben Andrey
dc.contributor.advisor.none.fl_str_mv Echeverri Valencia, Santiago
Quintero Pinzón, John Wilmerckx
dc.contributor.author.none.fl_str_mv González Londoño, Estiben Andrey
dc.subject.lcsh.none.fl_str_mv MIPS (Computer architecture)
MIPS (Arquitectura de computadores)
Detección de anomalías (Seguridad informática)
Anomaly detection (Computer security)
Análisis predictivo
Predictive analytics
Minería de datos
Data mining
Python (Lenguaje de programación de computadores)
Python (Computer program language)
Tecnología de la información - Administración
Information technology - Management
Scrum (Desarrollo de software
Scrum (Computer software development)
Microsoft Azure (Plataforma informática)
Microsoft Azure (Computing platform)
topic MIPS (Computer architecture)
MIPS (Arquitectura de computadores)
Detección de anomalías (Seguridad informática)
Anomaly detection (Computer security)
Análisis predictivo
Predictive analytics
Minería de datos
Data mining
Python (Lenguaje de programación de computadores)
Python (Computer program language)
Tecnología de la información - Administración
Information technology - Management
Scrum (Desarrollo de software
Scrum (Computer software development)
Microsoft Azure (Plataforma informática)
Microsoft Azure (Computing platform)
Automatización
Automation
Análisis de datos
Data analysis
Visualización de datos
Data visualization
Grupo Éxito
Predicción de consumo
Optimización de recursos
Gestión de infraestructura
Docker (Software)
Docker (Software)
http://id.loc.gov/authorities/subjects/sh99000179
http://id.loc.gov/authorities/subjects/sh2005007675
http://id.loc.gov/authorities/subjects/sh2020007371
http://id.loc.gov/authorities/subjects/sh97002073
http://id.loc.gov/authorities/subjects/sh96008834
http://id.loc.gov/authorities/subjects/sh2008006980
http://id.loc.gov/authorities/subjects/sh2001003039
http://id.loc.gov/authorities/subjects/sh2016001752
http://vocabularies.unesco.org/thesaurus/concept3401
http://vocabularies.unesco.org/thesaurus/concept2214
http://vocabularies.unesco.org/thesaurus/concept17105
ODS 9: Industria, innovación e infraestructura. Construir infraestructuras resilientes, promover la industrialización inclusiva y sostenible y fomentar la innovación
dc.subject.unesco.none.fl_str_mv Automatización
Automation
Análisis de datos
Data analysis
Visualización de datos
Data visualization
dc.subject.proposal.spa.fl_str_mv Grupo Éxito
Predicción de consumo
Optimización de recursos
Gestión de infraestructura
Docker (Software)
Docker (Software)
dc.subject.lcshuri.none.fl_str_mv http://id.loc.gov/authorities/subjects/sh99000179
http://id.loc.gov/authorities/subjects/sh2005007675
http://id.loc.gov/authorities/subjects/sh2020007371
http://id.loc.gov/authorities/subjects/sh97002073
http://id.loc.gov/authorities/subjects/sh96008834
http://id.loc.gov/authorities/subjects/sh2008006980
http://id.loc.gov/authorities/subjects/sh2001003039
http://id.loc.gov/authorities/subjects/sh2016001752
dc.subject.unescouri.none.fl_str_mv http://vocabularies.unesco.org/thesaurus/concept3401
http://vocabularies.unesco.org/thesaurus/concept2214
http://vocabularies.unesco.org/thesaurus/concept17105
dc.subject.ods.none.fl_str_mv ODS 9: Industria, innovación e infraestructura. Construir infraestructuras resilientes, promover la industrialización inclusiva y sostenible y fomentar la innovación
description El consumo de Millones de Instrucciones Por Segundo (MIPS) es un factor crítico en la eficiencia operativa de Grupo Éxito, dado su impacto en la infraestructura tecnológica y los costos asociados. En este trabajo, se relata el desarrollo de un microservicio diseñado para optimizar el análisis del consumo de MIPS mediante la detección de anomalías y la predicción del uso futuro de los recursos. Se implementaron modelos avanzados de análisis de datos en Python, incluyendo técnicas de detección de valores atípicos basadas en el rango intercuartílico y la desviación absoluta mediana, así como modelos de predicción utilizando la librería PROPHET. Para garantizar una integración eficiente con los sistemas de la compañía, se construyó una arquitectura modular que permite la extracción, procesamiento y almacenamiento de datos de una base de datos de origen a una base de datos normalizada. La información procesada se visualiza en un tablero interactivo de Power BI, proporcionando una herramienta estratégica para el monitoreo y la toma de decisiones. Adicionalmente, se implementó un flujo de despliegue automatizado mediante Azure DevOps, Kubernetes y Docker, asegurando la estabilidad y escalabilidad del sistema en entornos productivos. Los resultados obtenidos no solo optimizan el uso de MIPS, sino que también sientan las bases para futuras mejoras en la gestión de infraestructura tecnológica del Grupo Éxito. Este trabajo demuestra el potencial del análisis predictivo y la automatización en la gestión eficiente de recursos computacionales, proponiendo un modelo replicable para otras organizaciones con necesidades similares.
publishDate 2025
dc.date.accessioned.none.fl_str_mv 2025-05-08T19:45:56Z
dc.date.issued.none.fl_str_mv 2025
dc.type.none.fl_str_mv Trabajo de grado - Pregrado
dc.type.coar.none.fl_str_mv http://purl.org/coar/resource_type/c_7a1f
dc.type.redcol.none.fl_str_mv http://purl.org/redcol/resource_type/TP
dc.type.content.none.fl_str_mv Text
dc.type.coarversion.none.fl_str_mv http://purl.org/coar/version/c_b1a7d7d4d402bcce
dc.type.driver.none.fl_str_mv info:eu-repo/semantics/bachelorThesis
dc.type.version.none.fl_str_mv info:eu-repo/semantics/draft
format http://purl.org/coar/resource_type/c_7a1f
status_str draft
dc.identifier.uri.none.fl_str_mv https://hdl.handle.net/10495/45833
url https://hdl.handle.net/10495/45833
dc.language.iso.none.fl_str_mv spa
language spa
dc.relation.references.none.fl_str_mv Charu C. Aggarwal, Outlier analysis, 2 ed., Springer, Cham, 2017, Copyright Springer International Publishing AG 2017. Hardcover published 2016, Softcover published 2018.
Mehala Balamurali and Raymond Leung, Statistical outliers, pp. 1443–1451, Springer International Publishing, Cham, 2023.
Sabyasachi Basu and Martin Meckesheimer, Automatic outlier detection for time series: an application to sensor data, Knowledge and Information Systems 11 (2007), no. 2, 137–154.
Ane Blázquez-García, Angel Conde, Usue Mori, and Jose A. Lozano, A review on outlier/anomaly detection in time series data, ACM (2020), Manuscript submitted to ACM.
D. Chicco, M. J. Warrens, and G. Jurman, The coefficient of determination r-squared is more informative than smape, mae, mape, mse and rmse in regression analysis evaluation, PeerJ Computer Science 7 (2021), e623.
Everette S Gardner Jr, Exponential smoothing: The state of the art, Journal of forecasting 4 (1985), no. 1, 1–28.
Andrew Harvey and Simon Peters, Estimation procedures for structural time series models, Journal of Forecasting 9 (1990), 89–108.
Trevor Hastie and Robert Tibshirani, Generalized additive models; some applications, Generalized Linear Models (New York, NY) (Robert Gilchrist, Brian Francis, and Joe Whittaker, eds.), Springer US, 1985, pp. 66–81.
D. M. Hawkins, Identification of outliers, 1 ed., Monographs on Statistics and Applied Probability, Springer Dordrecht, 1980, Copyright D. M. Hawkins 1980. Softcover published 2014, eBook published 2013.
Matthieu Komorowski, Dominic C. Marshall, Justin D. Salciccioli, and Yves Crutain, Exploratory data analysis, pp. 185–203, Springer International Publishing, Cham, 2016.
Julia Martins, Scrum: conceptos clave y cómo se aplica en la gestión de proyectos, Blog de Asana, febrero 2025, Consultado el 4 de marzo de 2025.
Z. Qu, W. Dai, C. Euan, et al., Exploratory functional data analysis, TEST (2024).
Dan Radigan, Backlog del producto: consejos para crear y priorizar, Blog de Atlassian, 2025, Consultado el 7 de febrero de 2025.
D. Rindskopf and M. Shiyko, Measures of dispersion, skewness and kurtosis, International Encyclopedia of Education (Third Edition) (Penelope Peterson, Eva Baker, and Barry McGaw, eds.), Elsevier, Oxford, third edition ed., 2010, pp. 267–273.
Ken Schwaber and Jeff Sutherland, La guía scrum: La guía definitiva de scrum: Las reglas del juego, November 2020, © 2020 Ken Schwaber and Jeff Sutherland. Disponible bajo la licencia Creative Commons Attribution Share-Alike.
Howard J. Seltman, Experimental design and analysis, http://www.stat.cmu.edu/~hseltman/309/Book/Book.pdf, 2012, Online resource accessed on January 25, 2025.
Facebook Open Source, Prophet: Forecasting at scale, 2023, Accessed: 2024-11-12.
Sean J. Taylor and Benjamin Letham, Forecasting at scale, PeerJ Preprints 5 (2017), e3190v2.
John W Tukey, Exploratory data analysis, Reading/Addison-Wesley (1977).
Unisys, Clearpath forward, 2025, Último acceso: 9 de enero de 2025.
Rand R. Wilcox, 3 - summarizing data, Applying Contemporary Statistical Techniques (Rand R. Wilcox, ed.), Academic Press, Burlington, 2003, pp. 55–91.
dc.rights.uri.none.fl_str_mv http://creativecommons.org/licenses/by-nc-sa/4.0/
dc.rights.accessrights.none.fl_str_mv info:eu-repo/semantics/openAccess
dc.rights.license.en.fl_str_mv Attribution-NonCommercial-ShareAlike 4.0 International
dc.rights.coar.none.fl_str_mv http://purl.org/coar/access_right/c_abf2
rights_invalid_str_mv http://creativecommons.org/licenses/by-nc-sa/4.0/
Attribution-NonCommercial-ShareAlike 4.0 International
http://purl.org/coar/access_right/c_abf2
eu_rights_str_mv openAccess
dc.format.extent.none.fl_str_mv 61 páginas
dc.format.mimetype.none.fl_str_mv application/pdf
dc.coverage.box.none.fl_str_mv Lat: 04 00 00 N degrees minutes Lat: 4.0000 decimal degrees Long: 072 00 00 W degrees minutes Long: -72.0000 decimal degrees
dc.coverage.tgn.none.fl_str_mv http://vocab.getty.edu/page/tgn/1000050
dc.coverage.country.none.fl_str_mv Colombia
dc.publisher.none.fl_str_mv Universidad de Antioquia
dc.publisher.program.none.fl_str_mv Estadística
dc.publisher.department.none.fl_str_mv Instituto de Matemáticas
dc.publisher.place.none.fl_str_mv Medellín, Colombia
dc.publisher.faculty.none.fl_str_mv Facultad de Ciencias Exactas y Naturales
dc.publisher.branch.none.fl_str_mv Campus Medellín - Ciudad Universitaria
publisher.none.fl_str_mv Universidad de Antioquia
institution Universidad de Antioquia
bitstream.url.fl_str_mv https://bibliotecadigital.udea.edu.co/bitstreams/1d1ba44c-dcbd-45b1-b5ba-a990920d690b/download
https://bibliotecadigital.udea.edu.co/bitstreams/3e7126b3-88dc-46eb-818c-438cfe898fc3/download
https://bibliotecadigital.udea.edu.co/bitstreams/ff6fc8ed-33ea-4e85-9391-a4c98c447b81/download
https://bibliotecadigital.udea.edu.co/bitstreams/95f979ba-1864-4d7c-9c07-1bd0165e6542/download
https://bibliotecadigital.udea.edu.co/bitstreams/4cc9c291-b540-4fbb-90bd-7441210a0ba2/download
bitstream.checksum.fl_str_mv 5f058ed280cc885fc8b1b6b72ecae4e6
b76e7a76e24cf2f94b3ce0ae5ed275d0
5643bfd9bcf29d560eeec56d584edaa9
7d47d1d86f88c340c9451f3912c58ed7
a48a7b2121e8fb6c7f7823434febdefc
bitstream.checksumAlgorithm.fl_str_mv MD5
MD5
MD5
MD5
MD5
repository.name.fl_str_mv Repositorio Institucional de la Universidad de Antioquia
repository.mail.fl_str_mv aplicacionbibliotecadigitalbiblioteca@udea.edu.co
_version_ 1851052528798531584
spelling Echeverri Valencia, SantiagoQuintero Pinzón, John WilmerckxGonzález Londoño, Estiben Andrey2025-05-08T19:45:56Z2025https://hdl.handle.net/10495/45833El consumo de Millones de Instrucciones Por Segundo (MIPS) es un factor crítico en la eficiencia operativa de Grupo Éxito, dado su impacto en la infraestructura tecnológica y los costos asociados. En este trabajo, se relata el desarrollo de un microservicio diseñado para optimizar el análisis del consumo de MIPS mediante la detección de anomalías y la predicción del uso futuro de los recursos. Se implementaron modelos avanzados de análisis de datos en Python, incluyendo técnicas de detección de valores atípicos basadas en el rango intercuartílico y la desviación absoluta mediana, así como modelos de predicción utilizando la librería PROPHET. Para garantizar una integración eficiente con los sistemas de la compañía, se construyó una arquitectura modular que permite la extracción, procesamiento y almacenamiento de datos de una base de datos de origen a una base de datos normalizada. La información procesada se visualiza en un tablero interactivo de Power BI, proporcionando una herramienta estratégica para el monitoreo y la toma de decisiones. Adicionalmente, se implementó un flujo de despliegue automatizado mediante Azure DevOps, Kubernetes y Docker, asegurando la estabilidad y escalabilidad del sistema en entornos productivos. Los resultados obtenidos no solo optimizan el uso de MIPS, sino que también sientan las bases para futuras mejoras en la gestión de infraestructura tecnológica del Grupo Éxito. Este trabajo demuestra el potencial del análisis predictivo y la automatización en la gestión eficiente de recursos computacionales, proponiendo un modelo replicable para otras organizaciones con necesidades similares.The consumption of Millions of Instructions Per Second (MIPS) is a critical factor in the operational efficiency of Grupo Éxito, given its impact on the technological infrastructure and the associated costs. In this paper, we report the development of a microservice designed to optimize the analysis of MIPS consumption by detecting anomalies and predicting future resource usage. Advanced data analysis models were implemented in Python, including outlier detection techniques based on interquartile range and median absolute deviation, as well as prediction models using the PROPHET library. To ensure efficient integration with the company's systems, a modular architecture was built to allow data extraction, processing, and storage from a source database to a normalized database. The processed information is visualized in an interactive Power BI dashboard, providing a strategic tool for monitoring and decision-making. Additionally, an automated deployment flow was implemented using Azure DevOps, Kubernetes, and Docker, ensuring the stability and scalability of the system in productive environments. The results obtained not only optimize the use of MIPS, but also lay the foundations for future improvements in the management of the technological infrastructure of Grupo Éxito. This work demonstrates the potential of predictive analytics and automation in the efficient management of computational resources, proposing a replicable model for other organizations with similar needs.PregradoEstadístico61 páginasapplication/pdfspaUniversidad de AntioquiaEstadísticaInstituto de MatemáticasMedellín, ColombiaFacultad de Ciencias Exactas y NaturalesCampus Medellín - Ciudad Universitariahttp://creativecommons.org/licenses/by-nc-sa/4.0/info:eu-repo/semantics/openAccessAttribution-NonCommercial-ShareAlike 4.0 Internationalhttp://purl.org/coar/access_right/c_abf2MIPS (Computer architecture)MIPS (Arquitectura de computadores)Detección de anomalías (Seguridad informática)Anomaly detection (Computer security)Análisis predictivoPredictive analyticsMinería de datosData miningPython (Lenguaje de programación de computadores)Python (Computer program language)Tecnología de la información - AdministraciónInformation technology - ManagementScrum (Desarrollo de softwareScrum (Computer software development)Microsoft Azure (Plataforma informática)Microsoft Azure (Computing platform)AutomatizaciónAutomationAnálisis de datosData analysisVisualización de datosData visualizationGrupo ÉxitoPredicción de consumoOptimización de recursosGestión de infraestructuraDocker (Software)Docker (Software)http://id.loc.gov/authorities/subjects/sh99000179http://id.loc.gov/authorities/subjects/sh2005007675http://id.loc.gov/authorities/subjects/sh2020007371http://id.loc.gov/authorities/subjects/sh97002073http://id.loc.gov/authorities/subjects/sh96008834http://id.loc.gov/authorities/subjects/sh2008006980http://id.loc.gov/authorities/subjects/sh2001003039http://id.loc.gov/authorities/subjects/sh2016001752http://vocabularies.unesco.org/thesaurus/concept3401http://vocabularies.unesco.org/thesaurus/concept2214http://vocabularies.unesco.org/thesaurus/concept17105ODS 9: Industria, innovación e infraestructura. Construir infraestructuras resilientes, promover la industrialización inclusiva y sostenible y fomentar la innovaciónAnálisis predictivo y detección de anomalías en el consumo de MIPS del Grupo Éxito : optimización y eficiencia operacionalTrabajo de grado - Pregradohttp://purl.org/coar/resource_type/c_7a1fhttp://purl.org/redcol/resource_type/TPTexthttp://purl.org/coar/version/c_b1a7d7d4d402bcceinfo:eu-repo/semantics/bachelorThesisinfo:eu-repo/semantics/draftCharu C. Aggarwal, Outlier analysis, 2 ed., Springer, Cham, 2017, Copyright Springer International Publishing AG 2017. Hardcover published 2016, Softcover published 2018.Mehala Balamurali and Raymond Leung, Statistical outliers, pp. 1443–1451, Springer International Publishing, Cham, 2023.Sabyasachi Basu and Martin Meckesheimer, Automatic outlier detection for time series: an application to sensor data, Knowledge and Information Systems 11 (2007), no. 2, 137–154.Ane Blázquez-García, Angel Conde, Usue Mori, and Jose A. Lozano, A review on outlier/anomaly detection in time series data, ACM (2020), Manuscript submitted to ACM.D. Chicco, M. J. Warrens, and G. Jurman, The coefficient of determination r-squared is more informative than smape, mae, mape, mse and rmse in regression analysis evaluation, PeerJ Computer Science 7 (2021), e623.Everette S Gardner Jr, Exponential smoothing: The state of the art, Journal of forecasting 4 (1985), no. 1, 1–28.Andrew Harvey and Simon Peters, Estimation procedures for structural time series models, Journal of Forecasting 9 (1990), 89–108.Trevor Hastie and Robert Tibshirani, Generalized additive models; some applications, Generalized Linear Models (New York, NY) (Robert Gilchrist, Brian Francis, and Joe Whittaker, eds.), Springer US, 1985, pp. 66–81.D. M. Hawkins, Identification of outliers, 1 ed., Monographs on Statistics and Applied Probability, Springer Dordrecht, 1980, Copyright D. M. Hawkins 1980. Softcover published 2014, eBook published 2013.Matthieu Komorowski, Dominic C. Marshall, Justin D. Salciccioli, and Yves Crutain, Exploratory data analysis, pp. 185–203, Springer International Publishing, Cham, 2016.Julia Martins, Scrum: conceptos clave y cómo se aplica en la gestión de proyectos, Blog de Asana, febrero 2025, Consultado el 4 de marzo de 2025.Z. Qu, W. Dai, C. Euan, et al., Exploratory functional data analysis, TEST (2024).Dan Radigan, Backlog del producto: consejos para crear y priorizar, Blog de Atlassian, 2025, Consultado el 7 de febrero de 2025.D. Rindskopf and M. Shiyko, Measures of dispersion, skewness and kurtosis, International Encyclopedia of Education (Third Edition) (Penelope Peterson, Eva Baker, and Barry McGaw, eds.), Elsevier, Oxford, third edition ed., 2010, pp. 267–273.Ken Schwaber and Jeff Sutherland, La guía scrum: La guía definitiva de scrum: Las reglas del juego, November 2020, © 2020 Ken Schwaber and Jeff Sutherland. Disponible bajo la licencia Creative Commons Attribution Share-Alike.Howard J. Seltman, Experimental design and analysis, http://www.stat.cmu.edu/~hseltman/309/Book/Book.pdf, 2012, Online resource accessed on January 25, 2025.Facebook Open Source, Prophet: Forecasting at scale, 2023, Accessed: 2024-11-12.Sean J. Taylor and Benjamin Letham, Forecasting at scale, PeerJ Preprints 5 (2017), e3190v2.John W Tukey, Exploratory data analysis, Reading/Addison-Wesley (1977).Unisys, Clearpath forward, 2025, Último acceso: 9 de enero de 2025.Rand R. Wilcox, 3 - summarizing data, Applying Contemporary Statistical Techniques (Rand R. Wilcox, ed.), Academic Press, Burlington, 2003, pp. 55–91.Lat: 04 00 00 N degrees minutes Lat: 4.0000 decimal degrees Long: 072 00 00 W degrees minutes Long: -72.0000 decimal degreeshttp://vocab.getty.edu/page/tgn/1000050ColombiaPublicationORIGINALGonzalezEstiben_2025_AnalisisPrediccionAnomalias.pdfGonzalezEstiben_2025_AnalisisPrediccionAnomalias.pdfapplication/pdf2873492https://bibliotecadigital.udea.edu.co/bitstreams/1d1ba44c-dcbd-45b1-b5ba-a990920d690b/download5f058ed280cc885fc8b1b6b72ecae4e6MD51trueAnonymousREADLICENSElicense.txtlicense.txttext/plain; charset=utf-814837https://bibliotecadigital.udea.edu.co/bitstreams/3e7126b3-88dc-46eb-818c-438cfe898fc3/downloadb76e7a76e24cf2f94b3ce0ae5ed275d0MD53falseAnonymousREADCC-LICENSElicense_rdflicense_rdfapplication/rdf+xml; charset=utf-81160https://bibliotecadigital.udea.edu.co/bitstreams/ff6fc8ed-33ea-4e85-9391-a4c98c447b81/download5643bfd9bcf29d560eeec56d584edaa9MD54falseAnonymousREADTEXTGonzalezEstiben_2025_AnalisisPrediccionAnomalias.pdf.txtGonzalezEstiben_2025_AnalisisPrediccionAnomalias.pdf.txtExtracted texttext/plain101770https://bibliotecadigital.udea.edu.co/bitstreams/95f979ba-1864-4d7c-9c07-1bd0165e6542/download7d47d1d86f88c340c9451f3912c58ed7MD55falseAnonymousREADTHUMBNAILGonzalezEstiben_2025_AnalisisPrediccionAnomalias.pdf.jpgGonzalezEstiben_2025_AnalisisPrediccionAnomalias.pdf.jpgGenerated Thumbnailimage/jpeg7391https://bibliotecadigital.udea.edu.co/bitstreams/4cc9c291-b540-4fbb-90bd-7441210a0ba2/downloada48a7b2121e8fb6c7f7823434febdefcMD56falseAnonymousREAD10495/45833oai:bibliotecadigital.udea.edu.co:10495/458332025-05-19 15:56:38.886http://creativecommons.org/licenses/by-nc-sa/4.0/Attribution-NonCommercial-ShareAlike 4.0 Internationalopen.accesshttps://bibliotecadigital.udea.edu.coRepositorio Institucional de la Universidad de Antioquiaaplicacionbibliotecadigitalbiblioteca@udea.edu.coTEEgT0JSQSAoVEFMIFkgQ09NTyBTRSBERUZJTkUgTcOBUyBBREVMQU5URSkgU0UgT1RPUkdBIEJBSk8gTE9TIFRFUk1JTk9TIERFIEVTVEEgTElDRU5DSUEgUMOaQkxJQ0EgREUgQ1JFQVRJVkUgQ09NTU9OUyAo4oCcTFBDQ+KAnSBPIOKAnExJQ0VOQ0lB4oCdKS4gTEEgT0JSQSBFU1TDgSBQUk9URUdJREEgUE9SIERFUkVDSE9TIERFIEFVVE9SIFkvVSBPVFJBUyBMRVlFUyBBUExJQ0FCTEVTLiBRVUVEQSBQUk9ISUJJRE8gQ1VBTFFVSUVSIFVTTyBRVUUgU0UgSEFHQSBERSBMQSBPQlJBIFFVRSBOTyBDVUVOVEUgQ09OIExBIEFVVE9SSVpBQ0nDk04gUEVSVElORU5URSBERSBDT05GT1JNSURBRCBDT04gTE9TIFTDiVJNSU5PUyBERSBFU1RBIExJQ0VOQ0lBIFkgREUgTEEgTEVZIERFIERFUkVDSE8gREUgQVVUT1IuCgpNRURJQU5URSBFTCBFSkVSQ0lDSU8gREUgQ1VBTFFVSUVSQSBERSBMT1MgREVSRUNIT1MgUVVFIFNFIE9UT1JHQU4gRU4gRVNUQSBMSUNFTkNJQSwgVVNURUQgQUNFUFRBIFkgQUNVRVJEQSBRVUVEQVIgT0JMSUdBRE8gRU4gTE9TIFRFUk1JTk9TIFFVRSBTRSBTRcORQUxBTiBFTiBFTExBLiBFTCBMSUNFTkNJQU5URSBDT05DRURFIEEgVVNURUQgTE9TIERFUkVDSE9TIENPTlRFTklET1MgRU4gRVNUQSBMSUNFTkNJQSBDT05ESUNJT05BRE9TIEEgTEEgQUNFUFRBQ0nDk04gREUgU1VTIFRFUk1JTk9TIFkgQ09ORElDSU9ORVMuIAoKMS4gRGVmaW5pY2lvbmVzCmEuIE9icmEgQ29sZWN0aXZhIGVzIHVuYSBvYnJhLCB0YWwgY29tbyB1bmEgcHVibGljYWNpw7NuIHBlcmnDs2RpY2EsIHVuYSBhbnRvbG9nw61hLCBvIHVuYSBlbmNpY2xvcGVkaWEsIGVuIGxhIHF1ZSBsYSBvYnJhIGVuIHN1IHRvdGFsaWRhZCwgc2luIG1vZGlmaWNhY2nDs24gYWxndW5hLCBqdW50byBjb24gdW4gZ3J1cG8gZGUgb3RyYXMgY29udHJpYnVjaW9uZXMgcXVlIGNvbnN0aXR1eWVuIG9icmFzIHNlcGFyYWRhcyBlIGluZGVwZW5kaWVudGVzIGVuIHPDrSBtaXNtYXMsIHNlIGludGVncmFuIGVuIHVuIHRvZG8gY29sZWN0aXZvLiBVbmEgT2JyYSBxdWUgY29uc3RpdHV5ZSB1bmEgb2JyYSBjb2xlY3RpdmEgbm8gc2UgY29uc2lkZXJhcsOhIHVuYSBPYnJhIERlcml2YWRhIChjb21vIHNlIGRlZmluZSBhYmFqbykgcGFyYSBsb3MgcHJvcMOzc2l0b3MgZGUgZXN0YSBsaWNlbmNpYS4gYXF1ZWxsYSBwcm9kdWNpZGEgcG9yIHVuIGdydXBvIGRlIGF1dG9yZXMsIGVuIHF1ZSBsYSBPYnJhIHNlIGVuY3VlbnRyYSBzaW4gbW9kaWZpY2FjaW9uZXMsIGp1bnRvIGNvbiB1bmEgY2llcnRhIGNhbnRpZGFkIGRlIG90cmFzIGNvbnRyaWJ1Y2lvbmVzLCBxdWUgY29uc3RpdHV5ZW4gZW4gc8OtIG1pc21vcyB0cmFiYWpvcyBzZXBhcmFkb3MgZSBpbmRlcGVuZGllbnRlcywgcXVlIHNvbiBpbnRlZ3JhZG9zIGFsIHRvZG8gY29sZWN0aXZvLCB0YWxlcyBjb21vIHB1YmxpY2FjaW9uZXMgcGVyacOzZGljYXMsIGFudG9sb2fDrWFzIG8gZW5jaWNsb3BlZGlhcy4KYi4gT2JyYSBEZXJpdmFkYSBzaWduaWZpY2EgdW5hIG9icmEgYmFzYWRhIGVuIGxhIG9icmEgb2JqZXRvIGRlIGVzdGEgbGljZW5jaWEgbyBlbiDDqXN0YSB5IG90cmFzIG9icmFzIHByZWV4aXN0ZW50ZXMsIHRhbGVzIGNvbW8gdHJhZHVjY2lvbmVzLCBhcnJlZ2xvcyBtdXNpY2FsZXMsIGRyYW1hdGl6YWNpb25lcywg4oCcZmljY2lvbmFsaXphY2lvbmVz4oCdLCB2ZXJzaW9uZXMgcGFyYSBjaW5lLCDigJxncmFiYWNpb25lcyBkZSBzb25pZG/igJ0sIHJlcHJvZHVjY2lvbmVzIGRlIGFydGUsIHJlc8O6bWVuZXMsIGNvbmRlbnNhY2lvbmVzLCBvIGN1YWxxdWllciBvdHJhIGVuIGxhIHF1ZSBsYSBvYnJhIHB1ZWRhIHNlciB0cmFuc2Zvcm1hZGEsIGNhbWJpYWRhIG8gYWRhcHRhZGEsIGV4Y2VwdG8gYXF1ZWxsYXMgcXVlIGNvbnN0aXR1eWFuIHVuYSBvYnJhIGNvbGVjdGl2YSwgbGFzIHF1ZSBubyBzZXLDoW4gY29uc2lkZXJhZGFzIHVuYSBvYnJhIGRlcml2YWRhIHBhcmEgZWZlY3RvcyBkZSBlc3RhIGxpY2VuY2lhLiAoUGFyYSBldml0YXIgZHVkYXMsIGVuIGVsIGNhc28gZGUgcXVlIGxhIE9icmEgc2VhIHVuYSBjb21wb3NpY2nDs24gbXVzaWNhbCBvIHVuYSBncmFiYWNpw7NuIHNvbm9yYSwgcGFyYSBsb3MgZWZlY3RvcyBkZSBlc3RhIExpY2VuY2lhIGxhIHNpbmNyb25pemFjacOzbiB0ZW1wb3JhbCBkZSBsYSBPYnJhIGNvbiB1bmEgaW1hZ2VuIGVuIG1vdmltaWVudG8gc2UgY29uc2lkZXJhcsOhIHVuYSBPYnJhIERlcml2YWRhIHBhcmEgbG9zIGZpbmVzIGRlIGVzdGEgbGljZW5jaWEpLgpjLiBMaWNlbmNpYW50ZSwgZXMgZWwgaW5kaXZpZHVvIG8gbGEgZW50aWRhZCB0aXR1bGFyIGRlIGxvcyBkZXJlY2hvcyBkZSBhdXRvciBxdWUgb2ZyZWNlIGxhIE9icmEgZW4gY29uZm9ybWlkYWQgY29uIGxhcyBjb25kaWNpb25lcyBkZSBlc3RhIExpY2VuY2lhLgpkLiBBdXRvciBvcmlnaW5hbCwgZXMgZWwgaW5kaXZpZHVvIHF1ZSBjcmXDsyBsYSBPYnJhLgplLiBPYnJhLCBlcyBhcXVlbGxhIG9icmEgc3VzY2VwdGlibGUgZGUgcHJvdGVjY2nDs24gcG9yIGVsIHLDqWdpbWVuIGRlIERlcmVjaG8gZGUgQXV0b3IgeSBxdWUgZXMgb2ZyZWNpZGEgZW4gbG9zIHTDqXJtaW5vcyBkZSBlc3RhIGxpY2VuY2lhCmYuIFVzdGVkLCBlcyBlbCBpbmRpdmlkdW8gbyBsYSBlbnRpZGFkIHF1ZSBlamVyY2l0YSBsb3MgZGVyZWNob3Mgb3RvcmdhZG9zIGFsIGFtcGFybyBkZSBlc3RhIExpY2VuY2lhIHkgcXVlIGNvbiBhbnRlcmlvcmlkYWQgbm8gaGEgdmlvbGFkbyBsYXMgY29uZGljaW9uZXMgZGUgbGEgbWlzbWEgcmVzcGVjdG8gYSBsYSBPYnJhLCBvIHF1ZSBoYXlhIG9idGVuaWRvIGF1dG9yaXphY2nDs24gZXhwcmVzYSBwb3IgcGFydGUgZGVsIExpY2VuY2lhbnRlIHBhcmEgZWplcmNlciBsb3MgZGVyZWNob3MgYWwgYW1wYXJvIGRlIGVzdGEgTGljZW5jaWEgcGVzZSBhIHVuYSB2aW9sYWNpw7NuIGFudGVyaW9yLgoJICAKMi4gRGVyZWNob3MgZGUgVXNvcyBIb25yYWRvcyB5IGV4Y2VwY2lvbmVzIExlZ2FsZXMuCk5hZGEgZW4gZXN0YSBMaWNlbmNpYSBwb2Ryw6Egc2VyIGludGVycHJldGFkbyBjb21vIHVuYSBkaXNtaW51Y2nDs24sIGxpbWl0YWNpw7NuIG8gcmVzdHJpY2Npw7NuIGRlIGxvcyBkZXJlY2hvcyBkZXJpdmFkb3MgZGVsIHVzbyBob25yYWRvIHkgb3RyYXMgbGltaXRhY2lvbmVzIG8gZXhjZXBjaW9uZXMgYSBsb3MgZGVyZWNob3MgZGVsIGF1dG9yIGJham8gZWwgcsOpZ2ltZW4gbGVnYWwgdmlnZW50ZSBvIGRlcml2YWRvIGRlIGN1YWxxdWllciBvdHJhIG5vcm1hIHF1ZSBzZSBsZSBhcGxpcXVlLgogIAozLiBDb25jZXNpw7NuIGRlIGxhIExpY2VuY2lhLgpCYWpvIGxvcyB0w6lybWlub3MgeSBjb25kaWNpb25lcyBkZSBlc3RhIExpY2VuY2lhLCBlbCBMaWNlbmNpYW50ZSBvdG9yZ2EgYSBVc3RlZCB1bmEgbGljZW5jaWEgbXVuZGlhbCwgbGlicmUgZGUgcmVnYWzDrWFzLCBubyBleGNsdXNpdmEgeSBwZXJwZXR1YSAoZHVyYW50ZSB0b2RvIGVsIHBlcsOtb2RvIGRlIHZpZ2VuY2lhIGRlIGxvcyBkZXJlY2hvcyBkZSBhdXRvcikgcGFyYSBlamVyY2VyIGVzdG9zIGRlcmVjaG9zIHNvYnJlIGxhIE9icmEgdGFsIHkgY29tbyBzZSBpbmRpY2EgYSBjb250aW51YWNpw7NuOgphLiBSZXByb2R1Y2lyIGxhIE9icmEsIGluY29ycG9yYXIgbGEgT2JyYSBlbiB1bmEgbyBtw6FzIE9icmFzIENvbGVjdGl2YXMsIHkgcmVwcm9kdWNpciBsYSBPYnJhIGluY29ycG9yYWRhIGVuIGxhcyBPYnJhcyBDb2xlY3RpdmFzLgpiLiBEaXN0cmlidWlyIGNvcGlhcyBvIGZvbm9ncmFtYXMgZGUgbGFzIE9icmFzLCBleGhpYmlybGFzIHDDumJsaWNhbWVudGUsIGVqZWN1dGFybGFzIHDDumJsaWNhbWVudGUgeS9vIHBvbmVybGFzIGEgZGlzcG9zaWNpw7NuIHDDumJsaWNhLCBpbmNsdXnDqW5kb2xhcyBjb21vIGluY29ycG9yYWRhcyBlbiBPYnJhcyBDb2xlY3RpdmFzLCBzZWfDum4gY29ycmVzcG9uZGEuCmMuIERpc3RyaWJ1aXIgY29waWFzIGRlIGxhcyBPYnJhcyBEZXJpdmFkYXMgcXVlIHNlIGdlbmVyZW4sIGV4aGliaXJsYXMgcMO6YmxpY2FtZW50ZSwgZWplY3V0YXJsYXMgcMO6YmxpY2FtZW50ZSB5L28gcG9uZXJsYXMgYSBkaXNwb3NpY2nDs24gcMO6YmxpY2EuCgpMb3MgZGVyZWNob3MgbWVuY2lvbmFkb3MgYW50ZXJpb3JtZW50ZSBwdWVkZW4gc2VyIGVqZXJjaWRvcyBlbiB0b2RvcyBsb3MgbWVkaW9zIHkgZm9ybWF0b3MsIGFjdHVhbG1lbnRlIGNvbm9jaWRvcyBvIHF1ZSBzZSBpbnZlbnRlbiBlbiBlbCBmdXR1cm8uIExvcyBkZXJlY2hvcyBhbnRlcyBtZW5jaW9uYWRvcyBpbmNsdXllbiBlbCBkZXJlY2hvIGEgcmVhbGl6YXIgZGljaGFzIG1vZGlmaWNhY2lvbmVzIGVuIGxhIG1lZGlkYSBxdWUgc2VhbiB0w6ljbmljYW1lbnRlIG5lY2VzYXJpYXMgcGFyYSBlamVyY2VyIGxvcyBkZXJlY2hvcyBlbiBvdHJvIG1lZGlvIG8gZm9ybWF0b3MsIHBlcm8gZGUgb3RyYSBtYW5lcmEgdXN0ZWQgbm8gZXN0w6EgYXV0b3JpemFkbyBwYXJhIHJlYWxpemFyIG9icmFzIGRlcml2YWRhcy4gVG9kb3MgbG9zIGRlcmVjaG9zIG5vIG90b3JnYWRvcyBleHByZXNhbWVudGUgcG9yIGVsIExpY2VuY2lhbnRlIHF1ZWRhbiBwb3IgZXN0ZSBtZWRpbyByZXNlcnZhZG9zLCBpbmNsdXllbmRvIHBlcm8gc2luIGxpbWl0YXJzZSBhIGFxdWVsbG9zIHF1ZSBzZSBtZW5jaW9uYW4gZW4gbGFzIHNlY2Npb25lcyA0KGQpIHkgNChlKS4KICAgIAo0LiBSZXN0cmljY2lvbmVzLgpMYSBsaWNlbmNpYSBvdG9yZ2FkYSBlbiBsYSBhbnRlcmlvciBTZWNjacOzbiAzIGVzdMOhIGV4cHJlc2FtZW50ZSBzdWpldGEgeSBsaW1pdGFkYSBwb3IgbGFzIHNpZ3VpZW50ZXMgcmVzdHJpY2Npb25lczoKYS4gVXN0ZWQgcHVlZGUgZGlzdHJpYnVpciwgZXhoaWJpciBww7pibGljYW1lbnRlLCBlamVjdXRhciBww7pibGljYW1lbnRlLCBvIHBvbmVyIGEgZGlzcG9zaWNpw7NuIHDDumJsaWNhIGxhIE9icmEgc8OzbG8gYmFqbyBsYXMgY29uZGljaW9uZXMgZGUgZXN0YSBMaWNlbmNpYSwgeSBVc3RlZCBkZWJlIGluY2x1aXIgdW5hIGNvcGlhIGRlIGVzdGEgbGljZW5jaWEgbyBkZWwgSWRlbnRpZmljYWRvciBVbml2ZXJzYWwgZGUgUmVjdXJzb3MgZGUgbGEgbWlzbWEgY29uIGNhZGEgY29waWEgZGUgbGEgT2JyYSBxdWUgZGlzdHJpYnV5YSwgZXhoaWJhIHDDumJsaWNhbWVudGUsIGVqZWN1dGUgcMO6YmxpY2FtZW50ZSBvIHBvbmdhIGEgZGlzcG9zaWNpw7NuIHDDumJsaWNhLiBObyBlcyBwb3NpYmxlIG9mcmVjZXIgbyBpbXBvbmVyIG5pbmd1bmEgY29uZGljacOzbiBzb2JyZSBsYSBPYnJhIHF1ZSBhbHRlcmUgbyBsaW1pdGUgbGFzIGNvbmRpY2lvbmVzIGRlIGVzdGEgTGljZW5jaWEgbyBlbCBlamVyY2ljaW8gZGUgbG9zIGRlcmVjaG9zIGRlIGxvcyBkZXN0aW5hdGFyaW9zIG90b3JnYWRvcyBlbiBlc3RlIGRvY3VtZW50by4gTm8gZXMgcG9zaWJsZSBzdWJsaWNlbmNpYXIgbGEgT2JyYS4gVXN0ZWQgZGViZSBtYW50ZW5lciBpbnRhY3RvcyB0b2RvcyBsb3MgYXZpc29zIHF1ZSBoYWdhbiByZWZlcmVuY2lhIGEgZXN0YSBMaWNlbmNpYSB5IGEgbGEgY2zDoXVzdWxhIGRlIGxpbWl0YWNpw7NuIGRlIGdhcmFudMOtYXMuIFVzdGVkIG5vIHB1ZWRlIGRpc3RyaWJ1aXIsIGV4aGliaXIgcMO6YmxpY2FtZW50ZSwgZWplY3V0YXIgcMO6YmxpY2FtZW50ZSwgbyBwb25lciBhIGRpc3Bvc2ljacOzbiBww7pibGljYSBsYSBPYnJhIGNvbiBhbGd1bmEgbWVkaWRhIHRlY25vbMOzZ2ljYSBxdWUgY29udHJvbGUgZWwgYWNjZXNvIG8gbGEgdXRpbGl6YWNpw7NuIGRlIGVsbGEgZGUgdW5hIGZvcm1hIHF1ZSBzZWEgaW5jb25zaXN0ZW50ZSBjb24gbGFzIGNvbmRpY2lvbmVzIGRlIGVzdGEgTGljZW5jaWEuIExvIGFudGVyaW9yIHNlIGFwbGljYSBhIGxhIE9icmEgaW5jb3Jwb3JhZGEgYSB1bmEgT2JyYSBDb2xlY3RpdmEsIHBlcm8gZXN0byBubyBleGlnZSBxdWUgbGEgT2JyYSBDb2xlY3RpdmEgYXBhcnRlIGRlIGxhIG9icmEgbWlzbWEgcXVlZGUgc3VqZXRhIGEgbGFzIGNvbmRpY2lvbmVzIGRlIGVzdGEgTGljZW5jaWEuIFNpIFVzdGVkIGNyZWEgdW5hIE9icmEgQ29sZWN0aXZhLCBwcmV2aW8gYXZpc28gZGUgY3VhbHF1aWVyIExpY2VuY2lhbnRlIGRlYmUsIGVuIGxhIG1lZGlkYSBkZSBsbyBwb3NpYmxlLCBlbGltaW5hciBkZSBsYSBPYnJhIENvbGVjdGl2YSBjdWFscXVpZXIgcmVmZXJlbmNpYSBhIGRpY2hvIExpY2VuY2lhbnRlIG8gYWwgQXV0b3IgT3JpZ2luYWwsIHNlZ8O6biBsbyBzb2xpY2l0YWRvIHBvciBlbCBMaWNlbmNpYW50ZSB5IGNvbmZvcm1lIGxvIGV4aWdlIGxhIGNsw6F1c3VsYSA0KGMpLgpiLiBVc3RlZCBubyBwdWVkZSBlamVyY2VyIG5pbmd1bm8gZGUgbG9zIGRlcmVjaG9zIHF1ZSBsZSBoYW4gc2lkbyBvdG9yZ2Fkb3MgZW4gbGEgU2VjY2nDs24gMyBwcmVjZWRlbnRlIGRlIG1vZG8gcXVlIGVzdMOpbiBwcmluY2lwYWxtZW50ZSBkZXN0aW5hZG9zIG8gZGlyZWN0YW1lbnRlIGRpcmlnaWRvcyBhIGNvbnNlZ3VpciB1biBwcm92ZWNobyBjb21lcmNpYWwgbyB1bmEgY29tcGVuc2FjacOzbiBtb25ldGFyaWEgcHJpdmFkYS4gRWwgaW50ZXJjYW1iaW8gZGUgbGEgT2JyYSBwb3Igb3RyYXMgb2JyYXMgcHJvdGVnaWRhcyBwb3IgZGVyZWNob3MgZGUgYXV0b3IsIHlhIHNlYSBhIHRyYXbDqXMgZGUgdW4gc2lzdGVtYSBwYXJhIGNvbXBhcnRpciBhcmNoaXZvcyBkaWdpdGFsZXMgKGRpZ2l0YWwgZmlsZS1zaGFyaW5nKSBvIGRlIGN1YWxxdWllciBvdHJhIG1hbmVyYSBubyBzZXLDoSBjb25zaWRlcmFkbyBjb21vIGVzdGFyIGRlc3RpbmFkbyBwcmluY2lwYWxtZW50ZSBvIGRpcmlnaWRvIGRpcmVjdGFtZW50ZSBhIGNvbnNlZ3VpciB1biBwcm92ZWNobyBjb21lcmNpYWwgbyB1bmEgY29tcGVuc2FjacOzbiBtb25ldGFyaWEgcHJpdmFkYSwgc2llbXByZSBxdWUgbm8gc2UgcmVhbGljZSB1biBwYWdvIG1lZGlhbnRlIHVuYSBjb21wZW5zYWNpw7NuIG1vbmV0YXJpYSBlbiByZWxhY2nDs24gY29uIGVsIGludGVyY2FtYmlvIGRlIG9icmFzIHByb3RlZ2lkYXMgcG9yIGVsIGRlcmVjaG8gZGUgYXV0b3IuCmMuIFNpIHVzdGVkIGRpc3RyaWJ1eWUsIGV4aGliZSBww7pibGljYW1lbnRlLCBlamVjdXRhIHDDumJsaWNhbWVudGUgbyBlamVjdXRhIHDDumJsaWNhbWVudGUgZW4gZm9ybWEgZGlnaXRhbCBsYSBPYnJhIG8gY3VhbHF1aWVyIE9icmEgRGVyaXZhZGEgdSBPYnJhIENvbGVjdGl2YSwgVXN0ZWQgZGViZSBtYW50ZW5lciBpbnRhY3RhIHRvZGEgbGEgaW5mb3JtYWNpw7NuIGRlIGRlcmVjaG8gZGUgYXV0b3IgZGUgbGEgT2JyYSB5IHByb3BvcmNpb25hciwgZGUgZm9ybWEgcmF6b25hYmxlIHNlZ8O6biBlbCBtZWRpbyBvIG1hbmVyYSBxdWUgVXN0ZWQgZXN0w6kgdXRpbGl6YW5kbzogKGkpIGVsIG5vbWJyZSBkZWwgQXV0b3IgT3JpZ2luYWwgc2kgZXN0w6EgcHJvdmlzdG8gKG8gc2V1ZMOzbmltbywgc2kgZnVlcmUgYXBsaWNhYmxlKSwgeS9vIChpaSkgZWwgbm9tYnJlIGRlIGxhIHBhcnRlIG8gbGFzIHBhcnRlcyBxdWUgZWwgQXV0b3IgT3JpZ2luYWwgeS9vIGVsIExpY2VuY2lhbnRlIGh1YmllcmVuIGRlc2lnbmFkbyBwYXJhIGxhIGF0cmlidWNpw7NuICh2LmcuLCB1biBpbnN0aXR1dG8gcGF0cm9jaW5hZG9yLCBlZGl0b3JpYWwsIHB1YmxpY2FjacOzbikgZW4gbGEgaW5mb3JtYWNpw7NuIGRlIGxvcyBkZXJlY2hvcyBkZSBhdXRvciBkZWwgTGljZW5jaWFudGUsIHTDqXJtaW5vcyBkZSBzZXJ2aWNpb3MgbyBkZSBvdHJhcyBmb3JtYXMgcmF6b25hYmxlczsgZWwgdMOtdHVsbyBkZSBsYSBPYnJhIHNpIGVzdMOhIHByb3Zpc3RvOyBlbiBsYSBtZWRpZGEgZGUgbG8gcmF6b25hYmxlbWVudGUgZmFjdGlibGUgeSwgc2kgZXN0w6EgcHJvdmlzdG8sIGVsIElkZW50aWZpY2Fkb3IgVW5pZm9ybWUgZGUgUmVjdXJzb3MgKFVuaWZvcm0gUmVzb3VyY2UgSWRlbnRpZmllcikgcXVlIGVsIExpY2VuY2lhbnRlIGVzcGVjaWZpY2EgcGFyYSBzZXIgYXNvY2lhZG8gY29uIGxhIE9icmEsIHNhbHZvIHF1ZSB0YWwgVVJJIG5vIHNlIHJlZmllcmEgYSBsYSBub3RhIHNvYnJlIGxvcyBkZXJlY2hvcyBkZSBhdXRvciBvIGEgbGEgaW5mb3JtYWNpw7NuIHNvYnJlIGVsIGxpY2VuY2lhbWllbnRvIGRlIGxhIE9icmE7IHkgZW4gZWwgY2FzbyBkZSB1bmEgT2JyYSBEZXJpdmFkYSwgYXRyaWJ1aXIgZWwgY3LDqWRpdG8gaWRlbnRpZmljYW5kbyBlbCB1c28gZGUgbGEgT2JyYSBlbiBsYSBPYnJhIERlcml2YWRhICh2LmcuLCAiVHJhZHVjY2nDs24gRnJhbmNlc2EgZGUgbGEgT2JyYSBkZWwgQXV0b3IgT3JpZ2luYWwsIiBvICJHdWnDs24gQ2luZW1hdG9ncsOhZmljbyBiYXNhZG8gZW4gbGEgT2JyYSBvcmlnaW5hbCBkZWwgQXV0b3IgT3JpZ2luYWwiKS4gVGFsIGNyw6lkaXRvIHB1ZWRlIHNlciBpbXBsZW1lbnRhZG8gZGUgY3VhbHF1aWVyIGZvcm1hIHJhem9uYWJsZTsgZW4gZWwgY2Fzbywgc2luIGVtYmFyZ28sIGRlIE9icmFzIERlcml2YWRhcyB1IE9icmFzIENvbGVjdGl2YXMsIHRhbCBjcsOpZGl0byBhcGFyZWNlcsOhLCBjb21vIG3DrW5pbW8sIGRvbmRlIGFwYXJlY2UgZWwgY3LDqWRpdG8gZGUgY3VhbHF1aWVyIG90cm8gYXV0b3IgY29tcGFyYWJsZSB5IGRlIHVuYSBtYW5lcmEsIGFsIG1lbm9zLCB0YW4gZGVzdGFjYWRhIGNvbW8gZWwgY3LDqWRpdG8gZGUgb3RybyBhdXRvciBjb21wYXJhYmxlLiAgCmQuIFBhcmEgZXZpdGFyIHRvZGEgY29uZnVzacOzbiwgZWwgTGljZW5jaWFudGUgYWNsYXJhIHF1ZSwgY3VhbmRvIGxhIG9icmEgZXMgdW5hIGNvbXBvc2ljacOzbiBtdXNpY2FsOgoKaS4gUmVnYWzDrWFzIHBvciBpbnRlcnByZXRhY2nDs24geSBlamVjdWNpw7NuIGJham8gbGljZW5jaWFzIGdlbmVyYWxlcy4gRWwgTGljZW5jaWFudGUgc2UgcmVzZXJ2YSBlbCBkZXJlY2hvIGV4Y2x1c2l2byBkZSBhdXRvcml6YXIgbGEgZWplY3VjacOzbiBww7pibGljYSBvIGxhIGVqZWN1Y2nDs24gcMO6YmxpY2EgZGlnaXRhbCBkZSBsYSBvYnJhIHkgZGUgcmVjb2xlY3Rhciwgc2VhIGluZGl2aWR1YWxtZW50ZSBvIGEgdHJhdsOpcyBkZSB1bmEgc29jaWVkYWQgZGUgZ2VzdGnDs24gY29sZWN0aXZhIGRlIGRlcmVjaG9zIGRlIGF1dG9yIHkgZGVyZWNob3MgY29uZXhvcyAocG9yIGVqZW1wbG8sIFNBWUNPKSwgbGFzIHJlZ2Fsw61hcyBwb3IgbGEgZWplY3VjacOzbiBww7pibGljYSBvIHBvciBsYSBlamVjdWNpw7NuIHDDumJsaWNhIGRpZ2l0YWwgZGUgbGEgb2JyYSAocG9yIGVqZW1wbG8gV2ViY2FzdCkgbGljZW5jaWFkYSBiYWpvIGxpY2VuY2lhcyBnZW5lcmFsZXMsIHNpIGxhIGludGVycHJldGFjacOzbiBvIGVqZWN1Y2nDs24gZGUgbGEgb2JyYSBlc3TDoSBwcmltb3JkaWFsbWVudGUgb3JpZW50YWRhIHBvciBvIGRpcmlnaWRhIGEgbGEgb2J0ZW5jacOzbiBkZSB1bmEgdmVudGFqYSBjb21lcmNpYWwgbyB1bmEgY29tcGVuc2FjacOzbiBtb25ldGFyaWEgcHJpdmFkYS4KaWkuIFJlZ2Fsw61hcyBwb3IgRm9ub2dyYW1hcy4gRWwgTGljZW5jaWFudGUgc2UgcmVzZXJ2YSBlbCBkZXJlY2hvIGV4Y2x1c2l2byBkZSByZWNvbGVjdGFyLCBpbmRpdmlkdWFsbWVudGUgbyBhIHRyYXbDqXMgZGUgdW5hIHNvY2llZGFkIGRlIGdlc3Rpw7NuIGNvbGVjdGl2YSBkZSBkZXJlY2hvcyBkZSBhdXRvciB5IGRlcmVjaG9zIGNvbmV4b3MgKHBvciBlamVtcGxvLCBsb3MgY29uc2FncmFkb3MgcG9yIGxhIFNBWUNPKSwgdW5hIGFnZW5jaWEgZGUgZGVyZWNob3MgbXVzaWNhbGVzIG8gYWxnw7puIGFnZW50ZSBkZXNpZ25hZG8sIGxhcyByZWdhbMOtYXMgcG9yIGN1YWxxdWllciBmb25vZ3JhbWEgcXVlIFVzdGVkIGNyZWUgYSBwYXJ0aXIgZGUgbGEgb2JyYSAo4oCcdmVyc2nDs24gY292ZXLigJ0pIHkgZGlzdHJpYnV5YSwgZW4gbG9zIHTDqXJtaW5vcyBkZWwgcsOpZ2ltZW4gZGUgZGVyZWNob3MgZGUgYXV0b3IsIHNpIGxhIGNyZWFjacOzbiBvIGRpc3RyaWJ1Y2nDs24gZGUgZXNhIHZlcnNpw7NuIGNvdmVyIGVzdMOhIHByaW1vcmRpYWxtZW50ZSBkZXN0aW5hZGEgbyBkaXJpZ2lkYSBhIG9idGVuZXIgdW5hIHZlbnRhamEgY29tZXJjaWFsIG8gdW5hIGNvbXBlbnNhY2nDs24gbW9uZXRhcmlhIHByaXZhZGEuCiAgICAgIAplLiBHZXN0acOzbiBkZSBEZXJlY2hvcyBkZSBBdXRvciBzb2JyZSBJbnRlcnByZXRhY2lvbmVzIHkgRWplY3VjaW9uZXMgRGlnaXRhbGVzIChXZWJDYXN0aW5nKS4gUGFyYSBldml0YXIgdG9kYSBjb25mdXNpw7NuLCBlbCBMaWNlbmNpYW50ZSBhY2xhcmEgcXVlLCBjdWFuZG8gbGEgb2JyYSBzZWEgdW4gZm9ub2dyYW1hLCBlbCBMaWNlbmNpYW50ZSBzZSByZXNlcnZhIGVsIGRlcmVjaG8gZXhjbHVzaXZvIGRlIGF1dG9yaXphciBsYSBlamVjdWNpw7NuIHDDumJsaWNhIGRpZ2l0YWwgZGUgbGEgb2JyYSAocG9yIGVqZW1wbG8sIHdlYmNhc3QpIHkgZGUgcmVjb2xlY3RhciwgaW5kaXZpZHVhbG1lbnRlIG8gYSB0cmF2w6lzIGRlIHVuYSBzb2NpZWRhZCBkZSBnZXN0acOzbiBjb2xlY3RpdmEgZGUgZGVyZWNob3MgZGUgYXV0b3IgeSBkZXJlY2hvcyBjb25leG9zIChwb3IgZWplbXBsbywgQUNJTlBSTyksIGxhcyByZWdhbMOtYXMgcG9yIGxhIGVqZWN1Y2nDs24gcMO6YmxpY2EgZGlnaXRhbCBkZSBsYSBvYnJhIChwb3IgZWplbXBsbywgd2ViY2FzdCksIHN1amV0YSBhIGxhcyBkaXNwb3NpY2lvbmVzIGFwbGljYWJsZXMgZGVsIHLDqWdpbWVuIGRlIERlcmVjaG8gZGUgQXV0b3IsIHNpIGVzdGEgZWplY3VjacOzbiBww7pibGljYSBkaWdpdGFsIGVzdMOhIHByaW1vcmRpYWxtZW50ZSBkaXJpZ2lkYSBhIG9idGVuZXIgdW5hIHZlbnRhamEgY29tZXJjaWFsIG8gdW5hIGNvbXBlbnNhY2nDs24gbW9uZXRhcmlhIHByaXZhZGEuCiAgCjUuIFJlcHJlc2VudGFjaW9uZXMsIEdhcmFudMOtYXMgeSBMaW1pdGFjaW9uZXMgZGUgUmVzcG9uc2FiaWxpZGFkLgpBIE1FTk9TIFFVRSBMQVMgUEFSVEVTIExPIEFDT1JEQVJBTiBERSBPVFJBIEZPUk1BIFBPUiBFU0NSSVRPLCBFTCBMSUNFTkNJQU5URSBPRlJFQ0UgTEEgT0JSQSAoRU4gRUwgRVNUQURPIEVOIEVMIFFVRSBTRSBFTkNVRU5UUkEpIOKAnFRBTCBDVUFM4oCdLCBTSU4gQlJJTkRBUiBHQVJBTlTDjUFTIERFIENMQVNFIEFMR1VOQSBSRVNQRUNUTyBERSBMQSBPQlJBLCBZQSBTRUEgRVhQUkVTQSwgSU1QTMONQ0lUQSwgTEVHQUwgTyBDVUFMUVVJRVJBIE9UUkEsIElOQ0xVWUVORE8sIFNJTiBMSU1JVEFSU0UgQSBFTExBUywgR0FSQU5Uw41BUyBERSBUSVRVTEFSSURBRCwgQ09NRVJDSUFCSUxJREFELCBBREFQVEFCSUxJREFEIE8gQURFQ1VBQ0nDk04gQSBQUk9Qw5NTSVRPIERFVEVSTUlOQURPLCBBVVNFTkNJQSBERSBJTkZSQUNDScOTTiwgREUgQVVTRU5DSUEgREUgREVGRUNUT1MgTEFURU5URVMgTyBERSBPVFJPIFRJUE8sIE8gTEEgUFJFU0VOQ0lBIE8gQVVTRU5DSUEgREUgRVJST1JFUywgU0VBTiBPIE5PIERFU0NVQlJJQkxFUyAoUFVFREFOIE8gTk8gU0VSIEVTVE9TIERFU0NVQklFUlRPUykuIEFMR1VOQVMgSlVSSVNESUNDSU9ORVMgTk8gUEVSTUlURU4gTEEgRVhDTFVTScOTTiBERSBHQVJBTlTDjUFTIElNUEzDjUNJVEFTLCBFTiBDVVlPIENBU08gRVNUQSBFWENMVVNJw5NOIFBVRURFIE5PIEFQTElDQVJTRSBBIFVTVEVELgogIAo2LiBMaW1pdGFjacOzbiBkZSByZXNwb25zYWJpbGlkYWQuCkEgTUVOT1MgUVVFIExPIEVYSUpBIEVYUFJFU0FNRU5URSBMQSBMRVkgQVBMSUNBQkxFLCBFTCBMSUNFTkNJQU5URSBOTyBTRVLDgSBSRVNQT05TQUJMRSBBTlRFIFVTVEVEIFBPUiBEQcORTyBBTEdVTk8sIFNFQSBQT1IgUkVTUE9OU0FCSUxJREFEIEVYVFJBQ09OVFJBQ1RVQUwsIFBSRUNPTlRSQUNUVUFMIE8gQ09OVFJBQ1RVQUwsIE9CSkVUSVZBIE8gU1VCSkVUSVZBLCBTRSBUUkFURSBERSBEQcORT1MgTU9SQUxFUyBPIFBBVFJJTU9OSUFMRVMsIERJUkVDVE9TIE8gSU5ESVJFQ1RPUywgUFJFVklTVE9TIE8gSU1QUkVWSVNUT1MgUFJPRFVDSURPUyBQT1IgRUwgVVNPIERFIEVTVEEgTElDRU5DSUEgTyBERSBMQSBPQlJBLCBBVU4gQ1VBTkRPIEVMIExJQ0VOQ0lBTlRFIEhBWUEgU0lETyBBRFZFUlRJRE8gREUgTEEgUE9TSUJJTElEQUQgREUgRElDSE9TIERBw5FPUy4gQUxHVU5BUyBMRVlFUyBOTyBQRVJNSVRFTiBMQSBFWENMVVNJw5NOIERFIENJRVJUQSBSRVNQT05TQUJJTElEQUQsIEVOIENVWU8gQ0FTTyBFU1RBIEVYQ0xVU0nDk04gUFVFREUgTk8gQVBMSUNBUlNFIEEgVVNURUQuCiAgCjcuIFTDqXJtaW5vLgkKYS4gRXN0YSBMaWNlbmNpYSB5IGxvcyBkZXJlY2hvcyBvdG9yZ2Fkb3MgZW4gdmlydHVkIGRlIGVsbGEgdGVybWluYXLDoW4gYXV0b23DoXRpY2FtZW50ZSBzaSBVc3RlZCBpbmZyaW5nZSBhbGd1bmEgY29uZGljacOzbiBlc3RhYmxlY2lkYSBlbiBlbGxhLiBTaW4gZW1iYXJnbywgbG9zIGluZGl2aWR1b3MgbyBlbnRpZGFkZXMgcXVlIGhhbiByZWNpYmlkbyBPYnJhcyBEZXJpdmFkYXMgbyBDb2xlY3RpdmFzIGRlIFVzdGVkIGRlIGNvbmZvcm1pZGFkIGNvbiBlc3RhIExpY2VuY2lhLCBubyB2ZXLDoW4gdGVybWluYWRhcyBzdXMgbGljZW5jaWFzLCBzaWVtcHJlIHF1ZSBlc3RvcyBpbmRpdmlkdW9zIG8gZW50aWRhZGVzIHNpZ2FuIGN1bXBsaWVuZG8gw61udGVncmFtZW50ZSBsYXMgY29uZGljaW9uZXMgZGUgZXN0YXMgbGljZW5jaWFzLiBMYXMgU2VjY2lvbmVzIDEsIDIsIDUsIDYsIDcsIHkgOCBzdWJzaXN0aXLDoW4gYSBjdWFscXVpZXIgdGVybWluYWNpw7NuIGRlIGVzdGEgTGljZW5jaWEuCmIuIFN1amV0YSBhIGxhcyBjb25kaWNpb25lcyB5IHTDqXJtaW5vcyBhbnRlcmlvcmVzLCBsYSBsaWNlbmNpYSBvdG9yZ2FkYSBhcXXDrSBlcyBwZXJwZXR1YSAoZHVyYW50ZSBlbCBwZXLDrW9kbyBkZSB2aWdlbmNpYSBkZSBsb3MgZGVyZWNob3MgZGUgYXV0b3IgZGUgbGEgb2JyYSkuIE5vIG9ic3RhbnRlIGxvIGFudGVyaW9yLCBlbCBMaWNlbmNpYW50ZSBzZSByZXNlcnZhIGVsIGRlcmVjaG8gYSBwdWJsaWNhciB5L28gZXN0cmVuYXIgbGEgT2JyYSBiYWpvIGNvbmRpY2lvbmVzIGRlIGxpY2VuY2lhIGRpZmVyZW50ZXMgbyBhIGRlamFyIGRlIGRpc3RyaWJ1aXJsYSBlbiBsb3MgdMOpcm1pbm9zIGRlIGVzdGEgTGljZW5jaWEgZW4gY3VhbHF1aWVyIG1vbWVudG87IGVuIGVsIGVudGVuZGlkbywgc2luIGVtYmFyZ28sIHF1ZSBlc2EgZWxlY2Npw7NuIG5vIHNlcnZpcsOhIHBhcmEgcmV2b2NhciBlc3RhIGxpY2VuY2lhIG8gcXVlIGRlYmEgc2VyIG90b3JnYWRhICwgYmFqbyBsb3MgdMOpcm1pbm9zIGRlIGVzdGEgbGljZW5jaWEpLCB5IGVzdGEgbGljZW5jaWEgY29udGludWFyw6EgZW4gcGxlbm8gdmlnb3IgeSBlZmVjdG8gYSBtZW5vcyBxdWUgc2VhIHRlcm1pbmFkYSBjb21vIHNlIGV4cHJlc2EgYXRyw6FzLiBMYSBMaWNlbmNpYSByZXZvY2FkYSBjb250aW51YXLDoSBzaWVuZG8gcGxlbmFtZW50ZSB2aWdlbnRlIHkgZWZlY3RpdmEgc2kgbm8gc2UgbGUgZGEgdMOpcm1pbm8gZW4gbGFzIGNvbmRpY2lvbmVzIGluZGljYWRhcyBhbnRlcmlvcm1lbnRlLgogIAo4LiBWYXJpb3MuCmEuIENhZGEgdmV6IHF1ZSBVc3RlZCBkaXN0cmlidXlhIG8gcG9uZ2EgYSBkaXNwb3NpY2nDs24gcMO6YmxpY2EgbGEgT2JyYSBvIHVuYSBPYnJhIENvbGVjdGl2YSwgZWwgTGljZW5jaWFudGUgb2ZyZWNlcsOhIGFsIGRlc3RpbmF0YXJpbyB1bmEgbGljZW5jaWEgZW4gbG9zIG1pc21vcyB0w6lybWlub3MgeSBjb25kaWNpb25lcyBxdWUgbGEgbGljZW5jaWEgb3RvcmdhZGEgYSBVc3RlZCBiYWpvIGVzdGEgTGljZW5jaWEuCmIuIFNpIGFsZ3VuYSBkaXNwb3NpY2nDs24gZGUgZXN0YSBMaWNlbmNpYSByZXN1bHRhIGludmFsaWRhZGEgbyBubyBleGlnaWJsZSwgc2Vnw7puIGxhIGxlZ2lzbGFjacOzbiB2aWdlbnRlLCBlc3RvIG5vIGFmZWN0YXLDoSBuaSBsYSB2YWxpZGV6IG5pIGxhIGFwbGljYWJpbGlkYWQgZGVsIHJlc3RvIGRlIGNvbmRpY2lvbmVzIGRlIGVzdGEgTGljZW5jaWEgeSwgc2luIGFjY2nDs24gYWRpY2lvbmFsIHBvciBwYXJ0ZSBkZSBsb3Mgc3VqZXRvcyBkZSBlc3RlIGFjdWVyZG8sIGFxdcOpbGxhIHNlIGVudGVuZGVyw6EgcmVmb3JtYWRhIGxvIG3DrW5pbW8gbmVjZXNhcmlvIHBhcmEgaGFjZXIgcXVlIGRpY2hhIGRpc3Bvc2ljacOzbiBzZWEgdsOhbGlkYSB5IGV4aWdpYmxlLgpjLiBOaW5nw7puIHTDqXJtaW5vIG8gZGlzcG9zaWNpw7NuIGRlIGVzdGEgTGljZW5jaWEgc2UgZXN0aW1hcsOhIHJlbnVuY2lhZGEgeSBuaW5ndW5hIHZpb2xhY2nDs24gZGUgZWxsYSBzZXLDoSBjb25zZW50aWRhIGEgbWVub3MgcXVlIGVzYSByZW51bmNpYSBvIGNvbnNlbnRpbWllbnRvIHNlYSBvdG9yZ2FkbyBwb3IgZXNjcml0byB5IGZpcm1hZG8gcG9yIGxhIHBhcnRlIHF1ZSByZW51bmNpZSBvIGNvbnNpZW50YS4KZC4gRXN0YSBMaWNlbmNpYSByZWZsZWphIGVsIGFjdWVyZG8gcGxlbm8gZW50cmUgbGFzIHBhcnRlcyByZXNwZWN0byBhIGxhIE9icmEgYXF1w60gbGljZW5jaWFkYS4gTm8gaGF5IGFycmVnbG9zLCBhY3VlcmRvcyBvIGRlY2xhcmFjaW9uZXMgcmVzcGVjdG8gYSBsYSBPYnJhIHF1ZSBubyBlc3TDqW4gZXNwZWNpZmljYWRvcyBlbiBlc3RlIGRvY3VtZW50by4gRWwgTGljZW5jaWFudGUgbm8gc2UgdmVyw6EgbGltaXRhZG8gcG9yIG5pbmd1bmEgZGlzcG9zaWNpw7NuIGFkaWNpb25hbCBxdWUgcHVlZGEgc3VyZ2lyIGVuIGFsZ3VuYSBjb211bmljYWNpw7NuIGVtYW5hZGEgZGUgVXN0ZWQuIEVzdGEgTGljZW5jaWEgbm8gcHVlZGUgc2VyIG1vZGlmaWNhZGEgc2luIGVsIGNvbnNlbnRpbWllbnRvIG11dHVvIHBvciBlc2NyaXRvIGRlbCBMaWNlbmNpYW50ZSB5IFVzdGVkLgo=