Diseño de herramienta web para la visualización de estructuras de datos

En este documento se presenta el proceso de diseño, desarrollo y resultados de la creación de un aplicativo web, que permite a los estudiantes visualizar estructuras de datos y validar sus propias implementaciones en el lenguaje de programación Python. Este aplicativo tiene como objetivo apoyar el p...

Full description

Autores:
Cárdenas Cárdenas, Miguel Ángel
Párraga Gonzáles, Diego Andrés
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/75227
Acceso en línea:
https://hdl.handle.net/1992/75227
Palabra clave:
Herramienta web
Estructuras de datos y algoritmos
Diseño y desarrollo
Flask API
Ingeniería
Rights
openAccess
License
Attribution-NonCommercial-ShareAlike 4.0 International
id UNIANDES2_416d3bd2f6833567a501d2b8c865e95f
oai_identifier_str oai:repositorio.uniandes.edu.co:1992/75227
network_acronym_str UNIANDES2
network_name_str Séneca: repositorio Uniandes
repository_id_str
dc.title.spa.fl_str_mv Diseño de herramienta web para la visualización de estructuras de datos
dc.title.alternative.eng.fl_str_mv Design of a web tool for the visualization of data structures
title Diseño de herramienta web para la visualización de estructuras de datos
spellingShingle Diseño de herramienta web para la visualización de estructuras de datos
Herramienta web
Estructuras de datos y algoritmos
Diseño y desarrollo
Flask API
Ingeniería
title_short Diseño de herramienta web para la visualización de estructuras de datos
title_full Diseño de herramienta web para la visualización de estructuras de datos
title_fullStr Diseño de herramienta web para la visualización de estructuras de datos
title_full_unstemmed Diseño de herramienta web para la visualización de estructuras de datos
title_sort Diseño de herramienta web para la visualización de estructuras de datos
dc.creator.fl_str_mv Cárdenas Cárdenas, Miguel Ángel
Párraga Gonzáles, Diego Andrés
dc.contributor.advisor.none.fl_str_mv De La Rosa Rosero, Mario Fernando
dc.contributor.author.none.fl_str_mv Cárdenas Cárdenas, Miguel Ángel
Párraga Gonzáles, Diego Andrés
dc.contributor.jury.none.fl_str_mv De la Rosa Rosero, Mario Fernando
dc.subject.keyword.spa.fl_str_mv Herramienta web
Estructuras de datos y algoritmos
Diseño y desarrollo
Flask API
topic Herramienta web
Estructuras de datos y algoritmos
Diseño y desarrollo
Flask API
Ingeniería
dc.subject.themes.spa.fl_str_mv Ingeniería
description En este documento se presenta el proceso de diseño, desarrollo y resultados de la creación de un aplicativo web, que permite a los estudiantes visualizar estructuras de datos y validar sus propias implementaciones en el lenguaje de programación Python. Este aplicativo tiene como objetivo apoyar el proceso de aprendizaje de los estudiantes respecto a las estructuras de datos, y servir como una herramienta para comprender de una mejor manera las abstracciones del curso Estructuras de Datos y Algoritmos. Como resultado se desarrolló exitosamente un aplicativo web, el cual actualmente soporta estructuras de datos como listas enlazadas, árboles y grafos. Adicionalmente, se realizó una validación con los estudiantes para conocer la utilidad de la herramienta y los pasos a seguir para su puesta en marcha.
publishDate 2024
dc.date.accessioned.none.fl_str_mv 2024-12-05T14:55:08Z
dc.date.available.none.fl_str_mv 2024-12-05T14:55:08Z
dc.date.issued.none.fl_str_mv 2024-12-02
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/75227
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/75227
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 V. Cardona, «Ambiente de Apoyo al Aprendizaje de Estructuras de Datos en Python». Accedido: feb. 12, 2024. [En linea]. Disponible: https://repositorio.uniandes.edu.co/server/api/core/bitstreams/3d353a77-e478-4796-a512-af4c5f27e358/content.
C. Silva y C. Falla. «Herramienta de visualización de estructuras de datos en Python». Accedido: feb. 12, 2024. [En linea]. Disponible: https://repositorio.uniandes.edu.co/entities/publication/e9024899-be02-
487d-9d81-ad87a26d9eb5
S. Halim, Z. C. Koh, F. Halim, y V. B. Huai, «Learning Algorithms with Unified and Interactive Webbased Visualization». Olympiads in Informatics, 2012. [En línea]. Disponible en: https://ioinformatics.org/page/ioi-journal-index/44
«visualising data structures and algorithms through animation - VisuAlgo». https://visualgo.net/en «Data Structure Visualization». https://www.cs.usfca.edu/~galles/visualization/Algorithms.html
Toptal, «Sorting Algorithms Animations». Accedido: feb. 12, 2024. [En línea]. Disponible: https://www.toptal.com/developers/sorting-algorithms.
Algorithm Visualizer, «Algorithm Visualizer». Accedido: feb. 12, 2024. [En linea]. Disponible: https://algorithm-visualizer.org/
R. Sancho. «Listas · ciencia-de-datos-con-r». Accedido: feb. 12, 2024. [En linea]. Disponible: https://rsanchezs.gitbooks.io/ciencia-de-datos-con-r/content/estructuras_datos/listas/listas.html
Graphanalyzer, «Crea un grafo en línea y encuentra caminos más cortos entre vértices o usa otros algoritmos». Accedido: feb. 12, 2024. [En linea]. Disponible: https://graphonline.ru/es/
Katrin Becker y Melissa Beacham, «A tool for teaching advanced data structures to computer science students: an overview of the BDP system Journal of Computing Sciences in Colleges (JCSC)». 2001.
«Welcome to Flask — Flask Documentation (3.0.x),” ». Accedido: mar. 14, 2022. [En línea]. Disponible: https://flask.palletsprojects.com/en/3.0.x/
«React». Accedido: mar. 14, 2022. [En línea]. Disponible: https://es.react.dev/
«Graphviz». Accedido: mar. 14, 2022. [En línea]. Disponible: https://graphviz.org/
dc.rights.en.fl_str_mv Attribution-NonCommercial-ShareAlike 4.0 International
dc.rights.uri.none.fl_str_mv http://creativecommons.org/licenses/by-nc-sa/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-ShareAlike 4.0 International
http://creativecommons.org/licenses/by-nc-sa/4.0/
http://purl.org/coar/access_right/c_abf2
eu_rights_str_mv openAccess
dc.format.extent.none.fl_str_mv 74 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 de 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/be72eb1b-6510-42d2-be9f-2f5f5928ea36/download
https://repositorio.uniandes.edu.co/bitstreams/c172e6a6-06de-40c4-85ed-0ef81c2390ba/download
https://repositorio.uniandes.edu.co/bitstreams/06a14bc7-40da-4b50-a509-6e8f58dc36fa/download
https://repositorio.uniandes.edu.co/bitstreams/33b3f7c1-d44a-4ccc-8857-d12fbc2ced99/download
https://repositorio.uniandes.edu.co/bitstreams/380633bb-f7e1-4c88-a8ff-7b853ff6a787/download
https://repositorio.uniandes.edu.co/bitstreams/ee88b0a6-5113-4c26-b4ae-af16932c037b/download
https://repositorio.uniandes.edu.co/bitstreams/e59e5246-a6e8-4ab6-a344-e383e059d874/download
https://repositorio.uniandes.edu.co/bitstreams/a89a6602-e268-4359-a7d1-0c20f99f25d2/download
bitstream.checksum.fl_str_mv c6dcd985afe4a36b7d5c98a24b48796f
4749a07cd308ced50f679e1f0042c437
934f4ca17e109e0a05eaeaba504d7ce4
ae9e573a68e7f92501b6913cc846c39f
754a802bd09b548d51ac9110ddf0bbe2
09a957de35d80f6623ee0c4f5694ef00
b07402f6bb5ef326612bbb96687f8754
f0ee2890806653e362e52258d93ab0bb
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_ 1831927812654628864
spelling De La Rosa Rosero, Mario Fernandovirtual::21761-1Cárdenas Cárdenas, Miguel ÁngelPárraga Gonzáles, Diego AndrésDe la Rosa Rosero, Mario Fernando2024-12-05T14:55:08Z2024-12-05T14:55:08Z2024-12-02https://hdl.handle.net/1992/75227instname:Universidad de los Andesreponame:Repositorio Institucional Sénecarepourl:https://repositorio.uniandes.edu.co/En este documento se presenta el proceso de diseño, desarrollo y resultados de la creación de un aplicativo web, que permite a los estudiantes visualizar estructuras de datos y validar sus propias implementaciones en el lenguaje de programación Python. Este aplicativo tiene como objetivo apoyar el proceso de aprendizaje de los estudiantes respecto a las estructuras de datos, y servir como una herramienta para comprender de una mejor manera las abstracciones del curso Estructuras de Datos y Algoritmos. Como resultado se desarrolló exitosamente un aplicativo web, el cual actualmente soporta estructuras de datos como listas enlazadas, árboles y grafos. Adicionalmente, se realizó una validación con los estudiantes para conocer la utilidad de la herramienta y los pasos a seguir para su puesta en marcha.This paper presents the design process, development and results of the creation of a web application that allows students to visualize data structures and validate their own implementations in the Python programming language. This application aims to support the learning process of students regarding data structures and serve as a tool to better understand the abstractions of the course Data Structures and Algorithms. As a result, a web application was successfully developed, which currently supports data structures such as linked lists, trees and graphs. Additionally, a validation was carried out with the students to know the usefulness of the tool and the steps to follow for its implementation.Pregrado74 páginasapplication/pdfspaUniversidad de los AndesIngeniería de Sistemas y ComputaciónFacultad de IngenieríaDepartamento de Ingeniería de Sistemas y ComputaciónAttribution-NonCommercial-ShareAlike 4.0 Internationalhttp://creativecommons.org/licenses/by-nc-sa/4.0/info:eu-repo/semantics/openAccesshttp://purl.org/coar/access_right/c_abf2Diseño de herramienta web para la visualización de estructuras de datosDesign of a web tool for the visualization of data structuresTrabajo de grado - Pregradoinfo:eu-repo/semantics/bachelorThesisinfo:eu-repo/semantics/acceptedVersionhttp://purl.org/coar/resource_type/c_7a1fTexthttp://purl.org/redcol/resource_type/TPHerramienta webEstructuras de datos y algoritmosDiseño y desarrolloFlask APIIngenieríaV. Cardona, «Ambiente de Apoyo al Aprendizaje de Estructuras de Datos en Python». Accedido: feb. 12, 2024. [En linea]. Disponible: https://repositorio.uniandes.edu.co/server/api/core/bitstreams/3d353a77-e478-4796-a512-af4c5f27e358/content.C. Silva y C. Falla. «Herramienta de visualización de estructuras de datos en Python». Accedido: feb. 12, 2024. [En linea]. Disponible: https://repositorio.uniandes.edu.co/entities/publication/e9024899-be02-487d-9d81-ad87a26d9eb5S. Halim, Z. C. Koh, F. Halim, y V. B. Huai, «Learning Algorithms with Unified and Interactive Webbased Visualization». Olympiads in Informatics, 2012. [En línea]. Disponible en: https://ioinformatics.org/page/ioi-journal-index/44«visualising data structures and algorithms through animation - VisuAlgo». https://visualgo.net/en «Data Structure Visualization». https://www.cs.usfca.edu/~galles/visualization/Algorithms.htmlToptal, «Sorting Algorithms Animations». Accedido: feb. 12, 2024. [En línea]. Disponible: https://www.toptal.com/developers/sorting-algorithms.Algorithm Visualizer, «Algorithm Visualizer». Accedido: feb. 12, 2024. [En linea]. Disponible: https://algorithm-visualizer.org/R. Sancho. «Listas · ciencia-de-datos-con-r». Accedido: feb. 12, 2024. [En linea]. Disponible: https://rsanchezs.gitbooks.io/ciencia-de-datos-con-r/content/estructuras_datos/listas/listas.htmlGraphanalyzer, «Crea un grafo en línea y encuentra caminos más cortos entre vértices o usa otros algoritmos». Accedido: feb. 12, 2024. [En linea]. Disponible: https://graphonline.ru/es/Katrin Becker y Melissa Beacham, «A tool for teaching advanced data structures to computer science students: an overview of the BDP system Journal of Computing Sciences in Colleges (JCSC)». 2001.«Welcome to Flask — Flask Documentation (3.0.x),” ». Accedido: mar. 14, 2022. [En línea]. Disponible: https://flask.palletsprojects.com/en/3.0.x/«React». Accedido: mar. 14, 2022. [En línea]. Disponible: https://es.react.dev/«Graphviz». Accedido: mar. 14, 2022. [En línea]. Disponible: https://graphviz.org/202010998202015540Publicationhttps://scholar.google.es/citations?user=UB6e9ywAAAAJvirtual::21761-10000-0002-9066-7225virtual::21761-1https://scienti.minciencias.gov.co/cvlac/visualizador/generarCurriculoCv.do?cod_rh=0000054089virtual::21761-1876bd262-765f-42f0-847b-262138432a3fvirtual::21761-1876bd262-765f-42f0-847b-262138432a3fvirtual::21761-1ORIGINALautorizacion tesis-D-Parraga-M-Cardenas-firmada.pdfautorizacion tesis-D-Parraga-M-Cardenas-firmada.pdfHIDEapplication/pdf238310https://repositorio.uniandes.edu.co/bitstreams/be72eb1b-6510-42d2-be9f-2f5f5928ea36/downloadc6dcd985afe4a36b7d5c98a24b48796fMD51Herramienta web para la visualizacion de Estructuras de Datos.pdfHerramienta web para la visualizacion de Estructuras de Datos.pdfapplication/pdf4211333https://repositorio.uniandes.edu.co/bitstreams/c172e6a6-06de-40c4-85ed-0ef81c2390ba/download4749a07cd308ced50f679e1f0042c437MD56CC-LICENSElicense_rdflicense_rdfapplication/rdf+xml; charset=utf-81031https://repositorio.uniandes.edu.co/bitstreams/06a14bc7-40da-4b50-a509-6e8f58dc36fa/download934f4ca17e109e0a05eaeaba504d7ce4MD54LICENSElicense.txtlicense.txttext/plain; charset=utf-82535https://repositorio.uniandes.edu.co/bitstreams/33b3f7c1-d44a-4ccc-8857-d12fbc2ced99/downloadae9e573a68e7f92501b6913cc846c39fMD55TEXTautorizacion tesis-D-Parraga-M-Cardenas-firmada.pdf.txtautorizacion tesis-D-Parraga-M-Cardenas-firmada.pdf.txtExtracted texttext/plain2091https://repositorio.uniandes.edu.co/bitstreams/380633bb-f7e1-4c88-a8ff-7b853ff6a787/download754a802bd09b548d51ac9110ddf0bbe2MD57Herramienta web para la visualizacion de Estructuras de Datos.pdf.txtHerramienta web para la visualizacion de Estructuras de Datos.pdf.txtExtracted texttext/plain97294https://repositorio.uniandes.edu.co/bitstreams/ee88b0a6-5113-4c26-b4ae-af16932c037b/download09a957de35d80f6623ee0c4f5694ef00MD59THUMBNAILautorizacion tesis-D-Parraga-M-Cardenas-firmada.pdf.jpgautorizacion tesis-D-Parraga-M-Cardenas-firmada.pdf.jpgGenerated Thumbnailimage/jpeg11157https://repositorio.uniandes.edu.co/bitstreams/e59e5246-a6e8-4ab6-a344-e383e059d874/downloadb07402f6bb5ef326612bbb96687f8754MD58Herramienta web para la visualizacion de Estructuras de Datos.pdf.jpgHerramienta web para la visualizacion de Estructuras de Datos.pdf.jpgGenerated Thumbnailimage/jpeg6239https://repositorio.uniandes.edu.co/bitstreams/a89a6602-e268-4359-a7d1-0c20f99f25d2/downloadf0ee2890806653e362e52258d93ab0bbMD5101992/75227oai:repositorio.uniandes.edu.co:1992/752272024-12-06 03:07:07.92http://creativecommons.org/licenses/by-nc-sa/4.0/Attribution-NonCommercial-ShareAlike 4.0 Internationalopen.accesshttps://repositorio.uniandes.edu.coRepositorio institucional Sénecaadminrepositorio@uniandes.edu.coPGgzPjxzdHJvbmc+RGVzY2FyZ28gZGUgUmVzcG9uc2FiaWxpZGFkIC0gTGljZW5jaWEgZGUgQXV0b3JpemFjacOzbjwvc3Ryb25nPjwvaDM+CjxwPjxzdHJvbmc+UG9yIGZhdm9yIGxlZXIgYXRlbnRhbWVudGUgZXN0ZSBkb2N1bWVudG8gcXVlIHBlcm1pdGUgYWwgUmVwb3NpdG9yaW8gSW5zdGl0dWNpb25hbCBTw6luZWNhIHJlcHJvZHVjaXIgeSBkaXN0cmlidWlyIGxvcyByZWN1cnNvcyBkZSBpbmZvcm1hY2nDs24gZGVwb3NpdGFkb3MgbWVkaWFudGUgbGEgYXV0b3JpemFjacOzbiBkZSBsb3Mgc2lndWllbnRlcyB0w6lybWlub3M6PC9zdHJvbmc+PC9wPgo8cD5Db25jZWRhIGxhIGxpY2VuY2lhIGRlIGRlcMOzc2l0byBlc3TDoW5kYXIgc2VsZWNjaW9uYW5kbyBsYSBvcGNpw7NuIDxzdHJvbmc+J0FjZXB0YXIgbG9zIHTDqXJtaW5vcyBhbnRlcmlvcm1lbnRlIGRlc2NyaXRvcyc8L3N0cm9uZz4geSBjb250aW51YXIgZWwgcHJvY2VzbyBkZSBlbnbDrW8gbWVkaWFudGUgZWwgYm90w7NuIDxzdHJvbmc+J1NpZ3VpZW50ZScuPC9zdHJvbmc+PC9wPgo8aHI+CjxwPllvLCBlbiBtaSBjYWxpZGFkIGRlIGF1dG9yIGRlbCB0cmFiYWpvIGRlIHRlc2lzLCBtb25vZ3JhZsOtYSBvIHRyYWJham8gZGUgZ3JhZG8sIGhhZ28gZW50cmVnYSBkZWwgZWplbXBsYXIgcmVzcGVjdGl2byB5IGRlIHN1cyBhbmV4b3MgZGUgc2VyIGVsIGNhc28sIGVuIGZvcm1hdG8gZGlnaXRhbCB5L28gZWxlY3Ryw7NuaWNvIHkgYXV0b3Jpem8gYSBsYSBVbml2ZXJzaWRhZCBkZSBsb3MgQW5kZXMgcGFyYSBxdWUgcmVhbGljZSBsYSBwdWJsaWNhY2nDs24gZW4gZWwgU2lzdGVtYSBkZSBCaWJsaW90ZWNhcyBvIGVuIGN1YWxxdWllciBvdHJvIHNpc3RlbWEgbyBiYXNlIGRlIGRhdG9zIHByb3BpbyBvIGFqZW5vIGEgbGEgVW5pdmVyc2lkYWQgeSBwYXJhIHF1ZSBlbiBsb3MgdMOpcm1pbm9zIGVzdGFibGVjaWRvcyBlbiBsYSBMZXkgMjMgZGUgMTk4MiwgTGV5IDQ0IGRlIDE5OTMsIERlY2lzacOzbiBBbmRpbmEgMzUxIGRlIDE5OTMsIERlY3JldG8gNDYwIGRlIDE5OTUgeSBkZW3DoXMgbm9ybWFzIGdlbmVyYWxlcyBzb2JyZSBsYSBtYXRlcmlhLCB1dGlsaWNlIGVuIHRvZGFzIHN1cyBmb3JtYXMsIGxvcyBkZXJlY2hvcyBwYXRyaW1vbmlhbGVzIGRlIHJlcHJvZHVjY2nDs24sIGNvbXVuaWNhY2nDs24gcMO6YmxpY2EsIHRyYW5zZm9ybWFjacOzbiB5IGRpc3RyaWJ1Y2nDs24gKGFscXVpbGVyLCBwcsOpc3RhbW8gcMO6YmxpY28gZSBpbXBvcnRhY2nDs24pIHF1ZSBtZSBjb3JyZXNwb25kZW4gY29tbyBjcmVhZG9yIGRlIGxhIG9icmEgb2JqZXRvIGRlbCBwcmVzZW50ZSBkb2N1bWVudG8uPC9wPgo8cD5MYSBwcmVzZW50ZSBhdXRvcml6YWNpw7NuIHNlIGVtaXRlIGVuIGNhbGlkYWQgZGUgYXV0b3IgZGUgbGEgb2JyYSBvYmpldG8gZGVsIHByZXNlbnRlIGRvY3VtZW50byB5IG5vIGNvcnJlc3BvbmRlIGEgY2VzacOzbiBkZSBkZXJlY2hvcywgc2lubyBhIGxhIGF1dG9yaXphY2nDs24gZGUgdXNvIGFjYWTDqW1pY28gZGUgY29uZm9ybWlkYWQgY29uIGxvIGFudGVyaW9ybWVudGUgc2XDsWFsYWRvLiBMYSBwcmVzZW50ZSBhdXRvcml6YWNpw7NuIHNlIGhhY2UgZXh0ZW5zaXZhIG5vIHNvbG8gYSBsYXMgZmFjdWx0YWRlcyB5IGRlcmVjaG9zIGRlIHVzbyBzb2JyZSBsYSBvYnJhIGVuIGZvcm1hdG8gbyBzb3BvcnRlIG1hdGVyaWFsLCBzaW5vIHRhbWJpw6luIHBhcmEgZm9ybWF0byBlbGVjdHLDs25pY28sIHkgZW4gZ2VuZXJhbCBwYXJhIGN1YWxxdWllciBmb3JtYXRvIGNvbm9jaWRvIG8gcG9yIGNvbm9jZXIuPC9wPgo8cD5FbCBhdXRvciwgbWFuaWZpZXN0YSBxdWUgbGEgb2JyYSBvYmpldG8gZGUgbGEgcHJlc2VudGUgYXV0b3JpemFjacOzbiBlcyBvcmlnaW5hbCB5IGxhIHJlYWxpesOzIHNpbiB2aW9sYXIgbyB1c3VycGFyIGRlcmVjaG9zIGRlIGF1dG9yIGRlIHRlcmNlcm9zLCBwb3IgbG8gdGFudG8sIGxhIG9icmEgZXMgZGUgc3UgZXhjbHVzaXZhIGF1dG9yw61hIHkgdGllbmUgbGEgdGl0dWxhcmlkYWQgc29icmUgbGEgbWlzbWEuPC9wPgo8cD5FbiBjYXNvIGRlIHByZXNlbnRhcnNlIGN1YWxxdWllciByZWNsYW1hY2nDs24gbyBhY2Npw7NuIHBvciBwYXJ0ZSBkZSB1biB0ZXJjZXJvIGVuIGN1YW50byBhIGxvcyBkZXJlY2hvcyBkZSBhdXRvciBzb2JyZSBsYSBvYnJhIGVuIGN1ZXN0acOzbiwgZWwgYXV0b3IgYXN1bWlyw6EgdG9kYSBsYSByZXNwb25zYWJpbGlkYWQsIHkgc2FsZHLDoSBkZSBkZWZlbnNhIGRlIGxvcyBkZXJlY2hvcyBhcXXDrSBhdXRvcml6YWRvcywgcGFyYSB0b2RvcyBsb3MgZWZlY3RvcyBsYSBVbml2ZXJzaWRhZCBhY3TDumEgY29tbyB1biB0ZXJjZXJvIGRlIGJ1ZW5hIGZlLjwvcD4KPHA+U2kgdGllbmUgYWxndW5hIGR1ZGEgc29icmUgbGEgbGljZW5jaWEsIHBvciBmYXZvciwgY29udGFjdGUgY29uIGVsIDxhIGhyZWY9Im1haWx0bzpiaWJsaW90ZWNhQHVuaWFuZGVzLmVkdS5jbyIgdGFyZ2V0PSJfYmxhbmsiPkFkbWluaXN0cmFkb3IgZGVsIFNpc3RlbWEuPC9hPjwvcD4K