Módulo robótico para la clasificación de lulos (Solanum Quitoense) implementando visión artificial
En este artículo se expone el diseño e implementación de un módulo robótico para la clasificación de lulos integrando técnicas de control, visión artificial y robótica. El proceso que permite la clasificación de lulos opera sobre algoritmos para el control de un brazo robótico de 5 GDL, que basado e...
- Autores:
-
Contreras Parada, Pedro Alexander
Peña Cortés, César Augusto
Riaño Jaimes, Cristhian Iván
- Tipo de recurso:
- Article of journal
- Fecha de publicación:
- 2014
- Institución:
- Corporación Universidad de la Costa
- Repositorio:
- REDICUC - Repositorio CUC
- Idioma:
- spa
- OAI Identifier:
- oai:repositorio.cuc.edu.co:11323/1819
- Acceso en línea:
- http://hdl.handle.net/11323/1819
https://repositorio.cuc.edu.co/
- Palabra clave:
- Visión Artificial
Brazo Robótico
Cinemática Inversa
Cinemática Directa
Computer Vision
Robotic Arm
Inverse Kinematics
Forward Kinematics
- Rights
- openAccess
- License
- http://purl.org/coar/access_right/c_abf2
id |
RCUC2_c63e378f49baf7c9646ae2d7fbf85a67 |
---|---|
oai_identifier_str |
oai:repositorio.cuc.edu.co:11323/1819 |
network_acronym_str |
RCUC2 |
network_name_str |
REDICUC - Repositorio CUC |
repository_id_str |
|
dc.title.eng.fl_str_mv |
Módulo robótico para la clasificación de lulos (Solanum Quitoense) implementando visión artificial |
dc.title.translated.eng.fl_str_mv |
Robotic module for lulo (Solanum Quitoense) classification using computer vision |
title |
Módulo robótico para la clasificación de lulos (Solanum Quitoense) implementando visión artificial |
spellingShingle |
Módulo robótico para la clasificación de lulos (Solanum Quitoense) implementando visión artificial Visión Artificial Brazo Robótico Cinemática Inversa Cinemática Directa Computer Vision Robotic Arm Inverse Kinematics Forward Kinematics |
title_short |
Módulo robótico para la clasificación de lulos (Solanum Quitoense) implementando visión artificial |
title_full |
Módulo robótico para la clasificación de lulos (Solanum Quitoense) implementando visión artificial |
title_fullStr |
Módulo robótico para la clasificación de lulos (Solanum Quitoense) implementando visión artificial |
title_full_unstemmed |
Módulo robótico para la clasificación de lulos (Solanum Quitoense) implementando visión artificial |
title_sort |
Módulo robótico para la clasificación de lulos (Solanum Quitoense) implementando visión artificial |
dc.creator.fl_str_mv |
Contreras Parada, Pedro Alexander Peña Cortés, César Augusto Riaño Jaimes, Cristhian Iván |
dc.contributor.author.spa.fl_str_mv |
Contreras Parada, Pedro Alexander Peña Cortés, César Augusto Riaño Jaimes, Cristhian Iván |
dc.subject.eng.fl_str_mv |
Visión Artificial Brazo Robótico Cinemática Inversa Cinemática Directa Computer Vision Robotic Arm Inverse Kinematics Forward Kinematics |
topic |
Visión Artificial Brazo Robótico Cinemática Inversa Cinemática Directa Computer Vision Robotic Arm Inverse Kinematics Forward Kinematics |
description |
En este artículo se expone el diseño e implementación de un módulo robótico para la clasificación de lulos integrando técnicas de control, visión artificial y robótica. El proceso que permite la clasificación de lulos opera sobre algoritmos para el control de un brazo robótico de 5 GDL, que basado en la información obtenida con técnicas de visión de artificial permite seleccionar lulos con características previamente definidas por el usuario, como son tamaño, color e imperfecciones en el fruto. Se inicia realizando un diseño CAD del módulo, el cual permite establecer las propiedades físicas, definir materiales, técnicas de fabricación y realizar estudio de movimiento de los distintos mecanismos involucrados en el proceso. Se implementaron los algoritmos de control, la cinemática del brazo robótico y los algoritmos de visión artificial. El resultado se resume en un módulo robótico de carácter académico que permite la clasificación de lulos. |
publishDate |
2014 |
dc.date.issued.none.fl_str_mv |
2014-07-01 |
dc.date.accessioned.none.fl_str_mv |
2018-11-26T13:12:32Z |
dc.date.available.none.fl_str_mv |
2018-11-26T13:12:32Z |
dc.type.spa.fl_str_mv |
Artículo de revista |
dc.type.coar.fl_str_mv |
http://purl.org/coar/resource_type/c_2df8fbb1 |
dc.type.coar.spa.fl_str_mv |
http://purl.org/coar/resource_type/c_6501 |
dc.type.content.spa.fl_str_mv |
Text |
dc.type.driver.spa.fl_str_mv |
info:eu-repo/semantics/article |
dc.type.redcol.spa.fl_str_mv |
http://purl.org/redcol/resource_type/ART |
dc.type.version.spa.fl_str_mv |
info:eu-repo/semantics/acceptedVersion |
format |
http://purl.org/coar/resource_type/c_6501 |
status_str |
acceptedVersion |
dc.identifier.citation.spa.fl_str_mv |
Contreras Parada, P., Peña Cortés, C., & Riaño Jaimes, C. (2014). Módulo robótico para la clasificación de lulos (Solanum Quitoense) implementando visión artificial. INGE CUC, 10(1), 51-62. Recuperado a partir de https://revistascientificas.cuc.edu.co/ingecuc/article/view/343 |
dc.identifier.issn.spa.fl_str_mv |
0122-6517, 2382-4700 electrónico |
dc.identifier.uri.spa.fl_str_mv |
http://hdl.handle.net/11323/1819 |
dc.identifier.eissn.spa.fl_str_mv |
2382-4700 |
dc.identifier.instname.spa.fl_str_mv |
Corporación Universidad de la Costa |
dc.identifier.pissn.spa.fl_str_mv |
0122-6517 |
dc.identifier.reponame.spa.fl_str_mv |
REDICUC - Repositorio CUC |
dc.identifier.repourl.spa.fl_str_mv |
https://repositorio.cuc.edu.co/ |
identifier_str_mv |
Contreras Parada, P., Peña Cortés, C., & Riaño Jaimes, C. (2014). Módulo robótico para la clasificación de lulos (Solanum Quitoense) implementando visión artificial. INGE CUC, 10(1), 51-62. Recuperado a partir de https://revistascientificas.cuc.edu.co/ingecuc/article/view/343 0122-6517, 2382-4700 electrónico 2382-4700 Corporación Universidad de la Costa 0122-6517 REDICUC - Repositorio CUC |
url |
http://hdl.handle.net/11323/1819 https://repositorio.cuc.edu.co/ |
dc.language.iso.none.fl_str_mv |
spa |
language |
spa |
dc.relation.ispartofseries.spa.fl_str_mv |
INGE CUC; Vol. 10, Núm. 1 (2014) |
dc.relation.ispartofjournal.spa.fl_str_mv |
INGE CUC INGE CUC |
dc.relation.references.spa.fl_str_mv |
[1] J. Billingsley, D. Oetomo, J. Reid, “Agricultural robotics [TC Spotlight]”, Robotics & Automation Magazine, IEEE, vol.16, n° 4, pp.16,16, 19, December 2009. [2] A. Ming and H. Ma, “A blob detector in color images”, Proceedings of the 6th ACM international conference on Image and video retrieval, pp. 364,370, 2007. [3] T. Theodoridis and Hu Huosheng, “Toward Intelligent Security Robots: A Survey”, IEEE Transactions on Systems, Man, and Cybernetics, Part C: Applications and Reviews, vol. 42, n° 6, pp.1219, 1230, Nov. 2012. [4] C. Riaño, C. Peña, and A. Pardo, “Approach in the Optimal Development of Parallel Robot for Educational Applications”, Proceedings of the WSEAS international conference on Recent Advances in Intelligent Control, Modelling and Simulation (ICMS), pp.145,150, January 2014. [5] C. Peña, E. Yime, and I. Banfield, “Dimensional calculation optimal platform Stewart-Gough type parallel to pedagogical applications using genetic algorithms”, INGE CUC, vol. 7, n° 1, pp.127,138, Oct. 2011. [6] M. J. Schuster, D. Jain, M. Tenorth, and M. Beetz, “Learning organizational principles in human environments”, IEEE International Conference on Robotics and Automation (ICRA), pp. 3867, 3874, May 2012. [7] A. Ollero, Robótica: manipuladores y robots móviles. Marcombo, 2001, p. 464. [8] J. Marsot, “QFD: a methodological tool for integration of ergonomics at the design stage”, Applied Ergonomics, vol. 36, n° 2, pp.185,192, Mar. 2005. [9] L. Sooyeon, K. Youngshin, J. Youn, P. Sehyeok, and K. Jaehyun, “Contrast-preserved chroma enhancement technique using YCbCr color space”, IEEE Transactions on Consumer Electronics, vol. 58, n° 2, pp. 641, 645, May 2012. [10] A. Barrientos, L. Peñin, C. Balaguer, and R. Aracil, Fundamentos de robótica. McGraw-Hill, Interamericana de España, Ed. 2, pp. 512, 2007. [11] I. Zabalza, “Sintesis cinematica y dinamica de mecanismos. Manipulador paralelo 6-RKS”, Ph.D. Tesis, Universidad Pública de Navarra, pp.267, Dic. 1999. [12] R. Norton, Diseño de maquinaria, 4ª ed. Pearson, 2011, p. 888. [13] J. Marsot and L. Claudon, “Design and ergonomics. Methods for integrating ergonomics at hand tool design stage”, International Journal of Occupational Safety and Ergonomics, vol. 10, n° 1, pp. 13-23, 2004. [14] C. Jianjie, Y. Suihuai, C. Guoding, and W. Haijun W., “Research on product design quality control methods based on QFD”, IEEE 11th International Conference on Computer-Aided Industrial Design & Conceptual Design (CAIDCD), vol.1, n°1, pp. 35,39, 17-19 Nov. 2010. [15] Y. Akao, M. Sperry, and R. Fiorentino, “QFD: prendre en compte les besoins du client dans la conception du produit”, Afnor, Ed. 1, pp. 349, Dic. 1993. [16] Chang. Young-Chang and J. F. Reid, J.F., “RGB calibration for color image analysis in machine vision”, IEEE Transactions on Image Processing, vol. 5, n°10, pp.1414,1422, Oct 1996. [17] C. Damerval and S. Meignen, “Blob Detection With Wavelet Maxima Lines”, Signal Processing Letters, IEEE , vol.14, n°1, pp.39,42, Jan. 2007. [18] I. Young, J. Gerbrands, and L. Van, “Fundamentals of image processing”, Delft University of Technology, 2a ed., 1998, pp.111. [19] M. Moghimi and H. Pourghassem, “Shadow detection based on combinations of HSV color space and orthogonal transformation in surveillance videos”, Iranian Conference on Intelligent Systems (ICIS), vol.1, n° 1, pp.1,6, Feb. 2014. [20] M. Zanuy, Tratamiento digital de voz e imagen y aplicación a la multimedia, Marcombo, 2000, p. 288. [21] A. Pardo and J. Díaz, Fundamentos en sistemas de control automático, Universidad de Pamplona, 2004, p.155. [22] H. Bay, T. Tuytelaars, and L. Van, “Surf: Speeded up robust features”, in Computer Vision- ECCV 2006. Springer, 2006, pp. 404-417. [23] Hesheng Wang, Yun-Hui Liu, and Weidong Chen, “Uncalibrated Visual Tracking Control Without Visual Velocity”, IEEE Transactions on Control Systems Technology, vol.18, n°6, pp.1359,1370, Nov. 2010 [24] F. Chaumette and S. Hutchinson, “Visual servo control. I. Basic approaches”, Robotics & Automation Magazine, IEEE, vol.13, n°4, p. 82,90, Dec. 2006. [25] E. Martinez, C. Peña y P. Cárdenas, “Optimización dimensional de un robot paralelo tipo delta basado en el menor consumo de energía” Ciencia e Ingeniería Neogranadina, vol.1, nº 21, pp. 73 - 88, 2011. |
dc.relation.ispartofjournalabbrev.spa.fl_str_mv |
INGE CUC |
dc.rights.accessrights.spa.fl_str_mv |
info:eu-repo/semantics/openAccess |
dc.rights.coar.spa.fl_str_mv |
http://purl.org/coar/access_right/c_abf2 |
eu_rights_str_mv |
openAccess |
rights_invalid_str_mv |
http://purl.org/coar/access_right/c_abf2 |
dc.format.mimetype.spa.fl_str_mv |
application/pdf |
dc.publisher.spa.fl_str_mv |
Corporación Universidad de la Costa |
dc.source.spa.fl_str_mv |
INGE CUC |
institution |
Corporación Universidad de la Costa |
dc.source.url.spa.fl_str_mv |
https://revistascientificas.cuc.edu.co/ingecuc/article/view/343 |
bitstream.url.fl_str_mv |
https://repositorio.cuc.edu.co/bitstreams/82da266c-3a98-4522-8d79-07eddde1e6f7/download https://repositorio.cuc.edu.co/bitstreams/81be2785-6861-479b-a3c4-0d3c7d03f7eb/download https://repositorio.cuc.edu.co/bitstreams/323e7a8d-2fed-4dcc-9314-4e50a0fa0f9d/download https://repositorio.cuc.edu.co/bitstreams/92a9fd4c-c7a3-4a4e-979d-e264b081cba8/download |
bitstream.checksum.fl_str_mv |
4a9ee90a982f0fc6e9d2524f1a6ab7d5 8a4605be74aa9ea9d79846c1fba20a33 4f4284a352f170fd2a9595f60fb5d4b3 accdbb4581987a1d71bb5957fe637532 |
bitstream.checksumAlgorithm.fl_str_mv |
MD5 MD5 MD5 MD5 |
repository.name.fl_str_mv |
Repositorio de la Universidad de la Costa CUC |
repository.mail.fl_str_mv |
repdigital@cuc.edu.co |
_version_ |
1811760677128241152 |
spelling |
Contreras Parada, Pedro AlexanderPeña Cortés, César AugustoRiaño Jaimes, Cristhian Iván2018-11-26T13:12:32Z2018-11-26T13:12:32Z2014-07-01Contreras Parada, P., Peña Cortés, C., & Riaño Jaimes, C. (2014). Módulo robótico para la clasificación de lulos (Solanum Quitoense) implementando visión artificial. INGE CUC, 10(1), 51-62. Recuperado a partir de https://revistascientificas.cuc.edu.co/ingecuc/article/view/3430122-6517, 2382-4700 electrónicohttp://hdl.handle.net/11323/18192382-4700Corporación Universidad de la Costa0122-6517REDICUC - Repositorio CUChttps://repositorio.cuc.edu.co/En este artículo se expone el diseño e implementación de un módulo robótico para la clasificación de lulos integrando técnicas de control, visión artificial y robótica. El proceso que permite la clasificación de lulos opera sobre algoritmos para el control de un brazo robótico de 5 GDL, que basado en la información obtenida con técnicas de visión de artificial permite seleccionar lulos con características previamente definidas por el usuario, como son tamaño, color e imperfecciones en el fruto. Se inicia realizando un diseño CAD del módulo, el cual permite establecer las propiedades físicas, definir materiales, técnicas de fabricación y realizar estudio de movimiento de los distintos mecanismos involucrados en el proceso. Se implementaron los algoritmos de control, la cinemática del brazo robótico y los algoritmos de visión artificial. El resultado se resume en un módulo robótico de carácter académico que permite la clasificación de lulos.This paper describes the design and implementation of a robotic module for Solanum Quitoense classification using control techniques, computer vision and robotics. The process that allows the classification of Solanum Quitoense (or lulo) operates on algorithms to control a 5 degrees-of-freedom robotic arm that, based on the information obtained from computer vision techniques, selects lulos with features previously defined by the user, such as size, color, and imperfections in the fruit. Everything starts by making a CAD module design which allows establishing physical properties, defining materials and manufacturing techniques and performing a motion study of the different mechanisms involved in the process. Subsequently, control algorithms, robotic arm kinematics and computer vision algorithms are implemented. The result is summarized in an academic-based robotic module that allows lulo classification.Contreras Parada, Pedro Alexander-d81d2e8e-a364-48cb-b47a-18e4aa3f964c-0Peña Cortés, César Augusto-8037a375-5595-4ab9-a1d2-47dd3dde7df0-0Riaño Jaimes, Cristhian Iván-52d1365d-27f9-4a8e-91f5-5b120f7fa316-0application/pdfspaCorporación Universidad de la CostaINGE CUC; Vol. 10, Núm. 1 (2014)INGE CUCINGE CUC[1] J. Billingsley, D. Oetomo, J. Reid, “Agricultural robotics [TC Spotlight]”, Robotics & Automation Magazine, IEEE, vol.16, n° 4, pp.16,16, 19, December 2009.[2] A. Ming and H. Ma, “A blob detector in color images”, Proceedings of the 6th ACM international conference on Image and video retrieval, pp. 364,370, 2007.[3] T. Theodoridis and Hu Huosheng, “Toward Intelligent Security Robots: A Survey”, IEEE Transactions on Systems, Man, and Cybernetics, Part C: Applications and Reviews, vol. 42, n° 6, pp.1219, 1230, Nov. 2012.[4] C. Riaño, C. Peña, and A. Pardo, “Approach in the Optimal Development of Parallel Robot for Educational Applications”, Proceedings of the WSEAS international conference on Recent Advances in Intelligent Control, Modelling and Simulation (ICMS), pp.145,150, January 2014.[5] C. Peña, E. Yime, and I. Banfield, “Dimensional calculation optimal platform Stewart-Gough type parallel to pedagogical applications using genetic algorithms”, INGE CUC, vol. 7, n° 1, pp.127,138, Oct. 2011.[6] M. J. Schuster, D. Jain, M. Tenorth, and M. Beetz, “Learning organizational principles in human environments”, IEEE International Conference on Robotics and Automation (ICRA), pp. 3867, 3874, May 2012.[7] A. Ollero, Robótica: manipuladores y robots móviles. Marcombo, 2001, p. 464.[8] J. Marsot, “QFD: a methodological tool for integration of ergonomics at the design stage”, Applied Ergonomics, vol. 36, n° 2, pp.185,192, Mar. 2005.[9] L. Sooyeon, K. Youngshin, J. Youn, P. Sehyeok, and K. Jaehyun, “Contrast-preserved chroma enhancement technique using YCbCr color space”, IEEE Transactions on Consumer Electronics, vol. 58, n° 2, pp. 641, 645, May 2012.[10] A. Barrientos, L. Peñin, C. Balaguer, and R. Aracil, Fundamentos de robótica. McGraw-Hill, Interamericana de España, Ed. 2, pp. 512, 2007.[11] I. Zabalza, “Sintesis cinematica y dinamica de mecanismos. Manipulador paralelo 6-RKS”, Ph.D. Tesis, Universidad Pública de Navarra, pp.267, Dic. 1999.[12] R. Norton, Diseño de maquinaria, 4ª ed. Pearson, 2011, p. 888.[13] J. Marsot and L. Claudon, “Design and ergonomics. Methods for integrating ergonomics at hand tool design stage”, International Journal of Occupational Safety and Ergonomics, vol. 10, n° 1, pp. 13-23, 2004.[14] C. Jianjie, Y. Suihuai, C. Guoding, and W. Haijun W., “Research on product design quality control methods based on QFD”, IEEE 11th International Conference on Computer-Aided Industrial Design & Conceptual Design (CAIDCD), vol.1, n°1, pp. 35,39, 17-19 Nov. 2010.[15] Y. Akao, M. Sperry, and R. Fiorentino, “QFD: prendre en compte les besoins du client dans la conception du produit”, Afnor, Ed. 1, pp. 349, Dic. 1993.[16] Chang. Young-Chang and J. F. Reid, J.F., “RGB calibration for color image analysis in machine vision”, IEEE Transactions on Image Processing, vol. 5, n°10, pp.1414,1422, Oct 1996.[17] C. Damerval and S. Meignen, “Blob Detection With Wavelet Maxima Lines”, Signal Processing Letters, IEEE , vol.14, n°1, pp.39,42, Jan. 2007.[18] I. Young, J. Gerbrands, and L. Van, “Fundamentals of image processing”, Delft University of Technology, 2a ed., 1998, pp.111.[19] M. Moghimi and H. Pourghassem, “Shadow detection based on combinations of HSV color space and orthogonal transformation in surveillance videos”, Iranian Conference on Intelligent Systems (ICIS), vol.1, n° 1, pp.1,6, Feb. 2014.[20] M. Zanuy, Tratamiento digital de voz e imagen y aplicación a la multimedia, Marcombo, 2000, p. 288.[21] A. Pardo and J. Díaz, Fundamentos en sistemas de control automático, Universidad de Pamplona, 2004, p.155.[22] H. Bay, T. Tuytelaars, and L. Van, “Surf: Speeded up robust features”, in Computer Vision- ECCV 2006. Springer, 2006, pp. 404-417.[23] Hesheng Wang, Yun-Hui Liu, and Weidong Chen, “Uncalibrated Visual Tracking Control Without Visual Velocity”, IEEE Transactions on Control Systems Technology, vol.18, n°6, pp.1359,1370, Nov. 2010[24] F. Chaumette and S. Hutchinson, “Visual servo control. I. Basic approaches”, Robotics & Automation Magazine, IEEE, vol.13, n°4, p. 82,90, Dec. 2006.[25] E. Martinez, C. Peña y P. Cárdenas, “Optimización dimensional de un robot paralelo tipo delta basado en el menor consumo de energía” Ciencia e Ingeniería Neogranadina, vol.1, nº 21, pp. 73 - 88, 2011.INGE CUCINGE CUChttps://revistascientificas.cuc.edu.co/ingecuc/article/view/343Visión ArtificialBrazo RobóticoCinemática InversaCinemática DirectaComputer VisionRobotic ArmInverse KinematicsForward KinematicsMódulo robótico para la clasificación de lulos (Solanum Quitoense) implementando visión artificialRobotic module for lulo (Solanum Quitoense) classification using computer visionArtículo de revistahttp://purl.org/coar/resource_type/c_6501http://purl.org/coar/resource_type/c_2df8fbb1Textinfo:eu-repo/semantics/articlehttp://purl.org/redcol/resource_type/ARTinfo:eu-repo/semantics/acceptedVersioninfo:eu-repo/semantics/openAccesshttp://purl.org/coar/access_right/c_abf2PublicationORIGINALMódulo Robótico para la Clasificación de lulos.pdfMódulo Robótico para la Clasificación de lulos.pdfapplication/pdf4552011https://repositorio.cuc.edu.co/bitstreams/82da266c-3a98-4522-8d79-07eddde1e6f7/download4a9ee90a982f0fc6e9d2524f1a6ab7d5MD51LICENSElicense.txtlicense.txttext/plain; charset=utf-81748https://repositorio.cuc.edu.co/bitstreams/81be2785-6861-479b-a3c4-0d3c7d03f7eb/download8a4605be74aa9ea9d79846c1fba20a33MD52THUMBNAILMódulo Robótico para la Clasificación de lulos.pdf.jpgMódulo Robótico para la Clasificación de lulos.pdf.jpgimage/jpeg58236https://repositorio.cuc.edu.co/bitstreams/323e7a8d-2fed-4dcc-9314-4e50a0fa0f9d/download4f4284a352f170fd2a9595f60fb5d4b3MD54TEXTMódulo Robótico para la Clasificación de lulos.pdf.txtMódulo Robótico para la Clasificación de lulos.pdf.txttext/plain38559https://repositorio.cuc.edu.co/bitstreams/92a9fd4c-c7a3-4a4e-979d-e264b081cba8/downloadaccdbb4581987a1d71bb5957fe637532MD5511323/1819oai:repositorio.cuc.edu.co:11323/18192024-09-16 16:44:28.413open.accesshttps://repositorio.cuc.edu.coRepositorio de la Universidad de la Costa CUCrepdigital@cuc.edu.coTk9URTogUExBQ0UgWU9VUiBPV04gTElDRU5TRSBIRVJFClRoaXMgc2FtcGxlIGxpY2Vuc2UgaXMgcHJvdmlkZWQgZm9yIGluZm9ybWF0aW9uYWwgcHVycG9zZXMgb25seS4KCk5PTi1FWENMVVNJVkUgRElTVFJJQlVUSU9OIExJQ0VOU0UKCkJ5IHNpZ25pbmcgYW5kIHN1Ym1pdHRpbmcgdGhpcyBsaWNlbnNlLCB5b3UgKHRoZSBhdXRob3Iocykgb3IgY29weXJpZ2h0Cm93bmVyKSBncmFudHMgdG8gRFNwYWNlIFVuaXZlcnNpdHkgKERTVSkgdGhlIG5vbi1leGNsdXNpdmUgcmlnaHQgdG8gcmVwcm9kdWNlLAp0cmFuc2xhdGUgKGFzIGRlZmluZWQgYmVsb3cpLCBhbmQvb3IgZGlzdHJpYnV0ZSB5b3VyIHN1Ym1pc3Npb24gKGluY2x1ZGluZwp0aGUgYWJzdHJhY3QpIHdvcmxkd2lkZSBpbiBwcmludCBhbmQgZWxlY3Ryb25pYyBmb3JtYXQgYW5kIGluIGFueSBtZWRpdW0sCmluY2x1ZGluZyBidXQgbm90IGxpbWl0ZWQgdG8gYXVkaW8gb3IgdmlkZW8uCgpZb3UgYWdyZWUgdGhhdCBEU1UgbWF5LCB3aXRob3V0IGNoYW5naW5nIHRoZSBjb250ZW50LCB0cmFuc2xhdGUgdGhlCnN1Ym1pc3Npb24gdG8gYW55IG1lZGl1bSBvciBmb3JtYXQgZm9yIHRoZSBwdXJwb3NlIG9mIHByZXNlcnZhdGlvbi4KCllvdSBhbHNvIGFncmVlIHRoYXQgRFNVIG1heSBrZWVwIG1vcmUgdGhhbiBvbmUgY29weSBvZiB0aGlzIHN1Ym1pc3Npb24gZm9yCnB1cnBvc2VzIG9mIHNlY3VyaXR5LCBiYWNrLXVwIGFuZCBwcmVzZXJ2YXRpb24uCgpZb3UgcmVwcmVzZW50IHRoYXQgdGhlIHN1Ym1pc3Npb24gaXMgeW91ciBvcmlnaW5hbCB3b3JrLCBhbmQgdGhhdCB5b3UgaGF2ZQp0aGUgcmlnaHQgdG8gZ3JhbnQgdGhlIHJpZ2h0cyBjb250YWluZWQgaW4gdGhpcyBsaWNlbnNlLiBZb3UgYWxzbyByZXByZXNlbnQKdGhhdCB5b3VyIHN1Ym1pc3Npb24gZG9lcyBub3QsIHRvIHRoZSBiZXN0IG9mIHlvdXIga25vd2xlZGdlLCBpbmZyaW5nZSB1cG9uCmFueW9uZSdzIGNvcHlyaWdodC4KCklmIHRoZSBzdWJtaXNzaW9uIGNvbnRhaW5zIG1hdGVyaWFsIGZvciB3aGljaCB5b3UgZG8gbm90IGhvbGQgY29weXJpZ2h0LAp5b3UgcmVwcmVzZW50IHRoYXQgeW91IGhhdmUgb2J0YWluZWQgdGhlIHVucmVzdHJpY3RlZCBwZXJtaXNzaW9uIG9mIHRoZQpjb3B5cmlnaHQgb3duZXIgdG8gZ3JhbnQgRFNVIHRoZSByaWdodHMgcmVxdWlyZWQgYnkgdGhpcyBsaWNlbnNlLCBhbmQgdGhhdApzdWNoIHRoaXJkLXBhcnR5IG93bmVkIG1hdGVyaWFsIGlzIGNsZWFybHkgaWRlbnRpZmllZCBhbmQgYWNrbm93bGVkZ2VkCndpdGhpbiB0aGUgdGV4dCBvciBjb250ZW50IG9mIHRoZSBzdWJtaXNzaW9uLgoKSUYgVEhFIFNVQk1JU1NJT04gSVMgQkFTRUQgVVBPTiBXT1JLIFRIQVQgSEFTIEJFRU4gU1BPTlNPUkVEIE9SIFNVUFBPUlRFRApCWSBBTiBBR0VOQ1kgT1IgT1JHQU5JWkFUSU9OIE9USEVSIFRIQU4gRFNVLCBZT1UgUkVQUkVTRU5UIFRIQVQgWU9VIEhBVkUKRlVMRklMTEVEIEFOWSBSSUdIVCBPRiBSRVZJRVcgT1IgT1RIRVIgT0JMSUdBVElPTlMgUkVRVUlSRUQgQlkgU1VDSApDT05UUkFDVCBPUiBBR1JFRU1FTlQuCgpEU1Ugd2lsbCBjbGVhcmx5IGlkZW50aWZ5IHlvdXIgbmFtZShzKSBhcyB0aGUgYXV0aG9yKHMpIG9yIG93bmVyKHMpIG9mIHRoZQpzdWJtaXNzaW9uLCBhbmQgd2lsbCBub3QgbWFrZSBhbnkgYWx0ZXJhdGlvbiwgb3RoZXIgdGhhbiBhcyBhbGxvd2VkIGJ5IHRoaXMKbGljZW5zZSwgdG8geW91ciBzdWJtaXNzaW9uLgo= |