Diseño e implementación del criptosistema SIMON en FPGA
Incluye tablas, gráficos y anexos.
- Autores:
-
Rincón González, José Gabriel
- Tipo de recurso:
- Trabajo de grado de pregrado
- Fecha de publicación:
- 2021
- Institución:
- Universidad de los Llanos
- Repositorio:
- Repositorio Digital Universidad de los LLanos
- Idioma:
- spa
- OAI Identifier:
- oai:repositorio.unillanos.edu.co:001/5455
- Acceso en línea:
- https://repositorio.unillanos.edu.co/handle/001/5455
https://repositorio.unillanos.edu.co/
- Palabra clave:
- Amplificadores (Electrónica)
Conductores de línea (Circuitos integrados)
Análisis de circuitos eléctricos
Circuitos asíncronos
Criptosistema simon
FPGA
Criptoanálisis
Criptografía
Criptografía asimétrica
Descifrador
Criptoprocesador SIMON32/64
- Rights
- openAccess
- License
- Derechos Reservados - Universidad de los Llanos, 2021
| id |
Unillanos2_c41d202597bf6df0f129cb88fed98294 |
|---|---|
| oai_identifier_str |
oai:repositorio.unillanos.edu.co:001/5455 |
| network_acronym_str |
Unillanos2 |
| network_name_str |
Repositorio Digital Universidad de los LLanos |
| repository_id_str |
|
| dc.title.spa.fl_str_mv |
Diseño e implementación del criptosistema SIMON en FPGA |
| title |
Diseño e implementación del criptosistema SIMON en FPGA |
| spellingShingle |
Diseño e implementación del criptosistema SIMON en FPGA Amplificadores (Electrónica) Conductores de línea (Circuitos integrados) Análisis de circuitos eléctricos Circuitos asíncronos Criptosistema simon FPGA Criptoanálisis Criptografía Criptografía asimétrica Descifrador Criptoprocesador SIMON32/64 |
| title_short |
Diseño e implementación del criptosistema SIMON en FPGA |
| title_full |
Diseño e implementación del criptosistema SIMON en FPGA |
| title_fullStr |
Diseño e implementación del criptosistema SIMON en FPGA |
| title_full_unstemmed |
Diseño e implementación del criptosistema SIMON en FPGA |
| title_sort |
Diseño e implementación del criptosistema SIMON en FPGA |
| dc.creator.fl_str_mv |
Rincón González, José Gabriel |
| dc.contributor.advisor.none.fl_str_mv |
Velásquez Clavijo, Fabian |
| dc.contributor.author.none.fl_str_mv |
Rincón González, José Gabriel |
| dc.contributor.jury.none.fl_str_mv |
Velásquez Clavijo, Fabian |
| dc.subject.armarc.none.fl_str_mv |
Amplificadores (Electrónica) Conductores de línea (Circuitos integrados) Análisis de circuitos eléctricos Circuitos asíncronos |
| topic |
Amplificadores (Electrónica) Conductores de línea (Circuitos integrados) Análisis de circuitos eléctricos Circuitos asíncronos Criptosistema simon FPGA Criptoanálisis Criptografía Criptografía asimétrica Descifrador Criptoprocesador SIMON32/64 |
| dc.subject.proposal.spa.fl_str_mv |
Criptosistema simon FPGA Criptoanálisis Criptografía Criptografía asimétrica Descifrador Criptoprocesador SIMON32/64 |
| description |
Incluye tablas, gráficos y anexos. |
| publishDate |
2021 |
| dc.date.issued.none.fl_str_mv |
2021 |
| dc.date.accessioned.none.fl_str_mv |
2025-10-27T15:51:05Z |
| dc.date.available.none.fl_str_mv |
2025-10-27T15:51:05Z |
| dc.type.none.fl_str_mv |
Trabajo de grado - Pregrado |
| dc.type.driver.none.fl_str_mv |
info:eu-repo/semantics/bachelorThesis |
| dc.type.version.none.fl_str_mv |
info:eu-repo/semantics/publishedVersion |
| 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.coarversion.none.fl_str_mv |
http://purl.org/coar/version/c_970fb48d4fbd8a85 |
| dc.type.category.none.fl_str_mv |
Proyectos de investigación |
| format |
http://purl.org/coar/resource_type/c_7a1f |
| status_str |
publishedVersion |
| dc.identifier.citation.none.fl_str_mv |
Rincón González, José Gabriel (2021). Diseño e implementación del criptosistema SIMON en FPGA [Trabajo de grado, Universidad de los Llanos]. Repositorio digital Universidad de los Llanos. |
| dc.identifier.uri.none.fl_str_mv |
https://repositorio.unillanos.edu.co/handle/001/5455 |
| dc.identifier.instname.none.fl_str_mv |
Universidad de los Llanos |
| dc.identifier.reponame.none.fl_str_mv |
Repositorio digital Universidad de los Llanos |
| dc.identifier.repourl.none.fl_str_mv |
https://repositorio.unillanos.edu.co/ |
| identifier_str_mv |
Rincón González, José Gabriel (2021). Diseño e implementación del criptosistema SIMON en FPGA [Trabajo de grado, Universidad de los Llanos]. Repositorio digital Universidad de los Llanos. Universidad de los Llanos Repositorio digital Universidad de los Llanos |
| url |
https://repositorio.unillanos.edu.co/handle/001/5455 https://repositorio.unillanos.edu.co/ |
| dc.language.iso.none.fl_str_mv |
spa |
| language |
spa |
| dc.relation.references.none.fl_str_mv |
A. Menezes, P. van Oorschot, and S. Vanstone, “Handbook of Applied Cryptography,” 1996, p. 591~634. E. Savaş and Ç. K. Koç, “Finite field arithmetic for cryptography,” IEEE Circuits Syst. Mag., vol. 10, no. 2, pp. 40–56, 2010, doi: 10.1109/MCAS.2010.936785. M. M. Martinez, “Una introduccion a la criptografia. El criptosistema R.S.A.,” I.E.S. Cardenal Lòpez de Mendoza, 2004. L. W. Ray Beaulieu, Douglas Shors, Jason Smith, Stefan Treatman-Clark, Bryan Weeks, “THE SIMON AND SPECK FAMILIES OF LIGHTWEIGHT BLOCK CIPHERS,” Natl. Secur. Agency, p. 42, 2013. J. Aguirre, CURSO DE SEGURIDAD INFORMÁTICA Y CRIPTOGRAFÍA, vol. 3.1. 2003. M. P. Martorell, “CRIPTOLOGÌA,” Esc. Univ. Politec. Matarò, p. 40. A. Jorge, Libro Electrònico de Seguridad Informatica y Criptografia, 6th ed. 2006. M. Rao, A. Kaknjo, E. Omerdic, D. Toal, and T. Newe, “An efficient high speed AES implementation using traditional FPGA and LabVIEW FPGA platforms,” 2019, pp. 93–100, doi: 10.1109/CyberC.2018.00028. C. G. Justo, Seguridad en Redes Telemàticas. Madrid España, 2004. N. Velasquez and N. Pineda, “Diseño e Implementacion de un Prototipo Criptoprocesador AES-Rijndael en FPGA,” Universidad de Los Llanos, 2007. A. Bogdanov, L. R. Knudsen, G. Leander, C. Paar, and A. Poschmann, “PRESENT : An Ultra-Lightweight Block Cipher.” X. Fan, K. Mandal, and G. Gong, “WG-8: A lightweight stream cipher for resource-constrained smart devices,” Lect. Notes Inst. Comput. Sci. Soc. Telecommun. Eng. LNICST, vol. 115, pp. 617–632, 2013, doi: 10.1007/9783-642-37949-9_54. W. Diehl, A. Abdulgadir, J. P. Kaps, and K. Gaj, “Comparing the cost of protecting selected lightweight block ciphers against differential power analysis in low-cost FPGAs,” Computers, vol. 7, no. 2, pp. 128–135, 2018, doi: 10.3390/computers7020028. S. Abed, R. Jaffal, B. J. Mohd, and M. Alshayeji, “FPGA modeling and optimization of a SIMON lightweight block cipher,” Sensors (Switzerland), vol. 19, no. 4, 2019, doi: 10.3390/s19040913. P. Maene and I. Verbauwhede, “Single-cycle implementations of block ciphers,” Lect. Notes Comput. Sci. (including Subser. Lect. Notes Artif. Intell. Lect. Notes Bioinformatics), vol. 9542, pp. 131–147, 2016, doi: 10.1007/9783-319-29078-2_8. A. Shahverdi, M. Taha, and T. Eisenbarth, “Lightweight Side Channel Resistance: Threshold Implementations of Simon,” IEEE Trans. Comput., vol. 66, no. 4, pp. 661–671, 2017, doi: 10.1109/TC.2016.2614504. B. Rashidi, “High-throughput and lightweight hardware structures of HIGHT and PRESENT block ciphers,” Microelectronics J., vol. 90, no. June 2018, pp. 232–252, 2019, doi: 10.1016/j.mejo.2019.06.012. S. B. Basturk, C. E. J. Dancer, and T. McNally, “High-throughput Configurable SIMON Architecture for Flexible Security,” Pharmacol. Res., p. 104743, 2020, doi: 10.1016/j.mejo.2021.105085. W. El Hadj Youssef, A. Abdelli, F. Dridi, and M. Machhout, “Hardware implementation of secure lightweight cryptographic designs for IoT applications,” Secur. Commun. Networks, vol. 2020, 2020, doi: 10.1155/2020/8860598. S. Sadiya Shireen, B. Murali Krishna, K. Naga Lakshmi Prasanna, and A. Poorna Chander Reddy, “FPGA based RSA authenticated data hiding in image through steganography,” Int. J. Innov. Technol. Explor. Eng., vol. 8, no. 4, pp. 550–554, 2019, [Online]. Available: https://www.scopus.com/inward/record.uri?eid=2-s2.085061568077&partnerID=40&md5=2eb1b8bdee6547d6f4cb4395f65bc41b. F. Velasquez Clavijo, “Diseño e implementación de un prototipo de transmisión de datos punto a punto con encriptación basada en curvas elipticas.,” 2006. R. Darrel and A. Scott, Guide to Elliptic Curve Cryptography. 2004. J. Guajardo, S. S. Kumar, C. Paar, and J. Pelzl, “Efficient software- implementation of finite fields with applications to cryptography,” Acta Appl. Math., vol. 93, no. 1–3, pp. 3–32, 2006, doi: 10.1007/s10440-006-9046-1. B. Schneier, Schneier’s Cryptography Classics Library: Applied Cryptography, Secrets and Lies, and Practical Cryptography. 2007. F. Rodriguez and A. Díaz, Cryptographic Algorithms on Reconfigurable Hardware. 2011. C. D. E. Algoritmos et al., Introducción a La Teoría de Números Ejemplos y Algoritmos. 2006. E. Sava and C. K. Koc, “The Montgomery Modular Inverse - Revisited,” IEEE Trans. Comput., vol. 49, no. 7, pp. 763–766, 2000. D. Stebila and S. C. Shantz, “Generic GF ( 2 m ) Arithmetic in Software and its Application to ECC.” J.-P. Deschamps, J. L. Imaña, and G. Sutter, Hardware Implementation of Finite-Field Arithmetic. 2013. “GitHub - KULeuven-COSIC/UnrolledBlockCiphers.” https://github.com/KULeuven-COSIC/UnrolledBlockCiphers (accessed Sep. 10, 2021). “Basys 3 Reference Manual - Digilent Reference.” https://digilent.com/reference/programmable-logic/basys-3/referencemanual?redirect=1 (accessed Sep. 13, 2021). |
| dc.rights.none.fl_str_mv |
Derechos Reservados - Universidad de los Llanos, 2021 |
| dc.rights.uri.none.fl_str_mv |
https://creativecommons.org/licenses/by-nc-nd/4.0/ |
| dc.rights.license.none.fl_str_mv |
Atribución-NoComercial-SinDerivadas 4.0 Internacional (CC BY-NC-ND 4.0) |
| dc.rights.accessrights.none.fl_str_mv |
info:eu-repo/semantics/openAccess |
| dc.rights.coar.none.fl_str_mv |
http://purl.org/coar/access_right/c_abf2 |
| rights_invalid_str_mv |
Derechos Reservados - Universidad de los Llanos, 2021 https://creativecommons.org/licenses/by-nc-nd/4.0/ Atribución-NoComercial-SinDerivadas 4.0 Internacional (CC 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 |
110 páginas |
| dc.format.mimetype.none.fl_str_mv |
application/pdf |
| dc.publisher.none.fl_str_mv |
Universidad de los Llanos |
| dc.publisher.faculty.none.fl_str_mv |
Facultad de Ciencias Básicas e Ingeniería |
| dc.publisher.place.none.fl_str_mv |
Villavicencio |
| dc.publisher.program.none.fl_str_mv |
Ingeniería Electrónica |
| dc.publisher.branch.none.fl_str_mv |
Sede Barcelona |
| publisher.none.fl_str_mv |
Universidad de los Llanos |
| institution |
Universidad de los Llanos |
| bitstream.url.fl_str_mv |
https://repositorio.unillanos.edu.co/bitstreams/098d1466-f118-4a9e-88dd-9757220ac060/download https://repositorio.unillanos.edu.co/bitstreams/334bd06c-1ab2-40be-816f-1c7720409f26/download https://repositorio.unillanos.edu.co/bitstreams/062daefa-6351-48c7-8c4b-29e8c786c4dd/download https://repositorio.unillanos.edu.co/bitstreams/1c8dcfbd-04be-4fa6-994c-c329bd1179a0/download https://repositorio.unillanos.edu.co/bitstreams/9c179056-8ca5-4779-aeec-8110dfee8632/download https://repositorio.unillanos.edu.co/bitstreams/35fee543-4163-477d-8bd2-3f8c7f158630/download https://repositorio.unillanos.edu.co/bitstreams/bffdb406-f1a8-48b0-a4c5-660700085474/download |
| bitstream.checksum.fl_str_mv |
73a5432e0b76442b22b026844140d683 cfd5e1cc05a6b2115c257201afe570a9 66b1c9e59898a1a5fdf9ac0a8c18204a 5603c99a363f85122f22b76dd9dac79b 4de76efbf030ebe94d6ddd530389a8b1 82a5c62585c994767d751d09651eb072 37cd52c1db7403d94fb5c2699462263a |
| bitstream.checksumAlgorithm.fl_str_mv |
MD5 MD5 MD5 MD5 MD5 MD5 MD5 |
| repository.name.fl_str_mv |
Repositorio Universidad de Los Llanos |
| repository.mail.fl_str_mv |
repositorio@unillanos.edu.co |
| _version_ |
1851059040862339072 |
| spelling |
Velásquez Clavijo, Fabianvirtual::1400-1Rincón González, José GabrielVelásquez Clavijo, Fabianvirtual::1401-12025-10-27T15:51:05Z2025-10-27T15:51:05Z2021Rincón González, José Gabriel (2021). Diseño e implementación del criptosistema SIMON en FPGA [Trabajo de grado, Universidad de los Llanos]. Repositorio digital Universidad de los Llanos.https://repositorio.unillanos.edu.co/handle/001/5455Universidad de los LlanosRepositorio digital Universidad de los Llanoshttps://repositorio.unillanos.edu.co/Incluye tablas, gráficos y anexos.En este trabajo de grado se presenta el diseño de la arquitectura en hardware de un criptoprocesador SIMON32/64 utilizando como dispositivo de lógica programable una FPGA Artix-7, integrada en la tarjeta de desarrollo Basys 3 de Digilent, con lenguaje de descripción de hardware VHDL. En el proyecto se utilizó el entorno de desarrollo integrado VIVADO de Xilinx en su versión 2020.2, en la cual se sintetizó y simuló la arquitectura diseñada. Esta implementación realiza el cifrado y descifrado en circuitos combinacionales respectivamente, soporta bloques de datos de 32 bits y una longitud de clave de 64 bits, desarrollando 32 rondas en cada proceso, siguiendo las consideraciones sugeridas por la NSA (Agencia de Seguridad Nacional) para la implementación más pequeña del algoritmo SIMON. Los resultados de la operación de cifrado y descifrado SIMON32/64 se visualizaron en un circuito externo de displays de siete segmentos conectados con los puertos Pmod de la Basys 3, mientras que el ingreso de los datos y la selección de la operación se realizó con algunos periféricos de la tarjeta como switches y botones. Otra parte importante del presente proyecto fue el estudio de algunos algoritmos que implementan operaciones aritméticas en campos primos y en campos binarios, tales como la suma, la multiplicación, el cuadrado y la exponenciación de elementos del campo. Los algoritmos seleccionados fueron programados en lenguaje Python, obteniéndose un conjunto de funciones que conforman una librería, la cual es un complemento del proyecto principal del cual hace parte el presente trabajo, que se denomina MODELAMIENTO Y SIMULACIÓN DE LA ARITMÉTICA DE CAMPOS DE GALOIS () APLICADA EN LA CRIPTOGRAFÍA DE CLPÚBLICA,LICA realizado por los grupos de investigación MACRYPT y EYSI de la Universidad de Los Llanos.Resumen. -- Introducción. -- 1. Marco teórico. -- 1.1. Preliminares de estructuras algebraicas. -- 1.1.1. Grupos. -- 1.1.2. Anillos. -- 1.1.3. Campos finitos o de Galois. -- 1.2. Base teórica de cristología. -- 1.2.1. Criptoanálisis. -- 1.2.2. Criptografía. -- 1.2.3. Criptografía simétrica o de clave secreta. -- 1.2.4. Criptografía asimétrica o de clave pública. -- 1.3. Aritmética de campo. -- 1.3.1. Aritmética de campo primo (). -- 1.3.1.1. Suma mod p. . -- 1.3.1.2. Multiplicación mod p. . -- 1.3.1.3. Exponenciación mod p. . -- 1.3.1.4. Inversión . -- 1.3.2. Aritmética de campo binario (2). -- 1.3.2.1. Suma (). -- 1.3.2.2. Multiplicación (). -- 1.3.2.3. Cuadrado (). -- 1.3.2.4. Exponenciación mod f(x(). -- 1.4. Dispositivo FPGA. -- 1.5. Lenguaje VHDL. -- 1.6. Criptosistema SIMON. -- 1.6.1. Estructura del algoritmo. -- 1.6.2. Proceso de cifrado y descifrado. -- 1.6.3. Proceso de expansión de claves. -- 2. Metodología. -- 2.1. Fases del proyecto. -- 2.1.1. Estudio temático y análisis de los conceptos preliminares. -- 2.1.1.1 Análisis de seguridad informática en las telecomunicaciones. -- 2.1.1.2 Análisis del criptosistema SIMON. -- 2.1.1.3 Análisis de los conceptos matemáticos requeridos para la implementación de las operaciones en campos primos y binarios. -- 2.1.1.4 Estudio del requerimiento de la implementación del hardware. -- 2.1.2 Fase de diseño. -- 2.1.2.1 Diseño del criptoprocesador. -- 2.1.2.1.1 Bloque de cifrado. -- 2.1.2.1.2 Bloque de descifrado. -- 2.1.2.2 Diseño de la implementación del criptoprocesador. -- 2.1.2.3 Selección de algoritmos para operaciones aritméticas en (). -- 2.1.2.4 Selección de algoritmos para operaciones aritméticas en (2). -- 3. Resultados. -- 3.1 Implementación del cifrador. -- 3.2 Implementación del descifrador. -- 3.3 Implementación del criptoprocesador SIMON32/64. -- 3.4 Implementación de las operaciones aritméticas en (). -- 4. Análisis de resultados. -- 5. Conclusiones. -- 6. Bibliografía. -- 7. Anexo 1 Código VHDL de la función de ronda para SIMON32/64. -- 8. Anexo 2 Código VHDL de la función generación de claves de ronda para SIMON32/64. -- 9. Anexo 3 Código VHDL para generar el bloque cifrador SIMON32/64. -- 10. Anexo 4 Código VHDL para Testbench del cifrador SIMON32/64. -- 11. Anexo 5 Código VHDL para circuito del descifrador SIMON32/64. -- 12. Anexo 6 Código VHDL para testbench del descifrador SIMON32/64. -- 13. Anexo 7. Interfaz gráfica implementada en Python para testear el criptosistema SIMON, AES y DES.Trabajo de grado presentado como requisito parcial para optar al título de ingeniero electrónico.PregradoIngeniero(a) Electrónico(a)110 páginasapplication/pdfspaUniversidad de los LlanosFacultad de Ciencias Básicas e IngenieríaVillavicencioIngeniería ElectrónicaSede BarcelonaDerechos Reservados - Universidad de los Llanos, 2021https://creativecommons.org/licenses/by-nc-nd/4.0/Atribución-NoComercial-SinDerivadas 4.0 Internacional (CC BY-NC-ND 4.0)info:eu-repo/semantics/openAccesshttp://purl.org/coar/access_right/c_abf2Diseño e implementación del criptosistema SIMON en FPGATrabajo de grado - Pregradoinfo:eu-repo/semantics/bachelorThesisinfo:eu-repo/semantics/publishedVersionhttp://purl.org/coar/resource_type/c_7a1fTexthttp://purl.org/coar/version/c_970fb48d4fbd8a85Proyectos de investigaciónA. Menezes, P. van Oorschot, and S. Vanstone, “Handbook of Applied Cryptography,” 1996, p. 591~634.E. Savaş and Ç. K. Koç, “Finite field arithmetic for cryptography,” IEEE Circuits Syst. Mag., vol. 10, no. 2, pp. 40–56, 2010, doi: 10.1109/MCAS.2010.936785.M. M. Martinez, “Una introduccion a la criptografia. El criptosistema R.S.A.,” I.E.S. Cardenal Lòpez de Mendoza, 2004.L. W. Ray Beaulieu, Douglas Shors, Jason Smith, Stefan Treatman-Clark, Bryan Weeks, “THE SIMON AND SPECK FAMILIES OF LIGHTWEIGHT BLOCK CIPHERS,” Natl. Secur. Agency, p. 42, 2013.J. Aguirre, CURSO DE SEGURIDAD INFORMÁTICA Y CRIPTOGRAFÍA, vol. 3.1. 2003.M. P. Martorell, “CRIPTOLOGÌA,” Esc. Univ. Politec. Matarò, p. 40.A. Jorge, Libro Electrònico de Seguridad Informatica y Criptografia, 6th ed. 2006.M. Rao, A. Kaknjo, E. Omerdic, D. Toal, and T. Newe, “An efficient high speed AES implementation using traditional FPGA and LabVIEW FPGA platforms,” 2019, pp. 93–100, doi: 10.1109/CyberC.2018.00028.C. G. Justo, Seguridad en Redes Telemàticas. Madrid España, 2004.N. Velasquez and N. Pineda, “Diseño e Implementacion de un Prototipo Criptoprocesador AES-Rijndael en FPGA,” Universidad de Los Llanos, 2007.A. Bogdanov, L. R. Knudsen, G. Leander, C. Paar, and A. Poschmann, “PRESENT : An Ultra-Lightweight Block Cipher.”X. Fan, K. Mandal, and G. Gong, “WG-8: A lightweight stream cipher for resource-constrained smart devices,” Lect. Notes Inst. Comput. Sci. Soc. Telecommun. Eng. LNICST, vol. 115, pp. 617–632, 2013, doi: 10.1007/9783-642-37949-9_54.W. Diehl, A. Abdulgadir, J. P. Kaps, and K. Gaj, “Comparing the cost of protecting selected lightweight block ciphers against differential power analysis in low-cost FPGAs,” Computers, vol. 7, no. 2, pp. 128–135, 2018, doi: 10.3390/computers7020028.S. Abed, R. Jaffal, B. J. Mohd, and M. Alshayeji, “FPGA modeling and optimization of a SIMON lightweight block cipher,” Sensors (Switzerland), vol. 19, no. 4, 2019, doi: 10.3390/s19040913.P. Maene and I. Verbauwhede, “Single-cycle implementations of block ciphers,” Lect. Notes Comput. Sci. (including Subser. Lect. Notes Artif. Intell. Lect. Notes Bioinformatics), vol. 9542, pp. 131–147, 2016, doi: 10.1007/9783-319-29078-2_8.A. Shahverdi, M. Taha, and T. Eisenbarth, “Lightweight Side Channel Resistance: Threshold Implementations of Simon,” IEEE Trans. Comput., vol. 66, no. 4, pp. 661–671, 2017, doi: 10.1109/TC.2016.2614504.B. Rashidi, “High-throughput and lightweight hardware structures of HIGHT and PRESENT block ciphers,” Microelectronics J., vol. 90, no. June 2018, pp. 232–252, 2019, doi: 10.1016/j.mejo.2019.06.012.S. B. Basturk, C. E. J. Dancer, and T. McNally, “High-throughput Configurable SIMON Architecture for Flexible Security,” Pharmacol. Res., p. 104743, 2020, doi: 10.1016/j.mejo.2021.105085.W. El Hadj Youssef, A. Abdelli, F. Dridi, and M. Machhout, “Hardware implementation of secure lightweight cryptographic designs for IoT applications,” Secur. Commun. Networks, vol. 2020, 2020, doi: 10.1155/2020/8860598.S. Sadiya Shireen, B. Murali Krishna, K. Naga Lakshmi Prasanna, and A. Poorna Chander Reddy, “FPGA based RSA authenticated data hiding in image through steganography,” Int. J. Innov. Technol. Explor. Eng., vol. 8, no. 4, pp. 550–554, 2019, [Online]. Available: https://www.scopus.com/inward/record.uri?eid=2-s2.085061568077&partnerID=40&md5=2eb1b8bdee6547d6f4cb4395f65bc41b.F. Velasquez Clavijo, “Diseño e implementación de un prototipo de transmisión de datos punto a punto con encriptación basada en curvas elipticas.,” 2006.R. Darrel and A. Scott, Guide to Elliptic Curve Cryptography. 2004.J. Guajardo, S. S. Kumar, C. Paar, and J. Pelzl, “Efficient software- implementation of finite fields with applications to cryptography,” Acta Appl. Math., vol. 93, no. 1–3, pp. 3–32, 2006, doi: 10.1007/s10440-006-9046-1.B. Schneier, Schneier’s Cryptography Classics Library: Applied Cryptography, Secrets and Lies, and Practical Cryptography. 2007.F. Rodriguez and A. Díaz, Cryptographic Algorithms on Reconfigurable Hardware. 2011.C. D. E. Algoritmos et al., Introducción a La Teoría de Números Ejemplos y Algoritmos. 2006.E. Sava and C. K. Koc, “The Montgomery Modular Inverse - Revisited,” IEEE Trans. Comput., vol. 49, no. 7, pp. 763–766, 2000.D. Stebila and S. C. Shantz, “Generic GF ( 2 m ) Arithmetic in Software and its Application to ECC.”J.-P. Deschamps, J. L. Imaña, and G. Sutter, Hardware Implementation of Finite-Field Arithmetic. 2013.“GitHub - KULeuven-COSIC/UnrolledBlockCiphers.” https://github.com/KULeuven-COSIC/UnrolledBlockCiphers (accessed Sep. 10, 2021).“Basys 3 Reference Manual - Digilent Reference.” https://digilent.com/reference/programmable-logic/basys-3/referencemanual?redirect=1 (accessed Sep. 13, 2021).Amplificadores (Electrónica)Conductores de línea (Circuitos integrados)Análisis de circuitos eléctricosCircuitos asíncronosCriptosistema simonFPGACriptoanálisisCriptografíaCriptografía asimétricaDescifradorCriptoprocesador SIMON32/64Publicationhttps://scholar.google.es/citations?user=3p9rItQAAAAJ&hl=esvirtual::1400-1https://scholar.google.es/citations?user=3p9rItQAAAAJ&hl=esvirtual::1401-1https://scienti.minciencias.gov.co/cvlac/visualizador/generarCurriculoCv.do?cod_rh=0000869740virtual::1400-1https://scienti.minciencias.gov.co/cvlac/visualizador/generarCurriculoCv.do?cod_rh=0000869740virtual::1401-19164f7a7-be74-44ef-82b8-ee048a615442virtual::1400-19164f7a7-be74-44ef-82b8-ee048a615442virtual::1400-19164f7a7-be74-44ef-82b8-ee048a615442virtual::1401-19164f7a7-be74-44ef-82b8-ee048a615442virtual::1401-1LICENSElicense.txtlicense.txttext/plain; charset=utf-815543https://repositorio.unillanos.edu.co/bitstreams/098d1466-f118-4a9e-88dd-9757220ac060/download73a5432e0b76442b22b026844140d683MD51ORIGINALTrabajo de gradoTrabajo de gradoapplication/pdf3439860https://repositorio.unillanos.edu.co/bitstreams/334bd06c-1ab2-40be-816f-1c7720409f26/downloadcfd5e1cc05a6b2115c257201afe570a9MD52Carta de autorizaciónCarta de autorizaciónapplication/pdf730630https://repositorio.unillanos.edu.co/bitstreams/062daefa-6351-48c7-8c4b-29e8c786c4dd/download66b1c9e59898a1a5fdf9ac0a8c18204aMD53TEXTTrabajo de grado.txtTrabajo de grado.txtExtracted texttext/plain104951https://repositorio.unillanos.edu.co/bitstreams/1c8dcfbd-04be-4fa6-994c-c329bd1179a0/download5603c99a363f85122f22b76dd9dac79bMD54Carta de autorización.txtCarta de autorización.txtExtracted texttext/plain2064https://repositorio.unillanos.edu.co/bitstreams/9c179056-8ca5-4779-aeec-8110dfee8632/download4de76efbf030ebe94d6ddd530389a8b1MD56THUMBNAILTrabajo de grado.jpgTrabajo de grado.jpgGenerated Thumbnailimage/jpeg6002https://repositorio.unillanos.edu.co/bitstreams/35fee543-4163-477d-8bd2-3f8c7f158630/download82a5c62585c994767d751d09651eb072MD55Carta de autorización.jpgCarta de autorización.jpgGenerated Thumbnailimage/jpeg11571https://repositorio.unillanos.edu.co/bitstreams/bffdb406-f1a8-48b0-a4c5-660700085474/download37cd52c1db7403d94fb5c2699462263aMD57001/5455oai:repositorio.unillanos.edu.co:001/54552025-10-28 04:00:50.072https://creativecommons.org/licenses/by-nc-nd/4.0/Derechos Reservados - Universidad de los Llanos, 2021open.accesshttps://repositorio.unillanos.edu.coRepositorio Universidad de Los Llanosrepositorio@unillanos.edu.coPHA+TEEgT0JSQSAoVEFMIFkgQ09NTyBTRSBERUZJTkUgTcOBUyBBREVMQU5URSkgU0UgT1RPUkdBIEJBSk8gTE9TIFRFUk1JTk9TIERFIEVTVEEgTElDRU5DSUEgUMOaQkxJQ0EgREUgQ1JFQVRJVkUgQ09NTU9OUyAo4oCcTFBDQ+KAnSBPIOKAnExJQ0VOQ0lB4oCdKS4gTEEgT0JSQSBFU1TDgSBQUk9URUdJREEgUE9SIERFUkVDSE9TIERFIEFVVE9SIFkvVSBPVFJBUyBMRVlFUyBBUExJQ0FCTEVTLiBRVUVEQSBQUk9ISUJJRE8gQ1VBTFFVSUVSIFVTTyBRVUUgU0UgSEFHQSBERSBMQSBPQlJBIFFVRSBOTyBDVUVOVEUgQ09OIExBIEFVVE9SSVpBQ0nDk04gUEVSVElORU5URSBERSBDT05GT1JNSURBRCBDT04gTE9TIFTDiVJNSU5PUyBERSBFU1RBIExJQ0VOQ0lBIFkgREUgTEEgTEVZIERFIERFUkVDSE8gREUgQVVUT1IuPC9wPgo8cD5NRURJQU5URSBFTCBFSkVSQ0lDSU8gREUgQ1VBTFFVSUVSQSBERSBMT1MgREVSRUNIT1MgUVVFIFNFIE9UT1JHQU4gRU4gRVNUQSBMSUNFTkNJQSwgVVNURUQgQUNFUFRBIFkgQUNVRVJEQSBRVUVEQVIgT0JMSUdBRE8gRU4gTE9TIFRFUk1JTk9TIFFVRSBTRSBTRcORQUxBTiBFTiBFTExBLiBFTCBMSUNFTkNJQU5URSBDT05DRURFIEEgVVNURUQgTE9TIERFUkVDSE9TIENPTlRFTklET1MgRU4gRVNUQSBMSUNFTkNJQSBDT05ESUNJT05BRE9TIEEgTEEgQUNFUFRBQ0nDk04gREUgU1VTIFRFUk1JTk9TIFkgQ09ORElDSU9ORVMuPC9wPgo8b2wgdHlwZT0iMSI+CiAgPGxpPgogICAgRGVmaW5pY2lvbmVzCiAgICA8b2wgdHlwZT1hPgogICAgICA8bGk+T2JyYSBDb2xlY3RpdmEgZXMgdW5hIG9icmEsIHRhbCBjb21vIHVuYSBwdWJsaWNhY2nDs24gcGVyacOzZGljYSwgdW5hIGFudG9sb2fDrWEsIG8gdW5hIGVuY2ljbG9wZWRpYSwgZW4gbGEgcXVlIGxhIG9icmEgZW4gc3UgdG90YWxpZGFkLCBzaW4gbW9kaWZpY2FjacOzbiBhbGd1bmEsIGp1bnRvIGNvbiB1biBncnVwbyBkZSBvdHJhcyBjb250cmlidWNpb25lcyBxdWUgY29uc3RpdHV5ZW4gb2JyYXMgc2VwYXJhZGFzIGUgaW5kZXBlbmRpZW50ZXMgZW4gc8OtIG1pc21hcywgc2UgaW50ZWdyYW4gZW4gdW4gdG9kbyBjb2xlY3Rpdm8uIFVuYSBPYnJhIHF1ZSBjb25zdGl0dXllIHVuYSBvYnJhIGNvbGVjdGl2YSBubyBzZSBjb25zaWRlcmFyw6EgdW5hIE9icmEgRGVyaXZhZGEgKGNvbW8gc2UgZGVmaW5lIGFiYWpvKSBwYXJhIGxvcyBwcm9ww7NzaXRvcyBkZSBlc3RhIGxpY2VuY2lhLiBhcXVlbGxhIHByb2R1Y2lkYSBwb3IgdW4gZ3J1cG8gZGUgYXV0b3JlcywgZW4gcXVlIGxhIE9icmEgc2UgZW5jdWVudHJhIHNpbiBtb2RpZmljYWNpb25lcywganVudG8gY29uIHVuYSBjaWVydGEgY2FudGlkYWQgZGUgb3RyYXMgY29udHJpYnVjaW9uZXMsIHF1ZSBjb25zdGl0dXllbiBlbiBzw60gbWlzbW9zIHRyYWJham9zIHNlcGFyYWRvcyBlIGluZGVwZW5kaWVudGVzLCBxdWUgc29uIGludGVncmFkb3MgYWwgdG9kbyBjb2xlY3Rpdm8sIHRhbGVzIGNvbW8gcHVibGljYWNpb25lcyBwZXJpw7NkaWNhcywgYW50b2xvZ8OtYXMgbyBlbmNpY2xvcGVkaWFzLjwvbGk+CiAgICAgIDxsaT5PYnJhIERlcml2YWRhIHNpZ25pZmljYSB1bmEgb2JyYSBiYXNhZGEgZW4gbGEgb2JyYSBvYmpldG8gZGUgZXN0YSBsaWNlbmNpYSBvIGVuIMOpc3RhIHkgb3RyYXMgb2JyYXMgcHJlZXhpc3RlbnRlcywgdGFsZXMgY29tbyB0cmFkdWNjaW9uZXMsIGFycmVnbG9zIG11c2ljYWxlcywgZHJhbWF0aXphY2lvbmVzLCDigJxmaWNjaW9uYWxpemFjaW9uZXPigJ0sIHZlcnNpb25lcyBwYXJhIGNpbmUsIOKAnGdyYWJhY2lvbmVzIGRlIHNvbmlkb+KAnSwgcmVwcm9kdWNjaW9uZXMgZGUgYXJ0ZSwgcmVzw7ptZW5lcywgY29uZGVuc2FjaW9uZXMsIG8gY3VhbHF1aWVyIG90cmEgZW4gbGEgcXVlIGxhIG9icmEgcHVlZGEgc2VyIHRyYW5zZm9ybWFkYSwgY2FtYmlhZGEgbyBhZGFwdGFkYSwgZXhjZXB0byBhcXVlbGxhcyBxdWUgY29uc3RpdHV5YW4gdW5hIG9icmEgY29sZWN0aXZhLCBsYXMgcXVlIG5vIHNlcsOhbiBjb25zaWRlcmFkYXMgdW5hIG9icmEgZGVyaXZhZGEgcGFyYSBlZmVjdG9zIGRlIGVzdGEgbGljZW5jaWEuIChQYXJhIGV2aXRhciBkdWRhcywgZW4gZWwgY2FzbyBkZSBxdWUgbGEgT2JyYSBzZWEgdW5hIGNvbXBvc2ljacOzbiBtdXNpY2FsIG8gdW5hIGdyYWJhY2nDs24gc29ub3JhLCBwYXJhIGxvcyBlZmVjdG9zIGRlIGVzdGEgTGljZW5jaWEgbGEgc2luY3Jvbml6YWNpw7NuIHRlbXBvcmFsIGRlIGxhIE9icmEgY29uIHVuYSBpbWFnZW4gZW4gbW92aW1pZW50byBzZSBjb25zaWRlcmFyw6EgdW5hIE9icmEgRGVyaXZhZGEgcGFyYSBsb3MgZmluZXMgZGUgZXN0YSBsaWNlbmNpYSkuPC9saT4KICAgICAgPGxpPkxpY2VuY2lhbnRlLCBlcyBlbCBpbmRpdmlkdW8gbyBsYSBlbnRpZGFkIHRpdHVsYXIgZGUgbG9zIGRlcmVjaG9zIGRlIGF1dG9yIHF1ZSBvZnJlY2UgbGEgT2JyYSBlbiBjb25mb3JtaWRhZCBjb24gbGFzIGNvbmRpY2lvbmVzIGRlIGVzdGEgTGljZW5jaWEuPC9saT4KICAgICAgPGxpPkF1dG9yIG9yaWdpbmFsLCBlcyBlbCBpbmRpdmlkdW8gcXVlIGNyZcOzIGxhIE9icmEuPC9saT4KICAgICAgPGxpPk9icmEsIGVzIGFxdWVsbGEgb2JyYSBzdXNjZXB0aWJsZSBkZSBwcm90ZWNjacOzbiBwb3IgZWwgcsOpZ2ltZW4gZGUgRGVyZWNobyBkZSBBdXRvciB5IHF1ZSBlcyBvZnJlY2lkYSBlbiBsb3MgdMOpcm1pbm9zIGRlIGVzdGEgbGljZW5jaWE8L2xpPgogICAgICA8bGk+VXN0ZWQsIGVzIGVsIGluZGl2aWR1byBvIGxhIGVudGlkYWQgcXVlIGVqZXJjaXRhIGxvcyBkZXJlY2hvcyBvdG9yZ2Fkb3MgYWwgYW1wYXJvIGRlIGVzdGEgTGljZW5jaWEgeSBxdWUgY29uIGFudGVyaW9yaWRhZCBubyBoYSB2aW9sYWRvIGxhcyBjb25kaWNpb25lcyBkZSBsYSBtaXNtYSByZXNwZWN0byBhIGxhIE9icmEsIG8gcXVlIGhheWEgb2J0ZW5pZG8gYXV0b3JpemFjacOzbiBleHByZXNhIHBvciBwYXJ0ZSBkZWwgTGljZW5jaWFudGUgcGFyYSBlamVyY2VyIGxvcyBkZXJlY2hvcyBhbCBhbXBhcm8gZGUgZXN0YSBMaWNlbmNpYSBwZXNlIGEgdW5hIHZpb2xhY2nDs24gYW50ZXJpb3IuPC9saT4KICAgIDwvb2w+CiAgPC9saT4KICA8YnIvPgogIDxsaT4KICAgIERlcmVjaG9zIGRlIFVzb3MgSG9ucmFkb3MgeSBleGNlcGNpb25lcyBMZWdhbGVzLgogICAgPHA+TmFkYSBlbiBlc3RhIExpY2VuY2lhIHBvZHLDoSBzZXIgaW50ZXJwcmV0YWRvIGNvbW8gdW5hIGRpc21pbnVjacOzbiwgbGltaXRhY2nDs24gbyByZXN0cmljY2nDs24gZGUgbG9zIGRlcmVjaG9zIGRlcml2YWRvcyBkZWwgdXNvIGhvbnJhZG8geSBvdHJhcyBsaW1pdGFjaW9uZXMgbyBleGNlcGNpb25lcyBhIGxvcyBkZXJlY2hvcyBkZWwgYXV0b3IgYmFqbyBlbCByw6lnaW1lbiBsZWdhbCB2aWdlbnRlIG8gZGVyaXZhZG8gZGUgY3VhbHF1aWVyIG90cmEgbm9ybWEgcXVlIHNlIGxlIGFwbGlxdWUuPC9wPgogIDwvbGk+CiAgPGxpPgogICAgQ29uY2VzacOzbiBkZSBsYSBMaWNlbmNpYS4KICAgIDxwPkJham8gbG9zIHTDqXJtaW5vcyB5IGNvbmRpY2lvbmVzIGRlIGVzdGEgTGljZW5jaWEsIGVsIExpY2VuY2lhbnRlIG90b3JnYSBhIFVzdGVkIHVuYSBsaWNlbmNpYSBtdW5kaWFsLCBsaWJyZSBkZSByZWdhbMOtYXMsIG5vIGV4Y2x1c2l2YSB5IHBlcnBldHVhIChkdXJhbnRlIHRvZG8gZWwgcGVyw61vZG8gZGUgdmlnZW5jaWEgZGUgbG9zIGRlcmVjaG9zIGRlIGF1dG9yKSBwYXJhIGVqZXJjZXIgZXN0b3MgZGVyZWNob3Mgc29icmUgbGEgT2JyYSB0YWwgeSBjb21vIHNlIGluZGljYSBhIGNvbnRpbnVhY2nDs246PC9wPgogICAgPG9sIHR5cGU9ImEiPgogICAgICA8bGk+UmVwcm9kdWNpciBsYSBPYnJhLCBpbmNvcnBvcmFyIGxhIE9icmEgZW4gdW5hIG8gbcOhcyBPYnJhcyBDb2xlY3RpdmFzLCB5IHJlcHJvZHVjaXIgbGEgT2JyYSBpbmNvcnBvcmFkYSBlbiBsYXMgT2JyYXMgQ29sZWN0aXZhcy48L2xpPgogICAgICA8bGk+RGlzdHJpYnVpciBjb3BpYXMgbyBmb25vZ3JhbWFzIGRlIGxhcyBPYnJhcywgZXhoaWJpcmxhcyBww7pibGljYW1lbnRlLCBlamVjdXRhcmxhcyBww7pibGljYW1lbnRlIHkvbyBwb25lcmxhcyBhIGRpc3Bvc2ljacOzbiBww7pibGljYSwgaW5jbHV5w6luZG9sYXMgY29tbyBpbmNvcnBvcmFkYXMgZW4gT2JyYXMgQ29sZWN0aXZhcywgc2Vnw7puIGNvcnJlc3BvbmRhLjwvbGk+CiAgICAgIDxsaT5EaXN0cmlidWlyIGNvcGlhcyBkZSBsYXMgT2JyYXMgRGVyaXZhZGFzIHF1ZSBzZSBnZW5lcmVuLCBleGhpYmlybGFzIHDDumJsaWNhbWVudGUsIGVqZWN1dGFybGFzIHDDumJsaWNhbWVudGUgeS9vIHBvbmVybGFzIGEgZGlzcG9zaWNpw7NuIHDDumJsaWNhLjwvbGk+CiAgICA8L29sPgogICAgPHA+TG9zIGRlcmVjaG9zIG1lbmNpb25hZG9zIGFudGVyaW9ybWVudGUgcHVlZGVuIHNlciBlamVyY2lkb3MgZW4gdG9kb3MgbG9zIG1lZGlvcyB5IGZvcm1hdG9zLCBhY3R1YWxtZW50ZSBjb25vY2lkb3MgbyBxdWUgc2UgaW52ZW50ZW4gZW4gZWwgZnV0dXJvLiBMb3MgZGVyZWNob3MgYW50ZXMgbWVuY2lvbmFkb3MgaW5jbHV5ZW4gZWwgZGVyZWNobyBhIHJlYWxpemFyIGRpY2hhcyBtb2RpZmljYWNpb25lcyBlbiBsYSBtZWRpZGEgcXVlIHNlYW4gdMOpY25pY2FtZW50ZSBuZWNlc2FyaWFzIHBhcmEgZWplcmNlciBsb3MgZGVyZWNob3MgZW4gb3RybyBtZWRpbyBvIGZvcm1hdG9zLCBwZXJvIGRlIG90cmEgbWFuZXJhIHVzdGVkIG5vIGVzdMOhIGF1dG9yaXphZG8gcGFyYSByZWFsaXphciBvYnJhcyBkZXJpdmFkYXMuIFRvZG9zIGxvcyBkZXJlY2hvcyBubyBvdG9yZ2Fkb3MgZXhwcmVzYW1lbnRlIHBvciBlbCBMaWNlbmNpYW50ZSBxdWVkYW4gcG9yIGVzdGUgbWVkaW8gcmVzZXJ2YWRvcywgaW5jbHV5ZW5kbyBwZXJvIHNpbiBsaW1pdGFyc2UgYSBhcXVlbGxvcyBxdWUgc2UgbWVuY2lvbmFuIGVuIGxhcyBzZWNjaW9uZXMgNChkKSB5IDQoZSkuPC9wPgogIDwvbGk+CiAgPGJyLz4KICA8bGk+CiAgICBSZXN0cmljY2lvbmVzLgogICAgPHA+TGEgbGljZW5jaWEgb3RvcmdhZGEgZW4gbGEgYW50ZXJpb3IgU2VjY2nDs24gMyBlc3TDoSBleHByZXNhbWVudGUgc3VqZXRhIHkgbGltaXRhZGEgcG9yIGxhcyBzaWd1aWVudGVzIHJlc3RyaWNjaW9uZXM6PC9wPgogICAgPG9sIHR5cGU9ImEiPgogICAgICA8bGk+VXN0ZWQgcHVlZGUgZGlzdHJpYnVpciwgZXhoaWJpciBww7pibGljYW1lbnRlLCBlamVjdXRhciBww7pibGljYW1lbnRlLCBvIHBvbmVyIGEgZGlzcG9zaWNpw7NuIHDDumJsaWNhIGxhIE9icmEgc8OzbG8gYmFqbyBsYXMgY29uZGljaW9uZXMgZGUgZXN0YSBMaWNlbmNpYSwgeSBVc3RlZCBkZWJlIGluY2x1aXIgdW5hIGNvcGlhIGRlIGVzdGEgbGljZW5jaWEgbyBkZWwgSWRlbnRpZmljYWRvciBVbml2ZXJzYWwgZGUgUmVjdXJzb3MgZGUgbGEgbWlzbWEgY29uIGNhZGEgY29waWEgZGUgbGEgT2JyYSBxdWUgZGlzdHJpYnV5YSwgZXhoaWJhIHDDumJsaWNhbWVudGUsIGVqZWN1dGUgcMO6YmxpY2FtZW50ZSBvIHBvbmdhIGEgZGlzcG9zaWNpw7NuIHDDumJsaWNhLiBObyBlcyBwb3NpYmxlIG9mcmVjZXIgbyBpbXBvbmVyIG5pbmd1bmEgY29uZGljacOzbiBzb2JyZSBsYSBPYnJhIHF1ZSBhbHRlcmUgbyBsaW1pdGUgbGFzIGNvbmRpY2lvbmVzIGRlIGVzdGEgTGljZW5jaWEgbyBlbCBlamVyY2ljaW8gZGUgbG9zIGRlcmVjaG9zIGRlIGxvcyBkZXN0aW5hdGFyaW9zIG90b3JnYWRvcyBlbiBlc3RlIGRvY3VtZW50by4gTm8gZXMgcG9zaWJsZSBzdWJsaWNlbmNpYXIgbGEgT2JyYS4gVXN0ZWQgZGViZSBtYW50ZW5lciBpbnRhY3RvcyB0b2RvcyBsb3MgYXZpc29zIHF1ZSBoYWdhbiByZWZlcmVuY2lhIGEgZXN0YSBMaWNlbmNpYSB5IGEgbGEgY2zDoXVzdWxhIGRlIGxpbWl0YWNpw7NuIGRlIGdhcmFudMOtYXMuIFVzdGVkIG5vIHB1ZWRlIGRpc3RyaWJ1aXIsIGV4aGliaXIgcMO6YmxpY2FtZW50ZSwgZWplY3V0YXIgcMO6YmxpY2FtZW50ZSwgbyBwb25lciBhIGRpc3Bvc2ljacOzbiBww7pibGljYSBsYSBPYnJhIGNvbiBhbGd1bmEgbWVkaWRhIHRlY25vbMOzZ2ljYSBxdWUgY29udHJvbGUgZWwgYWNjZXNvIG8gbGEgdXRpbGl6YWNpw7NuIGRlIGVsbGEgZGUgdW5hIGZvcm1hIHF1ZSBzZWEgaW5jb25zaXN0ZW50ZSBjb24gbGFzIGNvbmRpY2lvbmVzIGRlIGVzdGEgTGljZW5jaWEuIExvIGFudGVyaW9yIHNlIGFwbGljYSBhIGxhIE9icmEgaW5jb3Jwb3JhZGEgYSB1bmEgT2JyYSBDb2xlY3RpdmEsIHBlcm8gZXN0byBubyBleGlnZSBxdWUgbGEgT2JyYSBDb2xlY3RpdmEgYXBhcnRlIGRlIGxhIG9icmEgbWlzbWEgcXVlZGUgc3VqZXRhIGEgbGFzIGNvbmRpY2lvbmVzIGRlIGVzdGEgTGljZW5jaWEuIFNpIFVzdGVkIGNyZWEgdW5hIE9icmEgQ29sZWN0aXZhLCBwcmV2aW8gYXZpc28gZGUgY3VhbHF1aWVyIExpY2VuY2lhbnRlIGRlYmUsIGVuIGxhIG1lZGlkYSBkZSBsbyBwb3NpYmxlLCBlbGltaW5hciBkZSBsYSBPYnJhIENvbGVjdGl2YSBjdWFscXVpZXIgcmVmZXJlbmNpYSBhIGRpY2hvIExpY2VuY2lhbnRlIG8gYWwgQXV0b3IgT3JpZ2luYWwsIHNlZ8O6biBsbyBzb2xpY2l0YWRvIHBvciBlbCBMaWNlbmNpYW50ZSB5IGNvbmZvcm1lIGxvIGV4aWdlIGxhIGNsw6F1c3VsYSA0KGMpLjwvbGk+CiAgICAgIDxsaT5Vc3RlZCBubyBwdWVkZSBlamVyY2VyIG5pbmd1bm8gZGUgbG9zIGRlcmVjaG9zIHF1ZSBsZSBoYW4gc2lkbyBvdG9yZ2Fkb3MgZW4gbGEgU2VjY2nDs24gMyBwcmVjZWRlbnRlIGRlIG1vZG8gcXVlIGVzdMOpbiBwcmluY2lwYWxtZW50ZSBkZXN0aW5hZG9zIG8gZGlyZWN0YW1lbnRlIGRpcmlnaWRvcyBhIGNvbnNlZ3VpciB1biBwcm92ZWNobyBjb21lcmNpYWwgbyB1bmEgY29tcGVuc2FjacOzbiBtb25ldGFyaWEgcHJpdmFkYS4gRWwgaW50ZXJjYW1iaW8gZGUgbGEgT2JyYSBwb3Igb3RyYXMgb2JyYXMgcHJvdGVnaWRhcyBwb3IgZGVyZWNob3MgZGUgYXV0b3IsIHlhIHNlYSBhIHRyYXbDqXMgZGUgdW4gc2lzdGVtYSBwYXJhIGNvbXBhcnRpciBhcmNoaXZvcyBkaWdpdGFsZXMgKGRpZ2l0YWwgZmlsZS1zaGFyaW5nKSBvIGRlIGN1YWxxdWllciBvdHJhIG1hbmVyYSBubyBzZXLDoSBjb25zaWRlcmFkbyBjb21vIGVzdGFyIGRlc3RpbmFkbyBwcmluY2lwYWxtZW50ZSBvIGRpcmlnaWRvIGRpcmVjdGFtZW50ZSBhIGNvbnNlZ3VpciB1biBwcm92ZWNobyBjb21lcmNpYWwgbyB1bmEgY29tcGVuc2FjacOzbiBtb25ldGFyaWEgcHJpdmFkYSwgc2llbXByZSBxdWUgbm8gc2UgcmVhbGljZSB1biBwYWdvIG1lZGlhbnRlIHVuYSBjb21wZW5zYWNpw7NuIG1vbmV0YXJpYSBlbiByZWxhY2nDs24gY29uIGVsIGludGVyY2FtYmlvIGRlIG9icmFzIHByb3RlZ2lkYXMgcG9yIGVsIGRlcmVjaG8gZGUgYXV0b3IuPC9saT4KICAgICAgPGxpPlNpIHVzdGVkIGRpc3RyaWJ1eWUsIGV4aGliZSBww7pibGljYW1lbnRlLCBlamVjdXRhIHDDumJsaWNhbWVudGUgbyBlamVjdXRhIHDDumJsaWNhbWVudGUgZW4gZm9ybWEgZGlnaXRhbCBsYSBPYnJhIG8gY3VhbHF1aWVyIE9icmEgRGVyaXZhZGEgdSBPYnJhIENvbGVjdGl2YSwgVXN0ZWQgZGViZSBtYW50ZW5lciBpbnRhY3RhIHRvZGEgbGEgaW5mb3JtYWNpw7NuIGRlIGRlcmVjaG8gZGUgYXV0b3IgZGUgbGEgT2JyYSB5IHByb3BvcmNpb25hciwgZGUgZm9ybWEgcmF6b25hYmxlIHNlZ8O6biBlbCBtZWRpbyBvIG1hbmVyYSBxdWUgVXN0ZWQgZXN0w6kgdXRpbGl6YW5kbzogKGkpIGVsIG5vbWJyZSBkZWwgQXV0b3IgT3JpZ2luYWwgc2kgZXN0w6EgcHJvdmlzdG8gKG8gc2V1ZMOzbmltbywgc2kgZnVlcmUgYXBsaWNhYmxlKSwgeS9vIChpaSkgZWwgbm9tYnJlIGRlIGxhIHBhcnRlIG8gbGFzIHBhcnRlcyBxdWUgZWwgQXV0b3IgT3JpZ2luYWwgeS9vIGVsIExpY2VuY2lhbnRlIGh1YmllcmVuIGRlc2lnbmFkbyBwYXJhIGxhIGF0cmlidWNpw7NuICh2LmcuLCB1biBpbnN0aXR1dG8gcGF0cm9jaW5hZG9yLCBlZGl0b3JpYWwsIHB1YmxpY2FjacOzbikgZW4gbGEgaW5mb3JtYWNpw7NuIGRlIGxvcyBkZXJlY2hvcyBkZSBhdXRvciBkZWwgTGljZW5jaWFudGUsIHTDqXJtaW5vcyBkZSBzZXJ2aWNpb3MgbyBkZSBvdHJhcyBmb3JtYXMgcmF6b25hYmxlczsgZWwgdMOtdHVsbyBkZSBsYSBPYnJhIHNpIGVzdMOhIHByb3Zpc3RvOyBlbiBsYSBtZWRpZGEgZGUgbG8gcmF6b25hYmxlbWVudGUgZmFjdGlibGUgeSwgc2kgZXN0w6EgcHJvdmlzdG8sIGVsIElkZW50aWZpY2Fkb3IgVW5pZm9ybWUgZGUgUmVjdXJzb3MgKFVuaWZvcm0gUmVzb3VyY2UgSWRlbnRpZmllcikgcXVlIGVsIExpY2VuY2lhbnRlIGVzcGVjaWZpY2EgcGFyYSBzZXIgYXNvY2lhZG8gY29uIGxhIE9icmEsIHNhbHZvIHF1ZSB0YWwgVVJJIG5vIHNlIHJlZmllcmEgYSBsYSBub3RhIHNvYnJlIGxvcyBkZXJlY2hvcyBkZSBhdXRvciBvIGEgbGEgaW5mb3JtYWNpw7NuIHNvYnJlIGVsIGxpY2VuY2lhbWllbnRvIGRlIGxhIE9icmE7IHkgZW4gZWwgY2FzbyBkZSB1bmEgT2JyYSBEZXJpdmFkYSwgYXRyaWJ1aXIgZWwgY3LDqWRpdG8gaWRlbnRpZmljYW5kbyBlbCB1c28gZGUgbGEgT2JyYSBlbiBsYSBPYnJhIERlcml2YWRhICh2LmcuLCAiVHJhZHVjY2nDs24gRnJhbmNlc2EgZGUgbGEgT2JyYSBkZWwgQXV0b3IgT3JpZ2luYWwsIiBvICJHdWnDs24gQ2luZW1hdG9ncsOhZmljbyBiYXNhZG8gZW4gbGEgT2JyYSBvcmlnaW5hbCBkZWwgQXV0b3IgT3JpZ2luYWwiKS4gVGFsIGNyw6lkaXRvIHB1ZWRlIHNlciBpbXBsZW1lbnRhZG8gZGUgY3VhbHF1aWVyIGZvcm1hIHJhem9uYWJsZTsgZW4gZWwgY2Fzbywgc2luIGVtYmFyZ28sIGRlIE9icmFzIERlcml2YWRhcyB1IE9icmFzIENvbGVjdGl2YXMsIHRhbCBjcsOpZGl0byBhcGFyZWNlcsOhLCBjb21vIG3DrW5pbW8sIGRvbmRlIGFwYXJlY2UgZWwgY3LDqWRpdG8gZGUgY3VhbHF1aWVyIG90cm8gYXV0b3IgY29tcGFyYWJsZSB5IGRlIHVuYSBtYW5lcmEsIGFsIG1lbm9zLCB0YW4gZGVzdGFjYWRhIGNvbW8gZWwgY3LDqWRpdG8gZGUgb3RybyBhdXRvciBjb21wYXJhYmxlLjwvbGk+CiAgICAgIDxsaT4KICAgICAgICBQYXJhIGV2aXRhciB0b2RhIGNvbmZ1c2nDs24sIGVsIExpY2VuY2lhbnRlIGFjbGFyYSBxdWUsIGN1YW5kbyBsYSBvYnJhIGVzIHVuYSBjb21wb3NpY2nDs24gbXVzaWNhbDoKICAgICAgICA8b2wgdHlwZT0iaSI+CiAgICAgICAgICA8bGk+UmVnYWzDrWFzIHBvciBpbnRlcnByZXRhY2nDs24geSBlamVjdWNpw7NuIGJham8gbGljZW5jaWFzIGdlbmVyYWxlcy4gRWwgTGljZW5jaWFudGUgc2UgcmVzZXJ2YSBlbCBkZXJlY2hvIGV4Y2x1c2l2byBkZSBhdXRvcml6YXIgbGEgZWplY3VjacOzbiBww7pibGljYSBvIGxhIGVqZWN1Y2nDs24gcMO6YmxpY2EgZGlnaXRhbCBkZSBsYSBvYnJhIHkgZGUgcmVjb2xlY3Rhciwgc2VhIGluZGl2aWR1YWxtZW50ZSBvIGEgdHJhdsOpcyBkZSB1bmEgc29jaWVkYWQgZGUgZ2VzdGnDs24gY29sZWN0aXZhIGRlIGRlcmVjaG9zIGRlIGF1dG9yIHkgZGVyZWNob3MgY29uZXhvcyAocG9yIGVqZW1wbG8sIFNBWUNPKSwgbGFzIHJlZ2Fsw61hcyBwb3IgbGEgZWplY3VjacOzbiBww7pibGljYSBvIHBvciBsYSBlamVjdWNpw7NuIHDDumJsaWNhIGRpZ2l0YWwgZGUgbGEgb2JyYSAocG9yIGVqZW1wbG8gV2ViY2FzdCkgbGljZW5jaWFkYSBiYWpvIGxpY2VuY2lhcyBnZW5lcmFsZXMsIHNpIGxhIGludGVycHJldGFjacOzbiBvIGVqZWN1Y2nDs24gZGUgbGEgb2JyYSBlc3TDoSBwcmltb3JkaWFsbWVudGUgb3JpZW50YWRhIHBvciBvIGRpcmlnaWRhIGEgbGEgb2J0ZW5jacOzbiBkZSB1bmEgdmVudGFqYSBjb21lcmNpYWwgbyB1bmEgY29tcGVuc2FjacOzbiBtb25ldGFyaWEgcHJpdmFkYS48L2xpPgogICAgICAgICAgPGxpPlJlZ2Fsw61hcyBwb3IgRm9ub2dyYW1hcy4gRWwgTGljZW5jaWFudGUgc2UgcmVzZXJ2YSBlbCBkZXJlY2hvIGV4Y2x1c2l2byBkZSByZWNvbGVjdGFyLCBpbmRpdmlkdWFsbWVudGUgbyBhIHRyYXbDqXMgZGUgdW5hIHNvY2llZGFkIGRlIGdlc3Rpw7NuIGNvbGVjdGl2YSBkZSBkZXJlY2hvcyBkZSBhdXRvciB5IGRlcmVjaG9zIGNvbmV4b3MgKHBvciBlamVtcGxvLCBsb3MgY29uc2FncmFkb3MgcG9yIGxhIFNBWUNPKSwgdW5hIGFnZW5jaWEgZGUgZGVyZWNob3MgbXVzaWNhbGVzIG8gYWxnw7puIGFnZW50ZSBkZXNpZ25hZG8sIGxhcyByZWdhbMOtYXMgcG9yIGN1YWxxdWllciBmb25vZ3JhbWEgcXVlIFVzdGVkIGNyZWUgYSBwYXJ0aXIgZGUgbGEgb2JyYSAo4oCcdmVyc2nDs24gY292ZXLigJ0pIHkgZGlzdHJpYnV5YSwgZW4gbG9zIHTDqXJtaW5vcyBkZWwgcsOpZ2ltZW4gZGUgZGVyZWNob3MgZGUgYXV0b3IsIHNpIGxhIGNyZWFjacOzbiBvIGRpc3RyaWJ1Y2nDs24gZGUgZXNhIHZlcnNpw7NuIGNvdmVyIGVzdMOhIHByaW1vcmRpYWxtZW50ZSBkZXN0aW5hZGEgbyBkaXJpZ2lkYSBhIG9idGVuZXIgdW5hIHZlbnRhamEgY29tZXJjaWFsIG8gdW5hIGNvbXBlbnNhY2nDs24gbW9uZXRhcmlhIHByaXZhZGEuPC9saT4KICAgICAgICA8L29sPgogICAgICA8L2xpPgogICAgICA8bGk+R2VzdGnDs24gZGUgRGVyZWNob3MgZGUgQXV0b3Igc29icmUgSW50ZXJwcmV0YWNpb25lcyB5IEVqZWN1Y2lvbmVzIERpZ2l0YWxlcyAoV2ViQ2FzdGluZykuIFBhcmEgZXZpdGFyIHRvZGEgY29uZnVzacOzbiwgZWwgTGljZW5jaWFudGUgYWNsYXJhIHF1ZSwgY3VhbmRvIGxhIG9icmEgc2VhIHVuIGZvbm9ncmFtYSwgZWwgTGljZW5jaWFudGUgc2UgcmVzZXJ2YSBlbCBkZXJlY2hvIGV4Y2x1c2l2byBkZSBhdXRvcml6YXIgbGEgZWplY3VjacOzbiBww7pibGljYSBkaWdpdGFsIGRlIGxhIG9icmEgKHBvciBlamVtcGxvLCB3ZWJjYXN0KSB5IGRlIHJlY29sZWN0YXIsIGluZGl2aWR1YWxtZW50ZSBvIGEgdHJhdsOpcyBkZSB1bmEgc29jaWVkYWQgZGUgZ2VzdGnDs24gY29sZWN0aXZhIGRlIGRlcmVjaG9zIGRlIGF1dG9yIHkgZGVyZWNob3MgY29uZXhvcyAocG9yIGVqZW1wbG8sIEFDSU5QUk8pLCBsYXMgcmVnYWzDrWFzIHBvciBsYSBlamVjdWNpw7NuIHDDumJsaWNhIGRpZ2l0YWwgZGUgbGEgb2JyYSAocG9yIGVqZW1wbG8sIHdlYmNhc3QpLCBzdWpldGEgYSBsYXMgZGlzcG9zaWNpb25lcyBhcGxpY2FibGVzIGRlbCByw6lnaW1lbiBkZSBEZXJlY2hvIGRlIEF1dG9yLCBzaSBlc3RhIGVqZWN1Y2nDs24gcMO6YmxpY2EgZGlnaXRhbCBlc3TDoSBwcmltb3JkaWFsbWVudGUgZGlyaWdpZGEgYSBvYnRlbmVyIHVuYSB2ZW50YWphIGNvbWVyY2lhbCBvIHVuYSBjb21wZW5zYWNpw7NuIG1vbmV0YXJpYSBwcml2YWRhLjwvbGk+CiAgICA8L29sPgogIDwvbGk+CiAgPGJyLz4KICA8bGk+CiAgICBSZXByZXNlbnRhY2lvbmVzLCBHYXJhbnTDrWFzIHkgTGltaXRhY2lvbmVzIGRlIFJlc3BvbnNhYmlsaWRhZC4KICAgIDxwPkEgTUVOT1MgUVVFIExBUyBQQVJURVMgTE8gQUNPUkRBUkFOIERFIE9UUkEgRk9STUEgUE9SIEVTQ1JJVE8sIEVMIExJQ0VOQ0lBTlRFIE9GUkVDRSBMQSBPQlJBIChFTiBFTCBFU1RBRE8gRU4gRUwgUVVFIFNFIEVOQ1VFTlRSQSkg4oCcVEFMIENVQUzigJ0sIFNJTiBCUklOREFSIEdBUkFOVMONQVMgREUgQ0xBU0UgQUxHVU5BIFJFU1BFQ1RPIERFIExBIE9CUkEsIFlBIFNFQSBFWFBSRVNBLCBJTVBMw41DSVRBLCBMRUdBTCBPIENVQUxRVUlFUkEgT1RSQSwgSU5DTFVZRU5ETywgU0lOIExJTUlUQVJTRSBBIEVMTEFTLCBHQVJBTlTDjUFTIERFIFRJVFVMQVJJREFELCBDT01FUkNJQUJJTElEQUQsIEFEQVBUQUJJTElEQUQgTyBBREVDVUFDScOTTiBBIFBST1DDk1NJVE8gREVURVJNSU5BRE8sIEFVU0VOQ0lBIERFIElORlJBQ0NJw5NOLCBERSBBVVNFTkNJQSBERSBERUZFQ1RPUyBMQVRFTlRFUyBPIERFIE9UUk8gVElQTywgTyBMQSBQUkVTRU5DSUEgTyBBVVNFTkNJQSBERSBFUlJPUkVTLCBTRUFOIE8gTk8gREVTQ1VCUklCTEVTIChQVUVEQU4gTyBOTyBTRVIgRVNUT1MgREVTQ1VCSUVSVE9TKS4gQUxHVU5BUyBKVVJJU0RJQ0NJT05FUyBOTyBQRVJNSVRFTiBMQSBFWENMVVNJw5NOIERFIEdBUkFOVMONQVMgSU1QTMONQ0lUQVMsIEVOIENVWU8gQ0FTTyBFU1RBIEVYQ0xVU0nDk04gUFVFREUgTk8gQVBMSUNBUlNFIEEgVVNURUQuPC9wPgogIDwvbGk+CiAgPGJyLz4KICA8bGk+CiAgICBMaW1pdGFjacOzbiBkZSByZXNwb25zYWJpbGlkYWQuCiAgICA8cD5BIE1FTk9TIFFVRSBMTyBFWElKQSBFWFBSRVNBTUVOVEUgTEEgTEVZIEFQTElDQUJMRSwgRUwgTElDRU5DSUFOVEUgTk8gU0VSw4EgUkVTUE9OU0FCTEUgQU5URSBVU1RFRCBQT1IgREHDkU8gQUxHVU5PLCBTRUEgUE9SIFJFU1BPTlNBQklMSURBRCBFWFRSQUNPTlRSQUNUVUFMLCBQUkVDT05UUkFDVFVBTCBPIENPTlRSQUNUVUFMLCBPQkpFVElWQSBPIFNVQkpFVElWQSwgU0UgVFJBVEUgREUgREHDkU9TIE1PUkFMRVMgTyBQQVRSSU1PTklBTEVTLCBESVJFQ1RPUyBPIElORElSRUNUT1MsIFBSRVZJU1RPUyBPIElNUFJFVklTVE9TIFBST0RVQ0lET1MgUE9SIEVMIFVTTyBERSBFU1RBIExJQ0VOQ0lBIE8gREUgTEEgT0JSQSwgQVVOIENVQU5ETyBFTCBMSUNFTkNJQU5URSBIQVlBIFNJRE8gQURWRVJUSURPIERFIExBIFBPU0lCSUxJREFEIERFIERJQ0hPUyBEQcORT1MuIEFMR1VOQVMgTEVZRVMgTk8gUEVSTUlURU4gTEEgRVhDTFVTScOTTiBERSBDSUVSVEEgUkVTUE9OU0FCSUxJREFELCBFTiBDVVlPIENBU08gRVNUQSBFWENMVVNJw5NOIFBVRURFIE5PIEFQTElDQVJTRSBBIFVTVEVELjwvcD4KICA8L2xpPgogIDxici8+CiAgPGxpPgogICAgVMOpcm1pbm8uCiAgICA8b2wgdHlwZT0iYSI+CiAgICAgIDxsaT5Fc3RhIExpY2VuY2lhIHkgbG9zIGRlcmVjaG9zIG90b3JnYWRvcyBlbiB2aXJ0dWQgZGUgZWxsYSB0ZXJtaW5hcsOhbiBhdXRvbcOhdGljYW1lbnRlIHNpIFVzdGVkIGluZnJpbmdlIGFsZ3VuYSBjb25kaWNpw7NuIGVzdGFibGVjaWRhIGVuIGVsbGEuIFNpbiBlbWJhcmdvLCBsb3MgaW5kaXZpZHVvcyBvIGVudGlkYWRlcyBxdWUgaGFuIHJlY2liaWRvIE9icmFzIERlcml2YWRhcyBvIENvbGVjdGl2YXMgZGUgVXN0ZWQgZGUgY29uZm9ybWlkYWQgY29uIGVzdGEgTGljZW5jaWEsIG5vIHZlcsOhbiB0ZXJtaW5hZGFzIHN1cyBsaWNlbmNpYXMsIHNpZW1wcmUgcXVlIGVzdG9zIGluZGl2aWR1b3MgbyBlbnRpZGFkZXMgc2lnYW4gY3VtcGxpZW5kbyDDrW50ZWdyYW1lbnRlIGxhcyBjb25kaWNpb25lcyBkZSBlc3RhcyBsaWNlbmNpYXMuIExhcyBTZWNjaW9uZXMgMSwgMiwgNSwgNiwgNywgeSA4IHN1YnNpc3RpcsOhbiBhIGN1YWxxdWllciB0ZXJtaW5hY2nDs24gZGUgZXN0YSBMaWNlbmNpYS48L2xpPgogICAgICA8bGk+U3VqZXRhIGEgbGFzIGNvbmRpY2lvbmVzIHkgdMOpcm1pbm9zIGFudGVyaW9yZXMsIGxhIGxpY2VuY2lhIG90b3JnYWRhIGFxdcOtIGVzIHBlcnBldHVhIChkdXJhbnRlIGVsIHBlcsOtb2RvIGRlIHZpZ2VuY2lhIGRlIGxvcyBkZXJlY2hvcyBkZSBhdXRvciBkZSBsYSBvYnJhKS4gTm8gb2JzdGFudGUgbG8gYW50ZXJpb3IsIGVsIExpY2VuY2lhbnRlIHNlIHJlc2VydmEgZWwgZGVyZWNobyBhIHB1YmxpY2FyIHkvbyBlc3RyZW5hciBsYSBPYnJhIGJham8gY29uZGljaW9uZXMgZGUgbGljZW5jaWEgZGlmZXJlbnRlcyBvIGEgZGVqYXIgZGUgZGlzdHJpYnVpcmxhIGVuIGxvcyB0w6lybWlub3MgZGUgZXN0YSBMaWNlbmNpYSBlbiBjdWFscXVpZXIgbW9tZW50bzsgZW4gZWwgZW50ZW5kaWRvLCBzaW4gZW1iYXJnbywgcXVlIGVzYSBlbGVjY2nDs24gbm8gc2Vydmlyw6EgcGFyYSByZXZvY2FyIGVzdGEgbGljZW5jaWEgbyBxdWUgZGViYSBzZXIgb3RvcmdhZGEgLCBiYWpvIGxvcyB0w6lybWlub3MgZGUgZXN0YSBsaWNlbmNpYSksIHkgZXN0YSBsaWNlbmNpYSBjb250aW51YXLDoSBlbiBwbGVubyB2aWdvciB5IGVmZWN0byBhIG1lbm9zIHF1ZSBzZWEgdGVybWluYWRhIGNvbW8gc2UgZXhwcmVzYSBhdHLDoXMuIExhIExpY2VuY2lhIHJldm9jYWRhIGNvbnRpbnVhcsOhIHNpZW5kbyBwbGVuYW1lbnRlIHZpZ2VudGUgeSBlZmVjdGl2YSBzaSBubyBzZSBsZSBkYSB0w6lybWlubyBlbiBsYXMgY29uZGljaW9uZXMgaW5kaWNhZGFzIGFudGVyaW9ybWVudGUuPC9saT4KICAgIDwvb2w+CiAgPC9saT4KICA8YnIvPgogIDxsaT4KICAgIFZhcmlvcy4KICAgIDxvbCB0eXBlPSJhIj4KICAgICAgPGxpPkNhZGEgdmV6IHF1ZSBVc3RlZCBkaXN0cmlidXlhIG8gcG9uZ2EgYSBkaXNwb3NpY2nDs24gcMO6YmxpY2EgbGEgT2JyYSBvIHVuYSBPYnJhIENvbGVjdGl2YSwgZWwgTGljZW5jaWFudGUgb2ZyZWNlcsOhIGFsIGRlc3RpbmF0YXJpbyB1bmEgbGljZW5jaWEgZW4gbG9zIG1pc21vcyB0w6lybWlub3MgeSBjb25kaWNpb25lcyBxdWUgbGEgbGljZW5jaWEgb3RvcmdhZGEgYSBVc3RlZCBiYWpvIGVzdGEgTGljZW5jaWEuPC9saT4KICAgICAgPGxpPlNpIGFsZ3VuYSBkaXNwb3NpY2nDs24gZGUgZXN0YSBMaWNlbmNpYSByZXN1bHRhIGludmFsaWRhZGEgbyBubyBleGlnaWJsZSwgc2Vnw7puIGxhIGxlZ2lzbGFjacOzbiB2aWdlbnRlLCBlc3RvIG5vIGFmZWN0YXLDoSBuaSBsYSB2YWxpZGV6IG5pIGxhIGFwbGljYWJpbGlkYWQgZGVsIHJlc3RvIGRlIGNvbmRpY2lvbmVzIGRlIGVzdGEgTGljZW5jaWEgeSwgc2luIGFjY2nDs24gYWRpY2lvbmFsIHBvciBwYXJ0ZSBkZSBsb3Mgc3VqZXRvcyBkZSBlc3RlIGFjdWVyZG8sIGFxdcOpbGxhIHNlIGVudGVuZGVyw6EgcmVmb3JtYWRhIGxvIG3DrW5pbW8gbmVjZXNhcmlvIHBhcmEgaGFjZXIgcXVlIGRpY2hhIGRpc3Bvc2ljacOzbiBzZWEgdsOhbGlkYSB5IGV4aWdpYmxlLjwvbGk+CiAgICAgIDxsaT5OaW5nw7puIHTDqXJtaW5vIG8gZGlzcG9zaWNpw7NuIGRlIGVzdGEgTGljZW5jaWEgc2UgZXN0aW1hcsOhIHJlbnVuY2lhZGEgeSBuaW5ndW5hIHZpb2xhY2nDs24gZGUgZWxsYSBzZXLDoSBjb25zZW50aWRhIGEgbWVub3MgcXVlIGVzYSByZW51bmNpYSBvIGNvbnNlbnRpbWllbnRvIHNlYSBvdG9yZ2FkbyBwb3IgZXNjcml0byB5IGZpcm1hZG8gcG9yIGxhIHBhcnRlIHF1ZSByZW51bmNpZSBvIGNvbnNpZW50YS48L2xpPgogICAgICA8bGk+RXN0YSBMaWNlbmNpYSByZWZsZWphIGVsIGFjdWVyZG8gcGxlbm8gZW50cmUgbGFzIHBhcnRlcyByZXNwZWN0byBhIGxhIE9icmEgYXF1w60gbGljZW5jaWFkYS4gTm8gaGF5IGFycmVnbG9zLCBhY3VlcmRvcyBvIGRlY2xhcmFjaW9uZXMgcmVzcGVjdG8gYSBsYSBPYnJhIHF1ZSBubyBlc3TDqW4gZXNwZWNpZmljYWRvcyBlbiBlc3RlIGRvY3VtZW50by4gRWwgTGljZW5jaWFudGUgbm8gc2UgdmVyw6EgbGltaXRhZG8gcG9yIG5pbmd1bmEgZGlzcG9zaWNpw7NuIGFkaWNpb25hbCBxdWUgcHVlZGEgc3VyZ2lyIGVuIGFsZ3VuYSBjb211bmljYWNpw7NuIGVtYW5hZGEgZGUgVXN0ZWQuIEVzdGEgTGljZW5jaWEgbm8gcHVlZGUgc2VyIG1vZGlmaWNhZGEgc2luIGVsIGNvbnNlbnRpbWllbnRvIG11dHVvIHBvciBlc2NyaXRvIGRlbCBMaWNlbmNpYW50ZSB5IFVzdGVkLjwvbGk+CiAgICA8L29sPgogIDwvbGk+CiAgPGJyLz4KPC9vbD4K |
