Desarrollo de aplicación web para el seguimiento y reporte de actividades laborales en Softtek

En la realización de la practica empresarial se identificó un problema que involucra a cada empleado, diariamente se deben reportar las horas trabajadas y las actividades en las que se emplearon dichas horas. Semanalmente llega un correo electrónico reportando el retraso de los empleados en el cargu...

Full description

Autores:
Ballén Agudelo, Jhon Jairo
Tipo de recurso:
Trabajo de grado de pregrado
Fecha de publicación:
2022
Institución:
Institución Universitaria Politécnico Grancolombiano
Repositorio:
Alejandría Repositorio Institucional
Idioma:
spa
OAI Identifier:
oai:alejandria.poligran.edu.co:10823/6860
Acceso en línea:
http://hdl.handle.net/10823/6860
Palabra clave:
Aplicaciones financeras
Migración datos
Seguridad pruebas
Aplicaciones digitales
Programación de ordenadores
Pruebas de software
Financial applications
Data migration
Safety tests
Rights
License
Atribución-NoComercial-SinDerivadas 2.5 Colombia
id Poli2_ebf8e142c574ade94dd2158d090ebd35
oai_identifier_str oai:alejandria.poligran.edu.co:10823/6860
network_acronym_str Poli2
network_name_str Alejandría Repositorio Institucional
repository_id_str
dc.title.spa.fl_str_mv Desarrollo de aplicación web para el seguimiento y reporte de actividades laborales en Softtek
dc.title.translated.spa.fl_str_mv Development of a web application for the monitoring and reporting of work activities in Softtek
title Desarrollo de aplicación web para el seguimiento y reporte de actividades laborales en Softtek
spellingShingle Desarrollo de aplicación web para el seguimiento y reporte de actividades laborales en Softtek
Aplicaciones financeras
Migración datos
Seguridad pruebas
Aplicaciones digitales
Programación de ordenadores
Pruebas de software
Financial applications
Data migration
Safety tests
title_short Desarrollo de aplicación web para el seguimiento y reporte de actividades laborales en Softtek
title_full Desarrollo de aplicación web para el seguimiento y reporte de actividades laborales en Softtek
title_fullStr Desarrollo de aplicación web para el seguimiento y reporte de actividades laborales en Softtek
title_full_unstemmed Desarrollo de aplicación web para el seguimiento y reporte de actividades laborales en Softtek
title_sort Desarrollo de aplicación web para el seguimiento y reporte de actividades laborales en Softtek
dc.creator.fl_str_mv Ballén Agudelo, Jhon Jairo
dc.contributor.advisor.none.fl_str_mv Mahecha Nieto, Isabel Andrea
dc.contributor.author.none.fl_str_mv Ballén Agudelo, Jhon Jairo
dc.subject.proposal.spa.fl_str_mv Aplicaciones financeras
Migración datos
Seguridad pruebas
topic Aplicaciones financeras
Migración datos
Seguridad pruebas
Aplicaciones digitales
Programación de ordenadores
Pruebas de software
Financial applications
Data migration
Safety tests
dc.subject.lemb.spa.fl_str_mv Aplicaciones digitales
Programación de ordenadores
Pruebas de software
dc.subject.keywords.spa.fl_str_mv Financial applications
Data migration
Safety tests
description En la realización de la practica empresarial se identificó un problema que involucra a cada empleado, diariamente se deben reportar las horas trabajadas y las actividades en las que se emplearon dichas horas. Semanalmente llega un correo electrónico reportando el retraso de los empleados en el cargue de las horas mencionadas anteriormente y solicitándoles que se realice este proceso. En base en lo mencionado anteriormente, se plantea como una posible solución el desarrollo de una aplicación web, pero para poder realizar este desarrollo primero se realiza un proceso de investigación de los temas que involucran el mismo, como lo son todos los conceptos relacionados a una aplicación web, pasando por los diferentes campos del desarrollo como lo son; bases de datos, back-end, front-end, metodologías de desarrollo y documentación.
publishDate 2022
dc.date.issued.none.fl_str_mv 2022-01-17
dc.date.accessioned.none.fl_str_mv 2023-03-22T13:00:36Z
dc.date.available.none.fl_str_mv 2023-03-22T13:00:36Z
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.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/6860
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/6860
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 Arizmendi, P. (2018). AngularJS: Conviértete en el profesional que las compañías de software necesitan (1.a ed., Vol. 3). Paiminix. https://books.google.com.co/books/about/AngularJS_Convi%C3%A9rtete_en_el_profesion al.html?id=q1FjDwAAQBAJ&redir_esc=y
Camarena, S., Gamaliel, J., & Espinosa, T. (2012, noviembre). redalyc. Automatización de la codificación del patrón modelo vista controlador (mvc) en proyectos orientados a la Web. Recuperado 20 de diciembre de 2021, de https://www.redalyc.org/pdf/104/10423895005.pdf
Córdova, R. F., & Cuzco, B. E. (2013). Análisis comparativo entre bases de datos relacionales con bases de datos no relacionales. (N.o 1). https://dspace.ups.edu.ec/bitstream/123456789/6977/1/UPS-CT003639.pdf
Express. (s. f.). Express - Infraestructura de aplicaciones web Node.js. Expressjs. Recuperado 2 de noviembre de 2021, de https://expressjs.com/es/
Fustik, V. (2017). Scrum Methodology Compared with Other Methodologies Applied in the Software Development Projects. Proceedings of the International Conference on Information Technologies, 7–16
Gaete, J., Villarroel, R., Figueroa, I., Cornide-Reyes, H., & Muñoz, R. (2021). Enfoque de aplicación ágil con Scrum, Lean y Kanban. INGENIARE - Revista Chilena de Ingeniería, 29(1), 141–157
Generalidades del protocolo HTTP - HTTP | MDN. (2021, 12 noviembre). NDM Web Docs. Recuperado 14 de noviembre de 2021, de https://developer.mozilla.org/es/docs/Web/HTTP/Overview
Gil Vera, V. D., Da Silva, C. R. G., Gil Vera, J. C., & Teutsch, J. (2018). Frameworks para el desarrollo de prototipos WEB: Un caso de aplicación. Lámpsakos, 20, 40–53. https://doi.org/10.21501/21454086.2065
HTML: Lenguaje de etiquetas de hipertexto | MDN. (s. f.). NDM Docs. Recuperado 14 de noviembre de 2021, de https://developer.mozilla.org/es/docs/Web/HTML Informática Básica: ¿Qué son las aplicaciones web? (s. f.). GCFGlobal.org. Recuperado 20 de noviembre de 2021, de https://edu.gcfglobal.org/es/informatica-basica/que-son-las aplicaciones-web/1
Londoño-Rojas, L. F., Tabares-Morales, V., Rosecler-Bez, M., & Duque-Mendez, N. D. (2018). Análisis Comparativo De Guías Para El Desarrollo Web Accesible / Comparative Analysis of Guides for Accessible Web Development. Ciencia e Ingeniería Neogranadina, 28(1), 101–115. https://doi.org/10.18359/rcin.2683
Lucidchat. (s. f.). Qué es el lenguaje unificado de modelado (UML). Lucidchart. Recuperado 15 de noviembre de 2021, de https://www.lucidchart.com/pages/es/que-es-el-lenguaje unificado-de-modelado-uml/#section_0
Mohedano, J., & Saiz, J. M. (2012). Iniciación a JavaScript (1.a ed., Vol. 1). Ministerio de educación de España.
MongoDB. (s. f.). The most popular database for modern apps. Recuperado 1 de noviembre de 2021, de https://www.mongodb.com
Node.js. (s. f.). Node .Js. Recuperado 1 de noviembre de 2021, de https://nodejs.org/es/about
Pantaleo, G. (2015). Ingeniería de software (1.a ed.). Alfaomega Ediciones.
Reinman, A. (s. f.). Nodemailer :: Nodemailer. NODEMAILER. Recuperado 8 de diciembre de 2021, de https://nodemailer.com/about
Trigas Gallego, M. (2012). Gestión de proyectos informáticos- metodología Scrum (N.o 1). http://openaccess.uoc.edu/webapps/o2/bitstream/10609/17885/1/mtrigasTFC0612memoria. pdf
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/6860/1/FIDI%20Ingenierias%20-%20Proyecto%20de%20grado%20Time%20Tracking%20Jhon%20Ballen.pdf
https://alejandria.poligran.edu.co/bitstream/10823/6860/2/license.txt
https://alejandria.poligran.edu.co/bitstream/10823/6860/3/FIDI%20Ingenierias%20-%20Proyecto%20de%20grado%20Time%20Tracking%20Jhon%20Ballen.pdf.jpg
bitstream.checksum.fl_str_mv 1fcc2d077ebfcfbd0ed9fb49a79d073c
8a4605be74aa9ea9d79846c1fba20a33
3800b837bc0bfaa820defa99f3079452
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_ 1814349503034032128
spelling Mahecha Nieto, Isabel AndreaBallén Agudelo, Jhon JairoBogotá D.C.2023-03-22T13:00:36Z2023-03-22T13:00:36Z2022-01-17http://hdl.handle.net/10823/6860instname:Politécnico Grancolombianoreponame:Alejandría Repositorio Comunidadrepourl:http://alejandria.poligran.edu.coEn la realización de la practica empresarial se identificó un problema que involucra a cada empleado, diariamente se deben reportar las horas trabajadas y las actividades en las que se emplearon dichas horas. Semanalmente llega un correo electrónico reportando el retraso de los empleados en el cargue de las horas mencionadas anteriormente y solicitándoles que se realice este proceso. En base en lo mencionado anteriormente, se plantea como una posible solución el desarrollo de una aplicación web, pero para poder realizar este desarrollo primero se realiza un proceso de investigación de los temas que involucran el mismo, como lo son todos los conceptos relacionados a una aplicación web, pasando por los diferentes campos del desarrollo como lo son; bases de datos, back-end, front-end, metodologías de desarrollo y documentación.Resumen .... 6 Planteamiento del problema.... 7 Objetivos…8 Objetivo general... 8 Objetivos específicos... 8 Cargo y funciones... 9 Cargo…. 9 Funciones...9 Alcance…10 Justificación...... 11 Marco Teórico.... 12 Aplicación web ... 12 ProtocoloHTTP.....12 JavaScript.. 13 HTML (HyperText Markup Language) .....13 Angular ..... 14 Base de datos no relacional.... 14 MongoDB.........15 Node.js....15 Express.js.... 16 Definición de UML (Lenguaje Unificado de Modelado) ... 16 MetodologíaScrum.....17 Nodemailer....18 Metodología... 19 Analizar la página para el cargue de horas ... 19 Elegir una metodología ágil de desarrollo ... 19 Levantamiento de requerimientos…. 20 Selección de tecnologías para el desarrollo ... 20 Diseño ......21 Arquitectura de software.... 21 Muck-Ups .... 22 Implementación ..... 26 Resultados esperados.... 27 Resultados obtenidos.... 28 Análisis de la página actual de la empresa para el cargue de horas... 28 Resultados obtenidos de la metodología Scrum ... 29 Levantamiento de requerimientos.... 35 Selección de tecnologías para el desarrollo ... 56 Implementación …. 66 Cronograma…76 Conclusiones...... 77 Bibliografía .... 78In carrying out the business practice, a problem was identified that involves each employee, daily the hours worked and the activities in which said hours were used must be reported. An email arrives weekly reporting the delay of the employees in loading the hours mentioned above and requesting them to carry out this process. Based on the aforementioned, the development of a web application is proposed as a possible solution, but in order to carry out this development, a process of investigation of the issues that involve it is first carried out, as are all the concepts related to a web application. web application, going through the different fields of development as they are; databases, back-end, front-end, development methodologies and documentation.application/pdfspaDesarrollo de aplicación web para el seguimiento y reporte de actividades laborales en SofttekDevelopment of a web application for the monitoring and reporting of work activities in SofttekbachelorThesisTesis/Trabajo de grado - Monografía - Pregradoinfo:eu-repo/semantics/bachelorThesishttp://purl.org/coar/resource_type/c_7a1fhttps://purl.org/redcol/resource_type/TPinfo:eu-repo/semantics/acceptedVersionAplicaciones financerasMigración datosSeguridad pruebasAplicaciones digitalesProgramación de ordenadoresPruebas de softwareFinancial applicationsData migrationSafety testsArizmendi, P. (2018). AngularJS: Conviértete en el profesional que las compañías de software necesitan (1.a ed., Vol. 3). Paiminix. https://books.google.com.co/books/about/AngularJS_Convi%C3%A9rtete_en_el_profesion al.html?id=q1FjDwAAQBAJ&redir_esc=yCamarena, S., Gamaliel, J., & Espinosa, T. (2012, noviembre). redalyc. Automatización de la codificación del patrón modelo vista controlador (mvc) en proyectos orientados a la Web. Recuperado 20 de diciembre de 2021, de https://www.redalyc.org/pdf/104/10423895005.pdfCórdova, R. F., & Cuzco, B. E. (2013). Análisis comparativo entre bases de datos relacionales con bases de datos no relacionales. (N.o 1). https://dspace.ups.edu.ec/bitstream/123456789/6977/1/UPS-CT003639.pdfExpress. (s. f.). Express - Infraestructura de aplicaciones web Node.js. Expressjs. Recuperado 2 de noviembre de 2021, de https://expressjs.com/es/Fustik, V. (2017). Scrum Methodology Compared with Other Methodologies Applied in the Software Development Projects. Proceedings of the International Conference on Information Technologies, 7–16Gaete, J., Villarroel, R., Figueroa, I., Cornide-Reyes, H., & Muñoz, R. (2021). Enfoque de aplicación ágil con Scrum, Lean y Kanban. INGENIARE - Revista Chilena de Ingeniería, 29(1), 141–157Generalidades del protocolo HTTP - HTTP | MDN. (2021, 12 noviembre). NDM Web Docs. Recuperado 14 de noviembre de 2021, de https://developer.mozilla.org/es/docs/Web/HTTP/OverviewGil Vera, V. D., Da Silva, C. R. G., Gil Vera, J. C., & Teutsch, J. (2018). Frameworks para el desarrollo de prototipos WEB: Un caso de aplicación. Lámpsakos, 20, 40–53. https://doi.org/10.21501/21454086.2065HTML: Lenguaje de etiquetas de hipertexto | MDN. (s. f.). NDM Docs. Recuperado 14 de noviembre de 2021, de https://developer.mozilla.org/es/docs/Web/HTML Informática Básica: ¿Qué son las aplicaciones web? (s. f.). GCFGlobal.org. Recuperado 20 de noviembre de 2021, de https://edu.gcfglobal.org/es/informatica-basica/que-son-las aplicaciones-web/1Londoño-Rojas, L. F., Tabares-Morales, V., Rosecler-Bez, M., & Duque-Mendez, N. D. (2018). Análisis Comparativo De Guías Para El Desarrollo Web Accesible / Comparative Analysis of Guides for Accessible Web Development. Ciencia e Ingeniería Neogranadina, 28(1), 101–115. https://doi.org/10.18359/rcin.2683Lucidchat. (s. f.). Qué es el lenguaje unificado de modelado (UML). Lucidchart. Recuperado 15 de noviembre de 2021, de https://www.lucidchart.com/pages/es/que-es-el-lenguaje unificado-de-modelado-uml/#section_0Mohedano, J., & Saiz, J. M. (2012). Iniciación a JavaScript (1.a ed., Vol. 1). Ministerio de educación de España.MongoDB. (s. f.). The most popular database for modern apps. Recuperado 1 de noviembre de 2021, de https://www.mongodb.comNode.js. (s. f.). Node .Js. Recuperado 1 de noviembre de 2021, de https://nodejs.org/es/aboutPantaleo, G. (2015). Ingeniería de software (1.a ed.). Alfaomega Ediciones.Reinman, A. (s. f.). Nodemailer :: Nodemailer. NODEMAILER. Recuperado 8 de diciembre de 2021, de https://nodemailer.com/aboutTrigas Gallego, M. (2012). Gestión de proyectos informáticos- metodología Scrum (N.o 1). http://openaccess.uoc.edu/webapps/o2/bitstream/10609/17885/1/mtrigasTFC0612memoria. pdfIngeniería de SistemasFacultad de ingeniería y Diseño e InnovaciónAtribución-NoComercial-SinDerivadas 2.5 Colombiahttp://purl.org/coar/access_right/c_abf2ORIGINALFIDI Ingenierias - Proyecto de grado Time Tracking Jhon Ballen.pdfFIDI Ingenierias - Proyecto de grado Time Tracking Jhon Ballen.pdfapplication/pdf2574613https://alejandria.poligran.edu.co/bitstream/10823/6860/1/FIDI%20Ingenierias%20-%20Proyecto%20de%20grado%20Time%20Tracking%20Jhon%20Ballen.pdf1fcc2d077ebfcfbd0ed9fb49a79d073cMD51open accessLICENSElicense.txtlicense.txttext/plain; charset=utf-81748https://alejandria.poligran.edu.co/bitstream/10823/6860/2/license.txt8a4605be74aa9ea9d79846c1fba20a33MD52open accessTHUMBNAILFIDI Ingenierias - Proyecto de grado Time Tracking Jhon Ballen.pdf.jpgFIDI Ingenierias - Proyecto de grado Time Tracking Jhon Ballen.pdf.jpgIM Thumbnailimage/jpeg4083https://alejandria.poligran.edu.co/bitstream/10823/6860/3/FIDI%20Ingenierias%20-%20Proyecto%20de%20grado%20Time%20Tracking%20Jhon%20Ballen.pdf.jpg3800b837bc0bfaa820defa99f3079452MD53open access10823/6860oai:alejandria.poligran.edu.co:10823/68602023-05-25 15:34:32.451open accessRepositorio Comunidad Politecnico Grancolombianodspace@poligran.edu.coTk9URTogUExBQ0UgWU9VUiBPV04gTElDRU5TRSBIRVJFClRoaXMgc2FtcGxlIGxpY2Vuc2UgaXMgcHJvdmlkZWQgZm9yIGluZm9ybWF0aW9uYWwgcHVycG9zZXMgb25seS4KCk5PTi1FWENMVVNJVkUgRElTVFJJQlVUSU9OIExJQ0VOU0UKCkJ5IHNpZ25pbmcgYW5kIHN1Ym1pdHRpbmcgdGhpcyBsaWNlbnNlLCB5b3UgKHRoZSBhdXRob3Iocykgb3IgY29weXJpZ2h0Cm93bmVyKSBncmFudHMgdG8gRFNwYWNlIFVuaXZlcnNpdHkgKERTVSkgdGhlIG5vbi1leGNsdXNpdmUgcmlnaHQgdG8gcmVwcm9kdWNlLAp0cmFuc2xhdGUgKGFzIGRlZmluZWQgYmVsb3cpLCBhbmQvb3IgZGlzdHJpYnV0ZSB5b3VyIHN1Ym1pc3Npb24gKGluY2x1ZGluZwp0aGUgYWJzdHJhY3QpIHdvcmxkd2lkZSBpbiBwcmludCBhbmQgZWxlY3Ryb25pYyBmb3JtYXQgYW5kIGluIGFueSBtZWRpdW0sCmluY2x1ZGluZyBidXQgbm90IGxpbWl0ZWQgdG8gYXVkaW8gb3IgdmlkZW8uCgpZb3UgYWdyZWUgdGhhdCBEU1UgbWF5LCB3aXRob3V0IGNoYW5naW5nIHRoZSBjb250ZW50LCB0cmFuc2xhdGUgdGhlCnN1Ym1pc3Npb24gdG8gYW55IG1lZGl1bSBvciBmb3JtYXQgZm9yIHRoZSBwdXJwb3NlIG9mIHByZXNlcnZhdGlvbi4KCllvdSBhbHNvIGFncmVlIHRoYXQgRFNVIG1heSBrZWVwIG1vcmUgdGhhbiBvbmUgY29weSBvZiB0aGlzIHN1Ym1pc3Npb24gZm9yCnB1cnBvc2VzIG9mIHNlY3VyaXR5LCBiYWNrLXVwIGFuZCBwcmVzZXJ2YXRpb24uCgpZb3UgcmVwcmVzZW50IHRoYXQgdGhlIHN1Ym1pc3Npb24gaXMgeW91ciBvcmlnaW5hbCB3b3JrLCBhbmQgdGhhdCB5b3UgaGF2ZQp0aGUgcmlnaHQgdG8gZ3JhbnQgdGhlIHJpZ2h0cyBjb250YWluZWQgaW4gdGhpcyBsaWNlbnNlLiBZb3UgYWxzbyByZXByZXNlbnQKdGhhdCB5b3VyIHN1Ym1pc3Npb24gZG9lcyBub3QsIHRvIHRoZSBiZXN0IG9mIHlvdXIga25vd2xlZGdlLCBpbmZyaW5nZSB1cG9uCmFueW9uZSdzIGNvcHlyaWdodC4KCklmIHRoZSBzdWJtaXNzaW9uIGNvbnRhaW5zIG1hdGVyaWFsIGZvciB3aGljaCB5b3UgZG8gbm90IGhvbGQgY29weXJpZ2h0LAp5b3UgcmVwcmVzZW50IHRoYXQgeW91IGhhdmUgb2J0YWluZWQgdGhlIHVucmVzdHJpY3RlZCBwZXJtaXNzaW9uIG9mIHRoZQpjb3B5cmlnaHQgb3duZXIgdG8gZ3JhbnQgRFNVIHRoZSByaWdodHMgcmVxdWlyZWQgYnkgdGhpcyBsaWNlbnNlLCBhbmQgdGhhdApzdWNoIHRoaXJkLXBhcnR5IG93bmVkIG1hdGVyaWFsIGlzIGNsZWFybHkgaWRlbnRpZmllZCBhbmQgYWNrbm93bGVkZ2VkCndpdGhpbiB0aGUgdGV4dCBvciBjb250ZW50IG9mIHRoZSBzdWJtaXNzaW9uLgoKSUYgVEhFIFNVQk1JU1NJT04gSVMgQkFTRUQgVVBPTiBXT1JLIFRIQVQgSEFTIEJFRU4gU1BPTlNPUkVEIE9SIFNVUFBPUlRFRApCWSBBTiBBR0VOQ1kgT1IgT1JHQU5JWkFUSU9OIE9USEVSIFRIQU4gRFNVLCBZT1UgUkVQUkVTRU5UIFRIQVQgWU9VIEhBVkUKRlVMRklMTEVEIEFOWSBSSUdIVCBPRiBSRVZJRVcgT1IgT1RIRVIgT0JMSUdBVElPTlMgUkVRVUlSRUQgQlkgU1VDSApDT05UUkFDVCBPUiBBR1JFRU1FTlQuCgpEU1Ugd2lsbCBjbGVhcmx5IGlkZW50aWZ5IHlvdXIgbmFtZShzKSBhcyB0aGUgYXV0aG9yKHMpIG9yIG93bmVyKHMpIG9mIHRoZQpzdWJtaXNzaW9uLCBhbmQgd2lsbCBub3QgbWFrZSBhbnkgYWx0ZXJhdGlvbiwgb3RoZXIgdGhhbiBhcyBhbGxvd2VkIGJ5IHRoaXMKbGljZW5zZSwgdG8geW91ciBzdWJtaXNzaW9uLgo=