Ecosistema de IOT para integración de proyectos de aula utilizando herramientas de código abierto
Este documento incluye las actividades realizadas para la selección y despliegue de una plataforma de Internet de las Cosas (IoT, por sus siglas en inglés) en el Politécnico Grancolombiano. Se presenta la metodología propuesta para el desarrollo del proyecto, así como un marco conceptual que permita...
- Autores:
-
Martínez Marín, Nicolás
- Tipo de recurso:
- Trabajo de grado de pregrado
- Fecha de publicación:
- 2023
- Institución:
- Institución Universitaria Politécnico Grancolombiano
- Repositorio:
- Alejandría Repositorio Institucional
- Idioma:
- spa
- OAI Identifier:
- oai:alejandria.poligran.edu.co:10823/7014
- Acceso en línea:
- http://hdl.handle.net/10823/7014
- Palabra clave:
- Internet de las cosas
Open Source
Tecnología
Circuitos electrónicos
Internet de las cosas
Microprogramación
Internet of things
Open Source
Technology
- Rights
- License
- Atribución-NoComercial-SinDerivadas 2.5 Colombia
id |
Poli2_d19007c08de51876c52b34a809746d7c |
---|---|
oai_identifier_str |
oai:alejandria.poligran.edu.co:10823/7014 |
network_acronym_str |
Poli2 |
network_name_str |
Alejandría Repositorio Institucional |
repository_id_str |
|
dc.title.spa.fl_str_mv |
Ecosistema de IOT para integración de proyectos de aula utilizando herramientas de código abierto |
dc.title.translated.spa.fl_str_mv |
IOT ecosystem for the integration of classroom projects using open-source tools |
title |
Ecosistema de IOT para integración de proyectos de aula utilizando herramientas de código abierto |
spellingShingle |
Ecosistema de IOT para integración de proyectos de aula utilizando herramientas de código abierto Internet de las cosas Open Source Tecnología Circuitos electrónicos Internet de las cosas Microprogramación Internet of things Open Source Technology |
title_short |
Ecosistema de IOT para integración de proyectos de aula utilizando herramientas de código abierto |
title_full |
Ecosistema de IOT para integración de proyectos de aula utilizando herramientas de código abierto |
title_fullStr |
Ecosistema de IOT para integración de proyectos de aula utilizando herramientas de código abierto |
title_full_unstemmed |
Ecosistema de IOT para integración de proyectos de aula utilizando herramientas de código abierto |
title_sort |
Ecosistema de IOT para integración de proyectos de aula utilizando herramientas de código abierto |
dc.creator.fl_str_mv |
Martínez Marín, Nicolás |
dc.contributor.advisor.none.fl_str_mv |
Ávila Buitrago, Gabriel Eduardo |
dc.contributor.author.none.fl_str_mv |
Martínez Marín, Nicolás |
dc.subject.proposal.spa.fl_str_mv |
Internet de las cosas Open Source Tecnología |
topic |
Internet de las cosas Open Source Tecnología Circuitos electrónicos Internet de las cosas Microprogramación Internet of things Open Source Technology |
dc.subject.lemb.spa.fl_str_mv |
Circuitos electrónicos Internet de las cosas Microprogramación |
dc.subject.keywords.spa.fl_str_mv |
Internet of things Open Source Technology |
description |
Este documento incluye las actividades realizadas para la selección y despliegue de una plataforma de Internet de las Cosas (IoT, por sus siglas en inglés) en el Politécnico Grancolombiano. Se presenta la metodología propuesta para el desarrollo del proyecto, así como un marco conceptual que permita comprender algunos de los términos y tecnologías trabajados en el documento, particularmente respecto a lo correspondiente a IoT. Posteriormente se describen las actividades de diseño y despliegue de la arquitectura para apoyar proyectos de aula que usen tecnologías de IoT. Finalmente, se incluye descripción de las actividades realizadas con estudiantes que usaron la plataforma seleccionada desplegada en las instalaciones del Politécnico Grancolombiano. |
publishDate |
2023 |
dc.date.accessioned.none.fl_str_mv |
2023-11-14T23:09:09Z |
dc.date.available.none.fl_str_mv |
2023-11-14T23:09:09Z |
dc.date.issued.none.fl_str_mv |
2023-07-21 |
dc.type.spa.fl_str_mv |
bachelorThesis |
dc.type.coarversion.fl_str_mv |
http://purl.org/coar/version/c_b1a7d7d4d402bcce |
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 |
format |
http://purl.org/coar/resource_type/c_7a1f |
dc.identifier.uri.none.fl_str_mv |
http://hdl.handle.net/10823/7014 |
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/7014 |
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 |
MQTT Sparkplug solution. (s.f.). Recuperado el 16 de marzo de 2023, de https://www.hivemq.com/solutions/technology/mqtt-sparkplug/ Tyutyundzhiev, N., Angelov, C., Arsov, T., Lovchinov, K., Nitchev, H., Mutafov, A., & Alexieva, G. (2023). Remote datalogging of solar UV irradiation using open-source ESP32 platform and MQTT protocol. Journal of Physics: Conference Series. Okhovat, E., & Bauer, M. (2021). Monitoring the Smart City Sensor Data Using Thingsboard and Node-Red. Proceedings - 2021 IEEE SmartWorld, Ubiquitous Intelligence and Computing, Advanced and Trusted Computing, Scalable Computing and Communications, Internet of People, and Smart City Innovations, SmartWorld/ScalCom/UIC/ATC/IoP/SCI 2021. Okhovat, E., & Bauer, M. (2021). Monitoring the Smart City Sensor Data Using Thingsboard and Node-Red. Proceedings - 2021 IEEE SmartWorld, Ubiquitous Intelligence and Computing, Advanced and Trusted Computing, Scalable Computing and Communications, Internet of People, and Smart City Innovations, SmartWorld/ScalCom/UIC/ATC/IoP/SCI 2021. Kaa documentation . (s.f.). Recuperado el 2023, de https://kaaproject.github.io/kaa/docs/v0.10.0/Programming-guide/Key-platformfeatures/ Arduino cloud. (s.f.). Recuperado el 2023, de https://cloud.arduino.cc/plans openHab. (s.f.). Recuperado el 2023, de https://www.openhab.org/docs/ Node-RED. (s.f.). Recuperado el 2023, de https://nodered.org/docs/ ThingSpeak. (2023). Obtenido de https://thingspeak.com/pages/learn_more Home Assistant. (s.f.). Recuperado el 2023, de https://www.home-assistant.io/docs/ ThingsBoard docs. (s.f.). Recuperado el abril de 2023, de https://thingsboard.io/docs/getting-started-guides/what-is-thingsboard/ Thingsboard arquitectura. (s.f.). Recuperado el 2023, de https://thingsboard.io/docs/reference/ Thingsboard funcionalidades. (2023). Obtenido de https://thingsboard.io/docs/ Docker ubuntu. (2023). Obtenido de https://docs.docker.com/engine/install/ubuntu/ Thingsboard escenarios despliegue. (2023). Obtenido de https://thingsboard.io/docs/reference/iot-platform-deploymentscenarios/# performance-requirements Thingsboard instalación Docker. (2023). Obtenido de https://thingsboard.io/docs/userguide/ install/docker/?ubuntuThingsboardQueue=kafka Thingsboard ubuntu server. (2023). Obtenido de https://thingsboard.io/docs/userguide/ install/ubuntu/ "IEEE Standard for an Architectural Framework for the Internet of Things (IoT)," in IEEE Std 2413-2019 , vol., no., pp.1-269, 10 March 2020, doi: 10.1109/IEEESTD.2020.9032420. (2020). IEEE. sparkfun drivers CH341. (2023). Obtenido de https://learn.sparkfun.com/tutorials/how-toinstall- ch340-drivers/all#mac-osx Thingsboard dispositivos. (2023). Obtenido de https://thingsboard.io/docs/devices-library Estupiñán López, J. C., López Rojas, K. N., Ramírez, D. A., & Duarte Cepeda, F. (2023). Implementación máquina de estados SUMO. Bogotá: Proyecto de aula Sistemas Digitales y Ensambladores no publicado. Estupiñán López, J. C., López Rojas, K. N., Ramírez, D. A., & Duarte Cepeda, F. (2023). Implementación máquina de estados SUMO. Bogotá: Proyecto de aula Sistemas Digitales y Ensambladores no publicado. Becerra Ruiz, N. V., Tamara Rodriguez, J. C., Redondo Hernandez, E. R., & Ramirez, D. A. (2023). DISPENSADOR AUTOMATIZADO DE ALIMENTOS PARA MASCOTAS. Bogotá: Proyecto de aula sistemas digitales y ensambladores no publicado. Ruiz, S. S., Londoño, J. B., & Sánchez, L. Y. (2023). Estación Meteorológica. Bogotá: Proyecto de aula sistemas digitales y ensambladores no publicado. |
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 en Telecomunicaciones |
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/7014/1/Documento%20FINAL.pdf https://alejandria.poligran.edu.co/bitstream/10823/7014/2/license.txt https://alejandria.poligran.edu.co/bitstream/10823/7014/3/Documento%20FINAL.pdf.jpg |
bitstream.checksum.fl_str_mv |
c56a2c4e672e191f6cff51df27a33780 8a4605be74aa9ea9d79846c1fba20a33 b8ce490656f602f984f15696d8d4f772 |
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_ |
1814349475739598848 |
spelling |
Ávila Buitrago, Gabriel EduardoMartínez Marín, NicolásBogotá D.C.2023-11-14T23:09:09Z2023-11-14T23:09:09Z2023-07-21http://hdl.handle.net/10823/7014instname:Politécnico Grancolombianoreponame:Alejandría Repositorio Comunidadrepourl:http://alejandria.poligran.edu.coEste documento incluye las actividades realizadas para la selección y despliegue de una plataforma de Internet de las Cosas (IoT, por sus siglas en inglés) en el Politécnico Grancolombiano. Se presenta la metodología propuesta para el desarrollo del proyecto, así como un marco conceptual que permita comprender algunos de los términos y tecnologías trabajados en el documento, particularmente respecto a lo correspondiente a IoT. Posteriormente se describen las actividades de diseño y despliegue de la arquitectura para apoyar proyectos de aula que usen tecnologías de IoT. Finalmente, se incluye descripción de las actividades realizadas con estudiantes que usaron la plataforma seleccionada desplegada en las instalaciones del Politécnico Grancolombiano.RESUMEN......3 CAPÍTULO 1......9 1. ANTECEDENTES......9 1.1. Justificación ......9 1.2. Alcance....9 1.3. Objetivo general....10 1.3.1. Objetivos específicos....10 CAPITULO 2...11 2. MARCO METODOLÓGICO .....11 2.1. Fase de análisis....11 2.2. Fase de diseño....11 2.3. Fase de despliegue ...11 2.4. Fase de verificación ...12 CAPITULO 3...13 3. MARCO CONCEPTUAL...13 3.1. IoT ....13 3.2. Funcionamiento del IoT....14 3.2.1. Recopilación de datos:...14 3.2.2. Comunicación ...14 3.2.3. Procesamiento y análisis....14 3.2.4. Toma de decisiones y acciones..14 3.3. Protocolos de comunicación....15 3.3.1. HTTP (Hypertext Transfer Protocol)......15 3.3.2. Web Socket.....16 3.3.3. CoAP (Constrained Application Protocol) ...16 3.3.4. MQTT (Message Queuing Telemetry Transport) ...17 CAPÍTULO 4......18 4. DESARROLLO DEL PROYECTO..18 4.1. Selección de tecnologías....18 4.1.1. Revisión de proyectos....18 4.1.2. Análisis de plataformas IoT ........19 4.1.2.1. Arduino cloud.......20 4.1.2.2. Hive mq .......20 4.1.2.3. Home Assistant........21 4.1.2.4. Kaa .......21 4.1.2.5. Node-red.......21 4.1.2.6. OpenHAB .....22 4.1.2.7. ThingSpeak ......22 4.1.2.8. Thingsboard ......22 4.1.3. Selección plataforma IoT......22 4.1.4. Selección herramientas de hardware IoT .....23 4.2. Diseño del ecosistema IoT ....23 4.3. Fase de despliegue ......28 4.4. Fase de verificación ......29 4.4.1. Semana TIC...29 4.4.2. Proyectos de aula Sistemas Digitales..30 4.4.3. Resultados Encuesta conocimientos previos....33 CAPÍTULO 5.....34 5. Conclusiones y trabajo futuro.....34 5.1. Conclusiones....34 5.2. Trabajo futuro ....34 5.3. BIBLIOGRAFÍA ...35 CAPÍTULO 6.....37 6. ANEXOS...37 6.1.1. Guía instalación Thingsboard ....37 6.1.1.1. Instalación Docker sobre Ubuntu .....37 6.1.1.2. Instalación en equipo local .....37 6.1.1.3. Instalación en Google Cloud......39 6.1.1.4. Instalación en raspberry Pi 4....41 6.2. Experimentos locales ......44 6.3. Información proporcionada......49 6.4. Entrevista grupal estudiantes.....51 6.5. Formulario conocimientos previos IoT.....52 6.6. Formulario encuesta de satisfacción .....53 6.7. Acceso para docentes....54 6.8. Manual funcionalidades Thingsboard ........57This document includes the activities carried out for the selection and deployment of an Internet of Things (IoT) platform at the Politécnico Grancolombiano. The proposed methodology for project development is presented, along with a conceptual framework that allows understanding some of the terms and technologies addressed in the document, particularly concerning IoT. Subsequently, the design and deployment activities of the architecture to support classroom projects using IoT technologies are described. Finally, a description of the activities conducted with students who used the selected platform deployed at the facilities of the Politécnico Grancolombiano is included.application/pdfspaEcosistema de IOT para integración de proyectos de aula utilizando herramientas de código abiertoIOT ecosystem for the integration of classroom projects using open-source toolsbachelorThesisTesis/Trabajo de grado - Monografía - Pregradoinfo:eu-repo/semantics/bachelorThesishttp://purl.org/coar/resource_type/c_7a1fhttps://purl.org/redcol/resource_type/TPhttp://purl.org/coar/version/c_b1a7d7d4d402bcceInternet de las cosasOpen SourceTecnologíaCircuitos electrónicosInternet de las cosasMicroprogramaciónInternet of thingsOpen SourceTechnologyMQTT Sparkplug solution. (s.f.). Recuperado el 16 de marzo de 2023, de https://www.hivemq.com/solutions/technology/mqtt-sparkplug/Tyutyundzhiev, N., Angelov, C., Arsov, T., Lovchinov, K., Nitchev, H., Mutafov, A., & Alexieva, G. (2023). Remote datalogging of solar UV irradiation using open-source ESP32 platform and MQTT protocol. Journal of Physics: Conference Series.Okhovat, E., & Bauer, M. (2021). Monitoring the Smart City Sensor Data Using Thingsboard and Node-Red. Proceedings - 2021 IEEE SmartWorld, Ubiquitous Intelligence and Computing, Advanced and Trusted Computing, Scalable Computing and Communications, Internet of People, and Smart City Innovations, SmartWorld/ScalCom/UIC/ATC/IoP/SCI 2021.Okhovat, E., & Bauer, M. (2021). Monitoring the Smart City Sensor Data Using Thingsboard and Node-Red. Proceedings - 2021 IEEE SmartWorld, Ubiquitous Intelligence and Computing, Advanced and Trusted Computing, Scalable Computing and Communications, Internet of People, and Smart City Innovations, SmartWorld/ScalCom/UIC/ATC/IoP/SCI 2021.Kaa documentation . (s.f.). Recuperado el 2023, de https://kaaproject.github.io/kaa/docs/v0.10.0/Programming-guide/Key-platformfeatures/Arduino cloud. (s.f.). Recuperado el 2023, de https://cloud.arduino.cc/plansopenHab. (s.f.). Recuperado el 2023, de https://www.openhab.org/docs/Node-RED. (s.f.). Recuperado el 2023, de https://nodered.org/docs/ThingSpeak. (2023). Obtenido de https://thingspeak.com/pages/learn_moreHome Assistant. (s.f.). Recuperado el 2023, de https://www.home-assistant.io/docs/ThingsBoard docs. (s.f.). Recuperado el abril de 2023, de https://thingsboard.io/docs/getting-started-guides/what-is-thingsboard/Thingsboard arquitectura. (s.f.). Recuperado el 2023, de https://thingsboard.io/docs/reference/Thingsboard funcionalidades. (2023). Obtenido de https://thingsboard.io/docs/Docker ubuntu. (2023). Obtenido de https://docs.docker.com/engine/install/ubuntu/Thingsboard escenarios despliegue. (2023). Obtenido de https://thingsboard.io/docs/reference/iot-platform-deploymentscenarios/# performance-requirementsThingsboard instalación Docker. (2023). Obtenido de https://thingsboard.io/docs/userguide/ install/docker/?ubuntuThingsboardQueue=kafka Thingsboard ubuntu server. (2023). Obtenido de https://thingsboard.io/docs/userguide/ install/ubuntu/"IEEE Standard for an Architectural Framework for the Internet of Things (IoT)," in IEEE Std 2413-2019 , vol., no., pp.1-269, 10 March 2020, doi: 10.1109/IEEESTD.2020.9032420. (2020). IEEE.sparkfun drivers CH341. (2023). Obtenido de https://learn.sparkfun.com/tutorials/how-toinstall- ch340-drivers/all#mac-osxThingsboard dispositivos. (2023). Obtenido de https://thingsboard.io/docs/devices-libraryEstupiñán López, J. C., López Rojas, K. N., Ramírez, D. A., & Duarte Cepeda, F. (2023). Implementación máquina de estados SUMO. Bogotá: Proyecto de aula Sistemas Digitales y Ensambladores no publicado.Estupiñán López, J. C., López Rojas, K. N., Ramírez, D. A., & Duarte Cepeda, F. (2023). Implementación máquina de estados SUMO. Bogotá: Proyecto de aula Sistemas Digitales y Ensambladores no publicado.Becerra Ruiz, N. V., Tamara Rodriguez, J. C., Redondo Hernandez, E. R., & Ramirez, D. A. (2023). DISPENSADOR AUTOMATIZADO DE ALIMENTOS PARA MASCOTAS. Bogotá: Proyecto de aula sistemas digitales y ensambladores no publicado.Ruiz, S. S., Londoño, J. B., & Sánchez, L. Y. (2023). Estación Meteorológica. Bogotá: Proyecto de aula sistemas digitales y ensambladores no publicado.Ingeniería en TelecomunicacionesFacultad de ingeniería y Diseño e InnovaciónAtribución-NoComercial-SinDerivadas 2.5 Colombiahttp://purl.org/coar/access_right/c_abf2ORIGINALDocumento FINAL.pdfDocumento FINAL.pdfDocumento principal de trabajo gradoapplication/pdf17754168https://alejandria.poligran.edu.co/bitstream/10823/7014/1/Documento%20FINAL.pdfc56a2c4e672e191f6cff51df27a33780MD51open accessLICENSElicense.txtlicense.txttext/plain; charset=utf-81748https://alejandria.poligran.edu.co/bitstream/10823/7014/2/license.txt8a4605be74aa9ea9d79846c1fba20a33MD52open accessTHUMBNAILDocumento FINAL.pdf.jpgDocumento FINAL.pdf.jpgIM Thumbnailimage/jpeg3767https://alejandria.poligran.edu.co/bitstream/10823/7014/3/Documento%20FINAL.pdf.jpgb8ce490656f602f984f15696d8d4f772MD53open access10823/7014oai:alejandria.poligran.edu.co:10823/70142023-11-15 03:00:17.498open accessRepositorio Comunidad Politecnico Grancolombianodspace@poligran.edu.coTk9URTogUExBQ0UgWU9VUiBPV04gTElDRU5TRSBIRVJFClRoaXMgc2FtcGxlIGxpY2Vuc2UgaXMgcHJvdmlkZWQgZm9yIGluZm9ybWF0aW9uYWwgcHVycG9zZXMgb25seS4KCk5PTi1FWENMVVNJVkUgRElTVFJJQlVUSU9OIExJQ0VOU0UKCkJ5IHNpZ25pbmcgYW5kIHN1Ym1pdHRpbmcgdGhpcyBsaWNlbnNlLCB5b3UgKHRoZSBhdXRob3Iocykgb3IgY29weXJpZ2h0Cm93bmVyKSBncmFudHMgdG8gRFNwYWNlIFVuaXZlcnNpdHkgKERTVSkgdGhlIG5vbi1leGNsdXNpdmUgcmlnaHQgdG8gcmVwcm9kdWNlLAp0cmFuc2xhdGUgKGFzIGRlZmluZWQgYmVsb3cpLCBhbmQvb3IgZGlzdHJpYnV0ZSB5b3VyIHN1Ym1pc3Npb24gKGluY2x1ZGluZwp0aGUgYWJzdHJhY3QpIHdvcmxkd2lkZSBpbiBwcmludCBhbmQgZWxlY3Ryb25pYyBmb3JtYXQgYW5kIGluIGFueSBtZWRpdW0sCmluY2x1ZGluZyBidXQgbm90IGxpbWl0ZWQgdG8gYXVkaW8gb3IgdmlkZW8uCgpZb3UgYWdyZWUgdGhhdCBEU1UgbWF5LCB3aXRob3V0IGNoYW5naW5nIHRoZSBjb250ZW50LCB0cmFuc2xhdGUgdGhlCnN1Ym1pc3Npb24gdG8gYW55IG1lZGl1bSBvciBmb3JtYXQgZm9yIHRoZSBwdXJwb3NlIG9mIHByZXNlcnZhdGlvbi4KCllvdSBhbHNvIGFncmVlIHRoYXQgRFNVIG1heSBrZWVwIG1vcmUgdGhhbiBvbmUgY29weSBvZiB0aGlzIHN1Ym1pc3Npb24gZm9yCnB1cnBvc2VzIG9mIHNlY3VyaXR5LCBiYWNrLXVwIGFuZCBwcmVzZXJ2YXRpb24uCgpZb3UgcmVwcmVzZW50IHRoYXQgdGhlIHN1Ym1pc3Npb24gaXMgeW91ciBvcmlnaW5hbCB3b3JrLCBhbmQgdGhhdCB5b3UgaGF2ZQp0aGUgcmlnaHQgdG8gZ3JhbnQgdGhlIHJpZ2h0cyBjb250YWluZWQgaW4gdGhpcyBsaWNlbnNlLiBZb3UgYWxzbyByZXByZXNlbnQKdGhhdCB5b3VyIHN1Ym1pc3Npb24gZG9lcyBub3QsIHRvIHRoZSBiZXN0IG9mIHlvdXIga25vd2xlZGdlLCBpbmZyaW5nZSB1cG9uCmFueW9uZSdzIGNvcHlyaWdodC4KCklmIHRoZSBzdWJtaXNzaW9uIGNvbnRhaW5zIG1hdGVyaWFsIGZvciB3aGljaCB5b3UgZG8gbm90IGhvbGQgY29weXJpZ2h0LAp5b3UgcmVwcmVzZW50IHRoYXQgeW91IGhhdmUgb2J0YWluZWQgdGhlIHVucmVzdHJpY3RlZCBwZXJtaXNzaW9uIG9mIHRoZQpjb3B5cmlnaHQgb3duZXIgdG8gZ3JhbnQgRFNVIHRoZSByaWdodHMgcmVxdWlyZWQgYnkgdGhpcyBsaWNlbnNlLCBhbmQgdGhhdApzdWNoIHRoaXJkLXBhcnR5IG93bmVkIG1hdGVyaWFsIGlzIGNsZWFybHkgaWRlbnRpZmllZCBhbmQgYWNrbm93bGVkZ2VkCndpdGhpbiB0aGUgdGV4dCBvciBjb250ZW50IG9mIHRoZSBzdWJtaXNzaW9uLgoKSUYgVEhFIFNVQk1JU1NJT04gSVMgQkFTRUQgVVBPTiBXT1JLIFRIQVQgSEFTIEJFRU4gU1BPTlNPUkVEIE9SIFNVUFBPUlRFRApCWSBBTiBBR0VOQ1kgT1IgT1JHQU5JWkFUSU9OIE9USEVSIFRIQU4gRFNVLCBZT1UgUkVQUkVTRU5UIFRIQVQgWU9VIEhBVkUKRlVMRklMTEVEIEFOWSBSSUdIVCBPRiBSRVZJRVcgT1IgT1RIRVIgT0JMSUdBVElPTlMgUkVRVUlSRUQgQlkgU1VDSApDT05UUkFDVCBPUiBBR1JFRU1FTlQuCgpEU1Ugd2lsbCBjbGVhcmx5IGlkZW50aWZ5IHlvdXIgbmFtZShzKSBhcyB0aGUgYXV0aG9yKHMpIG9yIG93bmVyKHMpIG9mIHRoZQpzdWJtaXNzaW9uLCBhbmQgd2lsbCBub3QgbWFrZSBhbnkgYWx0ZXJhdGlvbiwgb3RoZXIgdGhhbiBhcyBhbGxvd2VkIGJ5IHRoaXMKbGljZW5zZSwgdG8geW91ciBzdWJtaXNzaW9uLgo= |