Arquitectura escalable para sistema de monitoreo de dispositivos IoT
Este documento presenta la construcción de una arquitectura escalable para sistema de monitoreo de dispositivos IoT.
- Autores:
-
Villamarín Manrique, Juan Camilo
- Tipo de recurso:
- Trabajo de grado de pregrado
- Fecha de publicación:
- 2022
- Institución:
- Universidad de los Andes
- Repositorio:
- Séneca: repositorio Uniandes
- Idioma:
- spa
- OAI Identifier:
- oai:repositorio.uniandes.edu.co:1992/58909
- Acceso en línea:
- http://hdl.handle.net/1992/58909
- Palabra clave:
- Escalabilidad
Rendimiento
Concurrencia
Procesamiento
Ingeniería
- Rights
- openAccess
- License
- Attribution-NonCommercial-NoDerivatives 4.0 Internacional
id |
UNIANDES2_2564a704124676f6e37275adf46b4772 |
---|---|
oai_identifier_str |
oai:repositorio.uniandes.edu.co:1992/58909 |
network_acronym_str |
UNIANDES2 |
network_name_str |
Séneca: repositorio Uniandes |
repository_id_str |
|
dc.title.none.fl_str_mv |
Arquitectura escalable para sistema de monitoreo de dispositivos IoT |
title |
Arquitectura escalable para sistema de monitoreo de dispositivos IoT |
spellingShingle |
Arquitectura escalable para sistema de monitoreo de dispositivos IoT Escalabilidad Rendimiento Concurrencia Procesamiento Ingeniería |
title_short |
Arquitectura escalable para sistema de monitoreo de dispositivos IoT |
title_full |
Arquitectura escalable para sistema de monitoreo de dispositivos IoT |
title_fullStr |
Arquitectura escalable para sistema de monitoreo de dispositivos IoT |
title_full_unstemmed |
Arquitectura escalable para sistema de monitoreo de dispositivos IoT |
title_sort |
Arquitectura escalable para sistema de monitoreo de dispositivos IoT |
dc.creator.fl_str_mv |
Villamarín Manrique, Juan Camilo |
dc.contributor.advisor.none.fl_str_mv |
Montoya Orozco, Germán Adolfo Lozano Garzon, Carlos Andres |
dc.contributor.author.none.fl_str_mv |
Villamarín Manrique, Juan Camilo |
dc.contributor.researchgroup.es_CO.fl_str_mv |
COMIT - Comunicaciones y Tecnología de Información |
dc.subject.keyword.none.fl_str_mv |
Escalabilidad Rendimiento Concurrencia Procesamiento |
topic |
Escalabilidad Rendimiento Concurrencia Procesamiento Ingeniería |
dc.subject.themes.es_CO.fl_str_mv |
Ingeniería |
description |
Este documento presenta la construcción de una arquitectura escalable para sistema de monitoreo de dispositivos IoT. |
publishDate |
2022 |
dc.date.accessioned.none.fl_str_mv |
2022-07-18T21:07:44Z |
dc.date.available.none.fl_str_mv |
2022-07-18T21:07:44Z |
dc.date.issued.none.fl_str_mv |
2022-07-14 |
dc.type.es_CO.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.es_CO.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 |
http://hdl.handle.net/1992/58909 |
dc.identifier.instname.es_CO.fl_str_mv |
instname:Universidad de los Andes |
dc.identifier.reponame.es_CO.fl_str_mv |
reponame:Repositorio Institucional Séneca |
dc.identifier.repourl.es_CO.fl_str_mv |
repourl:https://repositorio.uniandes.edu.co/ |
url |
http://hdl.handle.net/1992/58909 |
identifier_str_mv |
instname:Universidad de los Andes reponame:Repositorio Institucional Séneca repourl:https://repositorio.uniandes.edu.co/ |
dc.language.iso.es_CO.fl_str_mv |
spa |
language |
spa |
dc.relation.references.es_CO.fl_str_mv |
¿Qué es una base de datos | Oracle Colombia.? https://www.oracle.com/co/database/what-is-database/ (accessed jun. 03, 2022) "Secure and monitor your vehicles with CalAmp's Vehicle Tracking Solutions." https://www.calamp.com/products/vehicle-trackers/ (accessed Jun. 03, 2022). "Reading 17: Concurrency." https://web.mit.edu/6.005/www/fa14/classes/17- concurrency/ (accessed Jun. 03, 2022) "Unique Constraints and Check Constraints - SQL Server | Microsoft Docs." https://docs.microsoft.com/en-us/sql/relational-databases/tables/unique constraints-and-check-constraints?view=sql-server-ver16 (accessed Jun. 03, 2022). "Scalable Definition & Meaning - Merriam-Webster." https://www.merriam webster.com/dictionary/scalable (accessed Jun. 03, 2022). "What is Software Framework | IGI Global." https://www.igi-global.com/dictionary/software-framework/27680 (accessed Jun. 03, 2022). "Primary and Foreign Key Constraints - SQL Server | Microsoft Docs." https://docs.microsoft.com/en-us/sql/relational-databases/tables/primary and-foreign-key-constraints?view=sql-server-ver16#FKeys (accessed Jun. 03, 2022). ¿What are Message Brokers? | IBM." https://www.ibm.com/cloud/learn/message-brokers (accessed Jun. 03, 2022) J. Juneau, "Object Relational Mapping and JPA," Introducing Java EE 7, pp. 55-72, 2013, doi: 10.1007/978-1-4302-5849-0_4. "Significado de PLUG-IN en el Diccionario Cambridge inglés." https://dictionary.cambridge.org/es/diccionario/ingles/plug-in (accessed jun. 03, 2022). "Primary Keys - IBM Documentation." https://www.ibm.com/docs/en/iodg/11.3?topic=reference-primary-keys (accessed Jun. 03, 2022). "Database Query: Definition & Tools - Video & Lesson Transcript | Study.com." https://study.com/academy/lesson/database-query-definition tools.html (accessed Jun. 03, 2022). ¿What is a Server? - Definition & Explanation - Video & Lesson Transcript | Study.com. https://study.com/academy/lesson/what-is-a-server-definition lesson-quiz.html (accessed Jun. 03, 2022 "Single thread definición y significado | Diccionario Inglés Collins." https://www.collinsdictionary.com/es/diccionario/ingles/single-thread (accessed Jun. 03, 2022) "Telemetry Systems Engineering." https://web-p-ebscohost com.ezproxy.uniandes.edu.co/ehost/ebookviewer/ebook/ZTAwMHh3d19fNzI 3MjZfX0FO0?sid=a7d003ba-dd7c-47f5-b1b4- 03a941c79193@redis&vid=11&format=EB (accessed Jun. 03, 2022). "The Official YAML Web Site." https://yaml.org/ (accessed Jun. 03, 2022). F. Carden, R. P. Jedlicka, and R. Henry, Telemetry Systems Engineering. Boston: Artech House, Inc, 2002. [Online]. Available: https://ezproxy.uniandes.edu.co/login?url=https://search.ebscohost.com/logi n.aspx?direct=true&db=e000xww&AN=72726&lang=es&site=ehost-live A. Makris, K. Tserpes, G. Spiliopoulos, D. Zissis, and D. Anagnostopoulos, "MongoDB Vs PostgreSQL: A comparative study on performance aspects," Geoinformatica, vol. 25, no. 2, pp. 243¿268, Apr. 2021, doi: 10.1007/S10707-020-00407-W/FIGURES/12. V. Schmidt and A. Katz, "Speed up time series data ingestion by partitioning tables on Amazon RDS for PostgreSQL | AWS Database Blog," 2021. https://aws.amazon.com/blogs/database/speed-up-time-series-data ingestion-by-partitioning-tables-on-amazon-rds-for-postgresql/ (accessed May 26, 2022). C. Slowik, "Node.js vs Python: comparison, performance, cases | Neoteric," 2019. https://neoteric.eu/blog/node-js-vs-python/ (accessed May 26, 2022) |
dc.rights.license.spa.fl_str_mv |
Attribution-NonCommercial-NoDerivatives 4.0 Internacional |
dc.rights.uri.*.fl_str_mv |
http://creativecommons.org/licenses/by-nc-nd/4.0/ |
dc.rights.accessrights.spa.fl_str_mv |
info:eu-repo/semantics/openAccess |
dc.rights.coar.spa.fl_str_mv |
http://purl.org/coar/access_right/c_abf2 |
rights_invalid_str_mv |
Attribution-NonCommercial-NoDerivatives 4.0 Internacional http://creativecommons.org/licenses/by-nc-nd/4.0/ http://purl.org/coar/access_right/c_abf2 |
eu_rights_str_mv |
openAccess |
dc.format.extent.es_CO.fl_str_mv |
xv, 32 páginas |
dc.format.mimetype.es_CO.fl_str_mv |
application/pdf |
dc.publisher.es_CO.fl_str_mv |
Universidad de los Andes |
dc.publisher.program.es_CO.fl_str_mv |
Ingeniería de Sistemas y Computación |
dc.publisher.faculty.es_CO.fl_str_mv |
Facultad de Ingeniería |
dc.publisher.department.es_CO.fl_str_mv |
Departamento de Ingeniería Sistemas y Computación |
institution |
Universidad de los Andes |
bitstream.url.fl_str_mv |
https://repositorio.uniandes.edu.co/bitstreams/e6a65321-9c0b-43d1-86de-856e5bf9c2f3/download https://repositorio.uniandes.edu.co/bitstreams/77c91658-45e5-4290-a225-99c4d3a3d16e/download https://repositorio.uniandes.edu.co/bitstreams/5787cec6-21bf-4d55-be94-c5b660977959/download https://repositorio.uniandes.edu.co/bitstreams/30e1fca9-6c9b-48f1-bde4-2a9e407c4ed6/download https://repositorio.uniandes.edu.co/bitstreams/1bbe91e7-4b96-48b5-88dc-1a8793e22864/download https://repositorio.uniandes.edu.co/bitstreams/e4f8e2ad-e27d-49ab-8034-76c59b11a5aa/download https://repositorio.uniandes.edu.co/bitstreams/43dc0be5-8a4d-4e5f-b117-63ee4180d603/download |
bitstream.checksum.fl_str_mv |
5aa5c691a1ffe97abd12c2966efcb8d6 b3919cfeb7a42b8623aae9de2e781a3f f8596647010a0df86a722bd963f2dd5a a820adb077a38efb0f5f3786c882c4ae fade9a2fe47aed168722ed4b0739f310 18614514491c8c2c066e1ec6f2df35c6 4491fe1afb58beaaef41a73cf7ff2e27 |
bitstream.checksumAlgorithm.fl_str_mv |
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_ |
1812133813018427392 |
spelling |
Attribution-NonCommercial-NoDerivatives 4.0 Internacionalhttp://creativecommons.org/licenses/by-nc-nd/4.0/info:eu-repo/semantics/openAccesshttp://purl.org/coar/access_right/c_abf2Montoya Orozco, Germán Adolfoae4b65b7-f1e1-40fd-86e9-aca2d4f5a345600Lozano Garzon, Carlos Andresvirtual::1329-1Villamarín Manrique, Juan Camiloc0765d0c-02c6-40e0-b866-3bc2afc18bec600COMIT - Comunicaciones y Tecnología de Información2022-07-18T21:07:44Z2022-07-18T21:07:44Z2022-07-14http://hdl.handle.net/1992/58909instname:Universidad de los Andesreponame:Repositorio Institucional Sénecarepourl:https://repositorio.uniandes.edu.co/Este documento presenta la construcción de una arquitectura escalable para sistema de monitoreo de dispositivos IoT.En este proyecto se propone y desarrolla exitosamente una arquitectura para el procesamiento y almacenamiento de datos generados por dispositivos de Internet de las Cosas. Esta arquitectura solventa problemas actuales de escalabilidad, rendimiento y concurrencia mediante el uso de prácticas de clusterización de sistemas, bases de datos distribuidas y microservicios. Además, se desarrolló un prototipo funcional que se probó en el contexto de la empresa Telemetría Inteligente SAS, cuyo negocio es la obtención y procesamiento de datos generados por sensores y GPS. Se mejoró la eficiencia comparada con la arquitectura anterior que se maneja en la empresa lo que resulta en un ahorro de recursos. Por otra parte, esta nueva arquitectura permite que la plataforma crezca sin perder calidad.Ingeniero de Sistemas y ComputaciónPregradoxv, 32 páginasapplication/pdfspaUniversidad de los AndesIngeniería de Sistemas y ComputaciónFacultad de IngenieríaDepartamento de Ingeniería Sistemas y ComputaciónArquitectura escalable para sistema de monitoreo de dispositivos IoTTrabajo de grado - Pregradoinfo:eu-repo/semantics/bachelorThesisinfo:eu-repo/semantics/acceptedVersionhttp://purl.org/coar/resource_type/c_7a1fTexthttp://purl.org/redcol/resource_type/TPEscalabilidadRendimientoConcurrenciaProcesamientoIngeniería¿Qué es una base de datos | Oracle Colombia.? https://www.oracle.com/co/database/what-is-database/ (accessed jun. 03, 2022)"Secure and monitor your vehicles with CalAmp's Vehicle Tracking Solutions." https://www.calamp.com/products/vehicle-trackers/ (accessed Jun. 03, 2022)."Reading 17: Concurrency." https://web.mit.edu/6.005/www/fa14/classes/17- concurrency/ (accessed Jun. 03, 2022)"Unique Constraints and Check Constraints - SQL Server | Microsoft Docs." https://docs.microsoft.com/en-us/sql/relational-databases/tables/unique constraints-and-check-constraints?view=sql-server-ver16 (accessed Jun. 03, 2022)."Scalable Definition & Meaning - Merriam-Webster." https://www.merriam webster.com/dictionary/scalable (accessed Jun. 03, 2022)."What is Software Framework | IGI Global." https://www.igi-global.com/dictionary/software-framework/27680 (accessed Jun. 03, 2022)."Primary and Foreign Key Constraints - SQL Server | Microsoft Docs." https://docs.microsoft.com/en-us/sql/relational-databases/tables/primary and-foreign-key-constraints?view=sql-server-ver16#FKeys (accessed Jun. 03, 2022).¿What are Message Brokers? | IBM." https://www.ibm.com/cloud/learn/message-brokers (accessed Jun. 03, 2022)J. Juneau, "Object Relational Mapping and JPA," Introducing Java EE 7, pp. 55-72, 2013, doi: 10.1007/978-1-4302-5849-0_4."Significado de PLUG-IN en el Diccionario Cambridge inglés." https://dictionary.cambridge.org/es/diccionario/ingles/plug-in (accessed jun. 03, 2022)."Primary Keys - IBM Documentation." https://www.ibm.com/docs/en/iodg/11.3?topic=reference-primary-keys (accessed Jun. 03, 2022)."Database Query: Definition & Tools - Video & Lesson Transcript | Study.com." https://study.com/academy/lesson/database-query-definition tools.html (accessed Jun. 03, 2022).¿What is a Server? - Definition & Explanation - Video & Lesson Transcript | Study.com. https://study.com/academy/lesson/what-is-a-server-definition lesson-quiz.html (accessed Jun. 03, 2022"Single thread definición y significado | Diccionario Inglés Collins." https://www.collinsdictionary.com/es/diccionario/ingles/single-thread (accessed Jun. 03, 2022)"Telemetry Systems Engineering." https://web-p-ebscohost com.ezproxy.uniandes.edu.co/ehost/ebookviewer/ebook/ZTAwMHh3d19fNzI 3MjZfX0FO0?sid=a7d003ba-dd7c-47f5-b1b4- 03a941c79193@redis&vid=11&format=EB (accessed Jun. 03, 2022)."The Official YAML Web Site." https://yaml.org/ (accessed Jun. 03, 2022).F. Carden, R. P. Jedlicka, and R. Henry, Telemetry Systems Engineering. Boston: Artech House, Inc, 2002. [Online]. Available: https://ezproxy.uniandes.edu.co/login?url=https://search.ebscohost.com/logi n.aspx?direct=true&db=e000xww&AN=72726&lang=es&site=ehost-liveA. Makris, K. Tserpes, G. Spiliopoulos, D. Zissis, and D. Anagnostopoulos, "MongoDB Vs PostgreSQL: A comparative study on performance aspects," Geoinformatica, vol. 25, no. 2, pp. 243¿268, Apr. 2021, doi: 10.1007/S10707-020-00407-W/FIGURES/12.V. Schmidt and A. Katz, "Speed up time series data ingestion by partitioning tables on Amazon RDS for PostgreSQL | AWS Database Blog," 2021. https://aws.amazon.com/blogs/database/speed-up-time-series-data ingestion-by-partitioning-tables-on-amazon-rds-for-postgresql/ (accessed May 26, 2022).C. Slowik, "Node.js vs Python: comparison, performance, cases | Neoteric," 2019. https://neoteric.eu/blog/node-js-vs-python/ (accessed May 26, 2022)201816898Publicationhttps://scholar.google.es/citations?user=WRJlR-UAAAAJvirtual::1329-10000-0003-2920-6320virtual::1329-1https://scienti.minciencias.gov.co/cvlac/visualizador/generarCurriculoCv.do?cod_rh=0000219541virtual::1329-1144aa5a0-592f-47a4-995b-a440d00b1658virtual::1329-1144aa5a0-592f-47a4-995b-a440d00b1658virtual::1329-1LICENSElicense.txtlicense.txttext/plain; charset=utf-81810https://repositorio.uniandes.edu.co/bitstreams/e6a65321-9c0b-43d1-86de-856e5bf9c2f3/download5aa5c691a1ffe97abd12c2966efcb8d6MD51THUMBNAILArquitectura Escalable para Sistema de Monitoreo de Dispositivos IoT.pdf.jpgArquitectura Escalable para Sistema de Monitoreo de Dispositivos IoT.pdf.jpgIM Thumbnailimage/jpeg9490https://repositorio.uniandes.edu.co/bitstreams/77c91658-45e5-4290-a225-99c4d3a3d16e/downloadb3919cfeb7a42b8623aae9de2e781a3fMD55Formato de autorizacion Juan Camilo Villamarin.pdf.jpgFormato de autorizacion Juan Camilo Villamarin.pdf.jpgIM Thumbnailimage/jpeg17087https://repositorio.uniandes.edu.co/bitstreams/5787cec6-21bf-4d55-be94-c5b660977959/downloadf8596647010a0df86a722bd963f2dd5aMD57ORIGINALArquitectura Escalable para Sistema de Monitoreo de Dispositivos IoT.pdfArquitectura Escalable para Sistema de Monitoreo de Dispositivos IoT.pdfTrabajo de gradoapplication/pdf1812409https://repositorio.uniandes.edu.co/bitstreams/30e1fca9-6c9b-48f1-bde4-2a9e407c4ed6/downloada820adb077a38efb0f5f3786c882c4aeMD52Formato de autorizacion Juan Camilo Villamarin.pdfFormato de autorizacion Juan Camilo Villamarin.pdfHIDEapplication/pdf379612https://repositorio.uniandes.edu.co/bitstreams/1bbe91e7-4b96-48b5-88dc-1a8793e22864/downloadfade9a2fe47aed168722ed4b0739f310MD53TEXTArquitectura Escalable para Sistema de Monitoreo de Dispositivos IoT.pdf.txtArquitectura Escalable para Sistema de Monitoreo de Dispositivos IoT.pdf.txtExtracted texttext/plain45016https://repositorio.uniandes.edu.co/bitstreams/e4f8e2ad-e27d-49ab-8034-76c59b11a5aa/download18614514491c8c2c066e1ec6f2df35c6MD54Formato de autorizacion Juan Camilo Villamarin.pdf.txtFormato de autorizacion Juan Camilo Villamarin.pdf.txtExtracted texttext/plain1163https://repositorio.uniandes.edu.co/bitstreams/43dc0be5-8a4d-4e5f-b117-63ee4180d603/download4491fe1afb58beaaef41a73cf7ff2e27MD561992/58909oai:repositorio.uniandes.edu.co:1992/589092024-03-13 11:56:14.984http://creativecommons.org/licenses/by-nc-nd/4.0/embargohttps://repositorio.uniandes.edu.coRepositorio institucional Sénecaadminrepositorio@uniandes.edu.coWW8sIGVuIG1pIGNhbGlkYWQgZGUgYXV0b3IgZGVsIHRyYWJham8gZGUgdGVzaXMsIG1vbm9ncmFmw61hIG8gdHJhYmFqbyBkZSBncmFkbywgaGFnbyBlbnRyZWdhIGRlbCBlamVtcGxhciByZXNwZWN0aXZvIHkgZGUgc3VzIGFuZXhvcyBkZSBzZXIgZWwgY2FzbywgZW4gZm9ybWF0byBkaWdpdGFsIHkvbyBlbGVjdHLDs25pY28geSBhdXRvcml6byBhIGxhIFVuaXZlcnNpZGFkIGRlIGxvcyBBbmRlcyBwYXJhIHF1ZSByZWFsaWNlIGxhIHB1YmxpY2FjacOzbiBlbiBlbCBTaXN0ZW1hIGRlIEJpYmxpb3RlY2FzIG8gZW4gY3VhbHF1aWVyIG90cm8gc2lzdGVtYSBvIGJhc2UgZGUgZGF0b3MgcHJvcGlvIG8gYWplbm8gYSBsYSBVbml2ZXJzaWRhZCB5IHBhcmEgcXVlIGVuIGxvcyB0w6lybWlub3MgZXN0YWJsZWNpZG9zIGVuIGxhIExleSAyMyBkZSAxOTgyLCBMZXkgNDQgZGUgMTk5MywgRGVjaXNpw7NuIEFuZGluYSAzNTEgZGUgMTk5MywgRGVjcmV0byA0NjAgZGUgMTk5NSB5IGRlbcOhcyBub3JtYXMgZ2VuZXJhbGVzIHNvYnJlIGxhIG1hdGVyaWEsIHV0aWxpY2UgZW4gdG9kYXMgc3VzIGZvcm1hcywgbG9zIGRlcmVjaG9zIHBhdHJpbW9uaWFsZXMgZGUgcmVwcm9kdWNjacOzbiwgY29tdW5pY2FjacOzbiBww7pibGljYSwgdHJhbnNmb3JtYWNpw7NuIHkgZGlzdHJpYnVjacOzbiAoYWxxdWlsZXIsIHByw6lzdGFtbyBww7pibGljbyBlIGltcG9ydGFjacOzbikgcXVlIG1lIGNvcnJlc3BvbmRlbiBjb21vIGNyZWFkb3IgZGUgbGEgb2JyYSBvYmpldG8gZGVsIHByZXNlbnRlIGRvY3VtZW50by4gIAoKCkxhIHByZXNlbnRlIGF1dG9yaXphY2nDs24gc2UgZW1pdGUgZW4gY2FsaWRhZCBkZSBhdXRvciBkZSBsYSBvYnJhIG9iamV0byBkZWwgcHJlc2VudGUgZG9jdW1lbnRvIHkgbm8gY29ycmVzcG9uZGUgYSBjZXNpw7NuIGRlIGRlcmVjaG9zLCBzaW5vIGEgbGEgYXV0b3JpemFjacOzbiBkZSB1c28gYWNhZMOpbWljbyBkZSBjb25mb3JtaWRhZCBjb24gbG8gYW50ZXJpb3JtZW50ZSBzZcOxYWxhZG8uIExhIHByZXNlbnRlIGF1dG9yaXphY2nDs24gc2UgaGFjZSBleHRlbnNpdmEgbm8gc29sbyBhIGxhcyBmYWN1bHRhZGVzIHkgZGVyZWNob3MgZGUgdXNvIHNvYnJlIGxhIG9icmEgZW4gZm9ybWF0byBvIHNvcG9ydGUgbWF0ZXJpYWwsIHNpbm8gdGFtYmnDqW4gcGFyYSBmb3JtYXRvIGVsZWN0csOzbmljbywgeSBlbiBnZW5lcmFsIHBhcmEgY3VhbHF1aWVyIGZvcm1hdG8gY29ub2NpZG8gbyBwb3IgY29ub2Nlci4gCgoKRWwgYXV0b3IsIG1hbmlmaWVzdGEgcXVlIGxhIG9icmEgb2JqZXRvIGRlIGxhIHByZXNlbnRlIGF1dG9yaXphY2nDs24gZXMgb3JpZ2luYWwgeSBsYSByZWFsaXrDsyBzaW4gdmlvbGFyIG8gdXN1cnBhciBkZXJlY2hvcyBkZSBhdXRvciBkZSB0ZXJjZXJvcywgcG9yIGxvIHRhbnRvLCBsYSBvYnJhIGVzIGRlIHN1IGV4Y2x1c2l2YSBhdXRvcsOtYSB5IHRpZW5lIGxhIHRpdHVsYXJpZGFkIHNvYnJlIGxhIG1pc21hLiAKCgpFbiBjYXNvIGRlIHByZXNlbnRhcnNlIGN1YWxxdWllciByZWNsYW1hY2nDs24gbyBhY2Npw7NuIHBvciBwYXJ0ZSBkZSB1biB0ZXJjZXJvIGVuIGN1YW50byBhIGxvcyBkZXJlY2hvcyBkZSBhdXRvciBzb2JyZSBsYSBvYnJhIGVuIGN1ZXN0acOzbiwgZWwgYXV0b3IgYXN1bWlyw6EgdG9kYSBsYSByZXNwb25zYWJpbGlkYWQsIHkgc2FsZHLDoSBkZSBkZWZlbnNhIGRlIGxvcyBkZXJlY2hvcyBhcXXDrSBhdXRvcml6YWRvcywgcGFyYSB0b2RvcyBsb3MgZWZlY3RvcyBsYSBVbml2ZXJzaWRhZCBhY3TDumEgY29tbyB1biB0ZXJjZXJvIGRlIGJ1ZW5hIGZlLiAKCg== |