Aplicación web scraping para la búsqueda de información de instituciones y carreras universitarias

Este proyecto tiene como objetivo crear una aplicación web que permita a los usuarios encontrar y explorar información detallada sobre carreras en instituciones y carreras de educación superior en Bogotá, así como crear un perfil vocacional personalizado a través de un formulario interactivo. Utiliz...

Full description

Autores:
Gómez Bohórquez, David Esteban
Tipo de recurso:
Trabajo de grado de pregrado
Fecha de publicación:
2024
Institución:
Universidad Distrital Francisco José de Caldas
Repositorio:
RIUD: repositorio U. Distrital
Idioma:
spa
OAI Identifier:
oai:repository.udistrital.edu.co:11349/42355
Acceso en línea:
http://hdl.handle.net/11349/42355
Palabra clave:
Web scraping
Educación superior
Carrreras universitarias
Inteligencia artificial
Orientación vocacional
Tecnología en Sistematización de Datos -- Tesis y disertaciones académicas
Orientación vocacional - Software
Web scraping - Educación superior - Bogotá
Inteligencia artificial - Recomendación de sistemas - Educación
Plataformas educativas - Diseño - Bogotá
Web scraping
Higher education
University careers
Artificial intelligence
Vocational guidance
Rights
License
Abierto (Texto Completo)
id UDISTRITA2_3648828541bbb4153239331ab558439c
oai_identifier_str oai:repository.udistrital.edu.co:11349/42355
network_acronym_str UDISTRITA2
network_name_str RIUD: repositorio U. Distrital
repository_id_str
dc.title.none.fl_str_mv Aplicación web scraping para la búsqueda de información de instituciones y carreras universitarias
dc.title.titleenglish.none.fl_str_mv Web scraping application for searching for information on university institutions and careers
title Aplicación web scraping para la búsqueda de información de instituciones y carreras universitarias
spellingShingle Aplicación web scraping para la búsqueda de información de instituciones y carreras universitarias
Web scraping
Educación superior
Carrreras universitarias
Inteligencia artificial
Orientación vocacional
Tecnología en Sistematización de Datos -- Tesis y disertaciones académicas
Orientación vocacional - Software
Web scraping - Educación superior - Bogotá
Inteligencia artificial - Recomendación de sistemas - Educación
Plataformas educativas - Diseño - Bogotá
Web scraping
Higher education
University careers
Artificial intelligence
Vocational guidance
title_short Aplicación web scraping para la búsqueda de información de instituciones y carreras universitarias
title_full Aplicación web scraping para la búsqueda de información de instituciones y carreras universitarias
title_fullStr Aplicación web scraping para la búsqueda de información de instituciones y carreras universitarias
title_full_unstemmed Aplicación web scraping para la búsqueda de información de instituciones y carreras universitarias
title_sort Aplicación web scraping para la búsqueda de información de instituciones y carreras universitarias
dc.creator.fl_str_mv Gómez Bohórquez, David Esteban
dc.contributor.advisor.none.fl_str_mv Pinzón Núñez, Sonia Alexandra
dc.contributor.author.none.fl_str_mv Gómez Bohórquez, David Esteban
dc.contributor.orcid.none.fl_str_mv Pinzón Núñez, Sonia Alexandra [0000-0003-0746-0598]
dc.subject.none.fl_str_mv Web scraping
Educación superior
Carrreras universitarias
Inteligencia artificial
Orientación vocacional
topic Web scraping
Educación superior
Carrreras universitarias
Inteligencia artificial
Orientación vocacional
Tecnología en Sistematización de Datos -- Tesis y disertaciones académicas
Orientación vocacional - Software
Web scraping - Educación superior - Bogotá
Inteligencia artificial - Recomendación de sistemas - Educación
Plataformas educativas - Diseño - Bogotá
Web scraping
Higher education
University careers
Artificial intelligence
Vocational guidance
dc.subject.lemb.none.fl_str_mv Tecnología en Sistematización de Datos -- Tesis y disertaciones académicas
Orientación vocacional - Software
Web scraping - Educación superior - Bogotá
Inteligencia artificial - Recomendación de sistemas - Educación
Plataformas educativas - Diseño - Bogotá
dc.subject.keyword.none.fl_str_mv Web scraping
Higher education
University careers
Artificial intelligence
Vocational guidance
description Este proyecto tiene como objetivo crear una aplicación web que permita a los usuarios encontrar y explorar información detallada sobre carreras en instituciones y carreras de educación superior en Bogotá, así como crear un perfil vocacional personalizado a través de un formulario interactivo. Utilizando técnicas de web scraping e inteligencia artificial, la aplicación categorizará las carreras disponibles para ofrecer recomendaciones personalizadas basadas en los intereses y habilidades de cada usuario. Además, la plataforma incluirá secciones de noticias de educación superior y casos de usuarios, fomentando la interacción y el intercambio de información entre la comunidad educativa. Con la aplicación propuesta se busca proporcionar a los usuarios una herramienta integral y fácil de usar para explorar opciones educativas y profesionales en Bogotá, facilitando así la toma de decisiones vocacionales y optimizando el tiempo de búsqueda en la red de forma significativa. La aplicación no solo brinda el acceso a información actualizada y relevante sobre carreras profesionales, sino que también ofrece recomendaciones personalizadas basadas en el perfil vocacional de cada usuario, lo que les permite tomar decisiones informadas sobre su futuro académico y profesional. También, al implementar secciones de noticias y casos propios de los usuarios, se crea un espacio colaborativo donde se logra compartir experiencias e información, enriqueciendo así la experiencia educativa y vocacional de la comunidad.
publishDate 2024
dc.date.accessioned.none.fl_str_mv 2024-10-28T20:36:32Z
dc.date.available.none.fl_str_mv 2024-10-28T20:36:32Z
dc.date.created.none.fl_str_mv 2024-07-19
dc.type.none.fl_str_mv bachelorThesis
dc.type.degree.none.fl_str_mv Monografía
dc.type.driver.none.fl_str_mv info:eu-repo/semantics/bachelorThesis
dc.type.coar.none.fl_str_mv http://purl.org/coar/resource_type/c_7a1f
format http://purl.org/coar/resource_type/c_7a1f
dc.identifier.uri.none.fl_str_mv http://hdl.handle.net/11349/42355
url http://hdl.handle.net/11349/42355
dc.language.iso.none.fl_str_mv spa
language spa
dc.relation.references.none.fl_str_mv EVA, G. N. (2021). Decreto 1667 de 2021. Función Pública. https://www.funcionpublica.gov.co/eva/gestornormativo/norma.php?i=174048
Ruíz, Y. (2023). Variables del desempleo en jóvenes de 14 y 28 años en Bogotá. Repositorio Institucional Universidad Cooperativa de Colombia. https://repository.ucc.edu.co/entities/publication/1118c89c-3ed6-4e1b-adad-593e2ab92b33
Rojas, S. (2023). Caracterización sociodemográfica de los jóvenes NINI en Bogotá, en el contexto de pandemia por SARS-COV-2. https://repository.unad.edu.co/handle/10596/54483
Challenger-Pérez, I., Díaz-Ricardo, Y., & Becerra-García, R. (2014). El lenguaje de programación Python. Ciencias Holguín, XX (2), 1-13. https://www.redalyc.org/pdf/1815/181531232001.pdf
Cruz, L. (2020). Programa de orientación vocacional: “Pienso, luego elijo”, para estudiantes de secundaria, I.E.P. “Corazón de Jesús”, Jesús María - Lima. https://repositorio.ucv.edu.pe/handle/20.500.12692/41692
Gómez Estrada, F., & Orozco Puello, M. (2019). Desarrollo de un prototipo de aplicación web que permita la extracción de las ofertas laborales de las principales plataformas que postulan empleos en la región Caribe, usando la técnica web SCRAPING. http://repositorio.unisinucartagena.edu.co:8080/jspui/handle/123456789/94
Delgado Monteagudo, A. (2023). INTEGRACIÓN DE TECNOLOGÍAS DE INTELIGENCIA ARTIFICIAL EN UN ASISTENTE VIRTUAL. Universidad Rey Juan Carlos. https://burjcdigital.urjc.es/handle/10115/22962
Jiménez Lozano, D., & Leal Gibert, A. (2021). Desarrollo de técnicas del Web Scraping. Escuela Universitaria Gimbernat. https://eugdspace.eug.es/handle/20.500.13002/913
Donetonic. (2024). Product Backlog y Sprint Backlog. https://donetonic.com/es/product-backlog y-sprint-backlog/
Dieste Tubio, D. T. (2023). Desarrollo de una aplicación móvil para el ahorro de gastos en la compra de alimentos utilizando técnicas de web scraping | Archivo Digital UPM. https://oa.upm.es/74988/
Pérez Aguiar, W. (2017). Diseño y desarrollo de una aplicación web Scraping de extracción de enlaces de tiendas web | Archivo Digital UPM. https://oa.upm.es/62959
Google. (s. f.). Clasificación de los resultados – Cómo funciona la Búsqueda de Google. Búsqueda de Google - Descubre Cómo Funciona la Búsqueda de Google. https://www.google.com/intl/es/search/howsearchworks/how-search-works/ranking-results/
Soriano-Burgos, C. I., Bautista, J. A., & López-Ramírez, M. (2022). Obtención de una base de datos de perfiles de investigadores en Google Scholar basado en web scraping. https://www.jovenesenlaciencia.ugto.mx/index.php/jovenesenlaciencia/article/view/3857
Condori, A. (2014). Web Scraping para la obtención de información actualizada de Internet con push notifications para smartphone. https://repositorio.umsa.bo/xmlui/handle/123456789/8405
Velasco, M., Villacis, J., Chávez, P., & Cuchipe, W. (2021). Revisión Sistemática de la Metodología Scrum para el Desarrollo de Software. Dialnet. https://dialnet.unirioja.es/servlet/articulo?codigo=8384028
Paz-Pérez, D., & Rodríguez-Alberto, M. (2023). Interés y aptitud vocacional como predictores del rendimiento académico universitario. Revista de Psicología y Ciencias del Comportamiento de la Unidad Académica de Ciencias Jurídicas y Sociales/Revista de Psicología y Ciencias del Comportamiento de la Unidad Académica de Ciencias Jurídicas y Sociales, 14(2), 70-87. https://doi.org/10.29059/rpcc.20231201-163
Rojas, D., & Rubio, L. (2017). Preferencias vocacionales en estudiantes de Psicología de primer año de la Corporación Universitaria Minuto de Dios. https://repository.uniminuto.edu/handle/10656/5771
Rajani Dixit, & Brij Bhushan. (2019). Scrum: An Agile Software Development Process and Metrics. Journal on Today’s Ideas - Tomorrow’s Technologies, 7(1), 73–87. https://doi.org/10.15415/jotitt.2019.71005
dc.rights.coar.fl_str_mv http://purl.org/coar/access_right/c_abf2
dc.rights.acceso.none.fl_str_mv Abierto (Texto Completo)
rights_invalid_str_mv Abierto (Texto Completo)
http://purl.org/coar/access_right/c_abf2
dc.format.mimetype.none.fl_str_mv pdf
dc.publisher.none.fl_str_mv Universidad Distrital Francisco José de Caldas
publisher.none.fl_str_mv Universidad Distrital Francisco José de Caldas
institution Universidad Distrital Francisco José de Caldas
bitstream.url.fl_str_mv https://repository.udistrital.edu.co/bitstreams/59d6be41-726f-4b8f-ac4f-f29c68ae5d8d/download
https://repository.udistrital.edu.co/bitstreams/f1f64f24-7be7-4065-b5c1-f5117a50b1cf/download
https://repository.udistrital.edu.co/bitstreams/97a62ad1-0e6f-44c6-bee3-05e7b4299e05/download
https://repository.udistrital.edu.co/bitstreams/4a45761d-0bbd-483d-b2e0-fadea3b5031a/download
https://repository.udistrital.edu.co/bitstreams/59a68a58-ad1e-45c9-98b2-a3bf11b4330e/download
bitstream.checksum.fl_str_mv 997daf6c648c962d566d7b082dac908d
13050c7dbdf9d68661f76266aee87a1f
f70f24b110873432f7402fbb58253daf
dc14115a1d9bcb3504e2011f6acd8533
4bf4388397447608ccc353f829ab3f77
bitstream.checksumAlgorithm.fl_str_mv MD5
MD5
MD5
MD5
MD5
repository.name.fl_str_mv Repositorio Universidad Distrital
repository.mail.fl_str_mv repositorio@udistrital.edu.co
_version_ 1837007018428203008
spelling Pinzón Núñez, Sonia AlexandraGómez Bohórquez, David EstebanPinzón Núñez, Sonia Alexandra [0000-0003-0746-0598]2024-10-28T20:36:32Z2024-10-28T20:36:32Z2024-07-19http://hdl.handle.net/11349/42355Este proyecto tiene como objetivo crear una aplicación web que permita a los usuarios encontrar y explorar información detallada sobre carreras en instituciones y carreras de educación superior en Bogotá, así como crear un perfil vocacional personalizado a través de un formulario interactivo. Utilizando técnicas de web scraping e inteligencia artificial, la aplicación categorizará las carreras disponibles para ofrecer recomendaciones personalizadas basadas en los intereses y habilidades de cada usuario. Además, la plataforma incluirá secciones de noticias de educación superior y casos de usuarios, fomentando la interacción y el intercambio de información entre la comunidad educativa. Con la aplicación propuesta se busca proporcionar a los usuarios una herramienta integral y fácil de usar para explorar opciones educativas y profesionales en Bogotá, facilitando así la toma de decisiones vocacionales y optimizando el tiempo de búsqueda en la red de forma significativa. La aplicación no solo brinda el acceso a información actualizada y relevante sobre carreras profesionales, sino que también ofrece recomendaciones personalizadas basadas en el perfil vocacional de cada usuario, lo que les permite tomar decisiones informadas sobre su futuro académico y profesional. También, al implementar secciones de noticias y casos propios de los usuarios, se crea un espacio colaborativo donde se logra compartir experiencias e información, enriqueciendo así la experiencia educativa y vocacional de la comunidad.This project aims to create a web application that allows users to find and explore detailed information about careers in higher education institutions and careers in Bogotá, as well as create a personalized vocational profile through an interactive form. Using web scraping and artificial intelligence techniques, the application will categorize the available careers to offer personalized recommendations based on the interests and skills of each user. In addition, the platform will include higher education news sections and user cases, encouraging interaction and information exchange among the educational community. The proposed application seeks to provide users with a comprehensive and easy-to-use tool to explore educational and professional options in Bogotá, thus facilitating vocational decision making and significantly optimizing online search time. The application not only provides access to up-to-date and relevant information on professional careers, but also offers personalized recommendations based on each user's vocational profile, allowing them to make informed decisions about their academic and professional future. Also, by implementing news sections and users' own cases, a collaborative space is created where experiences and information can be shared, thus enriching the educational and vocational experience of the community.pdfspaUniversidad Distrital Francisco José de CaldasWeb scrapingEducación superiorCarrreras universitariasInteligencia artificialOrientación vocacionalTecnología en Sistematización de Datos -- Tesis y disertaciones académicasOrientación vocacional - SoftwareWeb scraping - Educación superior - BogotáInteligencia artificial - Recomendación de sistemas - EducaciónPlataformas educativas - Diseño - BogotáWeb scrapingHigher educationUniversity careersArtificial intelligenceVocational guidanceAplicación web scraping para la búsqueda de información de instituciones y carreras universitariasWeb scraping application for searching for information on university institutions and careersbachelorThesisMonografíainfo:eu-repo/semantics/bachelorThesishttp://purl.org/coar/resource_type/c_7a1fAbierto (Texto Completo)http://purl.org/coar/access_right/c_abf2EVA, G. N. (2021). Decreto 1667 de 2021. Función Pública. https://www.funcionpublica.gov.co/eva/gestornormativo/norma.php?i=174048Ruíz, Y. (2023). Variables del desempleo en jóvenes de 14 y 28 años en Bogotá. Repositorio Institucional Universidad Cooperativa de Colombia. https://repository.ucc.edu.co/entities/publication/1118c89c-3ed6-4e1b-adad-593e2ab92b33Rojas, S. (2023). Caracterización sociodemográfica de los jóvenes NINI en Bogotá, en el contexto de pandemia por SARS-COV-2. https://repository.unad.edu.co/handle/10596/54483Challenger-Pérez, I., Díaz-Ricardo, Y., & Becerra-García, R. (2014). El lenguaje de programación Python. Ciencias Holguín, XX (2), 1-13. https://www.redalyc.org/pdf/1815/181531232001.pdfCruz, L. (2020). Programa de orientación vocacional: “Pienso, luego elijo”, para estudiantes de secundaria, I.E.P. “Corazón de Jesús”, Jesús María - Lima. https://repositorio.ucv.edu.pe/handle/20.500.12692/41692Gómez Estrada, F., & Orozco Puello, M. (2019). Desarrollo de un prototipo de aplicación web que permita la extracción de las ofertas laborales de las principales plataformas que postulan empleos en la región Caribe, usando la técnica web SCRAPING. http://repositorio.unisinucartagena.edu.co:8080/jspui/handle/123456789/94Delgado Monteagudo, A. (2023). INTEGRACIÓN DE TECNOLOGÍAS DE INTELIGENCIA ARTIFICIAL EN UN ASISTENTE VIRTUAL. Universidad Rey Juan Carlos. https://burjcdigital.urjc.es/handle/10115/22962Jiménez Lozano, D., & Leal Gibert, A. (2021). Desarrollo de técnicas del Web Scraping. Escuela Universitaria Gimbernat. https://eugdspace.eug.es/handle/20.500.13002/913Donetonic. (2024). Product Backlog y Sprint Backlog. https://donetonic.com/es/product-backlog y-sprint-backlog/Dieste Tubio, D. T. (2023). Desarrollo de una aplicación móvil para el ahorro de gastos en la compra de alimentos utilizando técnicas de web scraping | Archivo Digital UPM. https://oa.upm.es/74988/Pérez Aguiar, W. (2017). Diseño y desarrollo de una aplicación web Scraping de extracción de enlaces de tiendas web | Archivo Digital UPM. https://oa.upm.es/62959Google. (s. f.). Clasificación de los resultados – Cómo funciona la Búsqueda de Google. Búsqueda de Google - Descubre Cómo Funciona la Búsqueda de Google. https://www.google.com/intl/es/search/howsearchworks/how-search-works/ranking-results/Soriano-Burgos, C. I., Bautista, J. A., & López-Ramírez, M. (2022). Obtención de una base de datos de perfiles de investigadores en Google Scholar basado en web scraping. https://www.jovenesenlaciencia.ugto.mx/index.php/jovenesenlaciencia/article/view/3857Condori, A. (2014). Web Scraping para la obtención de información actualizada de Internet con push notifications para smartphone. https://repositorio.umsa.bo/xmlui/handle/123456789/8405Velasco, M., Villacis, J., Chávez, P., & Cuchipe, W. (2021). Revisión Sistemática de la Metodología Scrum para el Desarrollo de Software. Dialnet. https://dialnet.unirioja.es/servlet/articulo?codigo=8384028Paz-Pérez, D., & Rodríguez-Alberto, M. (2023). Interés y aptitud vocacional como predictores del rendimiento académico universitario. Revista de Psicología y Ciencias del Comportamiento de la Unidad Académica de Ciencias Jurídicas y Sociales/Revista de Psicología y Ciencias del Comportamiento de la Unidad Académica de Ciencias Jurídicas y Sociales, 14(2), 70-87. https://doi.org/10.29059/rpcc.20231201-163Rojas, D., & Rubio, L. (2017). Preferencias vocacionales en estudiantes de Psicología de primer año de la Corporación Universitaria Minuto de Dios. https://repository.uniminuto.edu/handle/10656/5771Rajani Dixit, & Brij Bhushan. (2019). Scrum: An Agile Software Development Process and Metrics. Journal on Today’s Ideas - Tomorrow’s Technologies, 7(1), 73–87. https://doi.org/10.15415/jotitt.2019.71005LICENSElicense.txtlicense.txttext/plain; charset=utf-87167https://repository.udistrital.edu.co/bitstreams/59d6be41-726f-4b8f-ac4f-f29c68ae5d8d/download997daf6c648c962d566d7b082dac908dMD51ORIGINALTrabajo de grado Trabajo de grado application/pdf3892718https://repository.udistrital.edu.co/bitstreams/f1f64f24-7be7-4065-b5c1-f5117a50b1cf/download13050c7dbdf9d68661f76266aee87a1fMD51Licencia de uso y autorizaciónLicencia de uso y autorizaciónapplication/pdf248420https://repository.udistrital.edu.co/bitstreams/97a62ad1-0e6f-44c6-bee3-05e7b4299e05/downloadf70f24b110873432f7402fbb58253dafMD52THUMBNAILTrabajo de grado .jpgTrabajo de grado .jpgIM Thumbnailimage/jpeg5312https://repository.udistrital.edu.co/bitstreams/4a45761d-0bbd-483d-b2e0-fadea3b5031a/downloaddc14115a1d9bcb3504e2011f6acd8533MD53Licencia de uso y autorización.jpgLicencia de uso y autorización.jpgIM Thumbnailimage/jpeg9512https://repository.udistrital.edu.co/bitstreams/59a68a58-ad1e-45c9-98b2-a3bf11b4330e/download4bf4388397447608ccc353f829ab3f77MD5411349/42355oai:repository.udistrital.edu.co:11349/423552025-02-09 01:13:45.903open.accesshttps://repository.udistrital.edu.coRepositorio Universidad Distritalrepositorio@udistrital.edu.coTElDRU5DSUEgWSBBVVRPUklaQUNJw5NOIEVTUEVDSUFMIFBBUkEgUFVCTElDQVIgWSBQRVJNSVRJUiBMQSBDT05TVUxUQSBZIFVTTyBERSBDT05URU5JRE9TIEVOIEVMIFJFUE9TSVRPUklPIElOU1RJVFVDSU9OQUwgREUgTEEgVU5JVkVSU0lEQUQgRElTVFJJVEFMCgpUw6lybWlub3MgeSBjb25kaWNpb25lcyBkZSB1c28gcGFyYSBwdWJsaWNhY2nDs24gZGUgb2JyYXMgZW4gZWwgUmVwb3NpdG9yaW8gSW5zdGl0dWNpb25hbCBkZSBsYSBVbml2ZXJzaWRhZCBEaXN0cml0YWwgRnJhbmNpc2NvIEpvc8OpIGRlIENhbGRhcyAoUklVRCkKCkNvbW8gdGl0dWxhcihlcykgZGVsKG9zKSBkZXJlY2hvKHMpIGRlIGF1dG9yLCBjb25maWVybyAoZXJpbW9zKSBhIGxhIFVuaXZlcnNpZGFkIERpc3RyaXRhbCBGcmFuY2lzY28gSm9zw6kgZGUgQ2FsZGFzIChlbiBhZGVsYW50ZSwgTEEgVU5JVkVSU0lEQUQpIHVuYSBsaWNlbmNpYSBwYXJhIHVzbyBubyBleGNsdXNpdmEsIGxpbWl0YWRhIHkgZ3JhdHVpdGEgc29icmUgbGEgb2JyYSBxdWUgaW50ZWdyYXLDoSBlbCBSZXBvc2l0b3JpbyBJbnN0aXR1Y2lvbmFsIChlbiBhZGVsYW50ZSwgUklVRCksIGRlIGFjdWVyZG8gYSBsYXMgc2lndWllbnRlcyByZWdsYXMsIGxhcyBjdWFsZXMgZGVjbGFybyAoYW1vcykgY29ub2NlciB5IGFjZXB0YXI6CgphKQlFc3RhcsOhIHZpZ2VudGUgYSBwYXJ0aXIgZGUgbGEgZmVjaGEgZW4gcXVlIHNlIGluY2x1eWEgZW4gZWwgUklVRCB5IGhhc3RhIHBvciB1biBwbGF6byBkZSBkaWV6ICgxMCkgQcOxb3MsIHByb3Jyb2dhYmxlIGluZGVmaW5pZGFtZW50ZSBwb3IgZWwgdGllbXBvIHF1ZSBkdXJlIGVsIGRlcmVjaG8gUGF0cmltb25pYWwgZGVsIGF1dG9yOyBsYSBjdWFsIHBvZHLDoSBkYXJzZSBwb3IgdGVybWluYWRhIHByZXZpYSBzb2xpY2l0dWQgYSBMQSBVTklWRVJTSURBRCBwb3IgZXNjcml0byBjb24gdW5hIGFudGVsYWNpw7NuIGRlIGRvcyAoMikgbWVzZXMgYW50ZXMgZGVsIHZlbmNpbWllbnRvIGRlbCBwbGF6byBpbmljaWFsIG8gZWwgZGUgc3UocykgcHLDs3Jyb2dhKHMpLgoKYikJTEEgVU5JVkVSU0lEQUQgcG9kcsOhIHB1YmxpY2FyIGxhIG9icmEgZW4gbGFzIGRpc3RpbnRhcyB2ZXJzaW9uZXMgcmVxdWVyaWRhcyBwb3IgZWwgUklVRCAoZGlnaXRhbCwgaW1wcmVzbywgZWxlY3Ryw7NuaWNvIHUgb3RybyBtZWRpbyBjb25vY2lkbyBvIHBvciBjb25vY2VyKSBMQSBVTklWRVJTSURBRCBubyBzZXLDoSByZXNwb25zYWJsZSBlbiBlbCBldmVudG8gcXVlIGVsIGRvY3VtZW50byBhcGFyZXpjYSByZWZlcmVuY2lhZG8gZW4gbW90b3JlcyBkZSBiw7pzcXVlZGEgbyByZXBvc2l0b3Jpb3MgZGlmZXJlbnRlcyBhbCBSSVVELCB1bmEgdmV6IGVsKG9zKSBhdXRvcihlcykgc29saWNpdGVuIHN1IGVsaW1pbmFjacOzbiBkZWwgUklVRCwgZGFkbyBxdWUgbGEgbWlzbWEgc2Vyw6EgcHVibGljYWRhIGVuIEludGVybmV0LgoKYykJTGEgYXV0b3JpemFjacOzbiBzZSBoYWNlIGEgdMOtdHVsbyBncmF0dWl0bywgcG9yIGxvIHRhbnRvLCBsb3MgYXV0b3JlcyByZW51bmNpYW4gYSByZWNpYmlyIGJlbmVmaWNpbyBhbGd1bm8gcG9yIGxhIHB1YmxpY2FjacOzbiwgZGlzdHJpYnVjacOzbiwgY29tdW5pY2FjacOzbiBww7pibGljYSB5IGN1YWxxdWllciBvdHJvIHVzbyBxdWUgc2UgaGFnYSBlbiBsb3MgdMOpcm1pbm9zIGRlIGxhIHByZXNlbnRlIGxpY2VuY2lhIHkgZGUgbGEgbGljZW5jaWEgZGUgdXNvIGNvbiBxdWUgc2UgcHVibGljYSAoQ3JlYXRpdmUgQ29tbW9ucykuCgpkKQlMb3MgY29udGVuaWRvcyBwdWJsaWNhZG9zIGVuIGVsIFJJVUQgc29uIG9icmEocykgb3JpZ2luYWwoZXMpIHNvYnJlIGxhIGN1YWwoZXMpIGVsKG9zKSBhdXRvcihlcykgY29tbyB0aXR1bGFyZXMgZGUgbG9zIGRlcmVjaG9zIGRlIGF1dG9yLCBhc3VtZW4gdG90YWwgcmVzcG9uc2FiaWxpZGFkIHBvciBlbCBjb250ZW5pZG8gZGUgc3Ugb2JyYSBhbnRlIExBIFVOSVZFUlNJREFEIHkgYW50ZSB0ZXJjZXJvcy4gRW4gdG9kbyBjYXNvIExBIFVOSVZFUlNJREFEIHNlIGNvbXByb21ldGUgYSBpbmRpY2FyIHNpZW1wcmUgbGEgYXV0b3LDrWEgaW5jbHV5ZW5kbyBlbCBub21icmUgZGVsIGF1dG9yIHkgbGEgZmVjaGEgZGUgcHVibGljYWNpw7NuLgoKZSkJTEEgVU5JVkVSU0lEQUQgcG9kcsOhIGluY2x1aXIgbGEgb2JyYSBlbiBsb3Mgw61uZGljZXMgeSBidXNjYWRvcmVzIHF1ZSBlc3RpbWVuIG5lY2VzYXJpb3MgcGFyYSBtYXhpbWl6YXIgbGEgdmlzaWJpbGlkYWQgZWwgdXNvIHkgZWwgaW1wYWN0byBkZSBsYSBwcm9kdWNjacOzbiBjaWVudMOtZmljYSwgYXJ0w61zdGljYSB5IGFjYWTDqW1pY2EgZW4gbGEgY29tdW5pZGFkIGxvY2FsLCBuYWNpb25hbCBvIGludGVybmFjaW9uYWwuCgoKZikJTEEgVU5JVkVSU0lEQUQgcG9kcsOhIGNvbnZlcnRpciBsYSBvYnJhIGEgY3VhbHF1aWVyIG1lZGlvIG8gZm9ybWF0byBjb24gZWwgZmluIGRlIHN1IHByZXNlcnZhY2nDs24gZW4gZWwgdGllbXBvIHF1ZSBsYSBwcmVzZW50ZSBsaWNlbmNpYSB5IGxhIGRlIHN1cyBwcsOzcnJvZ2FzLgoKCkNvbiBiYXNlIGVuIGxvIGFudGVyaW9yIGF1dG9yaXpvKGFtb3MpLCBhIGZhdm9yIGRlbCBSSVVEIHkgZGUgc3VzIHVzdWFyaW9zLCBsYSBwdWJsaWNhY2nDs24geSBjb25zdWx0YSBkZSBsYSBzaWd1aWVudGUgb2JyYToKClRpdHVsbwoKQXV0b3IgICAgICAgQXBlbGxpZG9zICAgICAgICAgTm9tYnJlcwoKMQoKMgoKMwoKCmcpCUF1dG9yaXpvKGFtb3MpLCBxdWUgbGEgb2JyYSBzZWEgcHVlc3RhIGEgZGlzcG9zaWNpw7NuIGRlbCBww7pibGljbyBlbiBsb3MgdMOpcm1pbm9zIGVzdGFibGVjaWRvcyBlbiBsb3MgbGl0ZXJhbGVzIGFudGVyaW9yZXMsIGJham8gbG9zIGzDrW1pdGVzIGRlZmluaWRvcyBwb3IgTEEgVU5JVkVSU0lEQUQsIGVuIGxhcyDigJxDb25kaWNpb25lcyBkZSB1c28gZGUgZXN0cmljdG8gY3VtcGxpbWllbnRv4oCdIGRlIGxvcyByZWN1cnNvcyBwdWJsaWNhZG9zIGVuIGVsIFJJVUQsIGN1eW8gdGV4dG8gY29tcGxldG8gc2UgcHVlZGUgY29uc3VsdGFyIGVuIGh0dHA6Ly9yZXBvc2l0b3J5LnVkaXN0cml0YWwuZWR1LmNvLwoKaCkJQ29ub3pjbyhjZW1vcykgeSBhY2VwdG8oYW1vcykgcXVlIG90b3JnbyhhbW9zKSB1bmEgbGljZW5jaWEgZXNwZWNpYWwgcGFyYSBwdWJsaWNhY2nDs24gZGUgb2JyYXMgZW4gZWwgUmVwb3NpdG9yaW8gSW5zdGl0dWNpb25hbCBkZSBsYSBVbml2ZXJzaWRhZCBEaXN0cml0YWwgRnJhbmNpc2NvIEpvc8OpIGRlIENhbGRhcywgbGljZW5jaWEgICBkZSBsYSBjdWFsIGhlIChoZW1vcykgb2J0ZW5pZG8gdW5hIGNvcGlhLgoKaSkJTWFuaWZpZXN0byhhbW9zKSBtaSAobnVlc3RybykgdG90YWwgYWN1ZXJkbyBjb24gbGFzIGNvbmRpY2lvbmVzIGRlIHVzbyB5IHB1YmxpY2FjacOzbiBlbiBlbCBSZXBvc2l0b3JpbyBJbnN0aXR1Y2lvbmFsIGRlIGxhIFVuaXZlcnNpZGFkIERpc3RyaXRhbCBGcmFuY2lzY28gSm9zw6kgZGUgQ2FsZGFzIHF1ZSBzZSBkZXNjcmliZW4geSBleHBsaWNhbiBlbiBlbCBwcmVzZW50ZSBkb2N1bWVudG8uCgpqKQlDb25vemNvKGNlbW9zKSBsYSBub3JtYXRpdmlkYWQgaW50ZXJuYSBkZSAgTEEgVU5JVkVSU0lEQUQ7IGVuIGNvbmNyZXRvLCBlbCBBY3VlcmRvIDAwNCBkZSAyMDEyIGRlbCBDU1UsIEFjdWVyZG8gMDIzIGRlIDIwMTIgZGVsIENTVSBzb2JyZSBQb2zDrXRpY2EgRWRpdG9yaWFsLCBBY3VlcmRvIDAyNiAgZGVsIDMxIGRlIGp1bGlvIGRlIDIwMTIgc29icmUgZWwgcHJvY2VkaW1pZW50byBwYXJhIGxhIHB1YmxpY2FjacOzbiBkZSB0ZXNpcyBkZSBwb3N0Z3JhZG8gZGUgbG9zIGVzdHVkaWFudGVzIGRlIGxhIFVuaXZlcnNpZGFkIERpc3RyaXRhbCBGcmFuY2lzY28gSm9zw6kgZGUgQ2FsZGFzLCAgQWN1ZXJkbyAwMzAgZGVsIDAzIGRlIGRpY2llbWJyZSBkZSAyMDEzIHBvciBtZWRpbyBkZWwgY3VhbCBzZSBjcmVhIGVsIFJlcG9zaXRvcmlvIEluc3RpdHVjaW9uYWwgZGUgbGEgVW5pdmVyc2lkYWQgRGlzdHJpdGFsIEZyYW5jaXNjbyBKb3PDqSBkZSBDYWxkYXMsIEFjdWVyZG8gMDM4IGRlIDIwMTUgMjAxNSDigJxwb3IgZWwgY3VhbCBzZSBtb2RpZmljYSBlbCBBY3VlcmRvIDAzMSBkZSAyMDE0IGRlIDIwMTQgcXVlIHJlZ2xhbWVudGEgZWwgdHJhYmFqbyBkZSBncmFkbyBwYXJhIGxvcyBlc3R1ZGlhbnRlcyBkZSBwcmVncmFkbyBkZSBsYSBVbml2ZXJzaWRhZCBEaXN0cml0YWwgRnJhbmNpc2NvIEpvc8OpIGRlIENhbGRhcyB5IHNlIGRpY3RhbiBvdHJhcyBkaXJlY3RyaWNlc+KAnSB5IGxhcyBkZW3DoXMgbm9ybWFzIGNvbmNvcmRhbnRlIHkgY29tcGxlbWVudGFyaWFzIHF1ZSByaWdlbiBhbCByZXNwZWN0bywgZXNwZWNpYWxtZW50ZSBsYSBsZXkgMjMgZGUgMTk4MiwgbGEgbGV5IDQ0IGRlIDE5OTMgeSBsYSBkZWNpc2nDs24gQW5kaW5hIDM1MSBkZSAxOTkzLiBFc3RvcyBkb2N1bWVudG9zIHBvZHLDoW4gc2VyIGNvbnN1bHRhZG9zIHkgZGVzY2FyZ2Fkb3MgZW4gZWwgcG9ydGFsIHdlYiBkZSBsYSBiaWJsaW90ZWNhIGh0dHA6Ly9zaXN0ZW1hZGViaWJsaW90ZWNhcy51ZGlzdHJpdGFsLmVkdS5jby8KCmspCUFjZXB0byhhbW9zKSBxdWUgTEEgVU5JVkVSU0lEQUQgbm8gc2UgcmVzcG9uc2FiaWxpemEgcG9yIGxhcyBpbmZyYWNjaW9uZXMgYSBsYSBwcm9waWVkYWQgaW50ZWxlY3R1YWwgbyBEZXJlY2hvcyBkZSBBdXRvciBjYXVzYWRhcyBwb3IgbG9zIHRpdHVsYXJlcyBkZSBsYSBwcmVzZW50ZSBMaWNlbmNpYSB5IGRlY2xhcmFtb3MgcXVlIG1hbnRlbmRyw6kgKGVtb3MpIGluZGVtbmUgYSBMQSBVTklWRVJTSURBRCBwb3IgbGFzIHJlY2xhbWFjaW9uZXMgbGVnYWxlcyBkZSBjdWFscXVpZXIgdGlwbyBxdWUgbGxlZ2FyZW4gYSBwcmVzZW50YXJzZSBwb3IgdmlvbGFjacOzbiBkZSBkZXJlY2hvcyBhIGxhIHByb3BpZWRhZCBpbnRlbGVjdHVhbCBvIGRlIEF1dG9yIHJlbGFjaW9uYWRvcyBjb24gbG9zIGRvY3VtZW50b3MgcmVnaXN0cmFkb3MgZW4gZWwgUklVRC4KCmwpCUVsIChsb3MpIGF1dG9yKGVzKSBtYW5pZmllc3RhKG1vcykgcXVlIGxhIG9icmEgb2JqZXRvIGRlIGxhIHByZXNlbnRlIGF1dG9yaXphY2nDs24gZXMgb3JpZ2luYWwsIGRlIGV4Y2x1c2l2YSBhdXRvcsOtYSwgeSBzZSByZWFsaXrDsyBzaW4gdmlvbGFyIG8gdXN1cnBhciBkZXJlY2hvcyBkZSBhdXRvciBkZSB0ZXJjZXJvczsgZGUgdGFsIHN1ZXJ0ZSwgZW4gY2FzbyBkZSBwcmVzZW50YXJzZSBjdWFscXVpZXIgcmVjbGFtYWNpw7NuIG8gYWNjacOzbiBwb3IgcGFydGUgZGUgdW4gdGVyY2VybyBlbiBjdWFudG8gYSBsb3MgZGVyZWNob3MgZGUgYXV0b3Igc29icmUgbGEgb2JyYSwgZWwgKGxvcykgZXN0dWRpYW50ZShzKSDigJMgYXV0b3IoZXMpIGFzdW1pcsOhKG4pIHRvZGEgbGEgcmVzcG9uc2FiaWxpZGFkIHkgc2FsZHLDoShuKSBlbiBkZWZlbnNhIGRlIGxvcyBkZXJlY2hvcyBhcXXDrSBhdXRvcml6YWRvcy4gUGFyYSB0b2RvcyBsb3MgZWZlY3RvcywgTEEgVU5JVkVSU0lEQUQgYWN0w7phIGNvbW8gdW4gdGVyY2VybyBkZSBidWVuYSBmZS4KCgptKQlFbCAobG9zKSBhdXRvcihlcykgbWFuaWZpZXN0YShtb3MpIHF1ZSBjb25vemNvKGNlbW9zKSBsYSBhdXRvbm9tw61hIHkgbG9zIGRlcmVjaG9zLCBxdWUgcG9zZWUobW9zKSBzb2JyZSBsYSBvYnJhIHksIGNvbW8gdGFsLCBlcyAoc29tb3MpIHJlc3BvbnNhYmxlKHMpIGRlbCBhbGNhbmNlIGp1csOtZGljbyB5IGxlZ2FsLCBkZSBlc2NvZ2VyIGxhIG9wY2nDs24gZGUgbGEgcHVibGljYWNpw7NuIG8gZGUgcmVzdHJpY2Npw7NuIGRlIGxhIHB1YmxpY2FjacOzbiBkZWwgZG9jdW1lbnRvIHJlZ2lzdHJhZG8gZW4gZWwgUklVRC4KCgoKCgoKU0kgRUwgRE9DVU1FTlRPIFNFIEJBU0EgRU4gVU4gVFJBQkFKTyBRVUUgSEEgU0lETyBQQVRST0NJTkFETyBPIEFQT1lBRE8gUE9SIFVOQSBBR0VOQ0lBIE8gVU5BIE9SR0FOSVpBQ0nDk04sIENPTiBFWENFUENJw5NOIERFIExBIFVOSVZFUlNJREFEIERJU1RSSVRBTCBGUkFOQ0lTQ08gSk9TRSBERSBDQUxEQVMsIExPUyBBVVRPUkVTIEdBUkFOVElaQU4gUVVFIFNFIEhBIENVTVBMSURPIENPTiBMT1MKREVSRUNIT1MgWSBPQkxJR0FDSU9ORVMgUkVRVUVSSURPUyBQT1IgRUwgUkVTUEVDVElWTyBDT05UUkFUTyBPIEFDVUVSRE8uCgoKCgoKCgoKCgoKCgoKCgoKCgoKCkVuIGNvbnN0YW5jaWEgZGUgbG8gYW50ZXJpb3IsIGZpcm1vKGFtb3MpIGVsIHByZXNlbnRlIGRvY3VtZW50bywgZW4gbGEgY2l1ZGFkIGRlIEJvZ290w6EsIEQuQy4sIGEgbG9zCgoKRklSTUEgREUgTE9TIFRJVFVMQVJFUyBERSBERVJFQ0hPUyBERSBBVVRPUgoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fICAgQy5DLiBOby4gX19fX19fX19fX19fX19fX19fCgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18gICBDLkMuIE5vLiBfX19fX19fX19fX19fX19fX18KCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXyAgIEMuQy4gTm8uIF9fX19fX19fX19fX19fX19fXwoKCgpDb3JyZW8gRWxlY3Ryw7NuaWNvIEluc3RpdHVjaW9uYWwgZGVsIChkZSBsb3MpIEF1dG9yKGVzKToKCkF1dG9yCSAgICAgIENvcnJlbyBFbGVjdHLDs25pY28KCjEKCjIKCjMKCk5vbWJyZSBkZSBEaXJlY3RvcihlcykgZGUgR3JhZG86CgoxCgoyCgozCgpOb21icmUgRmFjdWx0YWQgeSBQcm95ZWN0byBDdXJyaWN1bGFyOgoKRmFjdWx0YWQJUHJveWVjdG8gQ3VycmljdWxhcgoKCgoKCgoKCk5vdGE6IEVuIGNhc28gcXVlIG5vIGVzdMOpIGRlIGFjdWVyZG8gY29uIGxhcyBjb25kaWNpb25lcyBkZSBsYSBwcmVzZW50ZSBsaWNlbmNpYSwgeSBtYW5pZmllc3RlIGFsZ3VuYSByZXN0cmljY2nDs24gc29icmUgbGEgb2JyYSwganVzdGlmaXF1ZSBsb3MgbW90aXZvcyBwb3IgbG9zIGN1YWxlcyBlbCBkb2N1bWVudG8geSBzdXMgYW5leG9zIG5vIHB1ZWRlbiBzZXIgcHVibGljYWRvcyBlbiBlbCBSZXBvc2l0b3JpbyBJbnN0aXR1Y2lvbmFsIGRlIGxhIFVuaXZlcnNpZGFkIERpc3RyaXRhbCBGcmFuY2lzY28gSm9zw6kgZGUgQ2FsZGFzIFJJVUQuCgoKU2kgcmVxdWllcmUgbcOhcyBlc3BhY2lvLCBwdWVkZSBhbmV4YXIgdW5hIGNvcGlhIHNpbWlsYXIgYSBlc3RhIGhvamEK