Machine learning models to select potential inhibitors of acetylcholinesterase activity from SistematX: a natural products database
Alzheimer's disease is the most common form of dementia, representing 60-70% of dementia cases. The enzyme acetylcholinesterase (AChE) cleaves the ester bonds in acetylcholine and plays an important role in the termination of acetylcholine activity at cholinergic synapses in various regions of...
- Autores:
-
Herrera-Acevedo, C.
Perdomo Madrigal, Camilo
Herrera-Acevedo, Kenyi
Coy-Barrera, Ericsson David
- Tipo de recurso:
- Article of investigation
- Fecha de publicación:
- 2021
- Institución:
- Universidad de Ciencias Aplicadas y Ambientales U.D.C.A
- Repositorio:
- Repositorio Institucional UDCA
- Idioma:
- spa
- OAI Identifier:
- oai:repository.udca.edu.co:11158/4277
- Acceso en línea:
- https://repository.udca.edu.co/handle/11158/4277
https://doi.org/10.1007/s11030-021-10245-z.
- Palabra clave:
- Productos Biológicos
Acetilcolinesterasa
Aprendizaje Automático
Cribado virtual
- Rights
- openAccess
- License
- https://creativecommons.org/licenses/by-nc-sa/4.0/legalcode.es
id |
RepoUDCA2_3417c023dbb0a3bbd4997c6cc5b7f95a |
---|---|
oai_identifier_str |
oai:repository.udca.edu.co:11158/4277 |
network_acronym_str |
RepoUDCA2 |
network_name_str |
Repositorio Institucional UDCA |
repository_id_str |
|
dc.title.spa.fl_str_mv |
Machine learning models to select potential inhibitors of acetylcholinesterase activity from SistematX: a natural products database |
title |
Machine learning models to select potential inhibitors of acetylcholinesterase activity from SistematX: a natural products database |
spellingShingle |
Machine learning models to select potential inhibitors of acetylcholinesterase activity from SistematX: a natural products database Productos Biológicos Acetilcolinesterasa Aprendizaje Automático Cribado virtual |
title_short |
Machine learning models to select potential inhibitors of acetylcholinesterase activity from SistematX: a natural products database |
title_full |
Machine learning models to select potential inhibitors of acetylcholinesterase activity from SistematX: a natural products database |
title_fullStr |
Machine learning models to select potential inhibitors of acetylcholinesterase activity from SistematX: a natural products database |
title_full_unstemmed |
Machine learning models to select potential inhibitors of acetylcholinesterase activity from SistematX: a natural products database |
title_sort |
Machine learning models to select potential inhibitors of acetylcholinesterase activity from SistematX: a natural products database |
dc.creator.fl_str_mv |
Herrera-Acevedo, C. Perdomo Madrigal, Camilo Herrera-Acevedo, Kenyi Coy-Barrera, Ericsson David |
dc.contributor.author.none.fl_str_mv |
Herrera-Acevedo, C. Perdomo Madrigal, Camilo Herrera-Acevedo, Kenyi Coy-Barrera, Ericsson David |
dc.subject.decs.none.fl_str_mv |
Productos Biológicos Acetilcolinesterasa Aprendizaje Automático |
topic |
Productos Biológicos Acetilcolinesterasa Aprendizaje Automático Cribado virtual |
dc.subject.proposal.spa.fl_str_mv |
Cribado virtual |
description |
Alzheimer's disease is the most common form of dementia, representing 60-70% of dementia cases. The enzyme acetylcholinesterase (AChE) cleaves the ester bonds in acetylcholine and plays an important role in the termination of acetylcholine activity at cholinergic synapses in various regions of the nervous system. The inhibition of acetylcholinesterase is frequently used to treat Alzheimer's disease. In this study, a merged BindingDB and ChEMBL dataset containing molecules with reported half-maximal inhibitory concentration (IC50) values for AChE (7032 molecules) was used to build machine learning classification models for selecting potential AChE inhibitors from the SistematX dataset (8593 secondary metabolites). A total of seven fivefold models with accuracy above 80% after cross-validation were obtained using three types of molecular descriptors (VolSurf, DRAGON 5.0, and bit-based fingerprints). A total of 521 secondary metabolites (6.1%) were classified as active in this stage. Subsequently, virtual screening was performed, and 25 secondary metabolites were identified as potential inhibitors of AChE. Separately, the crystal structure of AChE in complex with (-)-galantamine was used to perform molecular docking calculations with the entire SistematX dataset. Consensus analysis of both methodologies was performed. Only eight structures achieved combined probability values above 0.5. Finally, two sesquiterpene lactones, structures 15 and 24, were predicted to be able to cross the blood-brain barrier, which was confirmed in the VolSurf+ quantitative model, revealing these two structures as the most promising secondary metabolites for AChE inhibition among the 8593 molecules tested. A consensus analysis of classification models and molecular docking calculations identified four potential inhibitors of acetylcholinesterase from the SistematX dataset (8593 structures) |
publishDate |
2021 |
dc.date.accessioned.none.fl_str_mv |
2021-10-01T20:26:48Z |
dc.date.available.none.fl_str_mv |
2021-10-01T20:26:48Z |
dc.date.issued.none.fl_str_mv |
2021 |
dc.type.spa.fl_str_mv |
Artículo de revista |
dc.type.coar.spa.fl_str_mv |
http://purl.org/coar/resource_type/c_2df8fbb1 |
dc.type.driver.spa.fl_str_mv |
info:eu-repo/semantics/article |
dc.type.version.spa.fl_str_mv |
info:eu-repo/semantics/publishedVersion |
dc.type.content.spa.fl_str_mv |
Text |
dc.type.redcol.spa.fl_str_mv |
http://purl.org/redcol/resource_type/ART |
dc.type.coarversion.spa.fl_str_mv |
http://purl.org/coar/version/c_970fb48d4fbd8a85 |
format |
http://purl.org/coar/resource_type/c_2df8fbb1 |
status_str |
publishedVersion |
dc.identifier.citation.spa.fl_str_mv |
Herrera-Acevedo, C., Perdomo-Madrigal, C., Herrera-Acevedo, K., Coy-Barrera, E., Scotti, L., & Scotti, M. T. (2021). Machine learning models to select potential inhibitors of acetylcholinesterase activity from SistematX: A natural products database. Molecular Diversity, 25(3), 1553-1568. doi:10.1007/s11030-021-10245-z |
dc.identifier.uri.none.fl_str_mv |
https://repository.udca.edu.co/handle/11158/4277 |
dc.identifier.doi.none.fl_str_mv |
https://doi.org/10.1007/s11030-021-10245-z. |
identifier_str_mv |
Herrera-Acevedo, C., Perdomo-Madrigal, C., Herrera-Acevedo, K., Coy-Barrera, E., Scotti, L., & Scotti, M. T. (2021). Machine learning models to select potential inhibitors of acetylcholinesterase activity from SistematX: A natural products database. Molecular Diversity, 25(3), 1553-1568. doi:10.1007/s11030-021-10245-z |
url |
https://repository.udca.edu.co/handle/11158/4277 https://doi.org/10.1007/s11030-021-10245-z. |
dc.language.iso.spa.fl_str_mv |
spa |
language |
spa |
dc.relation.indexed.spa.fl_str_mv |
N/A |
dc.relation.citationedition.spa.fl_str_mv |
(Ago., 2021) |
dc.relation.citationendpage.spa.fl_str_mv |
1568 |
dc.relation.citationissue.spa.fl_str_mv |
3 |
dc.relation.citationstartpage.spa.fl_str_mv |
1553 |
dc.relation.citationvolume.spa.fl_str_mv |
25 |
dc.relation.ispartofjournal.spa.fl_str_mv |
Molecular Diversity |
dc.rights.spa.fl_str_mv |
https://creativecommons.org/licenses/by-nc-sa/4.0/legalcode.es |
dc.rights.coar.fl_str_mv |
http://purl.org/coar/access_right/c_abf2 |
dc.rights.accessrights.spa.fl_str_mv |
info:eu-repo/semantics/openAccess |
dc.rights.license.spa.fl_str_mv |
Atribución-NoComercial-CompartirIgual 4.0 Internacional (CC BY-NC-SA 4.0) |
rights_invalid_str_mv |
https://creativecommons.org/licenses/by-nc-sa/4.0/legalcode.es Atribución-NoComercial-CompartirIgual 4.0 Internacional (CC BY-NC-SA 4.0) http://purl.org/coar/access_right/c_abf2 |
eu_rights_str_mv |
openAccess |
dc.format.mimetype.spa.fl_str_mv |
application/pdf |
dc.source.spa.fl_str_mv |
https://pubmed.ncbi.nlm.nih.gov/34132933/ |
institution |
Universidad de Ciencias Aplicadas y Ambientales U.D.C.A |
bitstream.url.fl_str_mv |
https://repository.udca.edu.co/bitstreams/efa1863a-2676-42d1-b823-f5977f68089e/download https://repository.udca.edu.co/bitstreams/08ab0d70-14e2-4fcf-9685-27c9f6113dd7/download https://repository.udca.edu.co/bitstreams/fbb255c3-8cf9-4b4f-89d9-40a0b232b882/download https://repository.udca.edu.co/bitstreams/e425d6cc-1ef5-43fb-92eb-cb2985fd86e9/download |
bitstream.checksum.fl_str_mv |
9e211a949f4c4c3c9d8e2f58a4d66569 f661acf14bedbf9f5d13897a0387e751 e14fcd6b428b6939a4af1dadecf22bc6 32ccd7dbaba96d13d001239fbb684188 |
bitstream.checksumAlgorithm.fl_str_mv |
MD5 MD5 MD5 MD5 |
repository.name.fl_str_mv |
Repositorio - Universidad de Ciencias Aplicadas y Ambientales UDCA. |
repository.mail.fl_str_mv |
bdigital@metabiblioteca.com |
_version_ |
1818152487429865472 |
spelling |
Herrera-Acevedo, C.Perdomo Madrigal, CamiloHerrera-Acevedo, KenyiCoy-Barrera, Ericsson David2021-10-01T20:26:48Z2021-10-01T20:26:48Z2021Herrera-Acevedo, C., Perdomo-Madrigal, C., Herrera-Acevedo, K., Coy-Barrera, E., Scotti, L., & Scotti, M. T. (2021). Machine learning models to select potential inhibitors of acetylcholinesterase activity from SistematX: A natural products database. Molecular Diversity, 25(3), 1553-1568. doi:10.1007/s11030-021-10245-zhttps://repository.udca.edu.co/handle/11158/4277https://doi.org/10.1007/s11030-021-10245-z.Alzheimer's disease is the most common form of dementia, representing 60-70% of dementia cases. The enzyme acetylcholinesterase (AChE) cleaves the ester bonds in acetylcholine and plays an important role in the termination of acetylcholine activity at cholinergic synapses in various regions of the nervous system. The inhibition of acetylcholinesterase is frequently used to treat Alzheimer's disease. In this study, a merged BindingDB and ChEMBL dataset containing molecules with reported half-maximal inhibitory concentration (IC50) values for AChE (7032 molecules) was used to build machine learning classification models for selecting potential AChE inhibitors from the SistematX dataset (8593 secondary metabolites). A total of seven fivefold models with accuracy above 80% after cross-validation were obtained using three types of molecular descriptors (VolSurf, DRAGON 5.0, and bit-based fingerprints). A total of 521 secondary metabolites (6.1%) were classified as active in this stage. Subsequently, virtual screening was performed, and 25 secondary metabolites were identified as potential inhibitors of AChE. Separately, the crystal structure of AChE in complex with (-)-galantamine was used to perform molecular docking calculations with the entire SistematX dataset. Consensus analysis of both methodologies was performed. Only eight structures achieved combined probability values above 0.5. Finally, two sesquiterpene lactones, structures 15 and 24, were predicted to be able to cross the blood-brain barrier, which was confirmed in the VolSurf+ quantitative model, revealing these two structures as the most promising secondary metabolites for AChE inhibition among the 8593 molecules tested. A consensus analysis of classification models and molecular docking calculations identified four potential inhibitors of acetylcholinesterase from the SistematX dataset (8593 structures)Incluye referencias bibliográficasapplication/pdfspahttps://creativecommons.org/licenses/by-nc-sa/4.0/legalcode.esinfo:eu-repo/semantics/openAccessAtribución-NoComercial-CompartirIgual 4.0 Internacional (CC BY-NC-SA 4.0)http://purl.org/coar/access_right/c_abf2https://pubmed.ncbi.nlm.nih.gov/34132933/Machine learning models to select potential inhibitors of acetylcholinesterase activity from SistematX: a natural products databaseArtículo de revistahttp://purl.org/coar/resource_type/c_2df8fbb1info:eu-repo/semantics/articleinfo:eu-repo/semantics/publishedVersionTexthttp://purl.org/redcol/resource_type/ARThttp://purl.org/coar/version/c_970fb48d4fbd8a85Productos BiológicosAcetilcolinesterasaAprendizaje AutomáticoCribado virtualN/A(Ago., 2021)15683155325Molecular DiversityPublicationORIGINALMachineLearningModelsToSelectP.pdfMachineLearningModelsToSelectP.pdfapplication/pdf2369183https://repository.udca.edu.co/bitstreams/efa1863a-2676-42d1-b823-f5977f68089e/download9e211a949f4c4c3c9d8e2f58a4d66569MD51LICENSElicense.txtlicense.txttext/plain; charset=utf-814775https://repository.udca.edu.co/bitstreams/08ab0d70-14e2-4fcf-9685-27c9f6113dd7/downloadf661acf14bedbf9f5d13897a0387e751MD52TEXTMachineLearningModelsToSelectP.pdf.txtMachineLearningModelsToSelectP.pdf.txtExtracted texttext/plain61353https://repository.udca.edu.co/bitstreams/fbb255c3-8cf9-4b4f-89d9-40a0b232b882/downloade14fcd6b428b6939a4af1dadecf22bc6MD53THUMBNAILMachineLearningModelsToSelectP.pdf.jpgMachineLearningModelsToSelectP.pdf.jpgGenerated Thumbnailimage/jpeg11764https://repository.udca.edu.co/bitstreams/e425d6cc-1ef5-43fb-92eb-cb2985fd86e9/download32ccd7dbaba96d13d001239fbb684188MD5411158/4277oai:repository.udca.edu.co:11158/42772024-05-09 14:34:03.87open.accesshttps://repository.udca.edu.coRepositorio - Universidad de Ciencias Aplicadas y Ambientales UDCA.bdigital@metabiblioteca.comTEEgT0JSQSAoVEFMIFkgQ09NTyBTRSBERUZJTkUgTcOBUyBBREVMQU5URSkgU0UgT1RPUkdBIEJBSk8gTE9TIFRFUk1JTk9TIERFIEVTVEEgTElDRU5DSUEgUMOaQkxJQ0EgREUgQ1JFQVRJVkUgQ09NTU9OUyAo4oCcTFBDQ+KAnSBPIOKAnExJQ0VOQ0lB4oCdKS4gTEEgT0JSQSBFU1TDgSBQUk9URUdJREEgUE9SIERFUkVDSE9TIERFIEFVVE9SIFkvVSBPVFJBUyBMRVlFUyBBUExJQ0FCTEVTLiBRVUVEQSBQUk9ISUJJRE8gQ1VBTFFVSUVSIFVTTyBRVUUgU0UgSEFHQSBERSBMQSBPQlJBIFFVRSBOTyBDVUVOVEUgQ09OIExBIEFVVE9SSVpBQ0nDk04gUEVSVElORU5URSBERSBDT05GT1JNSURBRCBDT04gTE9TIFTDiVJNSU5PUyBERSBFU1RBIExJQ0VOQ0lBIFkgREUgTEEgTEVZIERFIERFUkVDSE8gREUgQVVUT1IuCk1FRElBTlRFIEVMIEVKRVJDSUNJTyBERSBDVUFMUVVJRVJBIERFIExPUyBERVJFQ0hPUyBRVUUgU0UgT1RPUkdBTiBFTiBFU1RBIExJQ0VOQ0lBLCBVU1RFRCBBQ0VQVEEgWSBBQ1VFUkRBIFFVRURBUiBPQkxJR0FETyBFTiBMT1MgVEVSTUlOT1MgUVVFIFNFIFNFw5FBTEFOIEVOIEVMTEEuIEVMIExJQ0VOQ0lBTlRFIENPTkNFREUgQSBVU1RFRCBMT1MgREVSRUNIT1MgQ09OVEVOSURPUyBFTiBFU1RBIExJQ0VOQ0lBIENPTkRJQ0lPTkFET1MgQSBMQSBBQ0VQVEFDScOTTiBERSBTVVMgVEVSTUlOT1MgWSBDT05ESUNJT05FUy4KMS4gRGVmaW5pY2lvbmVzCmEuCU9icmEgQ29sZWN0aXZhIGVzIHVuYSBvYnJhLCB0YWwgY29tbyB1bmEgcHVibGljYWNpw7NuIHBlcmnDs2RpY2EsIHVuYSBhbnRvbG9nw61hLCBvIHVuYSBlbmNpY2xvcGVkaWEsIGVuIGxhIHF1ZSBsYSBvYnJhIGVuIHN1IHRvdGFsaWRhZCwgc2luIG1vZGlmaWNhY2nDs24gYWxndW5hLCBqdW50byBjb24gdW4gZ3J1cG8gZGUgb3RyYXMgY29udHJpYnVjaW9uZXMgcXVlIGNvbnN0aXR1eWVuIG9icmFzIHNlcGFyYWRhcyBlIGluZGVwZW5kaWVudGVzIGVuIHPDrSBtaXNtYXMsIHNlIGludGVncmFuIGVuIHVuIHRvZG8gY29sZWN0aXZvLiBVbmEgT2JyYSBxdWUgY29uc3RpdHV5ZSB1bmEgb2JyYSBjb2xlY3RpdmEgbm8gc2UgY29uc2lkZXJhcsOhIHVuYSBPYnJhIERlcml2YWRhIChjb21vIHNlIGRlZmluZSBhYmFqbykgcGFyYSBsb3MgcHJvcMOzc2l0b3MgZGUgZXN0YSBsaWNlbmNpYS4gYXF1ZWxsYSBwcm9kdWNpZGEgcG9yIHVuIGdydXBvIGRlIGF1dG9yZXMsIGVuIHF1ZSBsYSBPYnJhIHNlIGVuY3VlbnRyYSBzaW4gbW9kaWZpY2FjaW9uZXMsIGp1bnRvIGNvbiB1bmEgY2llcnRhIGNhbnRpZGFkIGRlIG90cmFzIGNvbnRyaWJ1Y2lvbmVzLCBxdWUgY29uc3RpdHV5ZW4gZW4gc8OtIG1pc21vcyB0cmFiYWpvcyBzZXBhcmFkb3MgZSBpbmRlcGVuZGllbnRlcywgcXVlIHNvbiBpbnRlZ3JhZG9zIGFsIHRvZG8gY29sZWN0aXZvLCB0YWxlcyBjb21vIHB1YmxpY2FjaW9uZXMgcGVyacOzZGljYXMsIGFudG9sb2fDrWFzIG8gZW5jaWNsb3BlZGlhcy4KYi4JT2JyYSBEZXJpdmFkYSBzaWduaWZpY2EgdW5hIG9icmEgYmFzYWRhIGVuIGxhIG9icmEgb2JqZXRvIGRlIGVzdGEgbGljZW5jaWEgbyBlbiDDqXN0YSB5IG90cmFzIG9icmFzIHByZWV4aXN0ZW50ZXMsIHRhbGVzIGNvbW8gdHJhZHVjY2lvbmVzLCBhcnJlZ2xvcyBtdXNpY2FsZXMsIGRyYW1hdGl6YWNpb25lcywg4oCcZmljY2lvbmFsaXphY2lvbmVz4oCdLCB2ZXJzaW9uZXMgcGFyYSBjaW5lLCDigJxncmFiYWNpb25lcyBkZSBzb25pZG/igJ0sIHJlcHJvZHVjY2lvbmVzIGRlIGFydGUsIHJlc8O6bWVuZXMsIGNvbmRlbnNhY2lvbmVzLCBvIGN1YWxxdWllciBvdHJhIGVuIGxhIHF1ZSBsYSBvYnJhIHB1ZWRhIHNlciB0cmFuc2Zvcm1hZGEsIGNhbWJpYWRhIG8gYWRhcHRhZGEsIGV4Y2VwdG8gYXF1ZWxsYXMgcXVlIGNvbnN0aXR1eWFuIHVuYSBvYnJhIGNvbGVjdGl2YSwgbGFzIHF1ZSBubyBzZXLDoW4gY29uc2lkZXJhZGFzIHVuYSBvYnJhIGRlcml2YWRhIHBhcmEgZWZlY3RvcyBkZSBlc3RhIGxpY2VuY2lhLiAoUGFyYSBldml0YXIgZHVkYXMsIGVuIGVsIGNhc28gZGUgcXVlIGxhIE9icmEgc2VhIHVuYSBjb21wb3NpY2nDs24gbXVzaWNhbCBvIHVuYSBncmFiYWNpw7NuIHNvbm9yYSwgcGFyYSBsb3MgZWZlY3RvcyBkZSBlc3RhIExpY2VuY2lhIGxhIHNpbmNyb25pemFjacOzbiB0ZW1wb3JhbCBkZSBsYSBPYnJhIGNvbiB1bmEgaW1hZ2VuIGVuIG1vdmltaWVudG8gc2UgY29uc2lkZXJhcsOhIHVuYSBPYnJhIERlcml2YWRhIHBhcmEgbG9zIGZpbmVzIGRlIGVzdGEgbGljZW5jaWEpLgpjLglMaWNlbmNpYW50ZSwgZXMgZWwgaW5kaXZpZHVvIG8gbGEgZW50aWRhZCB0aXR1bGFyIGRlIGxvcyBkZXJlY2hvcyBkZSBhdXRvciBxdWUgb2ZyZWNlIGxhIE9icmEgZW4gY29uZm9ybWlkYWQgY29uIGxhcyBjb25kaWNpb25lcyBkZSBlc3RhIExpY2VuY2lhLgpkLglBdXRvciBvcmlnaW5hbCwgZXMgZWwgaW5kaXZpZHVvIHF1ZSBjcmXDsyBsYSBPYnJhLgplLglPYnJhLCBlcyBhcXVlbGxhIG9icmEgc3VzY2VwdGlibGUgZGUgcHJvdGVjY2nDs24gcG9yIGVsIHLDqWdpbWVuIGRlIERlcmVjaG8gZGUgQXV0b3IgeSBxdWUgZXMgb2ZyZWNpZGEgZW4gbG9zIHTDqXJtaW5vcyBkZSBlc3RhIGxpY2VuY2lhCmYuCVVzdGVkLCBlcyBlbCBpbmRpdmlkdW8gbyBsYSBlbnRpZGFkIHF1ZSBlamVyY2l0YSBsb3MgZGVyZWNob3Mgb3RvcmdhZG9zIGFsIGFtcGFybyBkZSBlc3RhIExpY2VuY2lhIHkgcXVlIGNvbiBhbnRlcmlvcmlkYWQgbm8gaGEgdmlvbGFkbyBsYXMgY29uZGljaW9uZXMgZGUgbGEgbWlzbWEgcmVzcGVjdG8gYSBsYSBPYnJhLCBvIHF1ZSBoYXlhIG9idGVuaWRvIGF1dG9yaXphY2nDs24gZXhwcmVzYSBwb3IgcGFydGUgZGVsIExpY2VuY2lhbnRlIHBhcmEgZWplcmNlciBsb3MgZGVyZWNob3MgYWwgYW1wYXJvIGRlIGVzdGEgTGljZW5jaWEgcGVzZSBhIHVuYSB2aW9sYWNpw7NuIGFudGVyaW9yLgoyLiBEZXJlY2hvcyBkZSBVc29zIEhvbnJhZG9zIHkgZXhjZXBjaW9uZXMgTGVnYWxlcy4KTmFkYSBlbiBlc3RhIExpY2VuY2lhIHBvZHLDoSBzZXIgaW50ZXJwcmV0YWRvIGNvbW8gdW5hIGRpc21pbnVjacOzbiwgbGltaXRhY2nDs24gbyByZXN0cmljY2nDs24gZGUgbG9zIGRlcmVjaG9zIGRlcml2YWRvcyBkZWwgdXNvIGhvbnJhZG8geSBvdHJhcyBsaW1pdGFjaW9uZXMgbyBleGNlcGNpb25lcyBhIGxvcyBkZXJlY2hvcyBkZWwgYXV0b3IgYmFqbyBlbCByw6lnaW1lbiBsZWdhbCB2aWdlbnRlIG8gZGVyaXZhZG8gZGUgY3VhbHF1aWVyIG90cmEgbm9ybWEgcXVlIHNlIGxlIGFwbGlxdWUuCjMuIENvbmNlc2nDs24gZGUgbGEgTGljZW5jaWEuCkJham8gbG9zIHTDqXJtaW5vcyB5IGNvbmRpY2lvbmVzIGRlIGVzdGEgTGljZW5jaWEsIGVsIExpY2VuY2lhbnRlIG90b3JnYSBhIFVzdGVkIHVuYSBsaWNlbmNpYSBtdW5kaWFsLCBsaWJyZSBkZSByZWdhbMOtYXMsIG5vIGV4Y2x1c2l2YSB5IHBlcnBldHVhIChkdXJhbnRlIHRvZG8gZWwgcGVyw61vZG8gZGUgdmlnZW5jaWEgZGUgbG9zIGRlcmVjaG9zIGRlIGF1dG9yKSBwYXJhIGVqZXJjZXIgZXN0b3MgZGVyZWNob3Mgc29icmUgbGEgT2JyYSB0YWwgeSBjb21vIHNlIGluZGljYSBhIGNvbnRpbnVhY2nDs246CmEuCVJlcHJvZHVjaXIgbGEgT2JyYSwgaW5jb3Jwb3JhciBsYSBPYnJhIGVuIHVuYSBvIG3DoXMgT2JyYXMgQ29sZWN0aXZhcywgeSByZXByb2R1Y2lyIGxhIE9icmEgaW5jb3Jwb3JhZGEgZW4gbGFzIE9icmFzIENvbGVjdGl2YXM7CmIuCURpc3RyaWJ1aXIgY29waWFzIG8gZm9ub2dyYW1hcyBkZSBsYXMgT2JyYXMsIGV4aGliaXJsYXMgcMO6YmxpY2FtZW50ZSwgZWplY3V0YXJsYXMgcMO6YmxpY2FtZW50ZSB5L28gcG9uZXJsYXMgYSBkaXNwb3NpY2nDs24gcMO6YmxpY2EsIGluY2x1ecOpbmRvbGFzIGNvbW8gaW5jb3Jwb3JhZGFzIGVuIE9icmFzIENvbGVjdGl2YXMsIHNlZ8O6biBjb3JyZXNwb25kYTsKYy4JRGlzdHJpYnVpciBjb3BpYXMgZGUgbGFzIE9icmFzIERlcml2YWRhcyBxdWUgc2UgZ2VuZXJlbiwgZXhoaWJpcmxhcyBww7pibGljYW1lbnRlLCBlamVjdXRhcmxhcyBww7pibGljYW1lbnRlIHkvbyBwb25lcmxhcyBhIGRpc3Bvc2ljacOzbiBww7pibGljYS4KTG9zIGRlcmVjaG9zIG1lbmNpb25hZG9zIGFudGVyaW9ybWVudGUgcHVlZGVuIHNlciBlamVyY2lkb3MgZW4gdG9kb3MgbG9zIG1lZGlvcyB5IGZvcm1hdG9zLCBhY3R1YWxtZW50ZSBjb25vY2lkb3MgbyBxdWUgc2UgaW52ZW50ZW4gZW4gZWwgZnV0dXJvLiBMb3MgZGVyZWNob3MgYW50ZXMgbWVuY2lvbmFkb3MgaW5jbHV5ZW4gZWwgZGVyZWNobyBhIHJlYWxpemFyIGRpY2hhcyBtb2RpZmljYWNpb25lcyBlbiBsYSBtZWRpZGEgcXVlIHNlYW4gdMOpY25pY2FtZW50ZSBuZWNlc2FyaWFzIHBhcmEgZWplcmNlciBsb3MgZGVyZWNob3MgZW4gb3RybyBtZWRpbyBvIGZvcm1hdG9zLCBwZXJvIGRlIG90cmEgbWFuZXJhIHVzdGVkIG5vIGVzdMOhIGF1dG9yaXphZG8gcGFyYSByZWFsaXphciBvYnJhcyBkZXJpdmFkYXMuVG9kb3MgbG9zIGRlcmVjaG9zIG5vIG90b3JnYWRvcyBleHByZXNhbWVudGUgcG9yIGVsIExpY2VuY2lhbnRlIHF1ZWRhbiBwb3IgZXN0ZSBtZWRpbyByZXNlcnZhZG9zLCBpbmNsdXllbmRvIHBlcm8gc2luIGxpbWl0YXJzZSBhIGFxdWVsbG9zIHF1ZSBzZSBtZW5jaW9uYW4gZW4gbGFzIHNlY2Npb25lcyA0KGQpIHkgNChlKS4KNC4gUmVzdHJpY2Npb25lcy4KTGEgbGljZW5jaWEgb3RvcmdhZGEgZW4gbGEgYW50ZXJpb3IgU2VjY2nDs24gMyBlc3TDoSBleHByZXNhbWVudGUgc3VqZXRhIHkgbGltaXRhZGEgcG9yIGxhcyBzaWd1aWVudGVzIHJlc3RyaWNjaW9uZXM6CmEuCVVzdGVkIHB1ZWRlIGRpc3RyaWJ1aXIsIGV4aGliaXIgcMO6YmxpY2FtZW50ZSwgZWplY3V0YXIgcMO6YmxpY2FtZW50ZSwgbyBwb25lciBhIGRpc3Bvc2ljacOzbiBww7pibGljYSBsYSBPYnJhIHPDs2xvIGJham8gbGFzIGNvbmRpY2lvbmVzIGRlIGVzdGEgTGljZW5jaWEsIHkgVXN0ZWQgZGViZSBpbmNsdWlyIHVuYSBjb3BpYSBkZSBlc3RhIGxpY2VuY2lhIG8gZGVsIElkZW50aWZpY2Fkb3IgVW5pdmVyc2FsIGRlIFJlY3Vyc29zIGRlIGxhIG1pc21hIGNvbiBjYWRhIGNvcGlhIGRlIGxhIE9icmEgcXVlIGRpc3RyaWJ1eWEsIGV4aGliYSBww7pibGljYW1lbnRlLCBlamVjdXRlIHDDumJsaWNhbWVudGUgbyBwb25nYSBhIGRpc3Bvc2ljacOzbiBww7pibGljYS4gTm8gZXMgcG9zaWJsZSBvZnJlY2VyIG8gaW1wb25lciBuaW5ndW5hIGNvbmRpY2nDs24gc29icmUgbGEgT2JyYSBxdWUgYWx0ZXJlIG8gbGltaXRlIGxhcyBjb25kaWNpb25lcyBkZSBlc3RhIExpY2VuY2lhIG8gZWwgZWplcmNpY2lvIGRlIGxvcyBkZXJlY2hvcyBkZSBsb3MgZGVzdGluYXRhcmlvcyBvdG9yZ2Fkb3MgZW4gZXN0ZSBkb2N1bWVudG8uIE5vIGVzIHBvc2libGUgc3VibGljZW5jaWFyIGxhIE9icmEuIFVzdGVkIGRlYmUgbWFudGVuZXIgaW50YWN0b3MgdG9kb3MgbG9zIGF2aXNvcyBxdWUgaGFnYW4gcmVmZXJlbmNpYSBhIGVzdGEgTGljZW5jaWEgeSBhIGxhIGNsw6F1c3VsYSBkZSBsaW1pdGFjacOzbiBkZSBnYXJhbnTDrWFzLiBVc3RlZCBubyBwdWVkZSBkaXN0cmlidWlyLCBleGhpYmlyIHDDumJsaWNhbWVudGUsIGVqZWN1dGFyIHDDumJsaWNhbWVudGUsIG8gcG9uZXIgYSBkaXNwb3NpY2nDs24gcMO6YmxpY2EgbGEgT2JyYSBjb24gYWxndW5hIG1lZGlkYSB0ZWNub2zDs2dpY2EgcXVlIGNvbnRyb2xlIGVsIGFjY2VzbyBvIGxhIHV0aWxpemFjacOzbiBkZSBlbGxhIGRlIHVuYSBmb3JtYSBxdWUgc2VhIGluY29uc2lzdGVudGUgY29uIGxhcyBjb25kaWNpb25lcyBkZSBlc3RhIExpY2VuY2lhLiBMbyBhbnRlcmlvciBzZSBhcGxpY2EgYSBsYSBPYnJhIGluY29ycG9yYWRhIGEgdW5hIE9icmEgQ29sZWN0aXZhLCBwZXJvIGVzdG8gbm8gZXhpZ2UgcXVlIGxhIE9icmEgQ29sZWN0aXZhIGFwYXJ0ZSBkZSBsYSBvYnJhIG1pc21hIHF1ZWRlIHN1amV0YSBhIGxhcyBjb25kaWNpb25lcyBkZSBlc3RhIExpY2VuY2lhLiBTaSBVc3RlZCBjcmVhIHVuYSBPYnJhIENvbGVjdGl2YSwgcHJldmlvIGF2aXNvIGRlIGN1YWxxdWllciBMaWNlbmNpYW50ZSBkZWJlLCBlbiBsYSBtZWRpZGEgZGUgbG8gcG9zaWJsZSwgZWxpbWluYXIgZGUgbGEgT2JyYSBDb2xlY3RpdmEgY3VhbHF1aWVyIHJlZmVyZW5jaWEgYSBkaWNobyBMaWNlbmNpYW50ZSBvIGFsIEF1dG9yIE9yaWdpbmFsLCBzZWfDum4gbG8gc29saWNpdGFkbyBwb3IgZWwgTGljZW5jaWFudGUgeSBjb25mb3JtZSBsbyBleGlnZSBsYSBjbMOhdXN1bGEgNChjKS4KYi4JVXN0ZWQgbm8gcHVlZGUgZWplcmNlciBuaW5ndW5vIGRlIGxvcyBkZXJlY2hvcyBxdWUgbGUgaGFuIHNpZG8gb3RvcmdhZG9zIGVuIGxhIFNlY2Npw7NuIDMgcHJlY2VkZW50ZSBkZSBtb2RvIHF1ZSBlc3TDqW4gcHJpbmNpcGFsbWVudGUgZGVzdGluYWRvcyBvIGRpcmVjdGFtZW50ZSBkaXJpZ2lkb3MgYSBjb25zZWd1aXIgdW4gcHJvdmVjaG8gY29tZXJjaWFsIG8gdW5hIGNvbXBlbnNhY2nDs24gbW9uZXRhcmlhIHByaXZhZGEuIEVsIGludGVyY2FtYmlvIGRlIGxhIE9icmEgcG9yIG90cmFzIG9icmFzIHByb3RlZ2lkYXMgcG9yIGRlcmVjaG9zIGRlIGF1dG9yLCB5YSBzZWEgYSB0cmF2w6lzIGRlIHVuIHNpc3RlbWEgcGFyYSBjb21wYXJ0aXIgYXJjaGl2b3MgZGlnaXRhbGVzIChkaWdpdGFsIGZpbGUtc2hhcmluZykgbyBkZSBjdWFscXVpZXIgb3RyYSBtYW5lcmEgbm8gc2Vyw6EgY29uc2lkZXJhZG8gY29tbyBlc3RhciBkZXN0aW5hZG8gcHJpbmNpcGFsbWVudGUgbyBkaXJpZ2lkbyBkaXJlY3RhbWVudGUgYSBjb25zZWd1aXIgdW4gcHJvdmVjaG8gY29tZXJjaWFsIG8gdW5hIGNvbXBlbnNhY2nDs24gbW9uZXRhcmlhIHByaXZhZGEsIHNpZW1wcmUgcXVlIG5vIHNlIHJlYWxpY2UgdW4gcGFnbyBtZWRpYW50ZSB1bmEgY29tcGVuc2FjacOzbiBtb25ldGFyaWEgZW4gcmVsYWNpw7NuIGNvbiBlbCBpbnRlcmNhbWJpbyBkZSBvYnJhcyBwcm90ZWdpZGFzIHBvciBlbCBkZXJlY2hvIGRlIGF1dG9yLgpjLglTaSB1c3RlZCBkaXN0cmlidXllLCBleGhpYmUgcMO6YmxpY2FtZW50ZSwgZWplY3V0YSBww7pibGljYW1lbnRlIG8gZWplY3V0YSBww7pibGljYW1lbnRlIGVuIGZvcm1hIGRpZ2l0YWwgbGEgT2JyYSBvIGN1YWxxdWllciBPYnJhIERlcml2YWRhIHUgT2JyYSBDb2xlY3RpdmEsIFVzdGVkIGRlYmUgbWFudGVuZXIgaW50YWN0YSB0b2RhIGxhIGluZm9ybWFjacOzbiBkZSBkZXJlY2hvIGRlIGF1dG9yIGRlIGxhIE9icmEgeSBwcm9wb3JjaW9uYXIsIGRlIGZvcm1hIHJhem9uYWJsZSBzZWfDum4gZWwgbWVkaW8gbyBtYW5lcmEgcXVlIFVzdGVkIGVzdMOpIHV0aWxpemFuZG86IChpKSBlbCBub21icmUgZGVsIEF1dG9yIE9yaWdpbmFsIHNpIGVzdMOhIHByb3Zpc3RvIChvIHNldWTDs25pbW8sIHNpIGZ1ZXJlIGFwbGljYWJsZSksIHkvbyAoaWkpIGVsIG5vbWJyZSBkZSBsYSBwYXJ0ZSBvIGxhcyBwYXJ0ZXMgcXVlIGVsIEF1dG9yIE9yaWdpbmFsIHkvbyBlbCBMaWNlbmNpYW50ZSBodWJpZXJlbiBkZXNpZ25hZG8gcGFyYSBsYSBhdHJpYnVjacOzbiAodi5nLiwgdW4gaW5zdGl0dXRvIHBhdHJvY2luYWRvciwgZWRpdG9yaWFsLCBwdWJsaWNhY2nDs24pIGVuIGxhIGluZm9ybWFjacOzbiBkZSBsb3MgZGVyZWNob3MgZGUgYXV0b3IgZGVsIExpY2VuY2lhbnRlLCB0w6lybWlub3MgZGUgc2VydmljaW9zIG8gZGUgb3RyYXMgZm9ybWFzIHJhem9uYWJsZXM7IGVsIHTDrXR1bG8gZGUgbGEgT2JyYSBzaSBlc3TDoSBwcm92aXN0bzsgZW4gbGEgbWVkaWRhIGRlIGxvIHJhem9uYWJsZW1lbnRlIGZhY3RpYmxlIHksIHNpIGVzdMOhIHByb3Zpc3RvLCBlbCBJZGVudGlmaWNhZG9yIFVuaWZvcm1lIGRlIFJlY3Vyc29zIChVbmlmb3JtIFJlc291cmNlIElkZW50aWZpZXIpIHF1ZSBlbCBMaWNlbmNpYW50ZSBlc3BlY2lmaWNhIHBhcmEgc2VyIGFzb2NpYWRvIGNvbiBsYSBPYnJhLCBzYWx2byBxdWUgdGFsIFVSSSBubyBzZSByZWZpZXJhIGEgbGEgbm90YSBzb2JyZSBsb3MgZGVyZWNob3MgZGUgYXV0b3IgbyBhIGxhIGluZm9ybWFjacOzbiBzb2JyZSBlbCBsaWNlbmNpYW1pZW50byBkZSBsYSBPYnJhOyB5IGVuIGVsIGNhc28gZGUgdW5hIE9icmEgRGVyaXZhZGEsIGF0cmlidWlyIGVsIGNyw6lkaXRvIGlkZW50aWZpY2FuZG8gZWwgdXNvIGRlIGxhIE9icmEgZW4gbGEgT2JyYSBEZXJpdmFkYSAodi5nLiwgIlRyYWR1Y2Npw7NuIEZyYW5jZXNhIGRlIGxhIE9icmEgZGVsIEF1dG9yIE9yaWdpbmFsLCIgbyAiR3Vpw7NuIENpbmVtYXRvZ3LDoWZpY28gYmFzYWRvIGVuIGxhIE9icmEgb3JpZ2luYWwgZGVsIEF1dG9yIE9yaWdpbmFsIikuIFRhbCBjcsOpZGl0byBwdWVkZSBzZXIgaW1wbGVtZW50YWRvIGRlIGN1YWxxdWllciBmb3JtYSByYXpvbmFibGU7IGVuIGVsIGNhc28sIHNpbiBlbWJhcmdvLCBkZSBPYnJhcyBEZXJpdmFkYXMgdSBPYnJhcyBDb2xlY3RpdmFzLCB0YWwgY3LDqWRpdG8gYXBhcmVjZXLDoSwgY29tbyBtw61uaW1vLCBkb25kZSBhcGFyZWNlIGVsIGNyw6lkaXRvIGRlIGN1YWxxdWllciBvdHJvIGF1dG9yIGNvbXBhcmFibGUgeSBkZSB1bmEgbWFuZXJhLCBhbCBtZW5vcywgdGFuIGRlc3RhY2FkYSBjb21vIGVsIGNyw6lkaXRvIGRlIG90cm8gYXV0b3IgY29tcGFyYWJsZS4KZC4JUGFyYSBldml0YXIgdG9kYSBjb25mdXNpw7NuLCBlbCBMaWNlbmNpYW50ZSBhY2xhcmEgcXVlLCBjdWFuZG8gbGEgb2JyYSBlcyB1bmEgY29tcG9zaWNpw7NuIG11c2ljYWw6CmkuCVJlZ2Fsw61hcyBwb3IgaW50ZXJwcmV0YWNpw7NuIHkgZWplY3VjacOzbiBiYWpvIGxpY2VuY2lhcyBnZW5lcmFsZXMuIEVsIExpY2VuY2lhbnRlIHNlIHJlc2VydmEgZWwgZGVyZWNobyBleGNsdXNpdm8gZGUgYXV0b3JpemFyIGxhIGVqZWN1Y2nDs24gcMO6YmxpY2EgbyBsYSBlamVjdWNpw7NuIHDDumJsaWNhIGRpZ2l0YWwgZGUgbGEgb2JyYSB5IGRlIHJlY29sZWN0YXIsIHNlYSBpbmRpdmlkdWFsbWVudGUgbyBhIHRyYXbDqXMgZGUgdW5hIHNvY2llZGFkIGRlIGdlc3Rpw7NuIGNvbGVjdGl2YSBkZSBkZXJlY2hvcyBkZSBhdXRvciB5IGRlcmVjaG9zIGNvbmV4b3MgKHBvciBlamVtcGxvLCBTQVlDTyksIGxhcyByZWdhbMOtYXMgcG9yIGxhIGVqZWN1Y2nDs24gcMO6YmxpY2EgbyBwb3IgbGEgZWplY3VjacOzbiBww7pibGljYSBkaWdpdGFsIGRlIGxhIG9icmEgKHBvciBlamVtcGxvIFdlYmNhc3QpIGxpY2VuY2lhZGEgYmFqbyBsaWNlbmNpYXMgZ2VuZXJhbGVzLCBzaSBsYSBpbnRlcnByZXRhY2nDs24gbyBlamVjdWNpw7NuIGRlIGxhIG9icmEgZXN0w6EgcHJpbW9yZGlhbG1lbnRlIG9yaWVudGFkYSBwb3IgbyBkaXJpZ2lkYSBhIGxhIG9idGVuY2nDs24gZGUgdW5hIHZlbnRhamEgY29tZXJjaWFsIG8gdW5hIGNvbXBlbnNhY2nDs24gbW9uZXRhcmlhIHByaXZhZGEuCmlpLglSZWdhbMOtYXMgcG9yIEZvbm9ncmFtYXMuIEVsIExpY2VuY2lhbnRlIHNlIHJlc2VydmEgZWwgZGVyZWNobyBleGNsdXNpdm8gZGUgcmVjb2xlY3RhciwgaW5kaXZpZHVhbG1lbnRlIG8gYSB0cmF2w6lzIGRlIHVuYSBzb2NpZWRhZCBkZSBnZXN0acOzbiBjb2xlY3RpdmEgZGUgZGVyZWNob3MgZGUgYXV0b3IgeSBkZXJlY2hvcyBjb25leG9zIChwb3IgZWplbXBsbywgU0FZQ08pLCB1bmEgYWdlbmNpYSBkZSBkZXJlY2hvcyBtdXNpY2FsZXMgbyBhbGfDum4gYWdlbnRlIGRlc2lnbmFkbywgbGFzIHJlZ2Fsw61hcyBwb3IgY3VhbHF1aWVyIGZvbm9ncmFtYSBxdWUgVXN0ZWQgY3JlZSBhIHBhcnRpciBkZSBsYSBvYnJhICjigJx2ZXJzacOzbiBjb3ZlcuKAnSkgeSBkaXN0cmlidXlhLCBlbiBsb3MgdMOpcm1pbm9zIGRlbCByw6lnaW1lbiBkZSBkZXJlY2hvcyBkZSBhdXRvciwgc2kgbGEgY3JlYWNpw7NuIG8gZGlzdHJpYnVjacOzbiBkZSBlc2EgdmVyc2nDs24gY292ZXIgZXN0w6EgcHJpbW9yZGlhbG1lbnRlIGRlc3RpbmFkYSBvIGRpcmlnaWRhIGEgb2J0ZW5lciB1bmEgdmVudGFqYSBjb21lcmNpYWwgbyB1bmEgY29tcGVuc2FjacOzbiBtb25ldGFyaWEgcHJpdmFkYS4KZS4JR2VzdGnDs24gZGUgRGVyZWNob3MgZGUgQXV0b3Igc29icmUgSW50ZXJwcmV0YWNpb25lcyB5IEVqZWN1Y2lvbmVzIERpZ2l0YWxlcyAoV2ViQ2FzdGluZykuIFBhcmEgZXZpdGFyIHRvZGEgY29uZnVzacOzbiwgZWwgTGljZW5jaWFudGUgYWNsYXJhIHF1ZSwgY3VhbmRvIGxhIG9icmEgc2VhIHVuIGZvbm9ncmFtYSwgZWwgTGljZW5jaWFudGUgc2UgcmVzZXJ2YSBlbCBkZXJlY2hvIGV4Y2x1c2l2byBkZSBhdXRvcml6YXIgbGEgZWplY3VjacOzbiBww7pibGljYSBkaWdpdGFsIGRlIGxhIG9icmEgKHBvciBlamVtcGxvLCB3ZWJjYXN0KSB5IGRlIHJlY29sZWN0YXIsIGluZGl2aWR1YWxtZW50ZSBvIGEgdHJhdsOpcyBkZSB1bmEgc29jaWVkYWQgZGUgZ2VzdGnDs24gY29sZWN0aXZhIGRlIGRlcmVjaG9zIGRlIGF1dG9yIHkgZGVyZWNob3MgY29uZXhvcyAocG9yIGVqZW1wbG8sIEFjaW5wcm8pLCBsYXMgcmVnYWzDrWFzIHBvciBsYSBlamVjdWNpw7NuIHDDumJsaWNhIGRpZ2l0YWwgZGUgbGEgb2JyYSAocG9yIGVqZW1wbG8sIHdlYmNhc3QpLCBzdWpldGEgYSBsYXMgZGlzcG9zaWNpb25lcyBhcGxpY2FibGVzIGRlbCByw6lnaW1lbiBkZSBEZXJlY2hvIGRlIEF1dG9yLCBzaSBlc3RhIGVqZWN1Y2nDs24gcMO6YmxpY2EgZGlnaXRhbCBlc3TDoSBwcmltb3JkaWFsbWVudGUgZGlyaWdpZGEgYSBvYnRlbmVyIHVuYSB2ZW50YWphIGNvbWVyY2lhbCBvIHVuYSBjb21wZW5zYWNpw7NuIG1vbmV0YXJpYSBwcml2YWRhLgo1LiBSZXByZXNlbnRhY2lvbmVzLCBHYXJhbnTDrWFzIHkgTGltaXRhY2lvbmVzIGRlIFJlc3BvbnNhYmlsaWRhZC4KQSBNRU5PUyBRVUUgTEFTIFBBUlRFUyBMTyBBQ09SREFSQU4gREUgT1RSQSBGT1JNQSBQT1IgRVNDUklUTywgRUwgTElDRU5DSUFOVEUgT0ZSRUNFIExBIE9CUkEgKEVOIEVMIEVTVEFETyBFTiBFTCBRVUUgU0UgRU5DVUVOVFJBKSDigJxUQUwgQ1VBTOKAnSwgU0lOIEJSSU5EQVIgR0FSQU5Uw41BUyBERSBDTEFTRSBBTEdVTkEgUkVTUEVDVE8gREUgTEEgT0JSQSwgWUEgU0VBIEVYUFJFU0EsIElNUEzDjUNJVEEsIExFR0FMIE8gQ1VBTFFVSUVSQSBPVFJBLCBJTkNMVVlFTkRPLCBTSU4gTElNSVRBUlNFIEEgRUxMQVMsIEdBUkFOVMONQVMgREUgVElUVUxBUklEQUQsIENPTUVSQ0lBQklMSURBRCwgQURBUFRBQklMSURBRCBPIEFERUNVQUNJw5NOIEEgUFJPUMOTU0lUTyBERVRFUk1JTkFETywgQVVTRU5DSUEgREUgSU5GUkFDQ0nDk04sIERFIEFVU0VOQ0lBIERFIERFRkVDVE9TIExBVEVOVEVTIE8gREUgT1RSTyBUSVBPLCBPIExBIFBSRVNFTkNJQSBPIEFVU0VOQ0lBIERFIEVSUk9SRVMsIFNFQU4gTyBOTyBERVNDVUJSSUJMRVMgKFBVRURBTiBPIE5PIFNFUiBFU1RPUyBERVNDVUJJRVJUT1MpLiBBTEdVTkFTIEpVUklTRElDQ0lPTkVTIE5PIFBFUk1JVEVOIExBIEVYQ0xVU0nDk04gREUgR0FSQU5Uw41BUyBJTVBMw41DSVRBUywgRU4gQ1VZTyBDQVNPIEVTVEEgRVhDTFVTScOTTiBQVUVERSBOTyBBUExJQ0FSU0UgQSBVU1RFRC4KNi4gTGltaXRhY2nDs24gZGUgcmVzcG9uc2FiaWxpZGFkLgpBIE1FTk9TIFFVRSBMTyBFWElKQSBFWFBSRVNBTUVOVEUgTEEgTEVZIEFQTElDQUJMRSwgRUwgTElDRU5DSUFOVEUgTk8gU0VSw4EgUkVTUE9OU0FCTEUgQU5URSBVU1RFRCBQT1IgREHDkU8gQUxHVU5PLCBTRUEgUE9SIFJFU1BPTlNBQklMSURBRCBFWFRSQUNPTlRSQUNUVUFMLCBQUkVDT05UUkFDVFVBTCBPIENPTlRSQUNUVUFMLCBPQkpFVElWQSBPIFNVQkpFVElWQSwgU0UgVFJBVEUgREUgREHDkU9TIE1PUkFMRVMgTyBQQVRSSU1PTklBTEVTLCBESVJFQ1RPUyBPIElORElSRUNUT1MsIFBSRVZJU1RPUyBPIElNUFJFVklTVE9TIFBST0RVQ0lET1MgUE9SIEVMIFVTTyBERSBFU1RBIExJQ0VOQ0lBIE8gREUgTEEgT0JSQSwgQVVOIENVQU5ETyBFTCBMSUNFTkNJQU5URSBIQVlBIFNJRE8gQURWRVJUSURPIERFIExBIFBPU0lCSUxJREFEIERFIERJQ0hPUyBEQcORT1MuIEFMR1VOQVMgTEVZRVMgTk8gUEVSTUlURU4gTEEgRVhDTFVTScOTTiBERSBDSUVSVEEgUkVTUE9OU0FCSUxJREFELCBFTiBDVVlPIENBU08gRVNUQSBFWENMVVNJw5NOIFBVRURFIE5PIEFQTElDQVJTRSBBIFVTVEVELgo3LiBUw6lybWluby4KYS4JRXN0YSBMaWNlbmNpYSB5IGxvcyBkZXJlY2hvcyBvdG9yZ2Fkb3MgZW4gdmlydHVkIGRlIGVsbGEgdGVybWluYXLDoW4gYXV0b23DoXRpY2FtZW50ZSBzaSBVc3RlZCBpbmZyaW5nZSBhbGd1bmEgY29uZGljacOzbiBlc3RhYmxlY2lkYSBlbiBlbGxhLiBTaW4gZW1iYXJnbywgbG9zIGluZGl2aWR1b3MgbyBlbnRpZGFkZXMgcXVlIGhhbiByZWNpYmlkbyBPYnJhcyBEZXJpdmFkYXMgbyBDb2xlY3RpdmFzIGRlIFVzdGVkIGRlIGNvbmZvcm1pZGFkIGNvbiBlc3RhIExpY2VuY2lhLCBubyB2ZXLDoW4gdGVybWluYWRhcyBzdXMgbGljZW5jaWFzLCBzaWVtcHJlIHF1ZSBlc3RvcyBpbmRpdmlkdW9zIG8gZW50aWRhZGVzIHNpZ2FuIGN1bXBsaWVuZG8gw61udGVncmFtZW50ZSBsYXMgY29uZGljaW9uZXMgZGUgZXN0YXMgbGljZW5jaWFzLiBMYXMgU2VjY2lvbmVzIDEsIDIsIDUsIDYsIDcsIHkgOCBzdWJzaXN0aXLDoW4gYSBjdWFscXVpZXIgdGVybWluYWNpw7NuIGRlIGVzdGEgTGljZW5jaWEuCmIuCVN1amV0YSBhIGxhcyBjb25kaWNpb25lcyB5IHTDqXJtaW5vcyBhbnRlcmlvcmVzLCBsYSBsaWNlbmNpYSBvdG9yZ2FkYSBhcXXDrSBlcyBwZXJwZXR1YSAoZHVyYW50ZSBlbCBwZXLDrW9kbyBkZSB2aWdlbmNpYSBkZSBsb3MgZGVyZWNob3MgZGUgYXV0b3IgZGUgbGEgb2JyYSkuIE5vIG9ic3RhbnRlIGxvIGFudGVyaW9yLCBlbCBMaWNlbmNpYW50ZSBzZSByZXNlcnZhIGVsIGRlcmVjaG8gYSBwdWJsaWNhciB5L28gZXN0cmVuYXIgbGEgT2JyYSBiYWpvIGNvbmRpY2lvbmVzIGRlIGxpY2VuY2lhIGRpZmVyZW50ZXMgbyBhIGRlamFyIGRlIGRpc3RyaWJ1aXJsYSBlbiBsb3MgdMOpcm1pbm9zIGRlIGVzdGEgTGljZW5jaWEgZW4gY3VhbHF1aWVyIG1vbWVudG87IGVuIGVsIGVudGVuZGlkbywgc2luIGVtYmFyZ28sIHF1ZSBlc2EgZWxlY2Npw7NuIG5vIHNlcnZpcsOhIHBhcmEgcmV2b2NhciBlc3RhIGxpY2VuY2lhIG8gcXVlIGRlYmEgc2VyIG90b3JnYWRhICwgYmFqbyBsb3MgdMOpcm1pbm9zIGRlIGVzdGEgbGljZW5jaWEpLCB5IGVzdGEgbGljZW5jaWEgY29udGludWFyw6EgZW4gcGxlbm8gdmlnb3IgeSBlZmVjdG8gYSBtZW5vcyBxdWUgc2VhIHRlcm1pbmFkYSBjb21vIHNlIGV4cHJlc2EgYXRyw6FzLiBMYSBMaWNlbmNpYSByZXZvY2FkYSBjb250aW51YXLDoSBzaWVuZG8gcGxlbmFtZW50ZSB2aWdlbnRlIHkgZWZlY3RpdmEgc2kgbm8gc2UgbGUgZGEgdMOpcm1pbm8gZW4gbGFzIGNvbmRpY2lvbmVzIGluZGljYWRhcyBhbnRlcmlvcm1lbnRlLgo4LiBWYXJpb3MuCmEuCUNhZGEgdmV6IHF1ZSBVc3RlZCBkaXN0cmlidXlhIG8gcG9uZ2EgYSBkaXNwb3NpY2nDs24gcMO6YmxpY2EgbGEgT2JyYSBvIHVuYSBPYnJhIENvbGVjdGl2YSwgZWwgTGljZW5jaWFudGUgb2ZyZWNlcsOhIGFsIGRlc3RpbmF0YXJpbyB1bmEgbGljZW5jaWEgZW4gbG9zIG1pc21vcyB0w6lybWlub3MgeSBjb25kaWNpb25lcyBxdWUgbGEgbGljZW5jaWEgb3RvcmdhZGEgYSBVc3RlZCBiYWpvIGVzdGEgTGljZW5jaWEuCmIuCVNpIGFsZ3VuYSBkaXNwb3NpY2nDs24gZGUgZXN0YSBMaWNlbmNpYSByZXN1bHRhIGludmFsaWRhZGEgbyBubyBleGlnaWJsZSwgc2Vnw7puIGxhIGxlZ2lzbGFjacOzbiB2aWdlbnRlLCBlc3RvIG5vIGFmZWN0YXLDoSBuaSBsYSB2YWxpZGV6IG5pIGxhIGFwbGljYWJpbGlkYWQgZGVsIHJlc3RvIGRlIGNvbmRpY2lvbmVzIGRlIGVzdGEgTGljZW5jaWEgeSwgc2luIGFjY2nDs24gYWRpY2lvbmFsIHBvciBwYXJ0ZSBkZSBsb3Mgc3VqZXRvcyBkZSBlc3RlIGFjdWVyZG8sIGFxdcOpbGxhIHNlIGVudGVuZGVyw6EgcmVmb3JtYWRhIGxvIG3DrW5pbW8gbmVjZXNhcmlvIHBhcmEgaGFjZXIgcXVlIGRpY2hhIGRpc3Bvc2ljacOzbiBzZWEgdsOhbGlkYSB5IGV4aWdpYmxlLgpjLglOaW5nw7puIHTDqXJtaW5vIG8gZGlzcG9zaWNpw7NuIGRlIGVzdGEgTGljZW5jaWEgc2UgZXN0aW1hcsOhIHJlbnVuY2lhZGEgeSBuaW5ndW5hIHZpb2xhY2nDs24gZGUgZWxsYSBzZXLDoSBjb25zZW50aWRhIGEgbWVub3MgcXVlIGVzYSByZW51bmNpYSBvIGNvbnNlbnRpbWllbnRvIHNlYSBvdG9yZ2FkbyBwb3IgZXNjcml0byB5IGZpcm1hZG8gcG9yIGxhIHBhcnRlIHF1ZSByZW51bmNpZSBvIGNvbnNpZW50YS4KZC4JRXN0YSBMaWNlbmNpYSByZWZsZWphIGVsIGFjdWVyZG8gcGxlbm8gZW50cmUgbGFzIHBhcnRlcyByZXNwZWN0byBhIGxhIE9icmEgYXF1w60gbGljZW5jaWFkYS4gTm8gaGF5IGFycmVnbG9zLCBhY3VlcmRvcyBvIGRlY2xhcmFjaW9uZXMgcmVzcGVjdG8gYSBsYSBPYnJhIHF1ZSBubyBlc3TDqW4gZXNwZWNpZmljYWRvcyBlbiBlc3RlIGRvY3VtZW50by4gRWwgTGljZW5jaWFudGUgbm8gc2UgdmVyw6EgbGltaXRhZG8gcG9yIG5pbmd1bmEgZGlzcG9zaWNpw7NuIGFkaWNpb25hbCBxdWUgcHVlZGEgc3VyZ2lyIGVuIGFsZ3VuYSBjb211bmljYWNpw7NuIGVtYW5hZGEgZGUgVXN0ZWQuIEVzdGEgTGljZW5jaWEgbm8gcHVlZGUgc2VyIG1vZGlmaWNhZGEgc2luIGVsIGNvbnNlbnRpbWllbnRvIG11dHVvIHBvciBlc2NyaXRvIGRlbCBMaWNlbmNpYW50ZSB5IFVzdGVkLgoK |