Estudio de la estructura anatómica que conforma la madera mediante análisis multiresolución y morfología
La identificación de una especie maderera requiere un análisis de las características macroscópicas y microscópicas de una muestra. En el caso de las maderas latifoliadas existen 4 tipos de elementos que componen su estructura: los vasos o poros, el parénquima, los radios y la fibra. En este trabajo...
- Autores:
- Tipo de recurso:
- Trabajo de grado de pregrado
- Fecha de publicación:
- 2019
- Institución:
- Universidad Distrital Francisco José de Caldas
- Repositorio:
- RIUD: repositorio U. Distrital
- Idioma:
- spa
- OAI Identifier:
- oai:repository.udistrital.edu.co:11349/23168
- Acceso en línea:
- http://hdl.handle.net/11349/23168
- Palabra clave:
- Análisis multiresolución
Wavelet
Anatomía maderas
Morfología
Ingeniería Electrónica - Tesis y disertaciones académicas
Anatomía de la madera
Madera - Análisis
Procesamiento digital de imágenes
Multiresolution analysis
Wavelet
Wood anatomy
Morphology
- Rights
- License
- Atribución-NoComercial-SinDerivadas 4.0 Internacional
id |
UDISTRITA2_e262c9cb0decd800b2e1de1aeaa8082f |
---|---|
oai_identifier_str |
oai:repository.udistrital.edu.co:11349/23168 |
network_acronym_str |
UDISTRITA2 |
network_name_str |
RIUD: repositorio U. Distrital |
repository_id_str |
|
dc.title.spa.fl_str_mv |
Estudio de la estructura anatómica que conforma la madera mediante análisis multiresolución y morfología |
dc.title.titleenglish.spa.fl_str_mv |
Study of the anatomical structure that shapes wood through multiresolution analysis and morphology |
title |
Estudio de la estructura anatómica que conforma la madera mediante análisis multiresolución y morfología |
spellingShingle |
Estudio de la estructura anatómica que conforma la madera mediante análisis multiresolución y morfología Análisis multiresolución Wavelet Anatomía maderas Morfología Ingeniería Electrónica - Tesis y disertaciones académicas Anatomía de la madera Madera - Análisis Procesamiento digital de imágenes Multiresolution analysis Wavelet Wood anatomy Morphology |
title_short |
Estudio de la estructura anatómica que conforma la madera mediante análisis multiresolución y morfología |
title_full |
Estudio de la estructura anatómica que conforma la madera mediante análisis multiresolución y morfología |
title_fullStr |
Estudio de la estructura anatómica que conforma la madera mediante análisis multiresolución y morfología |
title_full_unstemmed |
Estudio de la estructura anatómica que conforma la madera mediante análisis multiresolución y morfología |
title_sort |
Estudio de la estructura anatómica que conforma la madera mediante análisis multiresolución y morfología |
dc.contributor.advisor.spa.fl_str_mv |
Herrera García, Rodrigo Javier |
dc.subject.spa.fl_str_mv |
Análisis multiresolución Wavelet Anatomía maderas Morfología |
topic |
Análisis multiresolución Wavelet Anatomía maderas Morfología Ingeniería Electrónica - Tesis y disertaciones académicas Anatomía de la madera Madera - Análisis Procesamiento digital de imágenes Multiresolution analysis Wavelet Wood anatomy Morphology |
dc.subject.lemb.spa.fl_str_mv |
Ingeniería Electrónica - Tesis y disertaciones académicas Anatomía de la madera Madera - Análisis Procesamiento digital de imágenes |
dc.subject.keyword.spa.fl_str_mv |
Multiresolution analysis Wavelet Wood anatomy Morphology |
description |
La identificación de una especie maderera requiere un análisis de las características macroscópicas y microscópicas de una muestra. En el caso de las maderas latifoliadas existen 4 tipos de elementos que componen su estructura: los vasos o poros, el parénquima, los radios y la fibra. En este trabajo se presenta el desarrollo y posterior estudio de un modelo de segmentación de los poros en fotografías que representan muestras microscópicas de maderas, en el corte transversal, usando únicamente análisis multiresolución y operaciones morfológicas. Inicialmente se realiza una adecuación y un preprocesamiento a las imágenes con el propósito de mejorar los resultados del modelo. En esta etapa se aplican el recorte sobre las imágenes, la conversión de color a escala de grises y el filtrado gaussiano. Después se emplea la transformada wavelet para realizar un análisis multiresolución. Al usar esta transformación se generan matrices que describen numéricamente la diferencia de los píxeles adyacentes que componen los elementos presentes en las imágenes. Sobre estas matrices se realiza un análisis estadístico que permita segmentar parcial o totalmente los objetos buscados. Luego, se hace uso de operaciones morfológicas y operaciones lógicas para eliminar los objetos no deseados. Con las matrices obtenidas se hace una reconstrucción de la imagen original usando la transformada inversa de wavelet, y finalmente se evalúan los resultados obtenidos. Se obtuvieron dos conjuntos de resultados para la evaluación. El primero de ellos incluyó todas las imágenes, incluso las que tenían defectos en la muestra o errores en la captura. El segundo omitió esas imágenes ya que, a nuestro criterio, no eran aptas para el estudio. Respecto al primer conjunto, con el segundo se obtuvieron resultados más satisfactorios, los cuales en su mayoría, tenían un valor superior al 80 % del F1 Score, medida que se usó para evaluar el modelo. |
publishDate |
2019 |
dc.date.created.spa.fl_str_mv |
2019-10-31 |
dc.date.accessioned.none.fl_str_mv |
2020-04-14T15:28:07Z |
dc.date.available.none.fl_str_mv |
2020-04-14T15:28:07Z |
dc.type.degree.spa.fl_str_mv |
Monografía |
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/23168 |
url |
http://hdl.handle.net/11349/23168 |
dc.language.iso.spa.fl_str_mv |
spa |
language |
spa |
dc.rights.*.fl_str_mv |
Atribución-NoComercial-SinDerivadas 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-nd/4.0/ |
dc.rights.acceso.spa.fl_str_mv |
Abierto (Texto Completo) |
rights_invalid_str_mv |
Atribución-NoComercial-SinDerivadas 4.0 Internacional http://creativecommons.org/licenses/by-nc-nd/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/23168/7/SanchezRodriguezManuelAndres2019.pdf.jpg http://repository.udistrital.edu.co/bitstream/11349/23168/1/SanchezRodriguezManuelAndres2019.pdf http://repository.udistrital.edu.co/bitstream/11349/23168/2/SanchezRodriguezManuelAndres2019Anexos.zip http://repository.udistrital.edu.co/bitstream/11349/23168/3/license_url http://repository.udistrital.edu.co/bitstream/11349/23168/4/license_text http://repository.udistrital.edu.co/bitstream/11349/23168/5/license_rdf http://repository.udistrital.edu.co/bitstream/11349/23168/6/license.txt |
bitstream.checksum.fl_str_mv |
bbb0fc817019afab33dbf88e7e0e5423 969e6b602246b508a6fb16a232597faf af16cb9a243da1dfb1acf2f5e7ddab80 321f3992dd3875151d8801b773ab32ed d41d8cd98f00b204e9800998ecf8427e d41d8cd98f00b204e9800998ecf8427e da5c6a3ca62d5dd4853000a60fee7083 |
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_ |
1803712624992452608 |
spelling |
Herrera García, Rodrigo JavierLeguizamón Díaz, Norma ConstanzaSánchez Rodríguez, Manuel Andrés2020-04-14T15:28:07Z2020-04-14T15:28:07Z2019-10-31http://hdl.handle.net/11349/23168La identificación de una especie maderera requiere un análisis de las características macroscópicas y microscópicas de una muestra. En el caso de las maderas latifoliadas existen 4 tipos de elementos que componen su estructura: los vasos o poros, el parénquima, los radios y la fibra. En este trabajo se presenta el desarrollo y posterior estudio de un modelo de segmentación de los poros en fotografías que representan muestras microscópicas de maderas, en el corte transversal, usando únicamente análisis multiresolución y operaciones morfológicas. Inicialmente se realiza una adecuación y un preprocesamiento a las imágenes con el propósito de mejorar los resultados del modelo. En esta etapa se aplican el recorte sobre las imágenes, la conversión de color a escala de grises y el filtrado gaussiano. Después se emplea la transformada wavelet para realizar un análisis multiresolución. Al usar esta transformación se generan matrices que describen numéricamente la diferencia de los píxeles adyacentes que componen los elementos presentes en las imágenes. Sobre estas matrices se realiza un análisis estadístico que permita segmentar parcial o totalmente los objetos buscados. Luego, se hace uso de operaciones morfológicas y operaciones lógicas para eliminar los objetos no deseados. Con las matrices obtenidas se hace una reconstrucción de la imagen original usando la transformada inversa de wavelet, y finalmente se evalúan los resultados obtenidos. Se obtuvieron dos conjuntos de resultados para la evaluación. El primero de ellos incluyó todas las imágenes, incluso las que tenían defectos en la muestra o errores en la captura. El segundo omitió esas imágenes ya que, a nuestro criterio, no eran aptas para el estudio. Respecto al primer conjunto, con el segundo se obtuvieron resultados más satisfactorios, los cuales en su mayoría, tenían un valor superior al 80 % del F1 Score, medida que se usó para evaluar el modelo.The microanatomy structure of wood is composed by 4 types of cells: vessels or pores, the parenchyma, the spokes and the fiber. Its form, deposition and texture can tell us what the species to wich is it belongs. Its characteristics are studied through a sample taken from the outer part of the wood. The sample represents three planes, wich provide different information about the cells: transverse, tangencial and radial. These planes can be represented in photographs taken from a microscope to be treated as images and be processed. Some works have segmented elements to be able to identify wood with image processing. This work makes a study of a segmentation model, based on multiresolution analysis and morphological operations, using the transversal plane. Starting with the adaptation of the images and using gaussian filter, the decomposition of the image is done using wavelet transform to find the details that make the features and segment the cells. With morphological operations, noise and unwanted elements are eliminated, and finally the images are reconstructed using the wavelet inverse transform. Two sets of results were obtained for the evaluation. The first one included all the images, even those with defects in the sample or errors in the capture. The second one omitted those images which, according to our criteria, were not suitable for study. In comparison to the first set, the second had a more successful result, which mostly was a value greater than 80 % of the F1 Score, a measure that was used for evaluating the model.pdfspaAtribución-NoComercial-SinDerivadas 4.0 Internacionalhttp://creativecommons.org/licenses/by-nc-nd/4.0/Abierto (Texto Completo)http://purl.org/coar/access_right/c_abf2Análisis multiresoluciónWaveletAnatomía maderasMorfologíaIngeniería Electrónica - Tesis y disertaciones académicasAnatomía de la maderaMadera - AnálisisProcesamiento digital de imágenesMultiresolution analysisWaveletWood anatomyMorphologyEstudio de la estructura anatómica que conforma la madera mediante análisis multiresolución y morfologíaStudy of the anatomical structure that shapes wood through multiresolution analysis and morphologyMonografíainfo:eu-repo/semantics/bachelorThesishttp://purl.org/coar/resource_type/c_7a1fTHUMBNAILSanchezRodriguezManuelAndres2019.pdf.jpgSanchezRodriguezManuelAndres2019.pdf.jpgIM Thumbnailimage/jpeg8515http://repository.udistrital.edu.co/bitstream/11349/23168/7/SanchezRodriguezManuelAndres2019.pdf.jpgbbb0fc817019afab33dbf88e7e0e5423MD57open accessORIGINALSanchezRodriguezManuelAndres2019.pdfSanchezRodriguezManuelAndres2019.pdfapplication/pdf4513570http://repository.udistrital.edu.co/bitstream/11349/23168/1/SanchezRodriguezManuelAndres2019.pdf969e6b602246b508a6fb16a232597fafMD51open accessSanchezRodriguezManuelAndres2019Anexos.zipSanchezRodriguezManuelAndres2019Anexos.zipapplication/octet-stream8645301http://repository.udistrital.edu.co/bitstream/11349/23168/2/SanchezRodriguezManuelAndres2019Anexos.zipaf16cb9a243da1dfb1acf2f5e7ddab80MD52open accessCC-LICENSElicense_urllicense_urltext/plain; charset=utf-843http://repository.udistrital.edu.co/bitstream/11349/23168/3/license_url321f3992dd3875151d8801b773ab32edMD53open accesslicense_textlicense_texttext/html; charset=utf-80http://repository.udistrital.edu.co/bitstream/11349/23168/4/license_textd41d8cd98f00b204e9800998ecf8427eMD54open accesslicense_rdflicense_rdfapplication/rdf+xml; charset=utf-80http://repository.udistrital.edu.co/bitstream/11349/23168/5/license_rdfd41d8cd98f00b204e9800998ecf8427eMD55open accessLICENSElicense.txtlicense.txttext/plain; charset=utf-87163http://repository.udistrital.edu.co/bitstream/11349/23168/6/license.txtda5c6a3ca62d5dd4853000a60fee7083MD56open access11349/23168oai:repository.udistrital.edu.co:11349/231682023-06-13 11:03:14.315open accessRepositorio Institucional Universidad Distrital - RIUDrepositorio@udistrital.edu.coTElDRU5DSUEgWSBBVVRPUklaQUNJw5NOIEVTUEVDSUFMIFBBUkEgUFVCTElDQVIgWSBQRVJNSVRJUiBMQSBDT05TVUxUQSBZIFVTTyBERSBDT05URU5JRE9TIEVOIEVMIFJFUE9TSVRPUklPIElOU1RJVFVDSU9OQUwgREUgTEEgVU5JVkVSU0lEQUQgRElTVFJJVEFMClTDqXJtaW5vcyB5IGNvbmRpY2lvbmVzIGRlIHVzbyBwYXJhIHB1YmxpY2FjacOzbiBkZSBvYnJhcyBlbiBlbCBSZXBvc2l0b3JpbyBJbnN0aXR1Y2lvbmFsIGRlIGxhIFVuaXZlcnNpZGFkIERpc3RyaXRhbCBGcmFuY2lzY28gSm9zw6kgZGUgQ2FsZGFzIChSSVVEKQoKQ29tbyB0aXR1bGFyKGVzKSBkZWwob3MpIGRlcmVjaG8ocykgZGUgYXV0b3IsIGNvbmZpZXJvIChlcmltb3MpIGEgbGEgVW5pdmVyc2lkYWQgRGlzdHJpdGFsIEZyYW5jaXNjbyBKb3PDqSBkZSBDYWxkYXMgKGVuIGFkZWxhbnRlLCBMQSBVTklWRVJTSURBRCkgdW5hIGxpY2VuY2lhIHBhcmEgdXNvIG5vIGV4Y2x1c2l2YSwgbGltaXRhZGEgeSBncmF0dWl0YSBzb2JyZSBsYSBvYnJhIHF1ZSBpbnRlZ3JhcsOhIGVsIFJlcG9zaXRvcmlvIEluc3RpdHVjaW9uYWwgKGVuIGFkZWxhbnRlLCBSSVVEKSwgZGUgYWN1ZXJkbyBhIGxhcyBzaWd1aWVudGVzIHJlZ2xhcywgbGFzIGN1YWxlcyBkZWNsYXJvIChhbW9zKSBjb25vY2VyIHkgYWNlcHRhcjoKCmEpCUVzdGFyw6EgdmlnZW50ZSBhIHBhcnRpciBkZSBsYSBmZWNoYSBlbiBxdWUgc2UgaW5jbHV5YSBlbiBlbCBSSVVEIHkgaGFzdGEgcG9yIHVuIHBsYXpvIGRlIGRpZXogKDEwKSBBw7FvcywgcHJvcnJvZ2FibGUgaW5kZWZpbmlkYW1lbnRlIHBvciBlbCB0aWVtcG8gcXVlIGR1cmUgZWwgZGVyZWNobyBQYXRyaW1vbmlhbCBkZWwgYXV0b3I7IGxhIGN1YWwgcG9kcsOhIGRhcnNlIHBvciB0ZXJtaW5hZGEgcHJldmlhIHNvbGljaXR1ZCBhIExBIFVOSVZFUlNJREFEIHBvciBlc2NyaXRvIGNvbiB1bmEgYW50ZWxhY2nDs24gZGUgZG9zICgyKSBtZXNlcyBhbnRlcyBkZWwgdmVuY2ltaWVudG8gZGVsIHBsYXpvIGluaWNpYWwgbyBlbCBkZSBzdShzKSBwcsOzcnJvZ2EocykuICAKCmIpCUxBIFVOSVZFUlNJREFEIHBvZHLDoSBwdWJsaWNhciBsYSBvYnJhIGVuIGxhcyBkaXN0aW50YXMgdmVyc2lvbmVzIHJlcXVlcmlkYXMgcG9yIGVsIFJJVUQgKGRpZ2l0YWwsIGltcHJlc28sIGVsZWN0csOzbmljbyB1IG90cm8gbWVkaW8gY29ub2NpZG8gbyBwb3IgY29ub2NlcikgTEEgVU5JVkVSU0lEQUQgbm8gc2Vyw6EgcmVzcG9uc2FibGUgZW4gZWwgZXZlbnRvIHF1ZSBlbCBkb2N1bWVudG8gYXBhcmV6Y2EgcmVmZXJlbmNpYWRvIGVuIG1vdG9yZXMgZGUgYsO6c3F1ZWRhIG8gcmVwb3NpdG9yaW9zIGRpZmVyZW50ZXMgYWwgUklVRCwgdW5hIHZleiBlbChvcykgYXV0b3IoZXMpIHNvbGljaXRlbiBzdSBlbGltaW5hY2nDs24gZGVsIFJJVUQsIGRhZG8gcXVlIGxhIG1pc21hIHNlcsOhIHB1YmxpY2FkYSBlbiBJbnRlcm5ldC4gCgpjKQlMYSBhdXRvcml6YWNpw7NuIHNlIGhhY2UgYSB0w610dWxvIGdyYXR1aXRvLCBwb3IgbG8gdGFudG8sIGxvcyBhdXRvcmVzIHJlbnVuY2lhbiBhIHJlY2liaXIgYmVuZWZpY2lvIGFsZ3VubyBwb3IgbGEgcHVibGljYWNpw7NuLCBkaXN0cmlidWNpw7NuLCBjb211bmljYWNpw7NuIHDDumJsaWNhIHkgY3VhbHF1aWVyIG90cm8gdXNvIHF1ZSBzZSBoYWdhIGVuIGxvcyB0w6lybWlub3MgZGUgbGEgcHJlc2VudGUgbGljZW5jaWEgeSBkZSBsYSBsaWNlbmNpYSBkZSB1c28gY29uIHF1ZSBzZSBwdWJsaWNhIChDcmVhdGl2ZSBDb21tb25zKS4KCmQpCUxvcyBjb250ZW5pZG9zIHB1YmxpY2Fkb3MgZW4gZWwgUklVRCBzb24gb2JyYShzKSBvcmlnaW5hbChlcykgc29icmUgbGEgY3VhbChlcykgZWwob3MpIGF1dG9yKGVzKSBjb21vIHRpdHVsYXJlcyBkZSBsb3MgZGVyZWNob3MgZGUgYXV0b3IsIGFzdW1lbiB0b3RhbCByZXNwb25zYWJpbGlkYWQgcG9yIGVsIGNvbnRlbmlkbyBkZSBzdSBvYnJhIGFudGUgTEEgVU5JVkVSU0lEQUQgeSBhbnRlIHRlcmNlcm9zLiBFbiB0b2RvIGNhc28gTEEgVU5JVkVSU0lEQUQgc2UgY29tcHJvbWV0ZSBhIGluZGljYXIgc2llbXByZSBsYSBhdXRvcsOtYSBpbmNsdXllbmRvIGVsIG5vbWJyZSBkZWwgYXV0b3IgeSBsYSBmZWNoYSBkZSBwdWJsaWNhY2nDs24uCgplKQlMQSBVTklWRVJTSURBRCBwb2Ryw6EgaW5jbHVpciBsYSBvYnJhIGVuIGxvcyDDrW5kaWNlcyB5IGJ1c2NhZG9yZXMgcXVlIGVzdGltZW4gbmVjZXNhcmlvcyBwYXJhIG1heGltaXphciBsYSB2aXNpYmlsaWRhZCBlbCB1c28geSBlbCBpbXBhY3RvIGRlIGxhIHByb2R1Y2Npw7NuIGNpZW50w61maWNhLCBhcnTDrXN0aWNhIHkgYWNhZMOpbWljYSBlbiBsYSBjb211bmlkYWQgbG9jYWwsIG5hY2lvbmFsIG8gaW50ZXJuYWNpb25hbC4gCgoKZikJTEEgVU5JVkVSU0lEQUQgcG9kcsOhIGNvbnZlcnRpciBsYSBvYnJhIGEgY3VhbHF1aWVyIG1lZGlvIG8gZm9ybWF0byBjb24gZWwgZmluIGRlIHN1IHByZXNlcnZhY2nDs24gZW4gZWwgdGllbXBvIHF1ZSBsYSBwcmVzZW50ZSBsaWNlbmNpYSB5IGxhIGRlIHN1cyBwcsOzcnJvZ2FzLgoKCkNvbiBiYXNlIGVuIGxvIGFudGVyaW9yIGF1dG9yaXpvKGFtb3MpLCBhIGZhdm9yIGRlbCBSSVVEIHkgZGUgc3VzIHVzdWFyaW9zLCBsYSBwdWJsaWNhY2nDs24geSBjb25zdWx0YSBkZSBsYSBzaWd1aWVudGUgb2JyYToKClRpdHVsbyAJCkF1dG9yCUFwZWxsaWRvcwlOb21icmVzCjEJCQoyCQkKMwkJCiAKCmcpCUF1dG9yaXpvKGFtb3MpLCBxdWUgbGEgb2JyYSBzZWEgcHVlc3RhIGEgZGlzcG9zaWNpw7NuIGRlbCBww7pibGljbyBlbiBsb3MgdMOpcm1pbm9zIGVzdGFibGVjaWRvcyBlbiBsb3MgbGl0ZXJhbGVzIGFudGVyaW9yZXMsIGJham8gbG9zIGzDrW1pdGVzIGRlZmluaWRvcyBwb3IgTEEgVU5JVkVSU0lEQUQsIGVuIGxhcyDigJxDb25kaWNpb25lcyBkZSB1c28gZGUgZXN0cmljdG8gY3VtcGxpbWllbnRv4oCdIGRlIGxvcyByZWN1cnNvcyBwdWJsaWNhZG9zIGVuIGVsIFJJVUQsIGN1eW8gdGV4dG8gY29tcGxldG8gc2UgcHVlZGUgY29uc3VsdGFyIGVuIGh0dHA6Ly9yZXBvc2l0b3J5LnVkaXN0cml0YWwuZWR1LmNvLwoKaCkJQ29ub3pjbyhjZW1vcykgeSBhY2VwdG8oYW1vcykgcXVlIG90b3JnbyhhbW9zKSB1bmEgbGljZW5jaWEgZXNwZWNpYWwgcGFyYSBwdWJsaWNhY2nDs24gZGUgb2JyYXMgZW4gZWwgUmVwb3NpdG9yaW8gSW5zdGl0dWNpb25hbCBkZSBsYSBVbml2ZXJzaWRhZCBEaXN0cml0YWwgRnJhbmNpc2NvIEpvc8OpIGRlIENhbGRhcywgbGljZW5jaWEgICBkZSBsYSBjdWFsIGhlIChoZW1vcykgb2J0ZW5pZG8gdW5hIGNvcGlhLgoKaSkJTWFuaWZpZXN0byhhbW9zKSBtaSAobnVlc3RybykgdG90YWwgYWN1ZXJkbyBjb24gbGFzIGNvbmRpY2lvbmVzIGRlIHVzbyB5IHB1YmxpY2FjacOzbiBlbiBlbCBSZXBvc2l0b3JpbyBJbnN0aXR1Y2lvbmFsIGRlIGxhIFVuaXZlcnNpZGFkIERpc3RyaXRhbCBGcmFuY2lzY28gSm9zw6kgZGUgQ2FsZGFzIHF1ZSBzZSBkZXNjcmliZW4geSBleHBsaWNhbiBlbiBlbCBwcmVzZW50ZSBkb2N1bWVudG8uCgpqKQlDb25vemNvKGNlbW9zKSBsYSBub3JtYXRpdmlkYWQgaW50ZXJuYSBkZSAgTEEgVU5JVkVSU0lEQUQ7IGVuIGNvbmNyZXRvLCBlbCBBY3VlcmRvIDAwNCBkZSAyMDEyIGRlbCBDU1UsIEFjdWVyZG8gMDIzIGRlIDIwMTIgZGVsIENTVSBzb2JyZSBQb2zDrXRpY2EgRWRpdG9yaWFsLCBBY3VlcmRvIDAyNiAgZGVsIDMxIGRlIGp1bGlvIGRlIDIwMTIgc29icmUgZWwgcHJvY2VkaW1pZW50byBwYXJhIGxhIHB1YmxpY2FjacOzbiBkZSB0ZXNpcyBkZSBwb3N0Z3JhZG8gZGUgbG9zIGVzdHVkaWFudGVzIGRlIGxhIFVuaXZlcnNpZGFkIERpc3RyaXRhbCBGcmFuY2lzY28gSm9zw6kgZGUgQ2FsZGFzLCAgQWN1ZXJkbyAwMzAgZGVsIDAzIGRlIGRpY2llbWJyZSBkZSAyMDEzIHBvciBtZWRpbyBkZWwgY3VhbCBzZSBjcmVhIGVsIFJlcG9zaXRvcmlvIEluc3RpdHVjaW9uYWwgZGUgbGEgVW5pdmVyc2lkYWQgRGlzdHJpdGFsIEZyYW5jaXNjbyBKb3PDqSBkZSBDYWxkYXMsIEFjdWVyZG8gMDM4IGRlIDIwMTUgMjAxNSDigJxwb3IgZWwgY3VhbCBzZSBtb2RpZmljYSBlbCBBY3VlcmRvIDAzMSBkZSAyMDE0IGRlIDIwMTQgcXVlIHJlZ2xhbWVudGEgZWwgdHJhYmFqbyBkZSBncmFkbyBwYXJhIGxvcyBlc3R1ZGlhbnRlcyBkZSBwcmVncmFkbyBkZSBsYSBVbml2ZXJzaWRhZCBEaXN0cml0YWwgRnJhbmNpc2NvIEpvc8OpIGRlIENhbGRhcyB5IHNlIGRpY3RhbiBvdHJhcyBkaXJlY3RyaWNlc+KAnSB5IGxhcyBkZW3DoXMgbm9ybWFzIGNvbmNvcmRhbnRlIHkgY29tcGxlbWVudGFyaWFzIHF1ZSByaWdlbiBhbCByZXNwZWN0bywgZXNwZWNpYWxtZW50ZSBsYSBsZXkgMjMgZGUgMTk4MiwgbGEgbGV5IDQ0IGRlIDE5OTMgeSBsYSBkZWNpc2nDs24gQW5kaW5hIDM1MSBkZSAxOTkzLiBFc3RvcyBkb2N1bWVudG9zIHBvZHLDoW4gc2VyIGNvbnN1bHRhZG9zIHkgZGVzY2FyZ2Fkb3MgZW4gZWwgcG9ydGFsIHdlYiBkZSBsYSBiaWJsaW90ZWNhIGh0dHA6Ly9zaXN0ZW1hZGViaWJsaW90ZWNhcy51ZGlzdHJpdGFsLmVkdS5jby8gIAoKaykJQWNlcHRvKGFtb3MpIHF1ZSBMQSBVTklWRVJTSURBRCBubyBzZSByZXNwb25zYWJpbGl6YSBwb3IgbGFzIGluZnJhY2Npb25lcyBhIGxhIHByb3BpZWRhZCBpbnRlbGVjdHVhbCBvIERlcmVjaG9zIGRlIEF1dG9yIGNhdXNhZGFzIHBvciBsb3MgdGl0dWxhcmVzIGRlIGxhIHByZXNlbnRlIExpY2VuY2lhIHkgZGVjbGFyYW1vcyBxdWUgbWFudGVuZHLDqSAoZW1vcykgaW5kZW1uZSBhIExBIFVOSVZFUlNJREFEIHBvciBsYXMgcmVjbGFtYWNpb25lcyBsZWdhbGVzIGRlIGN1YWxxdWllciB0aXBvIHF1ZSBsbGVnYXJlbiBhIHByZXNlbnRhcnNlIHBvciB2aW9sYWNpw7NuIGRlIGRlcmVjaG9zIGEgbGEgcHJvcGllZGFkIGludGVsZWN0dWFsIG8gZGUgQXV0b3IgcmVsYWNpb25hZG9zIGNvbiBsb3MgZG9jdW1lbnRvcyByZWdpc3RyYWRvcyBlbiBlbCBSSVVELgoKbCkJRWwgKGxvcykgYXV0b3IoZXMpIG1hbmlmaWVzdGEobW9zKSBxdWUgbGEgb2JyYSBvYmpldG8gZGUgbGEgcHJlc2VudGUgYXV0b3JpemFjacOzbiBlcyBvcmlnaW5hbCwgZGUgZXhjbHVzaXZhIGF1dG9yw61hLCB5IHNlIHJlYWxpesOzIHNpbiB2aW9sYXIgbyB1c3VycGFyIGRlcmVjaG9zIGRlIGF1dG9yIGRlIHRlcmNlcm9zOyBkZSB0YWwgc3VlcnRlLCBlbiBjYXNvIGRlIHByZXNlbnRhcnNlIGN1YWxxdWllciByZWNsYW1hY2nDs24gbyBhY2Npw7NuIHBvciBwYXJ0ZSBkZSB1biB0ZXJjZXJvIGVuIGN1YW50byBhIGxvcyBkZXJlY2hvcyBkZSBhdXRvciBzb2JyZSBsYSBvYnJhLCBlbCAobG9zKSBlc3R1ZGlhbnRlKHMpIOKAkyBhdXRvcihlcykgYXN1bWlyw6EobikgdG9kYSBsYSByZXNwb25zYWJpbGlkYWQgeSBzYWxkcsOhKG4pIGVuIGRlZmVuc2EgZGUgbG9zIGRlcmVjaG9zIGFxdcOtIGF1dG9yaXphZG9zLiBQYXJhIHRvZG9zIGxvcyBlZmVjdG9zLCBMQSBVTklWRVJTSURBRCBhY3TDumEgY29tbyB1biB0ZXJjZXJvIGRlIGJ1ZW5hIGZlLiAgIAoKCm0pCUVsIChsb3MpIGF1dG9yKGVzKSBtYW5pZmllc3RhKG1vcykgcXVlIGNvbm96Y28oY2Vtb3MpIGxhIGF1dG9ub23DrWEgeSBsb3MgZGVyZWNob3MsIHF1ZSBwb3NlZShtb3MpIHNvYnJlIGxhIG9icmEgeSwgY29tbyB0YWwsIGVzIChzb21vcykgcmVzcG9uc2FibGUocykgZGVsIGFsY2FuY2UganVyw61kaWNvIHkgbGVnYWwsIGRlIGVzY29nZXIgbGEgb3BjacOzbiBkZSBsYSBwdWJsaWNhY2nDs24gbyBkZSByZXN0cmljY2nDs24gZGUgbGEgcHVibGljYWNpw7NuIGRlbCBkb2N1bWVudG8gcmVnaXN0cmFkbyBlbiBlbCBSSVVELgoKCgoKU0kgRUwgRE9DVU1FTlRPIFNFIEJBU0EgRU4gVU4gVFJBQkFKTyBRVUUgSEEgU0lETyBQQVRST0NJTkFETyBPIEFQT1lBRE8gUE9SIFVOQSBBR0VOQ0lBIE8gVU5BIE9SR0FOSVpBQ0nDk04sIENPTiBFWENFUENJw5NOIERFIExBIFVOSVZFUlNJREFEIERJU1RSSVRBTCBGUkFOQ0lTQ08gSk9TRSBERSBDQUxEQVMsIExPUyBBVVRPUkVTIEdBUkFOVElaQU4gUVVFIFNFIEhBIENVTVBMSURPIENPTiBMT1MgCkRFUkVDSE9TIFkgT0JMSUdBQ0lPTkVTIFJFUVVFUklET1MgUE9SIEVMIFJFU1BFQ1RJVk8gQ09OVFJBVE8gTyBBQ1VFUkRPLgoKCgoKCgoKCgoKCgoKCgoKCgoKCgpFbiBjb25zdGFuY2lhIGRlIGxvIGFudGVyaW9yLCBmaXJtbyhhbW9zKSBlbCBwcmVzZW50ZSBkb2N1bWVudG8sIGVuIGxhIGNpdWRhZCBkZSBCb2dvdMOhLCBELkMuLCBhIGxvcyAKCgpGSVJNQSBERSBMT1MgVElUVUxBUkVTIERFIERFUkVDSE9TIERFIEFVVE9SCgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18gICBDLkMuIE5vLiBfX19fX19fX19fX19fX19fX18KX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fICAgQy5DLiBOby4gX19fX19fX19fX19fX19fX19fCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXyAgIEMuQy4gTm8uIF9fX19fX19fX19fX19fX19fXwoKCgpDb3JyZW8gRWxlY3Ryw7NuaWNvIEluc3RpdHVjaW9uYWwgZGVsIChkZSBsb3MpIEF1dG9yKGVzKToKCkF1dG9yCUNvcnJlbyBFbGVjdHLDs25pY28gCjEJCjIJCjMJCgpOb21icmUgZGUgRGlyZWN0b3IoZXMpIGRlIEdyYWRvOgoKMQkKMgkKMwkKCk5vbWJyZSBGYWN1bHRhZCB5IFByb3llY3RvIEN1cnJpY3VsYXI6CgpGYWN1bHRhZAlQcm95ZWN0byBDdXJyaWN1bGFyCgkKCgoKCgoKCk5vdGE6IEVuIGNhc28gcXVlIG5vIGVzdMOpIGRlIGFjdWVyZG8gY29uIGxhcyBjb25kaWNpb25lcyBkZSBsYSBwcmVzZW50ZSBsaWNlbmNpYSwgeSBtYW5pZmllc3RlIGFsZ3VuYSByZXN0cmljY2nDs24gc29icmUgbGEgb2JyYSwganVzdGlmaXF1ZSBsb3MgbW90aXZvcyBwb3IgbG9zIGN1YWxlcyBlbCBkb2N1bWVudG8geSBzdXMgYW5leG9zIG5vIHB1ZWRlbiBzZXIgcHVibGljYWRvcyBlbiBlbCBSZXBvc2l0b3JpbyBJbnN0aXR1Y2lvbmFsIGRlIGxhIFVuaXZlcnNpZGFkIERpc3RyaXRhbCBGcmFuY2lzY28gSm9zw6kgZGUgQ2FsZGFzIFJJVUQuCgoKU2kgcmVxdWllcmUgbcOhcyBlc3BhY2lvLCBwdWVkZSBhbmV4YXIgdW5hIGNvcGlhIHNpbWlsYXIgYSBlc3RhIGhvamEKCgo= |