Framework para el desarrollo de aplicaciones WEB dinámicas en PHP

Este proyecto plantea un tipo de investigación aplicada, dado que se fundamenta en la utilización de los conocimientos para aplicarlos en un desarrollo en provecho de la sociedad, en este caso particular los estudiantes del programa de Ingeniería de Sistema de la Universidad Cooperativa de Colombia,...

Full description

Autores:
Núñez Jiménez, Jesús Darío
De la Cruz Camargo, María Fernanda
Tipo de recurso:
Trabajo de grado de pregrado
Fecha de publicación:
2019
Institución:
Universidad Cooperativa de Colombia
Repositorio:
Repositorio UCC
Idioma:
OAI Identifier:
oai:repository.ucc.edu.co:20.500.12494/12280
Acceso en línea:
https://hdl.handle.net/20.500.12494/12280
Palabra clave:
Construcción framework en PHP
Programa de software
Desarrollador aplicaciones web
Rights
openAccess
License
Atribución
id COOPER2_9981746a9e6c95b4a87a5dc44f19ba7d
oai_identifier_str oai:repository.ucc.edu.co:20.500.12494/12280
network_acronym_str COOPER2
network_name_str Repositorio UCC
repository_id_str
dc.title.spa.fl_str_mv Framework para el desarrollo de aplicaciones WEB dinámicas en PHP
title Framework para el desarrollo de aplicaciones WEB dinámicas en PHP
spellingShingle Framework para el desarrollo de aplicaciones WEB dinámicas en PHP
Construcción framework en PHP
Programa de software
Desarrollador aplicaciones web
title_short Framework para el desarrollo de aplicaciones WEB dinámicas en PHP
title_full Framework para el desarrollo de aplicaciones WEB dinámicas en PHP
title_fullStr Framework para el desarrollo de aplicaciones WEB dinámicas en PHP
title_full_unstemmed Framework para el desarrollo de aplicaciones WEB dinámicas en PHP
title_sort Framework para el desarrollo de aplicaciones WEB dinámicas en PHP
dc.creator.fl_str_mv Núñez Jiménez, Jesús Darío
De la Cruz Camargo, María Fernanda
dc.contributor.advisor.none.fl_str_mv Parrado Cortés, Giovanny David
Patiño Martínez, Francy Yaneth
dc.contributor.author.none.fl_str_mv Núñez Jiménez, Jesús Darío
De la Cruz Camargo, María Fernanda
dc.subject.spa.fl_str_mv Construcción framework en PHP
Programa de software
Desarrollador aplicaciones web
topic Construcción framework en PHP
Programa de software
Desarrollador aplicaciones web
description Este proyecto plantea un tipo de investigación aplicada, dado que se fundamenta en la utilización de los conocimientos para aplicarlos en un desarrollo en provecho de la sociedad, en este caso particular los estudiantes del programa de Ingeniería de Sistema de la Universidad Cooperativa de Colombia, sede Villavicencio se caracteriza porque busca la aplicación o utilización de los conocimientos que se adquieren, persiguiendo un fin directo e inmediato; esto a través del diseño de módulos para la construcción de un framework en PHP1, como herramienta de apoyo para un rápido y ágil desarrollo de aplicaciones dinámica, analizando las características y estructuras necesarias requeridas para el diseño de aplicaciones web dinámicas y donde se integre el paradigma de la programación orientada a objetos en el diseño de aplicaciones web dinámicas bajo la versión 5 del PHP. Con la elaboración de un Framework para PHP se pueden establecer códigos específicos para procedimientos de desarrollo particulares como el acceso a las bases de datos y la manipulación de la información. La finalidad del proyecto, es ofrecer al desarrollador de aplicaciones web un framework para PHP, el cual permita el desarrollo ágil de aplicaciones web, aportando un amplio conjunto de librerías y funcionalidades ya establecidas para ser utilizadas directamente, ahorrando tiempo de programación y logrando centrar al grupo desarrollador en el verdadero problema: la lógica del negocio, y no preocupándose por implementar funcionales de uso común como por ejemplo el proceso de registro, login de usuarios, entre otros. Para el desarrollo de este framework, se utilizará el modelo arquitectónico de desarrollo de software MVC, Modelo – Vista – Controlador, (Larman, 2008), el cual establece que el entorno a desarrollar debe tener estas tres capas; lo anterior hará que todo desarrollo a partir del framework propuesto, sean aplicaciones robustas y cumplan con métricas ingenieriles establecidas bajo el concepto de la teoría general de sistemas.
publishDate 2019
dc.date.accessioned.none.fl_str_mv 2019-07-07T14:44:59Z
dc.date.available.none.fl_str_mv 2019-07-07T14:44:59Z
dc.date.issued.none.fl_str_mv 2019-07-06
dc.type.none.fl_str_mv Trabajo de grado - 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
dc.type.version.none.fl_str_mv info:eu-repo/semantics/acceptedVersion
format http://purl.org/coar/resource_type/c_7a1f
status_str acceptedVersion
dc.identifier.uri.none.fl_str_mv https://hdl.handle.net/20.500.12494/12280
dc.identifier.bibliographicCitation.spa.fl_str_mv Núñez Jiménez, J. D. y Cruz Camargo, M. F. (2014). Framework para el desarrollo de aplicaciones web dinámicas en PHP (Tesis de pregrado). Universidad Cooperativa de Colombia, Villavicencio. Recuperado de http://repository.ucc.edu.co/handle/ucc/12280
url https://hdl.handle.net/20.500.12494/12280
identifier_str_mv Núñez Jiménez, J. D. y Cruz Camargo, M. F. (2014). Framework para el desarrollo de aplicaciones web dinámicas en PHP (Tesis de pregrado). Universidad Cooperativa de Colombia, Villavicencio. Recuperado de http://repository.ucc.edu.co/handle/ucc/12280
dc.relation.references.spa.fl_str_mv Abrahan Gutierrez Rodriguez, G. B. (2005). PHP5 a través de ejemplos. Alfaomega.
Almenara, J. C. (2007). Tecnología Educativa. Madrid: McGrawHill.
Balena, F. (2010). Programación avanzada con Microsoft Visual Basic .Net. Mexico: McGrawHill.
Castells, M. (2008). La era de la información. Alianza Editorial.
Foote, R. J. (1998). Journal of Object-Oriented Programming.
kendall, K. &. (2011). Análisis y Diseño de Sistemas. Mexico: Pearson.
Larman, C. (2008). UML y Patrones. España: Pearson.
dc.rights.license.none.fl_str_mv Atribución
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 Atribución
http://purl.org/coar/access_right/c_abf2
eu_rights_str_mv openAccess
dc.format.extent.spa.fl_str_mv 93 p.
dc.publisher.spa.fl_str_mv Universidad Cooperativa de Colombia, Facultad de Ingenierías, Ingeniería de Sistemas, Villavicencio
dc.publisher.program.spa.fl_str_mv Ingeniería de Sistemas
dc.publisher.place.spa.fl_str_mv Villavicencio
institution Universidad Cooperativa de Colombia
bitstream.url.fl_str_mv https://repository.ucc.edu.co/bitstreams/255933ca-d525-4aae-add1-20ca8c0cf734/download
https://repository.ucc.edu.co/bitstreams/78d803e6-e8bd-4f74-8807-e268fadacaa6/download
https://repository.ucc.edu.co/bitstreams/198cd121-19f9-44dc-bfc9-96733f55690a/download
https://repository.ucc.edu.co/bitstreams/239e912f-5448-4bf5-a899-6d3c47f0a949/download
https://repository.ucc.edu.co/bitstreams/5661b15c-8938-4fdb-89ac-9fba093d28f3/download
https://repository.ucc.edu.co/bitstreams/be7fccfa-11d9-4284-8999-4a59d9cf22b4/download
https://repository.ucc.edu.co/bitstreams/145d1b2f-7b7f-40a2-8036-e2b4618cfef4/download
bitstream.checksum.fl_str_mv a7c992f225478cb10b2a0c46ce95ddbd
a44e9d94d456ff49c7968329555021ba
3bce4f7ab09dfc588f126e1e36e98a45
c9cbc2190dd69c1977879a2cf96cf9d5
f6ba72356f885635938b87ddeba54f1c
4b6970f6e8769b0cc5e27c9f2a43ee5d
8d1b69dd9bdc9df4a8073c7a8193c7af
bitstream.checksumAlgorithm.fl_str_mv MD5
MD5
MD5
MD5
MD5
MD5
MD5
repository.name.fl_str_mv Repositorio Institucional Universidad Cooperativa de Colombia
repository.mail.fl_str_mv bdigital@metabiblioteca.com
_version_ 1814247261534683136
spelling Parrado Cortés, Giovanny David Patiño Martínez, Francy YanethNúñez Jiménez, Jesús DaríoDe la Cruz Camargo, María Fernanda2019-07-07T14:44:59Z2019-07-07T14:44:59Z2019-07-06https://hdl.handle.net/20.500.12494/12280Núñez Jiménez, J. D. y Cruz Camargo, M. F. (2014). Framework para el desarrollo de aplicaciones web dinámicas en PHP (Tesis de pregrado). Universidad Cooperativa de Colombia, Villavicencio. Recuperado de http://repository.ucc.edu.co/handle/ucc/12280Este proyecto plantea un tipo de investigación aplicada, dado que se fundamenta en la utilización de los conocimientos para aplicarlos en un desarrollo en provecho de la sociedad, en este caso particular los estudiantes del programa de Ingeniería de Sistema de la Universidad Cooperativa de Colombia, sede Villavicencio se caracteriza porque busca la aplicación o utilización de los conocimientos que se adquieren, persiguiendo un fin directo e inmediato; esto a través del diseño de módulos para la construcción de un framework en PHP1, como herramienta de apoyo para un rápido y ágil desarrollo de aplicaciones dinámica, analizando las características y estructuras necesarias requeridas para el diseño de aplicaciones web dinámicas y donde se integre el paradigma de la programación orientada a objetos en el diseño de aplicaciones web dinámicas bajo la versión 5 del PHP. Con la elaboración de un Framework para PHP se pueden establecer códigos específicos para procedimientos de desarrollo particulares como el acceso a las bases de datos y la manipulación de la información. La finalidad del proyecto, es ofrecer al desarrollador de aplicaciones web un framework para PHP, el cual permita el desarrollo ágil de aplicaciones web, aportando un amplio conjunto de librerías y funcionalidades ya establecidas para ser utilizadas directamente, ahorrando tiempo de programación y logrando centrar al grupo desarrollador en el verdadero problema: la lógica del negocio, y no preocupándose por implementar funcionales de uso común como por ejemplo el proceso de registro, login de usuarios, entre otros. Para el desarrollo de este framework, se utilizará el modelo arquitectónico de desarrollo de software MVC, Modelo – Vista – Controlador, (Larman, 2008), el cual establece que el entorno a desarrollar debe tener estas tres capas; lo anterior hará que todo desarrollo a partir del framework propuesto, sean aplicaciones robustas y cumplan con métricas ingenieriles establecidas bajo el concepto de la teoría general de sistemas.1. Análisis -- 1.1. Descripción general de la empresa -- Misión -- Visión -- 1.1.1. Localización -- 1.1.2. Organización de la empresa -- 1.1.3. Sistemas de información Actuales -- 1.2. Antecedentes -- 1.3. Sistema actual -- 1.3.1. Restricciones del sistema actual -- 1.4. Diagnostico -- 1.4.1. Diagnóstico de la Infraestructura Actual -- 1.5. Plan de sistemas -- 1.5.1. Requerimientos Globales -- 1.5.2. Factores Claves del éxito -- 1.6. Organización de los recursos computacionales -- 1.6.1. Soluciones Propuestas -- 1.6.2. Limitaciones del nuevo sistema -- 1.7. Metodología ingenieril -- 2. Diseño de sistema -- 2.1. Conceptos básicos tecnológicos y técnicos -- 2.2. Documento de Diseño de sistema -- 2.2.1. Descripción técnica del sistema -- 2.2.2. Alcances y Limitaciones -- 2.2.3. Configuración del software y Hardware -- 2.3. Diseño de interfaz web – 3. Análisis económico -- 4. Conclusiones -- 5. Recomendaciones -- Bibliografía -- Anexo a -- Anexo b.jesus.nunez@campusucc.edu.comaria.delacruz@campusucc.edu.co93 p.Universidad Cooperativa de Colombia, Facultad de Ingenierías, Ingeniería de Sistemas, VillavicencioIngeniería de SistemasVillavicencioConstrucción framework en PHPPrograma de softwareDesarrollador aplicaciones webFramework para el desarrollo de aplicaciones WEB dinámicas en PHPTrabajo de grado - Pregradohttp://purl.org/coar/resource_type/c_7a1finfo:eu-repo/semantics/bachelorThesisinfo:eu-repo/semantics/acceptedVersionAtribucióninfo:eu-repo/semantics/openAccesshttp://purl.org/coar/access_right/c_abf2Abrahan Gutierrez Rodriguez, G. B. (2005). PHP5 a través de ejemplos. Alfaomega.Almenara, J. C. (2007). Tecnología Educativa. Madrid: McGrawHill.Balena, F. (2010). Programación avanzada con Microsoft Visual Basic .Net. Mexico: McGrawHill.Castells, M. (2008). La era de la información. Alianza Editorial.Foote, R. J. (1998). Journal of Object-Oriented Programming.kendall, K. &. (2011). Análisis y Diseño de Sistemas. Mexico: Pearson.Larman, C. (2008). UML y Patrones. España: Pearson.PublicationORIGINAL2014_framework_desarrollo_aplicaciones_.pdf2014_framework_desarrollo_aplicaciones_.pdfTrabajo de gradoapplication/pdf2667397https://repository.ucc.edu.co/bitstreams/255933ca-d525-4aae-add1-20ca8c0cf734/downloada7c992f225478cb10b2a0c46ce95ddbdMD512014_framework_desarrollo_aplicaciones.pdf2014_framework_desarrollo_aplicaciones.pdfFormato pagina WEBapplication/pdf245970https://repository.ucc.edu.co/bitstreams/78d803e6-e8bd-4f74-8807-e268fadacaa6/downloada44e9d94d456ff49c7968329555021baMD52LICENSElicense.txtlicense.txttext/plain; charset=utf-84334https://repository.ucc.edu.co/bitstreams/198cd121-19f9-44dc-bfc9-96733f55690a/download3bce4f7ab09dfc588f126e1e36e98a45MD53THUMBNAIL2014_framework_desarrollo_aplicaciones_.pdf.jpg2014_framework_desarrollo_aplicaciones_.pdf.jpgGenerated Thumbnailimage/jpeg2961https://repository.ucc.edu.co/bitstreams/239e912f-5448-4bf5-a899-6d3c47f0a949/downloadc9cbc2190dd69c1977879a2cf96cf9d5MD542014_framework_desarrollo_aplicaciones.pdf.jpg2014_framework_desarrollo_aplicaciones.pdf.jpgGenerated Thumbnailimage/jpeg6070https://repository.ucc.edu.co/bitstreams/5661b15c-8938-4fdb-89ac-9fba093d28f3/downloadf6ba72356f885635938b87ddeba54f1cMD55TEXT2014_framework_desarrollo_aplicaciones_.pdf.txt2014_framework_desarrollo_aplicaciones_.pdf.txtExtracted texttext/plain101431https://repository.ucc.edu.co/bitstreams/be7fccfa-11d9-4284-8999-4a59d9cf22b4/download4b6970f6e8769b0cc5e27c9f2a43ee5dMD562014_framework_desarrollo_aplicaciones.pdf.txt2014_framework_desarrollo_aplicaciones.pdf.txtExtracted texttext/plain8https://repository.ucc.edu.co/bitstreams/145d1b2f-7b7f-40a2-8036-e2b4618cfef4/download8d1b69dd9bdc9df4a8073c7a8193c7afMD5720.500.12494/12280oai:repository.ucc.edu.co:20.500.12494/122802024-08-10 22:13:57.07open.accesshttps://repository.ucc.edu.coRepositorio Institucional Universidad Cooperativa de Colombiabdigital@metabiblioteca.comVU5JVkVSU0lEQUQgQ09PUEVSQVRJVkEgREUgQ09MT01CSUEKUkVQT1NJVE9SSU9TIElOU1RJVFVDSU9OQUxFUwpMSUNFTkNJQSBERSBVU08KClBvciBtZWRpbyBkZWwgcHJlc2VudGUgZG9jdW1lbnRvLCBlbCBBdXRvcihlcyksIG1heW9yIChlcykgZGUgZWRhZCwgcXVpZW4gZW4gYWRlbGFudGUgc2UgZGVub21pbmFyw6EgZWwgQVVUT1IsIGNvbmZpZXJlIGEgbGEgVU5JVkVSU0lEQUQgQ09PUEVSQVRJVkEgREUgQ09MT01CSUEsIGNvbiBOSVQuIDg2MC0wMjk5MjQtNywgdW5hIExJQ0VOQ0lBIERFIFVTTyBkZSBvYnJhLCBiYWpvIGxhcyBzaWd1aWVudGVzIGNvbmRpY2lvbmVzLgoKQ0zDgVVTVUxBUwoKUFJJTUVSQS4gT2JqZXRvLiBFTCBBVVRPUiBwb3IgZXN0ZSBhY3RvIGF1dG9yaXphIGxhIHV0aWxpemFjacOzbiBkZSBsYSBvYnJhLCBkZSBjb25mb3JtaWRhZCBjb24gbG8gZXN0aXB1bGFkbyBhIGNvbnRpbnVhY2nDs246IAoKKGEpIFBhcmEgZWZlY3RvcyBkZSBsYSBwcmVzZW50ZSBsaWNlbmNpYSBzZSBhdXRvcml6YSBsYSByZXByb2R1Y2Npw7NuIGRlIGxhIG9icmEgYW50ZXJpb3JtZW50ZSBjaXRhZGEsIGxhIGN1YWwgc2UgYWxvamFyw6EgZW4gZm9ybWF0byBkaWdpdGFsIGVuIGxhcyBwbGF0YWZvcm1hcyBvIHJlcG9zaXRvcmlvcyBhZG1pbmlzdHJhZG9zIHBvciBsYSBVTklWRVJTSURBRCBvIGVuIG90cm8gdGlwbyBkZSByZXBvc2l0b3Jpb3MgZXh0ZXJub3MgbyBww6FnaW5hcyB3ZWIgZXNjb2dpZG9zIHBvciBsYSBVTklWRVJTSURBRCwgcGFyYSBmaW5lcyBkZSBkaWZ1c2nDs24geSBkaXZ1bGdhY2nDs24uIEFkaWNpb25hbG1lbnRlLCBzZSBhdXRvcml6YSBhIHF1ZSBsb3MgdXN1YXJpb3MgaW50ZXJub3MgeSBleHRlcm5vcyBkZSBkaWNoYXMgcGxhdGFmb3JtYXMgbyByZXBvc2l0b3Jpb3MgcmVwcm9kdXpjYW4gbyBkZXNjYXJndWVuIGxhIG9icmEsIHNpbiDDoW5pbW8gZGUgbHVjcm8sIHBhcmEgZmluZXMgcHJpdmFkb3MsIGVkdWNhdGl2b3MgbyBhY2Fkw6ltaWNvczsgc2llbXByZSB5IGN1YW5kbyBubyBzZSB2aW9sZW4gYWN1ZXJkb3MgY29uIGVkaXRvcmVzLCBwZXJpb2RvcyBkZSBlbWJhcmdvIG8gYWN1ZXJkb3MgZGUgY29uZmlkZW5jaWFsaWRhZCBxdWUgYXBsaXF1ZW4uCgooYikgU2UgYXV0b3JpemEgbGEgY29tdW5pY2FjacOzbiBww7pibGljYSB5IGxhIHB1ZXN0YSBhIGRpc3Bvc2ljacOzbiBkZSBsYSBvYnJhIG1lbmNpb25hZGEsIGVuIGFjY2VzbyBhYmllcnRvLCBwYXJhIHN1IHV0aWxpemFjacOzbiBlbiBsYXMgcGxhdGFmb3JtYXMgbyByZXBvc2l0b3Jpb3MgYWRtaW5pc3RyYWRvcyBwb3IgbGEgVU5JVkVSU0lEQUQuCgooYykgTG8gYW50ZXJpb3IgZXN0YXLDoSBzdWpldG8gYSBsYXMgZGVmaW5pY2lvbmVzIGNvbnRlbmlkYXMgZW4gbGEgRGVjaXNpw7NuIEFuZGluYSAzNTEgZGUgMTk5MyB5IGxhIExleSAyMyBkZSAxOTgyLgoKClNFR1VOREEuIE9yaWdpbmFsaWRhZCB5IHJlY2xhbWFjaW9uZXMuIEVsIEFVVE9SIGRlY2xhcmEgcXVlIGxhIE9CUkEgZXMgb3JpZ2luYWwgeSBxdWUgZXMgZGUgc3UgY3JlYWNpw7NuIGV4Y2x1c2l2YSwgbm8gZXhpc3RpZW5kbyBpbXBlZGltZW50byBkZSBjdWFscXVpZXIgbmF0dXJhbGV6YSAoZW1iYXJnb3MsIHVzbyBkZSBtYXRlcmlhbCBwcm90ZWdpZG8gcG9yIGRlcmVjaG9zIGRlIGF1dG9yKSBwYXJhIGxhIGNvbmNlc2nDs24gZGUgbG9zIGRlcmVjaG9zIHByZXZpc3RvcyBlbiBlc3RlIGFjdWVyZG8uIEVsIEFVVE9SIHJlc3BvbmRlcsOhIHBvciBjdWFscXVpZXIgYWNjacOzbiBkZSByZWl2aW5kaWNhY2nDs24sIHBsYWdpbyB1IG90cmEgY2xhc2UgZGUgcmVjbGFtYWNpw7NuIHF1ZSBhbCByZXNwZWN0byBwdWRpZXJhIHNvYnJldmVuaXIuCgpURVJDRVJBLiBDb250cmFwcmVzdGFjacOzbi4gRWwgQVVUT1IgYXV0b3JpemEgYSBxdWUgc3Ugb2JyYSBzZWEgdXRpbGl6YWRhIGRlIGNvbmZvcm1pZGFkIGNvbiBsYSBjbMOhdXN1bGEgUFJJTUVSQSBkZSBmb3JtYSBncmF0dWl0YSwgZXMgZGVjaXIsIHF1ZSBsYSB1dGlsaXphY2nDs24gZGUgbGEgbWlzbWEgbm8gZ2VuZXJhIG5pbmfDum4gcGFnbyBvIHJlZ2Fsw61hcyBlbiBmYXZvciBkZSBlc3RlLgoKQ1VBUlRBLiBUaXR1bGFyaWRhZCBkZSBkZXJlY2hvcy4gRWwgcHJlc2VudGUgY29udHJhdG8gbm8gdHJhbnNmaWVyZSBsYSB0aXR1bGFyaWRhZCBkZSBsb3MgZGVyZWNob3MgcGF0cmltb25pYWxlcyBzb2JyZSBsYXMgb2JyYXMgYW50ZXJpb3JtZW50ZSBtZW5jaW9uYWRhcyBhIGxhIFVOSVZFUlNJREFELiDDmm5pY2FtZW50ZSBoYWNlIHJlbGFjacOzbiBhIHVuYSBsaWNlbmNpYSBubyBleGNsdXNpdmEgZW4gbG9zIHTDqXJtaW5vcyB5IGNvbmRpY2lvbmVzIGFudGVyaW9ybWVudGUgcGFjdGFkb3MuCgpRVUlOVEEuIENyw6lkaXRvcy4gTGEgVU5JVkVSU0lEQUQgc2UgY29tcHJvbWV0ZSBhIGRhciBhbCBBVVRPUiwgZWwgcmVjb25vY2ltaWVudG8gZGVudHJvIGNhZGEgZm9ybWEgZGUgdXRpbGl6YWNpw7NuIGVuIGxhIG9icmEuIExvcyBjcsOpZGl0b3MgZGViZW4gZmlndXJhciBlbiBjYWRhIHVubyBkZSBsb3MgZm9ybWF0b3MgbyByZWdpc3Ryb3MgZGUgcHVibGljYWNpw7NuLiBObyBjb25zdGl0dWlyw6EgdW5hIHZpb2xhY2nDs24gYSBsb3MgZGVyZWNob3MgbW9yYWxlcyBkZWwgYXV0b3IgbGEgbm8gcmVwcm9kdWNjacOzbiwgY29tdW5pY2FjacOzbiBvIGRlbcOhcyB1dGlsaXphY2lvbmVzIGRlIGxhIG9icmEuIExhIHV0aWxpemFjacOzbiBvIG5vIGRlIGxhIG9icmEsIGFzw60gY29tbyBzdSBmb3JtYSBkZSB1dGlsaXphY2nDs24gc2Vyw6EgZmFjdWx0YWQgZXhjbHVzaXZhIGRlIGxhIFVOSVZFUlNJREFELgogClNFWFRBLiBEdXJhY2nDs24geSB0ZXJyaXRvcmlvLiBMYSBwcmVzZW50ZSBsaWNlbmNpYSBkZSB1c28gcXVlIHNlIG90b3JnYSBhIGZhdm9yIGRlIGxhIFVOSVZFUlNJREFEIHRlbmRyw6EgdW5hIGR1cmFjacOzbiBlcXVpdmFsZW50ZSBhbCB0w6lybWlubyBkZSBwcm90ZWNjacOzbiBsZWdhbCBkZSBsYSBvYnJhIHkgcGFyYSB0b2RvcyBsb3MgcGHDrXNlcyBkZWwgbXVuZG8uCgpTw4lQVElNQS4gVXNvIGRlIENyZWF0aXZlIENvbW1vbnMuIEVsIEFVVE9SIGF1dG9yaXphcsOhIGxhIGRpZnVzacOzbiBkZSBzdSBjb250ZW5pZG8gYmFqbyB1bmEgbGljZW5jaWEgQ3JlYXRpdmUgQ29tbW9ucyBhdHJpYnVjacOzbiA0LjAgaW50ZXJuYWNpb25hbCwgcXVlIGRlYmVyw6EgaW5jbHVpcnNlIGVuIGVsIGNvbnRlbmlkby4gCgpPQ1RBVkEuIERlcmVjaG8gZGUgZXhjbHVzacOzbi4gQ2FkYSBhdXRvciBwdWVkZSBpbmRpY2FyIGVuIGVsIG1vbWVudG8gZGUgZGVww7NzaXRvIGRlbCBjb250ZW5pZG8gcXVlIGVsIHRleHRvIGNvbXBsZXRvIGRlIGxhIHByb2R1Y2Npw7NuIGFjYWTDqW1pY2EgbyBjaWVudMOtZmljYSBubyBlc3RlIGNvbiBhY2Nlc28gYWJpZXJ0byBlbiBlbCBSZXBvc2l0b3JpbyBJbnN0aXR1Y2lvbmFsIHBvciBtb3Rpdm9zIGRlIGNvbmZpZGVuY2lhbGlkYWQsIHBvcnF1ZSBzZSBlbmN1ZW50cmUgZW4gdsOtYXMgZGUgb2J0ZW5lciB1biBkZXJlY2hvIGRlIHByb3BpZWRhZCBpbmR1c3RyaWFsIG8gZXhpc3RpciBhY3VlcmRvcyBwcmV2aW9zIGNvbiB0ZXJjZXJvcyAoZWRpdG9yaWFsZXMsIHJldmlzdGFzIGNpZW50w61maWNhcywgb3RyYXMgaW5zdGl0dWNpb25lcykuIEVsIGF1dG9yIHNlIGNvbXByb21ldGUgYSBkZXBvc2l0YXIgbG9zIG1ldGFkYXRvcyBlIGluZm9ybWFyIGVsIHRpZW1wbyBkZSBlbWJhcmdvIGR1cmFudGUgZWwgY3VhbCBlbCB0ZXh0byBjb21wbGV0byB0ZW5kcsOhIGFjY2VzbyByZXN0cmluZ2lkby4gCgpOT1ZFTkEuIEVsIEFVVE9SIGFsIGFjZXB0YXIgZXN0YSBsaWNlbmNpYSBhZHVjZSBxdWUgZXN0YSBwcm9kdWNjacOzbiBzZSBkZXNhcnJvbGzDsyBlbiBlbCBwZXJpb2RvIGVuIHF1ZSBzZSBlbmN1ZW50cmEgY29uIHbDrW5jdWxvcyBjb24gTGEgVW5pdmVyc2lkYWQuCgpEw4lDSU1BLiBOb3JtYXMgYXBsaWNhYmxlcy4gUGFyYSBsYSBpbnRlcnByZXRhY2nDs24geSBjdW1wbGltaWVudG8gZGVsIHByZXNlbnRlIGFjdWVyZG8gbGFzIHBhcnRlcyBzZSBzb21ldGVuIGEgbGEgRGVjaXNpw7NuIEFuZGluYSAzNTEgZGUgMTk5MywgbGEgTGV5IDIzIGRlIDE5ODIgeSBkZW3DoXMgbm9ybWFzIGFwbGljYWJsZXMgZGUgQ29sb21iaWEuIEFkZW3DoXMsIGEgbGFzIG5vcm1hcyBJbnN0aXR1Y2lvbmFsZXMgcXVlIGFwbGlxdWVuLgoKTGEgcHJlc2VudGUgbGljZW5jaWEgc2UgYXV0b3JpemEgZW4gbGEgZmVjaGEgZGUgcHVibGljYWNpw7NuIGVuIGxvcyByZXBvc2l0b3Jpb3MgaW5zdGl0dWNpb25hbGVzLgo=