Solución numérica para las ecuaciones de Nernst-Planck-Poisson usando un método de elementos finitos
Este trabajo presenta y analiza esquemas linealizados y conservativos para las ecuaciones de Poisson-Nernst-Planck (PNP), empleando aproximaciones de elementos finitos en las discretizaciones espacial. La discretización espacial se realiza mediante el Método de Elementos Finitos, mientras que para l...
- Autores:
-
Cogollo Mausa, Sindi Paola
Bello Bertel, Marlidis
- Tipo de recurso:
- Trabajo de grado de pregrado
- Fecha de publicación:
- 2024
- Institución:
- Universidad de Córdoba
- Repositorio:
- Repositorio Institucional Unicórdoba
- Idioma:
- spa
- OAI Identifier:
- oai:repositorio.unicordoba.edu.co:ucordoba/8846
- Acceso en línea:
- https://repositorio.unicordoba.edu.co/handle/ucordoba/8846
https://repositorio.unicordoba.edu.co
- Palabra clave:
- Ecuaciones de Nernst-Planck-Poisson
Métodos de Elementos Finitos
Esquema linealizado
Campo vectorial conservativo
Nernst-Planck-Poisson equations
Finite Element Methods
Linearized scheme
Conservative vector field
- Rights
- openAccess
- License
- Copyright Universidad de Córdoba, 2024
id |
UCORDOBA2_a8b2b7b1abd5801bc57414c324517991 |
---|---|
oai_identifier_str |
oai:repositorio.unicordoba.edu.co:ucordoba/8846 |
network_acronym_str |
UCORDOBA2 |
network_name_str |
Repositorio Institucional Unicórdoba |
repository_id_str |
|
dc.title.spa.fl_str_mv |
Solución numérica para las ecuaciones de Nernst-Planck-Poisson usando un método de elementos finitos |
title |
Solución numérica para las ecuaciones de Nernst-Planck-Poisson usando un método de elementos finitos |
spellingShingle |
Solución numérica para las ecuaciones de Nernst-Planck-Poisson usando un método de elementos finitos Ecuaciones de Nernst-Planck-Poisson Métodos de Elementos Finitos Esquema linealizado Campo vectorial conservativo Nernst-Planck-Poisson equations Finite Element Methods Linearized scheme Conservative vector field |
title_short |
Solución numérica para las ecuaciones de Nernst-Planck-Poisson usando un método de elementos finitos |
title_full |
Solución numérica para las ecuaciones de Nernst-Planck-Poisson usando un método de elementos finitos |
title_fullStr |
Solución numérica para las ecuaciones de Nernst-Planck-Poisson usando un método de elementos finitos |
title_full_unstemmed |
Solución numérica para las ecuaciones de Nernst-Planck-Poisson usando un método de elementos finitos |
title_sort |
Solución numérica para las ecuaciones de Nernst-Planck-Poisson usando un método de elementos finitos |
dc.creator.fl_str_mv |
Cogollo Mausa, Sindi Paola Bello Bertel, Marlidis |
dc.contributor.advisor.none.fl_str_mv |
Reales Martínez, Carlos Alberto |
dc.contributor.author.none.fl_str_mv |
Cogollo Mausa, Sindi Paola Bello Bertel, Marlidis |
dc.contributor.supervisor.none.fl_str_mv |
Silgado Ballesta, Albert Antonio |
dc.contributor.jury.none.fl_str_mv |
ARENAS TAWIL, ABRAHAM JOSE Velasquéz Ramos, Iván Darío |
dc.subject.proposal.none.fl_str_mv |
Ecuaciones de Nernst-Planck-Poisson Métodos de Elementos Finitos Esquema linealizado Campo vectorial conservativo |
topic |
Ecuaciones de Nernst-Planck-Poisson Métodos de Elementos Finitos Esquema linealizado Campo vectorial conservativo Nernst-Planck-Poisson equations Finite Element Methods Linearized scheme Conservative vector field |
dc.subject.keywords.none.fl_str_mv |
Nernst-Planck-Poisson equations Finite Element Methods Linearized scheme Conservative vector field |
description |
Este trabajo presenta y analiza esquemas linealizados y conservativos para las ecuaciones de Poisson-Nernst-Planck (PNP), empleando aproximaciones de elementos finitos en las discretizaciones espacial. La discretización espacial se realiza mediante el Método de Elementos Finitos, mientras que para la discretización temporal se aplica un método linealizado de Euler. Este enfoque permite desacoplar las ecuaciones no lineales, resolviendo secuencialmente tres sistemas de ecuaciones lineales en cada paso temporal y proporcionando una estimación óptima del error en la norma L2. Se desarrolla un análisis de error para varias normas, incluyendo L∞(L2), aplicados a las incógnitas: concentraciones, flujos másicos y potencial eléctrico. Los resultados numéricos obtenidos en dominios bidimensionales confirman las propiedades de estabilidad, conservación y disipación del esquema. Esto valida teóricamente la eficiencia y robustez del método propuesto. El trabajo se fundamenta en los artículos [8, 9]), los cuales proporcionan una base teórica sólida y metodológica para el desarrollo de nuestras investigaciones. Hemos adoptado y adaptado las técnicas y enfoques presentados por esto artículos, asegurando así la coherencia y la validez de nuestros resultados. |
publishDate |
2024 |
dc.date.accessioned.none.fl_str_mv |
2024-12-19T15:26:33Z |
dc.date.available.none.fl_str_mv |
2024-12-19T15:26:33Z |
dc.date.issued.none.fl_str_mv |
2024-12-19 |
dc.type.none.fl_str_mv |
Trabajo de grado - Pregrado |
dc.type.driver.none.fl_str_mv |
info:eu-repo/semantics/bachelorThesis |
dc.type.coar.none.fl_str_mv |
http://purl.org/coar/resource_type/c_7a1f |
dc.type.version.none.fl_str_mv |
info:eu-repo/semantics/acceptedVersion |
dc.type.content.none.fl_str_mv |
Text |
format |
http://purl.org/coar/resource_type/c_7a1f |
status_str |
acceptedVersion |
dc.identifier.uri.none.fl_str_mv |
https://repositorio.unicordoba.edu.co/handle/ucordoba/8846 |
dc.identifier.instname.none.fl_str_mv |
Universidad de Córdoba |
dc.identifier.reponame.none.fl_str_mv |
Repositorio Universidad de Córdoba |
dc.identifier.repourl.none.fl_str_mv |
https://repositorio.unicordoba.edu.co |
url |
https://repositorio.unicordoba.edu.co/handle/ucordoba/8846 https://repositorio.unicordoba.edu.co |
identifier_str_mv |
Universidad de Córdoba Repositorio Universidad de Córdoba |
dc.language.iso.none.fl_str_mv |
spa |
language |
spa |
dc.relation.references.none.fl_str_mv |
[1] M. Bazant, K. Thornton y A. Ajdari. «Diffuse-charge dynamics in electrochemical systems». En: Phys. Rev. E 70 (2 2004), pág. 021506. [2] S. Brenner y R. Scott. The Mathematical Theory of Finite Element Methods. Texts in Applied Mathematics. Springer New York, 2007. ISBN: 9780387759333. [3] M. Brunk y A. Kvaerno. «Positivity preserving discretization of time dependent semiconductor drift–diffusion equations». En: Applied Numerical Mathematics 62.10 (2012). Selected Papers from NUMDIFF-12, págs. 1289-1301. ISSN: 0168-9274. [4] Y. Chen y L. Wu. Second order elliptic equations and elliptic systems. American Mathematical Soc., 1998. [5] L. Evans. Partial differential equations. American Mathematical Society, 2022. [6] A. Flavell et al. «A Conservative Finite Difference Scheme for Poisson-Nernst- Planck Equations». En: Journal of Computational Electronics 13 (mar. de 2013).[6] A. Flavell et al. «A Conservative Finite Difference Scheme for Poisson-Nernst- Planck Equations». En: Journal of Computational Electronics 13 (mar. de 2013). [7] H. Gajewski y k. Gröger. «On the basic equations for carrier transport in semiconductors ». En: Journal of Mathematical Analysis and Applications 113.1 (1986), págs. 12-35. ISSN: 0022-247X. [8] A. Gao y P. Sun. «A Linearized Local Conservative Mixed Finite Element Method for Poisson-Nernst-Planck Equations». En: Journal of Scientific Computing 77 (nov. de 2018). [9] H. Gao y D. He. «Linearized Conservative Finite Element Methods for the Nernst-Planck-Poisson Equations». En: Journal of Scientific Computing 72 (sep. de 2017). [10] G. Gatica. Introducción al análisis funcional: teoría y aplicaciones. Reverté, 2014. ISBN: 9788429151893. [11] D. He y K. Pan. «An energy preserving finite difference scheme for the Poisson– Nernst–Planck system». En: Applied Mathematics and Computation 287-288 (2016), págs. 214-223. ISSN: 0096-3003. [12] J. Heywood y R. Rannacher. «Finite-element approximation of the nonstationary Navier–Stokes problem. Part IV: error analysis for second-order time discretization ». En: SIAM Journal on Numerical Analysis (1990), págs. 353-384. [13] M. Mirzadeh y F. Gibou. «A conservative discretization of the Poisson-Nernst- Planck equations on adaptive Cartesian grids». En: Journal of Computational Physics 274 (2014), págs. 633-653. ISSN: 0021-9991. [14] L. Nirenberg. «An extended interpolation inequality». En: Annali della Scuola Normale Superiore di Pisa-Scienze Fisiche e Matematiche 20.4 (1966), págs. 733-737. [15] A. Prohl y M. Schmuck. «Convergent discretizations for the Nernst-Planck- Poisson system». En: Numerische Mathematik 111 (feb. de 2009), págs. 591-630. [16] R. Rannacher y R. Scott. «Some Optimal Error Estimates for Piecewise Linear Finite Element Approximations». En: Mathematics of Computation 38.158 (1982), págs. 437-445. ISSN: 00255718, 10886842. [17] Y. Sun et al. «Error analysis of finite element method for Poisson-Nernst-Planck equations». En: Journal of Computational and Applied Mathematics 301 (2016), págs. 28-43. ISSN: 0377-0427. |
dc.rights.none.fl_str_mv |
Copyright Universidad de Córdoba, 2024 |
dc.rights.uri.none.fl_str_mv |
https://creativecommons.org/licenses/by-nc-nd/4.0/ |
dc.rights.license.none.fl_str_mv |
Atribución-NoComercial-SinDerivadas 4.0 Internacional (CC BY-NC-ND 4.0) |
dc.rights.accessrights.none.fl_str_mv |
info:eu-repo/semantics/openAccess |
dc.rights.coar.none.fl_str_mv |
http://purl.org/coar/access_right/c_abf2 |
rights_invalid_str_mv |
Copyright Universidad de Córdoba, 2024 https://creativecommons.org/licenses/by-nc-nd/4.0/ Atribución-NoComercial-SinDerivadas 4.0 Internacional (CC BY-NC-ND 4.0) http://purl.org/coar/access_right/c_abf2 |
eu_rights_str_mv |
openAccess |
dc.format.mimetype.none.fl_str_mv |
application/pdf |
dc.publisher.none.fl_str_mv |
Universidad de Córdoba |
dc.publisher.faculty.none.fl_str_mv |
Facultad de Ciencias Básicas |
dc.publisher.place.none.fl_str_mv |
Montería, Córdoba, Colombia |
dc.publisher.program.none.fl_str_mv |
Matemática |
publisher.none.fl_str_mv |
Universidad de Córdoba |
institution |
Universidad de Córdoba |
bitstream.url.fl_str_mv |
https://repositorio.unicordoba.edu.co/bitstreams/6c5673a2-cb0f-4da3-9f45-6e0ecb9ddb83/download https://repositorio.unicordoba.edu.co/bitstreams/eda9be7a-f969-4e0b-97ac-1231e58057e6/download https://repositorio.unicordoba.edu.co/bitstreams/cab6dc9d-b70d-4626-bb43-86e41221deff/download https://repositorio.unicordoba.edu.co/bitstreams/89bf2894-bf34-4ed3-b079-a90c19ecb0b3/download https://repositorio.unicordoba.edu.co/bitstreams/4845bad2-1555-4d6c-93ac-07c63a4544c7/download https://repositorio.unicordoba.edu.co/bitstreams/f2b0d156-abc1-47fd-aee0-0e5a518d9037/download https://repositorio.unicordoba.edu.co/bitstreams/9d16a7c6-4548-44c3-a5c8-c7e4c7a22690/download |
bitstream.checksum.fl_str_mv |
73a5432e0b76442b22b026844140d683 b4e0e4178822ef0fde5db76c4ba0e906 9564cd74436351a704818a219d1f60c8 ec39d0c8aab7517a1264f695df2f7aca 9cda9ee8251955d7c2de5632aec6da94 30f7f07398dcfc7e605429f19bdd198f 92612faa05dae24c491791812bacbd8b |
bitstream.checksumAlgorithm.fl_str_mv |
MD5 MD5 MD5 MD5 MD5 MD5 MD5 |
repository.name.fl_str_mv |
Repositorio Universidad de Córdoba |
repository.mail.fl_str_mv |
bdigital@metabiblioteca.com |
_version_ |
1839636043815452672 |
spelling |
Reales Martínez, Carlos Albertof34810a4-13b2-481e-b87c-28061d14f5fd600Cogollo Mausa, Sindi Paola0192eda4-6573-4f0d-b271-de409b986edd-1Bello Bertel, Marlidisfac6b385-fe8b-4b15-877d-e87f078ae8e3-1Silgado Ballesta, Albert AntonioARENAS TAWIL, ABRAHAM JOSEf4299d2c-883c-47ef-bf00-c085fc9c4c24600Velasquéz Ramos, Iván Darío4fe25337-86e6-4a1f-b7d4-23549c896f65-12024-12-19T15:26:33Z2024-12-19T15:26:33Z2024-12-19https://repositorio.unicordoba.edu.co/handle/ucordoba/8846Universidad de CórdobaRepositorio Universidad de Córdobahttps://repositorio.unicordoba.edu.coEste trabajo presenta y analiza esquemas linealizados y conservativos para las ecuaciones de Poisson-Nernst-Planck (PNP), empleando aproximaciones de elementos finitos en las discretizaciones espacial. La discretización espacial se realiza mediante el Método de Elementos Finitos, mientras que para la discretización temporal se aplica un método linealizado de Euler. Este enfoque permite desacoplar las ecuaciones no lineales, resolviendo secuencialmente tres sistemas de ecuaciones lineales en cada paso temporal y proporcionando una estimación óptima del error en la norma L2. Se desarrolla un análisis de error para varias normas, incluyendo L∞(L2), aplicados a las incógnitas: concentraciones, flujos másicos y potencial eléctrico. Los resultados numéricos obtenidos en dominios bidimensionales confirman las propiedades de estabilidad, conservación y disipación del esquema. Esto valida teóricamente la eficiencia y robustez del método propuesto. El trabajo se fundamenta en los artículos [8, 9]), los cuales proporcionan una base teórica sólida y metodológica para el desarrollo de nuestras investigaciones. Hemos adoptado y adaptado las técnicas y enfoques presentados por esto artículos, asegurando así la coherencia y la validez de nuestros resultados.This work presents and analyzes linearized and conservative schemes for the Poisson-Nernst-Planck (PNP) equations, utilizing finite element approximations for the spatial discretizations. The spatial discretization is performed using the Finite Element Method, while the temporal discretization employs a linearized Euler method. This approach decouples the nonlinear equations, solving three sequential linear systems at each time step and providing an optimal L 2 error estimate. Rigorous error analyses are conducted under various norms, including L ∞(L 2 ), for the unknowns: concentrations, mass fluxes, and electric potential. Numerical results in two-dimensional domains as well as the stability, conservation, and dissipation properties of the scheme. These findings theoretically validate the efficiency and robustness of the proposed method. The work is based on the articles [8, 9]), which provide a solid theoretical and methodological basis for the development of our research. We have adopted and adapted the techniques and approaches presented by these articles to address the specific problems of our study. , thus ensuring the coherence and validity of our results.Declaración de Autoría VResumen VIIAgradecimientos XIIntroducción 11. Preliminares ..............................................................31.1. Espacios de Sobolev . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71.2. Implementación Computacional . . . . . . . . . . . . . . . . . . . . . . 151.3. Lemas Esenciales . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 171.4. Problema Continuo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 191.5. Formulación Variacional . . . . . . . . . . . . . . . . . . . . . . . . . . . 201.6. Formulación Completamente Discreta . . . . . . . . . . . . .... 211.6.1. Proyector de Ritz . . . . . . . . . . . . . . . . . . . . . . . . . . . .........222. Resultados Numéricos ................................................................352.1. Resultados Numéricos en Dos Dimensiones . . . . . . . . . . . . . . . 352.2. Análisis de Resultados . . . . . . . . . . . . . . . . . . . . . . . . . . . . ..........383. Conclusión........................................................................................393.1. Trabajos Futuros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ......40Bibliografía ..........................................................................................43PregradoMatemático(a)Monografíasapplication/pdfspaUniversidad de CórdobaFacultad de Ciencias BásicasMontería, Córdoba, ColombiaMatemáticaCopyright Universidad de Córdoba, 2024https://creativecommons.org/licenses/by-nc-nd/4.0/Atribución-NoComercial-SinDerivadas 4.0 Internacional (CC BY-NC-ND 4.0)info:eu-repo/semantics/openAccesshttp://purl.org/coar/access_right/c_abf2Solución numérica para las ecuaciones de Nernst-Planck-Poisson usando un método de elementos finitosTrabajo de grado - Pregradoinfo:eu-repo/semantics/bachelorThesishttp://purl.org/coar/resource_type/c_7a1finfo:eu-repo/semantics/acceptedVersionText[1] M. Bazant, K. Thornton y A. Ajdari. «Diffuse-charge dynamics in electrochemical systems». En: Phys. Rev. E 70 (2 2004), pág. 021506.[2] S. Brenner y R. Scott. The Mathematical Theory of Finite Element Methods. Texts in Applied Mathematics. Springer New York, 2007. ISBN: 9780387759333.[3] M. Brunk y A. Kvaerno. «Positivity preserving discretization of time dependent semiconductor drift–diffusion equations». En: Applied Numerical Mathematics 62.10 (2012). Selected Papers from NUMDIFF-12, págs. 1289-1301. ISSN: 0168-9274.[4] Y. Chen y L. Wu. Second order elliptic equations and elliptic systems. American Mathematical Soc., 1998.[5] L. Evans. Partial differential equations. American Mathematical Society, 2022.[6] A. Flavell et al. «A Conservative Finite Difference Scheme for Poisson-Nernst- Planck Equations». En: Journal of Computational Electronics 13 (mar. de 2013).[6] A. Flavell et al. «A Conservative Finite Difference Scheme for Poisson-Nernst- Planck Equations». En: Journal of Computational Electronics 13 (mar. de 2013).[7] H. Gajewski y k. Gröger. «On the basic equations for carrier transport in semiconductors ». En: Journal of Mathematical Analysis and Applications 113.1 (1986), págs. 12-35. ISSN: 0022-247X.[8] A. Gao y P. Sun. «A Linearized Local Conservative Mixed Finite Element Method for Poisson-Nernst-Planck Equations». En: Journal of Scientific Computing 77 (nov. de 2018).[9] H. Gao y D. He. «Linearized Conservative Finite Element Methods for the Nernst-Planck-Poisson Equations». En: Journal of Scientific Computing 72 (sep. de 2017).[10] G. Gatica. Introducción al análisis funcional: teoría y aplicaciones. Reverté, 2014. ISBN: 9788429151893.[11] D. He y K. Pan. «An energy preserving finite difference scheme for the Poisson– Nernst–Planck system». En: Applied Mathematics and Computation 287-288 (2016), págs. 214-223. ISSN: 0096-3003.[12] J. Heywood y R. Rannacher. «Finite-element approximation of the nonstationary Navier–Stokes problem. Part IV: error analysis for second-order time discretization ». En: SIAM Journal on Numerical Analysis (1990), págs. 353-384.[13] M. Mirzadeh y F. Gibou. «A conservative discretization of the Poisson-Nernst- Planck equations on adaptive Cartesian grids». En: Journal of Computational Physics 274 (2014), págs. 633-653. ISSN: 0021-9991.[14] L. Nirenberg. «An extended interpolation inequality». En: Annali della Scuola Normale Superiore di Pisa-Scienze Fisiche e Matematiche 20.4 (1966), págs. 733-737.[15] A. Prohl y M. Schmuck. «Convergent discretizations for the Nernst-Planck- Poisson system». En: Numerische Mathematik 111 (feb. de 2009), págs. 591-630.[16] R. Rannacher y R. Scott. «Some Optimal Error Estimates for Piecewise Linear Finite Element Approximations». En: Mathematics of Computation 38.158 (1982), págs. 437-445. ISSN: 00255718, 10886842.[17] Y. Sun et al. «Error analysis of finite element method for Poisson-Nernst-Planck equations». En: Journal of Computational and Applied Mathematics 301 (2016), págs. 28-43. ISSN: 0377-0427.Ecuaciones de Nernst-Planck-PoissonMétodos de Elementos FinitosEsquema linealizadoCampo vectorial conservativoNernst-Planck-Poisson equationsFinite Element MethodsLinearized schemeConservative vector fieldPublicationLICENSElicense.txtlicense.txttext/plain; charset=utf-815543https://repositorio.unicordoba.edu.co/bitstreams/6c5673a2-cb0f-4da3-9f45-6e0ecb9ddb83/download73a5432e0b76442b22b026844140d683MD51ORIGINALCogolloMausaSindiPaola-BelloBertelMarlidis.pdfCogolloMausaSindiPaola-BelloBertelMarlidis.pdfapplication/pdf1002227https://repositorio.unicordoba.edu.co/bitstreams/eda9be7a-f969-4e0b-97ac-1231e58057e6/downloadb4e0e4178822ef0fde5db76c4ba0e906MD52FORMATO DE AUTORIZACIÓN.pdfFORMATO DE AUTORIZACIÓN.pdfapplication/pdf420999https://repositorio.unicordoba.edu.co/bitstreams/cab6dc9d-b70d-4626-bb43-86e41221deff/download9564cd74436351a704818a219d1f60c8MD53TEXTCogolloMausaSindiPaola-BelloBertelMarlidis.pdf.txtCogolloMausaSindiPaola-BelloBertelMarlidis.pdf.txtExtracted texttext/plain71245https://repositorio.unicordoba.edu.co/bitstreams/89bf2894-bf34-4ed3-b079-a90c19ecb0b3/downloadec39d0c8aab7517a1264f695df2f7acaMD54FORMATO DE AUTORIZACIÓN.pdf.txtFORMATO DE AUTORIZACIÓN.pdf.txtExtracted texttext/plain5835https://repositorio.unicordoba.edu.co/bitstreams/4845bad2-1555-4d6c-93ac-07c63a4544c7/download9cda9ee8251955d7c2de5632aec6da94MD56THUMBNAILCogolloMausaSindiPaola-BelloBertelMarlidis.pdf.jpgCogolloMausaSindiPaola-BelloBertelMarlidis.pdf.jpgGenerated Thumbnailimage/jpeg8338https://repositorio.unicordoba.edu.co/bitstreams/f2b0d156-abc1-47fd-aee0-0e5a518d9037/download30f7f07398dcfc7e605429f19bdd198fMD55FORMATO DE AUTORIZACIÓN.pdf.jpgFORMATO DE AUTORIZACIÓN.pdf.jpgGenerated Thumbnailimage/jpeg14291https://repositorio.unicordoba.edu.co/bitstreams/9d16a7c6-4548-44c3-a5c8-c7e4c7a22690/download92612faa05dae24c491791812bacbd8bMD57ucordoba/8846oai:repositorio.unicordoba.edu.co:ucordoba/88462025-04-23 18:00:09.813https://creativecommons.org/licenses/by-nc-nd/4.0/Copyright Universidad de Córdoba, 2024open.accesshttps://repositorio.unicordoba.edu.coRepositorio Universidad de Córdobabdigital@metabiblioteca.comPHA+TEEgT0JSQSAoVEFMIFkgQ09NTyBTRSBERUZJTkUgTcOBUyBBREVMQU5URSkgU0UgT1RPUkdBIEJBSk8gTE9TIFRFUk1JTk9TIERFIEVTVEEgTElDRU5DSUEgUMOaQkxJQ0EgREUgQ1JFQVRJVkUgQ09NTU9OUyAo4oCcTFBDQ+KAnSBPIOKAnExJQ0VOQ0lB4oCdKS4gTEEgT0JSQSBFU1TDgSBQUk9URUdJREEgUE9SIERFUkVDSE9TIERFIEFVVE9SIFkvVSBPVFJBUyBMRVlFUyBBUExJQ0FCTEVTLiBRVUVEQSBQUk9ISUJJRE8gQ1VBTFFVSUVSIFVTTyBRVUUgU0UgSEFHQSBERSBMQSBPQlJBIFFVRSBOTyBDVUVOVEUgQ09OIExBIEFVVE9SSVpBQ0nDk04gUEVSVElORU5URSBERSBDT05GT1JNSURBRCBDT04gTE9TIFTDiVJNSU5PUyBERSBFU1RBIExJQ0VOQ0lBIFkgREUgTEEgTEVZIERFIERFUkVDSE8gREUgQVVUT1IuPC9wPgo8cD5NRURJQU5URSBFTCBFSkVSQ0lDSU8gREUgQ1VBTFFVSUVSQSBERSBMT1MgREVSRUNIT1MgUVVFIFNFIE9UT1JHQU4gRU4gRVNUQSBMSUNFTkNJQSwgVVNURUQgQUNFUFRBIFkgQUNVRVJEQSBRVUVEQVIgT0JMSUdBRE8gRU4gTE9TIFRFUk1JTk9TIFFVRSBTRSBTRcORQUxBTiBFTiBFTExBLiBFTCBMSUNFTkNJQU5URSBDT05DRURFIEEgVVNURUQgTE9TIERFUkVDSE9TIENPTlRFTklET1MgRU4gRVNUQSBMSUNFTkNJQSBDT05ESUNJT05BRE9TIEEgTEEgQUNFUFRBQ0nDk04gREUgU1VTIFRFUk1JTk9TIFkgQ09ORElDSU9ORVMuPC9wPgo8b2wgdHlwZT0iMSI+CiAgPGxpPgogICAgRGVmaW5pY2lvbmVzCiAgICA8b2wgdHlwZT1hPgogICAgICA8bGk+T2JyYSBDb2xlY3RpdmEgZXMgdW5hIG9icmEsIHRhbCBjb21vIHVuYSBwdWJsaWNhY2nDs24gcGVyacOzZGljYSwgdW5hIGFudG9sb2fDrWEsIG8gdW5hIGVuY2ljbG9wZWRpYSwgZW4gbGEgcXVlIGxhIG9icmEgZW4gc3UgdG90YWxpZGFkLCBzaW4gbW9kaWZpY2FjacOzbiBhbGd1bmEsIGp1bnRvIGNvbiB1biBncnVwbyBkZSBvdHJhcyBjb250cmlidWNpb25lcyBxdWUgY29uc3RpdHV5ZW4gb2JyYXMgc2VwYXJhZGFzIGUgaW5kZXBlbmRpZW50ZXMgZW4gc8OtIG1pc21hcywgc2UgaW50ZWdyYW4gZW4gdW4gdG9kbyBjb2xlY3Rpdm8uIFVuYSBPYnJhIHF1ZSBjb25zdGl0dXllIHVuYSBvYnJhIGNvbGVjdGl2YSBubyBzZSBjb25zaWRlcmFyw6EgdW5hIE9icmEgRGVyaXZhZGEgKGNvbW8gc2UgZGVmaW5lIGFiYWpvKSBwYXJhIGxvcyBwcm9ww7NzaXRvcyBkZSBlc3RhIGxpY2VuY2lhLiBhcXVlbGxhIHByb2R1Y2lkYSBwb3IgdW4gZ3J1cG8gZGUgYXV0b3JlcywgZW4gcXVlIGxhIE9icmEgc2UgZW5jdWVudHJhIHNpbiBtb2RpZmljYWNpb25lcywganVudG8gY29uIHVuYSBjaWVydGEgY2FudGlkYWQgZGUgb3RyYXMgY29udHJpYnVjaW9uZXMsIHF1ZSBjb25zdGl0dXllbiBlbiBzw60gbWlzbW9zIHRyYWJham9zIHNlcGFyYWRvcyBlIGluZGVwZW5kaWVudGVzLCBxdWUgc29uIGludGVncmFkb3MgYWwgdG9kbyBjb2xlY3Rpdm8sIHRhbGVzIGNvbW8gcHVibGljYWNpb25lcyBwZXJpw7NkaWNhcywgYW50b2xvZ8OtYXMgbyBlbmNpY2xvcGVkaWFzLjwvbGk+CiAgICAgIDxsaT5PYnJhIERlcml2YWRhIHNpZ25pZmljYSB1bmEgb2JyYSBiYXNhZGEgZW4gbGEgb2JyYSBvYmpldG8gZGUgZXN0YSBsaWNlbmNpYSBvIGVuIMOpc3RhIHkgb3RyYXMgb2JyYXMgcHJlZXhpc3RlbnRlcywgdGFsZXMgY29tbyB0cmFkdWNjaW9uZXMsIGFycmVnbG9zIG11c2ljYWxlcywgZHJhbWF0aXphY2lvbmVzLCDigJxmaWNjaW9uYWxpemFjaW9uZXPigJ0sIHZlcnNpb25lcyBwYXJhIGNpbmUsIOKAnGdyYWJhY2lvbmVzIGRlIHNvbmlkb+KAnSwgcmVwcm9kdWNjaW9uZXMgZGUgYXJ0ZSwgcmVzw7ptZW5lcywgY29uZGVuc2FjaW9uZXMsIG8gY3VhbHF1aWVyIG90cmEgZW4gbGEgcXVlIGxhIG9icmEgcHVlZGEgc2VyIHRyYW5zZm9ybWFkYSwgY2FtYmlhZGEgbyBhZGFwdGFkYSwgZXhjZXB0byBhcXVlbGxhcyBxdWUgY29uc3RpdHV5YW4gdW5hIG9icmEgY29sZWN0aXZhLCBsYXMgcXVlIG5vIHNlcsOhbiBjb25zaWRlcmFkYXMgdW5hIG9icmEgZGVyaXZhZGEgcGFyYSBlZmVjdG9zIGRlIGVzdGEgbGljZW5jaWEuIChQYXJhIGV2aXRhciBkdWRhcywgZW4gZWwgY2FzbyBkZSBxdWUgbGEgT2JyYSBzZWEgdW5hIGNvbXBvc2ljacOzbiBtdXNpY2FsIG8gdW5hIGdyYWJhY2nDs24gc29ub3JhLCBwYXJhIGxvcyBlZmVjdG9zIGRlIGVzdGEgTGljZW5jaWEgbGEgc2luY3Jvbml6YWNpw7NuIHRlbXBvcmFsIGRlIGxhIE9icmEgY29uIHVuYSBpbWFnZW4gZW4gbW92aW1pZW50byBzZSBjb25zaWRlcmFyw6EgdW5hIE9icmEgRGVyaXZhZGEgcGFyYSBsb3MgZmluZXMgZGUgZXN0YSBsaWNlbmNpYSkuPC9saT4KICAgICAgPGxpPkxpY2VuY2lhbnRlLCBlcyBlbCBpbmRpdmlkdW8gbyBsYSBlbnRpZGFkIHRpdHVsYXIgZGUgbG9zIGRlcmVjaG9zIGRlIGF1dG9yIHF1ZSBvZnJlY2UgbGEgT2JyYSBlbiBjb25mb3JtaWRhZCBjb24gbGFzIGNvbmRpY2lvbmVzIGRlIGVzdGEgTGljZW5jaWEuPC9saT4KICAgICAgPGxpPkF1dG9yIG9yaWdpbmFsLCBlcyBlbCBpbmRpdmlkdW8gcXVlIGNyZcOzIGxhIE9icmEuPC9saT4KICAgICAgPGxpPk9icmEsIGVzIGFxdWVsbGEgb2JyYSBzdXNjZXB0aWJsZSBkZSBwcm90ZWNjacOzbiBwb3IgZWwgcsOpZ2ltZW4gZGUgRGVyZWNobyBkZSBBdXRvciB5IHF1ZSBlcyBvZnJlY2lkYSBlbiBsb3MgdMOpcm1pbm9zIGRlIGVzdGEgbGljZW5jaWE8L2xpPgogICAgICA8bGk+VXN0ZWQsIGVzIGVsIGluZGl2aWR1byBvIGxhIGVudGlkYWQgcXVlIGVqZXJjaXRhIGxvcyBkZXJlY2hvcyBvdG9yZ2Fkb3MgYWwgYW1wYXJvIGRlIGVzdGEgTGljZW5jaWEgeSBxdWUgY29uIGFudGVyaW9yaWRhZCBubyBoYSB2aW9sYWRvIGxhcyBjb25kaWNpb25lcyBkZSBsYSBtaXNtYSByZXNwZWN0byBhIGxhIE9icmEsIG8gcXVlIGhheWEgb2J0ZW5pZG8gYXV0b3JpemFjacOzbiBleHByZXNhIHBvciBwYXJ0ZSBkZWwgTGljZW5jaWFudGUgcGFyYSBlamVyY2VyIGxvcyBkZXJlY2hvcyBhbCBhbXBhcm8gZGUgZXN0YSBMaWNlbmNpYSBwZXNlIGEgdW5hIHZpb2xhY2nDs24gYW50ZXJpb3IuPC9saT4KICAgIDwvb2w+CiAgPC9saT4KICA8YnIvPgogIDxsaT4KICAgIERlcmVjaG9zIGRlIFVzb3MgSG9ucmFkb3MgeSBleGNlcGNpb25lcyBMZWdhbGVzLgogICAgPHA+TmFkYSBlbiBlc3RhIExpY2VuY2lhIHBvZHLDoSBzZXIgaW50ZXJwcmV0YWRvIGNvbW8gdW5hIGRpc21pbnVjacOzbiwgbGltaXRhY2nDs24gbyByZXN0cmljY2nDs24gZGUgbG9zIGRlcmVjaG9zIGRlcml2YWRvcyBkZWwgdXNvIGhvbnJhZG8geSBvdHJhcyBsaW1pdGFjaW9uZXMgbyBleGNlcGNpb25lcyBhIGxvcyBkZXJlY2hvcyBkZWwgYXV0b3IgYmFqbyBlbCByw6lnaW1lbiBsZWdhbCB2aWdlbnRlIG8gZGVyaXZhZG8gZGUgY3VhbHF1aWVyIG90cmEgbm9ybWEgcXVlIHNlIGxlIGFwbGlxdWUuPC9wPgogIDwvbGk+CiAgPGxpPgogICAgQ29uY2VzacOzbiBkZSBsYSBMaWNlbmNpYS4KICAgIDxwPkJham8gbG9zIHTDqXJtaW5vcyB5IGNvbmRpY2lvbmVzIGRlIGVzdGEgTGljZW5jaWEsIGVsIExpY2VuY2lhbnRlIG90b3JnYSBhIFVzdGVkIHVuYSBsaWNlbmNpYSBtdW5kaWFsLCBsaWJyZSBkZSByZWdhbMOtYXMsIG5vIGV4Y2x1c2l2YSB5IHBlcnBldHVhIChkdXJhbnRlIHRvZG8gZWwgcGVyw61vZG8gZGUgdmlnZW5jaWEgZGUgbG9zIGRlcmVjaG9zIGRlIGF1dG9yKSBwYXJhIGVqZXJjZXIgZXN0b3MgZGVyZWNob3Mgc29icmUgbGEgT2JyYSB0YWwgeSBjb21vIHNlIGluZGljYSBhIGNvbnRpbnVhY2nDs246PC9wPgogICAgPG9sIHR5cGU9ImEiPgogICAgICA8bGk+UmVwcm9kdWNpciBsYSBPYnJhLCBpbmNvcnBvcmFyIGxhIE9icmEgZW4gdW5hIG8gbcOhcyBPYnJhcyBDb2xlY3RpdmFzLCB5IHJlcHJvZHVjaXIgbGEgT2JyYSBpbmNvcnBvcmFkYSBlbiBsYXMgT2JyYXMgQ29sZWN0aXZhcy48L2xpPgogICAgICA8bGk+RGlzdHJpYnVpciBjb3BpYXMgbyBmb25vZ3JhbWFzIGRlIGxhcyBPYnJhcywgZXhoaWJpcmxhcyBww7pibGljYW1lbnRlLCBlamVjdXRhcmxhcyBww7pibGljYW1lbnRlIHkvbyBwb25lcmxhcyBhIGRpc3Bvc2ljacOzbiBww7pibGljYSwgaW5jbHV5w6luZG9sYXMgY29tbyBpbmNvcnBvcmFkYXMgZW4gT2JyYXMgQ29sZWN0aXZhcywgc2Vnw7puIGNvcnJlc3BvbmRhLjwvbGk+CiAgICAgIDxsaT5EaXN0cmlidWlyIGNvcGlhcyBkZSBsYXMgT2JyYXMgRGVyaXZhZGFzIHF1ZSBzZSBnZW5lcmVuLCBleGhpYmlybGFzIHDDumJsaWNhbWVudGUsIGVqZWN1dGFybGFzIHDDumJsaWNhbWVudGUgeS9vIHBvbmVybGFzIGEgZGlzcG9zaWNpw7NuIHDDumJsaWNhLjwvbGk+CiAgICA8L29sPgogICAgPHA+TG9zIGRlcmVjaG9zIG1lbmNpb25hZG9zIGFudGVyaW9ybWVudGUgcHVlZGVuIHNlciBlamVyY2lkb3MgZW4gdG9kb3MgbG9zIG1lZGlvcyB5IGZvcm1hdG9zLCBhY3R1YWxtZW50ZSBjb25vY2lkb3MgbyBxdWUgc2UgaW52ZW50ZW4gZW4gZWwgZnV0dXJvLiBMb3MgZGVyZWNob3MgYW50ZXMgbWVuY2lvbmFkb3MgaW5jbHV5ZW4gZWwgZGVyZWNobyBhIHJlYWxpemFyIGRpY2hhcyBtb2RpZmljYWNpb25lcyBlbiBsYSBtZWRpZGEgcXVlIHNlYW4gdMOpY25pY2FtZW50ZSBuZWNlc2FyaWFzIHBhcmEgZWplcmNlciBsb3MgZGVyZWNob3MgZW4gb3RybyBtZWRpbyBvIGZvcm1hdG9zLCBwZXJvIGRlIG90cmEgbWFuZXJhIHVzdGVkIG5vIGVzdMOhIGF1dG9yaXphZG8gcGFyYSByZWFsaXphciBvYnJhcyBkZXJpdmFkYXMuIFRvZG9zIGxvcyBkZXJlY2hvcyBubyBvdG9yZ2Fkb3MgZXhwcmVzYW1lbnRlIHBvciBlbCBMaWNlbmNpYW50ZSBxdWVkYW4gcG9yIGVzdGUgbWVkaW8gcmVzZXJ2YWRvcywgaW5jbHV5ZW5kbyBwZXJvIHNpbiBsaW1pdGFyc2UgYSBhcXVlbGxvcyBxdWUgc2UgbWVuY2lvbmFuIGVuIGxhcyBzZWNjaW9uZXMgNChkKSB5IDQoZSkuPC9wPgogIDwvbGk+CiAgPGJyLz4KICA8bGk+CiAgICBSZXN0cmljY2lvbmVzLgogICAgPHA+TGEgbGljZW5jaWEgb3RvcmdhZGEgZW4gbGEgYW50ZXJpb3IgU2VjY2nDs24gMyBlc3TDoSBleHByZXNhbWVudGUgc3VqZXRhIHkgbGltaXRhZGEgcG9yIGxhcyBzaWd1aWVudGVzIHJlc3RyaWNjaW9uZXM6PC9wPgogICAgPG9sIHR5cGU9ImEiPgogICAgICA8bGk+VXN0ZWQgcHVlZGUgZGlzdHJpYnVpciwgZXhoaWJpciBww7pibGljYW1lbnRlLCBlamVjdXRhciBww7pibGljYW1lbnRlLCBvIHBvbmVyIGEgZGlzcG9zaWNpw7NuIHDDumJsaWNhIGxhIE9icmEgc8OzbG8gYmFqbyBsYXMgY29uZGljaW9uZXMgZGUgZXN0YSBMaWNlbmNpYSwgeSBVc3RlZCBkZWJlIGluY2x1aXIgdW5hIGNvcGlhIGRlIGVzdGEgbGljZW5jaWEgbyBkZWwgSWRlbnRpZmljYWRvciBVbml2ZXJzYWwgZGUgUmVjdXJzb3MgZGUgbGEgbWlzbWEgY29uIGNhZGEgY29waWEgZGUgbGEgT2JyYSBxdWUgZGlzdHJpYnV5YSwgZXhoaWJhIHDDumJsaWNhbWVudGUsIGVqZWN1dGUgcMO6YmxpY2FtZW50ZSBvIHBvbmdhIGEgZGlzcG9zaWNpw7NuIHDDumJsaWNhLiBObyBlcyBwb3NpYmxlIG9mcmVjZXIgbyBpbXBvbmVyIG5pbmd1bmEgY29uZGljacOzbiBzb2JyZSBsYSBPYnJhIHF1ZSBhbHRlcmUgbyBsaW1pdGUgbGFzIGNvbmRpY2lvbmVzIGRlIGVzdGEgTGljZW5jaWEgbyBlbCBlamVyY2ljaW8gZGUgbG9zIGRlcmVjaG9zIGRlIGxvcyBkZXN0aW5hdGFyaW9zIG90b3JnYWRvcyBlbiBlc3RlIGRvY3VtZW50by4gTm8gZXMgcG9zaWJsZSBzdWJsaWNlbmNpYXIgbGEgT2JyYS4gVXN0ZWQgZGViZSBtYW50ZW5lciBpbnRhY3RvcyB0b2RvcyBsb3MgYXZpc29zIHF1ZSBoYWdhbiByZWZlcmVuY2lhIGEgZXN0YSBMaWNlbmNpYSB5IGEgbGEgY2zDoXVzdWxhIGRlIGxpbWl0YWNpw7NuIGRlIGdhcmFudMOtYXMuIFVzdGVkIG5vIHB1ZWRlIGRpc3RyaWJ1aXIsIGV4aGliaXIgcMO6YmxpY2FtZW50ZSwgZWplY3V0YXIgcMO6YmxpY2FtZW50ZSwgbyBwb25lciBhIGRpc3Bvc2ljacOzbiBww7pibGljYSBsYSBPYnJhIGNvbiBhbGd1bmEgbWVkaWRhIHRlY25vbMOzZ2ljYSBxdWUgY29udHJvbGUgZWwgYWNjZXNvIG8gbGEgdXRpbGl6YWNpw7NuIGRlIGVsbGEgZGUgdW5hIGZvcm1hIHF1ZSBzZWEgaW5jb25zaXN0ZW50ZSBjb24gbGFzIGNvbmRpY2lvbmVzIGRlIGVzdGEgTGljZW5jaWEuIExvIGFudGVyaW9yIHNlIGFwbGljYSBhIGxhIE9icmEgaW5jb3Jwb3JhZGEgYSB1bmEgT2JyYSBDb2xlY3RpdmEsIHBlcm8gZXN0byBubyBleGlnZSBxdWUgbGEgT2JyYSBDb2xlY3RpdmEgYXBhcnRlIGRlIGxhIG9icmEgbWlzbWEgcXVlZGUgc3VqZXRhIGEgbGFzIGNvbmRpY2lvbmVzIGRlIGVzdGEgTGljZW5jaWEuIFNpIFVzdGVkIGNyZWEgdW5hIE9icmEgQ29sZWN0aXZhLCBwcmV2aW8gYXZpc28gZGUgY3VhbHF1aWVyIExpY2VuY2lhbnRlIGRlYmUsIGVuIGxhIG1lZGlkYSBkZSBsbyBwb3NpYmxlLCBlbGltaW5hciBkZSBsYSBPYnJhIENvbGVjdGl2YSBjdWFscXVpZXIgcmVmZXJlbmNpYSBhIGRpY2hvIExpY2VuY2lhbnRlIG8gYWwgQXV0b3IgT3JpZ2luYWwsIHNlZ8O6biBsbyBzb2xpY2l0YWRvIHBvciBlbCBMaWNlbmNpYW50ZSB5IGNvbmZvcm1lIGxvIGV4aWdlIGxhIGNsw6F1c3VsYSA0KGMpLjwvbGk+CiAgICAgIDxsaT5Vc3RlZCBubyBwdWVkZSBlamVyY2VyIG5pbmd1bm8gZGUgbG9zIGRlcmVjaG9zIHF1ZSBsZSBoYW4gc2lkbyBvdG9yZ2Fkb3MgZW4gbGEgU2VjY2nDs24gMyBwcmVjZWRlbnRlIGRlIG1vZG8gcXVlIGVzdMOpbiBwcmluY2lwYWxtZW50ZSBkZXN0aW5hZG9zIG8gZGlyZWN0YW1lbnRlIGRpcmlnaWRvcyBhIGNvbnNlZ3VpciB1biBwcm92ZWNobyBjb21lcmNpYWwgbyB1bmEgY29tcGVuc2FjacOzbiBtb25ldGFyaWEgcHJpdmFkYS4gRWwgaW50ZXJjYW1iaW8gZGUgbGEgT2JyYSBwb3Igb3RyYXMgb2JyYXMgcHJvdGVnaWRhcyBwb3IgZGVyZWNob3MgZGUgYXV0b3IsIHlhIHNlYSBhIHRyYXbDqXMgZGUgdW4gc2lzdGVtYSBwYXJhIGNvbXBhcnRpciBhcmNoaXZvcyBkaWdpdGFsZXMgKGRpZ2l0YWwgZmlsZS1zaGFyaW5nKSBvIGRlIGN1YWxxdWllciBvdHJhIG1hbmVyYSBubyBzZXLDoSBjb25zaWRlcmFkbyBjb21vIGVzdGFyIGRlc3RpbmFkbyBwcmluY2lwYWxtZW50ZSBvIGRpcmlnaWRvIGRpcmVjdGFtZW50ZSBhIGNvbnNlZ3VpciB1biBwcm92ZWNobyBjb21lcmNpYWwgbyB1bmEgY29tcGVuc2FjacOzbiBtb25ldGFyaWEgcHJpdmFkYSwgc2llbXByZSBxdWUgbm8gc2UgcmVhbGljZSB1biBwYWdvIG1lZGlhbnRlIHVuYSBjb21wZW5zYWNpw7NuIG1vbmV0YXJpYSBlbiByZWxhY2nDs24gY29uIGVsIGludGVyY2FtYmlvIGRlIG9icmFzIHByb3RlZ2lkYXMgcG9yIGVsIGRlcmVjaG8gZGUgYXV0b3IuPC9saT4KICAgICAgPGxpPlNpIHVzdGVkIGRpc3RyaWJ1eWUsIGV4aGliZSBww7pibGljYW1lbnRlLCBlamVjdXRhIHDDumJsaWNhbWVudGUgbyBlamVjdXRhIHDDumJsaWNhbWVudGUgZW4gZm9ybWEgZGlnaXRhbCBsYSBPYnJhIG8gY3VhbHF1aWVyIE9icmEgRGVyaXZhZGEgdSBPYnJhIENvbGVjdGl2YSwgVXN0ZWQgZGViZSBtYW50ZW5lciBpbnRhY3RhIHRvZGEgbGEgaW5mb3JtYWNpw7NuIGRlIGRlcmVjaG8gZGUgYXV0b3IgZGUgbGEgT2JyYSB5IHByb3BvcmNpb25hciwgZGUgZm9ybWEgcmF6b25hYmxlIHNlZ8O6biBlbCBtZWRpbyBvIG1hbmVyYSBxdWUgVXN0ZWQgZXN0w6kgdXRpbGl6YW5kbzogKGkpIGVsIG5vbWJyZSBkZWwgQXV0b3IgT3JpZ2luYWwgc2kgZXN0w6EgcHJvdmlzdG8gKG8gc2V1ZMOzbmltbywgc2kgZnVlcmUgYXBsaWNhYmxlKSwgeS9vIChpaSkgZWwgbm9tYnJlIGRlIGxhIHBhcnRlIG8gbGFzIHBhcnRlcyBxdWUgZWwgQXV0b3IgT3JpZ2luYWwgeS9vIGVsIExpY2VuY2lhbnRlIGh1YmllcmVuIGRlc2lnbmFkbyBwYXJhIGxhIGF0cmlidWNpw7NuICh2LmcuLCB1biBpbnN0aXR1dG8gcGF0cm9jaW5hZG9yLCBlZGl0b3JpYWwsIHB1YmxpY2FjacOzbikgZW4gbGEgaW5mb3JtYWNpw7NuIGRlIGxvcyBkZXJlY2hvcyBkZSBhdXRvciBkZWwgTGljZW5jaWFudGUsIHTDqXJtaW5vcyBkZSBzZXJ2aWNpb3MgbyBkZSBvdHJhcyBmb3JtYXMgcmF6b25hYmxlczsgZWwgdMOtdHVsbyBkZSBsYSBPYnJhIHNpIGVzdMOhIHByb3Zpc3RvOyBlbiBsYSBtZWRpZGEgZGUgbG8gcmF6b25hYmxlbWVudGUgZmFjdGlibGUgeSwgc2kgZXN0w6EgcHJvdmlzdG8sIGVsIElkZW50aWZpY2Fkb3IgVW5pZm9ybWUgZGUgUmVjdXJzb3MgKFVuaWZvcm0gUmVzb3VyY2UgSWRlbnRpZmllcikgcXVlIGVsIExpY2VuY2lhbnRlIGVzcGVjaWZpY2EgcGFyYSBzZXIgYXNvY2lhZG8gY29uIGxhIE9icmEsIHNhbHZvIHF1ZSB0YWwgVVJJIG5vIHNlIHJlZmllcmEgYSBsYSBub3RhIHNvYnJlIGxvcyBkZXJlY2hvcyBkZSBhdXRvciBvIGEgbGEgaW5mb3JtYWNpw7NuIHNvYnJlIGVsIGxpY2VuY2lhbWllbnRvIGRlIGxhIE9icmE7IHkgZW4gZWwgY2FzbyBkZSB1bmEgT2JyYSBEZXJpdmFkYSwgYXRyaWJ1aXIgZWwgY3LDqWRpdG8gaWRlbnRpZmljYW5kbyBlbCB1c28gZGUgbGEgT2JyYSBlbiBsYSBPYnJhIERlcml2YWRhICh2LmcuLCAiVHJhZHVjY2nDs24gRnJhbmNlc2EgZGUgbGEgT2JyYSBkZWwgQXV0b3IgT3JpZ2luYWwsIiBvICJHdWnDs24gQ2luZW1hdG9ncsOhZmljbyBiYXNhZG8gZW4gbGEgT2JyYSBvcmlnaW5hbCBkZWwgQXV0b3IgT3JpZ2luYWwiKS4gVGFsIGNyw6lkaXRvIHB1ZWRlIHNlciBpbXBsZW1lbnRhZG8gZGUgY3VhbHF1aWVyIGZvcm1hIHJhem9uYWJsZTsgZW4gZWwgY2Fzbywgc2luIGVtYmFyZ28sIGRlIE9icmFzIERlcml2YWRhcyB1IE9icmFzIENvbGVjdGl2YXMsIHRhbCBjcsOpZGl0byBhcGFyZWNlcsOhLCBjb21vIG3DrW5pbW8sIGRvbmRlIGFwYXJlY2UgZWwgY3LDqWRpdG8gZGUgY3VhbHF1aWVyIG90cm8gYXV0b3IgY29tcGFyYWJsZSB5IGRlIHVuYSBtYW5lcmEsIGFsIG1lbm9zLCB0YW4gZGVzdGFjYWRhIGNvbW8gZWwgY3LDqWRpdG8gZGUgb3RybyBhdXRvciBjb21wYXJhYmxlLjwvbGk+CiAgICAgIDxsaT4KICAgICAgICBQYXJhIGV2aXRhciB0b2RhIGNvbmZ1c2nDs24sIGVsIExpY2VuY2lhbnRlIGFjbGFyYSBxdWUsIGN1YW5kbyBsYSBvYnJhIGVzIHVuYSBjb21wb3NpY2nDs24gbXVzaWNhbDoKICAgICAgICA8b2wgdHlwZT0iaSI+CiAgICAgICAgICA8bGk+UmVnYWzDrWFzIHBvciBpbnRlcnByZXRhY2nDs24geSBlamVjdWNpw7NuIGJham8gbGljZW5jaWFzIGdlbmVyYWxlcy4gRWwgTGljZW5jaWFudGUgc2UgcmVzZXJ2YSBlbCBkZXJlY2hvIGV4Y2x1c2l2byBkZSBhdXRvcml6YXIgbGEgZWplY3VjacOzbiBww7pibGljYSBvIGxhIGVqZWN1Y2nDs24gcMO6YmxpY2EgZGlnaXRhbCBkZSBsYSBvYnJhIHkgZGUgcmVjb2xlY3Rhciwgc2VhIGluZGl2aWR1YWxtZW50ZSBvIGEgdHJhdsOpcyBkZSB1bmEgc29jaWVkYWQgZGUgZ2VzdGnDs24gY29sZWN0aXZhIGRlIGRlcmVjaG9zIGRlIGF1dG9yIHkgZGVyZWNob3MgY29uZXhvcyAocG9yIGVqZW1wbG8sIFNBWUNPKSwgbGFzIHJlZ2Fsw61hcyBwb3IgbGEgZWplY3VjacOzbiBww7pibGljYSBvIHBvciBsYSBlamVjdWNpw7NuIHDDumJsaWNhIGRpZ2l0YWwgZGUgbGEgb2JyYSAocG9yIGVqZW1wbG8gV2ViY2FzdCkgbGljZW5jaWFkYSBiYWpvIGxpY2VuY2lhcyBnZW5lcmFsZXMsIHNpIGxhIGludGVycHJldGFjacOzbiBvIGVqZWN1Y2nDs24gZGUgbGEgb2JyYSBlc3TDoSBwcmltb3JkaWFsbWVudGUgb3JpZW50YWRhIHBvciBvIGRpcmlnaWRhIGEgbGEgb2J0ZW5jacOzbiBkZSB1bmEgdmVudGFqYSBjb21lcmNpYWwgbyB1bmEgY29tcGVuc2FjacOzbiBtb25ldGFyaWEgcHJpdmFkYS48L2xpPgogICAgICAgICAgPGxpPlJlZ2Fsw61hcyBwb3IgRm9ub2dyYW1hcy4gRWwgTGljZW5jaWFudGUgc2UgcmVzZXJ2YSBlbCBkZXJlY2hvIGV4Y2x1c2l2byBkZSByZWNvbGVjdGFyLCBpbmRpdmlkdWFsbWVudGUgbyBhIHRyYXbDqXMgZGUgdW5hIHNvY2llZGFkIGRlIGdlc3Rpw7NuIGNvbGVjdGl2YSBkZSBkZXJlY2hvcyBkZSBhdXRvciB5IGRlcmVjaG9zIGNvbmV4b3MgKHBvciBlamVtcGxvLCBsb3MgY29uc2FncmFkb3MgcG9yIGxhIFNBWUNPKSwgdW5hIGFnZW5jaWEgZGUgZGVyZWNob3MgbXVzaWNhbGVzIG8gYWxnw7puIGFnZW50ZSBkZXNpZ25hZG8sIGxhcyByZWdhbMOtYXMgcG9yIGN1YWxxdWllciBmb25vZ3JhbWEgcXVlIFVzdGVkIGNyZWUgYSBwYXJ0aXIgZGUgbGEgb2JyYSAo4oCcdmVyc2nDs24gY292ZXLigJ0pIHkgZGlzdHJpYnV5YSwgZW4gbG9zIHTDqXJtaW5vcyBkZWwgcsOpZ2ltZW4gZGUgZGVyZWNob3MgZGUgYXV0b3IsIHNpIGxhIGNyZWFjacOzbiBvIGRpc3RyaWJ1Y2nDs24gZGUgZXNhIHZlcnNpw7NuIGNvdmVyIGVzdMOhIHByaW1vcmRpYWxtZW50ZSBkZXN0aW5hZGEgbyBkaXJpZ2lkYSBhIG9idGVuZXIgdW5hIHZlbnRhamEgY29tZXJjaWFsIG8gdW5hIGNvbXBlbnNhY2nDs24gbW9uZXRhcmlhIHByaXZhZGEuPC9saT4KICAgICAgICA8L29sPgogICAgICA8L2xpPgogICAgICA8bGk+R2VzdGnDs24gZGUgRGVyZWNob3MgZGUgQXV0b3Igc29icmUgSW50ZXJwcmV0YWNpb25lcyB5IEVqZWN1Y2lvbmVzIERpZ2l0YWxlcyAoV2ViQ2FzdGluZykuIFBhcmEgZXZpdGFyIHRvZGEgY29uZnVzacOzbiwgZWwgTGljZW5jaWFudGUgYWNsYXJhIHF1ZSwgY3VhbmRvIGxhIG9icmEgc2VhIHVuIGZvbm9ncmFtYSwgZWwgTGljZW5jaWFudGUgc2UgcmVzZXJ2YSBlbCBkZXJlY2hvIGV4Y2x1c2l2byBkZSBhdXRvcml6YXIgbGEgZWplY3VjacOzbiBww7pibGljYSBkaWdpdGFsIGRlIGxhIG9icmEgKHBvciBlamVtcGxvLCB3ZWJjYXN0KSB5IGRlIHJlY29sZWN0YXIsIGluZGl2aWR1YWxtZW50ZSBvIGEgdHJhdsOpcyBkZSB1bmEgc29jaWVkYWQgZGUgZ2VzdGnDs24gY29sZWN0aXZhIGRlIGRlcmVjaG9zIGRlIGF1dG9yIHkgZGVyZWNob3MgY29uZXhvcyAocG9yIGVqZW1wbG8sIEFDSU5QUk8pLCBsYXMgcmVnYWzDrWFzIHBvciBsYSBlamVjdWNpw7NuIHDDumJsaWNhIGRpZ2l0YWwgZGUgbGEgb2JyYSAocG9yIGVqZW1wbG8sIHdlYmNhc3QpLCBzdWpldGEgYSBsYXMgZGlzcG9zaWNpb25lcyBhcGxpY2FibGVzIGRlbCByw6lnaW1lbiBkZSBEZXJlY2hvIGRlIEF1dG9yLCBzaSBlc3RhIGVqZWN1Y2nDs24gcMO6YmxpY2EgZGlnaXRhbCBlc3TDoSBwcmltb3JkaWFsbWVudGUgZGlyaWdpZGEgYSBvYnRlbmVyIHVuYSB2ZW50YWphIGNvbWVyY2lhbCBvIHVuYSBjb21wZW5zYWNpw7NuIG1vbmV0YXJpYSBwcml2YWRhLjwvbGk+CiAgICA8L29sPgogIDwvbGk+CiAgPGJyLz4KICA8bGk+CiAgICBSZXByZXNlbnRhY2lvbmVzLCBHYXJhbnTDrWFzIHkgTGltaXRhY2lvbmVzIGRlIFJlc3BvbnNhYmlsaWRhZC4KICAgIDxwPkEgTUVOT1MgUVVFIExBUyBQQVJURVMgTE8gQUNPUkRBUkFOIERFIE9UUkEgRk9STUEgUE9SIEVTQ1JJVE8sIEVMIExJQ0VOQ0lBTlRFIE9GUkVDRSBMQSBPQlJBIChFTiBFTCBFU1RBRE8gRU4gRUwgUVVFIFNFIEVOQ1VFTlRSQSkg4oCcVEFMIENVQUzigJ0sIFNJTiBCUklOREFSIEdBUkFOVMONQVMgREUgQ0xBU0UgQUxHVU5BIFJFU1BFQ1RPIERFIExBIE9CUkEsIFlBIFNFQSBFWFBSRVNBLCBJTVBMw41DSVRBLCBMRUdBTCBPIENVQUxRVUlFUkEgT1RSQSwgSU5DTFVZRU5ETywgU0lOIExJTUlUQVJTRSBBIEVMTEFTLCBHQVJBTlTDjUFTIERFIFRJVFVMQVJJREFELCBDT01FUkNJQUJJTElEQUQsIEFEQVBUQUJJTElEQUQgTyBBREVDVUFDScOTTiBBIFBST1DDk1NJVE8gREVURVJNSU5BRE8sIEFVU0VOQ0lBIERFIElORlJBQ0NJw5NOLCBERSBBVVNFTkNJQSBERSBERUZFQ1RPUyBMQVRFTlRFUyBPIERFIE9UUk8gVElQTywgTyBMQSBQUkVTRU5DSUEgTyBBVVNFTkNJQSBERSBFUlJPUkVTLCBTRUFOIE8gTk8gREVTQ1VCUklCTEVTIChQVUVEQU4gTyBOTyBTRVIgRVNUT1MgREVTQ1VCSUVSVE9TKS4gQUxHVU5BUyBKVVJJU0RJQ0NJT05FUyBOTyBQRVJNSVRFTiBMQSBFWENMVVNJw5NOIERFIEdBUkFOVMONQVMgSU1QTMONQ0lUQVMsIEVOIENVWU8gQ0FTTyBFU1RBIEVYQ0xVU0nDk04gUFVFREUgTk8gQVBMSUNBUlNFIEEgVVNURUQuPC9wPgogIDwvbGk+CiAgPGJyLz4KICA8bGk+CiAgICBMaW1pdGFjacOzbiBkZSByZXNwb25zYWJpbGlkYWQuCiAgICA8cD5BIE1FTk9TIFFVRSBMTyBFWElKQSBFWFBSRVNBTUVOVEUgTEEgTEVZIEFQTElDQUJMRSwgRUwgTElDRU5DSUFOVEUgTk8gU0VSw4EgUkVTUE9OU0FCTEUgQU5URSBVU1RFRCBQT1IgREHDkU8gQUxHVU5PLCBTRUEgUE9SIFJFU1BPTlNBQklMSURBRCBFWFRSQUNPTlRSQUNUVUFMLCBQUkVDT05UUkFDVFVBTCBPIENPTlRSQUNUVUFMLCBPQkpFVElWQSBPIFNVQkpFVElWQSwgU0UgVFJBVEUgREUgREHDkU9TIE1PUkFMRVMgTyBQQVRSSU1PTklBTEVTLCBESVJFQ1RPUyBPIElORElSRUNUT1MsIFBSRVZJU1RPUyBPIElNUFJFVklTVE9TIFBST0RVQ0lET1MgUE9SIEVMIFVTTyBERSBFU1RBIExJQ0VOQ0lBIE8gREUgTEEgT0JSQSwgQVVOIENVQU5ETyBFTCBMSUNFTkNJQU5URSBIQVlBIFNJRE8gQURWRVJUSURPIERFIExBIFBPU0lCSUxJREFEIERFIERJQ0hPUyBEQcORT1MuIEFMR1VOQVMgTEVZRVMgTk8gUEVSTUlURU4gTEEgRVhDTFVTScOTTiBERSBDSUVSVEEgUkVTUE9OU0FCSUxJREFELCBFTiBDVVlPIENBU08gRVNUQSBFWENMVVNJw5NOIFBVRURFIE5PIEFQTElDQVJTRSBBIFVTVEVELjwvcD4KICA8L2xpPgogIDxici8+CiAgPGxpPgogICAgVMOpcm1pbm8uCiAgICA8b2wgdHlwZT0iYSI+CiAgICAgIDxsaT5Fc3RhIExpY2VuY2lhIHkgbG9zIGRlcmVjaG9zIG90b3JnYWRvcyBlbiB2aXJ0dWQgZGUgZWxsYSB0ZXJtaW5hcsOhbiBhdXRvbcOhdGljYW1lbnRlIHNpIFVzdGVkIGluZnJpbmdlIGFsZ3VuYSBjb25kaWNpw7NuIGVzdGFibGVjaWRhIGVuIGVsbGEuIFNpbiBlbWJhcmdvLCBsb3MgaW5kaXZpZHVvcyBvIGVudGlkYWRlcyBxdWUgaGFuIHJlY2liaWRvIE9icmFzIERlcml2YWRhcyBvIENvbGVjdGl2YXMgZGUgVXN0ZWQgZGUgY29uZm9ybWlkYWQgY29uIGVzdGEgTGljZW5jaWEsIG5vIHZlcsOhbiB0ZXJtaW5hZGFzIHN1cyBsaWNlbmNpYXMsIHNpZW1wcmUgcXVlIGVzdG9zIGluZGl2aWR1b3MgbyBlbnRpZGFkZXMgc2lnYW4gY3VtcGxpZW5kbyDDrW50ZWdyYW1lbnRlIGxhcyBjb25kaWNpb25lcyBkZSBlc3RhcyBsaWNlbmNpYXMuIExhcyBTZWNjaW9uZXMgMSwgMiwgNSwgNiwgNywgeSA4IHN1YnNpc3RpcsOhbiBhIGN1YWxxdWllciB0ZXJtaW5hY2nDs24gZGUgZXN0YSBMaWNlbmNpYS48L2xpPgogICAgICA8bGk+U3VqZXRhIGEgbGFzIGNvbmRpY2lvbmVzIHkgdMOpcm1pbm9zIGFudGVyaW9yZXMsIGxhIGxpY2VuY2lhIG90b3JnYWRhIGFxdcOtIGVzIHBlcnBldHVhIChkdXJhbnRlIGVsIHBlcsOtb2RvIGRlIHZpZ2VuY2lhIGRlIGxvcyBkZXJlY2hvcyBkZSBhdXRvciBkZSBsYSBvYnJhKS4gTm8gb2JzdGFudGUgbG8gYW50ZXJpb3IsIGVsIExpY2VuY2lhbnRlIHNlIHJlc2VydmEgZWwgZGVyZWNobyBhIHB1YmxpY2FyIHkvbyBlc3RyZW5hciBsYSBPYnJhIGJham8gY29uZGljaW9uZXMgZGUgbGljZW5jaWEgZGlmZXJlbnRlcyBvIGEgZGVqYXIgZGUgZGlzdHJpYnVpcmxhIGVuIGxvcyB0w6lybWlub3MgZGUgZXN0YSBMaWNlbmNpYSBlbiBjdWFscXVpZXIgbW9tZW50bzsgZW4gZWwgZW50ZW5kaWRvLCBzaW4gZW1iYXJnbywgcXVlIGVzYSBlbGVjY2nDs24gbm8gc2Vydmlyw6EgcGFyYSByZXZvY2FyIGVzdGEgbGljZW5jaWEgbyBxdWUgZGViYSBzZXIgb3RvcmdhZGEgLCBiYWpvIGxvcyB0w6lybWlub3MgZGUgZXN0YSBsaWNlbmNpYSksIHkgZXN0YSBsaWNlbmNpYSBjb250aW51YXLDoSBlbiBwbGVubyB2aWdvciB5IGVmZWN0byBhIG1lbm9zIHF1ZSBzZWEgdGVybWluYWRhIGNvbW8gc2UgZXhwcmVzYSBhdHLDoXMuIExhIExpY2VuY2lhIHJldm9jYWRhIGNvbnRpbnVhcsOhIHNpZW5kbyBwbGVuYW1lbnRlIHZpZ2VudGUgeSBlZmVjdGl2YSBzaSBubyBzZSBsZSBkYSB0w6lybWlubyBlbiBsYXMgY29uZGljaW9uZXMgaW5kaWNhZGFzIGFudGVyaW9ybWVudGUuPC9saT4KICAgIDwvb2w+CiAgPC9saT4KICA8YnIvPgogIDxsaT4KICAgIFZhcmlvcy4KICAgIDxvbCB0eXBlPSJhIj4KICAgICAgPGxpPkNhZGEgdmV6IHF1ZSBVc3RlZCBkaXN0cmlidXlhIG8gcG9uZ2EgYSBkaXNwb3NpY2nDs24gcMO6YmxpY2EgbGEgT2JyYSBvIHVuYSBPYnJhIENvbGVjdGl2YSwgZWwgTGljZW5jaWFudGUgb2ZyZWNlcsOhIGFsIGRlc3RpbmF0YXJpbyB1bmEgbGljZW5jaWEgZW4gbG9zIG1pc21vcyB0w6lybWlub3MgeSBjb25kaWNpb25lcyBxdWUgbGEgbGljZW5jaWEgb3RvcmdhZGEgYSBVc3RlZCBiYWpvIGVzdGEgTGljZW5jaWEuPC9saT4KICAgICAgPGxpPlNpIGFsZ3VuYSBkaXNwb3NpY2nDs24gZGUgZXN0YSBMaWNlbmNpYSByZXN1bHRhIGludmFsaWRhZGEgbyBubyBleGlnaWJsZSwgc2Vnw7puIGxhIGxlZ2lzbGFjacOzbiB2aWdlbnRlLCBlc3RvIG5vIGFmZWN0YXLDoSBuaSBsYSB2YWxpZGV6IG5pIGxhIGFwbGljYWJpbGlkYWQgZGVsIHJlc3RvIGRlIGNvbmRpY2lvbmVzIGRlIGVzdGEgTGljZW5jaWEgeSwgc2luIGFjY2nDs24gYWRpY2lvbmFsIHBvciBwYXJ0ZSBkZSBsb3Mgc3VqZXRvcyBkZSBlc3RlIGFjdWVyZG8sIGFxdcOpbGxhIHNlIGVudGVuZGVyw6EgcmVmb3JtYWRhIGxvIG3DrW5pbW8gbmVjZXNhcmlvIHBhcmEgaGFjZXIgcXVlIGRpY2hhIGRpc3Bvc2ljacOzbiBzZWEgdsOhbGlkYSB5IGV4aWdpYmxlLjwvbGk+CiAgICAgIDxsaT5OaW5nw7puIHTDqXJtaW5vIG8gZGlzcG9zaWNpw7NuIGRlIGVzdGEgTGljZW5jaWEgc2UgZXN0aW1hcsOhIHJlbnVuY2lhZGEgeSBuaW5ndW5hIHZpb2xhY2nDs24gZGUgZWxsYSBzZXLDoSBjb25zZW50aWRhIGEgbWVub3MgcXVlIGVzYSByZW51bmNpYSBvIGNvbnNlbnRpbWllbnRvIHNlYSBvdG9yZ2FkbyBwb3IgZXNjcml0byB5IGZpcm1hZG8gcG9yIGxhIHBhcnRlIHF1ZSByZW51bmNpZSBvIGNvbnNpZW50YS48L2xpPgogICAgICA8bGk+RXN0YSBMaWNlbmNpYSByZWZsZWphIGVsIGFjdWVyZG8gcGxlbm8gZW50cmUgbGFzIHBhcnRlcyByZXNwZWN0byBhIGxhIE9icmEgYXF1w60gbGljZW5jaWFkYS4gTm8gaGF5IGFycmVnbG9zLCBhY3VlcmRvcyBvIGRlY2xhcmFjaW9uZXMgcmVzcGVjdG8gYSBsYSBPYnJhIHF1ZSBubyBlc3TDqW4gZXNwZWNpZmljYWRvcyBlbiBlc3RlIGRvY3VtZW50by4gRWwgTGljZW5jaWFudGUgbm8gc2UgdmVyw6EgbGltaXRhZG8gcG9yIG5pbmd1bmEgZGlzcG9zaWNpw7NuIGFkaWNpb25hbCBxdWUgcHVlZGEgc3VyZ2lyIGVuIGFsZ3VuYSBjb211bmljYWNpw7NuIGVtYW5hZGEgZGUgVXN0ZWQuIEVzdGEgTGljZW5jaWEgbm8gcHVlZGUgc2VyIG1vZGlmaWNhZGEgc2luIGVsIGNvbnNlbnRpbWllbnRvIG11dHVvIHBvciBlc2NyaXRvIGRlbCBMaWNlbmNpYW50ZSB5IFVzdGVkLjwvbGk+CiAgICA8L29sPgogIDwvbGk+CiAgPGJyLz4KPC9vbD4K |