Detección de Ataques de Intrusión con Algoritmos de Machine Learning

Este proyecto se centra en la creación de modelos de machine learning para la detección eficaz de ataques de intrusión. Se crearon modelos con diferentes algoritmos de aprendizaje automático y se compararon sus métricas de desempeño, seleccionando el modelo con mayor efectividad y de mayor rapidez e...

Full description

Autores:
Álvarez Polo, David
Tipo de recurso:
Trabajo de grado de pregrado
Fecha de publicación:
2024
Institución:
Universidad de los Andes
Repositorio:
Séneca: repositorio Uniandes
Idioma:
spa
OAI Identifier:
oai:repositorio.uniandes.edu.co:1992/73596
Acceso en línea:
https://hdl.handle.net/1992/73596
Palabra clave:
Conjuntos de datos
Algoritmos de aprendizaje automático
Precisión
Tiempos de ejecución
DoS Hulk
ID3
Ingeniería
Rights
openAccess
License
Attribution-NonCommercial-NoDerivatives 4.0 International
id UNIANDES2_083c5bd2f63ae921edeaa99998d4eabf
oai_identifier_str oai:repositorio.uniandes.edu.co:1992/73596
network_acronym_str UNIANDES2
network_name_str Séneca: repositorio Uniandes
repository_id_str
dc.title.spa.fl_str_mv Detección de Ataques de Intrusión con Algoritmos de Machine Learning
title Detección de Ataques de Intrusión con Algoritmos de Machine Learning
spellingShingle Detección de Ataques de Intrusión con Algoritmos de Machine Learning
Conjuntos de datos
Algoritmos de aprendizaje automático
Precisión
Tiempos de ejecución
DoS Hulk
ID3
Ingeniería
title_short Detección de Ataques de Intrusión con Algoritmos de Machine Learning
title_full Detección de Ataques de Intrusión con Algoritmos de Machine Learning
title_fullStr Detección de Ataques de Intrusión con Algoritmos de Machine Learning
title_full_unstemmed Detección de Ataques de Intrusión con Algoritmos de Machine Learning
title_sort Detección de Ataques de Intrusión con Algoritmos de Machine Learning
dc.creator.fl_str_mv Álvarez Polo, David
dc.contributor.advisor.none.fl_str_mv Lozano Garzón, Carlos Andrés
Montoya Orozco, Germán Adolfo
dc.contributor.author.none.fl_str_mv Álvarez Polo, David
dc.contributor.researchgroup.none.fl_str_mv Facultad de Ingeniería::COMIT - Comunicaciones y Tecnología de Información
dc.subject.keyword.spa.fl_str_mv Conjuntos de datos
Algoritmos de aprendizaje automático
Precisión
Tiempos de ejecución
topic Conjuntos de datos
Algoritmos de aprendizaje automático
Precisión
Tiempos de ejecución
DoS Hulk
ID3
Ingeniería
dc.subject.keyword.eng.fl_str_mv DoS Hulk
ID3
dc.subject.themes.spa.fl_str_mv Ingeniería
description Este proyecto se centra en la creación de modelos de machine learning para la detección eficaz de ataques de intrusión. Se crearon modelos con diferentes algoritmos de aprendizaje automático y se compararon sus métricas de desempeño, seleccionando el modelo con mayor efectividad y de mayor rapidez en cuanto a su tiempo de ejecución.
publishDate 2024
dc.date.accessioned.none.fl_str_mv 2024-01-30T13:53:02Z
dc.date.available.none.fl_str_mv 2024-01-30T13:53:02Z
dc.date.issued.none.fl_str_mv 2024-01-25
dc.type.none.fl_str_mv Trabajo de grado - Pregrado
dc.type.driver.none.fl_str_mv info:eu-repo/semantics/bachelorThesis
dc.type.version.none.fl_str_mv info:eu-repo/semantics/acceptedVersion
dc.type.coar.none.fl_str_mv http://purl.org/coar/resource_type/c_7a1f
dc.type.content.none.fl_str_mv Text
dc.type.redcol.none.fl_str_mv http://purl.org/redcol/resource_type/TP
format http://purl.org/coar/resource_type/c_7a1f
status_str acceptedVersion
dc.identifier.uri.none.fl_str_mv https://hdl.handle.net/1992/73596
dc.identifier.instname.none.fl_str_mv instname:Universidad de los Andes
dc.identifier.reponame.none.fl_str_mv reponame:Repositorio Institucional Séneca
dc.identifier.repourl.none.fl_str_mv repourl:https://repositorio.uniandes.edu.co/
url https://hdl.handle.net/1992/73596
identifier_str_mv instname:Universidad de los Andes
reponame:Repositorio Institucional Séneca
repourl:https://repositorio.uniandes.edu.co/
dc.language.iso.none.fl_str_mv spa
language spa
dc.relation.references.none.fl_str_mv [1] Centro de datos. VMware. Tomado de https://www.vmware.com/es/topics/glossary/content/data-center.html.
[2] Lesmes, L (2023). Colombia recibió 20.000 millones de ciberataques en 2022. El Tiempo. Publicado el 23 de abril de 2023. Tomado de https://www.eltiempo.com/tecnosfera/novedades-tecnologia/ciberseguridad-en-colombia-datos-sobre-ciberataques-en-el-pais-757651#:~:text=De%20estos%2C%20en%20el%20caso,por%20ciento%20frente%20a%202021.
[3] Vargas, N (2023). Las empresas que han sido blanco de ciberataques en Colombia en el último año. La República. Tomado de https://www.larepublica.co/empresas/las-empresas-que-han-sido-blanco-de-ciberataques-en-colombia-en-el-ultimo-ano-3529667.
[4] Hair, J. F., Black, W. C., Babin, B. J., & Anderson, R. E. (2019). Multivariate Data Analysis (8ª ed.). Cengage Learning.
[5] Tukey, J. W. (1977). Exploratory Data Analysis. Addison-Wesley.
[6] Provost, F., & Fawcett, T. (2013). Data Science for Business: What You Need to Know about Data Mining and Data-Analytic Thinking. OReilly Media.
[7] Mitchell, T. M. (1997). Machine Learning. McGraw Hill.
[8] Bishop, C. M. (2006). Pattern Recognition and Machine Learning. Springer.
[9] Hastie, T., Tibshirani, R., & Friedman, J. (2009). The Elements of Statistical Learning. Springer.
[10] James, G., Witten, D., Hastie, T., & Tibshirani, R. (2013). An Introduction to Statistical Learning. Springer.
[11] Breiman, L., Friedman, J., Stone, C. J., & Olshen, R. A. (1984). Classification and Regression Trees. CRC press.
[12] Cortes, C., & Vapnik, V. (1995). "Support-vector networks". Machine learning, 20(3), 273-297.
[13] Jain, A. K. (2010). Data clustering: 50 years beyond K-means. Pattern recognitiogn letters, 31(8), 651-666.
[14] Goodfellow, I., Bengio, Y., & Courville, A. (2016). Deep Learning. MIT Press.
[15] Mirkovic, J., & Reiher, P. (2004). A taxonomy of DDoS attack and DDoS defense mechanisms. ACM SIGCOMM Computer Communication Review, 34(2), 39-53.
[16] Cisco Systems, Inc. (2018). Denial of Service Attacks. En "Cisco 2018 Annual Cybersecurity Report". Cisco.
[17] Sen, S., & Clark, J. (2002). Defending against Denial of Service Attacks in Scout. In Proceedings of the 9th ACM Conference on Computer and Communications Security (pp. 259-270). ACM.
[18] Quinlan, J. R. (1986). Induction of decision trees. Machine learning, 1(1), 81-106.
[19] Russell, S., & Norvig, P. (2010). Artificial Intelligence: A Modern Approach. Prentice Hall.
[20] Mitchell, T. M. (1997). Machine Learning. McGraw Hill.
[21] Sokolova, M., & Lapalme, G. (2009). A systematic analysis of performance measures for classification tasks. Information Processing & Management, 45(4), 427-437.
[22] Provost, F., & Fawcett, T. (2013). Data Science for Business: What You Need to Know about Data Mining and Data-Analytic Thinking. OReilly Media.
[23] James, G., Witten, D., Hastie, T., & Tibshirani, R. (2013). An Introduction to Statistical Learning. Springer.
[24] Sharafaldin, I., Habibi Lashkari, A., & Ghorbani, A. A. (2018). Toward Generating a New Intrusion Detection Dataset and Intrusion Traffic Characterization. En Proceedings of the 4th International Conference on Information Systems Security and Privacy (ICISSP), Portugal, enero de 2018. Recuperado de https://www.unb.ca/cic/datasets/ids-2017.html
[25] Pedregosa, F., Varoquaux, G., Gramfort, A., Michel, V., Thirion, B., Grisel, O., ... & Vanderplas, J. (2011). Scikit-learn: Machine learning in Python. Journal of Machine Learning Research, 12, 2825-2830.
[26] Scikit-learn. (2023). QuadraticDiscriminantAnalysis. Documentación de scikit-learn: https://scikit-learn.org/stable/modules/generated/sklearn.discriminant_analysis.QuadraticDiscriminantAnalysis.html.
[27] Breiman, L. (2001). Random forests. Machine learning, 45(1), 5-32.
[28] Quinlan, J. R. (1986). Induction of decision trees. Machine learning, 1(1), 81-106.
[29] Freund, Y., & Schapire, R. E. (1997). A decision-theoretic generalization of on-line learning and an application to boosting. Journal of computer and system sciences, 55(1), 119-139.
[30] Scikit-learn. (2023). MLPClassifier. Documentación de scikit-learn: https://scikit-learn.org/stable/modules/generated/sklearn.neural_network.MLPClassifier.html.
[31] Cover, T., & Hart, P. (1967). Nearest neighbor pattern classification. IEEE transactions on information theory, 13(1), 21-27.
[32] Invest in Colombia. (2023). Colombia cuenta con una operación de centros de datos en crecimiento. Invest in Colombia.
https://investincolombia.com.co/es/sectores/tecnologia-de-la-informacion-e-industrias-creativas/centros-de-datos#:~:text=COLOMBIA%20CUENTA%20CON%20UNA%20OPERACI%C3%93N,tercer%20mercado%20de%20la%20regi%C3%B3n.
dc.rights.en.fl_str_mv Attribution-NonCommercial-NoDerivatives 4.0 International
dc.rights.uri.none.fl_str_mv http://creativecommons.org/licenses/by-nc-nd/4.0/
dc.rights.accessrights.none.fl_str_mv info:eu-repo/semantics/openAccess
dc.rights.coar.none.fl_str_mv http://purl.org/coar/access_right/c_abf2
rights_invalid_str_mv Attribution-NonCommercial-NoDerivatives 4.0 International
http://creativecommons.org/licenses/by-nc-nd/4.0/
http://purl.org/coar/access_right/c_abf2
eu_rights_str_mv openAccess
dc.format.extent.none.fl_str_mv 34 páginas
dc.format.mimetype.none.fl_str_mv application/pdf
dc.publisher.none.fl_str_mv Universidad de los Andes
dc.publisher.program.none.fl_str_mv Ingeniería de Sistemas y Computación
dc.publisher.faculty.none.fl_str_mv Facultad de Ingeniería
dc.publisher.department.none.fl_str_mv Departamento de Ingeniería Sistemas y Computación
publisher.none.fl_str_mv Universidad de los Andes
institution Universidad de los Andes
bitstream.url.fl_str_mv https://repositorio.uniandes.edu.co/bitstreams/de635c47-f374-41dc-b4f0-ac5dc0b2cc97/download
https://repositorio.uniandes.edu.co/bitstreams/9faf72a7-8882-4d06-9f65-6b2483562819/download
https://repositorio.uniandes.edu.co/bitstreams/afbc2196-b617-4dbc-a992-890b1b0e19b2/download
https://repositorio.uniandes.edu.co/bitstreams/165d0da4-29b8-40bd-b1bd-13aa08be0e85/download
https://repositorio.uniandes.edu.co/bitstreams/6715c687-70eb-478d-92c9-0c19fcd141ee/download
https://repositorio.uniandes.edu.co/bitstreams/e60e42b6-c2e5-433e-bc60-b4d3826bdc7c/download
https://repositorio.uniandes.edu.co/bitstreams/3d0359d1-0491-4a95-8a16-fdcc95587161/download
https://repositorio.uniandes.edu.co/bitstreams/857e12d2-7f1a-4fa3-921a-6f4332e09cd1/download
bitstream.checksum.fl_str_mv 8aa07ae02ed7ff91042e91c30f22ebd2
cc76f5c1c42bb2c2ce83f30ed6736138
ae9e573a68e7f92501b6913cc846c39f
4460e5956bc1d1639be9ae6146a50347
1aff438823ae7f498ae23add5f6acf67
bbc5a1be5f426b456c3735dbd63301a1
c7ac6ba8a5881018c959852d653f60e1
0199668e5ad5ecb221d579d889767c82
bitstream.checksumAlgorithm.fl_str_mv MD5
MD5
MD5
MD5
MD5
MD5
MD5
MD5
repository.name.fl_str_mv Repositorio institucional Séneca
repository.mail.fl_str_mv adminrepositorio@uniandes.edu.co
_version_ 1808390407694843904
spelling Lozano Garzón, Carlos Andrésvirtual::196-1Montoya Orozco, Germán Adolfovirtual::197-1Álvarez Polo, DavidFacultad de Ingeniería::COMIT - Comunicaciones y Tecnología de Información2024-01-30T13:53:02Z2024-01-30T13:53:02Z2024-01-25https://hdl.handle.net/1992/73596instname:Universidad de los Andesreponame:Repositorio Institucional Sénecarepourl:https://repositorio.uniandes.edu.co/Este proyecto se centra en la creación de modelos de machine learning para la detección eficaz de ataques de intrusión. Se crearon modelos con diferentes algoritmos de aprendizaje automático y se compararon sus métricas de desempeño, seleccionando el modelo con mayor efectividad y de mayor rapidez en cuanto a su tiempo de ejecución.En el marco de este proyecto, se llevó a cabo la recopilación de conjuntos de datos que contienen etiquetas de ataques de intrusión dirigidos a una infraestructura de red específica. El propósito principal fue explorar y aplicar algoritmos de aprendizaje automático para abordar la detección y prevención de estos ataques. En la fase de desarrollo, se emplearon diversos algoritmos de aprendizaje automático para entrenar y evaluar modelos destinados a la identificación de intrusiones. Se encontró que el ataque con mayor número de muestras fue el DoS Hulk. Tras un exhaustivo análisis, el modelo seleccionado se basó en el algoritmo ID3, que destacó por sus resultados sobresalientes en términos de precisión, exactitud, recall y eficiencia en los tiempos de ejecución.Within the framework of this project, a collection of datasets containing labels for intrusion attacks targeting a specific network infrastructure was carried out. The main purpose was to explore and apply machine learning algorithms to address the detection and prevention of these attacks. During the development phase, various machine learning algorithms were employed to train and evaluate models aimed at intrusion detection. It was found that the attack with the highest number of samples was the DoS Hulk. After thorough analysis, the selected model was based on the ID3 algorithm, which stood out for its outstanding results in terms of accuracy, precision, recall, and efficiency in execution times.Ingeniero de Sistemas y ComputaciónPregradoCiberseguridad34 páginasapplication/pdfspaUniversidad de los AndesIngeniería de Sistemas y ComputaciónFacultad de IngenieríaDepartamento de Ingeniería Sistemas y ComputaciónAttribution-NonCommercial-NoDerivatives 4.0 Internationalhttp://creativecommons.org/licenses/by-nc-nd/4.0/info:eu-repo/semantics/openAccesshttp://purl.org/coar/access_right/c_abf2Detección de Ataques de Intrusión con Algoritmos de Machine LearningTrabajo de grado - Pregradoinfo:eu-repo/semantics/bachelorThesisinfo:eu-repo/semantics/acceptedVersionhttp://purl.org/coar/resource_type/c_7a1fTexthttp://purl.org/redcol/resource_type/TPConjuntos de datosAlgoritmos de aprendizaje automáticoPrecisiónTiempos de ejecuciónDoS HulkID3Ingeniería[1] Centro de datos. VMware. Tomado de https://www.vmware.com/es/topics/glossary/content/data-center.html.[2] Lesmes, L (2023). Colombia recibió 20.000 millones de ciberataques en 2022. El Tiempo. Publicado el 23 de abril de 2023. Tomado de https://www.eltiempo.com/tecnosfera/novedades-tecnologia/ciberseguridad-en-colombia-datos-sobre-ciberataques-en-el-pais-757651#:~:text=De%20estos%2C%20en%20el%20caso,por%20ciento%20frente%20a%202021.[3] Vargas, N (2023). Las empresas que han sido blanco de ciberataques en Colombia en el último año. La República. Tomado de https://www.larepublica.co/empresas/las-empresas-que-han-sido-blanco-de-ciberataques-en-colombia-en-el-ultimo-ano-3529667.[4] Hair, J. F., Black, W. C., Babin, B. J., & Anderson, R. E. (2019). Multivariate Data Analysis (8ª ed.). Cengage Learning.[5] Tukey, J. W. (1977). Exploratory Data Analysis. Addison-Wesley.[6] Provost, F., & Fawcett, T. (2013). Data Science for Business: What You Need to Know about Data Mining and Data-Analytic Thinking. OReilly Media.[7] Mitchell, T. M. (1997). Machine Learning. McGraw Hill.[8] Bishop, C. M. (2006). Pattern Recognition and Machine Learning. Springer.[9] Hastie, T., Tibshirani, R., & Friedman, J. (2009). The Elements of Statistical Learning. Springer.[10] James, G., Witten, D., Hastie, T., & Tibshirani, R. (2013). An Introduction to Statistical Learning. Springer.[11] Breiman, L., Friedman, J., Stone, C. J., & Olshen, R. A. (1984). Classification and Regression Trees. CRC press.[12] Cortes, C., & Vapnik, V. (1995). "Support-vector networks". Machine learning, 20(3), 273-297.[13] Jain, A. K. (2010). Data clustering: 50 years beyond K-means. Pattern recognitiogn letters, 31(8), 651-666.[14] Goodfellow, I., Bengio, Y., & Courville, A. (2016). Deep Learning. MIT Press.[15] Mirkovic, J., & Reiher, P. (2004). A taxonomy of DDoS attack and DDoS defense mechanisms. ACM SIGCOMM Computer Communication Review, 34(2), 39-53.[16] Cisco Systems, Inc. (2018). Denial of Service Attacks. En "Cisco 2018 Annual Cybersecurity Report". Cisco.[17] Sen, S., & Clark, J. (2002). Defending against Denial of Service Attacks in Scout. In Proceedings of the 9th ACM Conference on Computer and Communications Security (pp. 259-270). ACM.[18] Quinlan, J. R. (1986). Induction of decision trees. Machine learning, 1(1), 81-106.[19] Russell, S., & Norvig, P. (2010). Artificial Intelligence: A Modern Approach. Prentice Hall.[20] Mitchell, T. M. (1997). Machine Learning. McGraw Hill.[21] Sokolova, M., & Lapalme, G. (2009). A systematic analysis of performance measures for classification tasks. Information Processing & Management, 45(4), 427-437.[22] Provost, F., & Fawcett, T. (2013). Data Science for Business: What You Need to Know about Data Mining and Data-Analytic Thinking. OReilly Media.[23] James, G., Witten, D., Hastie, T., & Tibshirani, R. (2013). An Introduction to Statistical Learning. Springer.[24] Sharafaldin, I., Habibi Lashkari, A., & Ghorbani, A. A. (2018). Toward Generating a New Intrusion Detection Dataset and Intrusion Traffic Characterization. En Proceedings of the 4th International Conference on Information Systems Security and Privacy (ICISSP), Portugal, enero de 2018. Recuperado de https://www.unb.ca/cic/datasets/ids-2017.html[25] Pedregosa, F., Varoquaux, G., Gramfort, A., Michel, V., Thirion, B., Grisel, O., ... & Vanderplas, J. (2011). Scikit-learn: Machine learning in Python. Journal of Machine Learning Research, 12, 2825-2830.[26] Scikit-learn. (2023). QuadraticDiscriminantAnalysis. Documentación de scikit-learn: https://scikit-learn.org/stable/modules/generated/sklearn.discriminant_analysis.QuadraticDiscriminantAnalysis.html.[27] Breiman, L. (2001). Random forests. Machine learning, 45(1), 5-32.[28] Quinlan, J. R. (1986). Induction of decision trees. Machine learning, 1(1), 81-106.[29] Freund, Y., & Schapire, R. E. (1997). A decision-theoretic generalization of on-line learning and an application to boosting. Journal of computer and system sciences, 55(1), 119-139.[30] Scikit-learn. (2023). MLPClassifier. Documentación de scikit-learn: https://scikit-learn.org/stable/modules/generated/sklearn.neural_network.MLPClassifier.html.[31] Cover, T., & Hart, P. (1967). Nearest neighbor pattern classification. IEEE transactions on information theory, 13(1), 21-27.[32] Invest in Colombia. (2023). Colombia cuenta con una operación de centros de datos en crecimiento. Invest in Colombia.https://investincolombia.com.co/es/sectores/tecnologia-de-la-informacion-e-industrias-creativas/centros-de-datos#:~:text=COLOMBIA%20CUENTA%20CON%20UNA%20OPERACI%C3%93N,tercer%20mercado%20de%20la%20regi%C3%B3n.20191138Publication9a0ca46c-ed4d-4da2-af46-db6aa9454a0dvirtual::196-1a197a9f7-96e5-47cb-a497-2ee4c9cdce71virtual::197-19a0ca46c-ed4d-4da2-af46-db6aa9454a0dvirtual::196-1a197a9f7-96e5-47cb-a497-2ee4c9cdce71virtual::197-1https://scienti.minciencias.gov.co/cvlac/visualizador/generarCurriculoCv.do?cod_rh=0000219541virtual::196-1ORIGINALDetección de Ataques de Intrusión con Algoritmos de Machine Learning.pdfDetección de Ataques de Intrusión con Algoritmos de Machine Learning.pdfapplication/pdf620743https://repositorio.uniandes.edu.co/bitstreams/de635c47-f374-41dc-b4f0-ac5dc0b2cc97/download8aa07ae02ed7ff91042e91c30f22ebd2MD51Autorización entrega tesis David Alvarez.pdfAutorización entrega tesis David Alvarez.pdfHIDEapplication/pdf247189https://repositorio.uniandes.edu.co/bitstreams/9faf72a7-8882-4d06-9f65-6b2483562819/downloadcc76f5c1c42bb2c2ce83f30ed6736138MD54LICENSElicense.txtlicense.txttext/plain; charset=utf-82535https://repositorio.uniandes.edu.co/bitstreams/afbc2196-b617-4dbc-a992-890b1b0e19b2/downloadae9e573a68e7f92501b6913cc846c39fMD52CC-LICENSElicense_rdflicense_rdfapplication/rdf+xml; charset=utf-8805https://repositorio.uniandes.edu.co/bitstreams/165d0da4-29b8-40bd-b1bd-13aa08be0e85/download4460e5956bc1d1639be9ae6146a50347MD53TEXTDetección de Ataques de Intrusión con Algoritmos de Machine Learning.pdf.txtDetección de Ataques de Intrusión con Algoritmos de Machine Learning.pdf.txtExtracted texttext/plain49840https://repositorio.uniandes.edu.co/bitstreams/6715c687-70eb-478d-92c9-0c19fcd141ee/download1aff438823ae7f498ae23add5f6acf67MD55Autorización entrega tesis David Alvarez.pdf.txtAutorización entrega tesis David Alvarez.pdf.txtExtracted texttext/plain1533https://repositorio.uniandes.edu.co/bitstreams/e60e42b6-c2e5-433e-bc60-b4d3826bdc7c/downloadbbc5a1be5f426b456c3735dbd63301a1MD57THUMBNAILDetección de Ataques de Intrusión con Algoritmos de Machine Learning.pdf.jpgDetección de Ataques de Intrusión con Algoritmos de Machine Learning.pdf.jpgGenerated Thumbnailimage/jpeg8209https://repositorio.uniandes.edu.co/bitstreams/3d0359d1-0491-4a95-8a16-fdcc95587161/downloadc7ac6ba8a5881018c959852d653f60e1MD56Autorización entrega tesis David Alvarez.pdf.jpgAutorización entrega tesis David Alvarez.pdf.jpgGenerated Thumbnailimage/jpeg11459https://repositorio.uniandes.edu.co/bitstreams/857e12d2-7f1a-4fa3-921a-6f4332e09cd1/download0199668e5ad5ecb221d579d889767c82MD581992/73596oai:repositorio.uniandes.edu.co:1992/735962024-02-16 15:19:18.906http://creativecommons.org/licenses/by-nc-nd/4.0/Attribution-NonCommercial-NoDerivatives 4.0 Internationalopen.accesshttps://repositorio.uniandes.edu.coRepositorio institucional Sénecaadminrepositorio@uniandes.edu.coPGgzPjxzdHJvbmc+RGVzY2FyZ28gZGUgUmVzcG9uc2FiaWxpZGFkIC0gTGljZW5jaWEgZGUgQXV0b3JpemFjacOzbjwvc3Ryb25nPjwvaDM+CjxwPjxzdHJvbmc+UG9yIGZhdm9yIGxlZXIgYXRlbnRhbWVudGUgZXN0ZSBkb2N1bWVudG8gcXVlIHBlcm1pdGUgYWwgUmVwb3NpdG9yaW8gSW5zdGl0dWNpb25hbCBTw6luZWNhIHJlcHJvZHVjaXIgeSBkaXN0cmlidWlyIGxvcyByZWN1cnNvcyBkZSBpbmZvcm1hY2nDs24gZGVwb3NpdGFkb3MgbWVkaWFudGUgbGEgYXV0b3JpemFjacOzbiBkZSBsb3Mgc2lndWllbnRlcyB0w6lybWlub3M6PC9zdHJvbmc+PC9wPgo8cD5Db25jZWRhIGxhIGxpY2VuY2lhIGRlIGRlcMOzc2l0byBlc3TDoW5kYXIgc2VsZWNjaW9uYW5kbyBsYSBvcGNpw7NuIDxzdHJvbmc+J0FjZXB0YXIgbG9zIHTDqXJtaW5vcyBhbnRlcmlvcm1lbnRlIGRlc2NyaXRvcyc8L3N0cm9uZz4geSBjb250aW51YXIgZWwgcHJvY2VzbyBkZSBlbnbDrW8gbWVkaWFudGUgZWwgYm90w7NuIDxzdHJvbmc+J1NpZ3VpZW50ZScuPC9zdHJvbmc+PC9wPgo8aHI+CjxwPllvLCBlbiBtaSBjYWxpZGFkIGRlIGF1dG9yIGRlbCB0cmFiYWpvIGRlIHRlc2lzLCBtb25vZ3JhZsOtYSBvIHRyYWJham8gZGUgZ3JhZG8sIGhhZ28gZW50cmVnYSBkZWwgZWplbXBsYXIgcmVzcGVjdGl2byB5IGRlIHN1cyBhbmV4b3MgZGUgc2VyIGVsIGNhc28sIGVuIGZvcm1hdG8gZGlnaXRhbCB5L28gZWxlY3Ryw7NuaWNvIHkgYXV0b3Jpem8gYSBsYSBVbml2ZXJzaWRhZCBkZSBsb3MgQW5kZXMgcGFyYSBxdWUgcmVhbGljZSBsYSBwdWJsaWNhY2nDs24gZW4gZWwgU2lzdGVtYSBkZSBCaWJsaW90ZWNhcyBvIGVuIGN1YWxxdWllciBvdHJvIHNpc3RlbWEgbyBiYXNlIGRlIGRhdG9zIHByb3BpbyBvIGFqZW5vIGEgbGEgVW5pdmVyc2lkYWQgeSBwYXJhIHF1ZSBlbiBsb3MgdMOpcm1pbm9zIGVzdGFibGVjaWRvcyBlbiBsYSBMZXkgMjMgZGUgMTk4MiwgTGV5IDQ0IGRlIDE5OTMsIERlY2lzacOzbiBBbmRpbmEgMzUxIGRlIDE5OTMsIERlY3JldG8gNDYwIGRlIDE5OTUgeSBkZW3DoXMgbm9ybWFzIGdlbmVyYWxlcyBzb2JyZSBsYSBtYXRlcmlhLCB1dGlsaWNlIGVuIHRvZGFzIHN1cyBmb3JtYXMsIGxvcyBkZXJlY2hvcyBwYXRyaW1vbmlhbGVzIGRlIHJlcHJvZHVjY2nDs24sIGNvbXVuaWNhY2nDs24gcMO6YmxpY2EsIHRyYW5zZm9ybWFjacOzbiB5IGRpc3RyaWJ1Y2nDs24gKGFscXVpbGVyLCBwcsOpc3RhbW8gcMO6YmxpY28gZSBpbXBvcnRhY2nDs24pIHF1ZSBtZSBjb3JyZXNwb25kZW4gY29tbyBjcmVhZG9yIGRlIGxhIG9icmEgb2JqZXRvIGRlbCBwcmVzZW50ZSBkb2N1bWVudG8uPC9wPgo8cD5MYSBwcmVzZW50ZSBhdXRvcml6YWNpw7NuIHNlIGVtaXRlIGVuIGNhbGlkYWQgZGUgYXV0b3IgZGUgbGEgb2JyYSBvYmpldG8gZGVsIHByZXNlbnRlIGRvY3VtZW50byB5IG5vIGNvcnJlc3BvbmRlIGEgY2VzacOzbiBkZSBkZXJlY2hvcywgc2lubyBhIGxhIGF1dG9yaXphY2nDs24gZGUgdXNvIGFjYWTDqW1pY28gZGUgY29uZm9ybWlkYWQgY29uIGxvIGFudGVyaW9ybWVudGUgc2XDsWFsYWRvLiBMYSBwcmVzZW50ZSBhdXRvcml6YWNpw7NuIHNlIGhhY2UgZXh0ZW5zaXZhIG5vIHNvbG8gYSBsYXMgZmFjdWx0YWRlcyB5IGRlcmVjaG9zIGRlIHVzbyBzb2JyZSBsYSBvYnJhIGVuIGZvcm1hdG8gbyBzb3BvcnRlIG1hdGVyaWFsLCBzaW5vIHRhbWJpw6luIHBhcmEgZm9ybWF0byBlbGVjdHLDs25pY28sIHkgZW4gZ2VuZXJhbCBwYXJhIGN1YWxxdWllciBmb3JtYXRvIGNvbm9jaWRvIG8gcG9yIGNvbm9jZXIuPC9wPgo8cD5FbCBhdXRvciwgbWFuaWZpZXN0YSBxdWUgbGEgb2JyYSBvYmpldG8gZGUgbGEgcHJlc2VudGUgYXV0b3JpemFjacOzbiBlcyBvcmlnaW5hbCB5IGxhIHJlYWxpesOzIHNpbiB2aW9sYXIgbyB1c3VycGFyIGRlcmVjaG9zIGRlIGF1dG9yIGRlIHRlcmNlcm9zLCBwb3IgbG8gdGFudG8sIGxhIG9icmEgZXMgZGUgc3UgZXhjbHVzaXZhIGF1dG9yw61hIHkgdGllbmUgbGEgdGl0dWxhcmlkYWQgc29icmUgbGEgbWlzbWEuPC9wPgo8cD5FbiBjYXNvIGRlIHByZXNlbnRhcnNlIGN1YWxxdWllciByZWNsYW1hY2nDs24gbyBhY2Npw7NuIHBvciBwYXJ0ZSBkZSB1biB0ZXJjZXJvIGVuIGN1YW50byBhIGxvcyBkZXJlY2hvcyBkZSBhdXRvciBzb2JyZSBsYSBvYnJhIGVuIGN1ZXN0acOzbiwgZWwgYXV0b3IgYXN1bWlyw6EgdG9kYSBsYSByZXNwb25zYWJpbGlkYWQsIHkgc2FsZHLDoSBkZSBkZWZlbnNhIGRlIGxvcyBkZXJlY2hvcyBhcXXDrSBhdXRvcml6YWRvcywgcGFyYSB0b2RvcyBsb3MgZWZlY3RvcyBsYSBVbml2ZXJzaWRhZCBhY3TDumEgY29tbyB1biB0ZXJjZXJvIGRlIGJ1ZW5hIGZlLjwvcD4KPHA+U2kgdGllbmUgYWxndW5hIGR1ZGEgc29icmUgbGEgbGljZW5jaWEsIHBvciBmYXZvciwgY29udGFjdGUgY29uIGVsIDxhIGhyZWY9Im1haWx0bzpiaWJsaW90ZWNhQHVuaWFuZGVzLmVkdS5jbyIgdGFyZ2V0PSJfYmxhbmsiPkFkbWluaXN0cmFkb3IgZGVsIFNpc3RlbWEuPC9hPjwvcD4K