Implementación de las librerías en lenguaje V de los módulos de i/o digitales, adc, pwm, uart, lcd y display de 7 segmentos, para los microcontroladores Arduino Uno y Mega en el marco del proyecto Aixt
El proyecto AIXT está orientado a la migración de lenguajes de una forma más fácil para hacer la programación. El proyecto se estableció, para incursionar al avance del mercado tecnológico donde existen varios lenguajes de programación, que requieren la compilación de los distintos lenguajes de prog...
- Autores:
-
Buitrago Gómez , Oscar Mauricio
Becerra , Andrés Julián
- Tipo de recurso:
- Trabajo de grado de pregrado
- Fecha de publicación:
- 2025
- Institución:
- Universidad Distrital Francisco José de Caldas
- Repositorio:
- RIUD: repositorio U. Distrital
- Idioma:
- spa
- OAI Identifier:
- oai:repository.udistrital.edu.co:11349/93127
- Acceso en línea:
- http://hdl.handle.net/11349/93127
- Palabra clave:
- Arduino
Shields
Lenguaje V
Lenguaje C
Transcompilación
Proyecto Aixt
Ingeniería Eléctrica por Ciclos Propedéuticos -- Tesis y Disertaciones Académicas
Administración de bases de datos
Diseño de bases de datos
Bases de datos relacionadas
Base de datos
Arduino
Shields
Language V
Language C
Transcompilation
Aixt Project
- Rights
- License
- Abierto (Texto Completo)
id |
UDISTRITA2_914852af1f429b196b3579fc714683ba |
---|---|
oai_identifier_str |
oai:repository.udistrital.edu.co:11349/93127 |
network_acronym_str |
UDISTRITA2 |
network_name_str |
RIUD: repositorio U. Distrital |
repository_id_str |
|
dc.title.none.fl_str_mv |
Implementación de las librerías en lenguaje V de los módulos de i/o digitales, adc, pwm, uart, lcd y display de 7 segmentos, para los microcontroladores Arduino Uno y Mega en el marco del proyecto Aixt |
dc.title.titleenglish.none.fl_str_mv |
Implementation of the V language libraries of the digital i/o modules, adc, pwm, uart, lcd and 7-segment display, for the Arduino Uno and Mega microcontrollers within the framework of the Aixt project |
title |
Implementación de las librerías en lenguaje V de los módulos de i/o digitales, adc, pwm, uart, lcd y display de 7 segmentos, para los microcontroladores Arduino Uno y Mega en el marco del proyecto Aixt |
spellingShingle |
Implementación de las librerías en lenguaje V de los módulos de i/o digitales, adc, pwm, uart, lcd y display de 7 segmentos, para los microcontroladores Arduino Uno y Mega en el marco del proyecto Aixt Arduino Shields Lenguaje V Lenguaje C Transcompilación Proyecto Aixt Ingeniería Eléctrica por Ciclos Propedéuticos -- Tesis y Disertaciones Académicas Administración de bases de datos Diseño de bases de datos Bases de datos relacionadas Base de datos Arduino Shields Language V Language C Transcompilation Aixt Project |
title_short |
Implementación de las librerías en lenguaje V de los módulos de i/o digitales, adc, pwm, uart, lcd y display de 7 segmentos, para los microcontroladores Arduino Uno y Mega en el marco del proyecto Aixt |
title_full |
Implementación de las librerías en lenguaje V de los módulos de i/o digitales, adc, pwm, uart, lcd y display de 7 segmentos, para los microcontroladores Arduino Uno y Mega en el marco del proyecto Aixt |
title_fullStr |
Implementación de las librerías en lenguaje V de los módulos de i/o digitales, adc, pwm, uart, lcd y display de 7 segmentos, para los microcontroladores Arduino Uno y Mega en el marco del proyecto Aixt |
title_full_unstemmed |
Implementación de las librerías en lenguaje V de los módulos de i/o digitales, adc, pwm, uart, lcd y display de 7 segmentos, para los microcontroladores Arduino Uno y Mega en el marco del proyecto Aixt |
title_sort |
Implementación de las librerías en lenguaje V de los módulos de i/o digitales, adc, pwm, uart, lcd y display de 7 segmentos, para los microcontroladores Arduino Uno y Mega en el marco del proyecto Aixt |
dc.creator.fl_str_mv |
Buitrago Gómez , Oscar Mauricio Becerra , Andrés Julián |
dc.contributor.advisor.none.fl_str_mv |
Martínez Santa , Fernando |
dc.contributor.author.none.fl_str_mv |
Buitrago Gómez , Oscar Mauricio Becerra , Andrés Julián |
dc.subject.none.fl_str_mv |
Arduino Shields Lenguaje V Lenguaje C Transcompilación Proyecto Aixt |
topic |
Arduino Shields Lenguaje V Lenguaje C Transcompilación Proyecto Aixt Ingeniería Eléctrica por Ciclos Propedéuticos -- Tesis y Disertaciones Académicas Administración de bases de datos Diseño de bases de datos Bases de datos relacionadas Base de datos Arduino Shields Language V Language C Transcompilation Aixt Project |
dc.subject.lemb.none.fl_str_mv |
Ingeniería Eléctrica por Ciclos Propedéuticos -- Tesis y Disertaciones Académicas Administración de bases de datos Diseño de bases de datos Bases de datos relacionadas Base de datos |
dc.subject.keyword.none.fl_str_mv |
Arduino Shields Language V Language C Transcompilation Aixt Project |
description |
El proyecto AIXT está orientado a la migración de lenguajes de una forma más fácil para hacer la programación. El proyecto se estableció, para incursionar al avance del mercado tecnológico donde existen varios lenguajes de programación, que requieren la compilación de los distintos lenguajes de programación en toda clase de microcontroladores. Para el caso aplica realizar la compilación en lenguaje V. [1] El proyecto AIXT inició en el año 2022 basado en SOKAE, creando conexiones y lazos entre la estructura de programación, Arduino y microphyton “La estructura de programación está compuesta por tres componentes principales, Lenguaje de programación AIXT, basado en el lenguaje de programación V, Un lenguaje de programación definido como RUST a C y una API” [2]. Considerando que el lenguaje de programación RUST, es de alta complejidad en su estructura se facilita la programación en lenguaje V [3]. Para el proyecto de pasantía propuesto, se plantearon los microcontroladores Arduino Uno ATMega 328P y Arduino ATMega 2560 junto a los shields display lcd y display de 7 segmentos de 4 dígitos, que formaran parte del proyecto AIXT con el objetivo de buscar el desarrollo de las funciones y características dentro de una API, la cual permita la traducción efectiva del lenguaje V a C. |
publishDate |
2025 |
dc.date.accessioned.none.fl_str_mv |
2025-03-03T17:26:44Z |
dc.date.available.none.fl_str_mv |
2025-03-03T17:26:44Z |
dc.date.created.none.fl_str_mv |
2025-02-21 |
dc.type.none.fl_str_mv |
bachelorThesis |
dc.type.degree.none.fl_str_mv |
Pasantía |
dc.type.driver.none.fl_str_mv |
info:eu-repo/semantics/bachelorThesis |
dc.type.coar.none.fl_str_mv |
http://purl.org/coar/resource_type/c_7a1f |
format |
http://purl.org/coar/resource_type/c_7a1f |
dc.identifier.uri.none.fl_str_mv |
http://hdl.handle.net/11349/93127 |
url |
http://hdl.handle.net/11349/93127 |
dc.language.iso.none.fl_str_mv |
spa |
language |
spa |
dc.relation.references.none.fl_str_mv |
[1] S. O. R. F. H. S. Fernando Martínez Santa, «Microcontrollers Programming Framework based on a V-like programming Language,» (IJACSA) International Journal of Advanced Computer Science and Aplications, vol. 13, nº 12, p. 8, 2022. [2] F. Martínez Santa, «Aixt,» 2022. [En línea]. Available: https://gitlab.com/fermarsan/aixt-project. [Último acceso: 20 Febrero 2025]. [3] F. Martínez Santa y S. Orjuela Rivera, «Rust-like Programming Language for Low- resource,» Research India Publications, vol. 17, nº ISSN 0973-5321, pp. 599-614, 2022. [4] ElectronicsHub, «Arduino uno» s.f. [En línea]. Available: https://www.electronicshub.org/arduino-uno-pinout/. [Último acceso: 21 de febrero 2025]. [5] Proyecto Arduino, «Arduino Mega 2560 » s.f. [En línea]. Available: https://proyectoarduino.com/arduino-mega-2560/. [Último acceso: 21 de febrero 2025]. [6] Prometec.net, «LCD KeyPad Shield» 2023. [En línea]. Available: https://www.prometec.net/lcd-keypad-shield/. [Último acceso: 21 de febrero 2025]. [7] Nootropic, «Digit Shield» 2024. [En línea]. Available: https://nootropicdesign.com/digit-shield/ [Último acceso: 21 de febrero 2025]. |
dc.rights.coar.fl_str_mv |
http://purl.org/coar/access_right/c_abf2 |
dc.rights.acceso.none.fl_str_mv |
Abierto (Texto Completo) |
rights_invalid_str_mv |
Abierto (Texto Completo) http://purl.org/coar/access_right/c_abf2 |
dc.format.mimetype.none.fl_str_mv |
pdf |
dc.publisher.none.fl_str_mv |
Universidad Distrital Francisco José de Caldas |
publisher.none.fl_str_mv |
Universidad Distrital Francisco José de Caldas |
institution |
Universidad Distrital Francisco José de Caldas |
bitstream.url.fl_str_mv |
https://repository.udistrital.edu.co/bitstreams/1d45d3ad-8b7a-4348-ae0a-8dfbe218c366/download https://repository.udistrital.edu.co/bitstreams/1b859e37-7a5b-45d2-a477-2d31e01ea041/download https://repository.udistrital.edu.co/bitstreams/0a519eba-6043-4bda-aa9e-2b3bd027cdd4/download https://repository.udistrital.edu.co/bitstreams/eea21e90-c3c4-4441-85a3-230605d210db/download https://repository.udistrital.edu.co/bitstreams/77ec8315-ea2a-4269-926a-9961be4c0d5e/download |
bitstream.checksum.fl_str_mv |
892460381b8426417fd3b5e8f762db8b eff0ce11fa4b9afddfef218a7be653cb 997daf6c648c962d566d7b082dac908d e71672c4281db459c0ee11818c1f7dc3 6dd14cc65c699d7902c23759a34fa124 |
bitstream.checksumAlgorithm.fl_str_mv |
MD5 MD5 MD5 MD5 MD5 |
repository.name.fl_str_mv |
Repositorio Universidad Distrital |
repository.mail.fl_str_mv |
repositorio@udistrital.edu.co |
_version_ |
1837006992244211712 |
spelling |
Martínez Santa , FernandoBuitrago Gómez , Oscar MauricioBecerra , Andrés Julián2025-03-03T17:26:44Z2025-03-03T17:26:44Z2025-02-21http://hdl.handle.net/11349/93127El proyecto AIXT está orientado a la migración de lenguajes de una forma más fácil para hacer la programación. El proyecto se estableció, para incursionar al avance del mercado tecnológico donde existen varios lenguajes de programación, que requieren la compilación de los distintos lenguajes de programación en toda clase de microcontroladores. Para el caso aplica realizar la compilación en lenguaje V. [1] El proyecto AIXT inició en el año 2022 basado en SOKAE, creando conexiones y lazos entre la estructura de programación, Arduino y microphyton “La estructura de programación está compuesta por tres componentes principales, Lenguaje de programación AIXT, basado en el lenguaje de programación V, Un lenguaje de programación definido como RUST a C y una API” [2]. Considerando que el lenguaje de programación RUST, es de alta complejidad en su estructura se facilita la programación en lenguaje V [3]. Para el proyecto de pasantía propuesto, se plantearon los microcontroladores Arduino Uno ATMega 328P y Arduino ATMega 2560 junto a los shields display lcd y display de 7 segmentos de 4 dígitos, que formaran parte del proyecto AIXT con el objetivo de buscar el desarrollo de las funciones y características dentro de una API, la cual permita la traducción efectiva del lenguaje V a C.The AIXT project is aimed at migrating languages in an easier way to do programming. The project was established to venture into the advancement of the technological market where there are several programming languages, which require the compilation of the different programming languages in all kinds of microcontrollers. In this case, it is necessary to compile in V. [1] The AIXT project started in 2022 based on SOKAE, creating connections and ties between the programming structure, Arduino and microphyton "The programming structure is composed of three main components, AIXT programming language, based on the V programming language, a programming language defined as RUST to C and an API" [2]. Considering that the RUST programming language is highly complex in its structure, programming in V language is facilitated [3]. For the proposed internship project, the Arduino Uno ATMega 328P and Arduino ATMega 2560 microcontrollers were proposed together with the LCD display shields and 4-digit 7-segment display, which will be part of the AIXT project with the aim of seeking the development of functions and features within an API, which allows the effective translation of the V to C language.pdfspaUniversidad Distrital Francisco José de CaldasArduinoShieldsLenguaje VLenguaje CTranscompilaciónProyecto AixtIngeniería Eléctrica por Ciclos Propedéuticos -- Tesis y Disertaciones AcadémicasAdministración de bases de datosDiseño de bases de datosBases de datos relacionadasBase de datosArduinoShieldsLanguage VLanguage CTranscompilationAixt ProjectImplementación de las librerías en lenguaje V de los módulos de i/o digitales, adc, pwm, uart, lcd y display de 7 segmentos, para los microcontroladores Arduino Uno y Mega en el marco del proyecto AixtImplementation of the V language libraries of the digital i/o modules, adc, pwm, uart, lcd and 7-segment display, for the Arduino Uno and Mega microcontrollers within the framework of the Aixt projectbachelorThesisPasantíainfo:eu-repo/semantics/bachelorThesishttp://purl.org/coar/resource_type/c_7a1fAbierto (Texto Completo)http://purl.org/coar/access_right/c_abf2[1] S. O. R. F. H. S. Fernando Martínez Santa, «Microcontrollers Programming Framework based on a V-like programming Language,» (IJACSA) International Journal of Advanced Computer Science and Aplications, vol. 13, nº 12, p. 8, 2022.[2] F. Martínez Santa, «Aixt,» 2022. [En línea]. Available: https://gitlab.com/fermarsan/aixt-project. [Último acceso: 20 Febrero 2025].[3] F. Martínez Santa y S. Orjuela Rivera, «Rust-like Programming Language for Low- resource,» Research India Publications, vol. 17, nº ISSN 0973-5321, pp. 599-614, 2022.[4] ElectronicsHub, «Arduino uno» s.f. [En línea]. Available: https://www.electronicshub.org/arduino-uno-pinout/. [Último acceso: 21 de febrero 2025].[5] Proyecto Arduino, «Arduino Mega 2560 » s.f. [En línea]. Available: https://proyectoarduino.com/arduino-mega-2560/. [Último acceso: 21 de febrero 2025].[6] Prometec.net, «LCD KeyPad Shield» 2023. [En línea]. Available: https://www.prometec.net/lcd-keypad-shield/. [Último acceso: 21 de febrero 2025].[7] Nootropic, «Digit Shield» 2024. [En línea]. Available: https://nootropicdesign.com/digit-shield/ [Último acceso: 21 de febrero 2025].ORIGINALBuitragoGomezOscarMauricio2025.pdfBuitragoGomezOscarMauricio2025.pdfapplication/pdf4188177https://repository.udistrital.edu.co/bitstreams/1d45d3ad-8b7a-4348-ae0a-8dfbe218c366/download892460381b8426417fd3b5e8f762db8bMD51Licencia de uso y publicación.pdfLicencia de uso y publicación.pdfapplication/pdf209477https://repository.udistrital.edu.co/bitstreams/1b859e37-7a5b-45d2-a477-2d31e01ea041/downloadeff0ce11fa4b9afddfef218a7be653cbMD52LICENSElicense.txtlicense.txttext/plain; charset=utf-87167https://repository.udistrital.edu.co/bitstreams/0a519eba-6043-4bda-aa9e-2b3bd027cdd4/download997daf6c648c962d566d7b082dac908dMD53THUMBNAILBuitragoGomezOscarMauricio2025.pdf.jpgBuitragoGomezOscarMauricio2025.pdf.jpgIM Thumbnailimage/jpeg7527https://repository.udistrital.edu.co/bitstreams/eea21e90-c3c4-4441-85a3-230605d210db/downloade71672c4281db459c0ee11818c1f7dc3MD54Licencia de uso y publicación.pdf.jpgLicencia de uso y publicación.pdf.jpgIM Thumbnailimage/jpeg9690https://repository.udistrital.edu.co/bitstreams/77ec8315-ea2a-4269-926a-9961be4c0d5e/download6dd14cc65c699d7902c23759a34fa124MD5511349/93127oai:repository.udistrital.edu.co:11349/931272025-03-12 13:40:25.88open.accesshttps://repository.udistrital.edu.coRepositorio Universidad Distritalrepositorio@udistrital.edu.coTElDRU5DSUEgWSBBVVRPUklaQUNJw5NOIEVTUEVDSUFMIFBBUkEgUFVCTElDQVIgWSBQRVJNSVRJUiBMQSBDT05TVUxUQSBZIFVTTyBERSBDT05URU5JRE9TIEVOIEVMIFJFUE9TSVRPUklPIElOU1RJVFVDSU9OQUwgREUgTEEgVU5JVkVSU0lEQUQgRElTVFJJVEFMCgpUw6lybWlub3MgeSBjb25kaWNpb25lcyBkZSB1c28gcGFyYSBwdWJsaWNhY2nDs24gZGUgb2JyYXMgZW4gZWwgUmVwb3NpdG9yaW8gSW5zdGl0dWNpb25hbCBkZSBsYSBVbml2ZXJzaWRhZCBEaXN0cml0YWwgRnJhbmNpc2NvIEpvc8OpIGRlIENhbGRhcyAoUklVRCkKCkNvbW8gdGl0dWxhcihlcykgZGVsKG9zKSBkZXJlY2hvKHMpIGRlIGF1dG9yLCBjb25maWVybyAoZXJpbW9zKSBhIGxhIFVuaXZlcnNpZGFkIERpc3RyaXRhbCBGcmFuY2lzY28gSm9zw6kgZGUgQ2FsZGFzIChlbiBhZGVsYW50ZSwgTEEgVU5JVkVSU0lEQUQpIHVuYSBsaWNlbmNpYSBwYXJhIHVzbyBubyBleGNsdXNpdmEsIGxpbWl0YWRhIHkgZ3JhdHVpdGEgc29icmUgbGEgb2JyYSBxdWUgaW50ZWdyYXLDoSBlbCBSZXBvc2l0b3JpbyBJbnN0aXR1Y2lvbmFsIChlbiBhZGVsYW50ZSwgUklVRCksIGRlIGFjdWVyZG8gYSBsYXMgc2lndWllbnRlcyByZWdsYXMsIGxhcyBjdWFsZXMgZGVjbGFybyAoYW1vcykgY29ub2NlciB5IGFjZXB0YXI6CgphKQlFc3RhcsOhIHZpZ2VudGUgYSBwYXJ0aXIgZGUgbGEgZmVjaGEgZW4gcXVlIHNlIGluY2x1eWEgZW4gZWwgUklVRCB5IGhhc3RhIHBvciB1biBwbGF6byBkZSBkaWV6ICgxMCkgQcOxb3MsIHByb3Jyb2dhYmxlIGluZGVmaW5pZGFtZW50ZSBwb3IgZWwgdGllbXBvIHF1ZSBkdXJlIGVsIGRlcmVjaG8gUGF0cmltb25pYWwgZGVsIGF1dG9yOyBsYSBjdWFsIHBvZHLDoSBkYXJzZSBwb3IgdGVybWluYWRhIHByZXZpYSBzb2xpY2l0dWQgYSBMQSBVTklWRVJTSURBRCBwb3IgZXNjcml0byBjb24gdW5hIGFudGVsYWNpw7NuIGRlIGRvcyAoMikgbWVzZXMgYW50ZXMgZGVsIHZlbmNpbWllbnRvIGRlbCBwbGF6byBpbmljaWFsIG8gZWwgZGUgc3UocykgcHLDs3Jyb2dhKHMpLgoKYikJTEEgVU5JVkVSU0lEQUQgcG9kcsOhIHB1YmxpY2FyIGxhIG9icmEgZW4gbGFzIGRpc3RpbnRhcyB2ZXJzaW9uZXMgcmVxdWVyaWRhcyBwb3IgZWwgUklVRCAoZGlnaXRhbCwgaW1wcmVzbywgZWxlY3Ryw7NuaWNvIHUgb3RybyBtZWRpbyBjb25vY2lkbyBvIHBvciBjb25vY2VyKSBMQSBVTklWRVJTSURBRCBubyBzZXLDoSByZXNwb25zYWJsZSBlbiBlbCBldmVudG8gcXVlIGVsIGRvY3VtZW50byBhcGFyZXpjYSByZWZlcmVuY2lhZG8gZW4gbW90b3JlcyBkZSBiw7pzcXVlZGEgbyByZXBvc2l0b3Jpb3MgZGlmZXJlbnRlcyBhbCBSSVVELCB1bmEgdmV6IGVsKG9zKSBhdXRvcihlcykgc29saWNpdGVuIHN1IGVsaW1pbmFjacOzbiBkZWwgUklVRCwgZGFkbyBxdWUgbGEgbWlzbWEgc2Vyw6EgcHVibGljYWRhIGVuIEludGVybmV0LgoKYykJTGEgYXV0b3JpemFjacOzbiBzZSBoYWNlIGEgdMOtdHVsbyBncmF0dWl0bywgcG9yIGxvIHRhbnRvLCBsb3MgYXV0b3JlcyByZW51bmNpYW4gYSByZWNpYmlyIGJlbmVmaWNpbyBhbGd1bm8gcG9yIGxhIHB1YmxpY2FjacOzbiwgZGlzdHJpYnVjacOzbiwgY29tdW5pY2FjacOzbiBww7pibGljYSB5IGN1YWxxdWllciBvdHJvIHVzbyBxdWUgc2UgaGFnYSBlbiBsb3MgdMOpcm1pbm9zIGRlIGxhIHByZXNlbnRlIGxpY2VuY2lhIHkgZGUgbGEgbGljZW5jaWEgZGUgdXNvIGNvbiBxdWUgc2UgcHVibGljYSAoQ3JlYXRpdmUgQ29tbW9ucykuCgpkKQlMb3MgY29udGVuaWRvcyBwdWJsaWNhZG9zIGVuIGVsIFJJVUQgc29uIG9icmEocykgb3JpZ2luYWwoZXMpIHNvYnJlIGxhIGN1YWwoZXMpIGVsKG9zKSBhdXRvcihlcykgY29tbyB0aXR1bGFyZXMgZGUgbG9zIGRlcmVjaG9zIGRlIGF1dG9yLCBhc3VtZW4gdG90YWwgcmVzcG9uc2FiaWxpZGFkIHBvciBlbCBjb250ZW5pZG8gZGUgc3Ugb2JyYSBhbnRlIExBIFVOSVZFUlNJREFEIHkgYW50ZSB0ZXJjZXJvcy4gRW4gdG9kbyBjYXNvIExBIFVOSVZFUlNJREFEIHNlIGNvbXByb21ldGUgYSBpbmRpY2FyIHNpZW1wcmUgbGEgYXV0b3LDrWEgaW5jbHV5ZW5kbyBlbCBub21icmUgZGVsIGF1dG9yIHkgbGEgZmVjaGEgZGUgcHVibGljYWNpw7NuLgoKZSkJTEEgVU5JVkVSU0lEQUQgcG9kcsOhIGluY2x1aXIgbGEgb2JyYSBlbiBsb3Mgw61uZGljZXMgeSBidXNjYWRvcmVzIHF1ZSBlc3RpbWVuIG5lY2VzYXJpb3MgcGFyYSBtYXhpbWl6YXIgbGEgdmlzaWJpbGlkYWQgZWwgdXNvIHkgZWwgaW1wYWN0byBkZSBsYSBwcm9kdWNjacOzbiBjaWVudMOtZmljYSwgYXJ0w61zdGljYSB5IGFjYWTDqW1pY2EgZW4gbGEgY29tdW5pZGFkIGxvY2FsLCBuYWNpb25hbCBvIGludGVybmFjaW9uYWwuCgoKZikJTEEgVU5JVkVSU0lEQUQgcG9kcsOhIGNvbnZlcnRpciBsYSBvYnJhIGEgY3VhbHF1aWVyIG1lZGlvIG8gZm9ybWF0byBjb24gZWwgZmluIGRlIHN1IHByZXNlcnZhY2nDs24gZW4gZWwgdGllbXBvIHF1ZSBsYSBwcmVzZW50ZSBsaWNlbmNpYSB5IGxhIGRlIHN1cyBwcsOzcnJvZ2FzLgoKCkNvbiBiYXNlIGVuIGxvIGFudGVyaW9yIGF1dG9yaXpvKGFtb3MpLCBhIGZhdm9yIGRlbCBSSVVEIHkgZGUgc3VzIHVzdWFyaW9zLCBsYSBwdWJsaWNhY2nDs24geSBjb25zdWx0YSBkZSBsYSBzaWd1aWVudGUgb2JyYToKClRpdHVsbwoKQXV0b3IgICAgICAgQXBlbGxpZG9zICAgICAgICAgTm9tYnJlcwoKMQoKMgoKMwoKCmcpCUF1dG9yaXpvKGFtb3MpLCBxdWUgbGEgb2JyYSBzZWEgcHVlc3RhIGEgZGlzcG9zaWNpw7NuIGRlbCBww7pibGljbyBlbiBsb3MgdMOpcm1pbm9zIGVzdGFibGVjaWRvcyBlbiBsb3MgbGl0ZXJhbGVzIGFudGVyaW9yZXMsIGJham8gbG9zIGzDrW1pdGVzIGRlZmluaWRvcyBwb3IgTEEgVU5JVkVSU0lEQUQsIGVuIGxhcyDigJxDb25kaWNpb25lcyBkZSB1c28gZGUgZXN0cmljdG8gY3VtcGxpbWllbnRv4oCdIGRlIGxvcyByZWN1cnNvcyBwdWJsaWNhZG9zIGVuIGVsIFJJVUQsIGN1eW8gdGV4dG8gY29tcGxldG8gc2UgcHVlZGUgY29uc3VsdGFyIGVuIGh0dHA6Ly9yZXBvc2l0b3J5LnVkaXN0cml0YWwuZWR1LmNvLwoKaCkJQ29ub3pjbyhjZW1vcykgeSBhY2VwdG8oYW1vcykgcXVlIG90b3JnbyhhbW9zKSB1bmEgbGljZW5jaWEgZXNwZWNpYWwgcGFyYSBwdWJsaWNhY2nDs24gZGUgb2JyYXMgZW4gZWwgUmVwb3NpdG9yaW8gSW5zdGl0dWNpb25hbCBkZSBsYSBVbml2ZXJzaWRhZCBEaXN0cml0YWwgRnJhbmNpc2NvIEpvc8OpIGRlIENhbGRhcywgbGljZW5jaWEgICBkZSBsYSBjdWFsIGhlIChoZW1vcykgb2J0ZW5pZG8gdW5hIGNvcGlhLgoKaSkJTWFuaWZpZXN0byhhbW9zKSBtaSAobnVlc3RybykgdG90YWwgYWN1ZXJkbyBjb24gbGFzIGNvbmRpY2lvbmVzIGRlIHVzbyB5IHB1YmxpY2FjacOzbiBlbiBlbCBSZXBvc2l0b3JpbyBJbnN0aXR1Y2lvbmFsIGRlIGxhIFVuaXZlcnNpZGFkIERpc3RyaXRhbCBGcmFuY2lzY28gSm9zw6kgZGUgQ2FsZGFzIHF1ZSBzZSBkZXNjcmliZW4geSBleHBsaWNhbiBlbiBlbCBwcmVzZW50ZSBkb2N1bWVudG8uCgpqKQlDb25vemNvKGNlbW9zKSBsYSBub3JtYXRpdmlkYWQgaW50ZXJuYSBkZSAgTEEgVU5JVkVSU0lEQUQ7IGVuIGNvbmNyZXRvLCBlbCBBY3VlcmRvIDAwNCBkZSAyMDEyIGRlbCBDU1UsIEFjdWVyZG8gMDIzIGRlIDIwMTIgZGVsIENTVSBzb2JyZSBQb2zDrXRpY2EgRWRpdG9yaWFsLCBBY3VlcmRvIDAyNiAgZGVsIDMxIGRlIGp1bGlvIGRlIDIwMTIgc29icmUgZWwgcHJvY2VkaW1pZW50byBwYXJhIGxhIHB1YmxpY2FjacOzbiBkZSB0ZXNpcyBkZSBwb3N0Z3JhZG8gZGUgbG9zIGVzdHVkaWFudGVzIGRlIGxhIFVuaXZlcnNpZGFkIERpc3RyaXRhbCBGcmFuY2lzY28gSm9zw6kgZGUgQ2FsZGFzLCAgQWN1ZXJkbyAwMzAgZGVsIDAzIGRlIGRpY2llbWJyZSBkZSAyMDEzIHBvciBtZWRpbyBkZWwgY3VhbCBzZSBjcmVhIGVsIFJlcG9zaXRvcmlvIEluc3RpdHVjaW9uYWwgZGUgbGEgVW5pdmVyc2lkYWQgRGlzdHJpdGFsIEZyYW5jaXNjbyBKb3PDqSBkZSBDYWxkYXMsIEFjdWVyZG8gMDM4IGRlIDIwMTUgMjAxNSDigJxwb3IgZWwgY3VhbCBzZSBtb2RpZmljYSBlbCBBY3VlcmRvIDAzMSBkZSAyMDE0IGRlIDIwMTQgcXVlIHJlZ2xhbWVudGEgZWwgdHJhYmFqbyBkZSBncmFkbyBwYXJhIGxvcyBlc3R1ZGlhbnRlcyBkZSBwcmVncmFkbyBkZSBsYSBVbml2ZXJzaWRhZCBEaXN0cml0YWwgRnJhbmNpc2NvIEpvc8OpIGRlIENhbGRhcyB5IHNlIGRpY3RhbiBvdHJhcyBkaXJlY3RyaWNlc+KAnSB5IGxhcyBkZW3DoXMgbm9ybWFzIGNvbmNvcmRhbnRlIHkgY29tcGxlbWVudGFyaWFzIHF1ZSByaWdlbiBhbCByZXNwZWN0bywgZXNwZWNpYWxtZW50ZSBsYSBsZXkgMjMgZGUgMTk4MiwgbGEgbGV5IDQ0IGRlIDE5OTMgeSBsYSBkZWNpc2nDs24gQW5kaW5hIDM1MSBkZSAxOTkzLiBFc3RvcyBkb2N1bWVudG9zIHBvZHLDoW4gc2VyIGNvbnN1bHRhZG9zIHkgZGVzY2FyZ2Fkb3MgZW4gZWwgcG9ydGFsIHdlYiBkZSBsYSBiaWJsaW90ZWNhIGh0dHA6Ly9zaXN0ZW1hZGViaWJsaW90ZWNhcy51ZGlzdHJpdGFsLmVkdS5jby8KCmspCUFjZXB0byhhbW9zKSBxdWUgTEEgVU5JVkVSU0lEQUQgbm8gc2UgcmVzcG9uc2FiaWxpemEgcG9yIGxhcyBpbmZyYWNjaW9uZXMgYSBsYSBwcm9waWVkYWQgaW50ZWxlY3R1YWwgbyBEZXJlY2hvcyBkZSBBdXRvciBjYXVzYWRhcyBwb3IgbG9zIHRpdHVsYXJlcyBkZSBsYSBwcmVzZW50ZSBMaWNlbmNpYSB5IGRlY2xhcmFtb3MgcXVlIG1hbnRlbmRyw6kgKGVtb3MpIGluZGVtbmUgYSBMQSBVTklWRVJTSURBRCBwb3IgbGFzIHJlY2xhbWFjaW9uZXMgbGVnYWxlcyBkZSBjdWFscXVpZXIgdGlwbyBxdWUgbGxlZ2FyZW4gYSBwcmVzZW50YXJzZSBwb3IgdmlvbGFjacOzbiBkZSBkZXJlY2hvcyBhIGxhIHByb3BpZWRhZCBpbnRlbGVjdHVhbCBvIGRlIEF1dG9yIHJlbGFjaW9uYWRvcyBjb24gbG9zIGRvY3VtZW50b3MgcmVnaXN0cmFkb3MgZW4gZWwgUklVRC4KCmwpCUVsIChsb3MpIGF1dG9yKGVzKSBtYW5pZmllc3RhKG1vcykgcXVlIGxhIG9icmEgb2JqZXRvIGRlIGxhIHByZXNlbnRlIGF1dG9yaXphY2nDs24gZXMgb3JpZ2luYWwsIGRlIGV4Y2x1c2l2YSBhdXRvcsOtYSwgeSBzZSByZWFsaXrDsyBzaW4gdmlvbGFyIG8gdXN1cnBhciBkZXJlY2hvcyBkZSBhdXRvciBkZSB0ZXJjZXJvczsgZGUgdGFsIHN1ZXJ0ZSwgZW4gY2FzbyBkZSBwcmVzZW50YXJzZSBjdWFscXVpZXIgcmVjbGFtYWNpw7NuIG8gYWNjacOzbiBwb3IgcGFydGUgZGUgdW4gdGVyY2VybyBlbiBjdWFudG8gYSBsb3MgZGVyZWNob3MgZGUgYXV0b3Igc29icmUgbGEgb2JyYSwgZWwgKGxvcykgZXN0dWRpYW50ZShzKSDigJMgYXV0b3IoZXMpIGFzdW1pcsOhKG4pIHRvZGEgbGEgcmVzcG9uc2FiaWxpZGFkIHkgc2FsZHLDoShuKSBlbiBkZWZlbnNhIGRlIGxvcyBkZXJlY2hvcyBhcXXDrSBhdXRvcml6YWRvcy4gUGFyYSB0b2RvcyBsb3MgZWZlY3RvcywgTEEgVU5JVkVSU0lEQUQgYWN0w7phIGNvbW8gdW4gdGVyY2VybyBkZSBidWVuYSBmZS4KCgptKQlFbCAobG9zKSBhdXRvcihlcykgbWFuaWZpZXN0YShtb3MpIHF1ZSBjb25vemNvKGNlbW9zKSBsYSBhdXRvbm9tw61hIHkgbG9zIGRlcmVjaG9zLCBxdWUgcG9zZWUobW9zKSBzb2JyZSBsYSBvYnJhIHksIGNvbW8gdGFsLCBlcyAoc29tb3MpIHJlc3BvbnNhYmxlKHMpIGRlbCBhbGNhbmNlIGp1csOtZGljbyB5IGxlZ2FsLCBkZSBlc2NvZ2VyIGxhIG9wY2nDs24gZGUgbGEgcHVibGljYWNpw7NuIG8gZGUgcmVzdHJpY2Npw7NuIGRlIGxhIHB1YmxpY2FjacOzbiBkZWwgZG9jdW1lbnRvIHJlZ2lzdHJhZG8gZW4gZWwgUklVRC4KCgoKCgoKU0kgRUwgRE9DVU1FTlRPIFNFIEJBU0EgRU4gVU4gVFJBQkFKTyBRVUUgSEEgU0lETyBQQVRST0NJTkFETyBPIEFQT1lBRE8gUE9SIFVOQSBBR0VOQ0lBIE8gVU5BIE9SR0FOSVpBQ0nDk04sIENPTiBFWENFUENJw5NOIERFIExBIFVOSVZFUlNJREFEIERJU1RSSVRBTCBGUkFOQ0lTQ08gSk9TRSBERSBDQUxEQVMsIExPUyBBVVRPUkVTIEdBUkFOVElaQU4gUVVFIFNFIEhBIENVTVBMSURPIENPTiBMT1MKREVSRUNIT1MgWSBPQkxJR0FDSU9ORVMgUkVRVUVSSURPUyBQT1IgRUwgUkVTUEVDVElWTyBDT05UUkFUTyBPIEFDVUVSRE8uCgoKCgoKCgoKCgoKCgoKCgoKCgoKCkVuIGNvbnN0YW5jaWEgZGUgbG8gYW50ZXJpb3IsIGZpcm1vKGFtb3MpIGVsIHByZXNlbnRlIGRvY3VtZW50bywgZW4gbGEgY2l1ZGFkIGRlIEJvZ290w6EsIEQuQy4sIGEgbG9zCgoKRklSTUEgREUgTE9TIFRJVFVMQVJFUyBERSBERVJFQ0hPUyBERSBBVVRPUgoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fICAgQy5DLiBOby4gX19fX19fX19fX19fX19fX19fCgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18gICBDLkMuIE5vLiBfX19fX19fX19fX19fX19fX18KCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXyAgIEMuQy4gTm8uIF9fX19fX19fX19fX19fX19fXwoKCgpDb3JyZW8gRWxlY3Ryw7NuaWNvIEluc3RpdHVjaW9uYWwgZGVsIChkZSBsb3MpIEF1dG9yKGVzKToKCkF1dG9yCSAgICAgIENvcnJlbyBFbGVjdHLDs25pY28KCjEKCjIKCjMKCk5vbWJyZSBkZSBEaXJlY3RvcihlcykgZGUgR3JhZG86CgoxCgoyCgozCgpOb21icmUgRmFjdWx0YWQgeSBQcm95ZWN0byBDdXJyaWN1bGFyOgoKRmFjdWx0YWQJUHJveWVjdG8gQ3VycmljdWxhcgoKCgoKCgoKCk5vdGE6IEVuIGNhc28gcXVlIG5vIGVzdMOpIGRlIGFjdWVyZG8gY29uIGxhcyBjb25kaWNpb25lcyBkZSBsYSBwcmVzZW50ZSBsaWNlbmNpYSwgeSBtYW5pZmllc3RlIGFsZ3VuYSByZXN0cmljY2nDs24gc29icmUgbGEgb2JyYSwganVzdGlmaXF1ZSBsb3MgbW90aXZvcyBwb3IgbG9zIGN1YWxlcyBlbCBkb2N1bWVudG8geSBzdXMgYW5leG9zIG5vIHB1ZWRlbiBzZXIgcHVibGljYWRvcyBlbiBlbCBSZXBvc2l0b3JpbyBJbnN0aXR1Y2lvbmFsIGRlIGxhIFVuaXZlcnNpZGFkIERpc3RyaXRhbCBGcmFuY2lzY28gSm9zw6kgZGUgQ2FsZGFzIFJJVUQuCgoKU2kgcmVxdWllcmUgbcOhcyBlc3BhY2lvLCBwdWVkZSBhbmV4YXIgdW5hIGNvcGlhIHNpbWlsYXIgYSBlc3RhIGhvamEK |