Optimización dinámica aplicada al análisis de balance de flujo de redes metabólicas

Una red metabólica es el conjunto de reacciones bioquímicas presentes en una célula. Las redes metabólicas se pueden modelar a través de métodos como el análisis de balance de flujo dinámico (DFBA, por sus siglas en inglés Dynamic Flux Balance Analysis) el cual consiste en resolver un problema de op...

Full description

Autores:
Martínez Guarnizo, Julian Camilo
Tipo de recurso:
Trabajo de grado de pregrado
Fecha de publicación:
2021
Institución:
Pontificia Universidad Javeriana
Repositorio:
Repositorio Universidad Javeriana
Idioma:
spa
OAI Identifier:
oai:repository.javeriana.edu.co:10554/58764
Acceso en línea:
http://hdl.handle.net/10554/58764
Palabra clave:
Optimización dinámica
Colocación Ortogonal
NLP
DFBA
Dynamic optimization
Orthogonal collocation
NLP
DFBA
Matemáticas - Tesis y disertaciones académicas
Optimización matemática
Método de elementos finitos
Rights
openAccess
License
Atribución-NoComercial-SinDerivadas 4.0 Internacional
id JAVERIANA2_1c209baea4be4015e1868744adee70e2
oai_identifier_str oai:repository.javeriana.edu.co:10554/58764
network_acronym_str JAVERIANA2
network_name_str Repositorio Universidad Javeriana
repository_id_str
dc.title.spa.fl_str_mv Optimización dinámica aplicada al análisis de balance de flujo de redes metabólicas
dc.title.english.spa.fl_str_mv Dynamic optimization applied to flux balance analysis of metabolic networks
title Optimización dinámica aplicada al análisis de balance de flujo de redes metabólicas
spellingShingle Optimización dinámica aplicada al análisis de balance de flujo de redes metabólicas
Optimización dinámica
Colocación Ortogonal
NLP
DFBA
Dynamic optimization
Orthogonal collocation
NLP
DFBA
Matemáticas - Tesis y disertaciones académicas
Optimización matemática
Método de elementos finitos
title_short Optimización dinámica aplicada al análisis de balance de flujo de redes metabólicas
title_full Optimización dinámica aplicada al análisis de balance de flujo de redes metabólicas
title_fullStr Optimización dinámica aplicada al análisis de balance de flujo de redes metabólicas
title_full_unstemmed Optimización dinámica aplicada al análisis de balance de flujo de redes metabólicas
title_sort Optimización dinámica aplicada al análisis de balance de flujo de redes metabólicas
dc.creator.fl_str_mv Martínez Guarnizo, Julian Camilo
dc.contributor.advisor.none.fl_str_mv Vargas Domínguez, Andrés
Clavijo Buritica, Diana Carolina
dc.contributor.author.none.fl_str_mv Martínez Guarnizo, Julian Camilo
dc.contributor.evaluator.none.fl_str_mv Chacón Cortés, Leonardo Fabio
dc.subject.spa.fl_str_mv Optimización dinámica
Colocación Ortogonal
NLP
DFBA
topic Optimización dinámica
Colocación Ortogonal
NLP
DFBA
Dynamic optimization
Orthogonal collocation
NLP
DFBA
Matemáticas - Tesis y disertaciones académicas
Optimización matemática
Método de elementos finitos
dc.subject.keyword.spa.fl_str_mv Dynamic optimization
Orthogonal collocation
NLP
DFBA
dc.subject.armarc.spa.fl_str_mv Matemáticas - Tesis y disertaciones académicas
Optimización matemática
Método de elementos finitos
description Una red metabólica es el conjunto de reacciones bioquímicas presentes en una célula. Las redes metabólicas se pueden modelar a través de métodos como el análisis de balance de flujo dinámico (DFBA, por sus siglas en inglés Dynamic Flux Balance Analysis) el cual consiste en resolver un problema de optimización dinámica. En este trabajo se explican algunos métodos para resolver problemas de optimización dinámica de forma numérica como lo es método de disparo múltiple directo y el método de colocación ortogonal aplicado a problemas de optimización dinámica. Estos métodos se basan en discretizar las variables de estado y las variables de control y resolver ecuaciones diferenciales ordinarias (EDOs) en subintervalos del horizonte de tiempo para posteriormente resolver un problema de programación no lineal (NLP, por sus siglas en inglés Non–Linear Programming). Entre los métodos más usados para resolver las EDOs está el método de colocación en elementos finitos y sus variaciones mientras que para resolver el NLP se utiliza más frecuentemente el método de programación cuadrática secuencial (SQP, por sus siglas en inglés Sequential Quadratic Programming) y debido a que ambos métodos son útiles para la solución de problemas de optimización dinámica, ambos fueron introducidos a lo largo del documento. Adicionalmente, el método de colocación ortogonal aplicado a problemas de optimización dinámica se utilizó para modelar una red metabólica con 4 metabolitos y 8 reacciones utilizando una rutina en el lenguaje R. El modelamiento se realizó planteando el problema de optimización dinámica asociado a la red metabólica para después discretizarlo y obtener un NLP que pudiera resolverse en R. Los resultados simularon un escenario biológico real en el cual se consumen metabolitos como la glucosa y el oxígeno para producir biomasa.
publishDate 2021
dc.date.created.none.fl_str_mv 2021-11-19
dc.date.accessioned.none.fl_str_mv 2022-01-28T17:57:25Z
dc.date.available.none.fl_str_mv 2022-01-28T17:57:25Z
dc.type.local.spa.fl_str_mv Tesis/Trabajo de grado - Monografía - Pregrado
dc.type.coar.none.fl_str_mv http://purl.org/coar/resource_type/c_7a1f
dc.type.driver.none.fl_str_mv info:eu-repo/semantics/bachelorThesis
format http://purl.org/coar/resource_type/c_7a1f
dc.identifier.uri.none.fl_str_mv http://hdl.handle.net/10554/58764
dc.identifier.instname.spa.fl_str_mv instname:Pontificia Universidad Javeriana
dc.identifier.reponame.spa.fl_str_mv reponame:Repositorio Institucional - Pontificia Universidad Javeriana
dc.identifier.repourl.spa.fl_str_mv repourl:https://repository.javeriana.edu.co
url http://hdl.handle.net/10554/58764
identifier_str_mv instname:Pontificia Universidad Javeriana
reponame:Repositorio Institucional - Pontificia Universidad Javeriana
repourl:https://repository.javeriana.edu.co
dc.language.iso.spa.fl_str_mv spa
language spa
dc.rights.licence.*.fl_str_mv Atribución-NoComercial-SinDerivadas 4.0 Internacional
dc.rights.uri.*.fl_str_mv http://creativecommons.org/licenses/by-nc-nd/4.0/
dc.rights.accessrights.none.fl_str_mv info:eu-repo/semantics/openAccess
dc.rights.coar.spa.fl_str_mv http://purl.org/coar/access_right/c_abf2
rights_invalid_str_mv Atribución-NoComercial-SinDerivadas 4.0 Internacional
http://creativecommons.org/licenses/by-nc-nd/4.0/
http://purl.org/coar/access_right/c_abf2
eu_rights_str_mv openAccess
dc.format.spa.fl_str_mv PDF
dc.format.mimetype.spa.fl_str_mv application/pdf
dc.publisher.spa.fl_str_mv Pontificia Universidad Javeriana
dc.publisher.program.spa.fl_str_mv Matemáticas
dc.publisher.faculty.spa.fl_str_mv Facultad de Ciencias
institution Pontificia Universidad Javeriana
bitstream.url.fl_str_mv http://repository.javeriana.edu.co/bitstream/10554/58764/4/license.txt
http://repository.javeriana.edu.co/bitstream/10554/58764/1/Trabajo_de_Grado_de_matematicas_definitivo.pdf
http://repository.javeriana.edu.co/bitstream/10554/58764/2/Carta_de_autorizacion_definitiva.pdf
http://repository.javeriana.edu.co/bitstream/10554/58764/3/Carta%20de%20aprobaci%c3%b3n%20de%20los%20directores_Firmada_definitiva.pdf
http://repository.javeriana.edu.co/bitstream/10554/58764/5/Trabajo_de_Grado_de_matematicas_definitivo.pdf.jpg
http://repository.javeriana.edu.co/bitstream/10554/58764/6/Carta_de_autorizacion_definitiva.pdf.jpg
http://repository.javeriana.edu.co/bitstream/10554/58764/7/Carta%20de%20aprobaci%c3%b3n%20de%20los%20directores_Firmada_definitiva.pdf.jpg
bitstream.checksum.fl_str_mv 2070d280cc89439d983d9eee1b17df53
88461ac3b5882e73dada39c45c77c0bf
876395baface6ef463e630fdd2685a47
8966ce708265a1f81c178cf8a5e8a64f
e28c86f2aebcccd2f4b6dedcea8194d1
a88f254106e1f50693d9a7fdad1eb384
49cf639f6b98e7284bb0146b0a5151e3
bitstream.checksumAlgorithm.fl_str_mv MD5
MD5
MD5
MD5
MD5
MD5
MD5
repository.name.fl_str_mv Repositorio Institucional - Pontificia Universidad Javeriana
repository.mail.fl_str_mv repositorio@javeriana.edu.co
_version_ 1811671154209849344
spelling Atribución-NoComercial-SinDerivadas 4.0 Internacionalhttp://creativecommons.org/licenses/by-nc-nd/4.0/info:eu-repo/semantics/openAccessDe acuerdo con la naturaleza del uso concedido, la presente licencia parcial se otorga a título gratuito por el máximo tiempo legal colombiano, con el propósito de que en dicho lapso mi (nuestra) obra sea explotada en las condiciones aquí estipuladas y para los fines indicados, respetando siempre la titularidad de los derechos patrimoniales y morales correspondientes, de acuerdo con los usos honrados, de manera proporcional y justificada a la finalidad perseguida, sin ánimo de lucro ni de comercialización. De manera complementaria, garantizo (garantizamos) en mi (nuestra) calidad de estudiante (s) y por ende autor (es) exclusivo (s), que la Tesis o Trabajo de Grado en cuestión, es producto de mi (nuestra) plena autoría, de mi (nuestro) esfuerzo personal intelectual, como consecuencia de mi (nuestra) creación original particular y, por tanto, soy (somos) el (los) único (s) titular (es) de la misma. Además, aseguro (aseguramos) que no contiene citas, ni transcripciones de otras obras protegidas, por fuera de los límites autorizados por la ley, según los usos honrados, y en proporción a los fines previstos; ni tampoco contempla declaraciones difamatorias contra terceros; respetando el derecho a la imagen, intimidad, buen nombre y demás derechos constitucionales. Adicionalmente, manifiesto (manifestamos) que no se incluyeron expresiones contrarias al orden público ni a las buenas costumbres. En consecuencia, la responsabilidad directa en la elaboración, presentación, investigación y, en general, contenidos de la Tesis o Trabajo de Grado es de mí (nuestro) competencia exclusiva, eximiendo de toda responsabilidad a la Pontifica Universidad Javeriana por tales aspectos. Sin perjuicio de los usos y atribuciones otorgadas en virtud de este documento, continuaré (continuaremos) conservando los correspondientes derechos patrimoniales sin modificación o restricción alguna, puesto que, de acuerdo con la legislación colombiana aplicable, el presente es un acuerdo jurídico que en ningún caso conlleva la enajenación de los derechos patrimoniales derivados del régimen del Derecho de Autor. De conformidad con lo establecido en el artículo 30 de la Ley 23 de 1982 y el artículo 11 de la Decisión Andina 351 de 1993, "Los derechos morales sobre el trabajo son propiedad de los autores", los cuales son irrenunciables, imprescriptibles, inembargables e inalienables. En consecuencia, la Pontificia Universidad Javeriana está en la obligación de RESPETARLOS Y HACERLOS RESPETAR, para lo cual tomará las medidas correspondientes para garantizar su observancia.http://purl.org/coar/access_right/c_abf2Vargas Domínguez, AndrésClavijo Buritica, Diana CarolinaMartínez Guarnizo, Julian CamiloChacón Cortés, Leonardo Fabio2022-01-28T17:57:25Z2022-01-28T17:57:25Z2021-11-19http://hdl.handle.net/10554/58764instname:Pontificia Universidad Javerianareponame:Repositorio Institucional - Pontificia Universidad Javerianarepourl:https://repository.javeriana.edu.coUna red metabólica es el conjunto de reacciones bioquímicas presentes en una célula. Las redes metabólicas se pueden modelar a través de métodos como el análisis de balance de flujo dinámico (DFBA, por sus siglas en inglés Dynamic Flux Balance Analysis) el cual consiste en resolver un problema de optimización dinámica. En este trabajo se explican algunos métodos para resolver problemas de optimización dinámica de forma numérica como lo es método de disparo múltiple directo y el método de colocación ortogonal aplicado a problemas de optimización dinámica. Estos métodos se basan en discretizar las variables de estado y las variables de control y resolver ecuaciones diferenciales ordinarias (EDOs) en subintervalos del horizonte de tiempo para posteriormente resolver un problema de programación no lineal (NLP, por sus siglas en inglés Non–Linear Programming). Entre los métodos más usados para resolver las EDOs está el método de colocación en elementos finitos y sus variaciones mientras que para resolver el NLP se utiliza más frecuentemente el método de programación cuadrática secuencial (SQP, por sus siglas en inglés Sequential Quadratic Programming) y debido a que ambos métodos son útiles para la solución de problemas de optimización dinámica, ambos fueron introducidos a lo largo del documento. Adicionalmente, el método de colocación ortogonal aplicado a problemas de optimización dinámica se utilizó para modelar una red metabólica con 4 metabolitos y 8 reacciones utilizando una rutina en el lenguaje R. El modelamiento se realizó planteando el problema de optimización dinámica asociado a la red metabólica para después discretizarlo y obtener un NLP que pudiera resolverse en R. Los resultados simularon un escenario biológico real en el cual se consumen metabolitos como la glucosa y el oxígeno para producir biomasa.A metabolic netwok is a set of biochemical reactions present in a cell. Metabolic networks can be modeled through methods like Dynamic Flux Balance Analysis (DFBA) which lies in solving a Dynamic Optimization problem. In this work, some methods to solve Dynamic Optimization problems like Direct Multiple Shooting and Orthogonal Collocation applied to Dynamic Optimization problems are explained. This methods are base on discretize the state variables and control variables and solving Ordinary Differential Equations (ODEs) over sub-intervals of the time horizon to subsequently solve a Non-linear Programming problem (NLP). Among the most useful methods to solve ODEs is the Orthogonal collocation method and it’s variations while to solve the NLP is frecuently used Sequential Quadratic Programming method (SQP). As both methods are used to solve Dynamic Optimization problems, both were introduced throughout the document. Also, Orthogonal Collocation method applied to Dynamic Optimization problems was used to model a metabolic network with 4 metabolites and 8 reactions, using a language R routine. The modeling was done setting out the Dynamic Optimization problem associated to the metabolic network to subsequently discretize the problem and get a NLP solvable in R. The results simulated a real biological scenario which metabolites like glucose and oxygen were consumed to produce biomass.Matemático (a)Pregradohttps://scienti.minciencias.gov.co/cvlac/visualizador/generarCurriculoCv.do?cod_rh=0001987220PDFapplication/pdfspaPontificia Universidad JaverianaMatemáticasFacultad de CienciasOptimización dinámicaColocación OrtogonalNLPDFBADynamic optimizationOrthogonal collocationNLPDFBAMatemáticas - Tesis y disertaciones académicasOptimización matemáticaMétodo de elementos finitosOptimización dinámica aplicada al análisis de balance de flujo de redes metabólicasDynamic optimization applied to flux balance analysis of metabolic networksTesis/Trabajo de grado - Monografía - Pregradohttp://purl.org/coar/resource_type/c_7a1finfo:eu-repo/semantics/bachelorThesisLICENSElicense.txtlicense.txttext/plain; charset=utf-82603http://repository.javeriana.edu.co/bitstream/10554/58764/4/license.txt2070d280cc89439d983d9eee1b17df53MD54open accessORIGINALTrabajo_de_Grado_de_matematicas_definitivo.pdfTrabajo_de_Grado_de_matematicas_definitivo.pdfDocumentoapplication/pdf930867http://repository.javeriana.edu.co/bitstream/10554/58764/1/Trabajo_de_Grado_de_matematicas_definitivo.pdf88461ac3b5882e73dada39c45c77c0bfMD51open accessCarta_de_autorizacion_definitiva.pdfCarta_de_autorizacion_definitiva.pdfLicencia de usoapplication/pdf193885http://repository.javeriana.edu.co/bitstream/10554/58764/2/Carta_de_autorizacion_definitiva.pdf876395baface6ef463e630fdd2685a47MD52metadata only accessCarta de aprobación de los directores_Firmada_definitiva.pdfCarta de aprobación de los directores_Firmada_definitiva.pdfCartas aprobación directoresapplication/pdf455379http://repository.javeriana.edu.co/bitstream/10554/58764/3/Carta%20de%20aprobaci%c3%b3n%20de%20los%20directores_Firmada_definitiva.pdf8966ce708265a1f81c178cf8a5e8a64fMD53metadata only accessTHUMBNAILTrabajo_de_Grado_de_matematicas_definitivo.pdf.jpgTrabajo_de_Grado_de_matematicas_definitivo.pdf.jpgIM Thumbnailimage/jpeg4944http://repository.javeriana.edu.co/bitstream/10554/58764/5/Trabajo_de_Grado_de_matematicas_definitivo.pdf.jpge28c86f2aebcccd2f4b6dedcea8194d1MD55open accessCarta_de_autorizacion_definitiva.pdf.jpgCarta_de_autorizacion_definitiva.pdf.jpgIM Thumbnailimage/jpeg6536http://repository.javeriana.edu.co/bitstream/10554/58764/6/Carta_de_autorizacion_definitiva.pdf.jpga88f254106e1f50693d9a7fdad1eb384MD56open accessCarta de aprobación de los directores_Firmada_definitiva.pdf.jpgCarta de aprobación de los directores_Firmada_definitiva.pdf.jpgIM Thumbnailimage/jpeg6964http://repository.javeriana.edu.co/bitstream/10554/58764/7/Carta%20de%20aprobaci%c3%b3n%20de%20los%20directores_Firmada_definitiva.pdf.jpg49cf639f6b98e7284bb0146b0a5151e3MD57open access10554/58764oai:repository.javeriana.edu.co:10554/587642022-05-03 12:02:48.05Repositorio Institucional - Pontificia Universidad Javerianarepositorio@javeriana.edu.coTElDRU5DSUEgWSBBVVRPUklaQUNJw5NOIERFIExPUyBBVVRPUkVTIFBBUkEgUFVCTElDQVIgWSBQRVJNSVRJUiBMQSBDT05TVUxUQSBZIFVTTy4KClBhcnRlIDEuIFTDqXJtaW5vcyBkZSBsYSBsaWNlbmNpYSBnZW5lcmFsIHBhcmEgcHVibGljYWNpw7NuIGRlIG9icmFzIGVuIGVsIHJlcG9zaXRvcmlvIGluc3RpdHVjaW9uYWwKQ29tbyB0aXR1bGFyIChlcykgZGVsIGRlcmVjaG8gZGUgYXV0b3IsIGNvbmZpZXJvIChlcmltb3MpIGEgbGEgUG9udGlmaWNpYSBVbml2ZXJzaWRhZCBKYXZlcmlhbmEgdW5hIGxpY2VuY2lhIG5vIGV4Y2x1c2l2YSwgbGltaXRhZGEgeSBncmF0dWl0YSBzb2JyZSBsYSBvYnJhIHF1ZSBzZSBpbnRlZ3JhcsOhIGVuIGVsIFJlcG9zaXRvcmlvIEluc3RpdHVjaW9uYWwsIHF1ZSBzZSBhanVzdGEgYSBsYXMgc2lndWllbnRlcyBjYXJhY3RlcsOtc3RpY2FzOgphKSAgICAgIEVzdGFyw6EgdmlnZW50ZSBhIHBhcnRpciBkZSBsYSBmZWNoYSBkZSBpbmNsdXNpw7NuIGVuIGVsIHJlcG9zaXRvcmlvLCBwb3IgdW4gcGxhem8gZGUgNSBhw7FvcywgcXVlIHNlcsOhbiBwcm9ycm9nYWJsZXMgaW5kZWZpbmlkYW1lbnRlIHBvciBlbCB0aWVtcG8gcXVlIGR1cmUgZWwgZGVyZWNobyBwYXRyaW1vbmlhbCBkZWwgYXV0b3IuIEVsIGF1dG9yIHBvZHLDoSBkYXIgcG9yIHRlcm1pbmFkYSBsYSBsaWNlbmNpYSBzb2xpY2l0w6FuZG9sbyBhIGxhIFVuaXZlcnNpZGFkIHBvciBlc2NyaXRvLgpiKSAgICAgIEF1dG9yaXphIGEgbGEgUG9udGlmaWNpYSBVbml2ZXJzaWRhZCBKYXZlcmlhbmEgYSBwdWJsaWNhciBsYSBvYnJhIGVuIGRpZ2l0YWwsIGNvbm9jaWVuZG8gcXVlLCBkYWRvIHF1ZSBzZSBwdWJsaWNhIGVuIEludGVybmV0LCBwb3IgZXN0ZSBoZWNobyBjaXJjdWxhIGNvbiB1biBhbGNhbmNlIG11bmRpYWwuCmMpICAgICAgTG9zIGF1dG9yZXMgYWNlcHRhbiBxdWUgbGEgYXV0b3JpemFjacOzbiBzZSBoYWNlIGEgdMOtdHVsbyBncmF0dWl0bywgcG9yIGxvIHRhbnRvIHJlbnVuY2lhbiBhIHJlY2liaXIgYmVuZWZpY2lvIGFsZ3VubyBwb3IgbGEgcHVibGljYWNpw7NuLCBkaXN0cmlidWNpw7NuLCBjb211bmljYWNpw7NuIHDDumJsaWNhIHkgY3VhbHF1aWVyIG90cm8gdXNvIHF1ZSBzZSBoYWdhIGVuIGxvcyB0w6lybWlub3MgZGUgbGEgcHJlc2VudGUgbGljZW5jaWEgeSBkZSBsYSBsaWNlbmNpYSBkZSB1c28gY29uIHF1ZSBzZSBwdWJsaWNhLgpkKSAgICAgIExvcyBhdXRvcmVzIG1hbmlmaWVzdGFuIHF1ZSBzZSB0cmF0YSBkZSB1bmEgb2JyYSBvcmlnaW5hbCBzb2JyZSBsYSBxdWUgdGllbmVuIGxvcyBkZXJlY2hvcyBxdWUgYXV0b3JpemFuIHkgcXVlIHNvbiBlbGxvcyBxdWllbmVzIGFzdW1lbiB0b3RhbCByZXNwb25zYWJpbGlkYWQgcG9yIGVsIGNvbnRlbmlkbyBkZSBzdSBvYnJhIGFudGUgbGEgUG9udGlmaWNpYSBVbml2ZXJzaWRhZCBKYXZlcmlhbmEgeSBhbnRlIHRlcmNlcm9zLiBFbiB0b2RvIGNhc28gbGEgUG9udGlmaWNpYSBVbml2ZXJzaWRhZCBKYXZlcmlhbmEgc2UgY29tcHJvbWV0ZSBhIGluZGljYXIgc2llbXByZSBsYSBhdXRvcsOtYSBpbmNsdXllbmRvIGVsIG5vbWJyZSBkZWwgYXV0b3IgeSBsYSBmZWNoYSBkZSBwdWJsaWNhY2nDs24uCmUpICAgICAgQXV0b3Jpem8gKGFtb3MpIGEgbGEgVW5pdmVyc2lkYWQgcGFyYSBpbmNsdWlyIGxhIG9icmEgZW4gbG9zIMOtbmRpY2VzIHkgYnVzY2Fkb3JlcyBxdWUgZXN0aW1lbiBuZWNlc2FyaW9zIHBhcmEgcHJvbW92ZXIgc3UgZGlmdXNpw7NuLgpmKSAgICAgIEFjZXB0byAoYW1vcykgcXVlIGxhIFBvbnRpZmljaWEgVW5pdmVyc2lkYWQgSmF2ZXJpYW5hIHB1ZWRhIGNvbnZlcnRpciBlbCBkb2N1bWVudG8gYSBjdWFscXVpZXIgbWVkaW8gbyBmb3JtYXRvIHBhcmEgcHJvcMOzc2l0b3MgZGUgcHJlc2VydmFjacOzbiBkaWdpdGFsLgpnKSAgICAgIEF1dG9yaXpvIChhbW9zKSBxdWUgbGEgb2JyYSBzZWEgcHVlc3RhIGEgZGlzcG9zaWNpw7NuIGRlbCBww7pibGljbyBlbiBsb3MgdMOpcm1pbm9zIGF1dG9yaXphZG9zIGVuIGxvcyBsaXRlcmFsZXMgYW50ZXJpb3JlcyBiYWpvIGxvcyBsw61taXRlcyBkZWZpbmlkb3MgcG9yIGxhIHVuaXZlcnNpZGFkIGVuIGxhcyDigJxDb25kaWNpb25lcyBkZSB1c28gZGUgZXN0cmljdG8gY3VtcGxpbWllbnRv4oCdIGRlIGxvcyByZWN1cnNvcyBwdWJsaWNhZG9zIGVuIFJlcG9zaXRvcmlvIEluc3RpdHVjaW9uYWwgUFVKICwgY3V5byB0ZXh0byBjb21wbGV0byBzZSBwdWVkZSBjb25zdWx0YXIgZW4gaHR0cDovL3JlcG9zaXRvcnkuamF2ZXJpYW5hLmVkdS5jby8KClNJIEVMIERPQ1VNRU5UTyBTRSBCQVNBIEVOIFVOIFRSQUJBSk8gUVVFIEhBIFNJRE8gUEFUUk9DSU5BRE8gTyBBUE9ZQURPIFBPUiBVTkEgQUdFTkNJQSBPIFVOQSBPUkdBTklaQUNJw5NOLCBDT04gRVhDRVBDScOTTiBERSBMQSBQT05USUZJQ0lBIFVOSVZFUlNJREFEIEpBVkVSSUFOQSwgRUwgKExPUykgQVVUT1IoRVMpIEdBUkFOVElaQShNT1MpIFFVRSBTRSBIQSBDVU1QTElETyBDT04gTE9TIERFUkVDSE9TIFkgT0JMSUdBQ0lPTkVTIFJFUVVFUklET1MgUE9SIEVMIFJFU1BFQ1RJVk8gQ09OVFJBVE8gTyBBQ1VFUkRPLgo=