Desarrollo de una aplicación web para la organización y registro de eventos para la Institución Universitaria Politécnico Grancolombiano

El Politécnico Grancolombiano no cuenta con una aplicación dedicada para la gestión centralizada y manejo de la información sobre los eventos que realizan, esto resulta en que la información que se logra recoger sobre los eventos está incompleta o no es del todo precisa, este problema puede crecer c...

Full description

Autores:
Lis Santofimio, Juan David
Tipo de recurso:
Trabajo de grado de pregrado
Fecha de publicación:
2021
Institución:
Institución Universitaria Politécnico Grancolombiano
Repositorio:
Alejandría Repositorio Institucional
Idioma:
spa
OAI Identifier:
oai:alejandria.poligran.edu.co:10823/6862
Acceso en línea:
http://hdl.handle.net/10823/6862
Palabra clave:
Aplicación Web
Desarrollo Web
Ingeniería de software
Aplicaciones digitales
Informática
Programación de ordenadores
Web application
Web development
Software engineering
Rights
License
Atribución-NoComercial-SinDerivadas 2.5 Colombia
id Poli2_5c41ff9fe43dbdd6f0716ebec43d58f7
oai_identifier_str oai:alejandria.poligran.edu.co:10823/6862
network_acronym_str Poli2
network_name_str Alejandría Repositorio Institucional
repository_id_str
dc.title.spa.fl_str_mv Desarrollo de una aplicación web para la organización y registro de eventos para la Institución Universitaria Politécnico Grancolombiano
dc.title.translated.spa.fl_str_mv Development of a web application for the organization and registration of events for the Grancolombiano Polytechnic University Institution
title Desarrollo de una aplicación web para la organización y registro de eventos para la Institución Universitaria Politécnico Grancolombiano
spellingShingle Desarrollo de una aplicación web para la organización y registro de eventos para la Institución Universitaria Politécnico Grancolombiano
Aplicación Web
Desarrollo Web
Ingeniería de software
Aplicaciones digitales
Informática
Programación de ordenadores
Web application
Web development
Software engineering
title_short Desarrollo de una aplicación web para la organización y registro de eventos para la Institución Universitaria Politécnico Grancolombiano
title_full Desarrollo de una aplicación web para la organización y registro de eventos para la Institución Universitaria Politécnico Grancolombiano
title_fullStr Desarrollo de una aplicación web para la organización y registro de eventos para la Institución Universitaria Politécnico Grancolombiano
title_full_unstemmed Desarrollo de una aplicación web para la organización y registro de eventos para la Institución Universitaria Politécnico Grancolombiano
title_sort Desarrollo de una aplicación web para la organización y registro de eventos para la Institución Universitaria Politécnico Grancolombiano
dc.creator.fl_str_mv Lis Santofimio, Juan David
dc.contributor.advisor.none.fl_str_mv Mahecha Nieto, Isabel Andrea
dc.contributor.author.none.fl_str_mv Lis Santofimio, Juan David
dc.subject.proposal.spa.fl_str_mv Aplicación Web
Desarrollo Web
Ingeniería de software
topic Aplicación Web
Desarrollo Web
Ingeniería de software
Aplicaciones digitales
Informática
Programación de ordenadores
Web application
Web development
Software engineering
dc.subject.lemb.spa.fl_str_mv Aplicaciones digitales
Informática
Programación de ordenadores
dc.subject.keywords.spa.fl_str_mv Web application
Web development
Software engineering
description El Politécnico Grancolombiano no cuenta con una aplicación dedicada para la gestión centralizada y manejo de la información sobre los eventos que realizan, esto resulta en que la información que se logra recoger sobre los eventos está incompleta o no es del todo precisa, este problema puede crecer con el tiempo en la medida en la que los eventos sean más grandes o se realicen con mayor frecuencia, por lo que se propone realizar un análisis de requerimientos, diseñar e implementar una aplicación para la organización y registro de eventos que pueda probarse en el Politécnico Grancolombiano haciendo uso de una metodología basada en principios de Scrum, se espera que la aplicación resultante permita a la universidad tener una forma centralizada y ordenada de lidiar con la información resultante de los eventos realizados.
publishDate 2021
dc.date.issued.none.fl_str_mv 2021-09-07
dc.date.accessioned.none.fl_str_mv 2023-03-22T15:54:57Z
dc.date.available.none.fl_str_mv 2023-03-22T15:54:57Z
dc.type.spa.fl_str_mv bachelorThesis
dc.type.local.spa.fl_str_mv Tesis/Trabajo de grado - Monografía - Pregrado
dc.type.driver.spa.fl_str_mv info:eu-repo/semantics/bachelorThesis
dc.type.coar.spa.fl_str_mv http://purl.org/coar/resource_type/c_7a1f
dc.type.hasversion.none.fl_str_mv info:eu-repo/semantics/acceptedVersion
dc.type.redcol.none.fl_str_mv https://purl.org/redcol/resource_type/TP
dc.type.version.spa.fl_str_mv info:eu-repo/semantics/acceptedVersion
format http://purl.org/coar/resource_type/c_7a1f
status_str acceptedVersion
dc.identifier.uri.none.fl_str_mv http://hdl.handle.net/10823/6862
dc.identifier.instname.spa.fl_str_mv instname:Politécnico Grancolombiano
dc.identifier.reponame.spa.fl_str_mv reponame:Alejandría Repositorio Comunidad
dc.identifier.repourl.spa.fl_str_mv repourl:http://alejandria.poligran.edu.co
url http://hdl.handle.net/10823/6862
identifier_str_mv instname:Politécnico Grancolombiano
reponame:Alejandría Repositorio Comunidad
repourl:http://alejandria.poligran.edu.co
dc.language.iso.spa.fl_str_mv spa
language spa
dc.relation.references.spa.fl_str_mv Politécnico Grancolombiano, «¿Quiénes somos?: Misión y Visión,» 2021. [En línea]. Available: https://www.poli.edu.co/content/quienes-somos. [Último acceso: 4 marzo 2021]
R. S. Pressman, Ingeniería del software: un enfoque práctico, Séptima Edición ed., México, D. F.: McGraw Hill Interamericana Editores, S.A. de C.V., 2010.
IEEE, «IEEE standard glossary of software engineering terminology,» The Institute of Electrical and Electronics Engineers, New York, 1990.
S. R. Gómez Palomo y E. A. Moraleda Gil, Aproximación a la Ingeniería de Software, Segunda ed., Madrid: Editorial Universitaria Ramón Areces, 2020.
K. Schwaber y J. Sutherland, «La Guía Definitiva de Scrum: Las Reglas del Juego,» 18 noviembre 2020. [En línea]. Available: https://scrumguides.org/docs/scrumguide/v2020/2020-Scrum-Guide-Spanish-Latin South-American.pdf. [Último acceso: 6 marzo 2021]
«Ventajas y desventajas de la metodología Scrum,» Equipo de redacción de Drew, [En línea]. Available: https://blog.wearedrew.co/ventajas-y-desventajas-de-la metodologia-scrum.
H. Geissmann, «Thiga: Blog de Product Management & Product Design,» 5 enero 2021. [En línea]. Available: https://blog.thiga.co/es/glosario/moscow/. [Último acceso: 21 abril 2021]
Mozilla, «Generalidades del protocolo HTTP,» MDN Web Docs, [En línea]. Available: https://developer.mozilla.org/es/docs/Web/HTTP/Overview. [Último acceso: 22 Agosto 2021].
Mozilla, «Métodos de petición HTTP,» MDN Web Docs, [En línea]. Available: https://developer.mozilla.org/es/docs/Web/HTTP/Methods. [Último acceso: 22 Agosto 2021].
Mozilla, «CRUD - Glosario,» MDN Web Docs, [En línea]. Available: https://developer.mozilla.org/es/docs/Glossary/CRUD. [Último acceso: 22 Agosto 2021].
Node.js, «Node.js,» [En línea]. Available: https://nodejs.org/es/. [Último acceso: 23 Agosto 2021].
Node.js, «Acerca de Node.js®,» [En línea]. Available: https://nodejs.org/es/about/. [Último acceso: 23 Agosto 2021].
] Express, «Express,» [En línea]. Available: https://expressjs.com/es/. [Último acceso: 23 Agosto 2021].
Oracle, «MySQL Database Service,» [En línea]. Available: https://www.oracle.com/co/mysql/. [Último acceso: 23 Agosto 2021].
Sequelize, «Sequelize ORM,» [En línea]. Available: https://sequelize.org/. [Último acceso: 23 Agosto 2021].
Angular, «Angular Tutorial: Learn Angular from scratch step by step,» [En línea]. Available: https://angular-templates.io/tutorials/about/learn-angular-from-scratch step-by-step. [Último acceso: 23 Agosto 2021].
Heroku, «Qué es heroku?,» [En línea]. Available: https://www.heroku.com/about. [Último acceso: 22 Agosto 2021]
Mozilla, «Control de acceso HTTP (CORS),» MDN Web Docs, [En línea]. Available: https://developer.mozilla.org/es/docs/Web/HTTP/CORS. [Último acceso: 25 Agosto 2021].
] R. Wu, «Repositorio Rob--W/cors-anywhere/,» [En línea]. Available: https://github.com/Rob--W/cors-anywhere/blob/master/LICENSE. [Último acceso: 20 Agosto 2021
dc.rights.coar.fl_str_mv http://purl.org/coar/access_right/c_abf2
dc.rights.creativecommons.spa.fl_str_mv Atribución-NoComercial-SinDerivadas 2.5 Colombia
rights_invalid_str_mv Atribución-NoComercial-SinDerivadas 2.5 Colombia
http://purl.org/coar/access_right/c_abf2
dc.format.mimetype.spa.fl_str_mv application/pdf
dc.coverage.spatial.none.fl_str_mv Bogotá D.C.
dc.publisher.program.spa.fl_str_mv Ingeniería de Sistemas
dc.publisher.faculty.spa.fl_str_mv Facultad de ingeniería y Diseño e Innovación
institution Institución Universitaria Politécnico Grancolombiano
bitstream.url.fl_str_mv https://alejandria.poligran.edu.co/bitstream/10823/6862/1/Documento%20Tesis%20Juan%20David%20Lis%20Santofimio.pdf
https://alejandria.poligran.edu.co/bitstream/10823/6862/2/license.txt
https://alejandria.poligran.edu.co/bitstream/10823/6862/3/Documento%20Tesis%20Juan%20David%20Lis%20Santofimio.pdf.jpg
bitstream.checksum.fl_str_mv a7f8884ee96f12406fd32e11357b9467
8a4605be74aa9ea9d79846c1fba20a33
d59fc86ec13d93cf9557d6b045c6d64f
bitstream.checksumAlgorithm.fl_str_mv MD5
MD5
MD5
repository.name.fl_str_mv Repositorio Comunidad Politecnico Grancolombiano
repository.mail.fl_str_mv dspace@poligran.edu.co
_version_ 1814349520188735488
spelling Mahecha Nieto, Isabel AndreaLis Santofimio, Juan DavidBogotá D.C.2023-03-22T15:54:57Z2023-03-22T15:54:57Z2021-09-07http://hdl.handle.net/10823/6862instname:Politécnico Grancolombianoreponame:Alejandría Repositorio Comunidadrepourl:http://alejandria.poligran.edu.coEl Politécnico Grancolombiano no cuenta con una aplicación dedicada para la gestión centralizada y manejo de la información sobre los eventos que realizan, esto resulta en que la información que se logra recoger sobre los eventos está incompleta o no es del todo precisa, este problema puede crecer con el tiempo en la medida en la que los eventos sean más grandes o se realicen con mayor frecuencia, por lo que se propone realizar un análisis de requerimientos, diseñar e implementar una aplicación para la organización y registro de eventos que pueda probarse en el Politécnico Grancolombiano haciendo uso de una metodología basada en principios de Scrum, se espera que la aplicación resultante permita a la universidad tener una forma centralizada y ordenada de lidiar con la información resultante de los eventos realizados.Índice Resumen del Proyecto…4 1. INTRODUCCIÓN…4 2. PLANTEAMIENTO DEL PROBLEMA…4 3. OBJETIVOS...5 3.1 OBJETIVO GENERAL…5 3.2 OBJETIVOS ESPECÍFICOS… 5 4. JUSTIFICACIÓN…6 5. ALCANCE…7 6. MARCO TEÓRICO ... 8 6.1 Ingeniería de Software....8 6.1.1 Ciclo de Vida del Software .... 8 6.1.2 Fases del Ciclo de Vida del Software ... 8 6.2 Aplicación Web.... 10 6.3 Desarrollo Ágil... 10 6.4 Scrum ... 10 6.5 Priorización MoSCoW... 12 6.6 HTTP... 13 6.6.1 Métodos de Petición HTTP ... 14 6.7 CRUD... 14 6.8 Backend … 14 6.9 Frontend... 14 6.10 NodeJS....15 6.11 Express ... 15 6.12 MySQL ... 15 6.13 Sequelize... 16 6.14 Angular ... 16 6.15 Heroku.. 16 6.16 CORS .... 17 7. METODOLOGÍA.... 18 8. RESULTADOS: .. 19 8.1 Entregables .... 19 8.2 Descripción de Requerimientos....19 8.2.1 Historias de Usuario... 19 8.2.2 Product Backlog ... 21 8.2.3 Atributos de Calidad ... 22 8.3 Documentación de diseño....23 8.3.1 Vistas de Kruchten… 23 8.3.2 Mockups....29 8.4 Cronograma de Actividades ... 35 8.5 Backend ... 37 8.5.1 Repositorio Backend ... 38 8.5.2 Backend Desplegado …38 8.5.3 Rutas y Funciones … 38 8.5.4 Pruebas Backend... 40 8.6 Frontend... 44 8.6.1 Servidor Proxy CORS y Licencia MIT... 45 8.6.2 Repositorio Frontend ... 45 8.6.3 Componentes Frontend ....46 8.6.4 Pruebas Frontend ....48 9. CONCLUSIONES Y TRABAJO FUTURO... 56 10. BIBLIOGRAFÍA... 57The Politécnico Grancolombiano does not have a dedicated application for the centralized management and handling of information about the events they carry out, this results in the information that is collected about the events being incomplete or not entirely accurate, this problem can grow over time to the extent that the events are larger or are held more frequently, so it is proposed to perform a requirements analysis, design and implement an application for the organization and registration of events that can be tested at the Polytechnic Grancolombiano making use of a methodology based on Scrum principles, it is expected that the resulting application will allow the university to have a centralized and orderly way of dealing with the information resulting from the events carried out.application/pdfspaDesarrollo de una aplicación web para la organización y registro de eventos para la Institución Universitaria Politécnico GrancolombianoDevelopment of a web application for the organization and registration of events for the Grancolombiano Polytechnic University InstitutionbachelorThesisTesis/Trabajo de grado - Monografía - Pregradoinfo:eu-repo/semantics/bachelorThesishttp://purl.org/coar/resource_type/c_7a1finfo:eu-repo/semantics/acceptedVersionhttps://purl.org/redcol/resource_type/TPinfo:eu-repo/semantics/acceptedVersionAplicación WebDesarrollo WebIngeniería de softwareAplicaciones digitalesInformáticaProgramación de ordenadoresWeb applicationWeb developmentSoftware engineeringPolitécnico Grancolombiano, «¿Quiénes somos?: Misión y Visión,» 2021. [En línea]. Available: https://www.poli.edu.co/content/quienes-somos. [Último acceso: 4 marzo 2021]R. S. Pressman, Ingeniería del software: un enfoque práctico, Séptima Edición ed., México, D. F.: McGraw Hill Interamericana Editores, S.A. de C.V., 2010.IEEE, «IEEE standard glossary of software engineering terminology,» The Institute of Electrical and Electronics Engineers, New York, 1990.S. R. Gómez Palomo y E. A. Moraleda Gil, Aproximación a la Ingeniería de Software, Segunda ed., Madrid: Editorial Universitaria Ramón Areces, 2020.K. Schwaber y J. Sutherland, «La Guía Definitiva de Scrum: Las Reglas del Juego,» 18 noviembre 2020. [En línea]. Available: https://scrumguides.org/docs/scrumguide/v2020/2020-Scrum-Guide-Spanish-Latin South-American.pdf. [Último acceso: 6 marzo 2021]«Ventajas y desventajas de la metodología Scrum,» Equipo de redacción de Drew, [En línea]. Available: https://blog.wearedrew.co/ventajas-y-desventajas-de-la metodologia-scrum.H. Geissmann, «Thiga: Blog de Product Management & Product Design,» 5 enero 2021. [En línea]. Available: https://blog.thiga.co/es/glosario/moscow/. [Último acceso: 21 abril 2021]Mozilla, «Generalidades del protocolo HTTP,» MDN Web Docs, [En línea]. Available: https://developer.mozilla.org/es/docs/Web/HTTP/Overview. [Último acceso: 22 Agosto 2021].Mozilla, «Métodos de petición HTTP,» MDN Web Docs, [En línea]. Available: https://developer.mozilla.org/es/docs/Web/HTTP/Methods. [Último acceso: 22 Agosto 2021].Mozilla, «CRUD - Glosario,» MDN Web Docs, [En línea]. Available: https://developer.mozilla.org/es/docs/Glossary/CRUD. [Último acceso: 22 Agosto 2021].Node.js, «Node.js,» [En línea]. Available: https://nodejs.org/es/. [Último acceso: 23 Agosto 2021].Node.js, «Acerca de Node.js®,» [En línea]. Available: https://nodejs.org/es/about/. [Último acceso: 23 Agosto 2021].] Express, «Express,» [En línea]. Available: https://expressjs.com/es/. [Último acceso: 23 Agosto 2021].Oracle, «MySQL Database Service,» [En línea]. Available: https://www.oracle.com/co/mysql/. [Último acceso: 23 Agosto 2021].Sequelize, «Sequelize ORM,» [En línea]. Available: https://sequelize.org/. [Último acceso: 23 Agosto 2021].Angular, «Angular Tutorial: Learn Angular from scratch step by step,» [En línea]. Available: https://angular-templates.io/tutorials/about/learn-angular-from-scratch step-by-step. [Último acceso: 23 Agosto 2021].Heroku, «Qué es heroku?,» [En línea]. Available: https://www.heroku.com/about. [Último acceso: 22 Agosto 2021]Mozilla, «Control de acceso HTTP (CORS),» MDN Web Docs, [En línea]. Available: https://developer.mozilla.org/es/docs/Web/HTTP/CORS. [Último acceso: 25 Agosto 2021].] R. Wu, «Repositorio Rob--W/cors-anywhere/,» [En línea]. Available: https://github.com/Rob--W/cors-anywhere/blob/master/LICENSE. [Último acceso: 20 Agosto 2021Ingeniería de SistemasFacultad de ingeniería y Diseño e InnovaciónAtribución-NoComercial-SinDerivadas 2.5 Colombiahttp://purl.org/coar/access_right/c_abf2ORIGINALDocumento Tesis Juan David Lis Santofimio.pdfDocumento Tesis Juan David Lis Santofimio.pdfapplication/pdf1844335https://alejandria.poligran.edu.co/bitstream/10823/6862/1/Documento%20Tesis%20Juan%20David%20Lis%20Santofimio.pdfa7f8884ee96f12406fd32e11357b9467MD51open accessLICENSElicense.txtlicense.txttext/plain; charset=utf-81748https://alejandria.poligran.edu.co/bitstream/10823/6862/2/license.txt8a4605be74aa9ea9d79846c1fba20a33MD52open accessTHUMBNAILDocumento Tesis Juan David Lis Santofimio.pdf.jpgDocumento Tesis Juan David Lis Santofimio.pdf.jpgIM Thumbnailimage/jpeg3566https://alejandria.poligran.edu.co/bitstream/10823/6862/3/Documento%20Tesis%20Juan%20David%20Lis%20Santofimio.pdf.jpgd59fc86ec13d93cf9557d6b045c6d64fMD53open access10823/6862oai:alejandria.poligran.edu.co:10823/68622023-05-25 15:36:24.495open accessRepositorio Comunidad Politecnico Grancolombianodspace@poligran.edu.coTk9URTogUExBQ0UgWU9VUiBPV04gTElDRU5TRSBIRVJFClRoaXMgc2FtcGxlIGxpY2Vuc2UgaXMgcHJvdmlkZWQgZm9yIGluZm9ybWF0aW9uYWwgcHVycG9zZXMgb25seS4KCk5PTi1FWENMVVNJVkUgRElTVFJJQlVUSU9OIExJQ0VOU0UKCkJ5IHNpZ25pbmcgYW5kIHN1Ym1pdHRpbmcgdGhpcyBsaWNlbnNlLCB5b3UgKHRoZSBhdXRob3Iocykgb3IgY29weXJpZ2h0Cm93bmVyKSBncmFudHMgdG8gRFNwYWNlIFVuaXZlcnNpdHkgKERTVSkgdGhlIG5vbi1leGNsdXNpdmUgcmlnaHQgdG8gcmVwcm9kdWNlLAp0cmFuc2xhdGUgKGFzIGRlZmluZWQgYmVsb3cpLCBhbmQvb3IgZGlzdHJpYnV0ZSB5b3VyIHN1Ym1pc3Npb24gKGluY2x1ZGluZwp0aGUgYWJzdHJhY3QpIHdvcmxkd2lkZSBpbiBwcmludCBhbmQgZWxlY3Ryb25pYyBmb3JtYXQgYW5kIGluIGFueSBtZWRpdW0sCmluY2x1ZGluZyBidXQgbm90IGxpbWl0ZWQgdG8gYXVkaW8gb3IgdmlkZW8uCgpZb3UgYWdyZWUgdGhhdCBEU1UgbWF5LCB3aXRob3V0IGNoYW5naW5nIHRoZSBjb250ZW50LCB0cmFuc2xhdGUgdGhlCnN1Ym1pc3Npb24gdG8gYW55IG1lZGl1bSBvciBmb3JtYXQgZm9yIHRoZSBwdXJwb3NlIG9mIHByZXNlcnZhdGlvbi4KCllvdSBhbHNvIGFncmVlIHRoYXQgRFNVIG1heSBrZWVwIG1vcmUgdGhhbiBvbmUgY29weSBvZiB0aGlzIHN1Ym1pc3Npb24gZm9yCnB1cnBvc2VzIG9mIHNlY3VyaXR5LCBiYWNrLXVwIGFuZCBwcmVzZXJ2YXRpb24uCgpZb3UgcmVwcmVzZW50IHRoYXQgdGhlIHN1Ym1pc3Npb24gaXMgeW91ciBvcmlnaW5hbCB3b3JrLCBhbmQgdGhhdCB5b3UgaGF2ZQp0aGUgcmlnaHQgdG8gZ3JhbnQgdGhlIHJpZ2h0cyBjb250YWluZWQgaW4gdGhpcyBsaWNlbnNlLiBZb3UgYWxzbyByZXByZXNlbnQKdGhhdCB5b3VyIHN1Ym1pc3Npb24gZG9lcyBub3QsIHRvIHRoZSBiZXN0IG9mIHlvdXIga25vd2xlZGdlLCBpbmZyaW5nZSB1cG9uCmFueW9uZSdzIGNvcHlyaWdodC4KCklmIHRoZSBzdWJtaXNzaW9uIGNvbnRhaW5zIG1hdGVyaWFsIGZvciB3aGljaCB5b3UgZG8gbm90IGhvbGQgY29weXJpZ2h0LAp5b3UgcmVwcmVzZW50IHRoYXQgeW91IGhhdmUgb2J0YWluZWQgdGhlIHVucmVzdHJpY3RlZCBwZXJtaXNzaW9uIG9mIHRoZQpjb3B5cmlnaHQgb3duZXIgdG8gZ3JhbnQgRFNVIHRoZSByaWdodHMgcmVxdWlyZWQgYnkgdGhpcyBsaWNlbnNlLCBhbmQgdGhhdApzdWNoIHRoaXJkLXBhcnR5IG93bmVkIG1hdGVyaWFsIGlzIGNsZWFybHkgaWRlbnRpZmllZCBhbmQgYWNrbm93bGVkZ2VkCndpdGhpbiB0aGUgdGV4dCBvciBjb250ZW50IG9mIHRoZSBzdWJtaXNzaW9uLgoKSUYgVEhFIFNVQk1JU1NJT04gSVMgQkFTRUQgVVBPTiBXT1JLIFRIQVQgSEFTIEJFRU4gU1BPTlNPUkVEIE9SIFNVUFBPUlRFRApCWSBBTiBBR0VOQ1kgT1IgT1JHQU5JWkFUSU9OIE9USEVSIFRIQU4gRFNVLCBZT1UgUkVQUkVTRU5UIFRIQVQgWU9VIEhBVkUKRlVMRklMTEVEIEFOWSBSSUdIVCBPRiBSRVZJRVcgT1IgT1RIRVIgT0JMSUdBVElPTlMgUkVRVUlSRUQgQlkgU1VDSApDT05UUkFDVCBPUiBBR1JFRU1FTlQuCgpEU1Ugd2lsbCBjbGVhcmx5IGlkZW50aWZ5IHlvdXIgbmFtZShzKSBhcyB0aGUgYXV0aG9yKHMpIG9yIG93bmVyKHMpIG9mIHRoZQpzdWJtaXNzaW9uLCBhbmQgd2lsbCBub3QgbWFrZSBhbnkgYWx0ZXJhdGlvbiwgb3RoZXIgdGhhbiBhcyBhbGxvd2VkIGJ5IHRoaXMKbGljZW5zZSwgdG8geW91ciBzdWJtaXNzaW9uLgo=