Joint position control strategy validation applied in a 6 DOF simulated robotic arm
Esta investigación pretende validar un controlador de posición multivariante desacoplado para las distintas articulaciones de un brazo robótico de 6 DOFs de Universal Robots. El modelado del brazo robótico (la planta) se consigue mediante un conjunto de funciones de transferencia que representan los...
- Autores:
-
Velasquez Rios, Jorge Alejandro
- Tipo de recurso:
- Trabajo de grado de pregrado
- Fecha de publicación:
- 2024
- Institución:
- Universidad Tecnológica de Pereira
- Repositorio:
- Repositorio Institucional UTP
- Idioma:
- eng
- OAI Identifier:
- oai:repositorio.utp.edu.co:11059/15211
- Acceso en línea:
- https://hdl.handle.net/11059/15211
https://repositorio.utp.edu.co/home
- Palabra clave:
- 620 - Ingeniería y operaciones afines::629 - Otras ramas de la ingeniería
Robótica - Factores humanos
Manos robóticas
Transfer functions
Decoupled multivariate position controller
6 DOFs Universal Robots robotic arm
Transfer functions
Motors driving each joint
Flexible calibration
Continuous-time validation
Simulink
Discrete-time validation
Unity
Interactive 3D simulation
Dual-environment strategy
Real-world conditions
Design and testing process
Calibration points
Operating scenarios
Accurate position control
Reliable position control
Industrial applications
- Rights
- openAccess
- License
- Atribución-NoComercial-SinDerivadas 4.0 Internacional (CC BY-NC-ND 4.0)
id |
UTP2_f58bab758c18db0cd42d3dc8b8408128 |
---|---|
oai_identifier_str |
oai:repositorio.utp.edu.co:11059/15211 |
network_acronym_str |
UTP2 |
network_name_str |
Repositorio Institucional UTP |
repository_id_str |
|
dc.title.eng.fl_str_mv |
Joint position control strategy validation applied in a 6 DOF simulated robotic arm |
title |
Joint position control strategy validation applied in a 6 DOF simulated robotic arm |
spellingShingle |
Joint position control strategy validation applied in a 6 DOF simulated robotic arm 620 - Ingeniería y operaciones afines::629 - Otras ramas de la ingeniería Robótica - Factores humanos Manos robóticas Transfer functions Decoupled multivariate position controller 6 DOFs Universal Robots robotic arm Transfer functions Motors driving each joint Flexible calibration Continuous-time validation Simulink Discrete-time validation Unity Interactive 3D simulation Dual-environment strategy Real-world conditions Design and testing process Calibration points Operating scenarios Accurate position control Reliable position control Industrial applications |
title_short |
Joint position control strategy validation applied in a 6 DOF simulated robotic arm |
title_full |
Joint position control strategy validation applied in a 6 DOF simulated robotic arm |
title_fullStr |
Joint position control strategy validation applied in a 6 DOF simulated robotic arm |
title_full_unstemmed |
Joint position control strategy validation applied in a 6 DOF simulated robotic arm |
title_sort |
Joint position control strategy validation applied in a 6 DOF simulated robotic arm |
dc.creator.fl_str_mv |
Velasquez Rios, Jorge Alejandro |
dc.contributor.advisor.none.fl_str_mv |
Giraldo Suárez, Eduardo Velarde Gomez, Sergio |
dc.contributor.author.none.fl_str_mv |
Velasquez Rios, Jorge Alejandro |
dc.subject.ddc.none.fl_str_mv |
620 - Ingeniería y operaciones afines::629 - Otras ramas de la ingeniería |
topic |
620 - Ingeniería y operaciones afines::629 - Otras ramas de la ingeniería Robótica - Factores humanos Manos robóticas Transfer functions Decoupled multivariate position controller 6 DOFs Universal Robots robotic arm Transfer functions Motors driving each joint Flexible calibration Continuous-time validation Simulink Discrete-time validation Unity Interactive 3D simulation Dual-environment strategy Real-world conditions Design and testing process Calibration points Operating scenarios Accurate position control Reliable position control Industrial applications |
dc.subject.armarc.none.fl_str_mv |
Robótica - Factores humanos Manos robóticas Transfer functions |
dc.subject.proposal.eng.fl_str_mv |
Decoupled multivariate position controller 6 DOFs Universal Robots robotic arm Transfer functions Motors driving each joint Flexible calibration Continuous-time validation Simulink Discrete-time validation Unity Interactive 3D simulation Dual-environment strategy Real-world conditions Design and testing process Calibration points Operating scenarios Accurate position control Reliable position control Industrial applications |
description |
Esta investigación pretende validar un controlador de posición multivariante desacoplado para las distintas articulaciones de un brazo robótico de 6 DOFs de Universal Robots. El modelado del brazo robótico (la planta) se consigue mediante un conjunto de funciones de transferencia que representan los motores que accionan cada articulación. Este enfoque permite una calibración flexible y la adaptación a diversas configuraciones. La validación del controlador se lleva a cabo en dos entornos distintos para comprender el comportamiento del controlador en diferentes contextos temporales. La validación en tiempo continuo se lleva a cabo con Simulink, mientras que la validación en tiempo discreto se realiza en Unity, que permite una simulación 3D interactiva. Esta estrategia de doble entorno permite conocer el comportamiento del controlador en condiciones reales y facilita el proceso de diseño y ensayo. El proyecto se divide en tres etapas clave, cada una de las cuales sirve como punto de calibración para evaluar el rendimiento del controlador. Estas etapas simulan distintos escenarios de funcionamiento, garantizando que el controlador pueda adaptarse a tareas y condiciones variadas. El objetivo final es garantizar que el controlador pueda mantener un control de posición preciso y fiable para una amplia gama de aplicaciones industriales. |
publishDate |
2024 |
dc.date.accessioned.none.fl_str_mv |
2024-07-16T16:55:41Z |
dc.date.available.none.fl_str_mv |
2024-07-16T16:55:41Z |
dc.date.issued.none.fl_str_mv |
2024 |
dc.type.none.fl_str_mv |
Trabajo de grado - Pregrado |
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.none.fl_str_mv |
Text |
dc.type.driver.none.fl_str_mv |
info:eu-repo/semantics/bachelorThesis |
format |
http://purl.org/coar/resource_type/c_7a1f |
status_str |
acceptedVersion |
dc.identifier.uri.none.fl_str_mv |
https://hdl.handle.net/11059/15211 |
dc.identifier.instname.none.fl_str_mv |
Universidad Tecnológica de Pereira |
dc.identifier.reponame.none.fl_str_mv |
Repositorio Universidad Tecnológica de Pereira |
dc.identifier.repourl.none.fl_str_mv |
https://repositorio.utp.edu.co/home |
url |
https://hdl.handle.net/11059/15211 https://repositorio.utp.edu.co/home |
identifier_str_mv |
Universidad Tecnológica de Pereira Repositorio Universidad Tecnológica de Pereira |
dc.language.iso.none.fl_str_mv |
eng |
language |
eng |
dc.relation.references.none.fl_str_mv |
Andrew J Kurdila and Pinhas Ben-Tzvi. Dynamics and Control of Robotic Systems. John Wiley and Sons, 1 edition, 10 2019. ISBN 9781119524953. Andre Luiz Gioia Morrell, Alexander Charles Morrell-Junior, Allan Gioia Morrell, Jose Mauricio Freitas Mendes, Francisco Tustumi, Luiz Gustavo De- Oliveira-e silva, and Alexander Morrell. The history of robotic surgery and its evolution: When illusion becomes reality. Revista do Colegio Brasileiro de Cirurgioes, 48:1–9, 2021. ISSN 18094546. doi: 10.1590/0100-6991e-20202798. 360 Market Updates. Robotics Market 2023: Scope and PESTAL Analysis by 2030, 5 2023. URL https://www.marketwatch.com/press-release/ robotics-market-2023-scope-and-pestal-analysis-by-2030-2023-05-23. imarc. Robotics Market: Global Industry Trends, Share, Size, Growth, Opportunity and Forecast 2023-2028. 2023. URL https://www.imarcgroup.com/ robotics-market. Factmr. Robots arm market, 2023. URL https://www.factmr.com/report/ robot-arms-market. Universal Robots. Main Type Of Robotic Arms, . URL https://www.universal-robots.com/in/blog/ main-type-of-robotic-arms-universal-robots/. Universal Robots. 6 Types of Industrial Robotic Arms and Their Applications, . URL https://www.universal-robots.com/in/blog/ types-of-robotic-arms/. Piclist. Robotic arms, 2024. URL http://www.piclist.com/techref/robot/ arms.htm. Ravi Rao. 7 Types of Industrial Robots: Advantages, Disadvantages, Applications, and More, 2 2023. URL https://www.wevolver.com/article/ 7-types-of-industrial-robots-advantages-disadvantages-applications-and-more Marijke Bergman, Elsbeth De Joode, Marijke De Geus, and Janienke Sturm. Human-cobot teams: Exploring design principles and behaviour models to facilitate the understanding of non-verbal communication from cobots. CHIRA 2019 - Proceedings of the 3rd International Conference on Computer-Human Interaction Research and Applications, pages 191–198, 2019. doi: 10.5220/ 0008363201910198. Universal Robots. Know Your Machine: Industrial Robots vs.Collaborative Robots, . URL https://www.universal-robots.com/blog/ know-your-machine-industrial-robots-vs-cobots/. Astrid Weiss, Ann Kathrin Wortmeier, and Bettina Kubicek. Cobots in Industry 4.0: A Roadmap for Future Practice Studies on Human-Robot Collaboration. IEEE Transactions on Human-Machine Systems, 51(4), 2021. ISSN 21682305. doi: 10.1109/THMS.2021.3092684. Kevin David Ortega Quiñones. Seguimiento visual de un manipulador serial utilizando redes neuronales profundas. Technical report, 2023. Reem J. Alattas, Sarosh Patel, and Tarek M. Sobh. Evolutionary Modular Robotics: Survey and Analysis. Journal of Intelligent and Robotic Systems: Theory and Applications, 95(3-4), 2019. ISSN 15730409. doi: 10.1007/s10846-018-0902-9. Arif Sirinterlikci. Developing and Teaching Modular Robots. Technical report. TANYA M ANANDAN. Robot industry trends and potential for the future | Control Engineering, 4 2021. URL https://www.controleng.com/articles/ robot-industry-trends-and-potential-for-the-future/. Pablo López García, Stein Crispel, Elias Saerens, Tom Verstraten, and Dirk Lefeber. Compact Gearboxes for Modern Robotics: A Review, 8 2020. ISSN 22969144. Dongbo Xie, Liang Chen, Lichao Liu, Liqing Chen, and Hai Wang. Actuators and Sensors for Application in Agricultural Robots: A Review. Machines, 10 (10), 10 2022. ISSN 20751702. doi: 10.3390/MACHINES10100913. Sergio Velarde Gómez. Design, construction, analysis and control of a 3d printed permanent magnet motor prototype. PhD thesis, Universidad Tecnologica de Pereira, Pereira, 2022. URL https://hdl.handle.net/11059/14604. Saeed Khorashadizadeh and Mahdi Sadeghijaleh. Adaptive fuzzy tracking control of robot manipulators actuated by permanent magnet synchronous motors R. Computers and Electrical Engineering, 72:100–111, 2018. doi: 10.1016/j. compeleceng.2018.09.010. URL https://doi.org/10.1016/j.compeleceng. 2018.09.010. IEEE Staff. 2019 IEEE 3rd Information Technology, Networking, Elec- tronic and Automation Control Conference (ITNEC). IEEE, 2019. ISBN 9781538662434. Jessica Villalobos, Irma Y. Sanchez, and Fernando Martell. Singularity Analysis and Complete Methods to Compute the Inverse Kinematics for a 6-DOF UR/TM-Type Robot. Robotics 2022, Vol. 11, Page 137, 11 (6):137, 11 2022. ISSN 2218-6581. doi: 10.3390/ROBOTICS11060137. URL https://www.mdpi.com/2218-6581/11/6/137/htmhttps://www.mdpi. com/2218-6581/11/6/137. Aravinthkumar T, Suresh M, and Vinod B. Kinematic Analysis of 6 DOF Articulated Robotic Arm. International Research Journal of Multidisciplinary Technovation, pages 1–5, 1 2021. doi: 10.34256/irjmt2111. Sahar Jenhani, Hassene Gritli, and Giuseppe Carbone. Position Feedback Control of Lagrangian Robotic Systems via an Affine PD-Based Control Law. Part 2: Improved Results. In 2022 IEEE 2nd International Maghreb Meeting of the Conference on Sciences and Techniques of Automatic Control and Com- puter Engineering, MI-STA 2022 - Proceeding, pages 177–182. Institute of Electrical and Electronics Engineers Inc., 2022. ISBN 9781665479189. doi: 10.1109/MI-STA54861.2022.9837628. Bruno Siciliano, Lorenzo Sciavicco, Luigi Villani, and Giuseppe Oriolo. Robotics: Modelling, planning and control. In Advanced Textbooks in Con- trol and Signal Processing, number 9781846286414. 2009. doi: 10.5860/choice. 46-6226. Meng Chien Wu, Bing Gang Jhong, and Mei Yung Chen. Apply Adaptive Neural Network PID Controllers for a 6DOF Robotic Arm. In ICSSE 2022 - 2022 International Conference on System Science and Engineering, pages 79–83. Institute of Electrical and Electronics Engineers Inc., 2022. ISBN 9781665488525. doi: 10.1109/ICSSE55923.2022.9948251. Universal Robots. ¿CUÁNTO CUESTA UN ROBOT COLABORATIVO? ¡VEÁMOSLO!, 2 2022. UnchainedRobotics. ReBeL® cobot 4 DOF, 8 2023. Junji Oaki. Rigid-joint-model feedforward with elastic-joint-model feedback for motion control of a 6-dof industrial robot. In IFAC-PapersOnLine, volume 53, pages 8462–8469. Elsevier B.V., 2020. doi: 10.1016/j.ifacol.2020.12.1431. Jialin Lin, Xiaoxu Liu, and Zhongxing Ren. Fuzzy pid control for multi-joint robotic arm. In 2022 IEEE 20th International Conference on Industrial Infor- matics (INDIN), pages 723–728, 2022. doi: 10.1109/INDIN51773.2022.9976122. Zexin Huang, Fenglei Li, and Lin Xu. Modeling and simulation of 6 DOF robotic arm based on gazebo. In 2020 6th International Conference on Control, Automation and Robotics, ICCAR 2020, volume 2020-April, 2020. doi: 10.1109/ ICCAR49639.2020.9107989. Filemon Arenas-Rosales, Fernando Martell-Chavez, Irma Y. Sanchez-Chavez, and Carlos A. Paredes-Orta. Virtual UR5 Robot for Online Learning of Inverse Kinematics and Independent Joint Control Validated with FSM Position Control †. Robotics, 12(1), 2023. ISSN 22186581. doi: 10.3390/robotics12010023. Ratchatin Chancharoen, Kantawatchr Chaiprabha, Lunchakorn Wuttisittikulkij, Widhyakorn Asdornwised, Muhammad Saadi, and Gridsada Phanomchoeng. Digital twin for a collaborative painting robot. Sensors (Basel, Switzerland), 23, 2022. URL https://api.semanticscholar.org/CorpusID: 254959218. Elisabeth Ganal, Lenny Siol, and Birgit Lugrin. Peput: A unity toolkit for the social robot pepper. In 2023 32nd IEEE International Conference on Robot and Human Interactive Communication (RO-MAN), pages 1012–1019, 2023. doi: 10.1109/RO-MAN57019.2023.10309447. Kichang Lee, Jiyoung Lee, Bungchul Woo, Jeongwook Lee, Young Jin Lee, and Syungkwon Ra. Modeling and Control of a Articulated Robot Arm with Embedded Joint Actuators. In 2018 International Conference on Information and Communication Technology Robotics, ICT-ROBOT 2018, 2018. doi: 10. 1109/ICT-ROBOT.2018.8549903. Kevin M Lynch and Frank C. Park. Modern Robotics: Mechanics, Planning, and Control. Cambridge Univeristy Press, 2017. ISBN 978-1107156302. Universal Robots. Dh parameters for calculations of kinematics and dynamics, 2024. URL https://www. universal-robots.com/articles/ur/application-installation/ dh-parameters-for-calculations-of-kinematics-and-dynamics. Matlab. What is inverse kinematics. URL https://la.mathworks.com/ discovery/inverse-kinematics.html. The MathWorks Inc. Inverse kinematics algorithms, 2024. URL https:// la.mathworks.com/help/robotics/ug/inverse-kinematics-algorithms. html?lang=en. Jasbir Singh Arora. Chapter 11 - More on Numerical Methods for Unconstrained Optimum Design, pages 455–509. Academic Press, fourth edition edition, 2017. ISBN 978-0-12-800806-5. doi: https://doi.org/10.1016/B978-0-12-800806-5. 00011-1. URL https://www.sciencedirect.com/science/article/pii/ B9780128008065000111. The MathWorks Inc. Modelo de robot de árbol de cuerpo rígido, 2024. URL https://la.mathworks.com/help/robotics/ug/ rigid-body-tree-robot-model.html Peter I. Corke. Robotics, Vision & Control: Fundamental Algorithms in MAT- LAB. Springer, second edition, 2017. ISBN 978-3-319-54413-7. The MathWorks Inc. loadrobot, 2024. URL https://la.mathworks.com/ help/robotics/ref/loadrobot.html. The MathWorks Inc. Simscape, 2024. URL https://la.mathworks.com/ products/simscape.html. The MathWorks Inc. Robotic system toolbox, 2024. URL https://la. mathworks.com/products/robotics.html. Damien Mazeas. Inverse Kinematics (IK) solution for a 6-DOF robot arm (UR16e) in Unity 3D. 4 2023. doi: 10.17862/cranfield.rd.22599850.v2. URL https://cord.cranfield.ac.uk/articles/software/Inverse_ Kinematics_IK_solution_for_a_6-DOF_robot_arm_UR16e_in_Unity_3D/ 22599850. |
dc.rights.license.none.fl_str_mv |
Atribución-NoComercial-SinDerivadas 4.0 Internacional (CC BY-NC-ND 4.0) |
dc.rights.uri.none.fl_str_mv |
https://creativecommons.org/licenses/by-nc-nd/4.0/ |
dc.rights.coar.none.fl_str_mv |
http://purl.org/coar/access_right/c_abf2 |
dc.rights.accessrights.none.fl_str_mv |
info:eu-repo/semantics/openAccess |
rights_invalid_str_mv |
Atribución-NoComercial-SinDerivadas 4.0 Internacional (CC BY-NC-ND 4.0) https://creativecommons.org/licenses/by-nc-nd/4.0/ http://purl.org/coar/access_right/c_abf2 |
eu_rights_str_mv |
openAccess |
dc.format.extent.none.fl_str_mv |
52 Páginas |
dc.format.mimetype.none.fl_str_mv |
application/pdf |
dc.publisher.none.fl_str_mv |
Universidad Tecnológica de Pereira |
dc.publisher.program.none.fl_str_mv |
Ingeniería Eléctrica |
dc.publisher.faculty.none.fl_str_mv |
Facultad de Ingenierías |
dc.publisher.place.none.fl_str_mv |
Pereira |
publisher.none.fl_str_mv |
Universidad Tecnológica de Pereira |
institution |
Universidad Tecnológica de Pereira |
bitstream.url.fl_str_mv |
https://dspace7-utp.metabuscador.org/bitstreams/fcf0574d-b88d-4f78-a2ac-c9069135bdaf/download https://dspace7-utp.metabuscador.org/bitstreams/01d43ad7-e027-45a7-8b56-2abbf192a634/download https://dspace7-utp.metabuscador.org/bitstreams/8483a301-f696-41d6-9625-e139019cbca9/download https://dspace7-utp.metabuscador.org/bitstreams/b2bd9204-1f96-45f7-9041-54d49f1964f0/download |
bitstream.checksum.fl_str_mv |
04d4cc5e1a72bf5089e011c6642e1b01 2f9959eaf5b71fae44bbf9ec84150c7a b317884ed7af41e1156cd39d4fc17453 579278abcee8e1a161828e234742b791 |
bitstream.checksumAlgorithm.fl_str_mv |
MD5 MD5 MD5 MD5 |
repository.name.fl_str_mv |
Repositorio de la Universidad Tecnológica de Pereira |
repository.mail.fl_str_mv |
bdigital@metabiblioteca.com |
_version_ |
1814021996459065344 |
spelling |
Atribución-NoComercial-SinDerivadas 4.0 Internacional (CC BY-NC-ND 4.0)Manifiesto (Manifestamos) en este documento la voluntad de autorizar a la Biblioteca Jorge Roa Martínez de la Universidad Tecnológica de Pereira la publicación en el Repositorio institucional (http://biblioteca.utp.edu.co), la versión electrónica de la OBRA titulada: La Universidad Tecnológica de Pereira, entidad académica sin ánimo de lucro, queda por lo tanto facultada para ejercer plenamente la autorización anteriormente descrita en su actividad ordinaria de investigación, docencia y publicación. La autorización otorgada se ajusta a lo que establece la Ley 23 de 1982. Con todo, en mi (nuestra) condición de autor (es) me (nos) reservo (reservamos) los derechos morales de la OBRA antes citada con arreglo al artículo 30 de la Ley 23 de 1982. En concordancia suscribo (suscribimos) este documento en el momento mismo que hago (hacemos) entrega de mi (nuestra) OBRA a la Biblioteca “Jorge Roa Martínez” de la Universidad Tecnológica de Pereira. Manifiesto (manifestamos) que la OBRA objeto de la presente autorización es original y la realicé (realizamos) sin violar o usurpar derechos de autor de terceros, por lo tanto, mi (nuestra) OBRA es de exclusiva autoría y tiene la titularidad sobre la misma. PARAGRAFO: En caso de presentarse cualquier reclamación o acción por parte de un tercero en cuanto a los derechos de autor sobre la OBRA en cuestión, El (los) Autor(es), asumirá (n) toda la responsabilidad, y saldrá (n) en defensa de los derechos aquí autorizados. Para todos los efectos La Universidad actúa como un tercero de buena fe. Manifiesto (manifestamos) que soy (somos) conocedor (es) del alcance mundial de la publicación de mi (nuestra) obra en internet y específicamente en el Repositorio Institucional. Manifiesto (manifestamos) que mi (nuestra) OBRA no está limitada ni protegida por ningún acuerdo de confidencialidad, no es un secreto industrial, no es una invención patentable y no cuenta con ningún otro tipo de restricción para su publicación. Acepto (aceptamos) que la autorización se hace a título gratuito, por lo tanto, renuncio (renunciamos) a recibir pago alguno por su distribución, comunicación pública y cualquier otro uso que se haga en los términos de la presente licencia. Autorizo (autorizamos) a la Universidad Tecnológica de Pereira para incluir la presente OBRA en los índices y buscadores que la Universidad estime convenientes para su visibilidad. Acepto (aceptamos) que la Universidad Tecnológica de Pereira convierta el documento en cualquier medio o formato para su preservación digital. En constancia de lo anterior, autorizo (autorizamos) publicar mi (nuestra) OBRA bajo las Licencias Creative Commons 4.0 (cuyo texto se puede consultar en: http://creativecommons.org/licenses/): Se autoriza el uso comercial de mi (nuestra) OBRA: SI____ NO_____ Se autorizan modificaciones de mi (nuestra) OBRA: SI____ NO_____ “Los derechos de autor recaen sobre las obras científicas, literarias y artísticas en las cuales se comprenden las creaciones del espíritu en el campo científico, literario y artístico, cualquiera que sea el modo o forma de expresión y cualquiera que sea su destinación, tales como: los libros, folletos y otros escritos; las conferencias, alocuciones, sermones y otras obras de la misma naturaleza; las obras dramáticas o dramático-musicales; las obras coreográficas y las pantomimas; las composiciones musicales con letra o sin ella; las obras cinematográficas, a las cuales se asimilan las obras expresadas por procedimiento análogo a la cinematografía, inclusive los videogramas, las obras de dibujo, pintura, arquitectura, escultura, grabado, litografía; las obras fotográficas a las cuales se asimilan las expresas por procedimiento análogo o la fotografía; las obras de artes plásticas; las ilustraciones, mapas, planos, croquis y obras plásticas relativas a la geografía, a la topografía a la arquitectura o a las ciencias, en fin, toda producción del dominio científico, literario o artístico que puedan producirse o definirse por cualquier forma de impresión o de reproducción, por fonografía, radiotelefonía o cualquier otro medio conocido o por conocer”. (Artículo 2 de la ley 23 de 1982).https://creativecommons.org/licenses/by-nc-nd/4.0/http://purl.org/coar/access_right/c_abf2info:eu-repo/semantics/openAccessGiraldo Suárez, EduardoVelarde Gomez, SergioVelasquez Rios, Jorge Alejandro2024-07-16T16:55:41Z2024-07-16T16:55:41Z2024https://hdl.handle.net/11059/15211Universidad Tecnológica de PereiraRepositorio Universidad Tecnológica de Pereirahttps://repositorio.utp.edu.co/homeEsta investigación pretende validar un controlador de posición multivariante desacoplado para las distintas articulaciones de un brazo robótico de 6 DOFs de Universal Robots. El modelado del brazo robótico (la planta) se consigue mediante un conjunto de funciones de transferencia que representan los motores que accionan cada articulación. Este enfoque permite una calibración flexible y la adaptación a diversas configuraciones. La validación del controlador se lleva a cabo en dos entornos distintos para comprender el comportamiento del controlador en diferentes contextos temporales. La validación en tiempo continuo se lleva a cabo con Simulink, mientras que la validación en tiempo discreto se realiza en Unity, que permite una simulación 3D interactiva. Esta estrategia de doble entorno permite conocer el comportamiento del controlador en condiciones reales y facilita el proceso de diseño y ensayo. El proyecto se divide en tres etapas clave, cada una de las cuales sirve como punto de calibración para evaluar el rendimiento del controlador. Estas etapas simulan distintos escenarios de funcionamiento, garantizando que el controlador pueda adaptarse a tareas y condiciones variadas. El objetivo final es garantizar que el controlador pueda mantener un control de posición preciso y fiable para una amplia gama de aplicaciones industriales.This research seeks to validate a decoupled multivariate position controller for the various joints of a 6 DOFs Universal Robots robotic arm. The modeling of the robotic arm (the plant) is achieved through a set of transfer functions that represent the motors driving each joint. This approach allows for flexible calibration and adaptation to various configurations. The Controller's validation is carried out in two distinct environments to understand the behavior of the controller in different time contexts. Continuous-time validation is conducted using Simulink, while discrete-time validation is done in Unity, which allows for an interactive 3D simulation. This dual-environment strategy offers insights into how the controller performs under real-world conditions, and also facilitates the design and testing process. The project is divided into three key stages, each serving as a calibration point to assess the controller's performance. These stages simulate different operating scenarios, ensuring that the controller can adapt to varied tasks and conditions. The ultimate goal is to ensure that the controller can maintain accurate and reliable position control for a wide range of industrial applications.1 Introduction 2 1.1 Problem Statement . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2 1.2 Justification . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5 1.3 Objectives . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6 1.3.1 General objective . . . . . . . . . . . . . . . . . . . . . . . . . 6 1.3.2 Specific objectives . . . . . . . . . . . . . . . . . . . . . . . . . 6 1.4 State of the art . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6 1.5 Methodology . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8 2 Kinematic Analysis for a UR5e 6DOF Robotic Arm 9 2.1 Kinematic Analysis . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9 2.1.1 Denavit-Hartenberg Method . . . . . . . . . . . . . . . . . . . 10 2.2 Forward Kinematics (FK) . . . . . . . . . . . . . . . . . . . . . . . . 10 2.3 Inverse Kinematics (IK) . . . . . . . . . . . . . . . . . . . . . . . . . 13 3 Environment Configuration 16 3.1 Simulink Configurations . . . . . . . . . . . . . . . . . . . . . . . . . 16 3.1.1 RigidBody-tree data . . . . . . . . . . . . . . . . . . . . . . . 17 3.1.2 Simscape . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17 3.1.3 Robotic System Toolbox . . . . . . . . . . . . . . . . . . . . . 19 3.1.4 Simulink Subsystems implementation . . . . . . . . . . . . . . 20 3.1.5 Movement Subsystem . . . . . . . . . . . . . . . . . . . . . . . 21 3.1.6 Stages . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22 3.2 Onshape-Unity Configuration . . . . . . . . . . . . . . . . . . . . . . 24 3.2.1 Onshape 3d model . . . . . . . . . . . . . . . . . . . . . . . . 25 3.2.2 Unity design . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26 4 Analysis and Control of the simulated UR5e robotic arm 28 4.1 Continous time Controller . . . . . . . . . . . . . . . . . . . . . . . . 28 4.2 Discrete time controller . . . . . . . . . . . . . . . . . . . . . . . . . . 32 5 Conclusions and Final Remarks 38PregradoIngeniero(a) Electricista52 Páginasapplication/pdfengUniversidad Tecnológica de PereiraIngeniería EléctricaFacultad de IngenieríasPereira620 - Ingeniería y operaciones afines::629 - Otras ramas de la ingenieríaRobótica - Factores humanosManos robóticasTransfer functionsDecoupled multivariate position controller6 DOFs Universal Robots robotic armTransfer functionsMotors driving each jointFlexible calibrationContinuous-time validationSimulinkDiscrete-time validationUnityInteractive 3D simulationDual-environment strategyReal-world conditionsDesign and testing processCalibration pointsOperating scenariosAccurate position controlReliable position controlIndustrial applicationsJoint position control strategy validation applied in a 6 DOF simulated robotic armTrabajo de grado - Pregradoinfo:eu-repo/semantics/acceptedVersionhttp://purl.org/coar/resource_type/c_7a1fTextinfo:eu-repo/semantics/bachelorThesisAndrew J Kurdila and Pinhas Ben-Tzvi. Dynamics and Control of Robotic Systems. John Wiley and Sons, 1 edition, 10 2019. ISBN 9781119524953.Andre Luiz Gioia Morrell, Alexander Charles Morrell-Junior, Allan Gioia Morrell, Jose Mauricio Freitas Mendes, Francisco Tustumi, Luiz Gustavo De- Oliveira-e silva, and Alexander Morrell. The history of robotic surgery and its evolution: When illusion becomes reality. Revista do Colegio Brasileiro de Cirurgioes, 48:1–9, 2021. ISSN 18094546. doi: 10.1590/0100-6991e-20202798.360 Market Updates. Robotics Market 2023: Scope and PESTAL Analysis by 2030, 5 2023. URL https://www.marketwatch.com/press-release/ robotics-market-2023-scope-and-pestal-analysis-by-2030-2023-05-23.imarc. Robotics Market: Global Industry Trends, Share, Size, Growth, Opportunity and Forecast 2023-2028. 2023. URL https://www.imarcgroup.com/ robotics-market.Factmr. Robots arm market, 2023. URL https://www.factmr.com/report/ robot-arms-market.Universal Robots. Main Type Of Robotic Arms, . URL https://www.universal-robots.com/in/blog/ main-type-of-robotic-arms-universal-robots/.Universal Robots. 6 Types of Industrial Robotic Arms and Their Applications, . URL https://www.universal-robots.com/in/blog/ types-of-robotic-arms/.Piclist. Robotic arms, 2024. URL http://www.piclist.com/techref/robot/ arms.htm.Ravi Rao. 7 Types of Industrial Robots: Advantages, Disadvantages, Applications, and More, 2 2023. URL https://www.wevolver.com/article/ 7-types-of-industrial-robots-advantages-disadvantages-applications-and-moreMarijke Bergman, Elsbeth De Joode, Marijke De Geus, and Janienke Sturm. Human-cobot teams: Exploring design principles and behaviour models to facilitate the understanding of non-verbal communication from cobots. CHIRA 2019 - Proceedings of the 3rd International Conference on Computer-Human Interaction Research and Applications, pages 191–198, 2019. doi: 10.5220/ 0008363201910198.Universal Robots. Know Your Machine: Industrial Robots vs.Collaborative Robots, . URL https://www.universal-robots.com/blog/ know-your-machine-industrial-robots-vs-cobots/.Astrid Weiss, Ann Kathrin Wortmeier, and Bettina Kubicek. Cobots in Industry 4.0: A Roadmap for Future Practice Studies on Human-Robot Collaboration. IEEE Transactions on Human-Machine Systems, 51(4), 2021. ISSN 21682305. doi: 10.1109/THMS.2021.3092684.Kevin David Ortega Quiñones. Seguimiento visual de un manipulador serial utilizando redes neuronales profundas. Technical report, 2023.Reem J. Alattas, Sarosh Patel, and Tarek M. Sobh. Evolutionary Modular Robotics: Survey and Analysis. Journal of Intelligent and Robotic Systems: Theory and Applications, 95(3-4), 2019. ISSN 15730409. doi: 10.1007/s10846-018-0902-9.Arif Sirinterlikci. Developing and Teaching Modular Robots. Technical report.TANYA M ANANDAN. Robot industry trends and potential for the future | Control Engineering, 4 2021. URL https://www.controleng.com/articles/ robot-industry-trends-and-potential-for-the-future/.Pablo López García, Stein Crispel, Elias Saerens, Tom Verstraten, and Dirk Lefeber. Compact Gearboxes for Modern Robotics: A Review, 8 2020. ISSN 22969144.Dongbo Xie, Liang Chen, Lichao Liu, Liqing Chen, and Hai Wang. Actuators and Sensors for Application in Agricultural Robots: A Review. Machines, 10 (10), 10 2022. ISSN 20751702. doi: 10.3390/MACHINES10100913.Sergio Velarde Gómez. Design, construction, analysis and control of a 3d printed permanent magnet motor prototype. PhD thesis, Universidad Tecnologica de Pereira, Pereira, 2022. URL https://hdl.handle.net/11059/14604.Saeed Khorashadizadeh and Mahdi Sadeghijaleh. Adaptive fuzzy tracking control of robot manipulators actuated by permanent magnet synchronous motors R. Computers and Electrical Engineering, 72:100–111, 2018. doi: 10.1016/j. compeleceng.2018.09.010. URL https://doi.org/10.1016/j.compeleceng. 2018.09.010.IEEE Staff. 2019 IEEE 3rd Information Technology, Networking, Elec- tronic and Automation Control Conference (ITNEC). IEEE, 2019. ISBN 9781538662434.Jessica Villalobos, Irma Y. Sanchez, and Fernando Martell. Singularity Analysis and Complete Methods to Compute the Inverse Kinematics for a 6-DOF UR/TM-Type Robot. Robotics 2022, Vol. 11, Page 137, 11 (6):137, 11 2022. ISSN 2218-6581. doi: 10.3390/ROBOTICS11060137. URL https://www.mdpi.com/2218-6581/11/6/137/htmhttps://www.mdpi. com/2218-6581/11/6/137.Aravinthkumar T, Suresh M, and Vinod B. Kinematic Analysis of 6 DOF Articulated Robotic Arm. International Research Journal of Multidisciplinary Technovation, pages 1–5, 1 2021. doi: 10.34256/irjmt2111.Sahar Jenhani, Hassene Gritli, and Giuseppe Carbone. Position Feedback Control of Lagrangian Robotic Systems via an Affine PD-Based Control Law. Part 2: Improved Results. In 2022 IEEE 2nd International Maghreb Meeting of the Conference on Sciences and Techniques of Automatic Control and Com- puter Engineering, MI-STA 2022 - Proceeding, pages 177–182. Institute of Electrical and Electronics Engineers Inc., 2022. ISBN 9781665479189. doi: 10.1109/MI-STA54861.2022.9837628.Bruno Siciliano, Lorenzo Sciavicco, Luigi Villani, and Giuseppe Oriolo. Robotics: Modelling, planning and control. In Advanced Textbooks in Con- trol and Signal Processing, number 9781846286414. 2009. doi: 10.5860/choice. 46-6226.Meng Chien Wu, Bing Gang Jhong, and Mei Yung Chen. Apply Adaptive Neural Network PID Controllers for a 6DOF Robotic Arm. In ICSSE 2022 - 2022 International Conference on System Science and Engineering, pages 79–83. Institute of Electrical and Electronics Engineers Inc., 2022. ISBN 9781665488525. doi: 10.1109/ICSSE55923.2022.9948251.Universal Robots. ¿CUÁNTO CUESTA UN ROBOT COLABORATIVO? ¡VEÁMOSLO!, 2 2022.UnchainedRobotics. ReBeL® cobot 4 DOF, 8 2023.Junji Oaki. Rigid-joint-model feedforward with elastic-joint-model feedback for motion control of a 6-dof industrial robot. In IFAC-PapersOnLine, volume 53, pages 8462–8469. Elsevier B.V., 2020. doi: 10.1016/j.ifacol.2020.12.1431.Jialin Lin, Xiaoxu Liu, and Zhongxing Ren. Fuzzy pid control for multi-joint robotic arm. In 2022 IEEE 20th International Conference on Industrial Infor- matics (INDIN), pages 723–728, 2022. doi: 10.1109/INDIN51773.2022.9976122.Zexin Huang, Fenglei Li, and Lin Xu. Modeling and simulation of 6 DOF robotic arm based on gazebo. In 2020 6th International Conference on Control, Automation and Robotics, ICCAR 2020, volume 2020-April, 2020. doi: 10.1109/ ICCAR49639.2020.9107989.Filemon Arenas-Rosales, Fernando Martell-Chavez, Irma Y. Sanchez-Chavez, and Carlos A. Paredes-Orta. Virtual UR5 Robot for Online Learning of Inverse Kinematics and Independent Joint Control Validated with FSM Position Control †. Robotics, 12(1), 2023. ISSN 22186581. doi: 10.3390/robotics12010023.Ratchatin Chancharoen, Kantawatchr Chaiprabha, Lunchakorn Wuttisittikulkij, Widhyakorn Asdornwised, Muhammad Saadi, and Gridsada Phanomchoeng. Digital twin for a collaborative painting robot. Sensors (Basel, Switzerland), 23, 2022. URL https://api.semanticscholar.org/CorpusID: 254959218.Elisabeth Ganal, Lenny Siol, and Birgit Lugrin. Peput: A unity toolkit for the social robot pepper. In 2023 32nd IEEE International Conference on Robot and Human Interactive Communication (RO-MAN), pages 1012–1019, 2023. doi: 10.1109/RO-MAN57019.2023.10309447.Kichang Lee, Jiyoung Lee, Bungchul Woo, Jeongwook Lee, Young Jin Lee, and Syungkwon Ra. Modeling and Control of a Articulated Robot Arm with Embedded Joint Actuators. In 2018 International Conference on Information and Communication Technology Robotics, ICT-ROBOT 2018, 2018. doi: 10. 1109/ICT-ROBOT.2018.8549903.Kevin M Lynch and Frank C. Park. Modern Robotics: Mechanics, Planning, and Control. Cambridge Univeristy Press, 2017. ISBN 978-1107156302.Universal Robots. Dh parameters for calculations of kinematics and dynamics, 2024. URL https://www. universal-robots.com/articles/ur/application-installation/ dh-parameters-for-calculations-of-kinematics-and-dynamics.Matlab. What is inverse kinematics. URL https://la.mathworks.com/ discovery/inverse-kinematics.html.The MathWorks Inc. Inverse kinematics algorithms, 2024. URL https:// la.mathworks.com/help/robotics/ug/inverse-kinematics-algorithms. html?lang=en.Jasbir Singh Arora. Chapter 11 - More on Numerical Methods for Unconstrained Optimum Design, pages 455–509. Academic Press, fourth edition edition, 2017. ISBN 978-0-12-800806-5. doi: https://doi.org/10.1016/B978-0-12-800806-5. 00011-1. URL https://www.sciencedirect.com/science/article/pii/ B9780128008065000111.The MathWorks Inc. Modelo de robot de árbol de cuerpo rígido, 2024. URL https://la.mathworks.com/help/robotics/ug/ rigid-body-tree-robot-model.htmlPeter I. Corke. Robotics, Vision & Control: Fundamental Algorithms in MAT- LAB. Springer, second edition, 2017. ISBN 978-3-319-54413-7.The MathWorks Inc. loadrobot, 2024. URL https://la.mathworks.com/ help/robotics/ref/loadrobot.html.The MathWorks Inc. Simscape, 2024. URL https://la.mathworks.com/ products/simscape.html.The MathWorks Inc. Robotic system toolbox, 2024. URL https://la. mathworks.com/products/robotics.html.Damien Mazeas. Inverse Kinematics (IK) solution for a 6-DOF robot arm (UR16e) in Unity 3D. 4 2023. doi: 10.17862/cranfield.rd.22599850.v2. URL https://cord.cranfield.ac.uk/articles/software/Inverse_ Kinematics_IK_solution_for_a_6-DOF_robot_arm_UR16e_in_Unity_3D/ 22599850.PublicationORIGINALTRABAJO DE GRADO.pdfTRABAJO DE GRADO.pdfapplication/pdf2686808https://dspace7-utp.metabuscador.org/bitstreams/fcf0574d-b88d-4f78-a2ac-c9069135bdaf/download04d4cc5e1a72bf5089e011c6642e1b01MD51LICENSElicense.txtlicense.txttext/plain; charset=utf-814828https://dspace7-utp.metabuscador.org/bitstreams/01d43ad7-e027-45a7-8b56-2abbf192a634/download2f9959eaf5b71fae44bbf9ec84150c7aMD52TEXTTRABAJO DE GRADO.pdf.txtTRABAJO DE GRADO.pdf.txtExtracted texttext/plain71306https://dspace7-utp.metabuscador.org/bitstreams/8483a301-f696-41d6-9625-e139019cbca9/downloadb317884ed7af41e1156cd39d4fc17453MD53THUMBNAILTRABAJO DE GRADO.pdf.jpgTRABAJO DE GRADO.pdf.jpgGenerated Thumbnailimage/jpeg6531https://dspace7-utp.metabuscador.org/bitstreams/b2bd9204-1f96-45f7-9041-54d49f1964f0/download579278abcee8e1a161828e234742b791MD5411059/15211oai:dspace7-utp.metabuscador.org:11059/152112024-09-05 17:16:44.318https://creativecommons.org/licenses/by-nc-nd/4.0/Manifiesto (Manifestamos) en este documento la voluntad de autorizar a la Biblioteca Jorge Roa Martínez de la Universidad Tecnológica de Pereira la publicación en el Repositorio institucional (http://biblioteca.utp.edu.co), la versión electrónica de la OBRA titulada: La Universidad Tecnológica de Pereira, entidad académica sin ánimo de lucro, queda por lo tanto facultada para ejercer plenamente la autorización anteriormente descrita en su actividad ordinaria de investigación, docencia y publicación. La autorización otorgada se ajusta a lo que establece la Ley 23 de 1982. Con todo, en mi (nuestra) condición de autor (es) me (nos) reservo (reservamos) los derechos morales de la OBRA antes citada con arreglo al artículo 30 de la Ley 23 de 1982. En concordancia suscribo (suscribimos) este documento en el momento mismo que hago (hacemos) entrega de mi (nuestra) OBRA a la Biblioteca “Jorge Roa Martínez” de la Universidad Tecnológica de Pereira. Manifiesto (manifestamos) que la OBRA objeto de la presente autorización es original y la realicé (realizamos) sin violar o usurpar derechos de autor de terceros, por lo tanto, mi (nuestra) OBRA es de exclusiva autoría y tiene la titularidad sobre la misma. PARAGRAFO: En caso de presentarse cualquier reclamación o acción por parte de un tercero en cuanto a los derechos de autor sobre la OBRA en cuestión, El (los) Autor(es), asumirá (n) toda la responsabilidad, y saldrá (n) en defensa de los derechos aquí autorizados. Para todos los efectos La Universidad actúa como un tercero de buena fe. Manifiesto (manifestamos) que soy (somos) conocedor (es) del alcance mundial de la publicación de mi (nuestra) obra en internet y específicamente en el Repositorio Institucional. Manifiesto (manifestamos) que mi (nuestra) OBRA no está limitada ni protegida por ningún acuerdo de confidencialidad, no es un secreto industrial, no es una invención patentable y no cuenta con ningún otro tipo de restricción para su publicación. Acepto (aceptamos) que la autorización se hace a título gratuito, por lo tanto, renuncio (renunciamos) a recibir pago alguno por su distribución, comunicación pública y cualquier otro uso que se haga en los términos de la presente licencia. Autorizo (autorizamos) a la Universidad Tecnológica de Pereira para incluir la presente OBRA en los índices y buscadores que la Universidad estime convenientes para su visibilidad. Acepto (aceptamos) que la Universidad Tecnológica de Pereira convierta el documento en cualquier medio o formato para su preservación digital. En constancia de lo anterior, autorizo (autorizamos) publicar mi (nuestra) OBRA bajo las Licencias Creative Commons 4.0 (cuyo texto se puede consultar en: http://creativecommons.org/licenses/): Se autoriza el uso comercial de mi (nuestra) OBRA: SI____ NO_____ Se autorizan modificaciones de mi (nuestra) OBRA: SI____ NO_____ “Los derechos de autor recaen sobre las obras científicas, literarias y artísticas en las cuales se comprenden las creaciones del espíritu en el campo científico, literario y artístico, cualquiera que sea el modo o forma de expresión y cualquiera que sea su destinación, tales como: los libros, folletos y otros escritos; las conferencias, alocuciones, sermones y otras obras de la misma naturaleza; las obras dramáticas o dramático-musicales; las obras coreográficas y las pantomimas; las composiciones musicales con letra o sin ella; las obras cinematográficas, a las cuales se asimilan las obras expresadas por procedimiento análogo a la cinematografía, inclusive los videogramas, las obras de dibujo, pintura, arquitectura, escultura, grabado, litografía; las obras fotográficas a las cuales se asimilan las expresas por procedimiento análogo o la fotografía; las obras de artes plásticas; las ilustraciones, mapas, planos, croquis y obras plásticas relativas a la geografía, a la topografía a la arquitectura o a las ciencias, en fin, toda producción del dominio científico, literario o artístico que puedan producirse o definirse por cualquier forma de impresión o de reproducción, por fonografía, radiotelefonía o cualquier otro medio conocido o por conocer”. (Artículo 2 de la ley 23 de 1982).open.accesshttps://dspace7-utp.metabuscador.orgRepositorio de la Universidad Tecnológica de Pereirabdigital@metabiblioteca.comTEEgT0JSQSAoVEFMIFkgQ09NTyBTRSBERUZJTkUgTcOBUyBBREVMQU5URSkgU0UgT1RPUkdBIEJBSk8gTE9TIFRFUk1JTk9TIERFIEVTVEEgTElDRU5DSUEgUMOaQkxJQ0EgREUgQ1JFQVRJVkUgQ09NTU9OUyAo4oCcTFBDQ+KAnSBPIOKAnExJQ0VOQ0lB4oCdKS4gTEEgT0JSQSBFU1TDgSBQUk9URUdJREEgUE9SIERFUkVDSE9TIERFIEFVVE9SIFkvVSBPVFJBUyBMRVlFUyBBUExJQ0FCTEVTLiBRVUVEQSBQUk9ISUJJRE8gQ1VBTFFVSUVSIFVTTyBRVUUgU0UgSEFHQSBERSBMQSBPQlJBIFFVRSBOTyBDVUVOVEUgQ09OIExBIEFVVE9SSVpBQ0nDk04gUEVSVElORU5URSBERSBDT05GT1JNSURBRCBDT04gTE9TIFTDiVJNSU5PUyBERSBFU1RBIExJQ0VOQ0lBIFkgREUgTEEgTEVZIERFIERFUkVDSE8gREUgQVVUT1IuCgpNRURJQU5URSBFTCBFSkVSQ0lDSU8gREUgQ1VBTFFVSUVSQSBERSBMT1MgREVSRUNIT1MgUVVFIFNFIE9UT1JHQU4gRU4gRVNUQSBMSUNFTkNJQSwgVVNURUQgQUNFUFRBIFkgQUNVRVJEQSBRVUVEQVIgT0JMSUdBRE8gRU4gTE9TIFRFUk1JTk9TIFFVRSBTRSBTRcORQUxBTiBFTiBFTExBLiBFTCBMSUNFTkNJQU5URSBDT05DRURFIEEgVVNURUQgTE9TIERFUkVDSE9TIENPTlRFTklET1MgRU4gRVNUQSBMSUNFTkNJQSBDT05ESUNJT05BRE9TIEEgTEEgQUNFUFRBQ0nDk04gREUgU1VTIFRFUk1JTk9TIFkgQ09ORElDSU9ORVMuCjEuIERlZmluaWNpb25lcwoKYS4JT2JyYSBDb2xlY3RpdmEgZXMgdW5hIG9icmEsIHRhbCBjb21vIHVuYSBwdWJsaWNhY2nDs24gcGVyacOzZGljYSwgdW5hIGFudG9sb2fDrWEsIG8gdW5hIGVuY2ljbG9wZWRpYSwgZW4gbGEgcXVlIGxhIG9icmEgZW4gc3UgdG90YWxpZGFkLCBzaW4gbW9kaWZpY2FjacOzbiBhbGd1bmEsIGp1bnRvIGNvbiB1biBncnVwbyBkZSBvdHJhcyBjb250cmlidWNpb25lcyBxdWUgY29uc3RpdHV5ZW4gb2JyYXMgc2VwYXJhZGFzIGUgaW5kZXBlbmRpZW50ZXMgZW4gc8OtIG1pc21hcywgc2UgaW50ZWdyYW4gZW4gdW4gdG9kbyBjb2xlY3Rpdm8uIFVuYSBPYnJhIHF1ZSBjb25zdGl0dXllIHVuYSBvYnJhIGNvbGVjdGl2YSBubyBzZSBjb25zaWRlcmFyw6EgdW5hIE9icmEgRGVyaXZhZGEgKGNvbW8gc2UgZGVmaW5lIGFiYWpvKSBwYXJhIGxvcyBwcm9ww7NzaXRvcyBkZSBlc3RhIGxpY2VuY2lhLiBhcXVlbGxhIHByb2R1Y2lkYSBwb3IgdW4gZ3J1cG8gZGUgYXV0b3JlcywgZW4gcXVlIGxhIE9icmEgc2UgZW5jdWVudHJhIHNpbiBtb2RpZmljYWNpb25lcywganVudG8gY29uIHVuYSBjaWVydGEgY2FudGlkYWQgZGUgb3RyYXMgY29udHJpYnVjaW9uZXMsIHF1ZSBjb25zdGl0dXllbiBlbiBzw60gbWlzbW9zIHRyYWJham9zIHNlcGFyYWRvcyBlIGluZGVwZW5kaWVudGVzLCBxdWUgc29uIGludGVncmFkb3MgYWwgdG9kbyBjb2xlY3Rpdm8sIHRhbGVzIGNvbW8gcHVibGljYWNpb25lcyBwZXJpw7NkaWNhcywgYW50b2xvZ8OtYXMgbyBlbmNpY2xvcGVkaWFzLgoKYi4JT2JyYSBEZXJpdmFkYSBzaWduaWZpY2EgdW5hIG9icmEgYmFzYWRhIGVuIGxhIG9icmEgb2JqZXRvIGRlIGVzdGEgbGljZW5jaWEgbyBlbiDDqXN0YSB5IG90cmFzIG9icmFzIHByZWV4aXN0ZW50ZXMsIHRhbGVzIGNvbW8gdHJhZHVjY2lvbmVzLCBhcnJlZ2xvcyBtdXNpY2FsZXMsIGRyYW1hdGl6YWNpb25lcywg4oCcZmljY2lvbmFsaXphY2lvbmVz4oCdLCB2ZXJzaW9uZXMgcGFyYSBjaW5lLCDigJxncmFiYWNpb25lcyBkZSBzb25pZG/igJ0sIHJlcHJvZHVjY2lvbmVzIGRlIGFydGUsIHJlc8O6bWVuZXMsIGNvbmRlbnNhY2lvbmVzLCBvIGN1YWxxdWllciBvdHJhIGVuIGxhIHF1ZSBsYSBvYnJhIHB1ZWRhIHNlciB0cmFuc2Zvcm1hZGEsIGNhbWJpYWRhIG8gYWRhcHRhZGEsIGV4Y2VwdG8gYXF1ZWxsYXMgcXVlIGNvbnN0aXR1eWFuIHVuYSBvYnJhIGNvbGVjdGl2YSwgbGFzIHF1ZSBubyBzZXLDoW4gY29uc2lkZXJhZGFzIHVuYSBvYnJhIGRlcml2YWRhIHBhcmEgZWZlY3RvcyBkZSBlc3RhIGxpY2VuY2lhLiAoUGFyYSBldml0YXIgZHVkYXMsIGVuIGVsIGNhc28gZGUgcXVlIGxhIE9icmEgc2VhIHVuYSBjb21wb3NpY2nDs24gbXVzaWNhbCBvIHVuYSBncmFiYWNpw7NuIHNvbm9yYSwgcGFyYSBsb3MgZWZlY3RvcyBkZSBlc3RhIExpY2VuY2lhIGxhIHNpbmNyb25pemFjacOzbiB0ZW1wb3JhbCBkZSBsYSBPYnJhIGNvbiB1bmEgaW1hZ2VuIGVuIG1vdmltaWVudG8gc2UgY29uc2lkZXJhcsOhIHVuYSBPYnJhIERlcml2YWRhIHBhcmEgbG9zIGZpbmVzIGRlIGVzdGEgbGljZW5jaWEpLgoKYy4JTGljZW5jaWFudGUsIGVzIGVsIGluZGl2aWR1byBvIGxhIGVudGlkYWQgdGl0dWxhciBkZSBsb3MgZGVyZWNob3MgZGUgYXV0b3IgcXVlIG9mcmVjZSBsYSBPYnJhIGVuIGNvbmZvcm1pZGFkIGNvbiBsYXMgY29uZGljaW9uZXMgZGUgZXN0YSBMaWNlbmNpYS4KCmQuCUF1dG9yIG9yaWdpbmFsLCBlcyBlbCBpbmRpdmlkdW8gcXVlIGNyZcOzIGxhIE9icmEuCgplLglPYnJhLCBlcyBhcXVlbGxhIG9icmEgc3VzY2VwdGlibGUgZGUgcHJvdGVjY2nDs24gcG9yIGVsIHLDqWdpbWVuIGRlIERlcmVjaG8gZGUgQXV0b3IgeSBxdWUgZXMgb2ZyZWNpZGEgZW4gbG9zIHTDqXJtaW5vcyBkZSBlc3RhIGxpY2VuY2lhCgpmLglVc3RlZCwgZXMgZWwgaW5kaXZpZHVvIG8gbGEgZW50aWRhZCBxdWUgZWplcmNpdGEgbG9zIGRlcmVjaG9zIG90b3JnYWRvcyBhbCBhbXBhcm8gZGUgZXN0YSBMaWNlbmNpYSB5IHF1ZSBjb24gYW50ZXJpb3JpZGFkIG5vIGhhIHZpb2xhZG8gbGFzIGNvbmRpY2lvbmVzIGRlIGxhIG1pc21hIHJlc3BlY3RvIGEgbGEgT2JyYSwgbyBxdWUgaGF5YSBvYnRlbmlkbyBhdXRvcml6YWNpw7NuIGV4cHJlc2EgcG9yIHBhcnRlIGRlbCBMaWNlbmNpYW50ZSBwYXJhIGVqZXJjZXIgbG9zIGRlcmVjaG9zIGFsIGFtcGFybyBkZSBlc3RhIExpY2VuY2lhIHBlc2UgYSB1bmEgdmlvbGFjacOzbiBhbnRlcmlvci4KCjIuIERlcmVjaG9zIGRlIFVzb3MgSG9ucmFkb3MgeSBleGNlcGNpb25lcyBMZWdhbGVzLgpOYWRhIGVuIGVzdGEgTGljZW5jaWEgcG9kcsOhIHNlciBpbnRlcnByZXRhZG8gY29tbyB1bmEgZGlzbWludWNpw7NuLCBsaW1pdGFjacOzbiBvIHJlc3RyaWNjacOzbiBkZSBsb3MgZGVyZWNob3MgZGVyaXZhZG9zIGRlbCB1c28gaG9ucmFkbyB5IG90cmFzIGxpbWl0YWNpb25lcyBvIGV4Y2VwY2lvbmVzIGEgbG9zIGRlcmVjaG9zIGRlbCBhdXRvciBiYWpvIGVsIHLDqWdpbWVuIGxlZ2FsIHZpZ2VudGUgbyBkZXJpdmFkbyBkZSBjdWFscXVpZXIgb3RyYSBub3JtYSBxdWUgc2UgbGUgYXBsaXF1ZS4KCjMuIENvbmNlc2nDs24gZGUgbGEgTGljZW5jaWEuCkJham8gbG9zIHTDqXJtaW5vcyB5IGNvbmRpY2lvbmVzIGRlIGVzdGEgTGljZW5jaWEsIGVsIExpY2VuY2lhbnRlIG90b3JnYSBhIFVzdGVkIHVuYSBsaWNlbmNpYSBtdW5kaWFsLCBsaWJyZSBkZSByZWdhbMOtYXMsIG5vIGV4Y2x1c2l2YSB5IHBlcnBldHVhIChkdXJhbnRlIHRvZG8gZWwgcGVyw61vZG8gZGUgdmlnZW5jaWEgZGUgbG9zIGRlcmVjaG9zIGRlIGF1dG9yKSBwYXJhIGVqZXJjZXIgZXN0b3MgZGVyZWNob3Mgc29icmUgbGEgT2JyYSB0YWwgeSBjb21vIHNlIGluZGljYSBhIGNvbnRpbnVhY2nDs246CgphLglSZXByb2R1Y2lyIGxhIE9icmEsIGluY29ycG9yYXIgbGEgT2JyYSBlbiB1bmEgbyBtw6FzIE9icmFzIENvbGVjdGl2YXMsIHkgcmVwcm9kdWNpciBsYSBPYnJhIGluY29ycG9yYWRhIGVuIGxhcyBPYnJhcyBDb2xlY3RpdmFzLgoKYi4JRGlzdHJpYnVpciBjb3BpYXMgbyBmb25vZ3JhbWFzIGRlIGxhcyBPYnJhcywgZXhoaWJpcmxhcyBww7pibGljYW1lbnRlLCBlamVjdXRhcmxhcyBww7pibGljYW1lbnRlIHkvbyBwb25lcmxhcyBhIGRpc3Bvc2ljacOzbiBww7pibGljYSwgaW5jbHV5w6luZG9sYXMgY29tbyBpbmNvcnBvcmFkYXMgZW4gT2JyYXMgQ29sZWN0aXZhcywgc2Vnw7puIGNvcnJlc3BvbmRhLgoKYy4JRGlzdHJpYnVpciBjb3BpYXMgZGUgbGFzIE9icmFzIERlcml2YWRhcyBxdWUgc2UgZ2VuZXJlbiwgZXhoaWJpcmxhcyBww7pibGljYW1lbnRlLCBlamVjdXRhcmxhcyBww7pibGljYW1lbnRlIHkvbyBwb25lcmxhcyBhIGRpc3Bvc2ljacOzbiBww7pibGljYS4KTG9zIGRlcmVjaG9zIG1lbmNpb25hZG9zIGFudGVyaW9ybWVudGUgcHVlZGVuIHNlciBlamVyY2lkb3MgZW4gdG9kb3MgbG9zIG1lZGlvcyB5IGZvcm1hdG9zLCBhY3R1YWxtZW50ZSBjb25vY2lkb3MgbyBxdWUgc2UgaW52ZW50ZW4gZW4gZWwgZnV0dXJvLiBMb3MgZGVyZWNob3MgYW50ZXMgbWVuY2lvbmFkb3MgaW5jbHV5ZW4gZWwgZGVyZWNobyBhIHJlYWxpemFyIGRpY2hhcyBtb2RpZmljYWNpb25lcyBlbiBsYSBtZWRpZGEgcXVlIHNlYW4gdMOpY25pY2FtZW50ZSBuZWNlc2FyaWFzIHBhcmEgZWplcmNlciBsb3MgZGVyZWNob3MgZW4gb3RybyBtZWRpbyBvIGZvcm1hdG9zLCBwZXJvIGRlIG90cmEgbWFuZXJhIHVzdGVkIG5vIGVzdMOhIGF1dG9yaXphZG8gcGFyYSByZWFsaXphciBvYnJhcyBkZXJpdmFkYXMuIFRvZG9zIGxvcyBkZXJlY2hvcyBubyBvdG9yZ2Fkb3MgZXhwcmVzYW1lbnRlIHBvciBlbCBMaWNlbmNpYW50ZSBxdWVkYW4gcG9yIGVzdGUgbWVkaW8gcmVzZXJ2YWRvcywgaW5jbHV5ZW5kbyBwZXJvIHNpbiBsaW1pdGFyc2UgYSBhcXVlbGxvcyBxdWUgc2UgbWVuY2lvbmFuIGVuIGxhcyBzZWNjaW9uZXMgNChkKSB5IDQoZSkuCgo0LiBSZXN0cmljY2lvbmVzLgpMYSBsaWNlbmNpYSBvdG9yZ2FkYSBlbiBsYSBhbnRlcmlvciBTZWNjacOzbiAzIGVzdMOhIGV4cHJlc2FtZW50ZSBzdWpldGEgeSBsaW1pdGFkYSBwb3IgbGFzIHNpZ3VpZW50ZXMgcmVzdHJpY2Npb25lczoKCmEuCVVzdGVkIHB1ZWRlIGRpc3RyaWJ1aXIsIGV4aGliaXIgcMO6YmxpY2FtZW50ZSwgZWplY3V0YXIgcMO6YmxpY2FtZW50ZSwgbyBwb25lciBhIGRpc3Bvc2ljacOzbiBww7pibGljYSBsYSBPYnJhIHPDs2xvIGJham8gbGFzIGNvbmRpY2lvbmVzIGRlIGVzdGEgTGljZW5jaWEsIHkgVXN0ZWQgZGViZSBpbmNsdWlyIHVuYSBjb3BpYSBkZSBlc3RhIGxpY2VuY2lhIG8gZGVsIElkZW50aWZpY2Fkb3IgVW5pdmVyc2FsIGRlIFJlY3Vyc29zIGRlIGxhIG1pc21hIGNvbiBjYWRhIGNvcGlhIGRlIGxhIE9icmEgcXVlIGRpc3RyaWJ1eWEsIGV4aGliYSBww7pibGljYW1lbnRlLCBlamVjdXRlIHDDumJsaWNhbWVudGUgbyBwb25nYSBhIGRpc3Bvc2ljacOzbiBww7pibGljYS4gTm8gZXMgcG9zaWJsZSBvZnJlY2VyIG8gaW1wb25lciBuaW5ndW5hIGNvbmRpY2nDs24gc29icmUgbGEgT2JyYSBxdWUgYWx0ZXJlIG8gbGltaXRlIGxhcyBjb25kaWNpb25lcyBkZSBlc3RhIExpY2VuY2lhIG8gZWwgZWplcmNpY2lvIGRlIGxvcyBkZXJlY2hvcyBkZSBsb3MgZGVzdGluYXRhcmlvcyBvdG9yZ2Fkb3MgZW4gZXN0ZSBkb2N1bWVudG8uIE5vIGVzIHBvc2libGUgc3VibGljZW5jaWFyIGxhIE9icmEuIFVzdGVkIGRlYmUgbWFudGVuZXIgaW50YWN0b3MgdG9kb3MgbG9zIGF2aXNvcyBxdWUgaGFnYW4gcmVmZXJlbmNpYSBhIGVzdGEgTGljZW5jaWEgeSBhIGxhIGNsw6F1c3VsYSBkZSBsaW1pdGFjacOzbiBkZSBnYXJhbnTDrWFzLiBVc3RlZCBubyBwdWVkZSBkaXN0cmlidWlyLCBleGhpYmlyIHDDumJsaWNhbWVudGUsIGVqZWN1dGFyIHDDumJsaWNhbWVudGUsIG8gcG9uZXIgYSBkaXNwb3NpY2nDs24gcMO6YmxpY2EgbGEgT2JyYSBjb24gYWxndW5hIG1lZGlkYSB0ZWNub2zDs2dpY2EgcXVlIGNvbnRyb2xlIGVsIGFjY2VzbyBvIGxhIHV0aWxpemFjacOzbiBkZSBlbGxhIGRlIHVuYSBmb3JtYSBxdWUgc2VhIGluY29uc2lzdGVudGUgY29uIGxhcyBjb25kaWNpb25lcyBkZSBlc3RhIExpY2VuY2lhLiBMbyBhbnRlcmlvciBzZSBhcGxpY2EgYSBsYSBPYnJhIGluY29ycG9yYWRhIGEgdW5hIE9icmEgQ29sZWN0aXZhLCBwZXJvIGVzdG8gbm8gZXhpZ2UgcXVlIGxhIE9icmEgQ29sZWN0aXZhIGFwYXJ0ZSBkZSBsYSBvYnJhIG1pc21hIHF1ZWRlIHN1amV0YSBhIGxhcyBjb25kaWNpb25lcyBkZSBlc3RhIExpY2VuY2lhLiBTaSBVc3RlZCBjcmVhIHVuYSBPYnJhIENvbGVjdGl2YSwgcHJldmlvIGF2aXNvIGRlIGN1YWxxdWllciBMaWNlbmNpYW50ZSBkZWJlLCBlbiBsYSBtZWRpZGEgZGUgbG8gcG9zaWJsZSwgZWxpbWluYXIgZGUgbGEgT2JyYSBDb2xlY3RpdmEgY3VhbHF1aWVyIHJlZmVyZW5jaWEgYSBkaWNobyBMaWNlbmNpYW50ZSBvIGFsIEF1dG9yIE9yaWdpbmFsLCBzZWfDum4gbG8gc29saWNpdGFkbyBwb3IgZWwgTGljZW5jaWFudGUgeSBjb25mb3JtZSBsbyBleGlnZSBsYSBjbMOhdXN1bGEgNChjKS4KCmIuCVVzdGVkIG5vIHB1ZWRlIGVqZXJjZXIgbmluZ3VubyBkZSBsb3MgZGVyZWNob3MgcXVlIGxlIGhhbiBzaWRvIG90b3JnYWRvcyBlbiBsYSBTZWNjacOzbiAzIHByZWNlZGVudGUgZGUgbW9kbyBxdWUgZXN0w6luIHByaW5jaXBhbG1lbnRlIGRlc3RpbmFkb3MgbyBkaXJlY3RhbWVudGUgZGlyaWdpZG9zIGEgY29uc2VndWlyIHVuIHByb3ZlY2hvIGNvbWVyY2lhbCBvIHVuYSBjb21wZW5zYWNpw7NuIG1vbmV0YXJpYSBwcml2YWRhLiBFbCBpbnRlcmNhbWJpbyBkZSBsYSBPYnJhIHBvciBvdHJhcyBvYnJhcyBwcm90ZWdpZGFzIHBvciBkZXJlY2hvcyBkZSBhdXRvciwgeWEgc2VhIGEgdHJhdsOpcyBkZSB1biBzaXN0ZW1hIHBhcmEgY29tcGFydGlyIGFyY2hpdm9zIGRpZ2l0YWxlcyAoZGlnaXRhbCBmaWxlLXNoYXJpbmcpIG8gZGUgY3VhbHF1aWVyIG90cmEgbWFuZXJhIG5vIHNlcsOhIGNvbnNpZGVyYWRvIGNvbW8gZXN0YXIgZGVzdGluYWRvIHByaW5jaXBhbG1lbnRlIG8gZGlyaWdpZG8gZGlyZWN0YW1lbnRlIGEgY29uc2VndWlyIHVuIHByb3ZlY2hvIGNvbWVyY2lhbCBvIHVuYSBjb21wZW5zYWNpw7NuIG1vbmV0YXJpYSBwcml2YWRhLCBzaWVtcHJlIHF1ZSBubyBzZSByZWFsaWNlIHVuIHBhZ28gbWVkaWFudGUgdW5hIGNvbXBlbnNhY2nDs24gbW9uZXRhcmlhIGVuIHJlbGFjacOzbiBjb24gZWwgaW50ZXJjYW1iaW8gZGUgb2JyYXMgcHJvdGVnaWRhcyBwb3IgZWwgZGVyZWNobyBkZSBhdXRvci4KCmMuCVNpIHVzdGVkIGRpc3RyaWJ1eWUsIGV4aGliZSBww7pibGljYW1lbnRlLCBlamVjdXRhIHDDumJsaWNhbWVudGUgbyBlamVjdXRhIHDDumJsaWNhbWVudGUgZW4gZm9ybWEgZGlnaXRhbCBsYSBPYnJhIG8gY3VhbHF1aWVyIE9icmEgRGVyaXZhZGEgdSBPYnJhIENvbGVjdGl2YSwgVXN0ZWQgZGViZSBtYW50ZW5lciBpbnRhY3RhIHRvZGEgbGEgaW5mb3JtYWNpw7NuIGRlIGRlcmVjaG8gZGUgYXV0b3IgZGUgbGEgT2JyYSB5IHByb3BvcmNpb25hciwgZGUgZm9ybWEgcmF6b25hYmxlIHNlZ8O6biBlbCBtZWRpbyBvIG1hbmVyYSBxdWUgVXN0ZWQgZXN0w6kgdXRpbGl6YW5kbzogKGkpIGVsIG5vbWJyZSBkZWwgQXV0b3IgT3JpZ2luYWwgc2kgZXN0w6EgcHJvdmlzdG8gKG8gc2V1ZMOzbmltbywgc2kgZnVlcmUgYXBsaWNhYmxlKSwgeS9vIChpaSkgZWwgbm9tYnJlIGRlIGxhIHBhcnRlIG8gbGFzIHBhcnRlcyBxdWUgZWwgQXV0b3IgT3JpZ2luYWwgeS9vIGVsIExpY2VuY2lhbnRlIGh1YmllcmVuIGRlc2lnbmFkbyBwYXJhIGxhIGF0cmlidWNpw7NuICh2LmcuLCB1biBpbnN0aXR1dG8gcGF0cm9jaW5hZG9yLCBlZGl0b3JpYWwsIHB1YmxpY2FjacOzbikgZW4gbGEgaW5mb3JtYWNpw7NuIGRlIGxvcyBkZXJlY2hvcyBkZSBhdXRvciBkZWwgTGljZW5jaWFudGUsIHTDqXJtaW5vcyBkZSBzZXJ2aWNpb3MgbyBkZSBvdHJhcyBmb3JtYXMgcmF6b25hYmxlczsgZWwgdMOtdHVsbyBkZSBsYSBPYnJhIHNpIGVzdMOhIHByb3Zpc3RvOyBlbiBsYSBtZWRpZGEgZGUgbG8gcmF6b25hYmxlbWVudGUgZmFjdGlibGUgeSwgc2kgZXN0w6EgcHJvdmlzdG8sIGVsIElkZW50aWZpY2Fkb3IgVW5pZm9ybWUgZGUgUmVjdXJzb3MgKFVuaWZvcm0gUmVzb3VyY2UgSWRlbnRpZmllcikgcXVlIGVsIExpY2VuY2lhbnRlIGVzcGVjaWZpY2EgcGFyYSBzZXIgYXNvY2lhZG8gY29uIGxhIE9icmEsIHNhbHZvIHF1ZSB0YWwgVVJJIG5vIHNlIHJlZmllcmEgYSBsYSBub3RhIHNvYnJlIGxvcyBkZXJlY2hvcyBkZSBhdXRvciBvIGEgbGEgaW5mb3JtYWNpw7NuIHNvYnJlIGVsIGxpY2VuY2lhbWllbnRvIGRlIGxhIE9icmE7IHkgZW4gZWwgY2FzbyBkZSB1bmEgT2JyYSBEZXJpdmFkYSwgYXRyaWJ1aXIgZWwgY3LDqWRpdG8gaWRlbnRpZmljYW5kbyBlbCB1c28gZGUgbGEgT2JyYSBlbiBsYSBPYnJhIERlcml2YWRhICh2LmcuLCAiVHJhZHVjY2nDs24gRnJhbmNlc2EgZGUgbGEgT2JyYSBkZWwgQXV0b3IgT3JpZ2luYWwsIiBvICJHdWnDs24gQ2luZW1hdG9ncsOhZmljbyBiYXNhZG8gZW4gbGEgT2JyYSBvcmlnaW5hbCBkZWwgQXV0b3IgT3JpZ2luYWwiKS4gVGFsIGNyw6lkaXRvIHB1ZWRlIHNlciBpbXBsZW1lbnRhZG8gZGUgY3VhbHF1aWVyIGZvcm1hIHJhem9uYWJsZTsgZW4gZWwgY2Fzbywgc2luIGVtYmFyZ28sIGRlIE9icmFzIERlcml2YWRhcyB1IE9icmFzIENvbGVjdGl2YXMsIHRhbCBjcsOpZGl0byBhcGFyZWNlcsOhLCBjb21vIG3DrW5pbW8sIGRvbmRlIGFwYXJlY2UgZWwgY3LDqWRpdG8gZGUgY3VhbHF1aWVyIG90cm8gYXV0b3IgY29tcGFyYWJsZSB5IGRlIHVuYSBtYW5lcmEsIGFsIG1lbm9zLCB0YW4gZGVzdGFjYWRhIGNvbW8gZWwgY3LDqWRpdG8gZGUgb3RybyBhdXRvciBjb21wYXJhYmxlLgoKZC4JUGFyYSBldml0YXIgdG9kYSBjb25mdXNpw7NuLCBlbCBMaWNlbmNpYW50ZSBhY2xhcmEgcXVlLCBjdWFuZG8gbGEgb2JyYSBlcyB1bmEgY29tcG9zaWNpw7NuIG11c2ljYWw6CgppLglSZWdhbMOtYXMgcG9yIGludGVycHJldGFjacOzbiB5IGVqZWN1Y2nDs24gYmFqbyBsaWNlbmNpYXMgZ2VuZXJhbGVzLiBFbCBMaWNlbmNpYW50ZSBzZSByZXNlcnZhIGVsIGRlcmVjaG8gZXhjbHVzaXZvIGRlIGF1dG9yaXphciBsYSBlamVjdWNpw7NuIHDDumJsaWNhIG8gbGEgZWplY3VjacOzbiBww7pibGljYSBkaWdpdGFsIGRlIGxhIG9icmEgeSBkZSByZWNvbGVjdGFyLCBzZWEgaW5kaXZpZHVhbG1lbnRlIG8gYSB0cmF2w6lzIGRlIHVuYSBzb2NpZWRhZCBkZSBnZXN0acOzbiBjb2xlY3RpdmEgZGUgZGVyZWNob3MgZGUgYXV0b3IgeSBkZXJlY2hvcyBjb25leG9zIChwb3IgZWplbXBsbywgU0FZQ08pLCBsYXMgcmVnYWzDrWFzIHBvciBsYSBlamVjdWNpw7NuIHDDumJsaWNhIG8gcG9yIGxhIGVqZWN1Y2nDs24gcMO6YmxpY2EgZGlnaXRhbCBkZSBsYSBvYnJhIChwb3IgZWplbXBsbyBXZWJjYXN0KSBsaWNlbmNpYWRhIGJham8gbGljZW5jaWFzIGdlbmVyYWxlcywgc2kgbGEgaW50ZXJwcmV0YWNpw7NuIG8gZWplY3VjacOzbiBkZSBsYSBvYnJhIGVzdMOhIHByaW1vcmRpYWxtZW50ZSBvcmllbnRhZGEgcG9yIG8gZGlyaWdpZGEgYSBsYSBvYnRlbmNpw7NuIGRlIHVuYSB2ZW50YWphIGNvbWVyY2lhbCBvIHVuYSBjb21wZW5zYWNpw7NuIG1vbmV0YXJpYSBwcml2YWRhLgoKaWkuCVJlZ2Fsw61hcyBwb3IgRm9ub2dyYW1hcy4gRWwgTGljZW5jaWFudGUgc2UgcmVzZXJ2YSBlbCBkZXJlY2hvIGV4Y2x1c2l2byBkZSByZWNvbGVjdGFyLCBpbmRpdmlkdWFsbWVudGUgbyBhIHRyYXbDqXMgZGUgdW5hIHNvY2llZGFkIGRlIGdlc3Rpw7NuIGNvbGVjdGl2YSBkZSBkZXJlY2hvcyBkZSBhdXRvciB5IGRlcmVjaG9zIGNvbmV4b3MgKHBvciBlamVtcGxvLCBsb3MgY29uc2FncmFkb3MgcG9yIGxhIFNBWUNPKSwgdW5hIGFnZW5jaWEgZGUgZGVyZWNob3MgbXVzaWNhbGVzIG8gYWxnw7puIGFnZW50ZSBkZXNpZ25hZG8sIGxhcyByZWdhbMOtYXMgcG9yIGN1YWxxdWllciBmb25vZ3JhbWEgcXVlIFVzdGVkIGNyZWUgYSBwYXJ0aXIgZGUgbGEgb2JyYSAo4oCcdmVyc2nDs24gY292ZXLigJ0pIHkgZGlzdHJpYnV5YSwgZW4gbG9zIHTDqXJtaW5vcyBkZWwgcsOpZ2ltZW4gZGUgZGVyZWNob3MgZGUgYXV0b3IsIHNpIGxhIGNyZWFjacOzbiBvIGRpc3RyaWJ1Y2nDs24gZGUgZXNhIHZlcnNpw7NuIGNvdmVyIGVzdMOhIHByaW1vcmRpYWxtZW50ZSBkZXN0aW5hZGEgbyBkaXJpZ2lkYSBhIG9idGVuZXIgdW5hIHZlbnRhamEgY29tZXJjaWFsIG8gdW5hIGNvbXBlbnNhY2nDs24gbW9uZXRhcmlhIHByaXZhZGEuCgplLglHZXN0acOzbiBkZSBEZXJlY2hvcyBkZSBBdXRvciBzb2JyZSBJbnRlcnByZXRhY2lvbmVzIHkgRWplY3VjaW9uZXMgRGlnaXRhbGVzIChXZWJDYXN0aW5nKS4gUGFyYSBldml0YXIgdG9kYSBjb25mdXNpw7NuLCBlbCBMaWNlbmNpYW50ZSBhY2xhcmEgcXVlLCBjdWFuZG8gbGEgb2JyYSBzZWEgdW4gZm9ub2dyYW1hLCBlbCBMaWNlbmNpYW50ZSBzZSByZXNlcnZhIGVsIGRlcmVjaG8gZXhjbHVzaXZvIGRlIGF1dG9yaXphciBsYSBlamVjdWNpw7NuIHDDumJsaWNhIGRpZ2l0YWwgZGUgbGEgb2JyYSAocG9yIGVqZW1wbG8sIHdlYmNhc3QpIHkgZGUgcmVjb2xlY3RhciwgaW5kaXZpZHVhbG1lbnRlIG8gYSB0cmF2w6lzIGRlIHVuYSBzb2NpZWRhZCBkZSBnZXN0acOzbiBjb2xlY3RpdmEgZGUgZGVyZWNob3MgZGUgYXV0b3IgeSBkZXJlY2hvcyBjb25leG9zIChwb3IgZWplbXBsbywgQUNJTlBSTyksIGxhcyByZWdhbMOtYXMgcG9yIGxhIGVqZWN1Y2nDs24gcMO6YmxpY2EgZGlnaXRhbCBkZSBsYSBvYnJhIChwb3IgZWplbXBsbywgd2ViY2FzdCksIHN1amV0YSBhIGxhcyBkaXNwb3NpY2lvbmVzIGFwbGljYWJsZXMgZGVsIHLDqWdpbWVuIGRlIERlcmVjaG8gZGUgQXV0b3IsIHNpIGVzdGEgZWplY3VjacOzbiBww7pibGljYSBkaWdpdGFsIGVzdMOhIHByaW1vcmRpYWxtZW50ZSBkaXJpZ2lkYSBhIG9idGVuZXIgdW5hIHZlbnRhamEgY29tZXJjaWFsIG8gdW5hIGNvbXBlbnNhY2nDs24gbW9uZXRhcmlhIHByaXZhZGEuCgo1LiBSZXByZXNlbnRhY2lvbmVzLCBHYXJhbnTDrWFzIHkgTGltaXRhY2lvbmVzIGRlIFJlc3BvbnNhYmlsaWRhZC4KQSBNRU5PUyBRVUUgTEFTIFBBUlRFUyBMTyBBQ09SREFSQU4gREUgT1RSQSBGT1JNQSBQT1IgRVNDUklUTywgRUwgTElDRU5DSUFOVEUgT0ZSRUNFIExBIE9CUkEgKEVOIEVMIEVTVEFETyBFTiBFTCBRVUUgU0UgRU5DVUVOVFJBKSDigJxUQUwgQ1VBTOKAnSwgU0lOIEJSSU5EQVIgR0FSQU5Uw41BUyBERSBDTEFTRSBBTEdVTkEgUkVTUEVDVE8gREUgTEEgT0JSQSwgWUEgU0VBIEVYUFJFU0EsIElNUEzDjUNJVEEsIExFR0FMIE8gQ1VBTFFVSUVSQSBPVFJBLCBJTkNMVVlFTkRPLCBTSU4gTElNSVRBUlNFIEEgRUxMQVMsIEdBUkFOVMONQVMgREUgVElUVUxBUklEQUQsIENPTUVSQ0lBQklMSURBRCwgQURBUFRBQklMSURBRCBPIEFERUNVQUNJw5NOIEEgUFJPUMOTU0lUTyBERVRFUk1JTkFETywgQVVTRU5DSUEgREUgSU5GUkFDQ0nDk04sIERFIEFVU0VOQ0lBIERFIERFRkVDVE9TIExBVEVOVEVTIE8gREUgT1RSTyBUSVBPLCBPIExBIFBSRVNFTkNJQSBPIEFVU0VOQ0lBIERFIEVSUk9SRVMsIFNFQU4gTyBOTyBERVNDVUJSSUJMRVMgKFBVRURBTiBPIE5PIFNFUiBFU1RPUyBERVNDVUJJRVJUT1MpLiBBTEdVTkFTIEpVUklTRElDQ0lPTkVTIE5PIFBFUk1JVEVOIExBIEVYQ0xVU0nDk04gREUgR0FSQU5Uw41BUyBJTVBMw41DSVRBUywgRU4gQ1VZTyBDQVNPIEVTVEEgRVhDTFVTScOTTiBQVUVERSBOTyBBUExJQ0FSU0UgQSBVU1RFRC4KCjYuIExpbWl0YWNpw7NuIGRlIHJlc3BvbnNhYmlsaWRhZC4KQSBNRU5PUyBRVUUgTE8gRVhJSkEgRVhQUkVTQU1FTlRFIExBIExFWSBBUExJQ0FCTEUsIEVMIExJQ0VOQ0lBTlRFIE5PIFNFUsOBIFJFU1BPTlNBQkxFIEFOVEUgVVNURUQgUE9SIERBw5FPIEFMR1VOTywgU0VBIFBPUiBSRVNQT05TQUJJTElEQUQgRVhUUkFDT05UUkFDVFVBTCwgUFJFQ09OVFJBQ1RVQUwgTyBDT05UUkFDVFVBTCwgT0JKRVRJVkEgTyBTVUJKRVRJVkEsIFNFIFRSQVRFIERFIERBw5FPUyBNT1JBTEVTIE8gUEFUUklNT05JQUxFUywgRElSRUNUT1MgTyBJTkRJUkVDVE9TLCBQUkVWSVNUT1MgTyBJTVBSRVZJU1RPUyBQUk9EVUNJRE9TIFBPUiBFTCBVU08gREUgRVNUQSBMSUNFTkNJQSBPIERFIExBIE9CUkEsIEFVTiBDVUFORE8gRUwgTElDRU5DSUFOVEUgSEFZQSBTSURPIEFEVkVSVElETyBERSBMQSBQT1NJQklMSURBRCBERSBESUNIT1MgREHDkU9TLiBBTEdVTkFTIExFWUVTIE5PIFBFUk1JVEVOIExBIEVYQ0xVU0nDk04gREUgQ0lFUlRBIFJFU1BPTlNBQklMSURBRCwgRU4gQ1VZTyBDQVNPIEVTVEEgRVhDTFVTScOTTiBQVUVERSBOTyBBUExJQ0FSU0UgQSBVU1RFRC4KCjcuIFTDqXJtaW5vLgoKYS4JRXN0YSBMaWNlbmNpYSB5IGxvcyBkZXJlY2hvcyBvdG9yZ2Fkb3MgZW4gdmlydHVkIGRlIGVsbGEgdGVybWluYXLDoW4gYXV0b23DoXRpY2FtZW50ZSBzaSBVc3RlZCBpbmZyaW5nZSBhbGd1bmEgY29uZGljacOzbiBlc3RhYmxlY2lkYSBlbiBlbGxhLiBTaW4gZW1iYXJnbywgbG9zIGluZGl2aWR1b3MgbyBlbnRpZGFkZXMgcXVlIGhhbiByZWNpYmlkbyBPYnJhcyBEZXJpdmFkYXMgbyBDb2xlY3RpdmFzIGRlIFVzdGVkIGRlIGNvbmZvcm1pZGFkIGNvbiBlc3RhIExpY2VuY2lhLCBubyB2ZXLDoW4gdGVybWluYWRhcyBzdXMgbGljZW5jaWFzLCBzaWVtcHJlIHF1ZSBlc3RvcyBpbmRpdmlkdW9zIG8gZW50aWRhZGVzIHNpZ2FuIGN1bXBsaWVuZG8gw61udGVncmFtZW50ZSBsYXMgY29uZGljaW9uZXMgZGUgZXN0YXMgbGljZW5jaWFzLiBMYXMgU2VjY2lvbmVzIDEsIDIsIDUsIDYsIDcsIHkgOCBzdWJzaXN0aXLDoW4gYSBjdWFscXVpZXIgdGVybWluYWNpw7NuIGRlIGVzdGEgTGljZW5jaWEuCgpiLglTdWpldGEgYSBsYXMgY29uZGljaW9uZXMgeSB0w6lybWlub3MgYW50ZXJpb3JlcywgbGEgbGljZW5jaWEgb3RvcmdhZGEgYXF1w60gZXMgcGVycGV0dWEgKGR1cmFudGUgZWwgcGVyw61vZG8gZGUgdmlnZW5jaWEgZGUgbG9zIGRlcmVjaG9zIGRlIGF1dG9yIGRlIGxhIG9icmEpLiBObyBvYnN0YW50ZSBsbyBhbnRlcmlvciwgZWwgTGljZW5jaWFudGUgc2UgcmVzZXJ2YSBlbCBkZXJlY2hvIGEgcHVibGljYXIgeS9vIGVzdHJlbmFyIGxhIE9icmEgYmFqbyBjb25kaWNpb25lcyBkZSBsaWNlbmNpYSBkaWZlcmVudGVzIG8gYSBkZWphciBkZSBkaXN0cmlidWlybGEgZW4gbG9zIHTDqXJtaW5vcyBkZSBlc3RhIExpY2VuY2lhIGVuIGN1YWxxdWllciBtb21lbnRvOyBlbiBlbCBlbnRlbmRpZG8sIHNpbiBlbWJhcmdvLCBxdWUgZXNhIGVsZWNjacOzbiBubyBzZXJ2aXLDoSBwYXJhIHJldm9jYXIgZXN0YSBsaWNlbmNpYSBvIHF1ZSBkZWJhIHNlciBvdG9yZ2FkYSAsIGJham8gbG9zIHTDqXJtaW5vcyBkZSBlc3RhIGxpY2VuY2lhKSwgeSBlc3RhIGxpY2VuY2lhIGNvbnRpbnVhcsOhIGVuIHBsZW5vIHZpZ29yIHkgZWZlY3RvIGEgbWVub3MgcXVlIHNlYSB0ZXJtaW5hZGEgY29tbyBzZSBleHByZXNhIGF0csOhcy4gTGEgTGljZW5jaWEgcmV2b2NhZGEgY29udGludWFyw6Egc2llbmRvIHBsZW5hbWVudGUgdmlnZW50ZSB5IGVmZWN0aXZhIHNpIG5vIHNlIGxlIGRhIHTDqXJtaW5vIGVuIGxhcyBjb25kaWNpb25lcyBpbmRpY2FkYXMgYW50ZXJpb3JtZW50ZS4KCjguIFZhcmlvcy4KCmEuCUNhZGEgdmV6IHF1ZSBVc3RlZCBkaXN0cmlidXlhIG8gcG9uZ2EgYSBkaXNwb3NpY2nDs24gcMO6YmxpY2EgbGEgT2JyYSBvIHVuYSBPYnJhIENvbGVjdGl2YSwgZWwgTGljZW5jaWFudGUgb2ZyZWNlcsOhIGFsIGRlc3RpbmF0YXJpbyB1bmEgbGljZW5jaWEgZW4gbG9zIG1pc21vcyB0w6lybWlub3MgeSBjb25kaWNpb25lcyBxdWUgbGEgbGljZW5jaWEgb3RvcmdhZGEgYSBVc3RlZCBiYWpvIGVzdGEgTGljZW5jaWEuCgpiLglTaSBhbGd1bmEgZGlzcG9zaWNpw7NuIGRlIGVzdGEgTGljZW5jaWEgcmVzdWx0YSBpbnZhbGlkYWRhIG8gbm8gZXhpZ2libGUsIHNlZ8O6biBsYSBsZWdpc2xhY2nDs24gdmlnZW50ZSwgZXN0byBubyBhZmVjdGFyw6EgbmkgbGEgdmFsaWRleiBuaSBsYSBhcGxpY2FiaWxpZGFkIGRlbCByZXN0byBkZSBjb25kaWNpb25lcyBkZSBlc3RhIExpY2VuY2lhIHksIHNpbiBhY2Npw7NuIGFkaWNpb25hbCBwb3IgcGFydGUgZGUgbG9zIHN1amV0b3MgZGUgZXN0ZSBhY3VlcmRvLCBhcXXDqWxsYSBzZSBlbnRlbmRlcsOhIHJlZm9ybWFkYSBsbyBtw61uaW1vIG5lY2VzYXJpbyBwYXJhIGhhY2VyIHF1ZSBkaWNoYSBkaXNwb3NpY2nDs24gc2VhIHbDoWxpZGEgeSBleGlnaWJsZS4KCmMuCU5pbmfDum4gdMOpcm1pbm8gbyBkaXNwb3NpY2nDs24gZGUgZXN0YSBMaWNlbmNpYSBzZSBlc3RpbWFyw6EgcmVudW5jaWFkYSB5IG5pbmd1bmEgdmlvbGFjacOzbiBkZSBlbGxhIHNlcsOhIGNvbnNlbnRpZGEgYSBtZW5vcyBxdWUgZXNhIHJlbnVuY2lhIG8gY29uc2VudGltaWVudG8gc2VhIG90b3JnYWRvIHBvciBlc2NyaXRvIHkgZmlybWFkbyBwb3IgbGEgcGFydGUgcXVlIHJlbnVuY2llIG8gY29uc2llbnRhLgoKZC4JRXN0YSBMaWNlbmNpYSByZWZsZWphIGVsIGFjdWVyZG8gcGxlbm8gZW50cmUgbGFzIHBhcnRlcyByZXNwZWN0byBhIGxhIE9icmEgYXF1w60gbGljZW5jaWFkYS4gTm8gaGF5IGFycmVnbG9zLCBhY3VlcmRvcyBvIGRlY2xhcmFjaW9uZXMgcmVzcGVjdG8gYSBsYSBPYnJhIHF1ZSBubyBlc3TDqW4gZXNwZWNpZmljYWRvcyBlbiBlc3RlIGRvY3VtZW50by4gRWwgTGljZW5jaWFudGUgbm8gc2UgdmVyw6EgbGltaXRhZG8gcG9yIG5pbmd1bmEgZGlzcG9zaWNpw7NuIGFkaWNpb25hbCBxdWUgcHVlZGEgc3VyZ2lyIGVuIGFsZ3VuYSBjb211bmljYWNpw7NuIGVtYW5hZGEgZGUgVXN0ZWQuIEVzdGEgTGljZW5jaWEgbm8gcHVlZGUgc2VyIG1vZGlmaWNhZGEgc2luIGVsIGNvbnNlbnRpbWllbnRvIG11dHVvIHBvciBlc2NyaXRvIGRlbCBMaWNlbmNpYW50ZSB5IFVzdGVkLgo= |