Estudio comparativo de modelos de agrupamiento para el reconocimiento de patrones de corrupción en contrataciones públicas

La corrupción es un fenómeno que ha estado presente en las sociedades desde tiempos de antaño, por lo cual ha sido ampliamente estudiada desde diferentes perspectivas para ayudar a su comprensión. La corrupción se ha vuelto un tema cada vez más recurrente en la administración de los gobiernos y en g...

Full description

Autores:
Tipo de recurso:
Trabajo de grado de pregrado
Fecha de publicación:
2021
Institución:
Universidad Distrital Francisco José de Caldas
Repositorio:
RIUD: repositorio U. Distrital
Idioma:
spa
OAI Identifier:
oai:repository.udistrital.edu.co:11349/28692
Acceso en línea:
http://hdl.handle.net/11349/28692
Palabra clave:
Agrupamiento
Contratación Pública
Corrupción
DBSCAN
Gustafson-Kessel
Patrones
Ingeniería Electrónica - Tesis y disertaciones académicas
Corrupción administrativa - Colombia
Administración pública - Aspectos jurídicos - Colombia
Contratos administrativos - Aspectos jurídicos - Colombia
Contratos públicos - Prácticas corruptas - Colombia
Clustering
Corruption
DBSCAN
Gustafson-Kessel
Patterns
Public Procurements
Rights
License
Atribución-NoComercial-SinDerivadas 4.0 Internacional
id UDISTRITA2_bc609008213a198e99b5cda93b5602aa
oai_identifier_str oai:repository.udistrital.edu.co:11349/28692
network_acronym_str UDISTRITA2
network_name_str RIUD: repositorio U. Distrital
repository_id_str
dc.title.spa.fl_str_mv Estudio comparativo de modelos de agrupamiento para el reconocimiento de patrones de corrupción en contrataciones públicas
dc.title.titleenglish.spa.fl_str_mv Comparative study of clustering models for recognition of corruption patterns in public procurement
title Estudio comparativo de modelos de agrupamiento para el reconocimiento de patrones de corrupción en contrataciones públicas
spellingShingle Estudio comparativo de modelos de agrupamiento para el reconocimiento de patrones de corrupción en contrataciones públicas
Agrupamiento
Contratación Pública
Corrupción
DBSCAN
Gustafson-Kessel
Patrones
Ingeniería Electrónica - Tesis y disertaciones académicas
Corrupción administrativa - Colombia
Administración pública - Aspectos jurídicos - Colombia
Contratos administrativos - Aspectos jurídicos - Colombia
Contratos públicos - Prácticas corruptas - Colombia
Clustering
Corruption
DBSCAN
Gustafson-Kessel
Patterns
Public Procurements
title_short Estudio comparativo de modelos de agrupamiento para el reconocimiento de patrones de corrupción en contrataciones públicas
title_full Estudio comparativo de modelos de agrupamiento para el reconocimiento de patrones de corrupción en contrataciones públicas
title_fullStr Estudio comparativo de modelos de agrupamiento para el reconocimiento de patrones de corrupción en contrataciones públicas
title_full_unstemmed Estudio comparativo de modelos de agrupamiento para el reconocimiento de patrones de corrupción en contrataciones públicas
title_sort Estudio comparativo de modelos de agrupamiento para el reconocimiento de patrones de corrupción en contrataciones públicas
dc.contributor.advisor.spa.fl_str_mv Melgarejo, Miguel
dc.subject.spa.fl_str_mv Agrupamiento
Contratación Pública
Corrupción
DBSCAN
Gustafson-Kessel
Patrones
topic Agrupamiento
Contratación Pública
Corrupción
DBSCAN
Gustafson-Kessel
Patrones
Ingeniería Electrónica - Tesis y disertaciones académicas
Corrupción administrativa - Colombia
Administración pública - Aspectos jurídicos - Colombia
Contratos administrativos - Aspectos jurídicos - Colombia
Contratos públicos - Prácticas corruptas - Colombia
Clustering
Corruption
DBSCAN
Gustafson-Kessel
Patterns
Public Procurements
dc.subject.lemb.spa.fl_str_mv Ingeniería Electrónica - Tesis y disertaciones académicas
Corrupción administrativa - Colombia
Administración pública - Aspectos jurídicos - Colombia
Contratos administrativos - Aspectos jurídicos - Colombia
Contratos públicos - Prácticas corruptas - Colombia
dc.subject.keyword.spa.fl_str_mv Clustering
Corruption
DBSCAN
Gustafson-Kessel
Patterns
Public Procurements
description La corrupción es un fenómeno que ha estado presente en las sociedades desde tiempos de antaño, por lo cual ha sido ampliamente estudiada desde diferentes perspectivas para ayudar a su comprensión. La corrupción se ha vuelto un tema cada vez más recurrente en la administración de los gobiernos y en gran medida en los procesos de contrataciones públicas. Dichos procesos son fundamentales para la gestión gubernamental, ya que a través de las contrataciones públicas se busca suplir cualquier necesidad que identifique el estado para cumplir con sus objetivos. Este trabajo presenta un estudio comparativo de dos modelos para el reconocimiento de patrones de corrupción en datos de contrataciones públicas basados en algoritmos de agrupamiento como lo son Gustafson-Kessel y DBSCAN (Density-based spatial clustering of applications with noise) teniendo como referencia un marco de análisis de la corrupción realizado siguiendo una adaptación de la metodología PRISMA (Preferred Reporting Items for Systematic reviews and Meta-Analyses). Para el desarrollo de este trabajo, se realiza en primer lugar una revisión multidisciplinaria de literatura que permite proponer variables relacionadas con las causas de la corrupción. En segundo lugar, se obtienen datos de contrataciones públicas vinculadas con hechos de corrupción y datos de contrataciones del Sistema Electrónico de Contratación Pública (SECOP) de Colombia, que son depurados y acondicionados para conformar la base de datos que será utilizada en el estudio. En tercer lugar, se propone la metodología experimental para desarrollar los modelos. Posteriormente se ejecuta la metodología con los algoritmos elegidos, se analiza y discute sobre sus resultados y se compara el desempeño de cada uno. Los resultados exhiben que el comportamiento de algunas variables se encuentra en línea con las causas encontradas en el marco de análisis, por ejemplo las variables Superficie, PIB y Mercado; sin embargo, otras variables como Población, Educación y Cuantía Contrato no se encuentran en línea con las causas planteadas en el marco de análisis. Teniendo en cuenta los datos disponibles y la metodología planteada, se obtuvieron mejores resultados con el modelo basado en el algoritmo Gustafson-Kessel, con relación al comportamiento esperado de los datos según el marco de análisis. En cuanto al desempeño de los modelos se observa que el basado en el algoritmo DBSCAN utiliza menos del 30% de tiempo utilizado por el algoritmo Gustafson-Kessel.
publishDate 2021
dc.date.created.spa.fl_str_mv 2021-10-12
dc.date.accessioned.none.fl_str_mv 2022-03-27T21:31:13Z
dc.date.available.none.fl_str_mv 2022-03-27T21:31:13Z
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/28692
url http://hdl.handle.net/11349/28692
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_16ec
dc.rights.uri.*.fl_str_mv http://creativecommons.org/licenses/by-nc-nd/4.0/
dc.rights.acceso.spa.fl_str_mv Restringido (Solo Referencia)
rights_invalid_str_mv Atribución-NoComercial-SinDerivadas 4.0 Internacional
http://creativecommons.org/licenses/by-nc-nd/4.0/
Restringido (Solo Referencia)
http://purl.org/coar/access_right/c_16ec
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/28692/1/VargasValbuenaAngelicaLizeth2021.pdf
http://repository.udistrital.edu.co/bitstream/11349/28692/2/Licencia%20y%20autorizaci%c3%b3n%20de%20los%20autores%20para%20publicar.pdf
http://repository.udistrital.edu.co/bitstream/11349/28692/3/license.txt
http://repository.udistrital.edu.co/bitstream/11349/28692/4/VargasValbuenaAngelicaLizeth2021.pdf.jpg
http://repository.udistrital.edu.co/bitstream/11349/28692/5/Licencia%20y%20autorizaci%c3%b3n%20de%20los%20autores%20para%20publicar.pdf.jpg
bitstream.checksum.fl_str_mv c7f8f1244e4490a6460eb09c1c0864f0
62bc3f887155a02997c7c0d439c5ab15
997daf6c648c962d566d7b082dac908d
1fd10c77bd29cfc8be1bd3e7fa407cd0
288b1aa290a23eae637ebfc17cc060e3
bitstream.checksumAlgorithm.fl_str_mv 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_ 1803712764432089088
spelling Melgarejo, Miguelwill be generated::orcid::0000-0003-3387-9931600Vargas Valbuena, Angélica LizethRodríguez Tapiero, Jean Frannlee2022-03-27T21:31:13Z2022-03-27T21:31:13Z2021-10-12http://hdl.handle.net/11349/28692La corrupción es un fenómeno que ha estado presente en las sociedades desde tiempos de antaño, por lo cual ha sido ampliamente estudiada desde diferentes perspectivas para ayudar a su comprensión. La corrupción se ha vuelto un tema cada vez más recurrente en la administración de los gobiernos y en gran medida en los procesos de contrataciones públicas. Dichos procesos son fundamentales para la gestión gubernamental, ya que a través de las contrataciones públicas se busca suplir cualquier necesidad que identifique el estado para cumplir con sus objetivos. Este trabajo presenta un estudio comparativo de dos modelos para el reconocimiento de patrones de corrupción en datos de contrataciones públicas basados en algoritmos de agrupamiento como lo son Gustafson-Kessel y DBSCAN (Density-based spatial clustering of applications with noise) teniendo como referencia un marco de análisis de la corrupción realizado siguiendo una adaptación de la metodología PRISMA (Preferred Reporting Items for Systematic reviews and Meta-Analyses). Para el desarrollo de este trabajo, se realiza en primer lugar una revisión multidisciplinaria de literatura que permite proponer variables relacionadas con las causas de la corrupción. En segundo lugar, se obtienen datos de contrataciones públicas vinculadas con hechos de corrupción y datos de contrataciones del Sistema Electrónico de Contratación Pública (SECOP) de Colombia, que son depurados y acondicionados para conformar la base de datos que será utilizada en el estudio. En tercer lugar, se propone la metodología experimental para desarrollar los modelos. Posteriormente se ejecuta la metodología con los algoritmos elegidos, se analiza y discute sobre sus resultados y se compara el desempeño de cada uno. Los resultados exhiben que el comportamiento de algunas variables se encuentra en línea con las causas encontradas en el marco de análisis, por ejemplo las variables Superficie, PIB y Mercado; sin embargo, otras variables como Población, Educación y Cuantía Contrato no se encuentran en línea con las causas planteadas en el marco de análisis. Teniendo en cuenta los datos disponibles y la metodología planteada, se obtuvieron mejores resultados con el modelo basado en el algoritmo Gustafson-Kessel, con relación al comportamiento esperado de los datos según el marco de análisis. En cuanto al desempeño de los modelos se observa que el basado en el algoritmo DBSCAN utiliza menos del 30% de tiempo utilizado por el algoritmo Gustafson-Kessel.Corruption is a phenomenon that has been present in societies since ancient times, which is why it has been widely studied from different perspectives to help understand it. Corruption has become an increasingly recurring theme in government administration and to a large extent in public procurement processes. These processes are essential for government management, since through public procurement it seeks to provide any need that the state identifies in order to achieve its objectives. This work presents a comparative study of two models for the recognition of corruption patterns in public procurement data based on clustering algorithms such as Gustafson-Kessel and DBSCAN (Density-based spatial clustering of applications with noise), taking as a reference a framework corruption analysis carried out following an adaptation of the PRISMA methodology (Preferred Reporting Items for Systematic reviews and Meta-Analyzes). For the development of this work, a multidisciplinary literature review is first carried out that allows proposing variables related to the causes of corruption. Second, data on public contracting related to acts of corruption and contracting data from the Electronic Public Procurement System (SECOP) of Colombia are obtained, which are refined and conditioned to form the database that will be used in the study. Third, the experimental methodology is proposed to develop the models. Subsequently, the methodology is executed with the chosen algorithms, its results are analyzed and discussed, and the performance of each one is compared. The results show that the behavior of some variables is in line with the causes found in the analysis framework, for example the variables Surface, GDP and Market; However, other variables such as Population, Education and Contract Amount are not in line with the causes raised in the analysis framework. Taking into account the available data and the proposed methodology, better results were obtained with the model based on the Gustafson-Kessel algorithm, in relation to the expected behavior of the data according to the analysis framework. Regarding the performance of the models, it is observed that the one based on the DBSCAN algorithm uses less than 30% of the time used by the Gustafson-Kessel algorithm.pdfspaAtribución-NoComercial-SinDerivadas 4.0 Internacionalhttp://creativecommons.org/licenses/by-nc-nd/4.0/Restringido (Solo Referencia)http://purl.org/coar/access_right/c_16ecAgrupamientoContratación PúblicaCorrupciónDBSCANGustafson-KesselPatronesIngeniería Electrónica - Tesis y disertaciones académicasCorrupción administrativa - ColombiaAdministración pública - Aspectos jurídicos - ColombiaContratos administrativos - Aspectos jurídicos - ColombiaContratos públicos - Prácticas corruptas - ColombiaClusteringCorruptionDBSCANGustafson-KesselPatternsPublic ProcurementsEstudio comparativo de modelos de agrupamiento para el reconocimiento de patrones de corrupción en contrataciones públicasComparative study of clustering models for recognition of corruption patterns in public procurementMonografíainfo:eu-repo/semantics/bachelorThesishttp://purl.org/coar/resource_type/c_7a1fORIGINALVargasValbuenaAngelicaLizeth2021.pdfVargasValbuenaAngelicaLizeth2021.pdfTrabajo de gradoapplication/pdf8128822http://repository.udistrital.edu.co/bitstream/11349/28692/1/VargasValbuenaAngelicaLizeth2021.pdfc7f8f1244e4490a6460eb09c1c0864f0MD51open accessLicencia y autorización de los autores para publicar.pdfLicencia y autorización de los autores para publicar.pdfLicencia de uso y autorizacion de los autores para publicarapplication/pdf917713http://repository.udistrital.edu.co/bitstream/11349/28692/2/Licencia%20y%20autorizaci%c3%b3n%20de%20los%20autores%20para%20publicar.pdf62bc3f887155a02997c7c0d439c5ab15MD52metadata only accessLICENSElicense.txtlicense.txttext/plain; charset=utf-87167http://repository.udistrital.edu.co/bitstream/11349/28692/3/license.txt997daf6c648c962d566d7b082dac908dMD53open accessTHUMBNAILVargasValbuenaAngelicaLizeth2021.pdf.jpgVargasValbuenaAngelicaLizeth2021.pdf.jpgIM Thumbnailimage/jpeg7982http://repository.udistrital.edu.co/bitstream/11349/28692/4/VargasValbuenaAngelicaLizeth2021.pdf.jpg1fd10c77bd29cfc8be1bd3e7fa407cd0MD54open accessLicencia y autorización de los autores para publicar.pdf.jpgLicencia y autorización de los autores para publicar.pdf.jpgIM Thumbnailimage/jpeg13151http://repository.udistrital.edu.co/bitstream/11349/28692/5/Licencia%20y%20autorizaci%c3%b3n%20de%20los%20autores%20para%20publicar.pdf.jpg288b1aa290a23eae637ebfc17cc060e3MD55open access11349/28692oai:repository.udistrital.edu.co:11349/286922023-06-13 14:41:03.951open accessRepositorio Institucional Universidad Distrital - RIUDrepositorio@udistrital.edu.coTElDRU5DSUEgWSBBVVRPUklaQUNJw5NOIEVTUEVDSUFMIFBBUkEgUFVCTElDQVIgWSBQRVJNSVRJUiBMQSBDT05TVUxUQSBZIFVTTyBERSBDT05URU5JRE9TIEVOIEVMIFJFUE9TSVRPUklPIElOU1RJVFVDSU9OQUwgREUgTEEgVU5JVkVSU0lEQUQgRElTVFJJVEFMCgpUw6lybWlub3MgeSBjb25kaWNpb25lcyBkZSB1c28gcGFyYSBwdWJsaWNhY2nDs24gZGUgb2JyYXMgZW4gZWwgUmVwb3NpdG9yaW8gSW5zdGl0dWNpb25hbCBkZSBsYSBVbml2ZXJzaWRhZCBEaXN0cml0YWwgRnJhbmNpc2NvIEpvc8OpIGRlIENhbGRhcyAoUklVRCkKCkNvbW8gdGl0dWxhcihlcykgZGVsKG9zKSBkZXJlY2hvKHMpIGRlIGF1dG9yLCBjb25maWVybyAoZXJpbW9zKSBhIGxhIFVuaXZlcnNpZGFkIERpc3RyaXRhbCBGcmFuY2lzY28gSm9zw6kgZGUgQ2FsZGFzIChlbiBhZGVsYW50ZSwgTEEgVU5JVkVSU0lEQUQpIHVuYSBsaWNlbmNpYSBwYXJhIHVzbyBubyBleGNsdXNpdmEsIGxpbWl0YWRhIHkgZ3JhdHVpdGEgc29icmUgbGEgb2JyYSBxdWUgaW50ZWdyYXLDoSBlbCBSZXBvc2l0b3JpbyBJbnN0aXR1Y2lvbmFsIChlbiBhZGVsYW50ZSwgUklVRCksIGRlIGFjdWVyZG8gYSBsYXMgc2lndWllbnRlcyByZWdsYXMsIGxhcyBjdWFsZXMgZGVjbGFybyAoYW1vcykgY29ub2NlciB5IGFjZXB0YXI6CgphKQlFc3RhcsOhIHZpZ2VudGUgYSBwYXJ0aXIgZGUgbGEgZmVjaGEgZW4gcXVlIHNlIGluY2x1eWEgZW4gZWwgUklVRCB5IGhhc3RhIHBvciB1biBwbGF6byBkZSBkaWV6ICgxMCkgQcOxb3MsIHByb3Jyb2dhYmxlIGluZGVmaW5pZGFtZW50ZSBwb3IgZWwgdGllbXBvIHF1ZSBkdXJlIGVsIGRlcmVjaG8gUGF0cmltb25pYWwgZGVsIGF1dG9yOyBsYSBjdWFsIHBvZHLDoSBkYXJzZSBwb3IgdGVybWluYWRhIHByZXZpYSBzb2xpY2l0dWQgYSBMQSBVTklWRVJTSURBRCBwb3IgZXNjcml0byBjb24gdW5hIGFudGVsYWNpw7NuIGRlIGRvcyAoMikgbWVzZXMgYW50ZXMgZGVsIHZlbmNpbWllbnRvIGRlbCBwbGF6byBpbmljaWFsIG8gZWwgZGUgc3UocykgcHLDs3Jyb2dhKHMpLgoKYikJTEEgVU5JVkVSU0lEQUQgcG9kcsOhIHB1YmxpY2FyIGxhIG9icmEgZW4gbGFzIGRpc3RpbnRhcyB2ZXJzaW9uZXMgcmVxdWVyaWRhcyBwb3IgZWwgUklVRCAoZGlnaXRhbCwgaW1wcmVzbywgZWxlY3Ryw7NuaWNvIHUgb3RybyBtZWRpbyBjb25vY2lkbyBvIHBvciBjb25vY2VyKSBMQSBVTklWRVJTSURBRCBubyBzZXLDoSByZXNwb25zYWJsZSBlbiBlbCBldmVudG8gcXVlIGVsIGRvY3VtZW50byBhcGFyZXpjYSByZWZlcmVuY2lhZG8gZW4gbW90b3JlcyBkZSBiw7pzcXVlZGEgbyByZXBvc2l0b3Jpb3MgZGlmZXJlbnRlcyBhbCBSSVVELCB1bmEgdmV6IGVsKG9zKSBhdXRvcihlcykgc29saWNpdGVuIHN1IGVsaW1pbmFjacOzbiBkZWwgUklVRCwgZGFkbyBxdWUgbGEgbWlzbWEgc2Vyw6EgcHVibGljYWRhIGVuIEludGVybmV0LgoKYykJTGEgYXV0b3JpemFjacOzbiBzZSBoYWNlIGEgdMOtdHVsbyBncmF0dWl0bywgcG9yIGxvIHRhbnRvLCBsb3MgYXV0b3JlcyByZW51bmNpYW4gYSByZWNpYmlyIGJlbmVmaWNpbyBhbGd1bm8gcG9yIGxhIHB1YmxpY2FjacOzbiwgZGlzdHJpYnVjacOzbiwgY29tdW5pY2FjacOzbiBww7pibGljYSB5IGN1YWxxdWllciBvdHJvIHVzbyBxdWUgc2UgaGFnYSBlbiBsb3MgdMOpcm1pbm9zIGRlIGxhIHByZXNlbnRlIGxpY2VuY2lhIHkgZGUgbGEgbGljZW5jaWEgZGUgdXNvIGNvbiBxdWUgc2UgcHVibGljYSAoQ3JlYXRpdmUgQ29tbW9ucykuCgpkKQlMb3MgY29udGVuaWRvcyBwdWJsaWNhZG9zIGVuIGVsIFJJVUQgc29uIG9icmEocykgb3JpZ2luYWwoZXMpIHNvYnJlIGxhIGN1YWwoZXMpIGVsKG9zKSBhdXRvcihlcykgY29tbyB0aXR1bGFyZXMgZGUgbG9zIGRlcmVjaG9zIGRlIGF1dG9yLCBhc3VtZW4gdG90YWwgcmVzcG9uc2FiaWxpZGFkIHBvciBlbCBjb250ZW5pZG8gZGUgc3Ugb2JyYSBhbnRlIExBIFVOSVZFUlNJREFEIHkgYW50ZSB0ZXJjZXJvcy4gRW4gdG9kbyBjYXNvIExBIFVOSVZFUlNJREFEIHNlIGNvbXByb21ldGUgYSBpbmRpY2FyIHNpZW1wcmUgbGEgYXV0b3LDrWEgaW5jbHV5ZW5kbyBlbCBub21icmUgZGVsIGF1dG9yIHkgbGEgZmVjaGEgZGUgcHVibGljYWNpw7NuLgoKZSkJTEEgVU5JVkVSU0lEQUQgcG9kcsOhIGluY2x1aXIgbGEgb2JyYSBlbiBsb3Mgw61uZGljZXMgeSBidXNjYWRvcmVzIHF1ZSBlc3RpbWVuIG5lY2VzYXJpb3MgcGFyYSBtYXhpbWl6YXIgbGEgdmlzaWJpbGlkYWQgZWwgdXNvIHkgZWwgaW1wYWN0byBkZSBsYSBwcm9kdWNjacOzbiBjaWVudMOtZmljYSwgYXJ0w61zdGljYSB5IGFjYWTDqW1pY2EgZW4gbGEgY29tdW5pZGFkIGxvY2FsLCBuYWNpb25hbCBvIGludGVybmFjaW9uYWwuCgoKZikJTEEgVU5JVkVSU0lEQUQgcG9kcsOhIGNvbnZlcnRpciBsYSBvYnJhIGEgY3VhbHF1aWVyIG1lZGlvIG8gZm9ybWF0byBjb24gZWwgZmluIGRlIHN1IHByZXNlcnZhY2nDs24gZW4gZWwgdGllbXBvIHF1ZSBsYSBwcmVzZW50ZSBsaWNlbmNpYSB5IGxhIGRlIHN1cyBwcsOzcnJvZ2FzLgoKCkNvbiBiYXNlIGVuIGxvIGFudGVyaW9yIGF1dG9yaXpvKGFtb3MpLCBhIGZhdm9yIGRlbCBSSVVEIHkgZGUgc3VzIHVzdWFyaW9zLCBsYSBwdWJsaWNhY2nDs24geSBjb25zdWx0YSBkZSBsYSBzaWd1aWVudGUgb2JyYToKClRpdHVsbwoKQXV0b3IgICAgICAgQXBlbGxpZG9zICAgICAgICAgTm9tYnJlcwoKMQoKMgoKMwoKCmcpCUF1dG9yaXpvKGFtb3MpLCBxdWUgbGEgb2JyYSBzZWEgcHVlc3RhIGEgZGlzcG9zaWNpw7NuIGRlbCBww7pibGljbyBlbiBsb3MgdMOpcm1pbm9zIGVzdGFibGVjaWRvcyBlbiBsb3MgbGl0ZXJhbGVzIGFudGVyaW9yZXMsIGJham8gbG9zIGzDrW1pdGVzIGRlZmluaWRvcyBwb3IgTEEgVU5JVkVSU0lEQUQsIGVuIGxhcyDigJxDb25kaWNpb25lcyBkZSB1c28gZGUgZXN0cmljdG8gY3VtcGxpbWllbnRv4oCdIGRlIGxvcyByZWN1cnNvcyBwdWJsaWNhZG9zIGVuIGVsIFJJVUQsIGN1eW8gdGV4dG8gY29tcGxldG8gc2UgcHVlZGUgY29uc3VsdGFyIGVuIGh0dHA6Ly9yZXBvc2l0b3J5LnVkaXN0cml0YWwuZWR1LmNvLwoKaCkJQ29ub3pjbyhjZW1vcykgeSBhY2VwdG8oYW1vcykgcXVlIG90b3JnbyhhbW9zKSB1bmEgbGljZW5jaWEgZXNwZWNpYWwgcGFyYSBwdWJsaWNhY2nDs24gZGUgb2JyYXMgZW4gZWwgUmVwb3NpdG9yaW8gSW5zdGl0dWNpb25hbCBkZSBsYSBVbml2ZXJzaWRhZCBEaXN0cml0YWwgRnJhbmNpc2NvIEpvc8OpIGRlIENhbGRhcywgbGljZW5jaWEgICBkZSBsYSBjdWFsIGhlIChoZW1vcykgb2J0ZW5pZG8gdW5hIGNvcGlhLgoKaSkJTWFuaWZpZXN0byhhbW9zKSBtaSAobnVlc3RybykgdG90YWwgYWN1ZXJkbyBjb24gbGFzIGNvbmRpY2lvbmVzIGRlIHVzbyB5IHB1YmxpY2FjacOzbiBlbiBlbCBSZXBvc2l0b3JpbyBJbnN0aXR1Y2lvbmFsIGRlIGxhIFVuaXZlcnNpZGFkIERpc3RyaXRhbCBGcmFuY2lzY28gSm9zw6kgZGUgQ2FsZGFzIHF1ZSBzZSBkZXNjcmliZW4geSBleHBsaWNhbiBlbiBlbCBwcmVzZW50ZSBkb2N1bWVudG8uCgpqKQlDb25vemNvKGNlbW9zKSBsYSBub3JtYXRpdmlkYWQgaW50ZXJuYSBkZSAgTEEgVU5JVkVSU0lEQUQ7IGVuIGNvbmNyZXRvLCBlbCBBY3VlcmRvIDAwNCBkZSAyMDEyIGRlbCBDU1UsIEFjdWVyZG8gMDIzIGRlIDIwMTIgZGVsIENTVSBzb2JyZSBQb2zDrXRpY2EgRWRpdG9yaWFsLCBBY3VlcmRvIDAyNiAgZGVsIDMxIGRlIGp1bGlvIGRlIDIwMTIgc29icmUgZWwgcHJvY2VkaW1pZW50byBwYXJhIGxhIHB1YmxpY2FjacOzbiBkZSB0ZXNpcyBkZSBwb3N0Z3JhZG8gZGUgbG9zIGVzdHVkaWFudGVzIGRlIGxhIFVuaXZlcnNpZGFkIERpc3RyaXRhbCBGcmFuY2lzY28gSm9zw6kgZGUgQ2FsZGFzLCAgQWN1ZXJkbyAwMzAgZGVsIDAzIGRlIGRpY2llbWJyZSBkZSAyMDEzIHBvciBtZWRpbyBkZWwgY3VhbCBzZSBjcmVhIGVsIFJlcG9zaXRvcmlvIEluc3RpdHVjaW9uYWwgZGUgbGEgVW5pdmVyc2lkYWQgRGlzdHJpdGFsIEZyYW5jaXNjbyBKb3PDqSBkZSBDYWxkYXMsIEFjdWVyZG8gMDM4IGRlIDIwMTUgMjAxNSDigJxwb3IgZWwgY3VhbCBzZSBtb2RpZmljYSBlbCBBY3VlcmRvIDAzMSBkZSAyMDE0IGRlIDIwMTQgcXVlIHJlZ2xhbWVudGEgZWwgdHJhYmFqbyBkZSBncmFkbyBwYXJhIGxvcyBlc3R1ZGlhbnRlcyBkZSBwcmVncmFkbyBkZSBsYSBVbml2ZXJzaWRhZCBEaXN0cml0YWwgRnJhbmNpc2NvIEpvc8OpIGRlIENhbGRhcyB5IHNlIGRpY3RhbiBvdHJhcyBkaXJlY3RyaWNlc+KAnSB5IGxhcyBkZW3DoXMgbm9ybWFzIGNvbmNvcmRhbnRlIHkgY29tcGxlbWVudGFyaWFzIHF1ZSByaWdlbiBhbCByZXNwZWN0bywgZXNwZWNpYWxtZW50ZSBsYSBsZXkgMjMgZGUgMTk4MiwgbGEgbGV5IDQ0IGRlIDE5OTMgeSBsYSBkZWNpc2nDs24gQW5kaW5hIDM1MSBkZSAxOTkzLiBFc3RvcyBkb2N1bWVudG9zIHBvZHLDoW4gc2VyIGNvbnN1bHRhZG9zIHkgZGVzY2FyZ2Fkb3MgZW4gZWwgcG9ydGFsIHdlYiBkZSBsYSBiaWJsaW90ZWNhIGh0dHA6Ly9zaXN0ZW1hZGViaWJsaW90ZWNhcy51ZGlzdHJpdGFsLmVkdS5jby8KCmspCUFjZXB0byhhbW9zKSBxdWUgTEEgVU5JVkVSU0lEQUQgbm8gc2UgcmVzcG9uc2FiaWxpemEgcG9yIGxhcyBpbmZyYWNjaW9uZXMgYSBsYSBwcm9waWVkYWQgaW50ZWxlY3R1YWwgbyBEZXJlY2hvcyBkZSBBdXRvciBjYXVzYWRhcyBwb3IgbG9zIHRpdHVsYXJlcyBkZSBsYSBwcmVzZW50ZSBMaWNlbmNpYSB5IGRlY2xhcmFtb3MgcXVlIG1hbnRlbmRyw6kgKGVtb3MpIGluZGVtbmUgYSBMQSBVTklWRVJTSURBRCBwb3IgbGFzIHJlY2xhbWFjaW9uZXMgbGVnYWxlcyBkZSBjdWFscXVpZXIgdGlwbyBxdWUgbGxlZ2FyZW4gYSBwcmVzZW50YXJzZSBwb3IgdmlvbGFjacOzbiBkZSBkZXJlY2hvcyBhIGxhIHByb3BpZWRhZCBpbnRlbGVjdHVhbCBvIGRlIEF1dG9yIHJlbGFjaW9uYWRvcyBjb24gbG9zIGRvY3VtZW50b3MgcmVnaXN0cmFkb3MgZW4gZWwgUklVRC4KCmwpCUVsIChsb3MpIGF1dG9yKGVzKSBtYW5pZmllc3RhKG1vcykgcXVlIGxhIG9icmEgb2JqZXRvIGRlIGxhIHByZXNlbnRlIGF1dG9yaXphY2nDs24gZXMgb3JpZ2luYWwsIGRlIGV4Y2x1c2l2YSBhdXRvcsOtYSwgeSBzZSByZWFsaXrDsyBzaW4gdmlvbGFyIG8gdXN1cnBhciBkZXJlY2hvcyBkZSBhdXRvciBkZSB0ZXJjZXJvczsgZGUgdGFsIHN1ZXJ0ZSwgZW4gY2FzbyBkZSBwcmVzZW50YXJzZSBjdWFscXVpZXIgcmVjbGFtYWNpw7NuIG8gYWNjacOzbiBwb3IgcGFydGUgZGUgdW4gdGVyY2VybyBlbiBjdWFudG8gYSBsb3MgZGVyZWNob3MgZGUgYXV0b3Igc29icmUgbGEgb2JyYSwgZWwgKGxvcykgZXN0dWRpYW50ZShzKSDigJMgYXV0b3IoZXMpIGFzdW1pcsOhKG4pIHRvZGEgbGEgcmVzcG9uc2FiaWxpZGFkIHkgc2FsZHLDoShuKSBlbiBkZWZlbnNhIGRlIGxvcyBkZXJlY2hvcyBhcXXDrSBhdXRvcml6YWRvcy4gUGFyYSB0b2RvcyBsb3MgZWZlY3RvcywgTEEgVU5JVkVSU0lEQUQgYWN0w7phIGNvbW8gdW4gdGVyY2VybyBkZSBidWVuYSBmZS4KCgptKQlFbCAobG9zKSBhdXRvcihlcykgbWFuaWZpZXN0YShtb3MpIHF1ZSBjb25vemNvKGNlbW9zKSBsYSBhdXRvbm9tw61hIHkgbG9zIGRlcmVjaG9zLCBxdWUgcG9zZWUobW9zKSBzb2JyZSBsYSBvYnJhIHksIGNvbW8gdGFsLCBlcyAoc29tb3MpIHJlc3BvbnNhYmxlKHMpIGRlbCBhbGNhbmNlIGp1csOtZGljbyB5IGxlZ2FsLCBkZSBlc2NvZ2VyIGxhIG9wY2nDs24gZGUgbGEgcHVibGljYWNpw7NuIG8gZGUgcmVzdHJpY2Npw7NuIGRlIGxhIHB1YmxpY2FjacOzbiBkZWwgZG9jdW1lbnRvIHJlZ2lzdHJhZG8gZW4gZWwgUklVRC4KCgoKCgoKU0kgRUwgRE9DVU1FTlRPIFNFIEJBU0EgRU4gVU4gVFJBQkFKTyBRVUUgSEEgU0lETyBQQVRST0NJTkFETyBPIEFQT1lBRE8gUE9SIFVOQSBBR0VOQ0lBIE8gVU5BIE9SR0FOSVpBQ0nDk04sIENPTiBFWENFUENJw5NOIERFIExBIFVOSVZFUlNJREFEIERJU1RSSVRBTCBGUkFOQ0lTQ08gSk9TRSBERSBDQUxEQVMsIExPUyBBVVRPUkVTIEdBUkFOVElaQU4gUVVFIFNFIEhBIENVTVBMSURPIENPTiBMT1MKREVSRUNIT1MgWSBPQkxJR0FDSU9ORVMgUkVRVUVSSURPUyBQT1IgRUwgUkVTUEVDVElWTyBDT05UUkFUTyBPIEFDVUVSRE8uCgoKCgoKCgoKCgoKCgoKCgoKCgoKCkVuIGNvbnN0YW5jaWEgZGUgbG8gYW50ZXJpb3IsIGZpcm1vKGFtb3MpIGVsIHByZXNlbnRlIGRvY3VtZW50bywgZW4gbGEgY2l1ZGFkIGRlIEJvZ290w6EsIEQuQy4sIGEgbG9zCgoKRklSTUEgREUgTE9TIFRJVFVMQVJFUyBERSBERVJFQ0hPUyBERSBBVVRPUgoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fICAgQy5DLiBOby4gX19fX19fX19fX19fX19fX19fCgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18gICBDLkMuIE5vLiBfX19fX19fX19fX19fX19fX18KCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXyAgIEMuQy4gTm8uIF9fX19fX19fX19fX19fX19fXwoKCgpDb3JyZW8gRWxlY3Ryw7NuaWNvIEluc3RpdHVjaW9uYWwgZGVsIChkZSBsb3MpIEF1dG9yKGVzKToKCkF1dG9yCSAgICAgIENvcnJlbyBFbGVjdHLDs25pY28KCjEKCjIKCjMKCk5vbWJyZSBkZSBEaXJlY3RvcihlcykgZGUgR3JhZG86CgoxCgoyCgozCgpOb21icmUgRmFjdWx0YWQgeSBQcm95ZWN0byBDdXJyaWN1bGFyOgoKRmFjdWx0YWQJUHJveWVjdG8gQ3VycmljdWxhcgoKCgoKCgoKCk5vdGE6IEVuIGNhc28gcXVlIG5vIGVzdMOpIGRlIGFjdWVyZG8gY29uIGxhcyBjb25kaWNpb25lcyBkZSBsYSBwcmVzZW50ZSBsaWNlbmNpYSwgeSBtYW5pZmllc3RlIGFsZ3VuYSByZXN0cmljY2nDs24gc29icmUgbGEgb2JyYSwganVzdGlmaXF1ZSBsb3MgbW90aXZvcyBwb3IgbG9zIGN1YWxlcyBlbCBkb2N1bWVudG8geSBzdXMgYW5leG9zIG5vIHB1ZWRlbiBzZXIgcHVibGljYWRvcyBlbiBlbCBSZXBvc2l0b3JpbyBJbnN0aXR1Y2lvbmFsIGRlIGxhIFVuaXZlcnNpZGFkIERpc3RyaXRhbCBGcmFuY2lzY28gSm9zw6kgZGUgQ2FsZGFzIFJJVUQuCgoKU2kgcmVxdWllcmUgbcOhcyBlc3BhY2lvLCBwdWVkZSBhbmV4YXIgdW5hIGNvcGlhIHNpbWlsYXIgYSBlc3RhIGhvamEK