Flowerbucket aplicación móvil android para el reconocimiento de las 100 especies más abundantes del arbolado urbano de Bogotá

Flowerbucket es un aplicativo móvil creado para profesionales y estudiantes de ingeniería forestal y áreas afines interesadas en realizar reconocimiento de especies vegetales por medio de caracteres vegetativos y reproductivos. Este aplicativo tiene las bondades de tener filtros taxonómicos y dendro...

Full description

Autores:
Tipo de recurso:
Trabajo de grado de pregrado
Fecha de publicación:
2022
Institución:
Universidad Distrital Francisco José de Caldas
Repositorio:
RIUD: repositorio U. Distrital
Idioma:
spa
OAI Identifier:
oai:repository.udistrital.edu.co:11349/33831
Acceso en línea:
http://hdl.handle.net/11349/33831
Palabra clave:
Aplicación móvil
Arbolado urbano
Identificación de especies
Aplicación de escritorio
Visual Studio
Ingeniería Forestal -- Tesis y disertaciones académicas
Android (Sistemas operacionales)
Desarrollo de programas para computador
Computación móvil
Arboles -- Bogotá (Colombia)
Especímenes botánicos - Bogotá (Colombia)
Visual Studio (Lenguaje de programación de computadores)
Mobile app
Urban woodland
Species identification
Desktop application
Visual Studio
Rights
License
Atribución-NoComercial 4.0 Internacional
id UDISTRITA2_7575c79baaec47cebc86eba60ef8c306
oai_identifier_str oai:repository.udistrital.edu.co:11349/33831
network_acronym_str UDISTRITA2
network_name_str RIUD: repositorio U. Distrital
repository_id_str
dc.title.spa.fl_str_mv Flowerbucket aplicación móvil android para el reconocimiento de las 100 especies más abundantes del arbolado urbano de Bogotá
dc.title.titleenglish.spa.fl_str_mv Flowerbucket android mobile application for the recognition of the 100 most abundant species of urban trees in Bogotá
title Flowerbucket aplicación móvil android para el reconocimiento de las 100 especies más abundantes del arbolado urbano de Bogotá
spellingShingle Flowerbucket aplicación móvil android para el reconocimiento de las 100 especies más abundantes del arbolado urbano de Bogotá
Aplicación móvil
Arbolado urbano
Identificación de especies
Aplicación de escritorio
Visual Studio
Ingeniería Forestal -- Tesis y disertaciones académicas
Android (Sistemas operacionales)
Desarrollo de programas para computador
Computación móvil
Arboles -- Bogotá (Colombia)
Especímenes botánicos - Bogotá (Colombia)
Visual Studio (Lenguaje de programación de computadores)
Mobile app
Urban woodland
Species identification
Desktop application
Visual Studio
title_short Flowerbucket aplicación móvil android para el reconocimiento de las 100 especies más abundantes del arbolado urbano de Bogotá
title_full Flowerbucket aplicación móvil android para el reconocimiento de las 100 especies más abundantes del arbolado urbano de Bogotá
title_fullStr Flowerbucket aplicación móvil android para el reconocimiento de las 100 especies más abundantes del arbolado urbano de Bogotá
title_full_unstemmed Flowerbucket aplicación móvil android para el reconocimiento de las 100 especies más abundantes del arbolado urbano de Bogotá
title_sort Flowerbucket aplicación móvil android para el reconocimiento de las 100 especies más abundantes del arbolado urbano de Bogotá
dc.contributor.advisor.none.fl_str_mv Ariza Cortés, William
Moreno Vargas, Diego Alexander
dc.subject.spa.fl_str_mv Aplicación móvil
Arbolado urbano
Identificación de especies
Aplicación de escritorio
Visual Studio
topic Aplicación móvil
Arbolado urbano
Identificación de especies
Aplicación de escritorio
Visual Studio
Ingeniería Forestal -- Tesis y disertaciones académicas
Android (Sistemas operacionales)
Desarrollo de programas para computador
Computación móvil
Arboles -- Bogotá (Colombia)
Especímenes botánicos - Bogotá (Colombia)
Visual Studio (Lenguaje de programación de computadores)
Mobile app
Urban woodland
Species identification
Desktop application
Visual Studio
dc.subject.lemb.spa.fl_str_mv Ingeniería Forestal -- Tesis y disertaciones académicas
Android (Sistemas operacionales)
Desarrollo de programas para computador
Computación móvil
Arboles -- Bogotá (Colombia)
Especímenes botánicos - Bogotá (Colombia)
Visual Studio (Lenguaje de programación de computadores)
dc.subject.keyword.spa.fl_str_mv Mobile app
Urban woodland
Species identification
Desktop application
Visual Studio
description Flowerbucket es un aplicativo móvil creado para profesionales y estudiantes de ingeniería forestal y áreas afines interesadas en realizar reconocimiento de especies vegetales por medio de caracteres vegetativos y reproductivos. Este aplicativo tiene las bondades de tener filtros taxonómicos y dendrológicos que permiten un acercamiento a la posible especie que se quiera reconocer en campo. Con el respaldo del herbario forestal UDBC se garantiza que la información expuesta en esta app es verídica dejando así de ser una herramienta lúdica y/o didáctica como las que se encuentran en las tiendas de aplicaciones, para convertirse así en una herramienta científica con el respaldo de profesionales científicos que a su vez respaldan todos los procesos realizados por el herbario de la Universidad Distrital. FLOWERBUCKET está diseñado como una herramienta en modalidad investigación-innovación por lo que solo el equipo científico del herbario de la Universidad Distrital Francisco José de Caldas tiene la posibilidad de modificar el contenido de la aplicación y es este el punto diferencial entre FLOWERBUCKET y las demás herramientas que se encuentran en las tiendas de aplicaciones ya que esta aplicación contaría con un soporte por parte del Herbario que es a su vez una dependencia científica de la Universidad. Para efectos de este proyecto de grado la aplicación inicialmente tendrá las 100 especies más abundantes del arbolado urbano de Bogotá de acuerdo al censo realizado por el Jardín Botánico José Celestino Mutis. En cuanto a su diseño y desarrollo, se realizó el Business Process Model and Notation (BPMN) en el aplicativo Bizagi en su versión gratuita. El desarrollo del Frontend fue en el lenguaje de formato de interfaz de usuario XAML y C# .Net standard 2.0 (Mantenimiento a largo plazo), su Backend fue desarrollado en Xamarin Forms y .Net standard 2.0 Para la conexión del aplicativo a los servidores del herbario se usó una API que el herbario puso a disposición para realizar el proceso de consulta. Para el proceso de actualización e inserción de la información se realizó un aplicativo de escritorio en .Net Core 3.1 (Mantenimiento a largo plazo) el cual realiza las operaciones de Insert y Update a partir de un Excel con formato estandarizado. Para todos los casos el desarrollo fue realizado en Visual Studio en su versión Community .
publishDate 2022
dc.date.created.none.fl_str_mv 2022-08-16
dc.date.accessioned.none.fl_str_mv 2024-03-22T15:41:51Z
dc.date.available.none.fl_str_mv 2024-03-22T15:41:51Z
dc.type.spa.fl_str_mv bachelorThesis
dc.type.degree.spa.fl_str_mv Investigación-Innovación
dc.type.driver.spa.fl_str_mv info:eu-repo/semantics/bachelorThesis
dc.type.coar.spa.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/11349/33831
url http://hdl.handle.net/11349/33831
dc.language.iso.spa.fl_str_mv spa
language spa
dc.rights.*.fl_str_mv Atribución-NoComercial 4.0 Internacional
dc.rights.coar.fl_str_mv http://purl.org/coar/access_right/c_abf2
dc.rights.uri.*.fl_str_mv http://creativecommons.org/licenses/by-nc/4.0/
dc.rights.acceso.spa.fl_str_mv Abierto (Texto Completo)
rights_invalid_str_mv Atribución-NoComercial 4.0 Internacional
http://creativecommons.org/licenses/by-nc/4.0/
Abierto (Texto Completo)
http://purl.org/coar/access_right/c_abf2
dc.format.mimetype.spa.fl_str_mv pdf
institution Universidad Distrital Francisco José de Caldas
bitstream.url.fl_str_mv http://repository.udistrital.edu.co/bitstream/11349/33831/8/TorresForeroDiegoAlexander%2cG%c3%b3mezCollazosMichaelSteven2022.pdf.jpg
http://repository.udistrital.edu.co/bitstream/11349/33831/9/Licencia%20de%20uso%20y%20publicacion.pdf.jpg
http://repository.udistrital.edu.co/bitstream/11349/33831/1/TorresForeroDiegoAlexander%2cG%c3%b3mezCollazosMichaelSteven2022.pdf
http://repository.udistrital.edu.co/bitstream/11349/33831/4/TorresForeroDiegoAlexander%2cG%c3%b3mezCollazosMichaelSteven2022Anexos.rar
http://repository.udistrital.edu.co/bitstream/11349/33831/2/Licencia%20de%20uso%20y%20publicacion.pdf
http://repository.udistrital.edu.co/bitstream/11349/33831/7/license.txt
http://repository.udistrital.edu.co/bitstream/11349/33831/6/license_rdf
bitstream.checksum.fl_str_mv f1cfeb59056a7fcd40fc05b67d396c74
d630a1afd6e9ed7ab06cfc2e9b60b2b2
775cbb1c07639d0d1985a19c4e9e3151
79f0b8f8b9ecb64d251c4ebc5244de07
113b192ede93749bad78b825ca38cc85
997daf6c648c962d566d7b082dac908d
24013099e9e6abb1575dc6ce0855efd5
bitstream.checksumAlgorithm.fl_str_mv MD5
MD5
MD5
MD5
MD5
MD5
MD5
repository.name.fl_str_mv Repositorio Institucional Universidad Distrital - RIUD
repository.mail.fl_str_mv repositorio@udistrital.edu.co
_version_ 1818102574937538560
spelling Ariza Cortés, WilliamMoreno Vargas, Diego AlexanderTorres Forero, Diego AlexanderGómez Collazos, Michael Steven2024-03-22T15:41:51Z2024-03-22T15:41:51Z2022-08-16http://hdl.handle.net/11349/33831Flowerbucket es un aplicativo móvil creado para profesionales y estudiantes de ingeniería forestal y áreas afines interesadas en realizar reconocimiento de especies vegetales por medio de caracteres vegetativos y reproductivos. Este aplicativo tiene las bondades de tener filtros taxonómicos y dendrológicos que permiten un acercamiento a la posible especie que se quiera reconocer en campo. Con el respaldo del herbario forestal UDBC se garantiza que la información expuesta en esta app es verídica dejando así de ser una herramienta lúdica y/o didáctica como las que se encuentran en las tiendas de aplicaciones, para convertirse así en una herramienta científica con el respaldo de profesionales científicos que a su vez respaldan todos los procesos realizados por el herbario de la Universidad Distrital. FLOWERBUCKET está diseñado como una herramienta en modalidad investigación-innovación por lo que solo el equipo científico del herbario de la Universidad Distrital Francisco José de Caldas tiene la posibilidad de modificar el contenido de la aplicación y es este el punto diferencial entre FLOWERBUCKET y las demás herramientas que se encuentran en las tiendas de aplicaciones ya que esta aplicación contaría con un soporte por parte del Herbario que es a su vez una dependencia científica de la Universidad. Para efectos de este proyecto de grado la aplicación inicialmente tendrá las 100 especies más abundantes del arbolado urbano de Bogotá de acuerdo al censo realizado por el Jardín Botánico José Celestino Mutis. En cuanto a su diseño y desarrollo, se realizó el Business Process Model and Notation (BPMN) en el aplicativo Bizagi en su versión gratuita. El desarrollo del Frontend fue en el lenguaje de formato de interfaz de usuario XAML y C# .Net standard 2.0 (Mantenimiento a largo plazo), su Backend fue desarrollado en Xamarin Forms y .Net standard 2.0 Para la conexión del aplicativo a los servidores del herbario se usó una API que el herbario puso a disposición para realizar el proceso de consulta. Para el proceso de actualización e inserción de la información se realizó un aplicativo de escritorio en .Net Core 3.1 (Mantenimiento a largo plazo) el cual realiza las operaciones de Insert y Update a partir de un Excel con formato estandarizado. Para todos los casos el desarrollo fue realizado en Visual Studio en su versión Community .Flowerbucket is a mobile application created for professionals and students of forestry engineering and related areas interested in recognizing plant species through vegetative and reproductive characters. This application has the benefits of having taxonomic and dendrological filters that allow an approach to the possible species that you want to recognize in the countryside. With the support of the UDBC forest herbarium, it is guaranteed that the information displayed in this app is true, thus ceasing to be a playful and/or educational tool like those found in the Google play store. Thus, becoming a scientific tool with the support of scientific professionals who in turn support all the processes carried out by the herbarium of the District University. FLOWERBUCKET is designed as a tool in research-innovation mode, so only the scientific team of the herbarium of the Francisco José de Caldas District University has the possibility of modifying the content of the application and this is the differential point between FLOWERBUCKET and the others tools found in the application stores since these others allow the application users to modify their content. For the purposes of this project, the application will initially have the 100 most abundant species of urban trees in Bogota according to the census carried out by the José Celestino Mutis Botanical Garden. Regarding its design and development, the Business Process Model and Notation (BPMN) was carried out in the Bizagi application in its free version. The development of the Frontend was in the XAML and C# .Net standard 2.0 user interface format language (Long-term maintenance), its Backend was developed in Xamarin Forms and .Net standard 2.0 For the connection of the application to the herbarium servers An API made available by the herbarium was used to carry out the consultation process. For the process of updating and inserting the information, a console application was made in .Net Core 3.1 (Long-term maintenance) which performs the insert and update operations from an excel with a standardized format. For all cases, the development was carried out in Visual Studio in its Community version.pdfspaAtribución-NoComercial 4.0 Internacionalhttp://creativecommons.org/licenses/by-nc/4.0/Abierto (Texto Completo)http://purl.org/coar/access_right/c_abf2Aplicación móvilArbolado urbanoIdentificación de especiesAplicación de escritorioVisual StudioIngeniería Forestal -- Tesis y disertaciones académicasAndroid (Sistemas operacionales)Desarrollo de programas para computadorComputación móvilArboles -- Bogotá (Colombia)Especímenes botánicos - Bogotá (Colombia)Visual Studio (Lenguaje de programación de computadores)Mobile appUrban woodlandSpecies identificationDesktop applicationVisual StudioFlowerbucket aplicación móvil android para el reconocimiento de las 100 especies más abundantes del arbolado urbano de BogotáFlowerbucket android mobile application for the recognition of the 100 most abundant species of urban trees in BogotábachelorThesisInvestigación-Innovacióninfo:eu-repo/semantics/bachelorThesishttp://purl.org/coar/resource_type/c_7a1fTHUMBNAILTorresForeroDiegoAlexander,GómezCollazosMichaelSteven2022.pdf.jpgTorresForeroDiegoAlexander,GómezCollazosMichaelSteven2022.pdf.jpgIM Thumbnailimage/jpeg4634http://repository.udistrital.edu.co/bitstream/11349/33831/8/TorresForeroDiegoAlexander%2cG%c3%b3mezCollazosMichaelSteven2022.pdf.jpgf1cfeb59056a7fcd40fc05b67d396c74MD58open accessLicencia de uso y publicacion.pdf.jpgLicencia de uso y publicacion.pdf.jpgIM Thumbnailimage/jpeg13222http://repository.udistrital.edu.co/bitstream/11349/33831/9/Licencia%20de%20uso%20y%20publicacion.pdf.jpgd630a1afd6e9ed7ab06cfc2e9b60b2b2MD59open accessORIGINALTorresForeroDiegoAlexander,GómezCollazosMichaelSteven2022.pdfTorresForeroDiegoAlexander,GómezCollazosMichaelSteven2022.pdfArtículo principalapplication/pdf2403110http://repository.udistrital.edu.co/bitstream/11349/33831/1/TorresForeroDiegoAlexander%2cG%c3%b3mezCollazosMichaelSteven2022.pdf775cbb1c07639d0d1985a19c4e9e3151MD51open accessTorresForeroDiegoAlexander,GómezCollazosMichaelSteven2022Anexos.rarTorresForeroDiegoAlexander,GómezCollazosMichaelSteven2022Anexos.rarAnexosapplication/octet-stream249548http://repository.udistrital.edu.co/bitstream/11349/33831/4/TorresForeroDiegoAlexander%2cG%c3%b3mezCollazosMichaelSteven2022Anexos.rar79f0b8f8b9ecb64d251c4ebc5244de07MD54open accessLicencia de uso y publicacion.pdfLicencia de uso y publicacion.pdfLICENCIA DE USO Y AUTORIZACIÓN PARA PUBLICARapplication/pdf166957http://repository.udistrital.edu.co/bitstream/11349/33831/2/Licencia%20de%20uso%20y%20publicacion.pdf113b192ede93749bad78b825ca38cc85MD52metadata only accessLICENSElicense.txtlicense.txttext/plain; charset=utf-87167http://repository.udistrital.edu.co/bitstream/11349/33831/7/license.txt997daf6c648c962d566d7b082dac908dMD57open accessCC-LICENSElicense_rdflicense_rdfapplication/rdf+xml; charset=utf-8914http://repository.udistrital.edu.co/bitstream/11349/33831/6/license_rdf24013099e9e6abb1575dc6ce0855efd5MD56open access11349/33831oai:repository.udistrital.edu.co:11349/338312024-03-23 01:00:42.679open accessRepositorio Institucional Universidad Distrital - RIUDrepositorio@udistrital.edu.coTElDRU5DSUEgWSBBVVRPUklaQUNJw5NOIEVTUEVDSUFMIFBBUkEgUFVCTElDQVIgWSBQRVJNSVRJUiBMQSBDT05TVUxUQSBZIFVTTyBERSBDT05URU5JRE9TIEVOIEVMIFJFUE9TSVRPUklPIElOU1RJVFVDSU9OQUwgREUgTEEgVU5JVkVSU0lEQUQgRElTVFJJVEFMCgpUw6lybWlub3MgeSBjb25kaWNpb25lcyBkZSB1c28gcGFyYSBwdWJsaWNhY2nDs24gZGUgb2JyYXMgZW4gZWwgUmVwb3NpdG9yaW8gSW5zdGl0dWNpb25hbCBkZSBsYSBVbml2ZXJzaWRhZCBEaXN0cml0YWwgRnJhbmNpc2NvIEpvc8OpIGRlIENhbGRhcyAoUklVRCkKCkNvbW8gdGl0dWxhcihlcykgZGVsKG9zKSBkZXJlY2hvKHMpIGRlIGF1dG9yLCBjb25maWVybyAoZXJpbW9zKSBhIGxhIFVuaXZlcnNpZGFkIERpc3RyaXRhbCBGcmFuY2lzY28gSm9zw6kgZGUgQ2FsZGFzIChlbiBhZGVsYW50ZSwgTEEgVU5JVkVSU0lEQUQpIHVuYSBsaWNlbmNpYSBwYXJhIHVzbyBubyBleGNsdXNpdmEsIGxpbWl0YWRhIHkgZ3JhdHVpdGEgc29icmUgbGEgb2JyYSBxdWUgaW50ZWdyYXLDoSBlbCBSZXBvc2l0b3JpbyBJbnN0aXR1Y2lvbmFsIChlbiBhZGVsYW50ZSwgUklVRCksIGRlIGFjdWVyZG8gYSBsYXMgc2lndWllbnRlcyByZWdsYXMsIGxhcyBjdWFsZXMgZGVjbGFybyAoYW1vcykgY29ub2NlciB5IGFjZXB0YXI6CgphKQlFc3RhcsOhIHZpZ2VudGUgYSBwYXJ0aXIgZGUgbGEgZmVjaGEgZW4gcXVlIHNlIGluY2x1eWEgZW4gZWwgUklVRCB5IGhhc3RhIHBvciB1biBwbGF6byBkZSBkaWV6ICgxMCkgQcOxb3MsIHByb3Jyb2dhYmxlIGluZGVmaW5pZGFtZW50ZSBwb3IgZWwgdGllbXBvIHF1ZSBkdXJlIGVsIGRlcmVjaG8gUGF0cmltb25pYWwgZGVsIGF1dG9yOyBsYSBjdWFsIHBvZHLDoSBkYXJzZSBwb3IgdGVybWluYWRhIHByZXZpYSBzb2xpY2l0dWQgYSBMQSBVTklWRVJTSURBRCBwb3IgZXNjcml0byBjb24gdW5hIGFudGVsYWNpw7NuIGRlIGRvcyAoMikgbWVzZXMgYW50ZXMgZGVsIHZlbmNpbWllbnRvIGRlbCBwbGF6byBpbmljaWFsIG8gZWwgZGUgc3UocykgcHLDs3Jyb2dhKHMpLgoKYikJTEEgVU5JVkVSU0lEQUQgcG9kcsOhIHB1YmxpY2FyIGxhIG9icmEgZW4gbGFzIGRpc3RpbnRhcyB2ZXJzaW9uZXMgcmVxdWVyaWRhcyBwb3IgZWwgUklVRCAoZGlnaXRhbCwgaW1wcmVzbywgZWxlY3Ryw7NuaWNvIHUgb3RybyBtZWRpbyBjb25vY2lkbyBvIHBvciBjb25vY2VyKSBMQSBVTklWRVJTSURBRCBubyBzZXLDoSByZXNwb25zYWJsZSBlbiBlbCBldmVudG8gcXVlIGVsIGRvY3VtZW50byBhcGFyZXpjYSByZWZlcmVuY2lhZG8gZW4gbW90b3JlcyBkZSBiw7pzcXVlZGEgbyByZXBvc2l0b3Jpb3MgZGlmZXJlbnRlcyBhbCBSSVVELCB1bmEgdmV6IGVsKG9zKSBhdXRvcihlcykgc29saWNpdGVuIHN1IGVsaW1pbmFjacOzbiBkZWwgUklVRCwgZGFkbyBxdWUgbGEgbWlzbWEgc2Vyw6EgcHVibGljYWRhIGVuIEludGVybmV0LgoKYykJTGEgYXV0b3JpemFjacOzbiBzZSBoYWNlIGEgdMOtdHVsbyBncmF0dWl0bywgcG9yIGxvIHRhbnRvLCBsb3MgYXV0b3JlcyByZW51bmNpYW4gYSByZWNpYmlyIGJlbmVmaWNpbyBhbGd1bm8gcG9yIGxhIHB1YmxpY2FjacOzbiwgZGlzdHJpYnVjacOzbiwgY29tdW5pY2FjacOzbiBww7pibGljYSB5IGN1YWxxdWllciBvdHJvIHVzbyBxdWUgc2UgaGFnYSBlbiBsb3MgdMOpcm1pbm9zIGRlIGxhIHByZXNlbnRlIGxpY2VuY2lhIHkgZGUgbGEgbGljZW5jaWEgZGUgdXNvIGNvbiBxdWUgc2UgcHVibGljYSAoQ3JlYXRpdmUgQ29tbW9ucykuCgpkKQlMb3MgY29udGVuaWRvcyBwdWJsaWNhZG9zIGVuIGVsIFJJVUQgc29uIG9icmEocykgb3JpZ2luYWwoZXMpIHNvYnJlIGxhIGN1YWwoZXMpIGVsKG9zKSBhdXRvcihlcykgY29tbyB0aXR1bGFyZXMgZGUgbG9zIGRlcmVjaG9zIGRlIGF1dG9yLCBhc3VtZW4gdG90YWwgcmVzcG9uc2FiaWxpZGFkIHBvciBlbCBjb250ZW5pZG8gZGUgc3Ugb2JyYSBhbnRlIExBIFVOSVZFUlNJREFEIHkgYW50ZSB0ZXJjZXJvcy4gRW4gdG9kbyBjYXNvIExBIFVOSVZFUlNJREFEIHNlIGNvbXByb21ldGUgYSBpbmRpY2FyIHNpZW1wcmUgbGEgYXV0b3LDrWEgaW5jbHV5ZW5kbyBlbCBub21icmUgZGVsIGF1dG9yIHkgbGEgZmVjaGEgZGUgcHVibGljYWNpw7NuLgoKZSkJTEEgVU5JVkVSU0lEQUQgcG9kcsOhIGluY2x1aXIgbGEgb2JyYSBlbiBsb3Mgw61uZGljZXMgeSBidXNjYWRvcmVzIHF1ZSBlc3RpbWVuIG5lY2VzYXJpb3MgcGFyYSBtYXhpbWl6YXIgbGEgdmlzaWJpbGlkYWQgZWwgdXNvIHkgZWwgaW1wYWN0byBkZSBsYSBwcm9kdWNjacOzbiBjaWVudMOtZmljYSwgYXJ0w61zdGljYSB5IGFjYWTDqW1pY2EgZW4gbGEgY29tdW5pZGFkIGxvY2FsLCBuYWNpb25hbCBvIGludGVybmFjaW9uYWwuCgoKZikJTEEgVU5JVkVSU0lEQUQgcG9kcsOhIGNvbnZlcnRpciBsYSBvYnJhIGEgY3VhbHF1aWVyIG1lZGlvIG8gZm9ybWF0byBjb24gZWwgZmluIGRlIHN1IHByZXNlcnZhY2nDs24gZW4gZWwgdGllbXBvIHF1ZSBsYSBwcmVzZW50ZSBsaWNlbmNpYSB5IGxhIGRlIHN1cyBwcsOzcnJvZ2FzLgoKCkNvbiBiYXNlIGVuIGxvIGFudGVyaW9yIGF1dG9yaXpvKGFtb3MpLCBhIGZhdm9yIGRlbCBSSVVEIHkgZGUgc3VzIHVzdWFyaW9zLCBsYSBwdWJsaWNhY2nDs24geSBjb25zdWx0YSBkZSBsYSBzaWd1aWVudGUgb2JyYToKClRpdHVsbwoKQXV0b3IgICAgICAgQXBlbGxpZG9zICAgICAgICAgTm9tYnJlcwoKMQoKMgoKMwoKCmcpCUF1dG9yaXpvKGFtb3MpLCBxdWUgbGEgb2JyYSBzZWEgcHVlc3RhIGEgZGlzcG9zaWNpw7NuIGRlbCBww7pibGljbyBlbiBsb3MgdMOpcm1pbm9zIGVzdGFibGVjaWRvcyBlbiBsb3MgbGl0ZXJhbGVzIGFudGVyaW9yZXMsIGJham8gbG9zIGzDrW1pdGVzIGRlZmluaWRvcyBwb3IgTEEgVU5JVkVSU0lEQUQsIGVuIGxhcyDigJxDb25kaWNpb25lcyBkZSB1c28gZGUgZXN0cmljdG8gY3VtcGxpbWllbnRv4oCdIGRlIGxvcyByZWN1cnNvcyBwdWJsaWNhZG9zIGVuIGVsIFJJVUQsIGN1eW8gdGV4dG8gY29tcGxldG8gc2UgcHVlZGUgY29uc3VsdGFyIGVuIGh0dHA6Ly9yZXBvc2l0b3J5LnVkaXN0cml0YWwuZWR1LmNvLwoKaCkJQ29ub3pjbyhjZW1vcykgeSBhY2VwdG8oYW1vcykgcXVlIG90b3JnbyhhbW9zKSB1bmEgbGljZW5jaWEgZXNwZWNpYWwgcGFyYSBwdWJsaWNhY2nDs24gZGUgb2JyYXMgZW4gZWwgUmVwb3NpdG9yaW8gSW5zdGl0dWNpb25hbCBkZSBsYSBVbml2ZXJzaWRhZCBEaXN0cml0YWwgRnJhbmNpc2NvIEpvc8OpIGRlIENhbGRhcywgbGljZW5jaWEgICBkZSBsYSBjdWFsIGhlIChoZW1vcykgb2J0ZW5pZG8gdW5hIGNvcGlhLgoKaSkJTWFuaWZpZXN0byhhbW9zKSBtaSAobnVlc3RybykgdG90YWwgYWN1ZXJkbyBjb24gbGFzIGNvbmRpY2lvbmVzIGRlIHVzbyB5IHB1YmxpY2FjacOzbiBlbiBlbCBSZXBvc2l0b3JpbyBJbnN0aXR1Y2lvbmFsIGRlIGxhIFVuaXZlcnNpZGFkIERpc3RyaXRhbCBGcmFuY2lzY28gSm9zw6kgZGUgQ2FsZGFzIHF1ZSBzZSBkZXNjcmliZW4geSBleHBsaWNhbiBlbiBlbCBwcmVzZW50ZSBkb2N1bWVudG8uCgpqKQlDb25vemNvKGNlbW9zKSBsYSBub3JtYXRpdmlkYWQgaW50ZXJuYSBkZSAgTEEgVU5JVkVSU0lEQUQ7IGVuIGNvbmNyZXRvLCBlbCBBY3VlcmRvIDAwNCBkZSAyMDEyIGRlbCBDU1UsIEFjdWVyZG8gMDIzIGRlIDIwMTIgZGVsIENTVSBzb2JyZSBQb2zDrXRpY2EgRWRpdG9yaWFsLCBBY3VlcmRvIDAyNiAgZGVsIDMxIGRlIGp1bGlvIGRlIDIwMTIgc29icmUgZWwgcHJvY2VkaW1pZW50byBwYXJhIGxhIHB1YmxpY2FjacOzbiBkZSB0ZXNpcyBkZSBwb3N0Z3JhZG8gZGUgbG9zIGVzdHVkaWFudGVzIGRlIGxhIFVuaXZlcnNpZGFkIERpc3RyaXRhbCBGcmFuY2lzY28gSm9zw6kgZGUgQ2FsZGFzLCAgQWN1ZXJkbyAwMzAgZGVsIDAzIGRlIGRpY2llbWJyZSBkZSAyMDEzIHBvciBtZWRpbyBkZWwgY3VhbCBzZSBjcmVhIGVsIFJlcG9zaXRvcmlvIEluc3RpdHVjaW9uYWwgZGUgbGEgVW5pdmVyc2lkYWQgRGlzdHJpdGFsIEZyYW5jaXNjbyBKb3PDqSBkZSBDYWxkYXMsIEFjdWVyZG8gMDM4IGRlIDIwMTUgMjAxNSDigJxwb3IgZWwgY3VhbCBzZSBtb2RpZmljYSBlbCBBY3VlcmRvIDAzMSBkZSAyMDE0IGRlIDIwMTQgcXVlIHJlZ2xhbWVudGEgZWwgdHJhYmFqbyBkZSBncmFkbyBwYXJhIGxvcyBlc3R1ZGlhbnRlcyBkZSBwcmVncmFkbyBkZSBsYSBVbml2ZXJzaWRhZCBEaXN0cml0YWwgRnJhbmNpc2NvIEpvc8OpIGRlIENhbGRhcyB5IHNlIGRpY3RhbiBvdHJhcyBkaXJlY3RyaWNlc+KAnSB5IGxhcyBkZW3DoXMgbm9ybWFzIGNvbmNvcmRhbnRlIHkgY29tcGxlbWVudGFyaWFzIHF1ZSByaWdlbiBhbCByZXNwZWN0bywgZXNwZWNpYWxtZW50ZSBsYSBsZXkgMjMgZGUgMTk4MiwgbGEgbGV5IDQ0IGRlIDE5OTMgeSBsYSBkZWNpc2nDs24gQW5kaW5hIDM1MSBkZSAxOTkzLiBFc3RvcyBkb2N1bWVudG9zIHBvZHLDoW4gc2VyIGNvbnN1bHRhZG9zIHkgZGVzY2FyZ2Fkb3MgZW4gZWwgcG9ydGFsIHdlYiBkZSBsYSBiaWJsaW90ZWNhIGh0dHA6Ly9zaXN0ZW1hZGViaWJsaW90ZWNhcy51ZGlzdHJpdGFsLmVkdS5jby8KCmspCUFjZXB0byhhbW9zKSBxdWUgTEEgVU5JVkVSU0lEQUQgbm8gc2UgcmVzcG9uc2FiaWxpemEgcG9yIGxhcyBpbmZyYWNjaW9uZXMgYSBsYSBwcm9waWVkYWQgaW50ZWxlY3R1YWwgbyBEZXJlY2hvcyBkZSBBdXRvciBjYXVzYWRhcyBwb3IgbG9zIHRpdHVsYXJlcyBkZSBsYSBwcmVzZW50ZSBMaWNlbmNpYSB5IGRlY2xhcmFtb3MgcXVlIG1hbnRlbmRyw6kgKGVtb3MpIGluZGVtbmUgYSBMQSBVTklWRVJTSURBRCBwb3IgbGFzIHJlY2xhbWFjaW9uZXMgbGVnYWxlcyBkZSBjdWFscXVpZXIgdGlwbyBxdWUgbGxlZ2FyZW4gYSBwcmVzZW50YXJzZSBwb3IgdmlvbGFjacOzbiBkZSBkZXJlY2hvcyBhIGxhIHByb3BpZWRhZCBpbnRlbGVjdHVhbCBvIGRlIEF1dG9yIHJlbGFjaW9uYWRvcyBjb24gbG9zIGRvY3VtZW50b3MgcmVnaXN0cmFkb3MgZW4gZWwgUklVRC4KCmwpCUVsIChsb3MpIGF1dG9yKGVzKSBtYW5pZmllc3RhKG1vcykgcXVlIGxhIG9icmEgb2JqZXRvIGRlIGxhIHByZXNlbnRlIGF1dG9yaXphY2nDs24gZXMgb3JpZ2luYWwsIGRlIGV4Y2x1c2l2YSBhdXRvcsOtYSwgeSBzZSByZWFsaXrDsyBzaW4gdmlvbGFyIG8gdXN1cnBhciBkZXJlY2hvcyBkZSBhdXRvciBkZSB0ZXJjZXJvczsgZGUgdGFsIHN1ZXJ0ZSwgZW4gY2FzbyBkZSBwcmVzZW50YXJzZSBjdWFscXVpZXIgcmVjbGFtYWNpw7NuIG8gYWNjacOzbiBwb3IgcGFydGUgZGUgdW4gdGVyY2VybyBlbiBjdWFudG8gYSBsb3MgZGVyZWNob3MgZGUgYXV0b3Igc29icmUgbGEgb2JyYSwgZWwgKGxvcykgZXN0dWRpYW50ZShzKSDigJMgYXV0b3IoZXMpIGFzdW1pcsOhKG4pIHRvZGEgbGEgcmVzcG9uc2FiaWxpZGFkIHkgc2FsZHLDoShuKSBlbiBkZWZlbnNhIGRlIGxvcyBkZXJlY2hvcyBhcXXDrSBhdXRvcml6YWRvcy4gUGFyYSB0b2RvcyBsb3MgZWZlY3RvcywgTEEgVU5JVkVSU0lEQUQgYWN0w7phIGNvbW8gdW4gdGVyY2VybyBkZSBidWVuYSBmZS4KCgptKQlFbCAobG9zKSBhdXRvcihlcykgbWFuaWZpZXN0YShtb3MpIHF1ZSBjb25vemNvKGNlbW9zKSBsYSBhdXRvbm9tw61hIHkgbG9zIGRlcmVjaG9zLCBxdWUgcG9zZWUobW9zKSBzb2JyZSBsYSBvYnJhIHksIGNvbW8gdGFsLCBlcyAoc29tb3MpIHJlc3BvbnNhYmxlKHMpIGRlbCBhbGNhbmNlIGp1csOtZGljbyB5IGxlZ2FsLCBkZSBlc2NvZ2VyIGxhIG9wY2nDs24gZGUgbGEgcHVibGljYWNpw7NuIG8gZGUgcmVzdHJpY2Npw7NuIGRlIGxhIHB1YmxpY2FjacOzbiBkZWwgZG9jdW1lbnRvIHJlZ2lzdHJhZG8gZW4gZWwgUklVRC4KCgoKCgoKU0kgRUwgRE9DVU1FTlRPIFNFIEJBU0EgRU4gVU4gVFJBQkFKTyBRVUUgSEEgU0lETyBQQVRST0NJTkFETyBPIEFQT1lBRE8gUE9SIFVOQSBBR0VOQ0lBIE8gVU5BIE9SR0FOSVpBQ0nDk04sIENPTiBFWENFUENJw5NOIERFIExBIFVOSVZFUlNJREFEIERJU1RSSVRBTCBGUkFOQ0lTQ08gSk9TRSBERSBDQUxEQVMsIExPUyBBVVRPUkVTIEdBUkFOVElaQU4gUVVFIFNFIEhBIENVTVBMSURPIENPTiBMT1MKREVSRUNIT1MgWSBPQkxJR0FDSU9ORVMgUkVRVUVSSURPUyBQT1IgRUwgUkVTUEVDVElWTyBDT05UUkFUTyBPIEFDVUVSRE8uCgoKCgoKCgoKCgoKCgoKCgoKCgoKCkVuIGNvbnN0YW5jaWEgZGUgbG8gYW50ZXJpb3IsIGZpcm1vKGFtb3MpIGVsIHByZXNlbnRlIGRvY3VtZW50bywgZW4gbGEgY2l1ZGFkIGRlIEJvZ290w6EsIEQuQy4sIGEgbG9zCgoKRklSTUEgREUgTE9TIFRJVFVMQVJFUyBERSBERVJFQ0hPUyBERSBBVVRPUgoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fICAgQy5DLiBOby4gX19fX19fX19fX19fX19fX19fCgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18gICBDLkMuIE5vLiBfX19fX19fX19fX19fX19fX18KCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXyAgIEMuQy4gTm8uIF9fX19fX19fX19fX19fX19fXwoKCgpDb3JyZW8gRWxlY3Ryw7NuaWNvIEluc3RpdHVjaW9uYWwgZGVsIChkZSBsb3MpIEF1dG9yKGVzKToKCkF1dG9yCSAgICAgIENvcnJlbyBFbGVjdHLDs25pY28KCjEKCjIKCjMKCk5vbWJyZSBkZSBEaXJlY3RvcihlcykgZGUgR3JhZG86CgoxCgoyCgozCgpOb21icmUgRmFjdWx0YWQgeSBQcm95ZWN0byBDdXJyaWN1bGFyOgoKRmFjdWx0YWQJUHJveWVjdG8gQ3VycmljdWxhcgoKCgoKCgoKCk5vdGE6IEVuIGNhc28gcXVlIG5vIGVzdMOpIGRlIGFjdWVyZG8gY29uIGxhcyBjb25kaWNpb25lcyBkZSBsYSBwcmVzZW50ZSBsaWNlbmNpYSwgeSBtYW5pZmllc3RlIGFsZ3VuYSByZXN0cmljY2nDs24gc29icmUgbGEgb2JyYSwganVzdGlmaXF1ZSBsb3MgbW90aXZvcyBwb3IgbG9zIGN1YWxlcyBlbCBkb2N1bWVudG8geSBzdXMgYW5leG9zIG5vIHB1ZWRlbiBzZXIgcHVibGljYWRvcyBlbiBlbCBSZXBvc2l0b3JpbyBJbnN0aXR1Y2lvbmFsIGRlIGxhIFVuaXZlcnNpZGFkIERpc3RyaXRhbCBGcmFuY2lzY28gSm9zw6kgZGUgQ2FsZGFzIFJJVUQuCgoKU2kgcmVxdWllcmUgbcOhcyBlc3BhY2lvLCBwdWVkZSBhbmV4YXIgdW5hIGNvcGlhIHNpbWlsYXIgYSBlc3RhIGhvamEK