Actuadores inteligentes con protocolo de comunicación I2C y medio físico RS-485
Este articulo muestra el desarrollo de un sistema maestro/esclavo haciendo uso del protocolo de comunicación I2C por medio físico RS-485 para el control de los actuadores que trabajan en la PPA (Planta De Procesos Análogos) con el fin de reemplazar ciertas funciones del PLC (Controlador lógico progr...
- Autores:
-
Pimentel Ospina, Erika
Yate Monrroy, Yeferson
- Tipo de recurso:
- Trabajo de grado de pregrado
- Fecha de publicación:
- 2015
- Institución:
- Universidad Distrital Francisco José de Caldas
- Repositorio:
- RIUD: repositorio U. Distrital
- Idioma:
- spa
- OAI Identifier:
- oai:repository.udistrital.edu.co:11349/2245
- Acceso en línea:
- http://hdl.handle.net/11349/2245
- Palabra clave:
- Actuador inteligente
I2C
PSoC
Python
RS-485
Tecnología en Electrónica - Tesis y disertaciones académicas
Controladores programables
Python (Lenguaje de programación de computadores)
Lenguajes de programación (Computadores)
Actuadores inteligentes
Intelligent actuator
I2C
PSoC
Python
RS_485
- Rights
- License
- Atribución-NoComercial-SinDerivadas 4.0 Internacional
id |
UDISTRITA2_b920352b6c90a0e4ae8240741a6df8b1 |
---|---|
oai_identifier_str |
oai:repository.udistrital.edu.co:11349/2245 |
network_acronym_str |
UDISTRITA2 |
network_name_str |
RIUD: repositorio U. Distrital |
repository_id_str |
|
dc.title.spa.fl_str_mv |
Actuadores inteligentes con protocolo de comunicación I2C y medio físico RS-485 |
dc.title.titleenglish.spa.fl_str_mv |
Intelligent actuators i2c communication protocol and rs-485 physical means |
title |
Actuadores inteligentes con protocolo de comunicación I2C y medio físico RS-485 |
spellingShingle |
Actuadores inteligentes con protocolo de comunicación I2C y medio físico RS-485 Actuador inteligente I2C PSoC Python RS-485 Tecnología en Electrónica - Tesis y disertaciones académicas Controladores programables Python (Lenguaje de programación de computadores) Lenguajes de programación (Computadores) Actuadores inteligentes Intelligent actuator I2C PSoC Python RS_485 |
title_short |
Actuadores inteligentes con protocolo de comunicación I2C y medio físico RS-485 |
title_full |
Actuadores inteligentes con protocolo de comunicación I2C y medio físico RS-485 |
title_fullStr |
Actuadores inteligentes con protocolo de comunicación I2C y medio físico RS-485 |
title_full_unstemmed |
Actuadores inteligentes con protocolo de comunicación I2C y medio físico RS-485 |
title_sort |
Actuadores inteligentes con protocolo de comunicación I2C y medio físico RS-485 |
dc.creator.fl_str_mv |
Pimentel Ospina, Erika Yate Monrroy, Yeferson |
dc.contributor.advisor.spa.fl_str_mv |
Porras Bohada, Jorge Eduardo |
dc.contributor.author.spa.fl_str_mv |
Pimentel Ospina, Erika Yate Monrroy, Yeferson |
dc.subject.spa.fl_str_mv |
Actuador inteligente I2C PSoC Python RS-485 |
topic |
Actuador inteligente I2C PSoC Python RS-485 Tecnología en Electrónica - Tesis y disertaciones académicas Controladores programables Python (Lenguaje de programación de computadores) Lenguajes de programación (Computadores) Actuadores inteligentes Intelligent actuator I2C PSoC Python RS_485 |
dc.subject.lemb.spa.fl_str_mv |
Tecnología en Electrónica - Tesis y disertaciones académicas Controladores programables Python (Lenguaje de programación de computadores) Lenguajes de programación (Computadores) Actuadores inteligentes |
dc.subject.keyword.spa.fl_str_mv |
Intelligent actuator I2C PSoC Python RS_485 |
description |
Este articulo muestra el desarrollo de un sistema maestro/esclavo haciendo uso del protocolo de comunicación I2C por medio físico RS-485 para el control de los actuadores que trabajan en la PPA (Planta De Procesos Análogos) con el fin de reemplazar ciertas funciones del PLC (Controlador lógico programable) con el que cuenta actualmente la planta. Este sistema se implementa utilizando PSoC 4200 Prototyping Kit, el sistema es inteligente por tener las características de llevar la cuenta del uso del actuador, el estado del mismo (On/Off) e informar en caso de desconexión por factores externos (desgaste o daño en las líneas de comunicación y/o hardware) o interno (comunicación fallida), además de preservar la cuenta y estado en caso de pérdida en la alimentación del dispositivo. Se hace uso del software libre Python para diseñar la interfaz gráfica, en la cual el usuario tiene la posibilidad de visualizar el estado de los actuadores, así como su correcto funcionamiento e interactuar con estos para su correspondiente apertura y cierre. |
publishDate |
2015 |
dc.date.accessioned.none.fl_str_mv |
2015-10-19T20:42:59Z |
dc.date.available.none.fl_str_mv |
2015-10-19T20:42:59Z |
dc.date.created.spa.fl_str_mv |
2015-02-16 |
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/2245 |
url |
http://hdl.handle.net/11349/2245 |
dc.language.iso.spa.fl_str_mv |
spa |
language |
spa |
dc.rights.*.fl_str_mv |
Atribución-NoComercial-SinDerivadas 4.0 Internacional |
dc.rights.coar.fl_str_mv |
http://purl.org/coar/access_right/c_abf2 |
dc.rights.uri.*.fl_str_mv |
http://creativecommons.org/licenses/by-nc-nd/4.0/ |
dc.rights.acceso.spa.fl_str_mv |
Abierto (Texto Completo) |
rights_invalid_str_mv |
Atribución-NoComercial-SinDerivadas 4.0 Internacional http://creativecommons.org/licenses/by-nc-nd/4.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/185aba22-b30e-45cd-b34b-37cedc50c9e7/download https://repository.udistrital.edu.co/bitstreams/2eece2f6-a9a3-4fc6-8905-fb2ae9e5fad0/download https://repository.udistrital.edu.co/bitstreams/1a424252-76ff-4b5b-a5b7-6ff0fe618a22/download |
bitstream.checksum.fl_str_mv |
35262a58849bda23aacda3e38c3658aa e6c9e0df7dc5f123da9169c3e3e5c87a fbfab8250fa45290ad5a7150ac48ee73 |
bitstream.checksumAlgorithm.fl_str_mv |
MD5 MD5 MD5 |
repository.name.fl_str_mv |
Repositorio Universidad Distrital |
repository.mail.fl_str_mv |
repositorio@udistrital.edu.co |
_version_ |
1828165704344403968 |
spelling |
Porras Bohada, Jorge EduardoPimentel Ospina, ErikaYate Monrroy, Yeferson2015-10-19T20:42:59Z2015-10-19T20:42:59Z2015-02-16http://hdl.handle.net/11349/2245Este articulo muestra el desarrollo de un sistema maestro/esclavo haciendo uso del protocolo de comunicación I2C por medio físico RS-485 para el control de los actuadores que trabajan en la PPA (Planta De Procesos Análogos) con el fin de reemplazar ciertas funciones del PLC (Controlador lógico programable) con el que cuenta actualmente la planta. Este sistema se implementa utilizando PSoC 4200 Prototyping Kit, el sistema es inteligente por tener las características de llevar la cuenta del uso del actuador, el estado del mismo (On/Off) e informar en caso de desconexión por factores externos (desgaste o daño en las líneas de comunicación y/o hardware) o interno (comunicación fallida), además de preservar la cuenta y estado en caso de pérdida en la alimentación del dispositivo. Se hace uso del software libre Python para diseñar la interfaz gráfica, en la cual el usuario tiene la posibilidad de visualizar el estado de los actuadores, así como su correcto funcionamiento e interactuar con estos para su correspondiente apertura y cierre.This article shows the development of a Master / Slave system using I2C communication protocol for RS-485 physical means to control actuators working in the APP (Analog Process Plant) in order to replace certain functions of the PLC (programmable Logic Controller) with which currently has the plant. This system is implemented using PSoC 4200 Prototyping Kit, the system is smart to have the features to keep track of the use of the actuator, the condition (On / Off) and report in case of disconnection by external factors (wear or damage in the communication lines and / or hardware) or internal (failed communication), besides preserving the state account and for loss in power from the device. Python use of free software is made to design the GUI in which the user has the ability to view the status of the actuators, as well as proper operation and interact with those for the corresponding opening and closing.pdfspaAtribución-NoComercial-SinDerivadas 4.0 Internacionalhttp://creativecommons.org/licenses/by-nc-nd/4.0/Abierto (Texto Completo)http://purl.org/coar/access_right/c_abf2Actuador inteligenteI2CPSoCPythonRS-485Tecnología en Electrónica - Tesis y disertaciones académicasControladores programablesPython (Lenguaje de programación de computadores)Lenguajes de programación (Computadores)Actuadores inteligentesIntelligent actuatorI2CPSoCPythonRS_485Actuadores inteligentes con protocolo de comunicación I2C y medio físico RS-485Intelligent actuators i2c communication protocol and rs-485 physical meansinfo:eu-repo/semantics/bachelorThesishttp://purl.org/coar/resource_type/c_7a1fTHUMBNAILPimentelOspinaErika2015.pdf.jpgPimentelOspinaErika2015.pdf.jpgIM Thumbnailimage/jpeg14360https://repository.udistrital.edu.co/bitstreams/185aba22-b30e-45cd-b34b-37cedc50c9e7/download35262a58849bda23aacda3e38c3658aaMD53LICENSElicense.txtlicense.txttext/plain; charset=utf-85946https://repository.udistrital.edu.co/bitstreams/2eece2f6-a9a3-4fc6-8905-fb2ae9e5fad0/downloade6c9e0df7dc5f123da9169c3e3e5c87aMD52ORIGINALPimentelOspinaErika2015.pdfPimentelOspinaErika2015.pdfTrabajo de gradoapplication/pdf633700https://repository.udistrital.edu.co/bitstreams/1a424252-76ff-4b5b-a5b7-6ff0fe618a22/downloadfbfab8250fa45290ad5a7150ac48ee73MD5111349/2245oai:repository.udistrital.edu.co:11349/22452023-06-13 11:51:57.525http://creativecommons.org/licenses/by-nc-nd/4.0/Atribución-NoComercial-SinDerivadas 4.0 Internacionalrestrictedhttps://repository.udistrital.edu.coRepositorio Universidad Distritalrepositorio@udistrital.edu.coTElDRU5DSUEgWSBBVVRPUklaQUNJw5NOIEVTUEVDSUFMIFBBUkEgUFVCTElDQVIgWSBQRVJNSVRJUiBMQSBDT05TVUxUQSBZIFVTTyAgREUgQ09OVEVOSURPUyBFTiBFTCBSRVBPU0lUT1JJTyBJTlNUSVRVQ0lPTkFMIERFIExBIFVOSVZFUlNJREFEIERJU1RSSVRBTA0KVMOpcm1pbm9zIHkgY29uZGljaW9uZXMgZGUgdXNvICBwYXJhIHB1YmxpY2FjacOzbiBkZSBvYnJhcyBlbiBlbCBSZXBvc2l0b3JpbyBJbnN0aXR1Y2lvbmFsIGRlIGxhIFVuaXZlcnNpZGFkIERpc3RyaXRhbCBGcmFuY2lzY28gSm9zw6kgZGUgQ2FsZGFzIFJJVUQuDQoNCkNvbW8gdGl0dWxhcihlcykgZGVsKG9zKSBkZXJlY2hvKHMpIGRlIGF1dG9yLCAgY29uZmllcm8gKGVyaW1vcykgYSBsYSBVbml2ZXJzaWRhZCBEaXN0cml0YWwgRnJhbmNpc2NvIEpvc8OpIGRlIENhbGRhcyB1bmEgbGljZW5jaWEgcGFyYSB1c28gIG5vIGV4Y2x1c2l2YSwgbGltaXRhZGEgeSBncmF0dWl0YSBzb2JyZSBsYSBvYnJhIHF1ZSAgaW50ZWdyYXLDoSAgZWwgUmVwb3NpdG9yaW8gSW5zdGl0dWNpb25hbCBkZSBhY3VlcmRvIGEgbGFzIHNpZ3VpZW50ZXMgcmVnbGFzLCAgbGFzIGN1YWxlcyBkZWNsYXJvIChhbW9zKSBjb25vY2VyIHkgYWNlcHRhcjoNCg0KYSkgRXN0YXLDoSB2aWdlbnRlIGEgcGFydGlyIGRlIGxhIGZlY2hhICBlbiBxdWUgc2UgaW5jbHV5YSAgZW4gZWwgUmVwb3NpdG9yaW8gSW5zdGl0dWNpb25hbCB5IGhhc3RhICBwb3IgdW4gcGxhem8gZGUgIGRpZXogKDEwKSAgQcOxb3MsICBwcm9ycm9nYWJsZSAgaW5kZWZpbmlkYW1lbnRlIHBvciBlbCB0aWVtcG8gcXVlIGR1cmUgZWwgZGVyZWNobyBQYXRyaW1vbmlhbCBkZWwgYXV0b3I7ICBsYSBjdWFsIHBvZHLDoSAgIGRhcnNlICBwb3IgdGVybWluYWRhICBwcmV2aWEgIHNvbGljaXR1ZCAgIGEgbGEgVW5pdmVyc2lkYWQgcG9yIGVzY3JpdG8gY29uIHVuYSBhbnRlbGFjacOzbiBkZSBkb3MgKDIpIG1lc2VzIGFudGVzIGRlbCB2ZW5jaW1pZW50byBkZWwgcGxhem8gIGluaWNpYWwgbyBlbCBkZSBzdShzKSBwcsOzcnJvZ2EocykuICANCg0KYikgTGEgVW5pdmVyc2lkYWQgRGlzdHJpdGFsIEZyYW5jaXNjbyBKb3PDqSBkZSBDYWxkYXMgcG9kcsOhICBwdWJsaWNhciBsYSBvYnJhIGVuIGxhcyBkaXN0aW50YXMgdmVyc2lvbmVzIHJlcXVlcmlkYXMgKGRpZ2l0YWwsIGltcHJlc28sIGVsZWN0csOzbmljbyB1IG90cm8gbWVkaW8gY29ub2NpZG8gbyBwb3IgY29ub2NlcikgIHBvciBlbCBSZXBvc2l0b3JpbyBJbnN0aXR1Y2lvbmFsLCAgTGEgVW5pdmVyc2lkYWQgbm8gc2Vyw6EgcmVzcG9uc2FibGUgZW4gZWwgZXZlbnRvIHF1ZSBlbCAgZG9jdW1lbnRvIGFwYXJlemNhIHJlZmVyZW5jaWFkbyBlbiBtb3RvcmVzIGRlIGLDunNxdWVkYSBvIHJlcG9zaXRvcmlvcyAgZGlmZXJlbnRlcyBhbCBSZXBvc2l0b3JpbyBJbnN0aXR1Y2lvbmFsLCB1bmEgdmV6IGVsKG9zKSBhdXRvcihlcykgIHNvbGljaXRlbiBzdSBlbGltaW5hY2nDs24gZGVsIFJlcG9zaXRvcmlvIGRlIGxhIFVuaXZlcnNpZGFkLCBkYWRvIHF1ZSAgbGEgbWlzbWEgc2Vyw6EgcHVibGljYWRhIGVuICBJbnRlcm5ldC4gDQoNCmMpIExhIGF1dG9yaXphY2nDs24gc2UgaGFjZSBhIHTDrXR1bG8gZ3JhdHVpdG8sIHBvciBsbyB0YW50bywgbG9zIGF1dG9yZXMgcmVudW5jaWFuIGEgcmVjaWJpciBiZW5lZmljaW8gYWxndW5vIHBvciBsYSBwdWJsaWNhY2nDs24sIGRpc3RyaWJ1Y2nDs24sIGNvbXVuaWNhY2nDs24gIHDDumJsaWNhIHkgY3VhbHF1aWVyIG90cm8gdXNvIHF1ZSBzZSBoYWdhIGVuIGxvcyB0w6lybWlub3MgZGUgbGEgcHJlc2VudGUgbGljZW5jaWEgeSBkZSBsYSBsaWNlbmNpYSAgZGUgdXNvIGNvbiBxdWUgc2UgcHVibGljYSAoQ3JlYXRpdmUgQ29tbW9ucykuDQoNCmQpIExvcyBjb250ZW5pZG9zIHB1YmxpY2Fkb3MgZW4gZWwgUmVwb3NpdG9yaW8gSW5zdGl0dWNpb25hbCBzb24gIG9icmEocykgb3JpZ2luYWwoZXMpIHNvYnJlIGxhICBjdWFsKGVzKSAgZWwob3MpIGF1dG9yKGVzKSBjb21vIHRpdHVsYXJlcyBkZSBsb3MgIGRlcmVjaG9zIGRlIGF1dG9yLCBhc3VtZW4gdG90YWwgcmVzcG9uc2FiaWxpZGFkIHBvciBlbCBjb250ZW5pZG8gZGUgc3Ugb2JyYSBhbnRlIGxhIFVuaXZlcnNpZGFkIERpc3RyaXRhbCBGcmFuY2lzY28gSm9zw6kgZGUgQ2FsZGFzIHkgYW50ZSB0ZXJjZXJvcy4gRW4gdG9kbyBjYXNvIGxhIFVuaXZlcnNpZGFkIEZyYW5jaXNjbyBKb3PDqSBkZSBDYWxkYXMgc2UgY29tcHJvbWV0ZSBhIGluZGljYXIgc2llbXByZSBsYSBhdXRvcsOtYSBpbmNsdXllbmRvIGVsIG5vbWJyZSBkZWwgYXV0b3IgeSBsYSBmZWNoYSBkZSBwdWJsaWNhY2nDs24uDQoNCmUpIExhICBVbml2ZXJzaWRhZCBEaXN0cml0YWwgRnJhbmNpc2NvIEpvc8OpIGRlIENhbGRhcyBwb2Ryw6EgIGluY2x1aXIgbGEgb2JyYSBlbiBsb3Mgw61uZGljZXMgeSBidXNjYWRvcmVzIHF1ZSBlc3RpbWVuIG5lY2VzYXJpb3MgcGFyYSBtYXhpbWl6YXIgbGEgdmlzaWJpbGlkYWQgZWwgdXNvIHkgZWwgaW1wYWN0byBkZSBsYSBwcm9kdWNjacOzbiBjaWVudMOtZmljYSwgYXJ0w61zdGljYSB5IGFjYWTDqW1pY2EgZW4gbGEgY29tdW5pZGFkIGxvY2FsLCBuYWNpb25hbCBvIGludGVybmFjaW9uYWwuIA0KDQpmKSBMYSBVbml2ZXJzaWRhZCBEaXN0cml0YWwgRnJhbmNpc2NvIEpvc8OpIGRlIENhbGRhcyBwb2Ryw6EgY29udmVydGlyIGxhIG9icmEgIGEgY3VhbHF1aWVyIG1lZGlvIG8gZm9ybWF0byBjb24gZWwgZmluICBkZSBzdSBwcmVzZXJ2YWNpw7NuIGVuIGVsIHRpZW1wbyBxdWUgbGEgcHJlc2VudGUgbGljZW5jaWEgeSBsYSBkZSBzdXMgcHLDs3Jyb2dhcy4NCkNvbiBiYXNlIGVuIGxvIGFudGVyaW9yIGF1dG9yaXrDsyBsYSBwdWJsaWNhY2nDs24geSBjb25zdWx0YSBkZSBsYSBvYnJhICB0aXR1bGFkYSBfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18NCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXw0KDQogQSBmYXZvciBkZWwgIFJlcG9zaXRvcmlvIEluc3RpdHVjaW9uYWwgZGUgbGEgVW5pdmVyc2lkYWQgRGlzdHJpdGFsIEZyYW5jaXNjbyBKb3PDqSBkZSBDYWxkYXMgeSAgZGUgc3VzIHVzdWFyaW9zLCAgIGN1eW8ocykgIGF1dG9yKGVzKSBzb246IA0KQXV0b3IJQXBlbGxpZG9zCU5vbWJyZXMNCjEJCQ0KMgkJDQozCQkNCg0KYSkgQXV0b3Jpem8gcXVlIGxhIG9icmEgc2VhIHB1ZXN0YSBhIGRpc3Bvc2ljacOzbiBkZWwgcMO6YmxpY28gZW4gbG9zIHTDqXJtaW5vcyBhdXRvcml6YWRvcyBlbiBsb3MgbGl0ZXJhbGVzIGFudGVyaW9yZXMsICBiYWpvIGxvcyBsw61taXRlcyBkZWZpbmlkb3MgcG9yIGxhIFVuaXZlcnNpZGFkIERpc3RyaXRhbCBGcmFuY2lzY28gSm9zw6kgZGUgQ2FsZGFzIGVuIGxhcyDigJxDb25kaWNpb25lcyBkZSB1c28gZGUgZXN0cmljdG8gY3VtcGxpbWllbnRv4oCdIGRlIGxvcyByZWN1cnNvcyBwdWJsaWNhZG9zIGVuIFJlcG9zaXRvcmlvIEluc3RpdHVjaW9uYWwgUklVRCwgY3V5byB0ZXh0byBjb21wbGV0byBzZSBwdWVkZSBjb25zdWx0YXIgZW4gaHR0cDovL3JlcG9zaXRvcnkudWRpc3RyaXRhbC5lZHUuY28vDQoNCmIpIENvbm96Y28geSBhY2VwdG8gcXVlIG90b3JnbyB1bmEgbGljZW5jaWEgZXNwZWNpYWwgcGFyYSBwdWJsaWNhY2nDs24gZGUgb2JyYXMgZW4gZWwgUmVwb3NpdG9yaW8gSW5zdGl0dWNpb25hbCBkZSBsYSBVbml2ZXJzaWRhZCBEaXN0cml0YWwgRnJhbmNpc2NvIEpvc8OpIGRlIENhbGRhcywgbGljZW5jaWEgICBkZSBsYSBjdWFsIGhlIG9idGVuaWRvIHVuYSBjb3BpYS4NCg0KYykgIE1hbmlmaWVzdG8gbWkgdG90YWwgYWN1ZXJkbyBjb24gbGFzIGNvbmRpY2lvbmVzIGRlIHVzbyB5IHB1YmxpY2FjacOzbiBlbiBlbCBSZXBvc2l0b3JpbyBJbnN0aXR1Y2lvbmFsIGRlIGxhIFVuaXZlcnNpZGFkIERpc3RyaXRhbCBGcmFuY2lzY28gSm9zw6kgZGUgQ2FsZGFzIHF1ZSBzZSBkZXNjcmliZW4geSBleHBsaWNhbiBlbiBlbCBwcmVzZW50ZSBkb2N1bWVudG8uDQoNCmcpIFF1ZSBjb25vemNvICAgbGEgbm9ybWF0aXZpZGFkIGludGVybmEgZGUgbGEgVW5pdmVyc2lkYWQgRGlzdHJpdGFsIEZyYW5jaXNjbyBKb3PDqSBkZSBDYWxkYXMgcmVsYXRpdm8gYSBwcm9waWVkYWQgIGludGVsZWN0dWFsIHJlZ3VsYWRhIHBvciBlbCBBY3VlcmRvIDAwNCBkZSAyMDEyIGRlbCBDU1UsIEFjdWVyZG8gMDIzIGRlIDIwMTIgZGVsIENTVSBzb2JyZSBQb2zDrXRpY2EgRWRpdG9yaWFsLCBBY3VlcmRvIDAyNiAgZGVsIDMxIGRlIGp1bGlvIGRlIDIwMTIgc29icmUgZWwgcHJvY2VkaW1pZW50byBwYXJhIGxhIHB1YmxpY2FjacOzbiBkZSB0ZXNpcyBkZSBwb3N0Z3JhZG8gZGUgbG9zIGVzdHVkaWFudGVzIGRlIGxhIFVuaXZlcnNpZGFkIERpc3RyaXRhbCBGcmFuY2lzY28gSm9zw6kgZGUgQ2FsZGFzLCAgQWN1ZXJkbyAwMzAgZGVsIDAzIGRlIGRpY2llbWJyZSBkZSAyMDEzIHBvciBtZWRpbyBkZWwgY3VhbCBzZSBjcmVhIGVsIFJlcG9zaXRvcmlvIEluc3RpdHVjaW9uYWwgZGUgbGEgVW5pdmVyc2lkYWQgRGlzdHJpdGFsIEZyYW5jaXNjbyBKb3PDqSBkZSBDYWxkYXMgeSBsYXMgZGVtw6FzIG5vcm1hcyBjb25jb3JkYW50ZSB5IGNvbXBsZW1lbnRhcmlhcyBxdWUgcmlnZW4gYWwgcmVzcGVjdG8uIEVzdG9zIGRvY3VtZW50b3MgcG9kcsOhbiBzZXIgY29uc3VsdGFkb3MgeSBkZXNjYXJnYWRvcyBlbiBlbCBwb3J0YWwgd2ViIGRlIGxhIGJpYmxpb3RlY2EgaHR0cDovL3Npc3RlbWFkZWJpYmxpb3RlY2FzLnVkaXN0cml0YWwuZWR1LmNvLyAgDQoNClNJIEVMIERPQ1VNRU5UTyBTRSBCQVNBIEVOIFVOIFRSQUJBSk8gUVVFIEhBIFNJRE8gUEFUUk9DSU5BRE8gTyBBUE9ZQURPIFBPUiBVTkEgQUdFTkNJQSBPIFVOQSBPUkdBTklaQUNJw5NOLCBDT04gRVhDRVBDScOTTiBERSBMQSBVTklWRVJTSURBRCBESVNUUklUQUwgRlJBTkNJU0NPIEpPU0UgREUgQ0FMREFTLCBMT1MgQVVUT1JFUyBHQVJBTlRJWkFOIFFVRSBTRSBIQSBDVU1QTElETyBDT04gTE9TIA0KREVSRUNIT1MgWSBPQkxJR0FDSU9ORVMgUkVRVUVSSURPUyBQT1IgRUwgUkVTUEVDVElWTyBDT05UUkFUTyBPIEFDVUVSRE8uDQpFbiBjb25zdGFuY2lhIGRlIGxvIGFudGVyaW9yLCBmaXJtbyAoYW1vcykgZWwgcHJlc2VudGUgZG9jdW1lbnRvIGEgbG9zIA0KDQpGSVJNQSBERSBMT1MgVElUVUxBUkVTIERFIERFUkVDSE9TIERFIEFVVE9SDQoNCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXyAgIEMuQy4gTm8uIF9fX19fX19fX19fX19fX19fXw0KX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fICAgQy5DLiBOby4gX19fX19fX19fX19fX19fX19fDQpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18gICBDLkMuIE5vLiBfX19fX19fX19fX19fX19fX18NCg0KQ29ycmVvIEVsZWN0csOzbmljbyBJbnN0aXR1Y2lvbmFsIGRlbCBBdXRvciAoZXMpOg0KQXV0b3IJQ29ycmVvIEVsZWN0csOzbmljbyANCjEJDQoyCQ0KMwkNCg0KTm90YTogRW4gY2FzbyBxdWUgbm8gZXN0w6kgZGUgYWN1ZXJkbyBjb24gbGFzIGNvbmRpY2lvbmVzIGRlIGxhIHByZXNlbnRlIGxpY2VuY2lhLCBqdXN0aWZpcXVlIGxvcyBtb3Rpdm9zIHBvciBsb3MgY3VhbGVzIGVsIGRvY3VtZW50byB5IHN1cyBhbmV4b3Mgbm8gcHVlZGVuIHNlciBwdWJsaWNhZG9zIGVuIGVsIFJlcG9zaXRvcmlvIEluc3RpdHVjaW9uYWwgZGUgbGEgVW5pdmVyc2lkYWQgRGlzdHJpdGFsIEZyYW5jaXNjbyBKb3PDqSBkZSBDYWxkYXMgUklVRA0K |