Diseño, implementación y corrección de GraPiCO : un cálculo visual, orientado al objeto y por restricciones compilado a PiCO
En el presente documento se propone un nuevo cálculo visual como solución ante el requerimiento del empleo de multimedios para ampliar los horizontes en cuanto a la difusión y empleo del textual PiCO dadas las m as recientes tendencias y tecnologías. El desarrollo de la investigación en se presentar...
- Autores:
-
Tavera Romero, Carlos Andrés
- Tipo de recurso:
- Fecha de publicación:
- 2010
- Institución:
- Universidad de San Buenaventura
- Repositorio:
- Repositorio USB
- Idioma:
- spa
- OAI Identifier:
- oai:bibliotecadigital.usb.edu.co:10819/185
- Acceso en línea:
- http://hdl.handle.net/10819/185
- Palabra clave:
- GraPiCO
PiCO
Cálculo visual
Programas
Lenguaje de Programación Visual
Cálculos computacionales
Compiladores
Desmostración de corrección
- Rights
- License
- http://purl.org/coar/access_right/c_abf2
id |
SANBUENAV2_10cba96a9759706060b2866df8bafe7e |
---|---|
oai_identifier_str |
oai:bibliotecadigital.usb.edu.co:10819/185 |
network_acronym_str |
SANBUENAV2 |
network_name_str |
Repositorio USB |
repository_id_str |
|
dc.title.spa.fl_str_mv |
Diseño, implementación y corrección de GraPiCO : un cálculo visual, orientado al objeto y por restricciones compilado a PiCO |
title |
Diseño, implementación y corrección de GraPiCO : un cálculo visual, orientado al objeto y por restricciones compilado a PiCO |
spellingShingle |
Diseño, implementación y corrección de GraPiCO : un cálculo visual, orientado al objeto y por restricciones compilado a PiCO GraPiCO PiCO Cálculo visual Programas Lenguaje de Programación Visual Cálculos computacionales Compiladores Desmostración de corrección |
title_short |
Diseño, implementación y corrección de GraPiCO : un cálculo visual, orientado al objeto y por restricciones compilado a PiCO |
title_full |
Diseño, implementación y corrección de GraPiCO : un cálculo visual, orientado al objeto y por restricciones compilado a PiCO |
title_fullStr |
Diseño, implementación y corrección de GraPiCO : un cálculo visual, orientado al objeto y por restricciones compilado a PiCO |
title_full_unstemmed |
Diseño, implementación y corrección de GraPiCO : un cálculo visual, orientado al objeto y por restricciones compilado a PiCO |
title_sort |
Diseño, implementación y corrección de GraPiCO : un cálculo visual, orientado al objeto y por restricciones compilado a PiCO |
dc.creator.fl_str_mv |
Tavera Romero, Carlos Andrés |
dc.contributor.author.spa.fl_str_mv |
Tavera Romero, Carlos Andrés |
dc.subject.spa.fl_str_mv |
GraPiCO PiCO Cálculo visual Programas Lenguaje de Programación Visual Cálculos computacionales Compiladores Desmostración de corrección |
topic |
GraPiCO PiCO Cálculo visual Programas Lenguaje de Programación Visual Cálculos computacionales Compiladores Desmostración de corrección |
description |
En el presente documento se propone un nuevo cálculo visual como solución ante el requerimiento del empleo de multimedios para ampliar los horizontes en cuanto a la difusión y empleo del textual PiCO dadas las m as recientes tendencias y tecnologías. El desarrollo de la investigación en se presentar a con la disposición en siguiente: Alfabeto y sintaxis del cálculo visual GraPiCO: se muestra el conjunto de símbolos empleados en el lenguaje y su localización en un programa. Estos aportes fueron publicados en [TD07]. Especificación textual y sintaxis visual: donde se pone en consideración una novedosa forma de describir textualmente la sintaxis de un lenguaje visual como el cálculo GraPiCO. El aporte m as importante de la investigación on, fue presentado en [TD06]. Mecanismo de traducción: en esta parte del documento se presenta una forma de transformar la representación textual de un programa GraPiCO en código intermedio. Uno de los aportes fundamentales, difundido en [TD09]. Demostración de la consistencia de la semántica: en este apartado se comprueba que la función de especificación textual y las reglas de traducción preservan el significado de los programas. Comprobación sintáctica de la especificación textual de lenguajes visuales mediante símbolos de sincronización: capítulo donde se propone una nueva forma de analizar sintacticamente los lenguajes visuales por medio de los símbolos de sincronización generados en sus correspondientes representaciones gramaticales. Esta contribución se expuso en [TDS+07]. Breve discusión de las ventajas de los lenguajes visuales: aquí se discuten las ventajas de los lenguajes visuales frente a los textuales. Este análisis se puede encontrar en [TD08]. |
publishDate |
2010 |
dc.date.issued.none.fl_str_mv |
2010 |
dc.date.accessioned.none.fl_str_mv |
2011-10-31T19:34:57Z |
dc.date.available.none.fl_str_mv |
2011-10-31T19:34:57Z |
dc.date.submitted.none.fl_str_mv |
2011 |
dc.type.spa.fl_str_mv |
Libro |
dc.type.coar.fl_str_mv |
http://purl.org/coar/resource_type/c_2f33 |
dc.type.spa.spa.fl_str_mv |
Libro |
dc.type.driver.spa.fl_str_mv |
info:eu-repo/semantics/book |
dc.identifier.isbn.none.fl_str_mv |
9789588436357 |
dc.identifier.uri.none.fl_str_mv |
http://hdl.handle.net/10819/185 |
identifier_str_mv |
9789588436357 |
url |
http://hdl.handle.net/10819/185 |
dc.language.iso.spa.fl_str_mv |
spa |
language |
spa |
dc.rights.coar.fl_str_mv |
http://purl.org/coar/access_right/c_abf2 |
rights_invalid_str_mv |
http://purl.org/coar/access_right/c_abf2 |
dc.format.medium.spa.fl_str_mv |
Recurso en linea |
dc.format.mimetype.spa.fl_str_mv |
application/pdf |
dc.publisher.faculty.spa.fl_str_mv |
Documento USB |
dc.publisher.sede.spa.fl_str_mv |
Cali |
institution |
Universidad de San Buenaventura |
dc.source.instname.spa.fl_str_mv |
Universidad de San Buenaventura - Cali |
dc.source.reponame.spa.fl_str_mv |
Biblioteca Digital Universidad de San Buenaventura |
bitstream.url.fl_str_mv |
https://bibliotecadigital.usb.edu.co/bitstreams/ed9ca33e-14a3-4b9c-9a0e-2855770e0696/download https://bibliotecadigital.usb.edu.co/bitstreams/bea6202a-a25e-4cd3-a6a3-a7903e1c8ff5/download https://bibliotecadigital.usb.edu.co/bitstreams/9ca35a25-f6a9-400c-be44-829c982cb906/download https://bibliotecadigital.usb.edu.co/bitstreams/e42d7c4c-4bbf-45fc-af83-fa5445234ae9/download |
bitstream.checksum.fl_str_mv |
4a0a512bc8b88f6fd873cf3365063ec4 e2dd342f2c351b678ff0101de2d0e3d8 b33f357f3eff8fe72d43ed750bb02252 77e0d050ea0250c8cff8e2bd8eedd893 |
bitstream.checksumAlgorithm.fl_str_mv |
MD5 MD5 MD5 MD5 |
repository.name.fl_str_mv |
Repositorio Institucional Universidad de San Buenaventura Colombia |
repository.mail.fl_str_mv |
bdigital@metabiblioteca.com |
_version_ |
1812932419354886144 |
spelling |
Comunidad Científica y AcadémicaTavera Romero, Carlos Andrésa48a3cb7-2577-4b1f-ab46-2b4fd2bc9f26-12011-10-31T19:34:57Z2011-10-31T19:34:57Z20102011En el presente documento se propone un nuevo cálculo visual como solución ante el requerimiento del empleo de multimedios para ampliar los horizontes en cuanto a la difusión y empleo del textual PiCO dadas las m as recientes tendencias y tecnologías. El desarrollo de la investigación en se presentar a con la disposición en siguiente: Alfabeto y sintaxis del cálculo visual GraPiCO: se muestra el conjunto de símbolos empleados en el lenguaje y su localización en un programa. Estos aportes fueron publicados en [TD07]. Especificación textual y sintaxis visual: donde se pone en consideración una novedosa forma de describir textualmente la sintaxis de un lenguaje visual como el cálculo GraPiCO. El aporte m as importante de la investigación on, fue presentado en [TD06]. Mecanismo de traducción: en esta parte del documento se presenta una forma de transformar la representación textual de un programa GraPiCO en código intermedio. Uno de los aportes fundamentales, difundido en [TD09]. Demostración de la consistencia de la semántica: en este apartado se comprueba que la función de especificación textual y las reglas de traducción preservan el significado de los programas. Comprobación sintáctica de la especificación textual de lenguajes visuales mediante símbolos de sincronización: capítulo donde se propone una nueva forma de analizar sintacticamente los lenguajes visuales por medio de los símbolos de sincronización generados en sus correspondientes representaciones gramaticales. Esta contribución se expuso en [TDS+07]. Breve discusión de las ventajas de los lenguajes visuales: aquí se discuten las ventajas de los lenguajes visuales frente a los textuales. Este análisis se puede encontrar en [TD08].Recurso en lineaapplication/pdf9789588436357http://hdl.handle.net/10819/185spaDocumento USBCaliPor medio de este formato manifiesto mi voluntad de AUTORIZAR a la Universidad de San Buenaventura, Sede Bogotá, Seccionales Medellín, Cali y Cartagena, la difusión en texto completo de manera gratuita y por tiempo indefinido en la Biblioteca Digital Universidad de San Buenaventura, el documento académico-investigativo objeto de la presente autorización, con fines estrictamente educativos, científicos y culturales, en los términos establecidos en la Ley 23 de 1982, Ley 44 de 1993, Decisión Andina 351 de 1993, Decreto 460 de 1995 y demás normas generales sobre derechos de autor. Como autor manifiesto que el presente documento académico-investigativo es original y se realiza sin violar o usurpar derechos de autor de terceros, por lo tanto, la obra es de mi exclusiva autora y poseo la titularidad sobre la misma. La Universidad de San Buenaventura no será responsable de ninguna utilización indebida del documento por parte de terceros y será exclusivamente mi responsabilidad atender personalmente cualquier reclamación que pueda presentarse a la Universidad. Autorizo a la Biblioteca Digital de la Universidad de San Buenaventura convertir el documento al formato que el repositorio lo requiera (impreso, digital, electrónico o cualquier otro conocido o por conocer) o con fines de preservación digital. Esta autorización no implica renuncia a la facultad que tengo de publicar posteriormente la obra, en forma total o parcial, por lo cual podrá, dando aviso por escrito con no menos de un mes de antelación, solicitar que el documento deje de estar disponible para el público en la Biblioteca Digital de la Universidad de San Buenaventura, así mismo, cuando se requiera por razones legales y/o reglas del editor de una revista.http://purl.org/coar/access_right/c_abf2Universidad de San Buenaventura - CaliBiblioteca Digital Universidad de San BuenaventuraGraPiCOPiCOCálculo visualProgramasLenguaje de Programación VisualCálculos computacionalesCompiladoresDesmostración de correcciónDiseño, implementación y corrección de GraPiCO : un cálculo visual, orientado al objeto y por restricciones compilado a PiCOLibroLibroinfo:eu-repo/semantics/bookhttp://purl.org/coar/resource_type/c_2f33PublicationORIGINALLibroGraPICO.pdfLibroGraPICO.pdfapplication/pdf3614094https://bibliotecadigital.usb.edu.co/bitstreams/ed9ca33e-14a3-4b9c-9a0e-2855770e0696/download4a0a512bc8b88f6fd873cf3365063ec4MD51LICENSElicense.txtlicense.txttext/plain; charset=utf-816237https://bibliotecadigital.usb.edu.co/bitstreams/bea6202a-a25e-4cd3-a6a3-a7903e1c8ff5/downloade2dd342f2c351b678ff0101de2d0e3d8MD52TEXTLibroGraPICO.pdf.txtLibroGraPICO.pdf.txtExtracted texttext/plain260661https://bibliotecadigital.usb.edu.co/bitstreams/9ca35a25-f6a9-400c-be44-829c982cb906/downloadb33f357f3eff8fe72d43ed750bb02252MD53THUMBNAILLibroGraPICO.pdf.jpgLibroGraPICO.pdf.jpgGenerated Thumbnailimage/jpeg17890https://bibliotecadigital.usb.edu.co/bitstreams/e42d7c4c-4bbf-45fc-af83-fa5445234ae9/download77e0d050ea0250c8cff8e2bd8eedd893MD5410819/185oai:bibliotecadigital.usb.edu.co:10819/1852023-04-12 15:13:50.302https://bibliotecadigital.usb.edu.coRepositorio Institucional Universidad de San Buenaventura Colombiabdigital@metabiblioteca.comPGh0bWw+CjxoZWFkPgo8dGl0bGU+Q3JlYXRpdmUgQ29tbW9ucyBDb2xvbWJpYTwvdGl0bGU+CjwvaGVhZD4KPGJvZHkgPgoKPGRpdiBpZD0iZGVlZCI+Cjxici8+Cgo8dGQgYWxpZ249Imp1c3RpZnkiPgo8cD48c3Ryb25nPlBhcmEgdGVuZXIgbcOhcyBpbmZvcm1hY2nDs24gdmlzaXRlOjwvc3Ryb25nPjwvcD4KPHA+Q3JlYXRpdmUgQ29tbW9ucyBDb2xvbWJpYSAKPGEgaHJlZj0iaHR0cDovL2NvLmNyZWF0aXZlY29tbW9ucy5vcmcvIiBUQVJHRVQ9Il9uZXciPmh0dHA6Ly9jby5jcmVhdGl2ZWNvbW1vbnMub3JnLwo8L2E+PC9wPgo8cD5DcmVhdGl2ZSBDb21tb25zCjxhIGhyZWY9Imh0dHA6Ly9jcmVhdGl2ZWNvbW1vbnMub3JnLyIgVEFSR0VUPSJfbmV3Ij5odHRwOi8vY3JlYXRpdmVjb21tb25zLm9yZy88L2E+CjwvcD48YnI+Cgo8ZGl2IHN0eWxlPSJ3aWR0aDo4MDBweDtoZWlnaHQ6MjQyMHB4O2JvcmRlcjoycHggZG91YmxlICMxOTU4OTc7Ij4KCjxwIGFsaWduPSJjZW50ZXIiPjxzdHJvbmc+TGljZW5jaWEgPC9zdHJvbmc+PC9wPgoKICA8cD48Zm9udCBzaXplPSIxIj5MQSBPQlJBIChUQUwgWSBDT01PIFNFIERFRklORSBNw4FTIEFERUxBTlRFKSBTRSBPVE9SR0EgQkFKTyBMT1MgVEVSTUlOT1MgREUgRVNUQSBMSUNFTkNJQSBQw5pCTElDQSBERSBDUkVBVElWRSBDT01NT05TICjigJxMUEND4oCdIE8g4oCcTElDRU5DSUHigJ0pLiBMQSBPQlJBIEVTVMOBIFBST1RFR0lEQSBQT1IgREVSRUNIT1MgREUgQVVUT1IgWS9VIE9UUkFTIExFWUVTIEFQTElDQUJMRVMuIFFVRURBIFBST0hJQklETyBDVUFMUVVJRVIgVVNPIFFVRSBTRSBIQUdBIERFIExBIE9CUkEgUVVFIE5PIENVRU5URSBDT04gTEEgQVVUT1JJWkFDScOTTiBQRVJUSU5FTlRFIERFIENPTkZPUk1JREFEIENPTiBMT1MgVMOJUk1JTk9TIERFIEVTVEEgTElDRU5DSUEgWSBERSBMQSBMRVkgREUgREVSRUNITyBERSBBVVRPUi48L3A+CgogIDxwPk1FRElBTlRFIEVMIEVKRVJDSUNJTyBERSBDVUFMUVVJRVJBIERFIExPUyBERVJFQ0hPUyBRVUUgU0UgT1RPUkdBTiBFTiBFU1RBIExJQ0VOQ0lBLCBVU1RFRCBBQ0VQVEEgWSBBQ1VFUkRBIFFVRURBUiBPQkxJR0FETyBFTiBMT1MgVEVSTUlOT1MgUVVFIFNFIFNFw5FBTEFOIEVOIEVMTEEuIEVMIExJQ0VOQ0lBTlRFIENPTkNFREUgQSBVU1RFRCBMT1MgREVSRUNIT1MgQ09OVEVOSURPUyBFTiBFU1RBIExJQ0VOQ0lBIENPTkRJQ0lPTkFET1MgQSBMQSBBQ0VQVEFDScOTTiBERSBTVVMgVEVSTUlOT1MgWSBDT05ESUNJT05FUy4gPC9mb250PjwvcD4KCiAgPHA+PHN0cm9uZz4xLiBEZWZpbmljaW9uZXMgPC9zdHJvbmc+PC9wPgoKICA8b2wgdHlwZT0nYSc+CgogICAgPGxpPjxzdHJvbmc+T2JyYSBDb2xlY3RpdmEgPC9zdHJvbmc+IGVzIHVuYSBvYnJhLCB0YWwgY29tbyB1bmEgcHVibGljYWNpw7NuIHBlcmnDs2RpY2EsIHVuYSBhbnRvbG9nw61hLCBvIHVuYSBlbmNpY2xvcGVkaWEsIGVuIGxhIHF1ZSBsYSBvYnJhIGVuIHN1IHRvdGFsaWRhZCwgc2luIG1vZGlmaWNhY2nDs24gYWxndW5hLCBqdW50byBjb24gdW4gZ3J1cG8gZGUgb3RyYXMgY29udHJpYnVjaW9uZXMgcXVlIGNvbnN0aXR1eWVuIG9icmFzIHNlcGFyYWRhcyBlIGluZGVwZW5kaWVudGVzIGVuIHPDrSBtaXNtYXMsIHNlIGludGVncmFuIGVuIHVuIHRvZG8gY29sZWN0aXZvLiBVbmEgT2JyYSBxdWUgY29uc3RpdHV5ZSB1bmEgb2JyYSBjb2xlY3RpdmEgbm8gc2UgY29uc2lkZXJhcsOhIHVuYSBPYnJhIERlcml2YWRhIChjb21vIHNlIGRlZmluZSBhYmFqbykgcGFyYSBsb3MgcHJvcMOzc2l0b3MgZGUgZXN0YSBsaWNlbmNpYS4gYXF1ZWxsYSBwcm9kdWNpZGEgcG9yIHVuIGdydXBvIGRlIGF1dG9yZXMsIGVuIHF1ZSBsYSBPYnJhIHNlIGVuY3VlbnRyYSBzaW4gbW9kaWZpY2FjaW9uZXMsIGp1bnRvIGNvbiB1bmEgY2llcnRhIGNhbnRpZGFkIGRlIG90cmFzIGNvbnRyaWJ1Y2lvbmVzLCBxdWUgY29uc3RpdHV5ZW4gZW4gc8OtIG1pc21vcyB0cmFiYWpvcyBzZXBhcmFkb3MgZSBpbmRlcGVuZGllbnRlcywgcXVlIHNvbiBpbnRlZ3JhZG9zIGFsIHRvZG8gY29sZWN0aXZvLCB0YWxlcyBjb21vIHB1YmxpY2FjaW9uZXMgcGVyacOzZGljYXMsIGFudG9sb2fDrWFzIG8gZW5jaWNsb3BlZGlhcy4gPC9saT4KCiAgPGxpPjxzdHJvbmc+T2JyYSBEZXJpdmFkYSA8L3N0cm9uZz4gc2lnbmlmaWNhIHVuYSBvYnJhIGJhc2FkYSBlbiBsYSBvYnJhIG9iamV0byBkZSBlc3RhIGxpY2VuY2lhIG8gZW4gw6lzdGEgeSBvdHJhcyBvYnJhcyBwcmVleGlzdGVudGVzLCB0YWxlcyBjb21vIHRyYWR1Y2Npb25lcywgYXJyZWdsb3MgbXVzaWNhbGVzLCBkcmFtYXRpemFjaW9uZXMsIOKAnGZpY2Npb25hbGl6YWNpb25lc+KAnSwgdmVyc2lvbmVzIHBhcmEgY2luZSwg4oCcZ3JhYmFjaW9uZXMgZGUgc29uaWRv4oCdLCByZXByb2R1Y2Npb25lcyBkZSBhcnRlLCByZXPDum1lbmVzLCBjb25kZW5zYWNpb25lcywgbyBjdWFscXVpZXIgb3RyYSBlbiBsYSBxdWUgbGEgb2JyYSBwdWVkYSBzZXIgdHJhbnNmb3JtYWRhLCBjYW1iaWFkYSBvIGFkYXB0YWRhLCBleGNlcHRvIGFxdWVsbGFzIHF1ZSBjb25zdGl0dXlhbiB1bmEgb2JyYSBjb2xlY3RpdmEsIGxhcyBxdWUgbm8gc2Vyw6FuIGNvbnNpZGVyYWRhcyB1bmEgb2JyYSBkZXJpdmFkYSBwYXJhIGVmZWN0b3MgZGUgZXN0YSBsaWNlbmNpYS4gKFBhcmEgZXZpdGFyIGR1ZGFzLCBlbiBlbCBjYXNvIGRlIHF1ZSBsYSBPYnJhIHNlYSB1bmEgY29tcG9zaWNpw7NuIG11c2ljYWwgbyB1bmEgZ3JhYmFjacOzbiBzb25vcmEsIHBhcmEgbG9zIGVmZWN0b3MgZGUgZXN0YSBMaWNlbmNpYSBsYSBzaW5jcm9uaXphY2nDs24gdGVtcG9yYWwgZGUgbGEgT2JyYSBjb24gdW5hIGltYWdlbiBlbiBtb3ZpbWllbnRvIHNlIGNvbnNpZGVyYXLDoSB1bmEgT2JyYSBEZXJpdmFkYSBwYXJhIGxvcyBmaW5lcyBkZSBlc3RhIGxpY2VuY2lhKS4gPC9saT4KCiAgPGxpPjxzdHJvbmc+TGljZW5jaWFudGUsIDwvc3Ryb25nPiBlcyBlbCBpbmRpdmlkdW8gbyBsYSBlbnRpZGFkIHRpdHVsYXIgZGUgbG9zIGRlcmVjaG9zIGRlIGF1dG9yIHF1ZSBvZnJlY2UgbGEgT2JyYSBlbiBjb25mb3JtaWRhZCBjb24gbGFzIGNvbmRpY2lvbmVzIGRlIGVzdGEgTGljZW5jaWEuIDwvbGk+CgogIDxsaT48c3Ryb25nPkF1dG9yIG9yaWdpbmFsLCA8L3N0cm9uZz5lcyBlbCBpbmRpdmlkdW8gcXVlIGNyZcOzIGxhIE9icmEuIDwvbGk+CgogIDxsaT48c3Ryb25nPk9icmE8L3N0cm9uZz4sIGVzIGFxdWVsbGEgb2JyYSBzdXNjZXB0aWJsZSBkZSBwcm90ZWNjacOzbiBwb3IgZWwgcsOpZ2ltZW4gZGUgRGVyZWNobyBkZSBBdXRvciB5IHF1ZSBlcyBvZnJlY2lkYSBlbiBsb3MgdMOpcm1pbm9zIGRlIGVzdGEgbGljZW5jaWEgPC9saT4KCiAgPGxpPjxzdHJvbmc+VXN0ZWQ8L3N0cm9uZz4sIGVzIGVsIGluZGl2aWR1byBvIGxhIGVudGlkYWQgcXVlIGVqZXJjaXRhIGxvcyBkZXJlY2hvcyBvdG9yZ2Fkb3MgYWwgYW1wYXJvIGRlIGVzdGEgTGljZW5jaWEgeSBxdWUgY29uIGFudGVyaW9yaWRhZCBubyBoYSB2aW9sYWRvIGxhcyBjb25kaWNpb25lcyBkZSBsYSBtaXNtYSByZXNwZWN0byBhIGxhIE9icmEsIG8gcXVlIGhheWEgb2J0ZW5pZG8gYXV0b3JpemFjacOzbiBleHByZXNhIHBvciBwYXJ0ZSBkZWwgTGljZW5jaWFudGUgcGFyYSBlamVyY2VyIGxvcyBkZXJlY2hvcyBhbCBhbXBhcm8gZGUgZXN0YSBMaWNlbmNpYSBwZXNlIGEgdW5hIHZpb2xhY2nDs24gYW50ZXJpb3IuIDwvbGk+CgogIDwvb2w+CgogIDxwPjxzdHJvbmc+Mi4gRGVyZWNob3MgZGUgVXNvcyBIb25yYWRvcyB5IGV4Y2VwY2lvbmVzIExlZ2FsZXMuIDwvc3Ryb25nPjwvcD4KCiAgPHA+TmFkYSBlbiBlc3RhIExpY2VuY2lhIHBvZHLDoSBzZXIgaW50ZXJwcmV0YWRvIGNvbW8gdW5hIGRpc21pbnVjacOzbiwgbGltaXRhY2nDs24gbyByZXN0cmljY2nDs24gZGUgbG9zIGRlcmVjaG9zIGRlcml2YWRvcyBkZWwgdXNvIGhvbnJhZG8geSBvdHJhcyBsaW1pdGFjaW9uZXMgbyBleGNlcGNpb25lcyBhIGxvcyBkZXJlY2hvcyBkZWwgYXV0b3IgYmFqbyBlbCByw6lnaW1lbiBsZWdhbCB2aWdlbnRlIG8gZGVyaXZhZG8gZGUgY3VhbHF1aWVyIG90cmEgbm9ybWEgcXVlIHNlIGxlIGFwbGlxdWUuIDwvcD4KCiAgPHA+PHN0cm9uZz4zLiBDb25jZXNpw7NuIGRlIGxhIExpY2VuY2lhLiA8L3N0cm9uZz48L3A+CgogIDxwPkJham8gbG9zIHTDqXJtaW5vcyB5IGNvbmRpY2lvbmVzIGRlIGVzdGEgTGljZW5jaWEsIGVsIExpY2VuY2lhbnRlIG90b3JnYSBhIFVzdGVkIHVuYSBsaWNlbmNpYSBtdW5kaWFsLCBsaWJyZSBkZSByZWdhbMOtYXMsIG5vIGV4Y2x1c2l2YSB5IHBlcnBldHVhIChkdXJhbnRlIHRvZG8gZWwgcGVyw61vZG8gZGUgdmlnZW5jaWEgZGUgbG9zIGRlcmVjaG9zIGRlIGF1dG9yKSBwYXJhIGVqZXJjZXIgZXN0b3MgZGVyZWNob3Mgc29icmUgbGEgT2JyYSB0YWwgeSBjb21vIHNlIGluZGljYSBhIGNvbnRpbnVhY2nDs246IDwvcD4KCiAgPG9sIHR5cGU9J2EnPgoKICAgIDxsaT4gUmVwcm9kdWNpciBsYSBPYnJhLCBpbmNvcnBvcmFyIGxhIE9icmEgZW4gdW5hIG8gbcOhcyBPYnJhcyBDb2xlY3RpdmFzLCB5IHJlcHJvZHVjaXIgbGEgT2JyYSBpbmNvcnBvcmFkYSBlbiBsYXMgT2JyYXMgQ29sZWN0aXZhczsgPC9saT4KCiAgPGxpPiBEaXN0cmlidWlyIGNvcGlhcyBvIGZvbm9ncmFtYXMgZGUgbGFzIE9icmFzLCBleGhpYmlybGFzIHDDumJsaWNhbWVudGUsIGVqZWN1dGFybGFzIHDDumJsaWNhbWVudGUgeS9vIHBvbmVybGFzIGEgZGlzcG9zaWNpw7NuIHDDumJsaWNhLCBpbmNsdXnDqW5kb2xhcyBjb21vIGluY29ycG9yYWRhcyBlbiBPYnJhcyBDb2xlY3RpdmFzLCBzZWfDum4gY29ycmVzcG9uZGE7IDwvbGk+CgogIDxsaT4gRGlzdHJpYnVpciBjb3BpYXMgZGUgbGFzIE9icmFzIERlcml2YWRhcyBxdWUgc2UgZ2VuZXJlbiwgZXhoaWJpcmxhcyBww7pibGljYW1lbnRlLCBlamVjdXRhcmxhcyBww7pibGljYW1lbnRlIHkvbyBwb25lcmxhcyBhIGRpc3Bvc2ljacOzbiBww7pibGljYS4gPC9saT4KCiAgPC9vbD4KCiAgPHA+TG9zIGRlcmVjaG9zIG1lbmNpb25hZG9zIGFudGVyaW9ybWVudGUgcHVlZGVuIHNlciBlamVyY2lkb3MgZW4gdG9kb3MgbG9zIG1lZGlvcyB5IGZvcm1hdG9zLCBhY3R1YWxtZW50ZSBjb25vY2lkb3MgbyBxdWUgc2UgaW52ZW50ZW4gZW4gZWwgZnV0dXJvLiBMb3MgZGVyZWNob3MgYW50ZXMgbWVuY2lvbmFkb3MgaW5jbHV5ZW4gZWwgZGVyZWNobyBhIHJlYWxpemFyIGRpY2hhcyBtb2RpZmljYWNpb25lcyBlbiBsYSBtZWRpZGEgcXVlIHNlYW4gdMOpY25pY2FtZW50ZSBuZWNlc2FyaWFzIHBhcmEgZWplcmNlciBsb3MgZGVyZWNob3MgZW4gb3RybyBtZWRpbyBvIGZvcm1hdG9zLCBwZXJvIGRlIG90cmEgbWFuZXJhIHVzdGVkIG5vIGVzdMOhIGF1dG9yaXphZG8gcGFyYSByZWFsaXphciBvYnJhcyBkZXJpdmFkYXMuVG9kb3MgbG9zIGRlcmVjaG9zIG5vIG90b3JnYWRvcyBleHByZXNhbWVudGUgcG9yIGVsIExpY2VuY2lhbnRlIHF1ZWRhbiBwb3IgZXN0ZSBtZWRpbyByZXNlcnZhZG9zLCBpbmNsdXllbmRvIHBlcm8gc2luIGxpbWl0YXJzZSBhIGFxdWVsbG9zIHF1ZSBzZSBtZW5jaW9uYW4gZW4gbGFzIHNlY2Npb25lcyA0KGQpIHkgNChlKS4gPC9wPgoKICA8cD48c3Ryb25nPjQuIFJlc3RyaWNjaW9uZXMuIDwvc3Ryb25nPjwvcD4KCiAgPHA+TGEgbGljZW5jaWEgb3RvcmdhZGEgZW4gbGEgYW50ZXJpb3IgU2VjY2nDs24gMyBlc3TDoSBleHByZXNhbWVudGUgc3VqZXRhIHkgbGltaXRhZGEgcG9yIGxhcyBzaWd1aWVudGVzIHJlc3RyaWNjaW9uZXM6IDwvcD4KCiAgPG9sIHR5cGU9J2EnPgoKICAgIDxsaT4gVXN0ZWQgcHVlZGUgZGlzdHJpYnVpciwgZXhoaWJpciBww7pibGljYW1lbnRlLCBlamVjdXRhciBww7pibGljYW1lbnRlLCBvIHBvbmVyIGEgZGlzcG9zaWNpw7NuIHDDumJsaWNhIGxhIE9icmEgc8OzbG8gYmFqbyBsYXMgY29uZGljaW9uZXMgZGUgZXN0YSBMaWNlbmNpYSwgeSBVc3RlZCBkZWJlIGluY2x1aXIgdW5hIGNvcGlhIGRlIGVzdGEgbGljZW5jaWEgbyBkZWwgSWRlbnRpZmljYWRvciBVbml2ZXJzYWwgZGUgUmVjdXJzb3MgZGUgbGEgbWlzbWEgY29uIGNhZGEgY29waWEgZGUgbGEgT2JyYSBxdWUgZGlzdHJpYnV5YSwgZXhoaWJhIHDDumJsaWNhbWVudGUsIGVqZWN1dGUgcMO6YmxpY2FtZW50ZSBvIHBvbmdhIGEgZGlzcG9zaWNpw7NuIHDDumJsaWNhLiBObyBlcyBwb3NpYmxlIG9mcmVjZXIgbyBpbXBvbmVyIG5pbmd1bmEgY29uZGljacOzbiBzb2JyZSBsYSBPYnJhIHF1ZSBhbHRlcmUgbyBsaW1pdGUgbGFzIGNvbmRpY2lvbmVzIGRlIGVzdGEgTGljZW5jaWEgbyBlbCBlamVyY2ljaW8gZGUgbG9zIGRlcmVjaG9zIGRlIGxvcyBkZXN0aW5hdGFyaW9zIG90b3JnYWRvcyBlbiBlc3RlIGRvY3VtZW50by4gTm8gZXMgcG9zaWJsZSBzdWJsaWNlbmNpYXIgbGEgT2JyYS4gVXN0ZWQgZGViZSBtYW50ZW5lciBpbnRhY3RvcyB0b2RvcyBsb3MgYXZpc29zIHF1ZSBoYWdhbiByZWZlcmVuY2lhIGEgZXN0YSBMaWNlbmNpYSB5IGEgbGEgY2zDoXVzdWxhIGRlIGxpbWl0YWNpw7NuIGRlIGdhcmFudMOtYXMuIFVzdGVkIG5vIHB1ZWRlIGRpc3RyaWJ1aXIsIGV4aGliaXIgcMO6YmxpY2FtZW50ZSwgZWplY3V0YXIgcMO6YmxpY2FtZW50ZSwgbyBwb25lciBhIGRpc3Bvc2ljacOzbiBww7pibGljYSBsYSBPYnJhIGNvbiBhbGd1bmEgbWVkaWRhIHRlY25vbMOzZ2ljYSBxdWUgY29udHJvbGUgZWwgYWNjZXNvIG8gbGEgdXRpbGl6YWNpw7NuIGRlIGVsbGEgZGUgdW5hIGZvcm1hIHF1ZSBzZWEgaW5jb25zaXN0ZW50ZSBjb24gbGFzIGNvbmRpY2lvbmVzIGRlIGVzdGEgTGljZW5jaWEuIExvIGFudGVyaW9yIHNlIGFwbGljYSBhIGxhIE9icmEgaW5jb3Jwb3JhZGEgYSB1bmEgT2JyYSBDb2xlY3RpdmEsIHBlcm8gZXN0byBubyBleGlnZSBxdWUgbGEgT2JyYSBDb2xlY3RpdmEgYXBhcnRlIGRlIGxhIG9icmEgbWlzbWEgcXVlZGUgc3VqZXRhIGEgbGFzIGNvbmRpY2lvbmVzIGRlIGVzdGEgTGljZW5jaWEuIFNpIFVzdGVkIGNyZWEgdW5hIE9icmEgQ29sZWN0aXZhLCBwcmV2aW8gYXZpc28gZGUgY3VhbHF1aWVyIExpY2VuY2lhbnRlIGRlYmUsIGVuIGxhIG1lZGlkYSBkZSBsbyBwb3NpYmxlLCBlbGltaW5hciBkZSBsYSBPYnJhIENvbGVjdGl2YSBjdWFscXVpZXIgcmVmZXJlbmNpYSBhIGRpY2hvIExpY2VuY2lhbnRlIG8gYWwgQXV0b3IgT3JpZ2luYWwsIHNlZ8O6biBsbyBzb2xpY2l0YWRvIHBvciBlbCBMaWNlbmNpYW50ZSB5IGNvbmZvcm1lIGxvIGV4aWdlIGxhIGNsw6F1c3VsYSA0KGMpLiA8L2xpPgoKICA8bGk+IFVzdGVkIG5vIHB1ZWRlIGVqZXJjZXIgbmluZ3VubyBkZSBsb3MgZGVyZWNob3MgcXVlIGxlIGhhbiBzaWRvIG90b3JnYWRvcyBlbiBsYSBTZWNjacOzbiAzIHByZWNlZGVudGUgZGUgbW9kbyBxdWUgZXN0w6luIHByaW5jaXBhbG1lbnRlIGRlc3RpbmFkb3MgbyBkaXJlY3RhbWVudGUgZGlyaWdpZG9zIGEgY29uc2VndWlyIHVuIHByb3ZlY2hvIGNvbWVyY2lhbCBvIHVuYSBjb21wZW5zYWNpw7NuIG1vbmV0YXJpYSBwcml2YWRhLiBFbCBpbnRlcmNhbWJpbyBkZSBsYSBPYnJhIHBvciBvdHJhcyBvYnJhcyBwcm90ZWdpZGFzIHBvciBkZXJlY2hvcyBkZSBhdXRvciwgeWEgc2VhIGEgdHJhdsOpcyBkZSB1biBzaXN0ZW1hIHBhcmEgY29tcGFydGlyIGFyY2hpdm9zIGRpZ2l0YWxlcyAoZGlnaXRhbCBmaWxlLXNoYXJpbmcpIG8gZGUgY3VhbHF1aWVyIG90cmEgbWFuZXJhIG5vIHNlcsOhIGNvbnNpZGVyYWRvIGNvbW8gZXN0YXIgZGVzdGluYWRvIHByaW5jaXBhbG1lbnRlIG8gZGlyaWdpZG8gZGlyZWN0YW1lbnRlIGEgY29uc2VndWlyIHVuIHByb3ZlY2hvIGNvbWVyY2lhbCBvIHVuYSBjb21wZW5zYWNpw7NuIG1vbmV0YXJpYSBwcml2YWRhLCBzaWVtcHJlIHF1ZSBubyBzZSByZWFsaWNlIHVuIHBhZ28gbWVkaWFudGUgdW5hIGNvbXBlbnNhY2nDs24gbW9uZXRhcmlhIGVuIHJlbGFjacOzbiBjb24gZWwgaW50ZXJjYW1iaW8gZGUgb2JyYXMgcHJvdGVnaWRhcyBwb3IgZWwgZGVyZWNobyBkZSBhdXRvci4gPC9saT4KCiAgPGxpPiBTaSB1c3RlZCBkaXN0cmlidXllLCBleGhpYmUgcMO6YmxpY2FtZW50ZSwgZWplY3V0YSBww7pibGljYW1lbnRlIG8gZWplY3V0YSBww7pibGljYW1lbnRlIGVuIGZvcm1hIGRpZ2l0YWwgbGEgT2JyYSBvIGN1YWxxdWllciBPYnJhIERlcml2YWRhIHUgT2JyYSBDb2xlY3RpdmEsIFVzdGVkIGRlYmUgbWFudGVuZXIgaW50YWN0YSB0b2RhIGxhIGluZm9ybWFjacOzbiBkZSBkZXJlY2hvIGRlIGF1dG9yIGRlIGxhIE9icmEgeSBwcm9wb3JjaW9uYXIsIGRlIGZvcm1hIHJhem9uYWJsZSBzZWfDum4gZWwgbWVkaW8gbyBtYW5lcmEgcXVlIFVzdGVkIGVzdMOpIHV0aWxpemFuZG86IChpKSBlbCBub21icmUgZGVsIEF1dG9yIE9yaWdpbmFsIHNpIGVzdMOhIHByb3Zpc3RvIChvIHNldWTDs25pbW8sIHNpIGZ1ZXJlIGFwbGljYWJsZSksIHkvbyAoaWkpIGVsIG5vbWJyZSBkZSBsYSBwYXJ0ZSBvIGxhcyBwYXJ0ZXMgcXVlIGVsIEF1dG9yIE9yaWdpbmFsIHkvbyBlbCBMaWNlbmNpYW50ZSBodWJpZXJlbiBkZXNpZ25hZG8gcGFyYSBsYSBhdHJpYnVjacOzbiAodi5nLiwgdW4gaW5zdGl0dXRvIHBhdHJvY2luYWRvciwgZWRpdG9yaWFsLCBwdWJsaWNhY2nDs24pIGVuIGxhIGluZm9ybWFjacOzbiBkZSBsb3MgZGVyZWNob3MgZGUgYXV0b3IgZGVsIExpY2VuY2lhbnRlLCB0w6lybWlub3MgZGUgc2VydmljaW9zIG8gZGUgb3RyYXMgZm9ybWFzIHJhem9uYWJsZXM7IGVsIHTDrXR1bG8gZGUgbGEgT2JyYSBzaSBlc3TDoSBwcm92aXN0bzsgZW4gbGEgbWVkaWRhIGRlIGxvIHJhem9uYWJsZW1lbnRlIGZhY3RpYmxlIHksIHNpIGVzdMOhIHByb3Zpc3RvLCBlbCBJZGVudGlmaWNhZG9yIFVuaWZvcm1lIGRlIFJlY3Vyc29zIChVbmlmb3JtIFJlc291cmNlIElkZW50aWZpZXIpIHF1ZSBlbCBMaWNlbmNpYW50ZSBlc3BlY2lmaWNhIHBhcmEgc2VyIGFzb2NpYWRvIGNvbiBsYSBPYnJhLCBzYWx2byBxdWUgdGFsIFVSSSBubyBzZSByZWZpZXJhIGEgbGEgbm90YSBzb2JyZSBsb3MgZGVyZWNob3MgZGUgYXV0b3IgbyBhIGxhIGluZm9ybWFjacOzbiBzb2JyZSBlbCBsaWNlbmNpYW1pZW50byBkZSBsYSBPYnJhOyB5IGVuIGVsIGNhc28gZGUgdW5hIE9icmEgRGVyaXZhZGEsIGF0cmlidWlyIGVsIGNyw6lkaXRvIGlkZW50aWZpY2FuZG8gZWwgdXNvIGRlIGxhIE9icmEgZW4gbGEgT2JyYSBEZXJpdmFkYSAodi5nLiwgIlRyYWR1Y2Npw7NuIEZyYW5jZXNhIGRlIGxhIE9icmEgZGVsIEF1dG9yIE9yaWdpbmFsLCIgbyAiR3Vpw7NuIENpbmVtYXRvZ3LDoWZpY28gYmFzYWRvIGVuIGxhIE9icmEgb3JpZ2luYWwgZGVsIEF1dG9yIE9yaWdpbmFsIikuIFRhbCBjcsOpZGl0byBwdWVkZSBzZXIgaW1wbGVtZW50YWRvIGRlIGN1YWxxdWllciBmb3JtYSByYXpvbmFibGU7IGVuIGVsIGNhc28sIHNpbiBlbWJhcmdvLCBkZSBPYnJhcyBEZXJpdmFkYXMgdSBPYnJhcyBDb2xlY3RpdmFzLCB0YWwgY3LDqWRpdG8gYXBhcmVjZXLDoSwgY29tbyBtw61uaW1vLCBkb25kZSBhcGFyZWNlIGVsIGNyw6lkaXRvIGRlIGN1YWxxdWllciBvdHJvIGF1dG9yIGNvbXBhcmFibGUgeSBkZSB1bmEgbWFuZXJhLCBhbCBtZW5vcywgdGFuIGRlc3RhY2FkYSBjb21vIGVsIGNyw6lkaXRvIGRlIG90cm8gYXV0b3IgY29tcGFyYWJsZS4gPC9saT4KCiAgPGxpPiBQYXJhIGV2aXRhciB0b2RhIGNvbmZ1c2nDs24sIGVsIExpY2VuY2lhbnRlIGFjbGFyYSBxdWUsIGN1YW5kbyBsYSBvYnJhIGVzIHVuYSBjb21wb3NpY2nDs24gbXVzaWNhbDoKCiAgICA8b2wgdHlwZT0naSc+CgogICAgICA8bGk+IFJlZ2Fsw61hcyBwb3IgaW50ZXJwcmV0YWNpw7NuIHkgZWplY3VjacOzbiBiYWpvIGxpY2VuY2lhcyBnZW5lcmFsZXMuIEVsIExpY2VuY2lhbnRlIHNlIHJlc2VydmEgZWwgZGVyZWNobyBleGNsdXNpdm8gZGUgYXV0b3JpemFyIGxhIGVqZWN1Y2nDs24gcMO6YmxpY2EgbyBsYSBlamVjdWNpw7NuIHDDumJsaWNhIGRpZ2l0YWwgZGUgbGEgb2JyYSB5IGRlIHJlY29sZWN0YXIsIHNlYSBpbmRpdmlkdWFsbWVudGUgbyBhIHRyYXbDqXMgZGUgdW5hIHNvY2llZGFkIGRlIGdlc3Rpw7NuIGNvbGVjdGl2YSBkZSBkZXJlY2hvcyBkZSBhdXRvciB5IGRlcmVjaG9zIGNvbmV4b3MgKHBvciBlamVtcGxvLCBTQVlDTyksIGxhcyByZWdhbMOtYXMgcG9yIGxhIGVqZWN1Y2nDs24gcMO6YmxpY2EgbyBwb3IgbGEgZWplY3VjacOzbiBww7pibGljYSBkaWdpdGFsIGRlIGxhIG9icmEgKHBvciBlamVtcGxvIFdlYmNhc3QpIGxpY2VuY2lhZGEgYmFqbyBsaWNlbmNpYXMgZ2VuZXJhbGVzLCBzaSBsYSBpbnRlcnByZXRhY2nDs24gbyBlamVjdWNpw7NuIGRlIGxhIG9icmEgZXN0w6EgcHJpbW9yZGlhbG1lbnRlIG9yaWVudGFkYSBwb3IgbyBkaXJpZ2lkYSBhIGxhIG9idGVuY2nDs24gZGUgdW5hIHZlbnRhamEgY29tZXJjaWFsIG8gdW5hIGNvbXBlbnNhY2nDs24gbW9uZXRhcmlhIHByaXZhZGEuIDwvbGk+CgogICAgPGxpPiBSZWdhbMOtYXMgcG9yIEZvbm9ncmFtYXMuIEVsIExpY2VuY2lhbnRlIHNlIHJlc2VydmEgZWwgZGVyZWNobyBleGNsdXNpdm8gZGUgcmVjb2xlY3RhciwgaW5kaXZpZHVhbG1lbnRlIG8gYSB0cmF2w6lzIGRlIHVuYSBzb2NpZWRhZCBkZSBnZXN0acOzbiBjb2xlY3RpdmEgZGUgZGVyZWNob3MgZGUgYXV0b3IgeSBkZXJlY2hvcyBjb25leG9zIChwb3IgZWplbXBsbywgU0FZQ08pLCB1bmEgYWdlbmNpYSBkZSBkZXJlY2hvcyBtdXNpY2FsZXMgbyBhbGfDum4gYWdlbnRlIGRlc2lnbmFkbywgbGFzIHJlZ2Fsw61hcyBwb3IgY3VhbHF1aWVyIGZvbm9ncmFtYSBxdWUgVXN0ZWQgY3JlZSBhIHBhcnRpciBkZSBsYSBvYnJhICjigJx2ZXJzacOzbiBjb3ZlcuKAnSkgeSBkaXN0cmlidXlhLCBlbiBsb3MgdMOpcm1pbm9zIGRlbCByw6lnaW1lbiBkZSBkZXJlY2hvcyBkZSBhdXRvciwgc2kgbGEgY3JlYWNpw7NuIG8gZGlzdHJpYnVjacOzbiBkZSBlc2EgdmVyc2nDs24gY292ZXIgZXN0w6EgcHJpbW9yZGlhbG1lbnRlIGRlc3RpbmFkYSBvIGRpcmlnaWRhIGEgb2J0ZW5lciB1bmEgdmVudGFqYSBjb21lcmNpYWwgbyB1bmEgY29tcGVuc2FjacOzbiBtb25ldGFyaWEgcHJpdmFkYS4gPC9saT4KCiAgICA8L29sPjwvbGk+CgogIDxsaT4gR2VzdGnDs24gZGUgRGVyZWNob3MgZGUgQXV0b3Igc29icmUgSW50ZXJwcmV0YWNpb25lcyB5IEVqZWN1Y2lvbmVzIERpZ2l0YWxlcyAoV2ViQ2FzdGluZykuIFBhcmEgZXZpdGFyIHRvZGEgY29uZnVzacOzbiwgZWwgTGljZW5jaWFudGUgYWNsYXJhIHF1ZSwgY3VhbmRvIGxhIG9icmEgc2VhIHVuIGZvbm9ncmFtYSwgZWwgTGljZW5jaWFudGUgc2UgcmVzZXJ2YSBlbCBkZXJlY2hvIGV4Y2x1c2l2byBkZSBhdXRvcml6YXIgbGEgZWplY3VjacOzbiBww7pibGljYSBkaWdpdGFsIGRlIGxhIG9icmEgKHBvciBlamVtcGxvLCB3ZWJjYXN0KSB5IGRlIHJlY29sZWN0YXIsIGluZGl2aWR1YWxtZW50ZSBvIGEgdHJhdsOpcyBkZSB1bmEgc29jaWVkYWQgZGUgZ2VzdGnDs24gY29sZWN0aXZhIGRlIGRlcmVjaG9zIGRlIGF1dG9yIHkgZGVyZWNob3MgY29uZXhvcyAocG9yIGVqZW1wbG8sIEFjaW5wcm8pLCBsYXMgcmVnYWzDrWFzIHBvciBsYSBlamVjdWNpw7NuIHDDumJsaWNhIGRpZ2l0YWwgZGUgbGEgb2JyYSAocG9yIGVqZW1wbG8sIHdlYmNhc3QpLCBzdWpldGEgYSBsYXMgZGlzcG9zaWNpb25lcyBhcGxpY2FibGVzIGRlbCByw6lnaW1lbiBkZSBEZXJlY2hvIGRlIEF1dG9yLCBzaSBlc3RhIGVqZWN1Y2nDs24gcMO6YmxpY2EgZGlnaXRhbCBlc3TDoSBwcmltb3JkaWFsbWVudGUgZGlyaWdpZGEgYSBvYnRlbmVyIHVuYSB2ZW50YWphIGNvbWVyY2lhbCBvIHVuYSBjb21wZW5zYWNpw7NuIG1vbmV0YXJpYSBwcml2YWRhLiA8L2xpPgoKICAgIAoKICA8L29sPgoKICA8cD48c3Ryb25nPjUuIFJlcHJlc2VudGFjaW9uZXMsIEdhcmFudMOtYXMgeSBMaW1pdGFjaW9uZXMgZGUgUmVzcG9uc2FiaWxpZGFkLiA8L3N0cm9uZz48L3A+CgogIDxwPjxmb250IHNpemU9IjEiPkEgTUVOT1MgUVVFIExBUyBQQVJURVMgTE8gQUNPUkRBUkFOIERFIE9UUkEgRk9STUEgUE9SIEVTQ1JJVE8sIEVMIExJQ0VOQ0lBTlRFIE9GUkVDRSBMQSBPQlJBIChFTiBFTCBFU1RBRE8gRU4gRUwgUVVFIFNFIEVOQ1VFTlRSQSkg4oCcVEFMIENVQUzigJ0sIFNJTiBCUklOREFSIEdBUkFOVMONQVMgREUgQ0xBU0UgQUxHVU5BIFJFU1BFQ1RPIERFIExBIE9CUkEsIFlBIFNFQSBFWFBSRVNBLCBJTVBMw41DSVRBLCBMRUdBTCBPIENVQUxRVUlFUkEgT1RSQSwgSU5DTFVZRU5ETywgU0lOIExJTUlUQVJTRSBBIEVMTEFTLCBHQVJBTlTDjUFTIERFIFRJVFVMQVJJREFELCBDT01FUkNJQUJJTElEQUQsIEFEQVBUQUJJTElEQUQgTyBBREVDVUFDScOTTiBBIFBST1DDk1NJVE8gREVURVJNSU5BRE8sIEFVU0VOQ0lBIERFIElORlJBQ0NJw5NOLCBERSBBVVNFTkNJQSBERSBERUZFQ1RPUyBMQVRFTlRFUyBPIERFIE9UUk8gVElQTywgTyBMQSBQUkVTRU5DSUEgTyBBVVNFTkNJQSBERSBFUlJPUkVTLCBTRUFOIE8gTk8gREVTQ1VCUklCTEVTIChQVUVEQU4gTyBOTyBTRVIgRVNUT1MgREVTQ1VCSUVSVE9TKS4gQUxHVU5BUyBKVVJJU0RJQ0NJT05FUyBOTyBQRVJNSVRFTiBMQSBFWENMVVNJw5NOIERFIEdBUkFOVMONQVMgSU1QTMONQ0lUQVMsIEVOIENVWU8gQ0FTTyBFU1RBIEVYQ0xVU0nDk04gUFVFREUgTk8gQVBMSUNBUlNFIEEgVVNURUQuIDwvcD4KCiAgPHA+PHN0cm9uZz42LiBMaW1pdGFjacOzbiBkZSByZXNwb25zYWJpbGlkYWQuIDwvc3Ryb25nPjwvcD4KCiAgPHA+QSBNRU5PUyBRVUUgTE8gRVhJSkEgRVhQUkVTQU1FTlRFIExBIExFWSBBUExJQ0FCTEUsIEVMIExJQ0VOQ0lBTlRFIE5PIFNFUsOBIFJFU1BPTlNBQkxFIEFOVEUgVVNURUQgUE9SIERBw5FPIEFMR1VOTywgU0VBIFBPUiBSRVNQT05TQUJJTElEQUQgRVhUUkFDT05UUkFDVFVBTCwgUFJFQ09OVFJBQ1RVQUwgTyBDT05UUkFDVFVBTCwgT0JKRVRJVkEgTyBTVUJKRVRJVkEsIFNFIFRSQVRFIERFIERBw5FPUyBNT1JBTEVTIE8gUEFUUklNT05JQUxFUywgRElSRUNUT1MgTyBJTkRJUkVDVE9TLCBQUkVWSVNUT1MgTyBJTVBSRVZJU1RPUyBQUk9EVUNJRE9TIFBPUiBFTCBVU08gREUgRVNUQSBMSUNFTkNJQSBPIERFIExBIE9CUkEsIEFVTiBDVUFORE8gRUwgTElDRU5DSUFOVEUgSEFZQSBTSURPIEFEVkVSVElETyBERSBMQSBQT1NJQklMSURBRCBERSBESUNIT1MgREHDkU9TLiBBTEdVTkFTIExFWUVTIE5PIFBFUk1JVEVOIExBIEVYQ0xVU0nDk04gREUgQ0lFUlRBIFJFU1BPTlNBQklMSURBRCwgRU4gQ1VZTyBDQVNPIEVTVEEgRVhDTFVTScOTTiBQVUVERSBOTyBBUExJQ0FSU0UgQSBVU1RFRC4gPC9mb250PjwvcD4KCiAgPHA+PHN0cm9uZz43LiBUw6lybWlubzwvc3Ryb25nPi4gPHN0cm9uZz48L3N0cm9uZz48L3A+CgogIDxvbCB0eXBlPSdhJz4KCiAgICA8bGk+RXN0YSBMaWNlbmNpYSB5IGxvcyBkZXJlY2hvcyBvdG9yZ2Fkb3MgZW4gdmlydHVkIGRlIGVsbGEgdGVybWluYXLDoW4gYXV0b23DoXRpY2FtZW50ZSBzaSBVc3RlZCBpbmZyaW5nZSBhbGd1bmEgY29uZGljacOzbiBlc3RhYmxlY2lkYSBlbiBlbGxhLiBTaW4gZW1iYXJnbywgbG9zIGluZGl2aWR1b3MgbyBlbnRpZGFkZXMgcXVlIGhhbiByZWNpYmlkbyBPYnJhcyBEZXJpdmFkYXMgbyBDb2xlY3RpdmFzIGRlIFVzdGVkIGRlIGNvbmZvcm1pZGFkIGNvbiBlc3RhIExpY2VuY2lhLCBubyB2ZXLDoW4gdGVybWluYWRhcyBzdXMgbGljZW5jaWFzLCBzaWVtcHJlIHF1ZSBlc3RvcyBpbmRpdmlkdW9zIG8gZW50aWRhZGVzIHNpZ2FuIGN1bXBsaWVuZG8gw61udGVncmFtZW50ZSBsYXMgY29uZGljaW9uZXMgZGUgZXN0YXMgbGljZW5jaWFzLiBMYXMgU2VjY2lvbmVzIDEsIDIsIDUsIDYsIDcsIHkgOCBzdWJzaXN0aXLDoW4gYSBjdWFscXVpZXIgdGVybWluYWNpw7NuIGRlIGVzdGEgTGljZW5jaWEuIDwvbGk+CgogICAgPGxpPlN1amV0YSBhIGxhcyBjb25kaWNpb25lcyB5IHTDqXJtaW5vcyBhbnRlcmlvcmVzLCBsYSBsaWNlbmNpYSBvdG9yZ2FkYSBhcXXDrSBlcyBwZXJwZXR1YSAoZHVyYW50ZSBlbCBwZXLDrW9kbyBkZSB2aWdlbmNpYSBkZSBsb3MgZGVyZWNob3MgZGUgYXV0b3IgZGUgbGEgb2JyYSkuIE5vIG9ic3RhbnRlIGxvIGFudGVyaW9yLCBlbCBMaWNlbmNpYW50ZSBzZSByZXNlcnZhIGVsIGRlcmVjaG8gYSBwdWJsaWNhciB5L28gZXN0cmVuYXIgbGEgT2JyYSBiYWpvIGNvbmRpY2lvbmVzIGRlIGxpY2VuY2lhIGRpZmVyZW50ZXMgbyBhIGRlamFyIGRlIGRpc3RyaWJ1aXJsYSBlbiBsb3MgdMOpcm1pbm9zIGRlIGVzdGEgTGljZW5jaWEgZW4gY3VhbHF1aWVyIG1vbWVudG87IGVuIGVsIGVudGVuZGlkbywgc2luIGVtYmFyZ28sIHF1ZSBlc2EgZWxlY2Npw7NuIG5vIHNlcnZpcsOhIHBhcmEgcmV2b2NhciBlc3RhIGxpY2VuY2lhIG8gcXVlIGRlYmEgc2VyIG90b3JnYWRhICwgYmFqbyBsb3MgdMOpcm1pbm9zIGRlIGVzdGEgbGljZW5jaWEpLCB5IGVzdGEgbGljZW5jaWEgY29udGludWFyw6EgZW4gcGxlbm8gdmlnb3IgeSBlZmVjdG8gYSBtZW5vcyBxdWUgc2VhIHRlcm1pbmFkYSBjb21vIHNlIGV4cHJlc2EgYXRyw6FzLiBMYSBMaWNlbmNpYSByZXZvY2FkYSBjb250aW51YXLDoSBzaWVuZG8gcGxlbmFtZW50ZSB2aWdlbnRlIHkgZWZlY3RpdmEgc2kgbm8gc2UgbGUgZGEgdMOpcm1pbm8gZW4gbGFzIGNvbmRpY2lvbmVzIGluZGljYWRhcyBhbnRlcmlvcm1lbnRlLiA8L2xpPgoKICA8L29sPgoKICA8cD48c3Ryb25nPjguIFZhcmlvcy4gPC9zdHJvbmc+PC9wPgoKICA8b2wgdHlwZT0nYSc+CgogICAgPGxpPkNhZGEgdmV6IHF1ZSBVc3RlZCBkaXN0cmlidXlhIG8gcG9uZ2EgYSBkaXNwb3NpY2nDs24gcMO6YmxpY2EgbGEgT2JyYSBvIHVuYSBPYnJhIENvbGVjdGl2YSwgZWwgTGljZW5jaWFudGUgb2ZyZWNlcsOhIGFsIGRlc3RpbmF0YXJpbyB1bmEgbGljZW5jaWEgZW4gbG9zIG1pc21vcyB0w6lybWlub3MgeSBjb25kaWNpb25lcyBxdWUgbGEgbGljZW5jaWEgb3RvcmdhZGEgYSBVc3RlZCBiYWpvIGVzdGEgTGljZW5jaWEuIDwvbGk+CgogIDxsaT5TaSBhbGd1bmEgZGlzcG9zaWNpw7NuIGRlIGVzdGEgTGljZW5jaWEgcmVzdWx0YSBpbnZhbGlkYWRhIG8gbm8gZXhpZ2libGUsIHNlZ8O6biBsYSBsZWdpc2xhY2nDs24gdmlnZW50ZSwgZXN0byBubyBhZmVjdGFyw6EgbmkgbGEgdmFsaWRleiBuaSBsYSBhcGxpY2FiaWxpZGFkIGRlbCByZXN0byBkZSBjb25kaWNpb25lcyBkZSBlc3RhIExpY2VuY2lhIHksIHNpbiBhY2Npw7NuIGFkaWNpb25hbCBwb3IgcGFydGUgZGUgbG9zIHN1amV0b3MgZGUgZXN0ZSBhY3VlcmRvLCBhcXXDqWxsYSBzZSBlbnRlbmRlcsOhIHJlZm9ybWFkYSBsbyBtw61uaW1vIG5lY2VzYXJpbyA8c3Ryb25nPjwvc3Ryb25nPnBhcmEgaGFjZXIgcXVlIGRpY2hhIGRpc3Bvc2ljacOzbiBzZWEgdsOhbGlkYSB5IGV4aWdpYmxlLiA8L2xpPgoKICA8bGk+TmluZ8O6biB0w6lybWlubyBvIGRpc3Bvc2ljacOzbiBkZSBlc3RhIExpY2VuY2lhIHNlIGVzdGltYXLDoSByZW51bmNpYWRhIHkgbmluZ3VuYSB2aW9sYWNpw7NuIGRlIGVsbGEgc2Vyw6EgY29uc2VudGlkYSBhIG1lbm9zIHF1ZSBlc2EgcmVudW5jaWEgbyBjb25zZW50aW1pZW50byBzZWEgb3RvcmdhZG8gcG9yIGVzY3JpdG8geSBmaXJtYWRvIHBvciBsYSBwYXJ0ZSBxdWUgcmVudW5jaWUgbyBjb25zaWVudGEuIDwvbGk+CgogIDxsaT5Fc3RhIExpY2VuY2lhIHJlZmxlamEgZWwgYWN1ZXJkbyBwbGVubyBlbnRyZSBsYXMgcGFydGVzIHJlc3BlY3RvIGEgbGEgT2JyYSBhcXXDrSBsaWNlbmNpYWRhLiBObyBoYXkgYXJyZWdsb3MsIGFjdWVyZG9zIG8gZGVjbGFyYWNpb25lcyByZXNwZWN0byBhIGxhIE9icmEgcXVlIG5vIGVzdMOpbiBlc3BlY2lmaWNhZG9zIGVuIGVzdGUgZG9jdW1lbnRvLiBFbCBMaWNlbmNpYW50ZSBubyBzZSB2ZXLDoSBsaW1pdGFkbyBwb3IgbmluZ3VuYSBkaXNwb3NpY2nDs24gYWRpY2lvbmFsIHF1ZSBwdWVkYSBzdXJnaXIgZW4gYWxndW5hIGNvbXVuaWNhY2nDs24gZW1hbmFkYSBkZSBVc3RlZC4gRXN0YSBMaWNlbmNpYSBubyBwdWVkZSBzZXIgbW9kaWZpY2FkYSBzaW4gZWwgY29uc2VudGltaWVudG8gbXV0dW8gcG9yIGVzY3JpdG8gZGVsIExpY2VuY2lhbnRlIHkgVXN0ZWQuIDwvbGk+CgogIDwvb2w+Cgo8L2Rpdj4KPC9ib2R5Pgo8L2h0bWw+Cg== |