Diseño e implementación de un Bot para validación de landings en el Banco de Bogotá con Python

En el Banco de Bogotá se identificó la problemática de la validación manual de recursos generados para diversos aliados, lo cual consumía mucho tiempo y esfuerzo. Para abordar esta situación, el proyecto desarrollado en 2024 propone una solución automatizada utilizando diversas herramientas tecnológ...

Full description

Autores:
Gutierrez Monroy, David Samuel
Tipo de recurso:
Trabajo de grado de pregrado
Fecha de publicación:
2024
Institución:
Universidad Santo Tomás
Repositorio:
Repositorio Institucional USTA
Idioma:
spa
OAI Identifier:
oai:repository.usta.edu.co:11634/55529
Acceso en línea:
http://hdl.handle.net/11634/55529
Palabra clave:
Automatización
Bot
Landing
Python
Selenium
Rights
openAccess
License
Atribución-NoComercial-SinDerivadas 2.5 Colombia
id SANTOTOMAS_e208a03ae819f6d3e7a9269255aeb0f4
oai_identifier_str oai:repository.usta.edu.co:11634/55529
network_acronym_str SANTOTOMAS
network_name_str Repositorio Institucional USTA
repository_id_str
dc.title.spa.fl_str_mv Diseño e implementación de un Bot para validación de landings en el Banco de Bogotá con Python
title Diseño e implementación de un Bot para validación de landings en el Banco de Bogotá con Python
spellingShingle Diseño e implementación de un Bot para validación de landings en el Banco de Bogotá con Python
Automatización
Bot
Landing
Python
Selenium
title_short Diseño e implementación de un Bot para validación de landings en el Banco de Bogotá con Python
title_full Diseño e implementación de un Bot para validación de landings en el Banco de Bogotá con Python
title_fullStr Diseño e implementación de un Bot para validación de landings en el Banco de Bogotá con Python
title_full_unstemmed Diseño e implementación de un Bot para validación de landings en el Banco de Bogotá con Python
title_sort Diseño e implementación de un Bot para validación de landings en el Banco de Bogotá con Python
dc.creator.fl_str_mv Gutierrez Monroy, David Samuel
dc.contributor.advisor.none.fl_str_mv Cardona Coy, Carlos Alberto
Gutiérrez Cáceres, Edgar Andrés
dc.contributor.author.none.fl_str_mv Gutierrez Monroy, David Samuel
dc.contributor.corporatename.spa.fl_str_mv Universidad Santo Tomás
dc.subject.proposal.spa.fl_str_mv Automatización
Bot
Landing
Python
Selenium
topic Automatización
Bot
Landing
Python
Selenium
description En el Banco de Bogotá se identificó la problemática de la validación manual de recursos generados para diversos aliados, lo cual consumía mucho tiempo y esfuerzo. Para abordar esta situación, el proyecto desarrollado en 2024 propone una solución automatizada utilizando diversas herramientas tecnológicas, con el objetivo de reducir el tiempo empleado en estas tareas y eliminar la necesidad de intervención humana. Este proyecto presenta un resumen del trabajo realizado, destacando las herramientas y técnicas empleadas para solucionar esta problemática mediante un sistema automatizado. La solución se enfoca en la validación y almacenamiento de recursos (enlaces) utilizando el lenguaje de programación Python y el entorno de desarrollo PyCharm. Además, se emplearon librerías de código abierto como WebDriver, Pytest y CSV. El resultado final es un software diseñado por el autor que valida estos recursos de manera local. El sistema comprueba diversos enlaces proporcionados por el Banco de Bogotá, identificando y corrigiendo posibles errores, ya sea en la base de datos de la entidad o en la generación de los recursos.
publishDate 2024
dc.date.accessioned.none.fl_str_mv 2024-06-17T19:08:51Z
dc.date.available.none.fl_str_mv 2024-06-17T19:08:51Z
dc.date.issued.none.fl_str_mv 2024
dc.type.local.spa.fl_str_mv Trabajo de grado
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.drive.none.fl_str_mv info:eu-repo/semantics/bachelorThesis
format http://purl.org/coar/resource_type/c_7a1f
status_str acceptedVersion
dc.identifier.citation.spa.fl_str_mv Gutierrez Monroy, David Samuel (2024). Diseño e implementación de un Bot para validación de landings en el Banco de Bogotá con Python. [Trabajo de Grado, Universidad Santo Tomás], Repositorio Institucional.
dc.identifier.uri.none.fl_str_mv http://hdl.handle.net/11634/55529
dc.identifier.reponame.spa.fl_str_mv reponame:Repositorio Institucional Universidad Santo Tomás
dc.identifier.instname.spa.fl_str_mv instname:Universidad Santo Tomás
dc.identifier.repourl.spa.fl_str_mv repourl:https://repository.usta.edu.co
identifier_str_mv Gutierrez Monroy, David Samuel (2024). Diseño e implementación de un Bot para validación de landings en el Banco de Bogotá con Python. [Trabajo de Grado, Universidad Santo Tomás], Repositorio Institucional.
reponame:Repositorio Institucional Universidad Santo Tomás
instname:Universidad Santo Tomás
repourl:https://repository.usta.edu.co
url http://hdl.handle.net/11634/55529
dc.language.iso.spa.fl_str_mv spa
language spa
dc.relation.references.spa.fl_str_mv ¿Qué contiene XPath? (s.f.). Obtenido de https://www.guru99.com/es/using-contains-sbiling-ancestor-to-find-element-in-selenium.html#:~:text=.quit()%3B%20%7D%20%7D-,XPath%20padre%20en%20Selenium,el%20elemento%20principal%20usando%20XPath.
¿Qué es el software de automatización? . (s.f.). Obtenido de https://www.automationanywhere.com/la/rpa/automation-software
¿Qué es hardware y software? (s.f.). Obtenido de https://edu.gcfglobal.org/es/informatica-basica/que-es-hardware-y-software/1/
¿Qué es la automatización? (s.f.). Obtenido de https://www.redhat.com/es/topics/automation/whats-it-automation
¿Qué es Python? . (s.f.). Obtenido de https://aws.amazon.com/es/what-is/python/
¿Qué es un archivo CSV? . (s.f.). Obtenido de https://www.geeknetic.es/Archivo-CSV/que-es-y-para-que-sirve
¿Qué es un bot? . (s.f.). Obtenido de https://aws.amazon.com/es/what-is/bot/#:~:text=Un%20bot%20es%20una%20aplicación,forma%20independiente%20sin%20intervención%20humana.
¿Qué es un bot? Tipos de bots y sus principales funciones. (s.f.). Obtenido de https://www.godaddy.com/resources/es/crearweb/que-es-un-bot
¿Qué son las librerías de Python? (s.f.). Obtenido de https://iddigitalschool.com/bootcamps/que-son-las-librerias-de-python/
¿Qué son los bots de software? . (s.f.). Obtenido de https://www.automationanywhere.com/la/rpa/software-bots
Banco de Bogota landing CC. (s.f.). Obtenido de https://slm.bancodebogota.com/lpu8kpg8
Banco de Bogota landing de error CC. (s.f.). Obtenido de https://crediconveniodigital.bancodebogota.com.co/error
Banco de Bogota landing link no disponible. (s.f.). Obtenido de https://slm.bancodebogota.com/ldewyftn/
Banco de Bogota landing TC. (s.f.). Obtenido de https://digital.bancodebogota.com/tarjeta-credito/aliados/index.html?utm_source=claro_bajo_costo&utm_medium=referral&utm_campaign=claro_cla_asr57&lowcost=true
Banco de Bogota landing TC error. (s.f.). Obtenido de https://tcdigital.bancodebogota.com/error/reject
Banco de Bogota landing TC Latam. (s.f.). Obtenido de https://digital.bancodebogota.co/tarjeta-credito/landing-latampass/index.html
Banco de Bogota landing TC movistar. (s.f.). Obtenido de https://digital.bancodebogota.com/tarjeta-credito/movistar/index.html
Bots, las herramientas omnipresentes en la era digital actual. (s.f.). Obtenido de https://www.itmastersmag.com/noticias-analisis/bots-las-herramientas-omnipresentes-en-la-era-digital-actual/
Cómo codificar un scraping Bot con Selenium y Python. (s.f.). Obtenido de https://www.freecodecamp.org/espanol/news/como-codificar-un-scraping-bot-con-selenium-y-python/
Cómo comprobar si «URL existe». (s.f.). Obtenido de https://uproc.io/blog/es/how-to-check-if-url-exists
Comprobar la existencia de enlaces rotos. (s.f.). Obtenido de https://www.site24x7.com/es/tools/comprobar-de-enlaces.html
El impacto de las nuevas tecnologías en el empleo en México. (s.f.). Obtenido de https://www.redalyc.org/journal/118/11858906002/html/#B32
Haz crecer tu negocio con datos optimizados. (s.f.). Obtenido de https://uproc.io/#/?como-tratar-tus-datos-ii-validacion
Lenguajes de programación: qué son y cómo funcionan. (s.f.). Obtenido de https://www.pixartprinting.es/blog/lenguajes-de-programacion/
Los bots toman cada día un lugar de mayor importancia en las empresas. (s.f.). Obtenido de https://www.americaeconomia.com/los-bots-toman-cada-dia-un-lugar-de-mayor-importancia-en-las-empresas
Automatización: ¿qué es y qué ventajas ofrece?, A. ¿. (s.f.). Obtenido de https://www.redhat.com/es/topics/automation
Programación orientada a objetos. (s.f.). Obtenido de https://www.ibm.com/docs/es/spss-modeler/saas?topic=language-object-oriented-programming
Pytest. (s.f.). Obtenido de https://docs.pytest.org/en/8.2.x/
Python. (s.f.). Obtenido de https://www.python.org/about/
Qué es un lenguaje de programación. (s.f.). Obtenido de https://openwebinars.net/blog/que-es-un-lenguaje-de-programacion/
Selenium and WebDriver. (s.f.). Obtenido de https://www.electronjs.org/es/docs/latest/tutorial/using-selenium-and-webdriver#:~:text=ChromeDriver%20es%20un%20servidor%20independiente,equipos%20de%20Chromium%20y%20WebDriver.
Selenium Python. (s.f.). Obtenido de https://selenium-python.readthedocs.io/installation.html
Selenium y la automatización de las pruebas. (s.f.). Obtenido de https://www.juntadeandalucia.es/servicios/madeja/contenido/recurso/381#:~:text=Descripción,forma%20automática%20e%20iterativa%20posteriormente
dc.rights.*.fl_str_mv Atribución-NoComercial-SinDerivadas 2.5 Colombia
dc.rights.uri.*.fl_str_mv http://creativecommons.org/licenses/by-nc-nd/2.5/co/
dc.rights.local.spa.fl_str_mv Abierto (Texto Completo)
dc.rights.accessrights.none.fl_str_mv info:eu-repo/semantics/openAccess
dc.rights.coar.spa.fl_str_mv http://purl.org/coar/access_right/c_abf2
rights_invalid_str_mv Atribución-NoComercial-SinDerivadas 2.5 Colombia
http://creativecommons.org/licenses/by-nc-nd/2.5/co/
Abierto (Texto Completo)
http://purl.org/coar/access_right/c_abf2
eu_rights_str_mv openAccess
dc.format.mimetype.spa.fl_str_mv application/pdf
dc.coverage.campus.spa.fl_str_mv CRAI-USTA Tunja
dc.publisher.spa.fl_str_mv Universidad Santo Tomás
dc.publisher.program.spa.fl_str_mv Pregrado Ingeniería Electrónica
dc.publisher.faculty.spa.fl_str_mv Facultad de Ingeniería Electrónica
institution Universidad Santo Tomás
bitstream.url.fl_str_mv https://repository.usta.edu.co/bitstream/11634/55529/1/2024davidgutierrez.pdf
https://repository.usta.edu.co/bitstream/11634/55529/2/2024cartadederechosdeautor.pdf
https://repository.usta.edu.co/bitstream/11634/55529/5/APROBACI%c3%93N%20TRABAJOS%20DE%20GRADO%20CRAI2%20%281%29.pdf
https://repository.usta.edu.co/bitstream/11634/55529/3/license_rdf
https://repository.usta.edu.co/bitstream/11634/55529/4/license.txt
https://repository.usta.edu.co/bitstream/11634/55529/6/2024davidgutierrez.pdf.jpg
https://repository.usta.edu.co/bitstream/11634/55529/7/2024cartadederechosdeautor.pdf.jpg
https://repository.usta.edu.co/bitstream/11634/55529/8/APROBACI%c3%93N%20TRABAJOS%20DE%20GRADO%20CRAI2%20%281%29.pdf.jpg
bitstream.checksum.fl_str_mv 8b713b9aa92a1c0794c0b1f8df123b9d
e6c8c3cfda324fb55ecc58b8f7baad28
9c9f6f3e0dd3951e108224d578e11edd
217700a34da79ed616c2feb68d4c5e06
aedeaf396fcd827b537c73d23464fc27
fe67e69b72142bc7078d047e4833fb0a
f28e6c528a7329e36c6b1f31acad9c5a
a2510c89a66a8e3803285408acf0c4ca
bitstream.checksumAlgorithm.fl_str_mv MD5
MD5
MD5
MD5
MD5
MD5
MD5
MD5
repository.name.fl_str_mv Repositorio Universidad Santo Tomás
repository.mail.fl_str_mv repositorio@usta.edu.co
_version_ 1860882248142684160
spelling Cardona Coy, Carlos AlbertoGutiérrez Cáceres, Edgar AndrésGutierrez Monroy, David SamuelUniversidad Santo Tomás2024-06-17T19:08:51Z2024-06-17T19:08:51Z2024Gutierrez Monroy, David Samuel (2024). Diseño e implementación de un Bot para validación de landings en el Banco de Bogotá con Python. [Trabajo de Grado, Universidad Santo Tomás], Repositorio Institucional.http://hdl.handle.net/11634/55529reponame:Repositorio Institucional Universidad Santo Tomásinstname:Universidad Santo Tomásrepourl:https://repository.usta.edu.coEn el Banco de Bogotá se identificó la problemática de la validación manual de recursos generados para diversos aliados, lo cual consumía mucho tiempo y esfuerzo. Para abordar esta situación, el proyecto desarrollado en 2024 propone una solución automatizada utilizando diversas herramientas tecnológicas, con el objetivo de reducir el tiempo empleado en estas tareas y eliminar la necesidad de intervención humana. Este proyecto presenta un resumen del trabajo realizado, destacando las herramientas y técnicas empleadas para solucionar esta problemática mediante un sistema automatizado. La solución se enfoca en la validación y almacenamiento de recursos (enlaces) utilizando el lenguaje de programación Python y el entorno de desarrollo PyCharm. Además, se emplearon librerías de código abierto como WebDriver, Pytest y CSV. El resultado final es un software diseñado por el autor que valida estos recursos de manera local. El sistema comprueba diversos enlaces proporcionados por el Banco de Bogotá, identificando y corrigiendo posibles errores, ya sea en la base de datos de la entidad o en la generación de los recursos.Ingeniero ElectronicoPregradoapplication/pdfspaUniversidad Santo TomásPregrado Ingeniería ElectrónicaFacultad de Ingeniería ElectrónicaAtribución-NoComercial-SinDerivadas 2.5 Colombiahttp://creativecommons.org/licenses/by-nc-nd/2.5/co/Abierto (Texto Completo)info:eu-repo/semantics/openAccesshttp://purl.org/coar/access_right/c_abf2Diseño e implementación de un Bot para validación de landings en el Banco de Bogotá con PythonTrabajo de gradoinfo:eu-repo/semantics/acceptedVersionhttp://purl.org/coar/resource_type/c_7a1finfo:eu-repo/semantics/bachelorThesisCRAI-USTA Tunja¿Qué contiene XPath? (s.f.). Obtenido de https://www.guru99.com/es/using-contains-sbiling-ancestor-to-find-element-in-selenium.html#:~:text=.quit()%3B%20%7D%20%7D-,XPath%20padre%20en%20Selenium,el%20elemento%20principal%20usando%20XPath.¿Qué es el software de automatización? . (s.f.). Obtenido de https://www.automationanywhere.com/la/rpa/automation-software¿Qué es hardware y software? (s.f.). Obtenido de https://edu.gcfglobal.org/es/informatica-basica/que-es-hardware-y-software/1/¿Qué es la automatización? (s.f.). Obtenido de https://www.redhat.com/es/topics/automation/whats-it-automation¿Qué es Python? . (s.f.). Obtenido de https://aws.amazon.com/es/what-is/python/¿Qué es un archivo CSV? . (s.f.). Obtenido de https://www.geeknetic.es/Archivo-CSV/que-es-y-para-que-sirve¿Qué es un bot? . (s.f.). Obtenido de https://aws.amazon.com/es/what-is/bot/#:~:text=Un%20bot%20es%20una%20aplicación,forma%20independiente%20sin%20intervención%20humana.¿Qué es un bot? Tipos de bots y sus principales funciones. (s.f.). Obtenido de https://www.godaddy.com/resources/es/crearweb/que-es-un-bot¿Qué son las librerías de Python? (s.f.). Obtenido de https://iddigitalschool.com/bootcamps/que-son-las-librerias-de-python/¿Qué son los bots de software? . (s.f.). Obtenido de https://www.automationanywhere.com/la/rpa/software-botsBanco de Bogota landing CC. (s.f.). Obtenido de https://slm.bancodebogota.com/lpu8kpg8Banco de Bogota landing de error CC. (s.f.). Obtenido de https://crediconveniodigital.bancodebogota.com.co/errorBanco de Bogota landing link no disponible. (s.f.). Obtenido de https://slm.bancodebogota.com/ldewyftn/Banco de Bogota landing TC. (s.f.). Obtenido de https://digital.bancodebogota.com/tarjeta-credito/aliados/index.html?utm_source=claro_bajo_costo&utm_medium=referral&utm_campaign=claro_cla_asr57&lowcost=trueBanco de Bogota landing TC error. (s.f.). Obtenido de https://tcdigital.bancodebogota.com/error/rejectBanco de Bogota landing TC Latam. (s.f.). Obtenido de https://digital.bancodebogota.co/tarjeta-credito/landing-latampass/index.htmlBanco de Bogota landing TC movistar. (s.f.). Obtenido de https://digital.bancodebogota.com/tarjeta-credito/movistar/index.htmlBots, las herramientas omnipresentes en la era digital actual. (s.f.). Obtenido de https://www.itmastersmag.com/noticias-analisis/bots-las-herramientas-omnipresentes-en-la-era-digital-actual/Cómo codificar un scraping Bot con Selenium y Python. (s.f.). Obtenido de https://www.freecodecamp.org/espanol/news/como-codificar-un-scraping-bot-con-selenium-y-python/Cómo comprobar si «URL existe». (s.f.). Obtenido de https://uproc.io/blog/es/how-to-check-if-url-existsComprobar la existencia de enlaces rotos. (s.f.). Obtenido de https://www.site24x7.com/es/tools/comprobar-de-enlaces.htmlEl impacto de las nuevas tecnologías en el empleo en México. (s.f.). Obtenido de https://www.redalyc.org/journal/118/11858906002/html/#B32Haz crecer tu negocio con datos optimizados. (s.f.). Obtenido de https://uproc.io/#/?como-tratar-tus-datos-ii-validacionLenguajes de programación: qué son y cómo funcionan. (s.f.). Obtenido de https://www.pixartprinting.es/blog/lenguajes-de-programacion/Los bots toman cada día un lugar de mayor importancia en las empresas. (s.f.). Obtenido de https://www.americaeconomia.com/los-bots-toman-cada-dia-un-lugar-de-mayor-importancia-en-las-empresasAutomatización: ¿qué es y qué ventajas ofrece?, A. ¿. (s.f.). Obtenido de https://www.redhat.com/es/topics/automationProgramación orientada a objetos. (s.f.). Obtenido de https://www.ibm.com/docs/es/spss-modeler/saas?topic=language-object-oriented-programmingPytest. (s.f.). Obtenido de https://docs.pytest.org/en/8.2.x/Python. (s.f.). Obtenido de https://www.python.org/about/Qué es un lenguaje de programación. (s.f.). Obtenido de https://openwebinars.net/blog/que-es-un-lenguaje-de-programacion/Selenium and WebDriver. (s.f.). Obtenido de https://www.electronjs.org/es/docs/latest/tutorial/using-selenium-and-webdriver#:~:text=ChromeDriver%20es%20un%20servidor%20independiente,equipos%20de%20Chromium%20y%20WebDriver.Selenium Python. (s.f.). Obtenido de https://selenium-python.readthedocs.io/installation.htmlSelenium y la automatización de las pruebas. (s.f.). Obtenido de https://www.juntadeandalucia.es/servicios/madeja/contenido/recurso/381#:~:text=Descripción,forma%20automática%20e%20iterativa%20posteriormenteAutomatizaciónBotLandingPythonSeleniumORIGINAL2024davidgutierrez.pdf2024davidgutierrez.pdfapplication/pdf1456135https://repository.usta.edu.co/bitstream/11634/55529/1/2024davidgutierrez.pdf8b713b9aa92a1c0794c0b1f8df123b9dMD51open access2024cartadederechosdeautor.pdf2024cartadederechosdeautor.pdfapplication/pdf312857https://repository.usta.edu.co/bitstream/11634/55529/2/2024cartadederechosdeautor.pdfe6c8c3cfda324fb55ecc58b8f7baad28MD52metadata only accessAPROBACIÓN TRABAJOS DE GRADO CRAI2 (1).pdfAPROBACIÓN TRABAJOS DE GRADO CRAI2 (1).pdfapplication/pdf701103https://repository.usta.edu.co/bitstream/11634/55529/5/APROBACI%c3%93N%20TRABAJOS%20DE%20GRADO%20CRAI2%20%281%29.pdf9c9f6f3e0dd3951e108224d578e11eddMD55metadata only accessCC-LICENSElicense_rdflicense_rdfapplication/rdf+xml; charset=utf-8811https://repository.usta.edu.co/bitstream/11634/55529/3/license_rdf217700a34da79ed616c2feb68d4c5e06MD53open accessLICENSElicense.txtlicense.txttext/plain; charset=utf-8807https://repository.usta.edu.co/bitstream/11634/55529/4/license.txtaedeaf396fcd827b537c73d23464fc27MD54open accessTHUMBNAIL2024davidgutierrez.pdf.jpg2024davidgutierrez.pdf.jpgIM Thumbnailimage/jpeg4739https://repository.usta.edu.co/bitstream/11634/55529/6/2024davidgutierrez.pdf.jpgfe67e69b72142bc7078d047e4833fb0aMD56open access2024cartadederechosdeautor.pdf.jpg2024cartadederechosdeautor.pdf.jpgIM Thumbnailimage/jpeg8697https://repository.usta.edu.co/bitstream/11634/55529/7/2024cartadederechosdeautor.pdf.jpgf28e6c528a7329e36c6b1f31acad9c5aMD57open accessAPROBACIÓN TRABAJOS DE GRADO CRAI2 (1).pdf.jpgAPROBACIÓN TRABAJOS DE GRADO CRAI2 (1).pdf.jpgIM Thumbnailimage/jpeg11159https://repository.usta.edu.co/bitstream/11634/55529/8/APROBACI%c3%93N%20TRABAJOS%20DE%20GRADO%20CRAI2%20%281%29.pdf.jpga2510c89a66a8e3803285408acf0c4caMD58open access11634/55529oai:repository.usta.edu.co:11634/555292024-06-18 03:19:44.43open accessRepositorio Universidad Santo Tomásrepositorio@usta.edu.coQXV0b3Jpem8gYWwgQ2VudHJvIGRlIFJlY3Vyc29zIHBhcmEgZWwgQXByZW5kaXphamUgeSBsYSBJbnZlc3RpZ2FjacOzbiwgQ1JBSS1VU1RBCmRlIGxhIFVuaXZlcnNpZGFkIFNhbnRvIFRvbcOhcywgcGFyYSBxdWUgY29uIGZpbmVzIGFjYWTDqW1pY29zIGFsbWFjZW5lIGxhCmluZm9ybWFjacOzbiBpbmdyZXNhZGEgcHJldmlhbWVudGUuCgpTZSBwZXJtaXRlIGxhIGNvbnN1bHRhLCByZXByb2R1Y2Npw7NuIHBhcmNpYWwsIHRvdGFsIG8gY2FtYmlvIGRlIGZvcm1hdG8gY29uCmZpbmVzIGRlIGNvbnNlcnZhY2nDs24sIGEgbG9zIHVzdWFyaW9zIGludGVyZXNhZG9zIGVuIGVsIGNvbnRlbmlkbyBkZSBlc3RlCnRyYWJham8sIHBhcmEgdG9kb3MgbG9zIHVzb3MgcXVlIHRlbmdhbiBmaW5hbGlkYWQgYWNhZMOpbWljYSwgc2llbXByZSB5IGN1YW5kbwptZWRpYW50ZSBsYSBjb3JyZXNwb25kaWVudGUgY2l0YSBiaWJsaW9ncsOhZmljYSBzZSBsZSBkw6kgY3LDqWRpdG8gYWwgdHJhYmFqbyBkZQpncmFkbyB5IGEgc3UgYXV0b3IuIERlIGNvbmZvcm1pZGFkIGNvbiBsbyBlc3RhYmxlY2lkbyBlbiBlbCBhcnTDrWN1bG8gMzAgZGUgbGEKTGV5IDIzIGRlIDE5ODIgeSBlbCBhcnTDrWN1bG8gMTEgZGUgbGEgRGVjaXNpw7NuIEFuZGluYSAzNTEgZGUgMTk5Mywg4oCcTG9zIGRlcmVjaG9zCm1vcmFsZXMgc29icmUgZWwgdHJhYmFqbyBzb24gcHJvcGllZGFkIGRlIGxvcyBhdXRvcmVz4oCdLCBsb3MgY3VhbGVzIHNvbgppcnJlbnVuY2lhYmxlcywgaW1wcmVzY3JpcHRpYmxlcywgaW5lbWJhcmdhYmxlcyBlIGluYWxpZW5hYmxlcy4K