Administración e implementación de contenedores en un proveedor de Cloud pública

En los últimos años la computación en la nube ha sido una de las principales tecnologías para el despliegue de infraestructura tecnología por parte de las empresas, las cuales ha solicitado servicios de cómputo remoto para prestar sus servicios por medio de proveedores de nube pública. Para lograr q...

Full description

Autores:
Parrado Carmona, Andrés Felipe
Tipo de recurso:
Trabajo de grado de pregrado
Fecha de publicación:
2021
Institución:
Universidad Militar Nueva Granada
Repositorio:
Repositorio UMNG
Idioma:
spa
OAI Identifier:
oai:repository.unimilitar.edu.co:10654/40564
Acceso en línea:
http://hdl.handle.net/10654/40564
Palabra clave:
Kubernetes
Containers
Cloud computing
IaaS
PaaS
COMPUTACION EN LA NUBE
ARQUITECTURA EN LA NUBE
PROCESAMIENTO ELECTRONICO DE DATOS - PROCESAMIENTO DISTRIBUIDO
Kubernetes
Contenedores
IaaS
PaaS
Nube computacional
Rights
openAccess
License
http://creativecommons.org/licenses/by-nc-nd/4.0/
id UNIMILTAR2_db08b836f7b4e508b8d6272374e6ca34
oai_identifier_str oai:repository.unimilitar.edu.co:10654/40564
network_acronym_str UNIMILTAR2
network_name_str Repositorio UMNG
repository_id_str
dc.title.spa.fl_str_mv Administración e implementación de contenedores en un proveedor de Cloud pública
dc.title.translated.spa.fl_str_mv Container management and deployment in a public Cloud provider
title Administración e implementación de contenedores en un proveedor de Cloud pública
spellingShingle Administración e implementación de contenedores en un proveedor de Cloud pública
Kubernetes
Containers
Cloud computing
IaaS
PaaS
COMPUTACION EN LA NUBE
ARQUITECTURA EN LA NUBE
PROCESAMIENTO ELECTRONICO DE DATOS - PROCESAMIENTO DISTRIBUIDO
Kubernetes
Contenedores
IaaS
PaaS
Nube computacional
title_short Administración e implementación de contenedores en un proveedor de Cloud pública
title_full Administración e implementación de contenedores en un proveedor de Cloud pública
title_fullStr Administración e implementación de contenedores en un proveedor de Cloud pública
title_full_unstemmed Administración e implementación de contenedores en un proveedor de Cloud pública
title_sort Administración e implementación de contenedores en un proveedor de Cloud pública
dc.creator.fl_str_mv Parrado Carmona, Andrés Felipe
dc.contributor.advisor.none.fl_str_mv González Delacalle, Luis Fernando
dc.contributor.author.none.fl_str_mv Parrado Carmona, Andrés Felipe
dc.subject.keywords.spa.fl_str_mv Kubernetes
Containers
Cloud computing
IaaS
PaaS
topic Kubernetes
Containers
Cloud computing
IaaS
PaaS
COMPUTACION EN LA NUBE
ARQUITECTURA EN LA NUBE
PROCESAMIENTO ELECTRONICO DE DATOS - PROCESAMIENTO DISTRIBUIDO
Kubernetes
Contenedores
IaaS
PaaS
Nube computacional
dc.subject.armarc.spa.fl_str_mv COMPUTACION EN LA NUBE
ARQUITECTURA EN LA NUBE
PROCESAMIENTO ELECTRONICO DE DATOS - PROCESAMIENTO DISTRIBUIDO
dc.subject.proposal.spa.fl_str_mv Kubernetes
Contenedores
IaaS
PaaS
Nube computacional
description En los últimos años la computación en la nube ha sido una de las principales tecnologías para el despliegue de infraestructura tecnología por parte de las empresas, las cuales ha solicitado servicios de cómputo remoto para prestar sus servicios por medio de proveedores de nube pública. Para lograr que los servicios se han más eficientes cuando son desplegados en la nube, los proveedores de nube pública optaron por integrar la nube nativa que ha permitido desplegar tecnologías de innovación, como los contenedores que optimizan y reducen el costo de la infraestructura desplegada en la nube pública. Los proveedores de nube pública tiene los mismos modelos de servicios, pero con nombres diferentes, permitiendo desplegar el mismo tipo de aplicativo en cualquier proveedor. La gran mayoría de los proveedores otorga un crédito en dólares estadounidenses para utilizar los servicios de su nube totalmente gratis. Cada uno mantiene políticas de uso del crédito que indican un tiempo límite de uso o que servicios no se cubre por el crédito. La característica del crédito aplicable al modelo de servicios para desplegar contenedores logrará ser el factor de selección del proveedor indicador. La red donde están desplegados los recursos de la nube del proveedor tiene una nomenclatura especifica para poder reconocer donde están ubicados los recursos, permitiendo seleccionar la región y zona donde serán reservados en el momento de solicitar los recursos. Comprender la red del proveedor permitirá desplegar óptimamente los recursos teniendo en cuenta en donde se despliega y desde donde se solicita el servicio.
publishDate 2021
dc.date.issued.none.fl_str_mv 2021-10-08
dc.date.accessioned.none.fl_str_mv 2022-05-11T15:39:10Z
dc.date.available.none.fl_str_mv 2022-05-11T15:39:10Z
dc.type.local.spa.fl_str_mv Tesis/Trabajo de grado - Monografía - Pregrado
dc.type.driver.spa.fl_str_mv info:eu-repo/semantics/bachelorThesis
dc.type.coar.*.fl_str_mv http://purl.org/coar/resource_type/c_7a1f
format http://purl.org/coar/resource_type/c_7a1f
dc.identifier.uri.none.fl_str_mv http://hdl.handle.net/10654/40564
dc.identifier.instname.spa.fl_str_mv instname:Universidad Militar Nueva Granada
dc.identifier.reponame.spa.fl_str_mv reponame:Repositorio Institucional Universidad Militar Nueva Granada
dc.identifier.repourl.spa.fl_str_mv repourl:https://repository.unimilitar.edu.co
url http://hdl.handle.net/10654/40564
identifier_str_mv instname:Universidad Militar Nueva Granada
reponame:Repositorio Institucional Universidad Militar Nueva Granada
repourl:https://repository.unimilitar.edu.co
dc.language.iso.spa.fl_str_mv spa
language spa
dc.relation.references.spa.fl_str_mv Gibson, J., Rondeau, R., Eveleigh, D., & Tan, Q. (2012, November). Benefits and challenges of three cloud computing service models. In 2012 Fourth International Confe rence on Computational Aspects of Social Networks (CASoN) (pp. 198-205). IEEE. https: //ieeexplore.ieee.org/abstract/document/6412402
G.ST.02 Guía de Computación en la nube - Ministerio de Tecnologías de la Información y las Comunicaciones, Mintic.gov.co, 2017. https://www.mintic.gov.co/arquitecturati/ 630/w3-article-75554.html
Mohammadi, S., & Mohammadi, A. (2014). Effect of cloud computing in accounting and comparison with the traditional model. Research Journal of Finance and Accounting, 5(23), 104-114. https://core.ac.uk/download/pdf/234630329.pdf
Gannon, D., Barga, R., & Sundaresan, N. (2017). Cloud-native applications. IEEE Cloud Computing, 4(5), 16-21. https://ieeexplore.ieee.org/abstract/document/8125550
B. Burns, "What is a container?", azure.microsoft.com, 2019. https://azure.microsoft. com/en-us/overview/what-is-a-container/#overview.
Brewer, E. A. (2015, August). Kubernetes and the path to cloud native. In Proceedings of the sixth ACM symposium on cloud computing (pp. 167-167). https://dl.acm.org/doi/ abs/10.1145/2806777.2809955
Peter M. Mell, Timothy Grance "The NIST Definition of Cloud Computing", Special Pu blication (NIST SP), 2011. https://www.nist.gov/publications/nist-definition-cloud-computing
Google Cloud "Geografía y regiones", Información general de Google Cloud, 2020. https://cloud.google.com/docs/geography-and-regions
Google Cloud "Productos", Compute Engine, 2020. https://cloud.google.com/ compute?hl=es#section-5
Google Cloud "Serverless computing", Documentación de Google App Engine, 2020. https://cloud.google.com/compute?hl=es#section-5
Google Cloud "Kubernetes Engine", Descripción general de GKE, 2020. https:// cloud.google.com/kubernetes-engine/docs/concepts/kubernetes-engine-overview? hl=es
Google Cloud "Kubernetes Engine", Concepto de Pod en Kubernetes Engine, 2020. https://cloud.google.com/kubernetes-engine/docs/concepts/pod
Google Cloud "Kubernetes Engine", Clústeres (Arquitectura de clúster), 2020. https: //cloud.google.com/kubernetes-engine/docs/concepts/cluster-architecture
Ben-Kiki, O., Evans, C., & Ingerson, B. (2009). Yaml ain’t markup language. version 1.1. Working Draft 2008-05, 11.
Man7.org. 2021. namespaces(7) - Linux manual page. [online] https://man7.org/ linux/man-pages/man7/namespaces.7.html
Buchanan, S., Rangama, J., & Bellavance, N. (2020). kubectl Overview. In Introducing Azure Kubernetes Service (pp. 51-62). Apress, Berkeley, CA.
kubernetes.io,Documentación (Deployment), 2020. https://kubernetes.io/es/ docs/concepts/workloads/controllers/deployment/
Sayfan, G. (2019). Hands-On Microservices with Kubernetes: Build, deploy, and manage scalable microservices on Kubernetes (pp 21). Packt Publishing Ltd. https://books.google.com.co/books
B. Yang, A. Sailer, S. Jain, A. E. Tomala-Reyes, M. Singh and A. Ramnath, "Service Dis covery Based Blue-Green Deployment Technique in Cloud Native Environments,"2018 IEEE In ternational Conference on Services Computing (SCC), 2018, pp. 185-192, doi: 10.1109/SCC.2018.00031. https://ieeexplore.ieee.org/abstract/document/8456417
kubernetes.io,Documentación (Deployment), 2020. https://kubernetes.io/es/ docs/concepts/workloads/controllers/deployment/
Galantino, S. (2020). Enabling Job-aware scheduling on Kubernetes clusters (Doctoral dissertation, Politecnico di Torino). https://webthesis.biblio.polito.it/15946/
Google Cloud "Kubernetes Engine",Clústeres (Guias, Ejecutar un trabajo), 2020. https: //cloud.google.com/kubernetes-engine/docs/how-to/jobs
kubernetes.io, Documentación (Jobs), 2020. https://kubernetes.io/docs/concepts/ workloads/controllers/job/
Google Cloud "Google Kubernetes Engine (GKE)", Clústeres (Guias, Ejecutar un Cron Job), 2020. https://cloud.google.com/kubernetes-engine/docs/how-to/cronjobs? hl=es-419
Wang, M., Zhang, D., & Wu, B. (2020, June). A Cluster Autoscaler Based on Multiple Node Types in Kubernetes. In 2020 IEEE 4th Information Technology, Networking, Elec tronic and Automation Control Conference (ITNEC) (Vol. 1, pp. 575-579). IEEE. https: //ieeexplore.ieee.org/abstract/document/9084706
Liffredo, D. (2020). Analysis and Benchmarking of Kubernetes Networking (Doctoral dissertation, Politecnico di Torino). https://webthesis.biblio.polito.it/15948
dc.rights.uri.*.fl_str_mv http://creativecommons.org/licenses/by-nc-nd/4.0/
dc.rights.accessrights.spa.fl_str_mv info:eu-repo/semantics/openAccess
dc.rights.accessrights.*.fl_str_mv http://purl.org/coar/access_right/c_abf2
dc.rights.creativecommons.spa.fl_str_mv Attribution-NonCommercial-NoDerivatives 4.0 International
dc.rights.local.spa.fl_str_mv Acceso abierto
rights_invalid_str_mv http://creativecommons.org/licenses/by-nc-nd/4.0/
http://purl.org/coar/access_right/c_abf2
Attribution-NonCommercial-NoDerivatives 4.0 International
Acceso abierto
eu_rights_str_mv openAccess
dc.format.mimetype.spa.fl_str_mv applicaction/pdf
dc.coverage.sede.spa.fl_str_mv Calle 100
dc.publisher.program.spa.fl_str_mv Ingeniería en Telecomunicaciones
dc.publisher.faculty.spa.fl_str_mv Facultad de Ingeniería
dc.publisher.grantor.spa.fl_str_mv Universidad Militar Nueva Granada
institution Universidad Militar Nueva Granada
bitstream.url.fl_str_mv http://repository.unimilitar.edu.co/bitstream/10654/40564/1/ParradoCarmonaAndresFelipe2021.pdf
http://repository.unimilitar.edu.co/bitstream/10654/40564/2/license.txt
http://repository.unimilitar.edu.co/bitstream/10654/40564/3/ParradoCarmonaAndresFelipe2021.pdf.jpg
bitstream.checksum.fl_str_mv 5ae7971cc9eae271bcaefdcf73fd7550
a609d7e369577f685ce98c66b903b91b
cbce04d93f1319f9a63439eab8784e04
bitstream.checksumAlgorithm.fl_str_mv MD5
MD5
MD5
repository.name.fl_str_mv Repositorio Institucional UMNG
repository.mail.fl_str_mv bibliodigital@unimilitar.edu.co
_version_ 1837098466282569728
spelling González Delacalle, Luis FernandoParrado Carmona, Andrés FelipeIngeniero en Telecomunicaciones2022-05-11T15:39:10Z2022-05-11T15:39:10Z2021-10-08http://hdl.handle.net/10654/40564instname:Universidad Militar Nueva Granadareponame:Repositorio Institucional Universidad Militar Nueva Granadarepourl:https://repository.unimilitar.edu.coEn los últimos años la computación en la nube ha sido una de las principales tecnologías para el despliegue de infraestructura tecnología por parte de las empresas, las cuales ha solicitado servicios de cómputo remoto para prestar sus servicios por medio de proveedores de nube pública. Para lograr que los servicios se han más eficientes cuando son desplegados en la nube, los proveedores de nube pública optaron por integrar la nube nativa que ha permitido desplegar tecnologías de innovación, como los contenedores que optimizan y reducen el costo de la infraestructura desplegada en la nube pública. Los proveedores de nube pública tiene los mismos modelos de servicios, pero con nombres diferentes, permitiendo desplegar el mismo tipo de aplicativo en cualquier proveedor. La gran mayoría de los proveedores otorga un crédito en dólares estadounidenses para utilizar los servicios de su nube totalmente gratis. Cada uno mantiene políticas de uso del crédito que indican un tiempo límite de uso o que servicios no se cubre por el crédito. La característica del crédito aplicable al modelo de servicios para desplegar contenedores logrará ser el factor de selección del proveedor indicador. La red donde están desplegados los recursos de la nube del proveedor tiene una nomenclatura especifica para poder reconocer donde están ubicados los recursos, permitiendo seleccionar la región y zona donde serán reservados en el momento de solicitar los recursos. Comprender la red del proveedor permitirá desplegar óptimamente los recursos teniendo en cuenta en donde se despliega y desde donde se solicita el servicio.In recent years, cloud computing has been one of the main technologies for the deployment of technology infrastructure by companies, which have requested remote computing services to provide their services through public cloud providers. To make services more efficient when deployed in the cloud, public cloud providers have opted to integrate cloud natively, which has enabled the deployment of innovative technologies such as containers that optimize and reduce the cost of infrastructure deployed in the public cloud. Public cloud providers have the same service models, but with different names, allowing the same type of application to be deployed in any provider. The vast majority of providers grant a credit in U.S. dollars to use their cloud services for free. their cloud services totally free of charge. Each one maintains credit usage policies that indicate a time limit on usage or which services are not covered by the credit. The credit feature applicable to the service model for deploying containers will prove to be the indicator vendor selection factor. The network where the provider's cloud resources are deployed has a specific nomenclature in order to recognize where the resources are located, allowing to select the region and zone where they will be reserved on the network. Region and zone where they will be reserved at the time of requesting the resources. Understanding the provider's network will allow the resources to be optimally deployed taking into account where they are deployed and from where the service is requested.Pregradoapplicaction/pdfspahttp://creativecommons.org/licenses/by-nc-nd/4.0/info:eu-repo/semantics/openAccesshttp://purl.org/coar/access_right/c_abf2Attribution-NonCommercial-NoDerivatives 4.0 InternationalAcceso abiertoAdministración e implementación de contenedores en un proveedor de Cloud públicaContainer management and deployment in a public Cloud providerTesis/Trabajo de grado - Monografía - Pregradoinfo:eu-repo/semantics/bachelorThesishttp://purl.org/coar/resource_type/c_7a1fKubernetesContainersCloud computingIaaSPaaSCOMPUTACION EN LA NUBEARQUITECTURA EN LA NUBEPROCESAMIENTO ELECTRONICO DE DATOS - PROCESAMIENTO DISTRIBUIDOKubernetesContenedoresIaaSPaaSNube computacionalIngeniería en TelecomunicacionesFacultad de IngenieríaUniversidad Militar Nueva GranadaGibson, J., Rondeau, R., Eveleigh, D., & Tan, Q. (2012, November). Benefits and challenges of three cloud computing service models. In 2012 Fourth International Confe rence on Computational Aspects of Social Networks (CASoN) (pp. 198-205). IEEE. https: //ieeexplore.ieee.org/abstract/document/6412402G.ST.02 Guía de Computación en la nube - Ministerio de Tecnologías de la Información y las Comunicaciones, Mintic.gov.co, 2017. https://www.mintic.gov.co/arquitecturati/ 630/w3-article-75554.htmlMohammadi, S., & Mohammadi, A. (2014). Effect of cloud computing in accounting and comparison with the traditional model. Research Journal of Finance and Accounting, 5(23), 104-114. https://core.ac.uk/download/pdf/234630329.pdfGannon, D., Barga, R., & Sundaresan, N. (2017). Cloud-native applications. IEEE Cloud Computing, 4(5), 16-21. https://ieeexplore.ieee.org/abstract/document/8125550B. Burns, "What is a container?", azure.microsoft.com, 2019. https://azure.microsoft. com/en-us/overview/what-is-a-container/#overview.Brewer, E. A. (2015, August). Kubernetes and the path to cloud native. In Proceedings of the sixth ACM symposium on cloud computing (pp. 167-167). https://dl.acm.org/doi/ abs/10.1145/2806777.2809955Peter M. Mell, Timothy Grance "The NIST Definition of Cloud Computing", Special Pu blication (NIST SP), 2011. https://www.nist.gov/publications/nist-definition-cloud-computingGoogle Cloud "Geografía y regiones", Información general de Google Cloud, 2020. https://cloud.google.com/docs/geography-and-regionsGoogle Cloud "Productos", Compute Engine, 2020. https://cloud.google.com/ compute?hl=es#section-5Google Cloud "Serverless computing", Documentación de Google App Engine, 2020. https://cloud.google.com/compute?hl=es#section-5Google Cloud "Kubernetes Engine", Descripción general de GKE, 2020. https:// cloud.google.com/kubernetes-engine/docs/concepts/kubernetes-engine-overview? hl=esGoogle Cloud "Kubernetes Engine", Concepto de Pod en Kubernetes Engine, 2020. https://cloud.google.com/kubernetes-engine/docs/concepts/podGoogle Cloud "Kubernetes Engine", Clústeres (Arquitectura de clúster), 2020. https: //cloud.google.com/kubernetes-engine/docs/concepts/cluster-architectureBen-Kiki, O., Evans, C., & Ingerson, B. (2009). Yaml ain’t markup language. version 1.1. Working Draft 2008-05, 11.Man7.org. 2021. namespaces(7) - Linux manual page. [online] https://man7.org/ linux/man-pages/man7/namespaces.7.htmlBuchanan, S., Rangama, J., & Bellavance, N. (2020). kubectl Overview. In Introducing Azure Kubernetes Service (pp. 51-62). Apress, Berkeley, CA.kubernetes.io,Documentación (Deployment), 2020. https://kubernetes.io/es/ docs/concepts/workloads/controllers/deployment/Sayfan, G. (2019). Hands-On Microservices with Kubernetes: Build, deploy, and manage scalable microservices on Kubernetes (pp 21). Packt Publishing Ltd. https://books.google.com.co/booksB. Yang, A. Sailer, S. Jain, A. E. Tomala-Reyes, M. Singh and A. Ramnath, "Service Dis covery Based Blue-Green Deployment Technique in Cloud Native Environments,"2018 IEEE In ternational Conference on Services Computing (SCC), 2018, pp. 185-192, doi: 10.1109/SCC.2018.00031. https://ieeexplore.ieee.org/abstract/document/8456417kubernetes.io,Documentación (Deployment), 2020. https://kubernetes.io/es/ docs/concepts/workloads/controllers/deployment/Galantino, S. (2020). Enabling Job-aware scheduling on Kubernetes clusters (Doctoral dissertation, Politecnico di Torino). https://webthesis.biblio.polito.it/15946/Google Cloud "Kubernetes Engine",Clústeres (Guias, Ejecutar un trabajo), 2020. https: //cloud.google.com/kubernetes-engine/docs/how-to/jobskubernetes.io, Documentación (Jobs), 2020. https://kubernetes.io/docs/concepts/ workloads/controllers/job/Google Cloud "Google Kubernetes Engine (GKE)", Clústeres (Guias, Ejecutar un Cron Job), 2020. https://cloud.google.com/kubernetes-engine/docs/how-to/cronjobs? hl=es-419Wang, M., Zhang, D., & Wu, B. (2020, June). A Cluster Autoscaler Based on Multiple Node Types in Kubernetes. In 2020 IEEE 4th Information Technology, Networking, Elec tronic and Automation Control Conference (ITNEC) (Vol. 1, pp. 575-579). IEEE. https: //ieeexplore.ieee.org/abstract/document/9084706Liffredo, D. (2020). Analysis and Benchmarking of Kubernetes Networking (Doctoral dissertation, Politecnico di Torino). https://webthesis.biblio.polito.it/15948Calle 100ORIGINALParradoCarmonaAndresFelipe2021.pdfParradoCarmonaAndresFelipe2021.pdfTrabajo de gradoapplication/pdf5855427http://repository.unimilitar.edu.co/bitstream/10654/40564/1/ParradoCarmonaAndresFelipe2021.pdf5ae7971cc9eae271bcaefdcf73fd7550MD51LICENSElicense.txtlicense.txttext/plain; charset=utf-83420http://repository.unimilitar.edu.co/bitstream/10654/40564/2/license.txta609d7e369577f685ce98c66b903b91bMD52THUMBNAILParradoCarmonaAndresFelipe2021.pdf.jpgParradoCarmonaAndresFelipe2021.pdf.jpgIM Thumbnailimage/jpeg5893http://repository.unimilitar.edu.co/bitstream/10654/40564/3/ParradoCarmonaAndresFelipe2021.pdf.jpgcbce04d93f1319f9a63439eab8784e04MD5310654/40564oai:repository.unimilitar.edu.co:10654/405642022-05-12 01:04:26.246Repositorio Institucional UMNGbibliodigital@unimilitar.edu.coRWwgYXV0b3IgZGUgbGEgb2JyYSAodGVzaXMsIG1vbm9ncmFmw61hLCB0cmFiYWpvIGRlIGdyYWRvIG8gY3VhbHF1aWVyIG90cm8gZG9jdW1lbnRvCmNvbiBjYXLDoWN0ZXIgYWNhZMOpbWljbyksIGFjdHVhbmRvIGVuIG5vbWJyZSBwcm9waW8sIGhhY2UgZW50cmVnYSBkZWwgZWplbXBsYXIgcmVzcGVjdGl2bwp5IGRlIHN1cyBhbmV4b3MgZW4gZm9ybWF0byBkaWdpdGFsIG8gZWxlY3Ryw7NuaWNvLgoKRUwgRVNUVURJQU5URSAtIEFVVE9SLCBtYW5pZmllc3RhIHF1ZSBsYSBvYnJhIG9iamV0byBkZSBsYSBwcmVzZW50ZSBhdXRvcml6YWNpw7NuCmVzIG9yaWdpbmFsIHkgbGEgcmVhbGl6w7Mgc2luIHZpb2xhciBvIHVzdXJwYXIgZGVyZWNob3MgZGUgYXV0b3IgZGUgdGVyY2Vyb3MsIHBvcgpsbyB0YW50bywgbGEgb2JyYSBlcyBkZSBleGNsdXNpdmEgYXV0b3LDrWEgeSB0aWVuZSBsYSB0aXR1bGFyaWRhZCBzb2JyZSBsYSBtaXNtYS4KCkVuIGNhc28gZGUgcHJlc2VudGFyc2UgY3VhbHF1aWVyIHJlY2xhbWFjacOzbiBvIGFjY2nDs24gcG9yIHBhcnRlIGRlIHVuIHRlcmNlcm8gZW4KY3VhbnRvIGEgbG9zIGRlcmVjaG9zIGRlIGF1dG9yIHNvYnJlIGxhIG9icmEgZW4gY3Vlc3Rpw7NuLCBFTCBFU1RVRElBTlRFIC0gQVVUT1IsCmFzdW1pcsOhIHRvZGEgbGEgcmVzcG9uc2FiaWxpZGFkLCB5IHNhbGRyw6EgZW4gZGVmZW5zYSBkZSBsb3MgZGVyZWNob3MgYXF1w60gYXV0b3JpemFkb3M7CnBhcmEgdG9kb3MgbG9zIGVmZWN0b3MgbGEgdW5pdmVyc2lkYWQgYWN0w7phIGNvbW8gdW4gdGVyY2VybyBkZSBidWVuYSBmZS4KCkFkZW3DoXMsICJMQSBVTklWRVJTSURBRCBNSUxJVEFSIE5VRVZBIEdSQU5BREEgY29tbyBpbnN0aXR1Y2nDs24gcXVlIGFsbWFjZW5hLCB5CnJlY29sZWN0YSBkYXRvcyBwZXJzb25hbGVzLCBhdGVuZGllbmRvIGxvIHByZWNlcHR1YWRvIGVuIGxhIGxleSAxNTgxIGRlIDIwMTIgeSBlbApEZWNyZXRvIDEzNzcgZGUgMjAxMywgcXVlIGRlc2Fycm9sbGFuIGVsIHByaW5jaXBpbyBjb25zdGl0dWNpb25hbCBxdWUgdGllbmVuIHRvZGFzCmxhcyBwZXJzb25hcyBhIGNvbm9jZXIsIGFjdHVhbGl6YXIgeSByZWN0aWZpY2FyIHRvZG8gdGlwbyBkZSBpbmZvcm1hY2nDs24gcmVjb2dpZGEKbywgcXVlIGhheWEgc2lkbyBvYmpldG8gZGUgdHJhdGFtaWVudG8gZGUgZGF0b3MgcGVyc29uYWxlcyBlbiBiYW5jb3MgbyBiYXNlcyBkZQpkYXRvcyB5IGVuIGdlbmVyYWwgZW4gYXJjaGl2b3MgZGUgZW50aWRhZGVzIHDDumJsaWNhcyBvIHByaXZhZGFzLCByZXF1aWVyZSBvYnRlbmVyCnN1IGF1dG9yaXphY2nDs24sIHBhcmEgcXVlLCBkZSBtYW5lcmEgbGlicmUsIHByZXZpYSwgZXhwcmVzYSwgdm9sdW50YXJpYSwgeQpkZWJpZGFtZW50ZSBpbmZvcm1hZGEsIHBlcm1pdGEgYSB0b2RhcyBudWVzdHJhcyBkZXBlbmRlbmNpYXMgYWNhZMOpbWljYXMgeQphZG1pbmlzdHJhdGl2YXMsIHJlY29sZWN0YXIsIHJlY2F1ZGFyLCBhbG1hY2VuYXIsIHVzYXIsIGNpcmN1bGFyLCBzdXByaW1pciwgcHJvY2VzYXIsCmNvbXBpbGFyLCBpbnRlcmNhbWJpYXIsIGRhciB0cmF0YW1pZW50bywgYWN0dWFsaXphciB5IGRpc3BvbmVyIGRlIGxvcyBkYXRvcyBxdWUKaGFuIHNpZG8gc3VtaW5pc3RyYWRvcyB5IHF1ZSBzZSBoYW4gaW5jb3Jwb3JhZG8gZW4gbnVlc3RyYXMgYmFzZXMgbyBiYW5jb3MgZGUKZGF0b3MsIG8gZW4gcmVwb3NpdG9yaW9zIGVsZWN0csOzbmljb3MgZGUgdG9kbyB0aXBvIGNvbiBxdWUgY3VlbnRhIGxhIFVuaXZlcnNpZGFkLgoKRXN0YSBpbmZvcm1hY2nDs24gZXMgeSBzZXLDoSB1dGlsaXphZGEgZW4gZWwgZGVzYXJyb2xsbyBkZSBsYXMgZnVuY2lvbmVzIHByb3BpYXMgZGUKbGEgVW5pdmVyc2lkYWQgZW4gc3UgY29uZGljacOzbiBkZSBpbnN0aXR1Y2nDs24gZGUgZWR1Y2FjacOzbiBzdXBlcmlvciwgZGUgZm9ybWEKZGlyZWN0YSBvIGEgdHJhdsOpcyBkZSB0ZXJjZXJvcyIuCgpTaSBzdSBkb2N1bWVudG8gZXMgZGUgYWNjZXNvIHJlc3RyaW5naWRvICwgc3UgdHJhYmFqbyBzZSBkZXBvc2l0YXLDoSBlbiBlbApSZXBvc2l0b3JpbyBVTU5HIMO6bmljYW1lbnRlIGNvbiBwcm9ww7NzaXRvcyBkZSBwcmVzZXJ2YWNpw7NuIGRvY3VtZW50YWwgeSBtZW1vcmlhCmluc3RpdHVjaW9uYWwsIGVudGVuZGllbmRvIHF1ZSwgc2Vyw6EgY29uc3VsdGFkbyBkZSBmb3JtYSBjb250cm9sYWRhIHNvbGFtZW50ZSBwb3IKbGEgY29tdW5pZGFkIE5lb2dyYW5hZGluYS4KClNpIHN1IGRvY3VtZW50byBlcyBkZSBhY2Nlc28gYWJpZXJ0bywgcGFyYSBwZXJtaXRpciBhbCBSZXBvc2l0b3JpbyBVTU5HIHJlcHJvZHVjaXIsCnRyYWR1Y2lyIHkgZGlzdHJpYnVpciBzdSBlbnbDrW8gYSB0cmF2w6lzIGRlbCBtdW5kbywgbmVjZXNpdGFtb3Mgc3UgY29uZm9ybWlkYWQgZW4KbG9zIHNpZ3VpZW50ZXMgdMOpcm1pbm9zOgoKWSBhdXRvcml6YSBhIGxhIFVOSVZFUlNJREFEIE1JTElUQVIgTlVFVkEgR1JBTkFEQSwgcGFyYSBxdWUgZW4gbG9zIHTDqXJtaW5vcwplc3RhYmxlY2lkb3MgZW46CgpMZXkgMjMgZGUgMTk4Mi0gTGV5IDQ0IGRlIDE5OTMgLUxleSAxOTE1IGRlIDIwMTggLSBEZWNpc2nDs24gQW5kaW5hIDM1MSBkZSAxOTkzLQpEZWNyZXRvIDQ2MCBkZSAxOTk1IHkgZGVtw6FzIG5vcm1hcyBnZW5lcmFsZXMgc29icmUgbGEgbWF0ZXJpYSwgdXRpbGljZSB5IHVzZSBwb3IKY3VhbHF1aWVyIG1lZGlvIGNvbm9jaWRvIG8gcG9yIGNvbm9jZXIsIGxvcyBkZXJlY2hvcyBwYXRyaW1vbmlhbGVzIGRlIHJlcHJvZHVjY2nDs24sCmNvbXVuaWNhY2nDs24gcMO6YmxpY2EsIHRyYW5zZm9ybWFjacOzbiB5IGRpc3RyaWJ1Y2nDs24gZGUgbGEgb2JyYSBvYmpldG8gZGVsIHByZXNlbnRlCmRvY3VtZW50by4KCkxhIHByZXNlbnRlIGF1dG9yaXphY2nDs24gc2UgaGFjZSBleHRlbnNpdmEgbm8gc8OzbG8gYSBsYXMgZmFjdWx0YWRlcyB5IGRlcmVjaG9zIGRlCnVzbyBzb2JyZSBsYSBvYnJhIGVuIGZvcm1hdG8gbyBzb3BvcnRlIG1hdGVyaWFsLCBzaW5vIHRhbWJpw6luIHBhcmEgZm9ybWF0byB2aXJ0dWFsLAplbGVjdHLDs25pY28sIGRpZ2l0YWwsIHkgY3V5byB1c28gc2UgZGUgZW4gcmVkLCBpbnRlcm5ldCwgZXh0cmFuZXQsIGludHJhbmV0LCBldGMuLAp5IGVuIGdlbmVyYWwgZW4gY3VhbHF1aWVyIGZvcm1hdG8gY29ub2NpZG8gbyBwb3IgY29ub2Nlci4KClNpIHRpZW5lIGFsZ3VuYSBkdWRhIHNvYnJlIGxvcyBUw6lybWlub3MgeSBjb25kaWNpb25lcywgcG9yIGZhdm9yLCBjb250YWN0ZSBjb24gZWwKYWRtaW5pc3RyYWRvciBkZWwgc2lzdGVtYSBiaWJsaW9kaWdpdGFsQHVuaW1pbGl0YXIuZWR1LmNvCgpBY2VwdGUgVMOpcm1pbm9zIHkgY29uZGljaW9uZXMgc2VsZWNjaW9uYW5kbyAiQWNlcHRvIiB5IHB1bHNhbmRvICJDb21wbGV0YXIgZW52w61vIi4K