Arquitectura de Computadoras con RISC-V

La formación en ingeniería de computadoras cumple una función fundamental en la educación en la ciencia de la computación. Esta capacitación proporciona a los estudiantes los conocimientos que necesitan para diseñar, configurar y maximizar las capacidades de los sistemas computacionales. Históricame...

Full description

Autores:
Jaramillo Villegas, José Alfredo
Zuluaga Bucheli, Hernán Mauricio
Sepúlveda Caviedes, Camilo
Tipo de recurso:
Book
Fecha de publicación:
2022
Institución:
Universidad Tecnológica de Pereira
Repositorio:
Repositorio Institucional UTP
Idioma:
spa
OAI Identifier:
oai:repositorio.utp.edu.co:11059/14770
Acceso en línea:
https://hdl.handle.net/11059/14770
https://doi.org/10.22517/9789587227956
https://repositorio.utp.edu.co/home
Palabra clave:
000 - Ciencias de la computación, información y obras generales::004 - Procesamiento de datos Ciencia de los computadores
Historia de la computadora
Arquitectura de computadoras - Fundamentos
Estructuras de datos y algoritmos
Procesamiento de señales
Redes de computadoras y comunicaciones
Electrónica digital
Arquitectura de computadores
Historia de la computación
Set de instrucciones reducidas
Rights
openAccess
License
Atribución-NoComercial-SinDerivadas 4.0 Internacional (CC BY-NC-ND 4.0)
id UTP2_0f1fd60ed24041c334ef50a7e5c798e4
oai_identifier_str oai:repositorio.utp.edu.co:11059/14770
network_acronym_str UTP2
network_name_str Repositorio Institucional UTP
repository_id_str
dc.title.spa.fl_str_mv Arquitectura de Computadoras con RISC-V
title Arquitectura de Computadoras con RISC-V
spellingShingle Arquitectura de Computadoras con RISC-V
000 - Ciencias de la computación, información y obras generales::004 - Procesamiento de datos Ciencia de los computadores
Historia de la computadora
Arquitectura de computadoras - Fundamentos
Estructuras de datos y algoritmos
Procesamiento de señales
Redes de computadoras y comunicaciones
Electrónica digital
Arquitectura de computadores
Historia de la computación
Set de instrucciones reducidas
title_short Arquitectura de Computadoras con RISC-V
title_full Arquitectura de Computadoras con RISC-V
title_fullStr Arquitectura de Computadoras con RISC-V
title_full_unstemmed Arquitectura de Computadoras con RISC-V
title_sort Arquitectura de Computadoras con RISC-V
dc.creator.fl_str_mv Jaramillo Villegas, José Alfredo
Zuluaga Bucheli, Hernán Mauricio
Sepúlveda Caviedes, Camilo
dc.contributor.author.none.fl_str_mv Jaramillo Villegas, José Alfredo
Zuluaga Bucheli, Hernán Mauricio
Sepúlveda Caviedes, Camilo
dc.subject.ddc.none.fl_str_mv 000 - Ciencias de la computación, información y obras generales::004 - Procesamiento de datos Ciencia de los computadores
topic 000 - Ciencias de la computación, información y obras generales::004 - Procesamiento de datos Ciencia de los computadores
Historia de la computadora
Arquitectura de computadoras - Fundamentos
Estructuras de datos y algoritmos
Procesamiento de señales
Redes de computadoras y comunicaciones
Electrónica digital
Arquitectura de computadores
Historia de la computación
Set de instrucciones reducidas
dc.subject.lemb.none.fl_str_mv Historia de la computadora
Arquitectura de computadoras - Fundamentos
Estructuras de datos y algoritmos
Procesamiento de señales
Redes de computadoras y comunicaciones
Electrónica digital
dc.subject.proposal.spa.fl_str_mv Arquitectura de computadores
Historia de la computación
Set de instrucciones reducidas
description La formación en ingeniería de computadoras cumple una función fundamental en la educación en la ciencia de la computación. Esta capacitación proporciona a los estudiantes los conocimientos que necesitan para diseñar, configurar y maximizar las capacidades de los sistemas computacionales. Históricamente, esta área ha sido enseñada con arquitecturas de conjuntos de instrucciones de tipo reducido (RISC) dada la dificultad que conlleva el entendimiento de las arquitecturas de tipo complejo (CISC), tal como su nombre lo indica. En las últimas tres décadas, esta área ha pasado por varias arquitecturas RISC, tales como DLX, MIPS, SPARC y ARM. Sin embargo, ninguna ha permitido una integración vertical totalmente abierta, de libre uso y sin restricciones por licenciamiento. Esta arquitectura RISC-V pretende brindar un estándar moderno que fácilmente pueda cumplir las necesidades pedagógicas en el aula de clase. De igual forma, RISC-V logra brindar la robustez necesaria para cumplir con los requerimientos para su implementación en procesadores para teléfonos inteligentes, tabletas y sistemas embebidos, en donde actualmente domina la arquitectura ARM; y en computadoras portátiles y de escritorio, servidores y supercomputadoras, en donde domina la arquitectura X86-64. Podría proyectarse que en los próximos años el impacto de RISC-V en la arquitectura de computadoras será equivalente al rol que ha jugado Linux en los sistemas operativos.
publishDate 2022
dc.date.issued.none.fl_str_mv 2022
dc.date.accessioned.none.fl_str_mv 2023-08-03T16:56:04Z
dc.date.available.none.fl_str_mv 2023-08-03T16:56:04Z
dc.type.spa.fl_str_mv Libro
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_2f33
dc.type.content.none.fl_str_mv Text
dc.type.driver.none.fl_str_mv info:eu-repo/semantics/book
format http://purl.org/coar/resource_type/c_2f33
status_str acceptedVersion
dc.identifier.uri.none.fl_str_mv https://hdl.handle.net/11059/14770
dc.identifier.eisbn.none.fl_str_mv 978-958-722-795-6
dc.identifier.doi.none.fl_str_mv https://doi.org/10.22517/9789587227956
dc.identifier.instname.none.fl_str_mv Universidad Tecnológica de Pereira
dc.identifier.repourl.none.fl_str_mv https://repositorio.utp.edu.co/home
url https://hdl.handle.net/11059/14770
https://doi.org/10.22517/9789587227956
https://repositorio.utp.edu.co/home
identifier_str_mv 978-958-722-795-6
Universidad Tecnológica de Pereira
dc.language.iso.none.fl_str_mv spa
language spa
dc.relation.ispartofseries.none.fl_str_mv Textos Academicos
dc.relation.references.none.fl_str_mv [1] John Adam Presper y col. «See Buchholz; A survey of digital com puter memory systems». En: In Proceedings of the I. R. E 41.10 (1919), págs. 1902-1971.
[2] Luigia Carlucci Aiello. «The multifaceted impact of Ada Lovelace in the digital age». En: Artificial Intelligence 235 (2016), págs. 58-62
[3] Gabriel Andrade. «Internet Encyclopedia of Philosophy». En: Enl@ ce: Revista Venezolana de Información, Tecnología y Conocimiento 8.1 (2011), págs. 106-118.
[4] Herbert Apaza. «Yupana, Material Manipulativo para la Educa ción Matemática. Justicia social y el cambio educativo en niños de las comunidades quechuas alto andinos del Perú». En: Uni versidad Compluense de Madrid (jul. de 2017), pág. 352. url: https://docplayer.es/77540368-Tesis-doctoral-tesis doctoral.html
[5] Gerard Candón Arenas. «Implementación de un procesador RISC V en una FPGA». Tesis doct. 2020. url: https://upcommons. upc . edu / bitstream / handle / 2117 / 329221 / 151993 . pdf ? isAllowed=y&sequence=1.
[6] Marcia Ascher y Robert Ascher. «Quipu». En: Encyclopaedia of the History of Science, Technology, and Medicine in Non-Western Cultures. Springer, Dordrecht, mar. de 2008, págs. 1863-1865. doi: 10.1007/978- 1- 4020- 4425- 0_9192. url: https://link.
[7] Atanasoff-Berry computer | Encyclopedia of Computer Science. url: https://dl.acm.org/doi/abs/10.5555/1074100.1074145 (visitado 03-10-2022).
[8] Charles Babbage. «Chapter viii-of the analytical engine». En: Pas sages from The Life of a Philosopher. Longman, Roberts, and Green, London (1864), págs. 112-141.
[9] Kerstin Beer y col. «Training deep quantum neural networks». En: Nature Communications 11.1 (2020). issn: 20411723. doi: 10 . 1038 / s41467 - 020 - 14454 - 2. url: https : / / doi . org / 10 . 1038/s41467-020-14454-2
[10] Simon Blackburn. The Oxford dictionary of philosophy. OUP Ox ford, 2005
[11] Capítulo 4. Historia de la Informática. Introducción a la Informática (GAP). Profesor Rafael Menendez-Barzanallana Asensio. Universi dad de Murcia (España). url: https://www.um.es/docencia/ barzana/II/Ii04.html.
[12] Frank Carter. The turing bombe. Bletchley Park Trust, 2008
[13] George C Chase. «History of mechanical computing machinery». En: IEEE Annals of the History of Computing 2.03 (1980), págs. 198-226.
[14] Computing History. url: https : / / jva . cs . iastate . edu / history.php
[15] Allen WM Coombs. «The making of Colossus». En: Annals of the History of Computing 5.3 (1983), págs. 253-259.
[16] B. Jack Copeland. «Colossus: Its origins and originators». En: IEEE Annals of the History of Computing 26.4 (oct. de 2004), págs. 38-45. issn: 10586180. doi: 10.1109/MAHC.2004.26
[17] Brian Jack Copeland. Alan Turing: El pionero de la era de la in formación - Brian Jack Copeland - Google Libros. 2013. url: https : / / books . google . com . co / books ? hl = es & lr = &id = CSpZAgAAQBAJ & oi = fnd & pg = PA13 & dq = alan + turing & ots = 9RtjHrz3X3&sig=3QAaUHsxZpPcAgmuhIkPvqmR-Lo#v=onepage& q=alan%20turing&f=false%20https://books.google.com. pa / books ? id = CSpZAgAAQBAJ & pg = PA253 & dq = Prueba + de + Turing&hl=es&sa=X&redir_esc=y#v=onepage&q=Prueba% 20de%20Turing&f=false (visitado 03-10-2022)
[18] J. P. Eckert. «A Survey of Digital Computer Memory Systems». En: Proceedings of the IRE 41.10 (1953), págs. 1393-1406. issn: 00968390. doi: 10.1109/JRPROC.1953.274316.
[19] Jr John Presper Eckert y John W Mauchly. Electronic numerical integrator and computer. US Patent 3,120,606. 1964.
[20] Peter Eckstein. «J. Presper Eckert». En: IEEE Annals of the History of Computing 18.1 (1996), págs. 25-44. issn: 10586180. doi: 10. 1109/85.476559.
[21] Linda Eikmeier Endersby. «ENIAC: The Triumphs and Tragedies of the World’s First Computer (review)». En: Technology and Culture 41.4 (2000), págs. 825-826. doi: 10.1353/tech.2000.0151. url: https://books.google.com/books/about/ENIAC.html?hl= es&id=GxMIAQAAMAAJ.
[22] Daniel T Fitzpatrick y col. «A RISCy approach to VLSI». En: ACM SIGARCH Computer Architecture News 10.1 (1982), págs. 28-32.
[23] W Barkley Fritz. «The women of ENIAC». En: IEEE Annals of the History of Computing 18.3 (1996), págs. 13-28
[24] Yi Gao, Shilang Tang y Zhangli Ding. Comparison between CISC and RISC. Inf. téc. 2000.
[25] Angelo Garofalo y col. «Pulp-NN: Accelerating quantized neural networks on parallel ultra-low-power RISC-V processors». En: Phi losophical Transactions of the Royal Society A: Mathematical, Phy sical and Engineering Sciences 378.2164 (2020). issn: 1364503X. doi: 10.1098/rsta.2019.0155. arXiv: 1908.11263.
[26] Adrian Gaudebert. «Machine de Turing». En: (2009), págs. 1-5.
[27] William Burns Glynn. Decodificación de quipus. Banco Central de Reserva del Perú, 2002.
[28] Gottfried Leibniz (1646 - 1716) - Biography - MacTutor History of Mathematics. url: https://mathshistory.st-andrews.ac. uk/Biographies/Leibniz/ (visitado 03-10-2022)
[29] John Gustafson. «Reconstruction of the Atanasoff-Berry computer Unum Arithmetic View project Performance Measurement View project». En: (2000). url: https://www.researchgate.net/ publication/262402944.
[30] John L. Henessy y David A. Patterson. Computer Organization: A Quantitative Approach. 6th ed. London, England: Morgan Kauf mann, 2017.
[31] John L. Hennessy y col. «MIPS: A microprocessor architecture». En: ACM SIGMICRO Newsletter 13.4 (1982), págs. 17-22
[32] Homepage | IEC. url: https://iec.ch/homepage.
[33] ISO - International Organization for Standardization. url: https: //www.iso.org/home.html.
[34] Ed Leibowitz. «The colossus». En: Architect 102.6 (ene. de 2013), págs. 172-179. issn: 19357001. doi: 10 . 1016 / b978 - 0 - 12 - 491650-0.50013-7
[35] Shu Tien Li. «Origin and Development of the Chinese Abacus». En: Journal of the ACM (JACM) 6.1 (ene. de 1959), págs. 102-110. issn: 1557735X. doi: 10.1145/320954.320962. url: https: //dl.acm.org/doi/10.1145/320954.320962.
[36] Barbara Liskov, John Guttag y col. Abstraction and specification in program development. Vol. 180. MIT press Cambridge, 1986.
[37] Marcia Sahaya Louis y col. «Towards Deep Learning using Ten sorFlow Lite on RISC-V». En: (2019). doi: 10.1145/1122445. 1122456. url: https://doi.org/10.1145/1122445.1122456
[38] Luigi Federico Menabrea y Ada King Countess of Lovelace. Sketch of the Analytical Engine Invented by Charles Babbage, Esq. Richard y John E. Taylor, 1843.
[39] J. B. Millendorf y M. Kalisman. «The history of computing.» En:Cli nics in plastic surgery 13.3 (1986), págs. 351-354. issn: 00941298. doi: 10.1016/s0094-1298(20)31561-3
[40] Gordon E Moore y col. Cramming more components onto integrated circuits. 1965.
[41] Gordon E Moore. «Excerpts from a conversation with Gordon Moo re: Moore Law, 2005». En: ().
[42] David Nofre. Turing’s Revolution: The Impact of His Ideas about Computability. 2017.
[43] Gerard O’Regan. «ABC Computer». En: The Innovation in Compu ting Companion. Springer, Cham, 2018, págs. 7-9. doi: 10.1007/ 978-3-030-02619-6_2. url: https://link.springer.com/ chapter/10.1007/978-3-030-02619-6_2.
[44] Rafael López del Paso. «El origen de las calculadoras actuales: la Pascalina». En: eXtoikos 17 (2015), págs. 59-59
[45] David A Patterson y John L Hennessy. Computer organization and design ARM edition: the hardware software interface. Morgan kauf mann, 2016
[46] David A. Patterson y John L. Henessy. Computer Organization and Design RISC-V Edition: The Hardware Software Interface. 2nd ed. London, England: Morgan Kaufmann, 2020.
[47] J.L. Patterson, D.A. Hennessy. Computer Organization and Design RISC-V Edition: The Hardware Software Interface (ISSN) (English Edition). 2017, pág. 1049. isbn: 978-0-12-812275-4.
[48] Carlos Radicati di Primeglio. «El sistema contable de los Incas: yupana y quipu». En: Lima, Perú: Editorial Universo (1979).
[49] B. Randell. «Colossus: Godfather of the Computer». En: The Origins of Digital Computers. Springer, Berlin, Heidelberg, 1982, págs. 349-354. doi: 10.1007/978-3-642-61812-3_27. url: https://link. springer.com/chapter/10.1007/978-3-642-61812-3_27.
[50] RISC-V Foundation. RISC-V International. 2021. url: https:// riscv.org/ (visitado 03-10-2022).
[51] Raúl Rojas. «Konrad Zuse’s legacy: the architecture of the Z1 and Z3». En: IEEE Annals of the History of Computing 19.2 (1997), págs. 5-16.
[52] Raul Rojas. «Konrad Zuse’s legacy: The architecture of the Z1 and Z3». En: IEEE Annals of the History of Computing 19.2 (1997), págs. 5-16. issn: 10586180. doi: 10.1109/85.586067. url: http: //ed-thelen.org/comp-hist/Zuse_Z1_and_Z3.pdf.
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 157 Páginas
dc.format.mimetype.none.fl_str_mv application/pdf
dc.publisher.none.fl_str_mv Universidad Tecnológica de 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/a886bc1c-3c9c-40cf-9cc0-bd29cb812d39/download
https://dspace7-utp.metabuscador.org/bitstreams/fdaf0185-396f-4287-82a6-c54598e2f308/download
https://dspace7-utp.metabuscador.org/bitstreams/3a4c19b8-f680-4bc4-b973-1e775e1338b2/download
https://dspace7-utp.metabuscador.org/bitstreams/f3de7854-f609-4963-9993-a0556e09477d/download
bitstream.checksum.fl_str_mv bcd8d3ad16aaba6db37ac3baa2c24c87
2f9959eaf5b71fae44bbf9ec84150c7a
b5a107c3415ca767335874b36d57406d
55d9b41d3c7aa109a12b9d079404e608
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_ 1814021991646101504
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 dehttps://creativecommons.org/licenses/by-nc-nd/4.0/http://purl.org/coar/access_right/c_abf2info:eu-repo/semantics/openAccessJaramillo Villegas, José AlfredoZuluaga Bucheli, Hernán MauricioSepúlveda Caviedes, Camilo2023-08-03T16:56:04Z2023-08-03T16:56:04Z2022https://hdl.handle.net/11059/14770978-958-722-795-6https://doi.org/10.22517/9789587227956Universidad Tecnológica de Pereirahttps://repositorio.utp.edu.co/homeLa formación en ingeniería de computadoras cumple una función fundamental en la educación en la ciencia de la computación. Esta capacitación proporciona a los estudiantes los conocimientos que necesitan para diseñar, configurar y maximizar las capacidades de los sistemas computacionales. Históricamente, esta área ha sido enseñada con arquitecturas de conjuntos de instrucciones de tipo reducido (RISC) dada la dificultad que conlleva el entendimiento de las arquitecturas de tipo complejo (CISC), tal como su nombre lo indica. En las últimas tres décadas, esta área ha pasado por varias arquitecturas RISC, tales como DLX, MIPS, SPARC y ARM. Sin embargo, ninguna ha permitido una integración vertical totalmente abierta, de libre uso y sin restricciones por licenciamiento. Esta arquitectura RISC-V pretende brindar un estándar moderno que fácilmente pueda cumplir las necesidades pedagógicas en el aula de clase. De igual forma, RISC-V logra brindar la robustez necesaria para cumplir con los requerimientos para su implementación en procesadores para teléfonos inteligentes, tabletas y sistemas embebidos, en donde actualmente domina la arquitectura ARM; y en computadoras portátiles y de escritorio, servidores y supercomputadoras, en donde domina la arquitectura X86-64. Podría proyectarse que en los próximos años el impacto de RISC-V en la arquitectura de computadoras será equivalente al rol que ha jugado Linux en los sistemas operativos.Computer engineering training plays a key role in computer science education. This training provides students with the knowledge they need to design, configure and maximize the capabilities of computer systems. Historically, this area has been taught with reduced-type instruction set (RISC) architectures given the difficulty involved in understanding complex-type architectures (CISC), as its name suggests. In the last three decades, this area has gone through several RISC architectures, such as DLX, MIPS, SPARC and ARM. However, none has allowed a fully open vertical integration, free of use and without licensing restrictions. This RISC-V architecture aims to provide a modern standard that can easily meet the pedagogical needs in the classroom. Likewise, RISC-V manages to provide the necessary robustness to meet the requirements for its implementation in processors for smartphones, tablets and embedded systems, where it currently dominates the ARM architecture; and on laptops and desktops, servers and supercomputers, where it dominates the X86-64 architecture. It could be projected that in the coming years the impact of RISC-V on computer architecture will be equivalent to the role that Linux has played in operating systemsContenido CAPÍTULO UNO Introducción a RISK-V........................................................................................................15 1.1. Historia de la computadora .....................................................................................20 1.1.1. El quipu ..........................................................................................................21 1.1.2. La yupana .......................................................................................................21 1.1.3. El ábaco chino ................................................................................................22 1.1.4. La pascalina....................................................................................................23 1.1.5. Rueda de Leibniz............................................................................................24 1.1.6. Máquina analítica ...........................................................................................27 1.1.7. Colossus .........................................................................................................27 1.1.8. Z3 ...................................................................................................................31 1.1.9. ABC................................................................................................................31 1.1.10. ENIAC..........................................................................................................33 1.2. Criterios de diseño de computadoras......................................................................38 1.2.1. Diseñar teniendo en cuenta la ley de Moore ..................................................38 1.2.2. Usar la abstracción para simplificar el diseño................................................38 1.2.3. Reducir el tiempo de ejecución para los casos más comunes........................39 1.2.4. Mejorar rendimiento a través del paralelismo................................................40 1.2.5. Mejorar rendimiento a través de la segmentación..........................................40 1.2.6. Mejorar rendimiento a través de la predicción de saltos................................41 1.2.7. Jerarquía de memorias....................................................................................42 1.2.8. Mejorar fiabilidad a través de redundancia ....................................................43 1.3. Evaluación de rendimiento de la computadora .......................................................44 1.4. Ejercicios Capítulo 1...............................................................................................46 CAPÍTULO DOS Instrucciones........................................................................................................................51 2.1. Instrucciones aritmético lógicas..............................................................................54 2.1.1. Instrucciones tipo R........................................................................................54 2.1.2. Instrucciones tipo I.........................................................................................58 2.2. Instrucciones de memoria de datos.........................................................................61 2.2.1. Instrucciones de lectura de memoria tipo I ....................................................61 2.2.2. Instrucciones de escritura en memoria tipo S.................................................63 2.3. Instrucciones de saltos condicionados ....................................................................65 2.4. Instrucciones de saltos incondicionados.................................................................72 2.4.1. jal tipo J..........................................................................................................72 2.4.2. jalr tipo I.........................................................................................................73 2.4.3. Funciones .......................................................................................................73 2.5. Instrucciones auxiliares...........................................................................................80 2.6. Pseudo instrucciones...............................................................................................81 2.7. Ejercicios Capítulo 2...............................................................................................83 CAPÍTULO TRES Procesador............................................................................................................................87 3.1. Procesador Monociclo.............................................................................................87 3.1.1. Memoria de instrucciones ..............................................................................89 3.1.2. Unidad de control...........................................................................................89 3.1.3. Unidad de registros.........................................................................................92 3.1.4. Unidad de inmediatos.....................................................................................93 3.1.5. Unidad aritmética lógica ................................................................................94 3.1.6. Unidad de saltos.............................................................................................96 3.1.7. Memoria de datos...........................................................................................96 3.1.8. Flujo de datos.................................................................................................98 3.2. Procesador segmentado.........................................................................................103 3.2.1. Procesador segmentado con solución a los problemas de segmentación por software ................................................................................105 3.2.2. Segmentos del procesador............................................................................108 3.2.3. Procesador segmentado con solución a los problemas de segmentación por hardware...............................................................................114 3.3. Ejercicios Capítulo 3.............................................................................................123 CAPÍTULO CUATRO Sistemas de Entrada y Salida .............................................................................................129 4.1. Espacio de direccionamiento...........................................................................129 4.1.1. Controlador de video....................................................................................131 4.1.2. Controlador de teclado .................................................................................133 4.2. Ejercicios Capítulo 4.............................................................................................134 Apéndice A Estándar internacional para unidades.................................................................................135 A.1. Estándar ISO/IEC 80000............................................................................................136 A.1.1. Estándar para ciencia de la información y tecnología ISO/IEC 80000-13 .............137 Apéndice B........................................................................................................................139 Glosario.............................................................................................................................139 Bibliografía .......................................................................................................................147157 Páginasapplication/pdfspaUniversidad Tecnológica de PereiraTextos Academicos[1] John Adam Presper y col. «See Buchholz; A survey of digital com puter memory systems». En: In Proceedings of the I. R. E 41.10 (1919), págs. 1902-1971.[2] Luigia Carlucci Aiello. «The multifaceted impact of Ada Lovelace in the digital age». En: Artificial Intelligence 235 (2016), págs. 58-62[3] Gabriel Andrade. «Internet Encyclopedia of Philosophy». En: Enl@ ce: Revista Venezolana de Información, Tecnología y Conocimiento 8.1 (2011), págs. 106-118.[4] Herbert Apaza. «Yupana, Material Manipulativo para la Educa ción Matemática. Justicia social y el cambio educativo en niños de las comunidades quechuas alto andinos del Perú». En: Uni versidad Compluense de Madrid (jul. de 2017), pág. 352. url: https://docplayer.es/77540368-Tesis-doctoral-tesis doctoral.html[5] Gerard Candón Arenas. «Implementación de un procesador RISC V en una FPGA». Tesis doct. 2020. url: https://upcommons. upc . edu / bitstream / handle / 2117 / 329221 / 151993 . pdf ? isAllowed=y&sequence=1.[6] Marcia Ascher y Robert Ascher. «Quipu». En: Encyclopaedia of the History of Science, Technology, and Medicine in Non-Western Cultures. Springer, Dordrecht, mar. de 2008, págs. 1863-1865. doi: 10.1007/978- 1- 4020- 4425- 0_9192. url: https://link.[7] Atanasoff-Berry computer | Encyclopedia of Computer Science. url: https://dl.acm.org/doi/abs/10.5555/1074100.1074145 (visitado 03-10-2022).[8] Charles Babbage. «Chapter viii-of the analytical engine». En: Pas sages from The Life of a Philosopher. Longman, Roberts, and Green, London (1864), págs. 112-141.[9] Kerstin Beer y col. «Training deep quantum neural networks». En: Nature Communications 11.1 (2020). issn: 20411723. doi: 10 . 1038 / s41467 - 020 - 14454 - 2. url: https : / / doi . org / 10 . 1038/s41467-020-14454-2[10] Simon Blackburn. The Oxford dictionary of philosophy. OUP Ox ford, 2005[11] Capítulo 4. Historia de la Informática. Introducción a la Informática (GAP). Profesor Rafael Menendez-Barzanallana Asensio. Universi dad de Murcia (España). url: https://www.um.es/docencia/ barzana/II/Ii04.html.[12] Frank Carter. The turing bombe. Bletchley Park Trust, 2008[13] George C Chase. «History of mechanical computing machinery». En: IEEE Annals of the History of Computing 2.03 (1980), págs. 198-226.[14] Computing History. url: https : / / jva . cs . iastate . edu / history.php[15] Allen WM Coombs. «The making of Colossus». En: Annals of the History of Computing 5.3 (1983), págs. 253-259.[16] B. Jack Copeland. «Colossus: Its origins and originators». En: IEEE Annals of the History of Computing 26.4 (oct. de 2004), págs. 38-45. issn: 10586180. doi: 10.1109/MAHC.2004.26[17] Brian Jack Copeland. Alan Turing: El pionero de la era de la in formación - Brian Jack Copeland - Google Libros. 2013. url: https : / / books . google . com . co / books ? hl = es & lr = &id = CSpZAgAAQBAJ & oi = fnd & pg = PA13 & dq = alan + turing & ots = 9RtjHrz3X3&sig=3QAaUHsxZpPcAgmuhIkPvqmR-Lo#v=onepage& q=alan%20turing&f=false%20https://books.google.com. pa / books ? id = CSpZAgAAQBAJ & pg = PA253 & dq = Prueba + de + Turing&hl=es&sa=X&redir_esc=y#v=onepage&q=Prueba% 20de%20Turing&f=false (visitado 03-10-2022)[18] J. P. Eckert. «A Survey of Digital Computer Memory Systems». En: Proceedings of the IRE 41.10 (1953), págs. 1393-1406. issn: 00968390. doi: 10.1109/JRPROC.1953.274316.[19] Jr John Presper Eckert y John W Mauchly. Electronic numerical integrator and computer. US Patent 3,120,606. 1964.[20] Peter Eckstein. «J. Presper Eckert». En: IEEE Annals of the History of Computing 18.1 (1996), págs. 25-44. issn: 10586180. doi: 10. 1109/85.476559.[21] Linda Eikmeier Endersby. «ENIAC: The Triumphs and Tragedies of the World’s First Computer (review)». En: Technology and Culture 41.4 (2000), págs. 825-826. doi: 10.1353/tech.2000.0151. url: https://books.google.com/books/about/ENIAC.html?hl= es&id=GxMIAQAAMAAJ.[22] Daniel T Fitzpatrick y col. «A RISCy approach to VLSI». En: ACM SIGARCH Computer Architecture News 10.1 (1982), págs. 28-32.[23] W Barkley Fritz. «The women of ENIAC». En: IEEE Annals of the History of Computing 18.3 (1996), págs. 13-28[24] Yi Gao, Shilang Tang y Zhangli Ding. Comparison between CISC and RISC. Inf. téc. 2000.[25] Angelo Garofalo y col. «Pulp-NN: Accelerating quantized neural networks on parallel ultra-low-power RISC-V processors». En: Phi losophical Transactions of the Royal Society A: Mathematical, Phy sical and Engineering Sciences 378.2164 (2020). issn: 1364503X. doi: 10.1098/rsta.2019.0155. arXiv: 1908.11263.[26] Adrian Gaudebert. «Machine de Turing». En: (2009), págs. 1-5.[27] William Burns Glynn. Decodificación de quipus. Banco Central de Reserva del Perú, 2002.[28] Gottfried Leibniz (1646 - 1716) - Biography - MacTutor History of Mathematics. url: https://mathshistory.st-andrews.ac. uk/Biographies/Leibniz/ (visitado 03-10-2022)[29] John Gustafson. «Reconstruction of the Atanasoff-Berry computer Unum Arithmetic View project Performance Measurement View project». En: (2000). url: https://www.researchgate.net/ publication/262402944.[30] John L. Henessy y David A. Patterson. Computer Organization: A Quantitative Approach. 6th ed. London, England: Morgan Kauf mann, 2017.[31] John L. Hennessy y col. «MIPS: A microprocessor architecture». En: ACM SIGMICRO Newsletter 13.4 (1982), págs. 17-22[32] Homepage | IEC. url: https://iec.ch/homepage.[33] ISO - International Organization for Standardization. url: https: //www.iso.org/home.html.[34] Ed Leibowitz. «The colossus». En: Architect 102.6 (ene. de 2013), págs. 172-179. issn: 19357001. doi: 10 . 1016 / b978 - 0 - 12 - 491650-0.50013-7[35] Shu Tien Li. «Origin and Development of the Chinese Abacus». En: Journal of the ACM (JACM) 6.1 (ene. de 1959), págs. 102-110. issn: 1557735X. doi: 10.1145/320954.320962. url: https: //dl.acm.org/doi/10.1145/320954.320962.[36] Barbara Liskov, John Guttag y col. Abstraction and specification in program development. Vol. 180. MIT press Cambridge, 1986.[37] Marcia Sahaya Louis y col. «Towards Deep Learning using Ten sorFlow Lite on RISC-V». En: (2019). doi: 10.1145/1122445. 1122456. url: https://doi.org/10.1145/1122445.1122456[38] Luigi Federico Menabrea y Ada King Countess of Lovelace. Sketch of the Analytical Engine Invented by Charles Babbage, Esq. Richard y John E. Taylor, 1843.[39] J. B. Millendorf y M. Kalisman. «The history of computing.» En:Cli nics in plastic surgery 13.3 (1986), págs. 351-354. issn: 00941298. doi: 10.1016/s0094-1298(20)31561-3[40] Gordon E Moore y col. Cramming more components onto integrated circuits. 1965.[41] Gordon E Moore. «Excerpts from a conversation with Gordon Moo re: Moore Law, 2005». En: ().[42] David Nofre. Turing’s Revolution: The Impact of His Ideas about Computability. 2017.[43] Gerard O’Regan. «ABC Computer». En: The Innovation in Compu ting Companion. Springer, Cham, 2018, págs. 7-9. doi: 10.1007/ 978-3-030-02619-6_2. url: https://link.springer.com/ chapter/10.1007/978-3-030-02619-6_2.[44] Rafael López del Paso. «El origen de las calculadoras actuales: la Pascalina». En: eXtoikos 17 (2015), págs. 59-59[45] David A Patterson y John L Hennessy. Computer organization and design ARM edition: the hardware software interface. Morgan kauf mann, 2016[46] David A. Patterson y John L. Henessy. Computer Organization and Design RISC-V Edition: The Hardware Software Interface. 2nd ed. London, England: Morgan Kaufmann, 2020.[47] J.L. Patterson, D.A. Hennessy. Computer Organization and Design RISC-V Edition: The Hardware Software Interface (ISSN) (English Edition). 2017, pág. 1049. isbn: 978-0-12-812275-4.[48] Carlos Radicati di Primeglio. «El sistema contable de los Incas: yupana y quipu». En: Lima, Perú: Editorial Universo (1979).[49] B. Randell. «Colossus: Godfather of the Computer». En: The Origins of Digital Computers. Springer, Berlin, Heidelberg, 1982, págs. 349-354. doi: 10.1007/978-3-642-61812-3_27. url: https://link. springer.com/chapter/10.1007/978-3-642-61812-3_27.[50] RISC-V Foundation. RISC-V International. 2021. url: https:// riscv.org/ (visitado 03-10-2022).[51] Raúl Rojas. «Konrad Zuse’s legacy: the architecture of the Z1 and Z3». En: IEEE Annals of the History of Computing 19.2 (1997), págs. 5-16.[52] Raul Rojas. «Konrad Zuse’s legacy: The architecture of the Z1 and Z3». En: IEEE Annals of the History of Computing 19.2 (1997), págs. 5-16. issn: 10586180. doi: 10.1109/85.586067. url: http: //ed-thelen.org/comp-hist/Zuse_Z1_and_Z3.pdf.000 - Ciencias de la computación, información y obras generales::004 - Procesamiento de datos Ciencia de los computadoresHistoria de la computadoraArquitectura de computadoras - FundamentosEstructuras de datos y algoritmosProcesamiento de señalesRedes de computadoras y comunicacionesElectrónica digitalArquitectura de computadoresHistoria de la computaciónSet de instrucciones reducidasArquitectura de Computadoras con RISC-VLibroinfo:eu-repo/semantics/acceptedVersionhttp://purl.org/coar/resource_type/c_2f33Textinfo:eu-repo/semantics/bookPublicationORIGINALLibro CARTA_ARQUITECTURA RISC V interactivo (1).pdfLibro CARTA_ARQUITECTURA RISC V interactivo (1).pdfapplication/pdf25333203https://dspace7-utp.metabuscador.org/bitstreams/a886bc1c-3c9c-40cf-9cc0-bd29cb812d39/downloadbcd8d3ad16aaba6db37ac3baa2c24c87MD51LICENSElicense.txtlicense.txttext/plain; charset=utf-814828https://dspace7-utp.metabuscador.org/bitstreams/fdaf0185-396f-4287-82a6-c54598e2f308/download2f9959eaf5b71fae44bbf9ec84150c7aMD52TEXTLibro CARTA_ARQUITECTURA RISC V interactivo (1).pdf.txtLibro CARTA_ARQUITECTURA RISC V interactivo (1).pdf.txtExtracted texttext/plain213828https://dspace7-utp.metabuscador.org/bitstreams/3a4c19b8-f680-4bc4-b973-1e775e1338b2/downloadb5a107c3415ca767335874b36d57406dMD53THUMBNAILLibro CARTA_ARQUITECTURA RISC V interactivo (1).pdf.jpgLibro CARTA_ARQUITECTURA RISC V interactivo (1).pdf.jpgGenerated Thumbnailimage/jpeg7784https://dspace7-utp.metabuscador.org/bitstreams/f3de7854-f609-4963-9993-a0556e09477d/download55d9b41d3c7aa109a12b9d079404e608MD5411059/14770oai:dspace7-utp.metabuscador.org:11059/147702024-09-05 17:15:45.499https://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 deopen.accesshttps://dspace7-utp.metabuscador.orgRepositorio de la Universidad Tecnológica de Pereirabdigital@metabiblioteca.comTEEgT0JSQSAoVEFMIFkgQ09NTyBTRSBERUZJTkUgTcOBUyBBREVMQU5URSkgU0UgT1RPUkdBIEJBSk8gTE9TIFRFUk1JTk9TIERFIEVTVEEgTElDRU5DSUEgUMOaQkxJQ0EgREUgQ1JFQVRJVkUgQ09NTU9OUyAo4oCcTFBDQ+KAnSBPIOKAnExJQ0VOQ0lB4oCdKS4gTEEgT0JSQSBFU1TDgSBQUk9URUdJREEgUE9SIERFUkVDSE9TIERFIEFVVE9SIFkvVSBPVFJBUyBMRVlFUyBBUExJQ0FCTEVTLiBRVUVEQSBQUk9ISUJJRE8gQ1VBTFFVSUVSIFVTTyBRVUUgU0UgSEFHQSBERSBMQSBPQlJBIFFVRSBOTyBDVUVOVEUgQ09OIExBIEFVVE9SSVpBQ0nDk04gUEVSVElORU5URSBERSBDT05GT1JNSURBRCBDT04gTE9TIFTDiVJNSU5PUyBERSBFU1RBIExJQ0VOQ0lBIFkgREUgTEEgTEVZIERFIERFUkVDSE8gREUgQVVUT1IuCgpNRURJQU5URSBFTCBFSkVSQ0lDSU8gREUgQ1VBTFFVSUVSQSBERSBMT1MgREVSRUNIT1MgUVVFIFNFIE9UT1JHQU4gRU4gRVNUQSBMSUNFTkNJQSwgVVNURUQgQUNFUFRBIFkgQUNVRVJEQSBRVUVEQVIgT0JMSUdBRE8gRU4gTE9TIFRFUk1JTk9TIFFVRSBTRSBTRcORQUxBTiBFTiBFTExBLiBFTCBMSUNFTkNJQU5URSBDT05DRURFIEEgVVNURUQgTE9TIERFUkVDSE9TIENPTlRFTklET1MgRU4gRVNUQSBMSUNFTkNJQSBDT05ESUNJT05BRE9TIEEgTEEgQUNFUFRBQ0nDk04gREUgU1VTIFRFUk1JTk9TIFkgQ09ORElDSU9ORVMuCjEuIERlZmluaWNpb25lcwoKYS4JT2JyYSBDb2xlY3RpdmEgZXMgdW5hIG9icmEsIHRhbCBjb21vIHVuYSBwdWJsaWNhY2nDs24gcGVyacOzZGljYSwgdW5hIGFudG9sb2fDrWEsIG8gdW5hIGVuY2ljbG9wZWRpYSwgZW4gbGEgcXVlIGxhIG9icmEgZW4gc3UgdG90YWxpZGFkLCBzaW4gbW9kaWZpY2FjacOzbiBhbGd1bmEsIGp1bnRvIGNvbiB1biBncnVwbyBkZSBvdHJhcyBjb250cmlidWNpb25lcyBxdWUgY29uc3RpdHV5ZW4gb2JyYXMgc2VwYXJhZGFzIGUgaW5kZXBlbmRpZW50ZXMgZW4gc8OtIG1pc21hcywgc2UgaW50ZWdyYW4gZW4gdW4gdG9kbyBjb2xlY3Rpdm8uIFVuYSBPYnJhIHF1ZSBjb25zdGl0dXllIHVuYSBvYnJhIGNvbGVjdGl2YSBubyBzZSBjb25zaWRlcmFyw6EgdW5hIE9icmEgRGVyaXZhZGEgKGNvbW8gc2UgZGVmaW5lIGFiYWpvKSBwYXJhIGxvcyBwcm9ww7NzaXRvcyBkZSBlc3RhIGxpY2VuY2lhLiBhcXVlbGxhIHByb2R1Y2lkYSBwb3IgdW4gZ3J1cG8gZGUgYXV0b3JlcywgZW4gcXVlIGxhIE9icmEgc2UgZW5jdWVudHJhIHNpbiBtb2RpZmljYWNpb25lcywganVudG8gY29uIHVuYSBjaWVydGEgY2FudGlkYWQgZGUgb3RyYXMgY29udHJpYnVjaW9uZXMsIHF1ZSBjb25zdGl0dXllbiBlbiBzw60gbWlzbW9zIHRyYWJham9zIHNlcGFyYWRvcyBlIGluZGVwZW5kaWVudGVzLCBxdWUgc29uIGludGVncmFkb3MgYWwgdG9kbyBjb2xlY3Rpdm8sIHRhbGVzIGNvbW8gcHVibGljYWNpb25lcyBwZXJpw7NkaWNhcywgYW50b2xvZ8OtYXMgbyBlbmNpY2xvcGVkaWFzLgoKYi4JT2JyYSBEZXJpdmFkYSBzaWduaWZpY2EgdW5hIG9icmEgYmFzYWRhIGVuIGxhIG9icmEgb2JqZXRvIGRlIGVzdGEgbGljZW5jaWEgbyBlbiDDqXN0YSB5IG90cmFzIG9icmFzIHByZWV4aXN0ZW50ZXMsIHRhbGVzIGNvbW8gdHJhZHVjY2lvbmVzLCBhcnJlZ2xvcyBtdXNpY2FsZXMsIGRyYW1hdGl6YWNpb25lcywg4oCcZmljY2lvbmFsaXphY2lvbmVz4oCdLCB2ZXJzaW9uZXMgcGFyYSBjaW5lLCDigJxncmFiYWNpb25lcyBkZSBzb25pZG/igJ0sIHJlcHJvZHVjY2lvbmVzIGRlIGFydGUsIHJlc8O6bWVuZXMsIGNvbmRlbnNhY2lvbmVzLCBvIGN1YWxxdWllciBvdHJhIGVuIGxhIHF1ZSBsYSBvYnJhIHB1ZWRhIHNlciB0cmFuc2Zvcm1hZGEsIGNhbWJpYWRhIG8gYWRhcHRhZGEsIGV4Y2VwdG8gYXF1ZWxsYXMgcXVlIGNvbnN0aXR1eWFuIHVuYSBvYnJhIGNvbGVjdGl2YSwgbGFzIHF1ZSBubyBzZXLDoW4gY29uc2lkZXJhZGFzIHVuYSBvYnJhIGRlcml2YWRhIHBhcmEgZWZlY3RvcyBkZSBlc3RhIGxpY2VuY2lhLiAoUGFyYSBldml0YXIgZHVkYXMsIGVuIGVsIGNhc28gZGUgcXVlIGxhIE9icmEgc2VhIHVuYSBjb21wb3NpY2nDs24gbXVzaWNhbCBvIHVuYSBncmFiYWNpw7NuIHNvbm9yYSwgcGFyYSBsb3MgZWZlY3RvcyBkZSBlc3RhIExpY2VuY2lhIGxhIHNpbmNyb25pemFjacOzbiB0ZW1wb3JhbCBkZSBsYSBPYnJhIGNvbiB1bmEgaW1hZ2VuIGVuIG1vdmltaWVudG8gc2UgY29uc2lkZXJhcsOhIHVuYSBPYnJhIERlcml2YWRhIHBhcmEgbG9zIGZpbmVzIGRlIGVzdGEgbGljZW5jaWEpLgoKYy4JTGljZW5jaWFudGUsIGVzIGVsIGluZGl2aWR1byBvIGxhIGVudGlkYWQgdGl0dWxhciBkZSBsb3MgZGVyZWNob3MgZGUgYXV0b3IgcXVlIG9mcmVjZSBsYSBPYnJhIGVuIGNvbmZvcm1pZGFkIGNvbiBsYXMgY29uZGljaW9uZXMgZGUgZXN0YSBMaWNlbmNpYS4KCmQuCUF1dG9yIG9yaWdpbmFsLCBlcyBlbCBpbmRpdmlkdW8gcXVlIGNyZcOzIGxhIE9icmEuCgplLglPYnJhLCBlcyBhcXVlbGxhIG9icmEgc3VzY2VwdGlibGUgZGUgcHJvdGVjY2nDs24gcG9yIGVsIHLDqWdpbWVuIGRlIERlcmVjaG8gZGUgQXV0b3IgeSBxdWUgZXMgb2ZyZWNpZGEgZW4gbG9zIHTDqXJtaW5vcyBkZSBlc3RhIGxpY2VuY2lhCgpmLglVc3RlZCwgZXMgZWwgaW5kaXZpZHVvIG8gbGEgZW50aWRhZCBxdWUgZWplcmNpdGEgbG9zIGRlcmVjaG9zIG90b3JnYWRvcyBhbCBhbXBhcm8gZGUgZXN0YSBMaWNlbmNpYSB5IHF1ZSBjb24gYW50ZXJpb3JpZGFkIG5vIGhhIHZpb2xhZG8gbGFzIGNvbmRpY2lvbmVzIGRlIGxhIG1pc21hIHJlc3BlY3RvIGEgbGEgT2JyYSwgbyBxdWUgaGF5YSBvYnRlbmlkbyBhdXRvcml6YWNpw7NuIGV4cHJlc2EgcG9yIHBhcnRlIGRlbCBMaWNlbmNpYW50ZSBwYXJhIGVqZXJjZXIgbG9zIGRlcmVjaG9zIGFsIGFtcGFybyBkZSBlc3RhIExpY2VuY2lhIHBlc2UgYSB1bmEgdmlvbGFjacOzbiBhbnRlcmlvci4KCjIuIERlcmVjaG9zIGRlIFVzb3MgSG9ucmFkb3MgeSBleGNlcGNpb25lcyBMZWdhbGVzLgpOYWRhIGVuIGVzdGEgTGljZW5jaWEgcG9kcsOhIHNlciBpbnRlcnByZXRhZG8gY29tbyB1bmEgZGlzbWludWNpw7NuLCBsaW1pdGFjacOzbiBvIHJlc3RyaWNjacOzbiBkZSBsb3MgZGVyZWNob3MgZGVyaXZhZG9zIGRlbCB1c28gaG9ucmFkbyB5IG90cmFzIGxpbWl0YWNpb25lcyBvIGV4Y2VwY2lvbmVzIGEgbG9zIGRlcmVjaG9zIGRlbCBhdXRvciBiYWpvIGVsIHLDqWdpbWVuIGxlZ2FsIHZpZ2VudGUgbyBkZXJpdmFkbyBkZSBjdWFscXVpZXIgb3RyYSBub3JtYSBxdWUgc2UgbGUgYXBsaXF1ZS4KCjMuIENvbmNlc2nDs24gZGUgbGEgTGljZW5jaWEuCkJham8gbG9zIHTDqXJtaW5vcyB5IGNvbmRpY2lvbmVzIGRlIGVzdGEgTGljZW5jaWEsIGVsIExpY2VuY2lhbnRlIG90b3JnYSBhIFVzdGVkIHVuYSBsaWNlbmNpYSBtdW5kaWFsLCBsaWJyZSBkZSByZWdhbMOtYXMsIG5vIGV4Y2x1c2l2YSB5IHBlcnBldHVhIChkdXJhbnRlIHRvZG8gZWwgcGVyw61vZG8gZGUgdmlnZW5jaWEgZGUgbG9zIGRlcmVjaG9zIGRlIGF1dG9yKSBwYXJhIGVqZXJjZXIgZXN0b3MgZGVyZWNob3Mgc29icmUgbGEgT2JyYSB0YWwgeSBjb21vIHNlIGluZGljYSBhIGNvbnRpbnVhY2nDs246CgphLglSZXByb2R1Y2lyIGxhIE9icmEsIGluY29ycG9yYXIgbGEgT2JyYSBlbiB1bmEgbyBtw6FzIE9icmFzIENvbGVjdGl2YXMsIHkgcmVwcm9kdWNpciBsYSBPYnJhIGluY29ycG9yYWRhIGVuIGxhcyBPYnJhcyBDb2xlY3RpdmFzLgoKYi4JRGlzdHJpYnVpciBjb3BpYXMgbyBmb25vZ3JhbWFzIGRlIGxhcyBPYnJhcywgZXhoaWJpcmxhcyBww7pibGljYW1lbnRlLCBlamVjdXRhcmxhcyBww7pibGljYW1lbnRlIHkvbyBwb25lcmxhcyBhIGRpc3Bvc2ljacOzbiBww7pibGljYSwgaW5jbHV5w6luZG9sYXMgY29tbyBpbmNvcnBvcmFkYXMgZW4gT2JyYXMgQ29sZWN0aXZhcywgc2Vnw7puIGNvcnJlc3BvbmRhLgoKYy4JRGlzdHJpYnVpciBjb3BpYXMgZGUgbGFzIE9icmFzIERlcml2YWRhcyBxdWUgc2UgZ2VuZXJlbiwgZXhoaWJpcmxhcyBww7pibGljYW1lbnRlLCBlamVjdXRhcmxhcyBww7pibGljYW1lbnRlIHkvbyBwb25lcmxhcyBhIGRpc3Bvc2ljacOzbiBww7pibGljYS4KTG9zIGRlcmVjaG9zIG1lbmNpb25hZG9zIGFudGVyaW9ybWVudGUgcHVlZGVuIHNlciBlamVyY2lkb3MgZW4gdG9kb3MgbG9zIG1lZGlvcyB5IGZvcm1hdG9zLCBhY3R1YWxtZW50ZSBjb25vY2lkb3MgbyBxdWUgc2UgaW52ZW50ZW4gZW4gZWwgZnV0dXJvLiBMb3MgZGVyZWNob3MgYW50ZXMgbWVuY2lvbmFkb3MgaW5jbHV5ZW4gZWwgZGVyZWNobyBhIHJlYWxpemFyIGRpY2hhcyBtb2RpZmljYWNpb25lcyBlbiBsYSBtZWRpZGEgcXVlIHNlYW4gdMOpY25pY2FtZW50ZSBuZWNlc2FyaWFzIHBhcmEgZWplcmNlciBsb3MgZGVyZWNob3MgZW4gb3RybyBtZWRpbyBvIGZvcm1hdG9zLCBwZXJvIGRlIG90cmEgbWFuZXJhIHVzdGVkIG5vIGVzdMOhIGF1dG9yaXphZG8gcGFyYSByZWFsaXphciBvYnJhcyBkZXJpdmFkYXMuIFRvZG9zIGxvcyBkZXJlY2hvcyBubyBvdG9yZ2Fkb3MgZXhwcmVzYW1lbnRlIHBvciBlbCBMaWNlbmNpYW50ZSBxdWVkYW4gcG9yIGVzdGUgbWVkaW8gcmVzZXJ2YWRvcywgaW5jbHV5ZW5kbyBwZXJvIHNpbiBsaW1pdGFyc2UgYSBhcXVlbGxvcyBxdWUgc2UgbWVuY2lvbmFuIGVuIGxhcyBzZWNjaW9uZXMgNChkKSB5IDQoZSkuCgo0LiBSZXN0cmljY2lvbmVzLgpMYSBsaWNlbmNpYSBvdG9yZ2FkYSBlbiBsYSBhbnRlcmlvciBTZWNjacOzbiAzIGVzdMOhIGV4cHJlc2FtZW50ZSBzdWpldGEgeSBsaW1pdGFkYSBwb3IgbGFzIHNpZ3VpZW50ZXMgcmVzdHJpY2Npb25lczoKCmEuCVVzdGVkIHB1ZWRlIGRpc3RyaWJ1aXIsIGV4aGliaXIgcMO6YmxpY2FtZW50ZSwgZWplY3V0YXIgcMO6YmxpY2FtZW50ZSwgbyBwb25lciBhIGRpc3Bvc2ljacOzbiBww7pibGljYSBsYSBPYnJhIHPDs2xvIGJham8gbGFzIGNvbmRpY2lvbmVzIGRlIGVzdGEgTGljZW5jaWEsIHkgVXN0ZWQgZGViZSBpbmNsdWlyIHVuYSBjb3BpYSBkZSBlc3RhIGxpY2VuY2lhIG8gZGVsIElkZW50aWZpY2Fkb3IgVW5pdmVyc2FsIGRlIFJlY3Vyc29zIGRlIGxhIG1pc21hIGNvbiBjYWRhIGNvcGlhIGRlIGxhIE9icmEgcXVlIGRpc3RyaWJ1eWEsIGV4aGliYSBww7pibGljYW1lbnRlLCBlamVjdXRlIHDDumJsaWNhbWVudGUgbyBwb25nYSBhIGRpc3Bvc2ljacOzbiBww7pibGljYS4gTm8gZXMgcG9zaWJsZSBvZnJlY2VyIG8gaW1wb25lciBuaW5ndW5hIGNvbmRpY2nDs24gc29icmUgbGEgT2JyYSBxdWUgYWx0ZXJlIG8gbGltaXRlIGxhcyBjb25kaWNpb25lcyBkZSBlc3RhIExpY2VuY2lhIG8gZWwgZWplcmNpY2lvIGRlIGxvcyBkZXJlY2hvcyBkZSBsb3MgZGVzdGluYXRhcmlvcyBvdG9yZ2Fkb3MgZW4gZXN0ZSBkb2N1bWVudG8uIE5vIGVzIHBvc2libGUgc3VibGljZW5jaWFyIGxhIE9icmEuIFVzdGVkIGRlYmUgbWFudGVuZXIgaW50YWN0b3MgdG9kb3MgbG9zIGF2aXNvcyBxdWUgaGFnYW4gcmVmZXJlbmNpYSBhIGVzdGEgTGljZW5jaWEgeSBhIGxhIGNsw6F1c3VsYSBkZSBsaW1pdGFjacOzbiBkZSBnYXJhbnTDrWFzLiBVc3RlZCBubyBwdWVkZSBkaXN0cmlidWlyLCBleGhpYmlyIHDDumJsaWNhbWVudGUsIGVqZWN1dGFyIHDDumJsaWNhbWVudGUsIG8gcG9uZXIgYSBkaXNwb3NpY2nDs24gcMO6YmxpY2EgbGEgT2JyYSBjb24gYWxndW5hIG1lZGlkYSB0ZWNub2zDs2dpY2EgcXVlIGNvbnRyb2xlIGVsIGFjY2VzbyBvIGxhIHV0aWxpemFjacOzbiBkZSBlbGxhIGRlIHVuYSBmb3JtYSBxdWUgc2VhIGluY29uc2lzdGVudGUgY29uIGxhcyBjb25kaWNpb25lcyBkZSBlc3RhIExpY2VuY2lhLiBMbyBhbnRlcmlvciBzZSBhcGxpY2EgYSBsYSBPYnJhIGluY29ycG9yYWRhIGEgdW5hIE9icmEgQ29sZWN0aXZhLCBwZXJvIGVzdG8gbm8gZXhpZ2UgcXVlIGxhIE9icmEgQ29sZWN0aXZhIGFwYXJ0ZSBkZSBsYSBvYnJhIG1pc21hIHF1ZWRlIHN1amV0YSBhIGxhcyBjb25kaWNpb25lcyBkZSBlc3RhIExpY2VuY2lhLiBTaSBVc3RlZCBjcmVhIHVuYSBPYnJhIENvbGVjdGl2YSwgcHJldmlvIGF2aXNvIGRlIGN1YWxxdWllciBMaWNlbmNpYW50ZSBkZWJlLCBlbiBsYSBtZWRpZGEgZGUgbG8gcG9zaWJsZSwgZWxpbWluYXIgZGUgbGEgT2JyYSBDb2xlY3RpdmEgY3VhbHF1aWVyIHJlZmVyZW5jaWEgYSBkaWNobyBMaWNlbmNpYW50ZSBvIGFsIEF1dG9yIE9yaWdpbmFsLCBzZWfDum4gbG8gc29saWNpdGFkbyBwb3IgZWwgTGljZW5jaWFudGUgeSBjb25mb3JtZSBsbyBleGlnZSBsYSBjbMOhdXN1bGEgNChjKS4KCmIuCVVzdGVkIG5vIHB1ZWRlIGVqZXJjZXIgbmluZ3VubyBkZSBsb3MgZGVyZWNob3MgcXVlIGxlIGhhbiBzaWRvIG90b3JnYWRvcyBlbiBsYSBTZWNjacOzbiAzIHByZWNlZGVudGUgZGUgbW9kbyBxdWUgZXN0w6luIHByaW5jaXBhbG1lbnRlIGRlc3RpbmFkb3MgbyBkaXJlY3RhbWVudGUgZGlyaWdpZG9zIGEgY29uc2VndWlyIHVuIHByb3ZlY2hvIGNvbWVyY2lhbCBvIHVuYSBjb21wZW5zYWNpw7NuIG1vbmV0YXJpYSBwcml2YWRhLiBFbCBpbnRlcmNhbWJpbyBkZSBsYSBPYnJhIHBvciBvdHJhcyBvYnJhcyBwcm90ZWdpZGFzIHBvciBkZXJlY2hvcyBkZSBhdXRvciwgeWEgc2VhIGEgdHJhdsOpcyBkZSB1biBzaXN0ZW1hIHBhcmEgY29tcGFydGlyIGFyY2hpdm9zIGRpZ2l0YWxlcyAoZGlnaXRhbCBmaWxlLXNoYXJpbmcpIG8gZGUgY3VhbHF1aWVyIG90cmEgbWFuZXJhIG5vIHNlcsOhIGNvbnNpZGVyYWRvIGNvbW8gZXN0YXIgZGVzdGluYWRvIHByaW5jaXBhbG1lbnRlIG8gZGlyaWdpZG8gZGlyZWN0YW1lbnRlIGEgY29uc2VndWlyIHVuIHByb3ZlY2hvIGNvbWVyY2lhbCBvIHVuYSBjb21wZW5zYWNpw7NuIG1vbmV0YXJpYSBwcml2YWRhLCBzaWVtcHJlIHF1ZSBubyBzZSByZWFsaWNlIHVuIHBhZ28gbWVkaWFudGUgdW5hIGNvbXBlbnNhY2nDs24gbW9uZXRhcmlhIGVuIHJlbGFjacOzbiBjb24gZWwgaW50ZXJjYW1iaW8gZGUgb2JyYXMgcHJvdGVnaWRhcyBwb3IgZWwgZGVyZWNobyBkZSBhdXRvci4KCmMuCVNpIHVzdGVkIGRpc3RyaWJ1eWUsIGV4aGliZSBww7pibGljYW1lbnRlLCBlamVjdXRhIHDDumJsaWNhbWVudGUgbyBlamVjdXRhIHDDumJsaWNhbWVudGUgZW4gZm9ybWEgZGlnaXRhbCBsYSBPYnJhIG8gY3VhbHF1aWVyIE9icmEgRGVyaXZhZGEgdSBPYnJhIENvbGVjdGl2YSwgVXN0ZWQgZGViZSBtYW50ZW5lciBpbnRhY3RhIHRvZGEgbGEgaW5mb3JtYWNpw7NuIGRlIGRlcmVjaG8gZGUgYXV0b3IgZGUgbGEgT2JyYSB5IHByb3BvcmNpb25hciwgZGUgZm9ybWEgcmF6b25hYmxlIHNlZ8O6biBlbCBtZWRpbyBvIG1hbmVyYSBxdWUgVXN0ZWQgZXN0w6kgdXRpbGl6YW5kbzogKGkpIGVsIG5vbWJyZSBkZWwgQXV0b3IgT3JpZ2luYWwgc2kgZXN0w6EgcHJvdmlzdG8gKG8gc2V1ZMOzbmltbywgc2kgZnVlcmUgYXBsaWNhYmxlKSwgeS9vIChpaSkgZWwgbm9tYnJlIGRlIGxhIHBhcnRlIG8gbGFzIHBhcnRlcyBxdWUgZWwgQXV0b3IgT3JpZ2luYWwgeS9vIGVsIExpY2VuY2lhbnRlIGh1YmllcmVuIGRlc2lnbmFkbyBwYXJhIGxhIGF0cmlidWNpw7NuICh2LmcuLCB1biBpbnN0aXR1dG8gcGF0cm9jaW5hZG9yLCBlZGl0b3JpYWwsIHB1YmxpY2FjacOzbikgZW4gbGEgaW5mb3JtYWNpw7NuIGRlIGxvcyBkZXJlY2hvcyBkZSBhdXRvciBkZWwgTGljZW5jaWFudGUsIHTDqXJtaW5vcyBkZSBzZXJ2aWNpb3MgbyBkZSBvdHJhcyBmb3JtYXMgcmF6b25hYmxlczsgZWwgdMOtdHVsbyBkZSBsYSBPYnJhIHNpIGVzdMOhIHByb3Zpc3RvOyBlbiBsYSBtZWRpZGEgZGUgbG8gcmF6b25hYmxlbWVudGUgZmFjdGlibGUgeSwgc2kgZXN0w6EgcHJvdmlzdG8sIGVsIElkZW50aWZpY2Fkb3IgVW5pZm9ybWUgZGUgUmVjdXJzb3MgKFVuaWZvcm0gUmVzb3VyY2UgSWRlbnRpZmllcikgcXVlIGVsIExpY2VuY2lhbnRlIGVzcGVjaWZpY2EgcGFyYSBzZXIgYXNvY2lhZG8gY29uIGxhIE9icmEsIHNhbHZvIHF1ZSB0YWwgVVJJIG5vIHNlIHJlZmllcmEgYSBsYSBub3RhIHNvYnJlIGxvcyBkZXJlY2hvcyBkZSBhdXRvciBvIGEgbGEgaW5mb3JtYWNpw7NuIHNvYnJlIGVsIGxpY2VuY2lhbWllbnRvIGRlIGxhIE9icmE7IHkgZW4gZWwgY2FzbyBkZSB1bmEgT2JyYSBEZXJpdmFkYSwgYXRyaWJ1aXIgZWwgY3LDqWRpdG8gaWRlbnRpZmljYW5kbyBlbCB1c28gZGUgbGEgT2JyYSBlbiBsYSBPYnJhIERlcml2YWRhICh2LmcuLCAiVHJhZHVjY2nDs24gRnJhbmNlc2EgZGUgbGEgT2JyYSBkZWwgQXV0b3IgT3JpZ2luYWwsIiBvICJHdWnDs24gQ2luZW1hdG9ncsOhZmljbyBiYXNhZG8gZW4gbGEgT2JyYSBvcmlnaW5hbCBkZWwgQXV0b3IgT3JpZ2luYWwiKS4gVGFsIGNyw6lkaXRvIHB1ZWRlIHNlciBpbXBsZW1lbnRhZG8gZGUgY3VhbHF1aWVyIGZvcm1hIHJhem9uYWJsZTsgZW4gZWwgY2Fzbywgc2luIGVtYmFyZ28sIGRlIE9icmFzIERlcml2YWRhcyB1IE9icmFzIENvbGVjdGl2YXMsIHRhbCBjcsOpZGl0byBhcGFyZWNlcsOhLCBjb21vIG3DrW5pbW8sIGRvbmRlIGFwYXJlY2UgZWwgY3LDqWRpdG8gZGUgY3VhbHF1aWVyIG90cm8gYXV0b3IgY29tcGFyYWJsZSB5IGRlIHVuYSBtYW5lcmEsIGFsIG1lbm9zLCB0YW4gZGVzdGFjYWRhIGNvbW8gZWwgY3LDqWRpdG8gZGUgb3RybyBhdXRvciBjb21wYXJhYmxlLgoKZC4JUGFyYSBldml0YXIgdG9kYSBjb25mdXNpw7NuLCBlbCBMaWNlbmNpYW50ZSBhY2xhcmEgcXVlLCBjdWFuZG8gbGEgb2JyYSBlcyB1bmEgY29tcG9zaWNpw7NuIG11c2ljYWw6CgppLglSZWdhbMOtYXMgcG9yIGludGVycHJldGFjacOzbiB5IGVqZWN1Y2nDs24gYmFqbyBsaWNlbmNpYXMgZ2VuZXJhbGVzLiBFbCBMaWNlbmNpYW50ZSBzZSByZXNlcnZhIGVsIGRlcmVjaG8gZXhjbHVzaXZvIGRlIGF1dG9yaXphciBsYSBlamVjdWNpw7NuIHDDumJsaWNhIG8gbGEgZWplY3VjacOzbiBww7pibGljYSBkaWdpdGFsIGRlIGxhIG9icmEgeSBkZSByZWNvbGVjdGFyLCBzZWEgaW5kaXZpZHVhbG1lbnRlIG8gYSB0cmF2w6lzIGRlIHVuYSBzb2NpZWRhZCBkZSBnZXN0acOzbiBjb2xlY3RpdmEgZGUgZGVyZWNob3MgZGUgYXV0b3IgeSBkZXJlY2hvcyBjb25leG9zIChwb3IgZWplbXBsbywgU0FZQ08pLCBsYXMgcmVnYWzDrWFzIHBvciBsYSBlamVjdWNpw7NuIHDDumJsaWNhIG8gcG9yIGxhIGVqZWN1Y2nDs24gcMO6YmxpY2EgZGlnaXRhbCBkZSBsYSBvYnJhIChwb3IgZWplbXBsbyBXZWJjYXN0KSBsaWNlbmNpYWRhIGJham8gbGljZW5jaWFzIGdlbmVyYWxlcywgc2kgbGEgaW50ZXJwcmV0YWNpw7NuIG8gZWplY3VjacOzbiBkZSBsYSBvYnJhIGVzdMOhIHByaW1vcmRpYWxtZW50ZSBvcmllbnRhZGEgcG9yIG8gZGlyaWdpZGEgYSBsYSBvYnRlbmNpw7NuIGRlIHVuYSB2ZW50YWphIGNvbWVyY2lhbCBvIHVuYSBjb21wZW5zYWNpw7NuIG1vbmV0YXJpYSBwcml2YWRhLgoKaWkuCVJlZ2Fsw61hcyBwb3IgRm9ub2dyYW1hcy4gRWwgTGljZW5jaWFudGUgc2UgcmVzZXJ2YSBlbCBkZXJlY2hvIGV4Y2x1c2l2byBkZSByZWNvbGVjdGFyLCBpbmRpdmlkdWFsbWVudGUgbyBhIHRyYXbDqXMgZGUgdW5hIHNvY2llZGFkIGRlIGdlc3Rpw7NuIGNvbGVjdGl2YSBkZSBkZXJlY2hvcyBkZSBhdXRvciB5IGRlcmVjaG9zIGNvbmV4b3MgKHBvciBlamVtcGxvLCBsb3MgY29uc2FncmFkb3MgcG9yIGxhIFNBWUNPKSwgdW5hIGFnZW5jaWEgZGUgZGVyZWNob3MgbXVzaWNhbGVzIG8gYWxnw7puIGFnZW50ZSBkZXNpZ25hZG8sIGxhcyByZWdhbMOtYXMgcG9yIGN1YWxxdWllciBmb25vZ3JhbWEgcXVlIFVzdGVkIGNyZWUgYSBwYXJ0aXIgZGUgbGEgb2JyYSAo4oCcdmVyc2nDs24gY292ZXLigJ0pIHkgZGlzdHJpYnV5YSwgZW4gbG9zIHTDqXJtaW5vcyBkZWwgcsOpZ2ltZW4gZGUgZGVyZWNob3MgZGUgYXV0b3IsIHNpIGxhIGNyZWFjacOzbiBvIGRpc3RyaWJ1Y2nDs24gZGUgZXNhIHZlcnNpw7NuIGNvdmVyIGVzdMOhIHByaW1vcmRpYWxtZW50ZSBkZXN0aW5hZGEgbyBkaXJpZ2lkYSBhIG9idGVuZXIgdW5hIHZlbnRhamEgY29tZXJjaWFsIG8gdW5hIGNvbXBlbnNhY2nDs24gbW9uZXRhcmlhIHByaXZhZGEuCgplLglHZXN0acOzbiBkZSBEZXJlY2hvcyBkZSBBdXRvciBzb2JyZSBJbnRlcnByZXRhY2lvbmVzIHkgRWplY3VjaW9uZXMgRGlnaXRhbGVzIChXZWJDYXN0aW5nKS4gUGFyYSBldml0YXIgdG9kYSBjb25mdXNpw7NuLCBlbCBMaWNlbmNpYW50ZSBhY2xhcmEgcXVlLCBjdWFuZG8gbGEgb2JyYSBzZWEgdW4gZm9ub2dyYW1hLCBlbCBMaWNlbmNpYW50ZSBzZSByZXNlcnZhIGVsIGRlcmVjaG8gZXhjbHVzaXZvIGRlIGF1dG9yaXphciBsYSBlamVjdWNpw7NuIHDDumJsaWNhIGRpZ2l0YWwgZGUgbGEgb2JyYSAocG9yIGVqZW1wbG8sIHdlYmNhc3QpIHkgZGUgcmVjb2xlY3RhciwgaW5kaXZpZHVhbG1lbnRlIG8gYSB0cmF2w6lzIGRlIHVuYSBzb2NpZWRhZCBkZSBnZXN0acOzbiBjb2xlY3RpdmEgZGUgZGVyZWNob3MgZGUgYXV0b3IgeSBkZXJlY2hvcyBjb25leG9zIChwb3IgZWplbXBsbywgQUNJTlBSTyksIGxhcyByZWdhbMOtYXMgcG9yIGxhIGVqZWN1Y2nDs24gcMO6YmxpY2EgZGlnaXRhbCBkZSBsYSBvYnJhIChwb3IgZWplbXBsbywgd2ViY2FzdCksIHN1amV0YSBhIGxhcyBkaXNwb3NpY2lvbmVzIGFwbGljYWJsZXMgZGVsIHLDqWdpbWVuIGRlIERlcmVjaG8gZGUgQXV0b3IsIHNpIGVzdGEgZWplY3VjacOzbiBww7pibGljYSBkaWdpdGFsIGVzdMOhIHByaW1vcmRpYWxtZW50ZSBkaXJpZ2lkYSBhIG9idGVuZXIgdW5hIHZlbnRhamEgY29tZXJjaWFsIG8gdW5hIGNvbXBlbnNhY2nDs24gbW9uZXRhcmlhIHByaXZhZGEuCgo1LiBSZXByZXNlbnRhY2lvbmVzLCBHYXJhbnTDrWFzIHkgTGltaXRhY2lvbmVzIGRlIFJlc3BvbnNhYmlsaWRhZC4KQSBNRU5PUyBRVUUgTEFTIFBBUlRFUyBMTyBBQ09SREFSQU4gREUgT1RSQSBGT1JNQSBQT1IgRVNDUklUTywgRUwgTElDRU5DSUFOVEUgT0ZSRUNFIExBIE9CUkEgKEVOIEVMIEVTVEFETyBFTiBFTCBRVUUgU0UgRU5DVUVOVFJBKSDigJxUQUwgQ1VBTOKAnSwgU0lOIEJSSU5EQVIgR0FSQU5Uw41BUyBERSBDTEFTRSBBTEdVTkEgUkVTUEVDVE8gREUgTEEgT0JSQSwgWUEgU0VBIEVYUFJFU0EsIElNUEzDjUNJVEEsIExFR0FMIE8gQ1VBTFFVSUVSQSBPVFJBLCBJTkNMVVlFTkRPLCBTSU4gTElNSVRBUlNFIEEgRUxMQVMsIEdBUkFOVMONQVMgREUgVElUVUxBUklEQUQsIENPTUVSQ0lBQklMSURBRCwgQURBUFRBQklMSURBRCBPIEFERUNVQUNJw5NOIEEgUFJPUMOTU0lUTyBERVRFUk1JTkFETywgQVVTRU5DSUEgREUgSU5GUkFDQ0nDk04sIERFIEFVU0VOQ0lBIERFIERFRkVDVE9TIExBVEVOVEVTIE8gREUgT1RSTyBUSVBPLCBPIExBIFBSRVNFTkNJQSBPIEFVU0VOQ0lBIERFIEVSUk9SRVMsIFNFQU4gTyBOTyBERVNDVUJSSUJMRVMgKFBVRURBTiBPIE5PIFNFUiBFU1RPUyBERVNDVUJJRVJUT1MpLiBBTEdVTkFTIEpVUklTRElDQ0lPTkVTIE5PIFBFUk1JVEVOIExBIEVYQ0xVU0nDk04gREUgR0FSQU5Uw41BUyBJTVBMw41DSVRBUywgRU4gQ1VZTyBDQVNPIEVTVEEgRVhDTFVTScOTTiBQVUVERSBOTyBBUExJQ0FSU0UgQSBVU1RFRC4KCjYuIExpbWl0YWNpw7NuIGRlIHJlc3BvbnNhYmlsaWRhZC4KQSBNRU5PUyBRVUUgTE8gRVhJSkEgRVhQUkVTQU1FTlRFIExBIExFWSBBUExJQ0FCTEUsIEVMIExJQ0VOQ0lBTlRFIE5PIFNFUsOBIFJFU1BPTlNBQkxFIEFOVEUgVVNURUQgUE9SIERBw5FPIEFMR1VOTywgU0VBIFBPUiBSRVNQT05TQUJJTElEQUQgRVhUUkFDT05UUkFDVFVBTCwgUFJFQ09OVFJBQ1RVQUwgTyBDT05UUkFDVFVBTCwgT0JKRVRJVkEgTyBTVUJKRVRJVkEsIFNFIFRSQVRFIERFIERBw5FPUyBNT1JBTEVTIE8gUEFUUklNT05JQUxFUywgRElSRUNUT1MgTyBJTkRJUkVDVE9TLCBQUkVWSVNUT1MgTyBJTVBSRVZJU1RPUyBQUk9EVUNJRE9TIFBPUiBFTCBVU08gREUgRVNUQSBMSUNFTkNJQSBPIERFIExBIE9CUkEsIEFVTiBDVUFORE8gRUwgTElDRU5DSUFOVEUgSEFZQSBTSURPIEFEVkVSVElETyBERSBMQSBQT1NJQklMSURBRCBERSBESUNIT1MgREHDkU9TLiBBTEdVTkFTIExFWUVTIE5PIFBFUk1JVEVOIExBIEVYQ0xVU0nDk04gREUgQ0lFUlRBIFJFU1BPTlNBQklMSURBRCwgRU4gQ1VZTyBDQVNPIEVTVEEgRVhDTFVTScOTTiBQVUVERSBOTyBBUExJQ0FSU0UgQSBVU1RFRC4KCjcuIFTDqXJtaW5vLgoKYS4JRXN0YSBMaWNlbmNpYSB5IGxvcyBkZXJlY2hvcyBvdG9yZ2Fkb3MgZW4gdmlydHVkIGRlIGVsbGEgdGVybWluYXLDoW4gYXV0b23DoXRpY2FtZW50ZSBzaSBVc3RlZCBpbmZyaW5nZSBhbGd1bmEgY29uZGljacOzbiBlc3RhYmxlY2lkYSBlbiBlbGxhLiBTaW4gZW1iYXJnbywgbG9zIGluZGl2aWR1b3MgbyBlbnRpZGFkZXMgcXVlIGhhbiByZWNpYmlkbyBPYnJhcyBEZXJpdmFkYXMgbyBDb2xlY3RpdmFzIGRlIFVzdGVkIGRlIGNvbmZvcm1pZGFkIGNvbiBlc3RhIExpY2VuY2lhLCBubyB2ZXLDoW4gdGVybWluYWRhcyBzdXMgbGljZW5jaWFzLCBzaWVtcHJlIHF1ZSBlc3RvcyBpbmRpdmlkdW9zIG8gZW50aWRhZGVzIHNpZ2FuIGN1bXBsaWVuZG8gw61udGVncmFtZW50ZSBsYXMgY29uZGljaW9uZXMgZGUgZXN0YXMgbGljZW5jaWFzLiBMYXMgU2VjY2lvbmVzIDEsIDIsIDUsIDYsIDcsIHkgOCBzdWJzaXN0aXLDoW4gYSBjdWFscXVpZXIgdGVybWluYWNpw7NuIGRlIGVzdGEgTGljZW5jaWEuCgpiLglTdWpldGEgYSBsYXMgY29uZGljaW9uZXMgeSB0w6lybWlub3MgYW50ZXJpb3JlcywgbGEgbGljZW5jaWEgb3RvcmdhZGEgYXF1w60gZXMgcGVycGV0dWEgKGR1cmFudGUgZWwgcGVyw61vZG8gZGUgdmlnZW5jaWEgZGUgbG9zIGRlcmVjaG9zIGRlIGF1dG9yIGRlIGxhIG9icmEpLiBObyBvYnN0YW50ZSBsbyBhbnRlcmlvciwgZWwgTGljZW5jaWFudGUgc2UgcmVzZXJ2YSBlbCBkZXJlY2hvIGEgcHVibGljYXIgeS9vIGVzdHJlbmFyIGxhIE9icmEgYmFqbyBjb25kaWNpb25lcyBkZSBsaWNlbmNpYSBkaWZlcmVudGVzIG8gYSBkZWphciBkZSBkaXN0cmlidWlybGEgZW4gbG9zIHTDqXJtaW5vcyBkZSBlc3RhIExpY2VuY2lhIGVuIGN1YWxxdWllciBtb21lbnRvOyBlbiBlbCBlbnRlbmRpZG8sIHNpbiBlbWJhcmdvLCBxdWUgZXNhIGVsZWNjacOzbiBubyBzZXJ2aXLDoSBwYXJhIHJldm9jYXIgZXN0YSBsaWNlbmNpYSBvIHF1ZSBkZWJhIHNlciBvdG9yZ2FkYSAsIGJham8gbG9zIHTDqXJtaW5vcyBkZSBlc3RhIGxpY2VuY2lhKSwgeSBlc3RhIGxpY2VuY2lhIGNvbnRpbnVhcsOhIGVuIHBsZW5vIHZpZ29yIHkgZWZlY3RvIGEgbWVub3MgcXVlIHNlYSB0ZXJtaW5hZGEgY29tbyBzZSBleHByZXNhIGF0csOhcy4gTGEgTGljZW5jaWEgcmV2b2NhZGEgY29udGludWFyw6Egc2llbmRvIHBsZW5hbWVudGUgdmlnZW50ZSB5IGVmZWN0aXZhIHNpIG5vIHNlIGxlIGRhIHTDqXJtaW5vIGVuIGxhcyBjb25kaWNpb25lcyBpbmRpY2FkYXMgYW50ZXJpb3JtZW50ZS4KCjguIFZhcmlvcy4KCmEuCUNhZGEgdmV6IHF1ZSBVc3RlZCBkaXN0cmlidXlhIG8gcG9uZ2EgYSBkaXNwb3NpY2nDs24gcMO6YmxpY2EgbGEgT2JyYSBvIHVuYSBPYnJhIENvbGVjdGl2YSwgZWwgTGljZW5jaWFudGUgb2ZyZWNlcsOhIGFsIGRlc3RpbmF0YXJpbyB1bmEgbGljZW5jaWEgZW4gbG9zIG1pc21vcyB0w6lybWlub3MgeSBjb25kaWNpb25lcyBxdWUgbGEgbGljZW5jaWEgb3RvcmdhZGEgYSBVc3RlZCBiYWpvIGVzdGEgTGljZW5jaWEuCgpiLglTaSBhbGd1bmEgZGlzcG9zaWNpw7NuIGRlIGVzdGEgTGljZW5jaWEgcmVzdWx0YSBpbnZhbGlkYWRhIG8gbm8gZXhpZ2libGUsIHNlZ8O6biBsYSBsZWdpc2xhY2nDs24gdmlnZW50ZSwgZXN0byBubyBhZmVjdGFyw6EgbmkgbGEgdmFsaWRleiBuaSBsYSBhcGxpY2FiaWxpZGFkIGRlbCByZXN0byBkZSBjb25kaWNpb25lcyBkZSBlc3RhIExpY2VuY2lhIHksIHNpbiBhY2Npw7NuIGFkaWNpb25hbCBwb3IgcGFydGUgZGUgbG9zIHN1amV0b3MgZGUgZXN0ZSBhY3VlcmRvLCBhcXXDqWxsYSBzZSBlbnRlbmRlcsOhIHJlZm9ybWFkYSBsbyBtw61uaW1vIG5lY2VzYXJpbyBwYXJhIGhhY2VyIHF1ZSBkaWNoYSBkaXNwb3NpY2nDs24gc2VhIHbDoWxpZGEgeSBleGlnaWJsZS4KCmMuCU5pbmfDum4gdMOpcm1pbm8gbyBkaXNwb3NpY2nDs24gZGUgZXN0YSBMaWNlbmNpYSBzZSBlc3RpbWFyw6EgcmVudW5jaWFkYSB5IG5pbmd1bmEgdmlvbGFjacOzbiBkZSBlbGxhIHNlcsOhIGNvbnNlbnRpZGEgYSBtZW5vcyBxdWUgZXNhIHJlbnVuY2lhIG8gY29uc2VudGltaWVudG8gc2VhIG90b3JnYWRvIHBvciBlc2NyaXRvIHkgZmlybWFkbyBwb3IgbGEgcGFydGUgcXVlIHJlbnVuY2llIG8gY29uc2llbnRhLgoKZC4JRXN0YSBMaWNlbmNpYSByZWZsZWphIGVsIGFjdWVyZG8gcGxlbm8gZW50cmUgbGFzIHBhcnRlcyByZXNwZWN0byBhIGxhIE9icmEgYXF1w60gbGljZW5jaWFkYS4gTm8gaGF5IGFycmVnbG9zLCBhY3VlcmRvcyBvIGRlY2xhcmFjaW9uZXMgcmVzcGVjdG8gYSBsYSBPYnJhIHF1ZSBubyBlc3TDqW4gZXNwZWNpZmljYWRvcyBlbiBlc3RlIGRvY3VtZW50by4gRWwgTGljZW5jaWFudGUgbm8gc2UgdmVyw6EgbGltaXRhZG8gcG9yIG5pbmd1bmEgZGlzcG9zaWNpw7NuIGFkaWNpb25hbCBxdWUgcHVlZGEgc3VyZ2lyIGVuIGFsZ3VuYSBjb211bmljYWNpw7NuIGVtYW5hZGEgZGUgVXN0ZWQuIEVzdGEgTGljZW5jaWEgbm8gcHVlZGUgc2VyIG1vZGlmaWNhZGEgc2luIGVsIGNvbnNlbnRpbWllbnRvIG11dHVvIHBvciBlc2NyaXRvIGRlbCBMaWNlbmNpYW50ZSB5IFVzdGVkLgo=