Diseño e implementación de una herramienta para el procesamiento, almacenamiento y visualización de datos de telemetría de la aeronave Calima T-90 de la Fuerza Aérea Colombiana.
En el presente documento se muestra una propuesta de diseño e implementación de unaherramienta para el procesamiento, almacenamiento y visualización de datos de telemetría de la aeronave Calima T-90 de la Fuerza Aérea Colombiana (FAC), partiendo de un proyecto previamente realizado por la Oficina de...
- Autores:
-
González Riaño, Oscar Julián
Vega Valencia, Brayan Andrés
- Tipo de recurso:
- Trabajo de grado de pregrado
- Fecha de publicación:
- 2022
- Institución:
- Universidad Distrital Francisco José de Caldas
- Repositorio:
- RIUD: repositorio U. Distrital
- Idioma:
- spa
- OAI Identifier:
- oai:repository.udistrital.edu.co:11349/30113
- Acceso en línea:
- http://hdl.handle.net/11349/30113
- Palabra clave:
- Backend
Camila T-90
Entrenamiento en vuelo
FAC
Python
Raspberry PI
Aviónica
Ingeniería en Telecomunicaciones - Tesis y disertaciones académicas
Telemetría aeroespacial
Electrónica - Mediciones
Dispositivos de almacenamiento (Computadores)
Python (Lenguaje de programación de computadores)
Sistemas de transmisión de datos
Camila T-90
FAC
python
Raspberry PI
Avionics
Back-end
Fight
Training
- Rights
- License
- CC0 1.0 Universal
id |
UDISTRITA2_0d7f3dc784374de399a25e4b8ca612fa |
---|---|
oai_identifier_str |
oai:repository.udistrital.edu.co:11349/30113 |
network_acronym_str |
UDISTRITA2 |
network_name_str |
RIUD: repositorio U. Distrital |
repository_id_str |
|
dc.title.spa.fl_str_mv |
Diseño e implementación de una herramienta para el procesamiento, almacenamiento y visualización de datos de telemetría de la aeronave Calima T-90 de la Fuerza Aérea Colombiana. |
dc.title.titleenglish.spa.fl_str_mv |
Design and implementation of a tool for the processing, storage and visualization of telemetry data from the Calima T-90 aircraft of the Colombian Air Force. |
title |
Diseño e implementación de una herramienta para el procesamiento, almacenamiento y visualización de datos de telemetría de la aeronave Calima T-90 de la Fuerza Aérea Colombiana. |
spellingShingle |
Diseño e implementación de una herramienta para el procesamiento, almacenamiento y visualización de datos de telemetría de la aeronave Calima T-90 de la Fuerza Aérea Colombiana. Backend Camila T-90 Entrenamiento en vuelo FAC Python Raspberry PI Aviónica Ingeniería en Telecomunicaciones - Tesis y disertaciones académicas Telemetría aeroespacial Electrónica - Mediciones Dispositivos de almacenamiento (Computadores) Python (Lenguaje de programación de computadores) Sistemas de transmisión de datos Camila T-90 FAC python Raspberry PI Avionics Back-end Fight Training |
title_short |
Diseño e implementación de una herramienta para el procesamiento, almacenamiento y visualización de datos de telemetría de la aeronave Calima T-90 de la Fuerza Aérea Colombiana. |
title_full |
Diseño e implementación de una herramienta para el procesamiento, almacenamiento y visualización de datos de telemetría de la aeronave Calima T-90 de la Fuerza Aérea Colombiana. |
title_fullStr |
Diseño e implementación de una herramienta para el procesamiento, almacenamiento y visualización de datos de telemetría de la aeronave Calima T-90 de la Fuerza Aérea Colombiana. |
title_full_unstemmed |
Diseño e implementación de una herramienta para el procesamiento, almacenamiento y visualización de datos de telemetría de la aeronave Calima T-90 de la Fuerza Aérea Colombiana. |
title_sort |
Diseño e implementación de una herramienta para el procesamiento, almacenamiento y visualización de datos de telemetría de la aeronave Calima T-90 de la Fuerza Aérea Colombiana. |
dc.creator.fl_str_mv |
González Riaño, Oscar Julián Vega Valencia, Brayan Andrés |
dc.contributor.advisor.none.fl_str_mv |
Gómez Gómez, Edgar Leonardo |
dc.contributor.author.none.fl_str_mv |
González Riaño, Oscar Julián Vega Valencia, Brayan Andrés |
dc.subject.spa.fl_str_mv |
Backend Camila T-90 Entrenamiento en vuelo FAC Python Raspberry PI Aviónica |
topic |
Backend Camila T-90 Entrenamiento en vuelo FAC Python Raspberry PI Aviónica Ingeniería en Telecomunicaciones - Tesis y disertaciones académicas Telemetría aeroespacial Electrónica - Mediciones Dispositivos de almacenamiento (Computadores) Python (Lenguaje de programación de computadores) Sistemas de transmisión de datos Camila T-90 FAC python Raspberry PI Avionics Back-end Fight Training |
dc.subject.lemb.spa.fl_str_mv |
Ingeniería en Telecomunicaciones - Tesis y disertaciones académicas Telemetría aeroespacial Electrónica - Mediciones Dispositivos de almacenamiento (Computadores) Python (Lenguaje de programación de computadores) Sistemas de transmisión de datos |
dc.subject.keyword.spa.fl_str_mv |
Camila T-90 FAC python Raspberry PI Avionics Back-end Fight Training |
description |
En el presente documento se muestra una propuesta de diseño e implementación de unaherramienta para el procesamiento, almacenamiento y visualización de datos de telemetría de la aeronave Calima T-90 de la Fuerza Aérea Colombiana (FAC), partiendo de un proyecto previamente realizado por la Oficina de Certificación Aeronáutica de la Defensa (SECAD) que buscaba establecer un enlace de comunicación de datos de telemetría en tiempo real entre una estación en tierra y las aeronaves que son usadas para propósitos de entrenamiento de pilotosenla Escuela Militar de Aviación Marco Fidel Suárez. De acuerdo con los resultados alcanzados hasta el momento por la FACse tienen varias conclusiones, las más relevantes son: primero, se tiene un retardo de varios segundos en e lprocesamiento de los datos a nivel de software que puede llegar a ocasionar pérdida de información y mal funcionamiento del sistema; segundo, la FAC ha de pagar licenciamientos costosos al utilizar tecnología de NI (National Instruments) además que el software de LabVIEWes bastante restrictivo para el desarrollador y requiere de muchos recursos computacionales para ser ejecutado en un computador. Partiendo de dichas falencias, se ha implementado una aplicación en una RASPBERRYPI4 donde se tiene una entidad BACKEND realizada en Python que recibe los datos de la antena entierra, procesa la información y la emite a través de WEBSOCKET. La entidad FRONTENDrecibe los datos y los plasma en una interfaz gráfica, usando los lenguajes HTML, CSSyJavaScript de libre licenciamiento. Se testea la aplicación en la base CAMAN (Comando Aéreo de Mantenimiento) de laFACenMadrid Cundinamarca utilizando un panel de aviónica de la aeronave Calima T90, en el cual se emula el comportamiento de la aeronave en vuelo, comprobando una rápida respuesta para graficar los datos provenientes de la aeronave para 4 escenarios propuestos. Como resultado se tiene una aplicación de bajo consumo de recursos de Hardware y un código que se puede utilizar como base para futuros proyectos relacionados. |
publishDate |
2022 |
dc.date.accessioned.none.fl_str_mv |
2022-08-18T15:38:45Z |
dc.date.available.none.fl_str_mv |
2022-08-18T15:38:45Z |
dc.date.created.none.fl_str_mv |
2022-03-07 |
dc.type.degree.spa.fl_str_mv |
Monografía |
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 |
format |
http://purl.org/coar/resource_type/c_7a1f |
dc.identifier.uri.none.fl_str_mv |
http://hdl.handle.net/11349/30113 |
url |
http://hdl.handle.net/11349/30113 |
dc.language.iso.spa.fl_str_mv |
spa |
language |
spa |
dc.rights.*.fl_str_mv |
CC0 1.0 Universal |
dc.rights.coar.fl_str_mv |
http://purl.org/coar/access_right/c_abf2 |
dc.rights.uri.*.fl_str_mv |
http://creativecommons.org/publicdomain/zero/1.0/ |
dc.rights.acceso.spa.fl_str_mv |
Abierto (Texto Completo) |
rights_invalid_str_mv |
CC0 1.0 Universal http://creativecommons.org/publicdomain/zero/1.0/ Abierto (Texto Completo) http://purl.org/coar/access_right/c_abf2 |
dc.format.mimetype.spa.fl_str_mv |
pdf |
institution |
Universidad Distrital Francisco José de Caldas |
bitstream.url.fl_str_mv |
https://repository.udistrital.edu.co/bitstreams/56946007-309a-4c36-9fb3-416b7a29ffb5/download https://repository.udistrital.edu.co/bitstreams/98b6f735-0b11-46a1-aabd-96031a75f69a/download https://repository.udistrital.edu.co/bitstreams/502a3411-db65-4baa-ac8d-7113ccc6895f/download https://repository.udistrital.edu.co/bitstreams/6c1de19a-e79b-4d04-a03b-2f331c9e5b2f/download https://repository.udistrital.edu.co/bitstreams/dca87420-de9c-4f22-b28b-bce7a767399e/download https://repository.udistrital.edu.co/bitstreams/367819fb-4abd-406f-9432-d736c7b328e0/download |
bitstream.checksum.fl_str_mv |
42fd4ad1e89814f5e4a476b409eb708c 997daf6c648c962d566d7b082dac908d 2ed9a2f32ff5a0c51aa68cc437a91188 7908c001fa7dfbf11694089a62fd1c6d 67c4bb06c4c70af5f4753f334653c89f 3a52bcc0d97d26e3b5fce067af55fdeb |
bitstream.checksumAlgorithm.fl_str_mv |
MD5 MD5 MD5 MD5 MD5 MD5 |
repository.name.fl_str_mv |
Repositorio Universidad Distrital |
repository.mail.fl_str_mv |
repositorio@udistrital.edu.co |
_version_ |
1828165315580657664 |
spelling |
Gómez Gómez, Edgar LeonardoGonzález Riaño, Oscar JuliánVega Valencia, Brayan Andrés2022-08-18T15:38:45Z2022-08-18T15:38:45Z2022-03-07http://hdl.handle.net/11349/30113En el presente documento se muestra una propuesta de diseño e implementación de unaherramienta para el procesamiento, almacenamiento y visualización de datos de telemetría de la aeronave Calima T-90 de la Fuerza Aérea Colombiana (FAC), partiendo de un proyecto previamente realizado por la Oficina de Certificación Aeronáutica de la Defensa (SECAD) que buscaba establecer un enlace de comunicación de datos de telemetría en tiempo real entre una estación en tierra y las aeronaves que son usadas para propósitos de entrenamiento de pilotosenla Escuela Militar de Aviación Marco Fidel Suárez. De acuerdo con los resultados alcanzados hasta el momento por la FACse tienen varias conclusiones, las más relevantes son: primero, se tiene un retardo de varios segundos en e lprocesamiento de los datos a nivel de software que puede llegar a ocasionar pérdida de información y mal funcionamiento del sistema; segundo, la FAC ha de pagar licenciamientos costosos al utilizar tecnología de NI (National Instruments) además que el software de LabVIEWes bastante restrictivo para el desarrollador y requiere de muchos recursos computacionales para ser ejecutado en un computador. Partiendo de dichas falencias, se ha implementado una aplicación en una RASPBERRYPI4 donde se tiene una entidad BACKEND realizada en Python que recibe los datos de la antena entierra, procesa la información y la emite a través de WEBSOCKET. La entidad FRONTENDrecibe los datos y los plasma en una interfaz gráfica, usando los lenguajes HTML, CSSyJavaScript de libre licenciamiento. Se testea la aplicación en la base CAMAN (Comando Aéreo de Mantenimiento) de laFACenMadrid Cundinamarca utilizando un panel de aviónica de la aeronave Calima T90, en el cual se emula el comportamiento de la aeronave en vuelo, comprobando una rápida respuesta para graficar los datos provenientes de la aeronave para 4 escenarios propuestos. Como resultado se tiene una aplicación de bajo consumo de recursos de Hardware y un código que se puede utilizar como base para futuros proyectos relacionados.This document shows a proposal for the design and implementation of a tool for the processing, storage and visualization of telemetry data from the Calima T-90 aircraft of the Colombian Air Force (FAC), based on a project previously carried out by the Defense Aeronautical Certification Office ( SECAD) that sought to establish a telemetry data communication link in real time between a ground station and the aircraft that are used for pilot training purposes at the Marco Fidel Suarez Military Aviation School. According to the results achieved so far by the FAC, there are several conclusions, the most relevant are: first, there is a delay of several seconds in the processing of data at the software level that can cause loss of information and malfunction of the system; second, the FAC has to pay expensive licenses when using NI (National Instruments) technology, in addition to the fact that LabVIEW software is quite restrictive for the developer and requires a lot of computational resources to be executed on a computer. Based on these shortcomings, an application has been implemented in a RASPBERRYPI4 where there is a BACKEND entity made in Python that receives the data from the underground antenna, processes the information and emits it through WEBSOCKET. The FRONTEND entity receives the data and displays it in a graphical interface, using the freely licensed HTML, CSS and JavaScript languages. The application is tested at the CAMAN base (Air Maintenance Command) of the FAC in Madrid Cundinamarca using an avionics panel from the Calima T90 aircraft, in which the behavior of the aircraft in flight is simulated, checking a rapid response to graph the data coming from the aircraft to 4 proposed scenarios. As a result, there is an application with low consumption of Hardware resources and a code that can be used as a base for future related projects.Fuerza Aérea ColombianapdfspaCC0 1.0 Universalhttp://creativecommons.org/publicdomain/zero/1.0/Abierto (Texto Completo)http://purl.org/coar/access_right/c_abf2BackendCamila T-90Entrenamiento en vueloFACPythonRaspberry PIAviónicaIngeniería en Telecomunicaciones - Tesis y disertaciones académicasTelemetría aeroespacialElectrónica - MedicionesDispositivos de almacenamiento (Computadores)Python (Lenguaje de programación de computadores)Sistemas de transmisión de datosCamila T-90FACpythonRaspberry PIAvionicsBack-endFightTrainingDiseño e implementación de una herramienta para el procesamiento, almacenamiento y visualización de datos de telemetría de la aeronave Calima T-90 de la Fuerza Aérea Colombiana.Design and implementation of a tool for the processing, storage and visualization of telemetry data from the Calima T-90 aircraft of the Colombian Air Force.Monografíainfo:eu-repo/semantics/bachelorThesishttp://purl.org/coar/resource_type/c_7a1fCC-LICENSElicense_rdflicense_rdfapplication/rdf+xml; charset=utf-8701https://repository.udistrital.edu.co/bitstreams/56946007-309a-4c36-9fb3-416b7a29ffb5/download42fd4ad1e89814f5e4a476b409eb708cMD55LICENSElicense.txtlicense.txttext/plain; charset=utf-87167https://repository.udistrital.edu.co/bitstreams/98b6f735-0b11-46a1-aabd-96031a75f69a/download997daf6c648c962d566d7b082dac908dMD56ORIGINALGonzalezRiañoOscarJulian2022.pdfGonzalezRiañoOscarJulian2022.pdfapplication/pdf3612100https://repository.udistrital.edu.co/bitstreams/502a3411-db65-4baa-ac8d-7113ccc6895f/download2ed9a2f32ff5a0c51aa68cc437a91188MD52Licencia de uso y publicacion.pdfLicencia de uso y publicacion.pdfLicencia de uso y publicaciónapplication/pdf296038https://repository.udistrital.edu.co/bitstreams/6c1de19a-e79b-4d04-a03b-2f331c9e5b2f/download7908c001fa7dfbf11694089a62fd1c6dMD54THUMBNAILGonzalezRiañoOscarJulian2022.pdf.jpgGonzalezRiañoOscarJulian2022.pdf.jpgIM Thumbnailimage/jpeg6570https://repository.udistrital.edu.co/bitstreams/dca87420-de9c-4f22-b28b-bce7a767399e/download67c4bb06c4c70af5f4753f334653c89fMD57Licencia de uso y publicacion.pdf.jpgLicencia de uso y publicacion.pdf.jpgIM Thumbnailimage/jpeg13389https://repository.udistrital.edu.co/bitstreams/367819fb-4abd-406f-9432-d736c7b328e0/download3a52bcc0d97d26e3b5fce067af55fdebMD5811349/30113oai:repository.udistrital.edu.co:11349/301132023-06-13 14:41:29.33http://creativecommons.org/publicdomain/zero/1.0/CC0 1.0 Universalopen.accesshttps://repository.udistrital.edu.coRepositorio Universidad Distritalrepositorio@udistrital.edu.coTElDRU5DSUEgWSBBVVRPUklaQUNJw5NOIEVTUEVDSUFMIFBBUkEgUFVCTElDQVIgWSBQRVJNSVRJUiBMQSBDT05TVUxUQSBZIFVTTyBERSBDT05URU5JRE9TIEVOIEVMIFJFUE9TSVRPUklPIElOU1RJVFVDSU9OQUwgREUgTEEgVU5JVkVSU0lEQUQgRElTVFJJVEFMCgpUw6lybWlub3MgeSBjb25kaWNpb25lcyBkZSB1c28gcGFyYSBwdWJsaWNhY2nDs24gZGUgb2JyYXMgZW4gZWwgUmVwb3NpdG9yaW8gSW5zdGl0dWNpb25hbCBkZSBsYSBVbml2ZXJzaWRhZCBEaXN0cml0YWwgRnJhbmNpc2NvIEpvc8OpIGRlIENhbGRhcyAoUklVRCkKCkNvbW8gdGl0dWxhcihlcykgZGVsKG9zKSBkZXJlY2hvKHMpIGRlIGF1dG9yLCBjb25maWVybyAoZXJpbW9zKSBhIGxhIFVuaXZlcnNpZGFkIERpc3RyaXRhbCBGcmFuY2lzY28gSm9zw6kgZGUgQ2FsZGFzIChlbiBhZGVsYW50ZSwgTEEgVU5JVkVSU0lEQUQpIHVuYSBsaWNlbmNpYSBwYXJhIHVzbyBubyBleGNsdXNpdmEsIGxpbWl0YWRhIHkgZ3JhdHVpdGEgc29icmUgbGEgb2JyYSBxdWUgaW50ZWdyYXLDoSBlbCBSZXBvc2l0b3JpbyBJbnN0aXR1Y2lvbmFsIChlbiBhZGVsYW50ZSwgUklVRCksIGRlIGFjdWVyZG8gYSBsYXMgc2lndWllbnRlcyByZWdsYXMsIGxhcyBjdWFsZXMgZGVjbGFybyAoYW1vcykgY29ub2NlciB5IGFjZXB0YXI6CgphKQlFc3RhcsOhIHZpZ2VudGUgYSBwYXJ0aXIgZGUgbGEgZmVjaGEgZW4gcXVlIHNlIGluY2x1eWEgZW4gZWwgUklVRCB5IGhhc3RhIHBvciB1biBwbGF6byBkZSBkaWV6ICgxMCkgQcOxb3MsIHByb3Jyb2dhYmxlIGluZGVmaW5pZGFtZW50ZSBwb3IgZWwgdGllbXBvIHF1ZSBkdXJlIGVsIGRlcmVjaG8gUGF0cmltb25pYWwgZGVsIGF1dG9yOyBsYSBjdWFsIHBvZHLDoSBkYXJzZSBwb3IgdGVybWluYWRhIHByZXZpYSBzb2xpY2l0dWQgYSBMQSBVTklWRVJTSURBRCBwb3IgZXNjcml0byBjb24gdW5hIGFudGVsYWNpw7NuIGRlIGRvcyAoMikgbWVzZXMgYW50ZXMgZGVsIHZlbmNpbWllbnRvIGRlbCBwbGF6byBpbmljaWFsIG8gZWwgZGUgc3UocykgcHLDs3Jyb2dhKHMpLgoKYikJTEEgVU5JVkVSU0lEQUQgcG9kcsOhIHB1YmxpY2FyIGxhIG9icmEgZW4gbGFzIGRpc3RpbnRhcyB2ZXJzaW9uZXMgcmVxdWVyaWRhcyBwb3IgZWwgUklVRCAoZGlnaXRhbCwgaW1wcmVzbywgZWxlY3Ryw7NuaWNvIHUgb3RybyBtZWRpbyBjb25vY2lkbyBvIHBvciBjb25vY2VyKSBMQSBVTklWRVJTSURBRCBubyBzZXLDoSByZXNwb25zYWJsZSBlbiBlbCBldmVudG8gcXVlIGVsIGRvY3VtZW50byBhcGFyZXpjYSByZWZlcmVuY2lhZG8gZW4gbW90b3JlcyBkZSBiw7pzcXVlZGEgbyByZXBvc2l0b3Jpb3MgZGlmZXJlbnRlcyBhbCBSSVVELCB1bmEgdmV6IGVsKG9zKSBhdXRvcihlcykgc29saWNpdGVuIHN1IGVsaW1pbmFjacOzbiBkZWwgUklVRCwgZGFkbyBxdWUgbGEgbWlzbWEgc2Vyw6EgcHVibGljYWRhIGVuIEludGVybmV0LgoKYykJTGEgYXV0b3JpemFjacOzbiBzZSBoYWNlIGEgdMOtdHVsbyBncmF0dWl0bywgcG9yIGxvIHRhbnRvLCBsb3MgYXV0b3JlcyByZW51bmNpYW4gYSByZWNpYmlyIGJlbmVmaWNpbyBhbGd1bm8gcG9yIGxhIHB1YmxpY2FjacOzbiwgZGlzdHJpYnVjacOzbiwgY29tdW5pY2FjacOzbiBww7pibGljYSB5IGN1YWxxdWllciBvdHJvIHVzbyBxdWUgc2UgaGFnYSBlbiBsb3MgdMOpcm1pbm9zIGRlIGxhIHByZXNlbnRlIGxpY2VuY2lhIHkgZGUgbGEgbGljZW5jaWEgZGUgdXNvIGNvbiBxdWUgc2UgcHVibGljYSAoQ3JlYXRpdmUgQ29tbW9ucykuCgpkKQlMb3MgY29udGVuaWRvcyBwdWJsaWNhZG9zIGVuIGVsIFJJVUQgc29uIG9icmEocykgb3JpZ2luYWwoZXMpIHNvYnJlIGxhIGN1YWwoZXMpIGVsKG9zKSBhdXRvcihlcykgY29tbyB0aXR1bGFyZXMgZGUgbG9zIGRlcmVjaG9zIGRlIGF1dG9yLCBhc3VtZW4gdG90YWwgcmVzcG9uc2FiaWxpZGFkIHBvciBlbCBjb250ZW5pZG8gZGUgc3Ugb2JyYSBhbnRlIExBIFVOSVZFUlNJREFEIHkgYW50ZSB0ZXJjZXJvcy4gRW4gdG9kbyBjYXNvIExBIFVOSVZFUlNJREFEIHNlIGNvbXByb21ldGUgYSBpbmRpY2FyIHNpZW1wcmUgbGEgYXV0b3LDrWEgaW5jbHV5ZW5kbyBlbCBub21icmUgZGVsIGF1dG9yIHkgbGEgZmVjaGEgZGUgcHVibGljYWNpw7NuLgoKZSkJTEEgVU5JVkVSU0lEQUQgcG9kcsOhIGluY2x1aXIgbGEgb2JyYSBlbiBsb3Mgw61uZGljZXMgeSBidXNjYWRvcmVzIHF1ZSBlc3RpbWVuIG5lY2VzYXJpb3MgcGFyYSBtYXhpbWl6YXIgbGEgdmlzaWJpbGlkYWQgZWwgdXNvIHkgZWwgaW1wYWN0byBkZSBsYSBwcm9kdWNjacOzbiBjaWVudMOtZmljYSwgYXJ0w61zdGljYSB5IGFjYWTDqW1pY2EgZW4gbGEgY29tdW5pZGFkIGxvY2FsLCBuYWNpb25hbCBvIGludGVybmFjaW9uYWwuCgoKZikJTEEgVU5JVkVSU0lEQUQgcG9kcsOhIGNvbnZlcnRpciBsYSBvYnJhIGEgY3VhbHF1aWVyIG1lZGlvIG8gZm9ybWF0byBjb24gZWwgZmluIGRlIHN1IHByZXNlcnZhY2nDs24gZW4gZWwgdGllbXBvIHF1ZSBsYSBwcmVzZW50ZSBsaWNlbmNpYSB5IGxhIGRlIHN1cyBwcsOzcnJvZ2FzLgoKCkNvbiBiYXNlIGVuIGxvIGFudGVyaW9yIGF1dG9yaXpvKGFtb3MpLCBhIGZhdm9yIGRlbCBSSVVEIHkgZGUgc3VzIHVzdWFyaW9zLCBsYSBwdWJsaWNhY2nDs24geSBjb25zdWx0YSBkZSBsYSBzaWd1aWVudGUgb2JyYToKClRpdHVsbwoKQXV0b3IgICAgICAgQXBlbGxpZG9zICAgICAgICAgTm9tYnJlcwoKMQoKMgoKMwoKCmcpCUF1dG9yaXpvKGFtb3MpLCBxdWUgbGEgb2JyYSBzZWEgcHVlc3RhIGEgZGlzcG9zaWNpw7NuIGRlbCBww7pibGljbyBlbiBsb3MgdMOpcm1pbm9zIGVzdGFibGVjaWRvcyBlbiBsb3MgbGl0ZXJhbGVzIGFudGVyaW9yZXMsIGJham8gbG9zIGzDrW1pdGVzIGRlZmluaWRvcyBwb3IgTEEgVU5JVkVSU0lEQUQsIGVuIGxhcyDigJxDb25kaWNpb25lcyBkZSB1c28gZGUgZXN0cmljdG8gY3VtcGxpbWllbnRv4oCdIGRlIGxvcyByZWN1cnNvcyBwdWJsaWNhZG9zIGVuIGVsIFJJVUQsIGN1eW8gdGV4dG8gY29tcGxldG8gc2UgcHVlZGUgY29uc3VsdGFyIGVuIGh0dHA6Ly9yZXBvc2l0b3J5LnVkaXN0cml0YWwuZWR1LmNvLwoKaCkJQ29ub3pjbyhjZW1vcykgeSBhY2VwdG8oYW1vcykgcXVlIG90b3JnbyhhbW9zKSB1bmEgbGljZW5jaWEgZXNwZWNpYWwgcGFyYSBwdWJsaWNhY2nDs24gZGUgb2JyYXMgZW4gZWwgUmVwb3NpdG9yaW8gSW5zdGl0dWNpb25hbCBkZSBsYSBVbml2ZXJzaWRhZCBEaXN0cml0YWwgRnJhbmNpc2NvIEpvc8OpIGRlIENhbGRhcywgbGljZW5jaWEgICBkZSBsYSBjdWFsIGhlIChoZW1vcykgb2J0ZW5pZG8gdW5hIGNvcGlhLgoKaSkJTWFuaWZpZXN0byhhbW9zKSBtaSAobnVlc3RybykgdG90YWwgYWN1ZXJkbyBjb24gbGFzIGNvbmRpY2lvbmVzIGRlIHVzbyB5IHB1YmxpY2FjacOzbiBlbiBlbCBSZXBvc2l0b3JpbyBJbnN0aXR1Y2lvbmFsIGRlIGxhIFVuaXZlcnNpZGFkIERpc3RyaXRhbCBGcmFuY2lzY28gSm9zw6kgZGUgQ2FsZGFzIHF1ZSBzZSBkZXNjcmliZW4geSBleHBsaWNhbiBlbiBlbCBwcmVzZW50ZSBkb2N1bWVudG8uCgpqKQlDb25vemNvKGNlbW9zKSBsYSBub3JtYXRpdmlkYWQgaW50ZXJuYSBkZSAgTEEgVU5JVkVSU0lEQUQ7IGVuIGNvbmNyZXRvLCBlbCBBY3VlcmRvIDAwNCBkZSAyMDEyIGRlbCBDU1UsIEFjdWVyZG8gMDIzIGRlIDIwMTIgZGVsIENTVSBzb2JyZSBQb2zDrXRpY2EgRWRpdG9yaWFsLCBBY3VlcmRvIDAyNiAgZGVsIDMxIGRlIGp1bGlvIGRlIDIwMTIgc29icmUgZWwgcHJvY2VkaW1pZW50byBwYXJhIGxhIHB1YmxpY2FjacOzbiBkZSB0ZXNpcyBkZSBwb3N0Z3JhZG8gZGUgbG9zIGVzdHVkaWFudGVzIGRlIGxhIFVuaXZlcnNpZGFkIERpc3RyaXRhbCBGcmFuY2lzY28gSm9zw6kgZGUgQ2FsZGFzLCAgQWN1ZXJkbyAwMzAgZGVsIDAzIGRlIGRpY2llbWJyZSBkZSAyMDEzIHBvciBtZWRpbyBkZWwgY3VhbCBzZSBjcmVhIGVsIFJlcG9zaXRvcmlvIEluc3RpdHVjaW9uYWwgZGUgbGEgVW5pdmVyc2lkYWQgRGlzdHJpdGFsIEZyYW5jaXNjbyBKb3PDqSBkZSBDYWxkYXMsIEFjdWVyZG8gMDM4IGRlIDIwMTUgMjAxNSDigJxwb3IgZWwgY3VhbCBzZSBtb2RpZmljYSBlbCBBY3VlcmRvIDAzMSBkZSAyMDE0IGRlIDIwMTQgcXVlIHJlZ2xhbWVudGEgZWwgdHJhYmFqbyBkZSBncmFkbyBwYXJhIGxvcyBlc3R1ZGlhbnRlcyBkZSBwcmVncmFkbyBkZSBsYSBVbml2ZXJzaWRhZCBEaXN0cml0YWwgRnJhbmNpc2NvIEpvc8OpIGRlIENhbGRhcyB5IHNlIGRpY3RhbiBvdHJhcyBkaXJlY3RyaWNlc+KAnSB5IGxhcyBkZW3DoXMgbm9ybWFzIGNvbmNvcmRhbnRlIHkgY29tcGxlbWVudGFyaWFzIHF1ZSByaWdlbiBhbCByZXNwZWN0bywgZXNwZWNpYWxtZW50ZSBsYSBsZXkgMjMgZGUgMTk4MiwgbGEgbGV5IDQ0IGRlIDE5OTMgeSBsYSBkZWNpc2nDs24gQW5kaW5hIDM1MSBkZSAxOTkzLiBFc3RvcyBkb2N1bWVudG9zIHBvZHLDoW4gc2VyIGNvbnN1bHRhZG9zIHkgZGVzY2FyZ2Fkb3MgZW4gZWwgcG9ydGFsIHdlYiBkZSBsYSBiaWJsaW90ZWNhIGh0dHA6Ly9zaXN0ZW1hZGViaWJsaW90ZWNhcy51ZGlzdHJpdGFsLmVkdS5jby8KCmspCUFjZXB0byhhbW9zKSBxdWUgTEEgVU5JVkVSU0lEQUQgbm8gc2UgcmVzcG9uc2FiaWxpemEgcG9yIGxhcyBpbmZyYWNjaW9uZXMgYSBsYSBwcm9waWVkYWQgaW50ZWxlY3R1YWwgbyBEZXJlY2hvcyBkZSBBdXRvciBjYXVzYWRhcyBwb3IgbG9zIHRpdHVsYXJlcyBkZSBsYSBwcmVzZW50ZSBMaWNlbmNpYSB5IGRlY2xhcmFtb3MgcXVlIG1hbnRlbmRyw6kgKGVtb3MpIGluZGVtbmUgYSBMQSBVTklWRVJTSURBRCBwb3IgbGFzIHJlY2xhbWFjaW9uZXMgbGVnYWxlcyBkZSBjdWFscXVpZXIgdGlwbyBxdWUgbGxlZ2FyZW4gYSBwcmVzZW50YXJzZSBwb3IgdmlvbGFjacOzbiBkZSBkZXJlY2hvcyBhIGxhIHByb3BpZWRhZCBpbnRlbGVjdHVhbCBvIGRlIEF1dG9yIHJlbGFjaW9uYWRvcyBjb24gbG9zIGRvY3VtZW50b3MgcmVnaXN0cmFkb3MgZW4gZWwgUklVRC4KCmwpCUVsIChsb3MpIGF1dG9yKGVzKSBtYW5pZmllc3RhKG1vcykgcXVlIGxhIG9icmEgb2JqZXRvIGRlIGxhIHByZXNlbnRlIGF1dG9yaXphY2nDs24gZXMgb3JpZ2luYWwsIGRlIGV4Y2x1c2l2YSBhdXRvcsOtYSwgeSBzZSByZWFsaXrDsyBzaW4gdmlvbGFyIG8gdXN1cnBhciBkZXJlY2hvcyBkZSBhdXRvciBkZSB0ZXJjZXJvczsgZGUgdGFsIHN1ZXJ0ZSwgZW4gY2FzbyBkZSBwcmVzZW50YXJzZSBjdWFscXVpZXIgcmVjbGFtYWNpw7NuIG8gYWNjacOzbiBwb3IgcGFydGUgZGUgdW4gdGVyY2VybyBlbiBjdWFudG8gYSBsb3MgZGVyZWNob3MgZGUgYXV0b3Igc29icmUgbGEgb2JyYSwgZWwgKGxvcykgZXN0dWRpYW50ZShzKSDigJMgYXV0b3IoZXMpIGFzdW1pcsOhKG4pIHRvZGEgbGEgcmVzcG9uc2FiaWxpZGFkIHkgc2FsZHLDoShuKSBlbiBkZWZlbnNhIGRlIGxvcyBkZXJlY2hvcyBhcXXDrSBhdXRvcml6YWRvcy4gUGFyYSB0b2RvcyBsb3MgZWZlY3RvcywgTEEgVU5JVkVSU0lEQUQgYWN0w7phIGNvbW8gdW4gdGVyY2VybyBkZSBidWVuYSBmZS4KCgptKQlFbCAobG9zKSBhdXRvcihlcykgbWFuaWZpZXN0YShtb3MpIHF1ZSBjb25vemNvKGNlbW9zKSBsYSBhdXRvbm9tw61hIHkgbG9zIGRlcmVjaG9zLCBxdWUgcG9zZWUobW9zKSBzb2JyZSBsYSBvYnJhIHksIGNvbW8gdGFsLCBlcyAoc29tb3MpIHJlc3BvbnNhYmxlKHMpIGRlbCBhbGNhbmNlIGp1csOtZGljbyB5IGxlZ2FsLCBkZSBlc2NvZ2VyIGxhIG9wY2nDs24gZGUgbGEgcHVibGljYWNpw7NuIG8gZGUgcmVzdHJpY2Npw7NuIGRlIGxhIHB1YmxpY2FjacOzbiBkZWwgZG9jdW1lbnRvIHJlZ2lzdHJhZG8gZW4gZWwgUklVRC4KCgoKCgoKU0kgRUwgRE9DVU1FTlRPIFNFIEJBU0EgRU4gVU4gVFJBQkFKTyBRVUUgSEEgU0lETyBQQVRST0NJTkFETyBPIEFQT1lBRE8gUE9SIFVOQSBBR0VOQ0lBIE8gVU5BIE9SR0FOSVpBQ0nDk04sIENPTiBFWENFUENJw5NOIERFIExBIFVOSVZFUlNJREFEIERJU1RSSVRBTCBGUkFOQ0lTQ08gSk9TRSBERSBDQUxEQVMsIExPUyBBVVRPUkVTIEdBUkFOVElaQU4gUVVFIFNFIEhBIENVTVBMSURPIENPTiBMT1MKREVSRUNIT1MgWSBPQkxJR0FDSU9ORVMgUkVRVUVSSURPUyBQT1IgRUwgUkVTUEVDVElWTyBDT05UUkFUTyBPIEFDVUVSRE8uCgoKCgoKCgoKCgoKCgoKCgoKCgoKCkVuIGNvbnN0YW5jaWEgZGUgbG8gYW50ZXJpb3IsIGZpcm1vKGFtb3MpIGVsIHByZXNlbnRlIGRvY3VtZW50bywgZW4gbGEgY2l1ZGFkIGRlIEJvZ290w6EsIEQuQy4sIGEgbG9zCgoKRklSTUEgREUgTE9TIFRJVFVMQVJFUyBERSBERVJFQ0hPUyBERSBBVVRPUgoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fICAgQy5DLiBOby4gX19fX19fX19fX19fX19fX19fCgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18gICBDLkMuIE5vLiBfX19fX19fX19fX19fX19fX18KCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXyAgIEMuQy4gTm8uIF9fX19fX19fX19fX19fX19fXwoKCgpDb3JyZW8gRWxlY3Ryw7NuaWNvIEluc3RpdHVjaW9uYWwgZGVsIChkZSBsb3MpIEF1dG9yKGVzKToKCkF1dG9yCSAgICAgIENvcnJlbyBFbGVjdHLDs25pY28KCjEKCjIKCjMKCk5vbWJyZSBkZSBEaXJlY3RvcihlcykgZGUgR3JhZG86CgoxCgoyCgozCgpOb21icmUgRmFjdWx0YWQgeSBQcm95ZWN0byBDdXJyaWN1bGFyOgoKRmFjdWx0YWQJUHJveWVjdG8gQ3VycmljdWxhcgoKCgoKCgoKCk5vdGE6IEVuIGNhc28gcXVlIG5vIGVzdMOpIGRlIGFjdWVyZG8gY29uIGxhcyBjb25kaWNpb25lcyBkZSBsYSBwcmVzZW50ZSBsaWNlbmNpYSwgeSBtYW5pZmllc3RlIGFsZ3VuYSByZXN0cmljY2nDs24gc29icmUgbGEgb2JyYSwganVzdGlmaXF1ZSBsb3MgbW90aXZvcyBwb3IgbG9zIGN1YWxlcyBlbCBkb2N1bWVudG8geSBzdXMgYW5leG9zIG5vIHB1ZWRlbiBzZXIgcHVibGljYWRvcyBlbiBlbCBSZXBvc2l0b3JpbyBJbnN0aXR1Y2lvbmFsIGRlIGxhIFVuaXZlcnNpZGFkIERpc3RyaXRhbCBGcmFuY2lzY28gSm9zw6kgZGUgQ2FsZGFzIFJJVUQuCgoKU2kgcmVxdWllcmUgbcOhcyBlc3BhY2lvLCBwdWVkZSBhbmV4YXIgdW5hIGNvcGlhIHNpbWlsYXIgYSBlc3RhIGhvamEK |