Determinación del conjunto de tolerancias dimensionales y geométricas de un ensamble utilizando técnicas digitales de ingeniería inversa

Existen grandes limitaciones a la hora de recuperar una pieza cuando no se cuentan con las dimensiones y planos originales de una pieza o ensamble. Resaltando que, cuando se requiere obtener buena calidad de ensambles, piezas y mecanismos, en la industria de la manufactura las tolerancias son muy im...

Full description

Autores:
Ocoró Carabali, Leison Gilbert
Velásquez López, Elkin Duván
Tipo de recurso:
Trabajo de grado de pregrado
Fecha de publicación:
2023
Institución:
Universidad Distrital Francisco José de Caldas
Repositorio:
RIUD: repositorio U. Distrital
Idioma:
spa
OAI Identifier:
oai:repository.udistrital.edu.co:11349/38263
Acceso en línea:
http://hdl.handle.net/11349/38263
Palabra clave:
Conjunto de tolerancias geométricas
Tolerancias geométricas
Tolerancias dimensionales
Ensamble mecánico
Ingeniería inversa
Manufactura aditiva
Ingeniería Mecánica -- Tesis y disertaciones académicas
Ingeniería Inversa
Tecnología de Manufactura Aditiva
Análisis de Tolerancias en Ingeniería
Geometric tolerance set
Geometric tolerances
Dimensional tolerances
Mechanical assembly
Reverse engineering
Additive manufacturing.
Rights
License
Atribución 4.0 Internacional
id UDISTRITA2_6df55a4d1334840767bdb33ba541e52e
oai_identifier_str oai:repository.udistrital.edu.co:11349/38263
network_acronym_str UDISTRITA2
network_name_str RIUD: repositorio U. Distrital
repository_id_str
dc.title.spa.fl_str_mv Determinación del conjunto de tolerancias dimensionales y geométricas de un ensamble utilizando técnicas digitales de ingeniería inversa
dc.title.titleenglish.spa.fl_str_mv Determination of the set of dimensional and geometrical tolerances of an assembly using digital reverse engineering techniques
title Determinación del conjunto de tolerancias dimensionales y geométricas de un ensamble utilizando técnicas digitales de ingeniería inversa
spellingShingle Determinación del conjunto de tolerancias dimensionales y geométricas de un ensamble utilizando técnicas digitales de ingeniería inversa
Conjunto de tolerancias geométricas
Tolerancias geométricas
Tolerancias dimensionales
Ensamble mecánico
Ingeniería inversa
Manufactura aditiva
Ingeniería Mecánica -- Tesis y disertaciones académicas
Ingeniería Inversa
Tecnología de Manufactura Aditiva
Análisis de Tolerancias en Ingeniería
Geometric tolerance set
Geometric tolerances
Dimensional tolerances
Mechanical assembly
Reverse engineering
Additive manufacturing.
title_short Determinación del conjunto de tolerancias dimensionales y geométricas de un ensamble utilizando técnicas digitales de ingeniería inversa
title_full Determinación del conjunto de tolerancias dimensionales y geométricas de un ensamble utilizando técnicas digitales de ingeniería inversa
title_fullStr Determinación del conjunto de tolerancias dimensionales y geométricas de un ensamble utilizando técnicas digitales de ingeniería inversa
title_full_unstemmed Determinación del conjunto de tolerancias dimensionales y geométricas de un ensamble utilizando técnicas digitales de ingeniería inversa
title_sort Determinación del conjunto de tolerancias dimensionales y geométricas de un ensamble utilizando técnicas digitales de ingeniería inversa
dc.creator.fl_str_mv Ocoró Carabali, Leison Gilbert
Velásquez López, Elkin Duván
dc.contributor.advisor.none.fl_str_mv Ruiz Rosas, Victor Elberto
dc.contributor.author.none.fl_str_mv Ocoró Carabali, Leison Gilbert
Velásquez López, Elkin Duván
dc.contributor.orcid.spa.fl_str_mv Ruiz Rosas, Victor Elberto [0000-0002-6798-2534]
dc.subject.spa.fl_str_mv Conjunto de tolerancias geométricas
Tolerancias geométricas
Tolerancias dimensionales
Ensamble mecánico
Ingeniería inversa
Manufactura aditiva
topic Conjunto de tolerancias geométricas
Tolerancias geométricas
Tolerancias dimensionales
Ensamble mecánico
Ingeniería inversa
Manufactura aditiva
Ingeniería Mecánica -- Tesis y disertaciones académicas
Ingeniería Inversa
Tecnología de Manufactura Aditiva
Análisis de Tolerancias en Ingeniería
Geometric tolerance set
Geometric tolerances
Dimensional tolerances
Mechanical assembly
Reverse engineering
Additive manufacturing.
dc.subject.lemb.spa.fl_str_mv Ingeniería Mecánica -- Tesis y disertaciones académicas
Ingeniería Inversa
Tecnología de Manufactura Aditiva
Análisis de Tolerancias en Ingeniería
dc.subject.keyword.spa.fl_str_mv Geometric tolerance set
Geometric tolerances
Dimensional tolerances
Mechanical assembly
Reverse engineering
Additive manufacturing.
description Existen grandes limitaciones a la hora de recuperar una pieza cuando no se cuentan con las dimensiones y planos originales de una pieza o ensamble. Resaltando que, cuando se requiere obtener buena calidad de ensambles, piezas y mecanismos, en la industria de la manufactura las tolerancias son muy importantes. Con el creciente uso de la tecnología 3D y las sin fines de aplicaciones que puede tener, se hace necesario conocer estas variaciones dimensionales, las cuales son importantes en los ámbitos investigativos y la industria. Por ende, se requiere saber el conjunto de tolerancias geométricas y dimensionales de piezas mecánicas. En este estudio investigativo se determinó el conjunto de tolerancias geométricas y dimensionales de un ensamble mecánico fabricado mediante manufactura aditiva, utilizando técnicas de ingeniería inversa. El cual consta de 4 partes, una cuña de fijación, un soporte inferior, un cuerpo de utillaje y un soporte superior. Se utilizó una máquina de impresión 3D de filamento Tronxy xsa 500 pro, una impresora 3D de sinterizado figure 4 standalone, un escáner óptico de marca Evixscan y softwares de ingeniería avanzados, tales como; Evixscan, Geomagic design x, SolidWorks y Geomagic control x, disponibles en la Universidad Distrital Francisco José de Caldas, para poderse estimar la variación de la tolerancia en el ensamble seleccionado. Se realizó ingeniería inversa a cada una de las piezas del ensamble y se fabricaron bajo parámetros de diseño experimentales de Taguchi en las impresoras 3D. Adicionalmente se comparó el ensamble original seleccionado y los componentes fabricados por impresión 3D. De igual manera, los datos obtenidos se analizaron y compararon pertinentemente, permitiéndonos determinar el conjunto de tolerancias geométricas y dimensionales del ensamble.
publishDate 2023
dc.date.created.none.fl_str_mv 2023-07-26
dc.date.accessioned.none.fl_str_mv 2024-07-21T20:36:31Z
dc.date.available.none.fl_str_mv 2024-07-21T20:36:31Z
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/38263
url http://hdl.handle.net/11349/38263
dc.language.iso.spa.fl_str_mv spa
language spa
dc.rights.*.fl_str_mv Atribución 4.0 Internacional
Atribución 4.0 Internacional
Atribución 4.0 Internacional
Atribución 4.0 Internacional
Atribución 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/4.0/
dc.rights.acceso.spa.fl_str_mv Abierto (Texto Completo)
rights_invalid_str_mv Atribución 4.0 Internacional
http://creativecommons.org/licenses/by/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 https://repository.udistrital.edu.co/bitstreams/42e85a56-4697-41da-b2b3-2cd0f6c798b1/download
https://repository.udistrital.edu.co/bitstreams/49ba0cff-1999-4a9e-9024-d1e6b3a09a47/download
https://repository.udistrital.edu.co/bitstreams/192761ba-103e-45f4-a4d2-dd1897da3931/download
https://repository.udistrital.edu.co/bitstreams/8fd8d882-9dc8-4858-a77b-3a392e3764cb/download
https://repository.udistrital.edu.co/bitstreams/85484dd9-57a9-47b0-9518-d341e678bca8/download
https://repository.udistrital.edu.co/bitstreams/28cc9a35-3a6d-4402-8e06-7691c47aec58/download
https://repository.udistrital.edu.co/bitstreams/53d5cef7-1a3e-4846-9b60-e0114d17042a/download
bitstream.checksum.fl_str_mv 5b6742c6455826384a2ff6cab0fc26e1
2b9d012d048a51b2386c22fee1eec925
55d317db971065503a4e29d030dc23de
4d1920906af44a9d3ee7fd6f64aadd99
a2285890945df3f214eb59143606637e
0175ea4a2d4caec4bbcc37e300941108
997daf6c648c962d566d7b082dac908d
bitstream.checksumAlgorithm.fl_str_mv MD5
MD5
MD5
MD5
MD5
MD5
MD5
repository.name.fl_str_mv Repositorio Universidad Distrital
repository.mail.fl_str_mv repositorio@udistrital.edu.co
_version_ 1828165033645834240
spelling Ruiz Rosas, Victor ElbertoOcoró Carabali, Leison GilbertVelásquez López, Elkin DuvánRuiz Rosas, Victor Elberto [0000-0002-6798-2534]2024-07-21T20:36:31Z2024-07-21T20:36:31Z2023-07-26http://hdl.handle.net/11349/38263Existen grandes limitaciones a la hora de recuperar una pieza cuando no se cuentan con las dimensiones y planos originales de una pieza o ensamble. Resaltando que, cuando se requiere obtener buena calidad de ensambles, piezas y mecanismos, en la industria de la manufactura las tolerancias son muy importantes. Con el creciente uso de la tecnología 3D y las sin fines de aplicaciones que puede tener, se hace necesario conocer estas variaciones dimensionales, las cuales son importantes en los ámbitos investigativos y la industria. Por ende, se requiere saber el conjunto de tolerancias geométricas y dimensionales de piezas mecánicas. En este estudio investigativo se determinó el conjunto de tolerancias geométricas y dimensionales de un ensamble mecánico fabricado mediante manufactura aditiva, utilizando técnicas de ingeniería inversa. El cual consta de 4 partes, una cuña de fijación, un soporte inferior, un cuerpo de utillaje y un soporte superior. Se utilizó una máquina de impresión 3D de filamento Tronxy xsa 500 pro, una impresora 3D de sinterizado figure 4 standalone, un escáner óptico de marca Evixscan y softwares de ingeniería avanzados, tales como; Evixscan, Geomagic design x, SolidWorks y Geomagic control x, disponibles en la Universidad Distrital Francisco José de Caldas, para poderse estimar la variación de la tolerancia en el ensamble seleccionado. Se realizó ingeniería inversa a cada una de las piezas del ensamble y se fabricaron bajo parámetros de diseño experimentales de Taguchi en las impresoras 3D. Adicionalmente se comparó el ensamble original seleccionado y los componentes fabricados por impresión 3D. De igual manera, los datos obtenidos se analizaron y compararon pertinentemente, permitiéndonos determinar el conjunto de tolerancias geométricas y dimensionales del ensamble.There are great limitations when it comes to recovering a part when the original dimensions and drawings of a part or assembly are not available. It should be noted that, when it is required to obtain good quality assemblies, parts and mechanisms, tolerances are very important in the manufacturing industry. With the increasing use of 3D technology and the endless applications it can have, it is necessary to know these dimensional variations, which are important in research and industry. Therefore, it is necessary to know the set of geometric and dimensional tolerances of mechanical parts. In this research study, the set of geometric and dimensional tolerances of a mechanical assembly manufactured by additive manufacturing, using reverse engineering techniques, was determined. It consists of 4 parts, a fixing wedge, a lower support, a tooling body, and an upper support. A Tronxy xsa 500 pro filament 3D printing machine, a figure 4 standalone sintering 3D printer, an Evixscan optical scanner and advanced engineering software, such as Evixscan, Geomagic design x, SolidWorks and Geomagic control x, available at the Universidad Distrital Francisco José de Caldas, were used to estimate the tolerance variation in the selected assembly. Each part of the assembly was reverse engineered and fabricated under Taguchi's experimental design parameters in the 3D printers. Additionally, the original assembly selected, and the components manufactured by 3D printing were compared. Likewise, the data obtained were analyzed and compared, allowing us to determine the set of geometric and dimensional tolerances of the assembly.pdfspaAtribución 4.0 InternacionalAtribución 4.0 InternacionalAtribución 4.0 InternacionalAtribución 4.0 InternacionalAtribución 4.0 Internacionalhttp://creativecommons.org/licenses/by/4.0/Abierto (Texto Completo)http://purl.org/coar/access_right/c_abf2Conjunto de tolerancias geométricasTolerancias geométricasTolerancias dimensionalesEnsamble mecánicoIngeniería inversaManufactura aditivaIngeniería Mecánica -- Tesis y disertaciones académicasIngeniería InversaTecnología de Manufactura AditivaAnálisis de Tolerancias en IngenieríaGeometric tolerance setGeometric tolerancesDimensional tolerancesMechanical assemblyReverse engineeringAdditive manufacturing.Determinación del conjunto de tolerancias dimensionales y geométricas de un ensamble utilizando técnicas digitales de ingeniería inversaDetermination of the set of dimensional and geometrical tolerances of an assembly using digital reverse engineering techniquesbachelorThesisInvestigación-Innovacióninfo:eu-repo/semantics/bachelorThesishttp://purl.org/coar/resource_type/c_7a1fTHUMBNAILOcoroCarabaliLeisonGilbert2023.pdf.jpgOcoroCarabaliLeisonGilbert2023.pdf.jpgIM Thumbnailimage/jpeg5552https://repository.udistrital.edu.co/bitstreams/42e85a56-4697-41da-b2b3-2cd0f6c798b1/download5b6742c6455826384a2ff6cab0fc26e1MD58Licencia de uso y publicacion.pdf.jpgLicencia de uso y publicacion.pdf.jpgIM Thumbnailimage/jpeg13031https://repository.udistrital.edu.co/bitstreams/49ba0cff-1999-4a9e-9024-d1e6b3a09a47/download2b9d012d048a51b2386c22fee1eec925MD59ORIGINALOcoroCarabaliLeisonGilbert2023.pdfOcoroCarabaliLeisonGilbert2023.pdfapplication/pdf7263083https://repository.udistrital.edu.co/bitstreams/192761ba-103e-45f4-a4d2-dd1897da3931/download55d317db971065503a4e29d030dc23deMD51OcoroCarabaliLeisonGilbert2023Anexos.zipOcoroCarabaliLeisonGilbert2023Anexos.zipapplication/zip2143832https://repository.udistrital.edu.co/bitstreams/8fd8d882-9dc8-4858-a77b-3a392e3764cb/download4d1920906af44a9d3ee7fd6f64aadd99MD52Licencia de uso y publicacion.pdfLicencia de uso y publicacion.pdfapplication/pdf219837https://repository.udistrital.edu.co/bitstreams/85484dd9-57a9-47b0-9518-d341e678bca8/downloada2285890945df3f214eb59143606637eMD55CC-LICENSElicense_rdflicense_rdfapplication/rdf+xml; charset=utf-8908https://repository.udistrital.edu.co/bitstreams/28cc9a35-3a6d-4402-8e06-7691c47aec58/download0175ea4a2d4caec4bbcc37e300941108MD56LICENSElicense.txtlicense.txttext/plain; charset=utf-87167https://repository.udistrital.edu.co/bitstreams/53d5cef7-1a3e-4846-9b60-e0114d17042a/download997daf6c648c962d566d7b082dac908dMD5711349/38263oai:repository.udistrital.edu.co:11349/382632024-07-22 01:01:40.23http://creativecommons.org/licenses/by/4.0/Atribución 4.0 Internacionalopen.accesshttps://repository.udistrital.edu.coRepositorio Universidad Distritalrepositorio@udistrital.edu.coTElDRU5DSUEgWSBBVVRPUklaQUNJw5NOIEVTUEVDSUFMIFBBUkEgUFVCTElDQVIgWSBQRVJNSVRJUiBMQSBDT05TVUxUQSBZIFVTTyBERSBDT05URU5JRE9TIEVOIEVMIFJFUE9TSVRPUklPIElOU1RJVFVDSU9OQUwgREUgTEEgVU5JVkVSU0lEQUQgRElTVFJJVEFMCgpUw6lybWlub3MgeSBjb25kaWNpb25lcyBkZSB1c28gcGFyYSBwdWJsaWNhY2nDs24gZGUgb2JyYXMgZW4gZWwgUmVwb3NpdG9yaW8gSW5zdGl0dWNpb25hbCBkZSBsYSBVbml2ZXJzaWRhZCBEaXN0cml0YWwgRnJhbmNpc2NvIEpvc8OpIGRlIENhbGRhcyAoUklVRCkKCkNvbW8gdGl0dWxhcihlcykgZGVsKG9zKSBkZXJlY2hvKHMpIGRlIGF1dG9yLCBjb25maWVybyAoZXJpbW9zKSBhIGxhIFVuaXZlcnNpZGFkIERpc3RyaXRhbCBGcmFuY2lzY28gSm9zw6kgZGUgQ2FsZGFzIChlbiBhZGVsYW50ZSwgTEEgVU5JVkVSU0lEQUQpIHVuYSBsaWNlbmNpYSBwYXJhIHVzbyBubyBleGNsdXNpdmEsIGxpbWl0YWRhIHkgZ3JhdHVpdGEgc29icmUgbGEgb2JyYSBxdWUgaW50ZWdyYXLDoSBlbCBSZXBvc2l0b3JpbyBJbnN0aXR1Y2lvbmFsIChlbiBhZGVsYW50ZSwgUklVRCksIGRlIGFjdWVyZG8gYSBsYXMgc2lndWllbnRlcyByZWdsYXMsIGxhcyBjdWFsZXMgZGVjbGFybyAoYW1vcykgY29ub2NlciB5IGFjZXB0YXI6CgphKQlFc3RhcsOhIHZpZ2VudGUgYSBwYXJ0aXIgZGUgbGEgZmVjaGEgZW4gcXVlIHNlIGluY2x1eWEgZW4gZWwgUklVRCB5IGhhc3RhIHBvciB1biBwbGF6byBkZSBkaWV6ICgxMCkgQcOxb3MsIHByb3Jyb2dhYmxlIGluZGVmaW5pZGFtZW50ZSBwb3IgZWwgdGllbXBvIHF1ZSBkdXJlIGVsIGRlcmVjaG8gUGF0cmltb25pYWwgZGVsIGF1dG9yOyBsYSBjdWFsIHBvZHLDoSBkYXJzZSBwb3IgdGVybWluYWRhIHByZXZpYSBzb2xpY2l0dWQgYSBMQSBVTklWRVJTSURBRCBwb3IgZXNjcml0byBjb24gdW5hIGFudGVsYWNpw7NuIGRlIGRvcyAoMikgbWVzZXMgYW50ZXMgZGVsIHZlbmNpbWllbnRvIGRlbCBwbGF6byBpbmljaWFsIG8gZWwgZGUgc3UocykgcHLDs3Jyb2dhKHMpLgoKYikJTEEgVU5JVkVSU0lEQUQgcG9kcsOhIHB1YmxpY2FyIGxhIG9icmEgZW4gbGFzIGRpc3RpbnRhcyB2ZXJzaW9uZXMgcmVxdWVyaWRhcyBwb3IgZWwgUklVRCAoZGlnaXRhbCwgaW1wcmVzbywgZWxlY3Ryw7NuaWNvIHUgb3RybyBtZWRpbyBjb25vY2lkbyBvIHBvciBjb25vY2VyKSBMQSBVTklWRVJTSURBRCBubyBzZXLDoSByZXNwb25zYWJsZSBlbiBlbCBldmVudG8gcXVlIGVsIGRvY3VtZW50byBhcGFyZXpjYSByZWZlcmVuY2lhZG8gZW4gbW90b3JlcyBkZSBiw7pzcXVlZGEgbyByZXBvc2l0b3Jpb3MgZGlmZXJlbnRlcyBhbCBSSVVELCB1bmEgdmV6IGVsKG9zKSBhdXRvcihlcykgc29saWNpdGVuIHN1IGVsaW1pbmFjacOzbiBkZWwgUklVRCwgZGFkbyBxdWUgbGEgbWlzbWEgc2Vyw6EgcHVibGljYWRhIGVuIEludGVybmV0LgoKYykJTGEgYXV0b3JpemFjacOzbiBzZSBoYWNlIGEgdMOtdHVsbyBncmF0dWl0bywgcG9yIGxvIHRhbnRvLCBsb3MgYXV0b3JlcyByZW51bmNpYW4gYSByZWNpYmlyIGJlbmVmaWNpbyBhbGd1bm8gcG9yIGxhIHB1YmxpY2FjacOzbiwgZGlzdHJpYnVjacOzbiwgY29tdW5pY2FjacOzbiBww7pibGljYSB5IGN1YWxxdWllciBvdHJvIHVzbyBxdWUgc2UgaGFnYSBlbiBsb3MgdMOpcm1pbm9zIGRlIGxhIHByZXNlbnRlIGxpY2VuY2lhIHkgZGUgbGEgbGljZW5jaWEgZGUgdXNvIGNvbiBxdWUgc2UgcHVibGljYSAoQ3JlYXRpdmUgQ29tbW9ucykuCgpkKQlMb3MgY29udGVuaWRvcyBwdWJsaWNhZG9zIGVuIGVsIFJJVUQgc29uIG9icmEocykgb3JpZ2luYWwoZXMpIHNvYnJlIGxhIGN1YWwoZXMpIGVsKG9zKSBhdXRvcihlcykgY29tbyB0aXR1bGFyZXMgZGUgbG9zIGRlcmVjaG9zIGRlIGF1dG9yLCBhc3VtZW4gdG90YWwgcmVzcG9uc2FiaWxpZGFkIHBvciBlbCBjb250ZW5pZG8gZGUgc3Ugb2JyYSBhbnRlIExBIFVOSVZFUlNJREFEIHkgYW50ZSB0ZXJjZXJvcy4gRW4gdG9kbyBjYXNvIExBIFVOSVZFUlNJREFEIHNlIGNvbXByb21ldGUgYSBpbmRpY2FyIHNpZW1wcmUgbGEgYXV0b3LDrWEgaW5jbHV5ZW5kbyBlbCBub21icmUgZGVsIGF1dG9yIHkgbGEgZmVjaGEgZGUgcHVibGljYWNpw7NuLgoKZSkJTEEgVU5JVkVSU0lEQUQgcG9kcsOhIGluY2x1aXIgbGEgb2JyYSBlbiBsb3Mgw61uZGljZXMgeSBidXNjYWRvcmVzIHF1ZSBlc3RpbWVuIG5lY2VzYXJpb3MgcGFyYSBtYXhpbWl6YXIgbGEgdmlzaWJpbGlkYWQgZWwgdXNvIHkgZWwgaW1wYWN0byBkZSBsYSBwcm9kdWNjacOzbiBjaWVudMOtZmljYSwgYXJ0w61zdGljYSB5IGFjYWTDqW1pY2EgZW4gbGEgY29tdW5pZGFkIGxvY2FsLCBuYWNpb25hbCBvIGludGVybmFjaW9uYWwuCgoKZikJTEEgVU5JVkVSU0lEQUQgcG9kcsOhIGNvbnZlcnRpciBsYSBvYnJhIGEgY3VhbHF1aWVyIG1lZGlvIG8gZm9ybWF0byBjb24gZWwgZmluIGRlIHN1IHByZXNlcnZhY2nDs24gZW4gZWwgdGllbXBvIHF1ZSBsYSBwcmVzZW50ZSBsaWNlbmNpYSB5IGxhIGRlIHN1cyBwcsOzcnJvZ2FzLgoKCkNvbiBiYXNlIGVuIGxvIGFudGVyaW9yIGF1dG9yaXpvKGFtb3MpLCBhIGZhdm9yIGRlbCBSSVVEIHkgZGUgc3VzIHVzdWFyaW9zLCBsYSBwdWJsaWNhY2nDs24geSBjb25zdWx0YSBkZSBsYSBzaWd1aWVudGUgb2JyYToKClRpdHVsbwoKQXV0b3IgICAgICAgQXBlbGxpZG9zICAgICAgICAgTm9tYnJlcwoKMQoKMgoKMwoKCmcpCUF1dG9yaXpvKGFtb3MpLCBxdWUgbGEgb2JyYSBzZWEgcHVlc3RhIGEgZGlzcG9zaWNpw7NuIGRlbCBww7pibGljbyBlbiBsb3MgdMOpcm1pbm9zIGVzdGFibGVjaWRvcyBlbiBsb3MgbGl0ZXJhbGVzIGFudGVyaW9yZXMsIGJham8gbG9zIGzDrW1pdGVzIGRlZmluaWRvcyBwb3IgTEEgVU5JVkVSU0lEQUQsIGVuIGxhcyDigJxDb25kaWNpb25lcyBkZSB1c28gZGUgZXN0cmljdG8gY3VtcGxpbWllbnRv4oCdIGRlIGxvcyByZWN1cnNvcyBwdWJsaWNhZG9zIGVuIGVsIFJJVUQsIGN1eW8gdGV4dG8gY29tcGxldG8gc2UgcHVlZGUgY29uc3VsdGFyIGVuIGh0dHA6Ly9yZXBvc2l0b3J5LnVkaXN0cml0YWwuZWR1LmNvLwoKaCkJQ29ub3pjbyhjZW1vcykgeSBhY2VwdG8oYW1vcykgcXVlIG90b3JnbyhhbW9zKSB1bmEgbGljZW5jaWEgZXNwZWNpYWwgcGFyYSBwdWJsaWNhY2nDs24gZGUgb2JyYXMgZW4gZWwgUmVwb3NpdG9yaW8gSW5zdGl0dWNpb25hbCBkZSBsYSBVbml2ZXJzaWRhZCBEaXN0cml0YWwgRnJhbmNpc2NvIEpvc8OpIGRlIENhbGRhcywgbGljZW5jaWEgICBkZSBsYSBjdWFsIGhlIChoZW1vcykgb2J0ZW5pZG8gdW5hIGNvcGlhLgoKaSkJTWFuaWZpZXN0byhhbW9zKSBtaSAobnVlc3RybykgdG90YWwgYWN1ZXJkbyBjb24gbGFzIGNvbmRpY2lvbmVzIGRlIHVzbyB5IHB1YmxpY2FjacOzbiBlbiBlbCBSZXBvc2l0b3JpbyBJbnN0aXR1Y2lvbmFsIGRlIGxhIFVuaXZlcnNpZGFkIERpc3RyaXRhbCBGcmFuY2lzY28gSm9zw6kgZGUgQ2FsZGFzIHF1ZSBzZSBkZXNjcmliZW4geSBleHBsaWNhbiBlbiBlbCBwcmVzZW50ZSBkb2N1bWVudG8uCgpqKQlDb25vemNvKGNlbW9zKSBsYSBub3JtYXRpdmlkYWQgaW50ZXJuYSBkZSAgTEEgVU5JVkVSU0lEQUQ7IGVuIGNvbmNyZXRvLCBlbCBBY3VlcmRvIDAwNCBkZSAyMDEyIGRlbCBDU1UsIEFjdWVyZG8gMDIzIGRlIDIwMTIgZGVsIENTVSBzb2JyZSBQb2zDrXRpY2EgRWRpdG9yaWFsLCBBY3VlcmRvIDAyNiAgZGVsIDMxIGRlIGp1bGlvIGRlIDIwMTIgc29icmUgZWwgcHJvY2VkaW1pZW50byBwYXJhIGxhIHB1YmxpY2FjacOzbiBkZSB0ZXNpcyBkZSBwb3N0Z3JhZG8gZGUgbG9zIGVzdHVkaWFudGVzIGRlIGxhIFVuaXZlcnNpZGFkIERpc3RyaXRhbCBGcmFuY2lzY28gSm9zw6kgZGUgQ2FsZGFzLCAgQWN1ZXJkbyAwMzAgZGVsIDAzIGRlIGRpY2llbWJyZSBkZSAyMDEzIHBvciBtZWRpbyBkZWwgY3VhbCBzZSBjcmVhIGVsIFJlcG9zaXRvcmlvIEluc3RpdHVjaW9uYWwgZGUgbGEgVW5pdmVyc2lkYWQgRGlzdHJpdGFsIEZyYW5jaXNjbyBKb3PDqSBkZSBDYWxkYXMsIEFjdWVyZG8gMDM4IGRlIDIwMTUgMjAxNSDigJxwb3IgZWwgY3VhbCBzZSBtb2RpZmljYSBlbCBBY3VlcmRvIDAzMSBkZSAyMDE0IGRlIDIwMTQgcXVlIHJlZ2xhbWVudGEgZWwgdHJhYmFqbyBkZSBncmFkbyBwYXJhIGxvcyBlc3R1ZGlhbnRlcyBkZSBwcmVncmFkbyBkZSBsYSBVbml2ZXJzaWRhZCBEaXN0cml0YWwgRnJhbmNpc2NvIEpvc8OpIGRlIENhbGRhcyB5IHNlIGRpY3RhbiBvdHJhcyBkaXJlY3RyaWNlc+KAnSB5IGxhcyBkZW3DoXMgbm9ybWFzIGNvbmNvcmRhbnRlIHkgY29tcGxlbWVudGFyaWFzIHF1ZSByaWdlbiBhbCByZXNwZWN0bywgZXNwZWNpYWxtZW50ZSBsYSBsZXkgMjMgZGUgMTk4MiwgbGEgbGV5IDQ0IGRlIDE5OTMgeSBsYSBkZWNpc2nDs24gQW5kaW5hIDM1MSBkZSAxOTkzLiBFc3RvcyBkb2N1bWVudG9zIHBvZHLDoW4gc2VyIGNvbnN1bHRhZG9zIHkgZGVzY2FyZ2Fkb3MgZW4gZWwgcG9ydGFsIHdlYiBkZSBsYSBiaWJsaW90ZWNhIGh0dHA6Ly9zaXN0ZW1hZGViaWJsaW90ZWNhcy51ZGlzdHJpdGFsLmVkdS5jby8KCmspCUFjZXB0byhhbW9zKSBxdWUgTEEgVU5JVkVSU0lEQUQgbm8gc2UgcmVzcG9uc2FiaWxpemEgcG9yIGxhcyBpbmZyYWNjaW9uZXMgYSBsYSBwcm9waWVkYWQgaW50ZWxlY3R1YWwgbyBEZXJlY2hvcyBkZSBBdXRvciBjYXVzYWRhcyBwb3IgbG9zIHRpdHVsYXJlcyBkZSBsYSBwcmVzZW50ZSBMaWNlbmNpYSB5IGRlY2xhcmFtb3MgcXVlIG1hbnRlbmRyw6kgKGVtb3MpIGluZGVtbmUgYSBMQSBVTklWRVJTSURBRCBwb3IgbGFzIHJlY2xhbWFjaW9uZXMgbGVnYWxlcyBkZSBjdWFscXVpZXIgdGlwbyBxdWUgbGxlZ2FyZW4gYSBwcmVzZW50YXJzZSBwb3IgdmlvbGFjacOzbiBkZSBkZXJlY2hvcyBhIGxhIHByb3BpZWRhZCBpbnRlbGVjdHVhbCBvIGRlIEF1dG9yIHJlbGFjaW9uYWRvcyBjb24gbG9zIGRvY3VtZW50b3MgcmVnaXN0cmFkb3MgZW4gZWwgUklVRC4KCmwpCUVsIChsb3MpIGF1dG9yKGVzKSBtYW5pZmllc3RhKG1vcykgcXVlIGxhIG9icmEgb2JqZXRvIGRlIGxhIHByZXNlbnRlIGF1dG9yaXphY2nDs24gZXMgb3JpZ2luYWwsIGRlIGV4Y2x1c2l2YSBhdXRvcsOtYSwgeSBzZSByZWFsaXrDsyBzaW4gdmlvbGFyIG8gdXN1cnBhciBkZXJlY2hvcyBkZSBhdXRvciBkZSB0ZXJjZXJvczsgZGUgdGFsIHN1ZXJ0ZSwgZW4gY2FzbyBkZSBwcmVzZW50YXJzZSBjdWFscXVpZXIgcmVjbGFtYWNpw7NuIG8gYWNjacOzbiBwb3IgcGFydGUgZGUgdW4gdGVyY2VybyBlbiBjdWFudG8gYSBsb3MgZGVyZWNob3MgZGUgYXV0b3Igc29icmUgbGEgb2JyYSwgZWwgKGxvcykgZXN0dWRpYW50ZShzKSDigJMgYXV0b3IoZXMpIGFzdW1pcsOhKG4pIHRvZGEgbGEgcmVzcG9uc2FiaWxpZGFkIHkgc2FsZHLDoShuKSBlbiBkZWZlbnNhIGRlIGxvcyBkZXJlY2hvcyBhcXXDrSBhdXRvcml6YWRvcy4gUGFyYSB0b2RvcyBsb3MgZWZlY3RvcywgTEEgVU5JVkVSU0lEQUQgYWN0w7phIGNvbW8gdW4gdGVyY2VybyBkZSBidWVuYSBmZS4KCgptKQlFbCAobG9zKSBhdXRvcihlcykgbWFuaWZpZXN0YShtb3MpIHF1ZSBjb25vemNvKGNlbW9zKSBsYSBhdXRvbm9tw61hIHkgbG9zIGRlcmVjaG9zLCBxdWUgcG9zZWUobW9zKSBzb2JyZSBsYSBvYnJhIHksIGNvbW8gdGFsLCBlcyAoc29tb3MpIHJlc3BvbnNhYmxlKHMpIGRlbCBhbGNhbmNlIGp1csOtZGljbyB5IGxlZ2FsLCBkZSBlc2NvZ2VyIGxhIG9wY2nDs24gZGUgbGEgcHVibGljYWNpw7NuIG8gZGUgcmVzdHJpY2Npw7NuIGRlIGxhIHB1YmxpY2FjacOzbiBkZWwgZG9jdW1lbnRvIHJlZ2lzdHJhZG8gZW4gZWwgUklVRC4KCgoKCgoKU0kgRUwgRE9DVU1FTlRPIFNFIEJBU0EgRU4gVU4gVFJBQkFKTyBRVUUgSEEgU0lETyBQQVRST0NJTkFETyBPIEFQT1lBRE8gUE9SIFVOQSBBR0VOQ0lBIE8gVU5BIE9SR0FOSVpBQ0nDk04sIENPTiBFWENFUENJw5NOIERFIExBIFVOSVZFUlNJREFEIERJU1RSSVRBTCBGUkFOQ0lTQ08gSk9TRSBERSBDQUxEQVMsIExPUyBBVVRPUkVTIEdBUkFOVElaQU4gUVVFIFNFIEhBIENVTVBMSURPIENPTiBMT1MKREVSRUNIT1MgWSBPQkxJR0FDSU9ORVMgUkVRVUVSSURPUyBQT1IgRUwgUkVTUEVDVElWTyBDT05UUkFUTyBPIEFDVUVSRE8uCgoKCgoKCgoKCgoKCgoKCgoKCgoKCkVuIGNvbnN0YW5jaWEgZGUgbG8gYW50ZXJpb3IsIGZpcm1vKGFtb3MpIGVsIHByZXNlbnRlIGRvY3VtZW50bywgZW4gbGEgY2l1ZGFkIGRlIEJvZ290w6EsIEQuQy4sIGEgbG9zCgoKRklSTUEgREUgTE9TIFRJVFVMQVJFUyBERSBERVJFQ0hPUyBERSBBVVRPUgoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fICAgQy5DLiBOby4gX19fX19fX19fX19fX19fX19fCgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18gICBDLkMuIE5vLiBfX19fX19fX19fX19fX19fX18KCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXyAgIEMuQy4gTm8uIF9fX19fX19fX19fX19fX19fXwoKCgpDb3JyZW8gRWxlY3Ryw7NuaWNvIEluc3RpdHVjaW9uYWwgZGVsIChkZSBsb3MpIEF1dG9yKGVzKToKCkF1dG9yCSAgICAgIENvcnJlbyBFbGVjdHLDs25pY28KCjEKCjIKCjMKCk5vbWJyZSBkZSBEaXJlY3RvcihlcykgZGUgR3JhZG86CgoxCgoyCgozCgpOb21icmUgRmFjdWx0YWQgeSBQcm95ZWN0byBDdXJyaWN1bGFyOgoKRmFjdWx0YWQJUHJveWVjdG8gQ3VycmljdWxhcgoKCgoKCgoKCk5vdGE6IEVuIGNhc28gcXVlIG5vIGVzdMOpIGRlIGFjdWVyZG8gY29uIGxhcyBjb25kaWNpb25lcyBkZSBsYSBwcmVzZW50ZSBsaWNlbmNpYSwgeSBtYW5pZmllc3RlIGFsZ3VuYSByZXN0cmljY2nDs24gc29icmUgbGEgb2JyYSwganVzdGlmaXF1ZSBsb3MgbW90aXZvcyBwb3IgbG9zIGN1YWxlcyBlbCBkb2N1bWVudG8geSBzdXMgYW5leG9zIG5vIHB1ZWRlbiBzZXIgcHVibGljYWRvcyBlbiBlbCBSZXBvc2l0b3JpbyBJbnN0aXR1Y2lvbmFsIGRlIGxhIFVuaXZlcnNpZGFkIERpc3RyaXRhbCBGcmFuY2lzY28gSm9zw6kgZGUgQ2FsZGFzIFJJVUQuCgoKU2kgcmVxdWllcmUgbcOhcyBlc3BhY2lvLCBwdWVkZSBhbmV4YXIgdW5hIGNvcGlhIHNpbWlsYXIgYSBlc3RhIGhvamEK