Construcción e implementación de un prototipo para reconocimiento e identificación de clientes bancarios usando técnicas de recognition y deep learning
En un mundo globalizado el reconocimiento e identificación de personas cobra relevancia y mas en un entorno financiero en el cual hay diversas estrategias de identificación, para el presente proyecto se plantea la identificación por biometría facial para lo cual se genera la especificación del proye...
- 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/28897
- Acceso en línea:
- http://hdl.handle.net/11349/28897
- Palabra clave:
- DLIB
Reconocimiento facial
Deeplens
Arquitectura en la Nube
Angular
Metadatos Faciales
Tiene Restricción de Referencia
Ingeniería de Sistemas - Tesis y Disertaciones Académicas
Servicios financieros - Servicio al cliente
Servicio al cliente
Relaciones con los clientes
Biometría - Usos
Facial Recognition
DLIB
Deeplens
Cloud Architecture
Facial Metadata
- Rights
- License
- Atribución-NoComercial-CompartirIgual 4.0 Internacional
id |
UDISTRITA2_56d543f40e74863e5509a25aa81f43f2 |
---|---|
oai_identifier_str |
oai:repository.udistrital.edu.co:11349/28897 |
network_acronym_str |
UDISTRITA2 |
network_name_str |
RIUD: repositorio U. Distrital |
repository_id_str |
|
dc.title.spa.fl_str_mv |
Construcción e implementación de un prototipo para reconocimiento e identificación de clientes bancarios usando técnicas de recognition y deep learning |
dc.title.titleenglish.spa.fl_str_mv |
Build and Implementation of a Prototype for Recognition and Identification of Bank Clients Using Recognition and Deep Learning Techniques |
title |
Construcción e implementación de un prototipo para reconocimiento e identificación de clientes bancarios usando técnicas de recognition y deep learning |
spellingShingle |
Construcción e implementación de un prototipo para reconocimiento e identificación de clientes bancarios usando técnicas de recognition y deep learning DLIB Reconocimiento facial Deeplens Arquitectura en la Nube Angular Metadatos Faciales Tiene Restricción de Referencia Ingeniería de Sistemas - Tesis y Disertaciones Académicas Servicios financieros - Servicio al cliente Servicio al cliente Relaciones con los clientes Biometría - Usos Facial Recognition DLIB Deeplens Cloud Architecture Facial Metadata |
title_short |
Construcción e implementación de un prototipo para reconocimiento e identificación de clientes bancarios usando técnicas de recognition y deep learning |
title_full |
Construcción e implementación de un prototipo para reconocimiento e identificación de clientes bancarios usando técnicas de recognition y deep learning |
title_fullStr |
Construcción e implementación de un prototipo para reconocimiento e identificación de clientes bancarios usando técnicas de recognition y deep learning |
title_full_unstemmed |
Construcción e implementación de un prototipo para reconocimiento e identificación de clientes bancarios usando técnicas de recognition y deep learning |
title_sort |
Construcción e implementación de un prototipo para reconocimiento e identificación de clientes bancarios usando técnicas de recognition y deep learning |
dc.contributor.advisor.spa.fl_str_mv |
Bolaños Castro, Sandro Javier |
dc.subject.spa.fl_str_mv |
DLIB Reconocimiento facial Deeplens Arquitectura en la Nube Angular Metadatos Faciales |
topic |
DLIB Reconocimiento facial Deeplens Arquitectura en la Nube Angular Metadatos Faciales Tiene Restricción de Referencia Ingeniería de Sistemas - Tesis y Disertaciones Académicas Servicios financieros - Servicio al cliente Servicio al cliente Relaciones con los clientes Biometría - Usos Facial Recognition DLIB Deeplens Cloud Architecture Facial Metadata |
dc.subject.lemb.spa.fl_str_mv |
Tiene Restricción de Referencia Ingeniería de Sistemas - Tesis y Disertaciones Académicas Servicios financieros - Servicio al cliente Servicio al cliente Relaciones con los clientes Biometría - Usos |
dc.subject.keyword.spa.fl_str_mv |
Facial Recognition DLIB Deeplens Cloud Architecture Facial Metadata |
description |
En un mundo globalizado el reconocimiento e identificación de personas cobra relevancia y mas en un entorno financiero en el cual hay diversas estrategias de identificación, para el presente proyecto se plantea la identificación por biometría facial para lo cual se genera la especificación del proyecto el cual ha sido realizado en la empresa Banco De Bogotá, detallando el alcance, las limitaciones y los objetivos de este, que tiene como tema principal el estudio experimental de como reconocer e identificar a las personas al interior del banco de Bogotá utilizando técnicas de Recognition y Deep Learning teniendo en cuenta los costos. El prototipo generado consiste en identificar una persona a través de los metadatos biométricos de su rostro para lo cual la captura de los fotogramas se realiza a través de un dispositivo capaz de capturar y procesar imágenes. Una ves la persona sea reconocida se procederá a buscar su numero de identificación en la base de datos del Banco de Bogotá allí será identificada por sus nombres y apellidos seguido se le ofrecerá un saludo si es un cliente activo del Banco de Bogotá y por lo contrario dándole la opción de obtener un producto si no es cliente o es un cliente inactivo, cabe agregar que el prototipo generado es basado en una arquitectura en la nube la cual permitirá múltiples implementaciones del mismo prototipo en diferentes locaciones solamente teniendo una conexión a internet estable. El prototipo ofrecerá beneficios tanto al banco con una solución propietaria, sustentable y extensible cumpliendo los lineamientos de calidad de código e integración continua por otra parte, también beneficiará al usuario ofreciendo otro medio de identificación. |
publishDate |
2021 |
dc.date.created.spa.fl_str_mv |
2021-04-09 |
dc.date.accessioned.none.fl_str_mv |
2022-04-22T20:10:49Z |
dc.date.available.none.fl_str_mv |
2022-04-22T20:10:49Z |
dc.type.degree.spa.fl_str_mv |
Pasantí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/28897 |
url |
http://hdl.handle.net/11349/28897 |
dc.language.iso.spa.fl_str_mv |
spa |
language |
spa |
dc.rights.*.fl_str_mv |
Atribución-NoComercial-CompartirIgual 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-sa/4.0/ |
dc.rights.acceso.spa.fl_str_mv |
Restringido (Solo Referencia) |
rights_invalid_str_mv |
Atribución-NoComercial-CompartirIgual 4.0 Internacional http://creativecommons.org/licenses/by-nc-sa/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/28897/4/license_rdf http://repository.udistrital.edu.co/bitstream/11349/28897/5/license.txt http://repository.udistrital.edu.co/bitstream/11349/28897/1/TarraGutierrezOscarJunior.pdf http://repository.udistrital.edu.co/bitstream/11349/28897/3/Licencia%20y%20autorizaci%c3%b3n%20de%20los%20autores%20para%20publicar.pdf http://repository.udistrital.edu.co/bitstream/11349/28897/6/TarraGutierrezOscarJunior.pdf.jpg http://repository.udistrital.edu.co/bitstream/11349/28897/7/Licencia%20y%20autorizaci%c3%b3n%20de%20los%20autores%20para%20publicar.pdf.jpg |
bitstream.checksum.fl_str_mv |
1487462a1490a8fc01f5999ce7b3b9cc 997daf6c648c962d566d7b082dac908d 09c517f19e57153812d4c0c05bd04c43 51de948263f8e0c59fc76e025fabf6a1 5b4452f9a36598984c02e88435da88c0 5c8e5e973d1586131cfb24103dac7aa8 |
bitstream.checksumAlgorithm.fl_str_mv |
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_ |
1814111676330409984 |
spelling |
Bolaños Castro, Sandro JavierTacha Gutierrez, Oscar Junior2022-04-22T20:10:49Z2022-04-22T20:10:49Z2021-04-09http://hdl.handle.net/11349/28897En un mundo globalizado el reconocimiento e identificación de personas cobra relevancia y mas en un entorno financiero en el cual hay diversas estrategias de identificación, para el presente proyecto se plantea la identificación por biometría facial para lo cual se genera la especificación del proyecto el cual ha sido realizado en la empresa Banco De Bogotá, detallando el alcance, las limitaciones y los objetivos de este, que tiene como tema principal el estudio experimental de como reconocer e identificar a las personas al interior del banco de Bogotá utilizando técnicas de Recognition y Deep Learning teniendo en cuenta los costos. El prototipo generado consiste en identificar una persona a través de los metadatos biométricos de su rostro para lo cual la captura de los fotogramas se realiza a través de un dispositivo capaz de capturar y procesar imágenes. Una ves la persona sea reconocida se procederá a buscar su numero de identificación en la base de datos del Banco de Bogotá allí será identificada por sus nombres y apellidos seguido se le ofrecerá un saludo si es un cliente activo del Banco de Bogotá y por lo contrario dándole la opción de obtener un producto si no es cliente o es un cliente inactivo, cabe agregar que el prototipo generado es basado en una arquitectura en la nube la cual permitirá múltiples implementaciones del mismo prototipo en diferentes locaciones solamente teniendo una conexión a internet estable. El prototipo ofrecerá beneficios tanto al banco con una solución propietaria, sustentable y extensible cumpliendo los lineamientos de calidad de código e integración continua por otra parte, también beneficiará al usuario ofreciendo otro medio de identificación.In a globalized world, the recognition and identification of people becomes relevant and more so in a financial environment in which there are various identification strategies, for this project identification by facial biometry is proposed for which the specification of the project is generated which has It was carried out in the Banco De Bogotá company, detailing its scope, limitations and objectives, whose main theme is the experimental study of how to recognize and identify people inside the Bogotá bank using Recognition and Deep Learning techniques. taking into account the costs. The prototype generated consists of identifying a person through the biometric metadata of their face, for which the capture of the frames is carried out through a device capable of capturing and processing images. Once the person is recognized, they will proceed to look for their identification number in the Banco de Bogotá database, there they will be identified by their names and surnames, followed by a greeting if they are an active client of Banco de Bogotá and otherwise. Giving you the option of obtaining a product if you are not a client or if you are an inactive client, it should be added that the generated prototype is based on a cloud architecture which will allow multiple implementations of the same prototype in different locations only having a stable internet connection. The prototype will offer benefits both to the bank with a proprietary, sustainable and extensible solution complying with the code quality guidelines and continuous integration, on the other hand, it will also benefit the user by offering another means of identification.Banco de BogotápdfspaAtribución-NoComercial-CompartirIgual 4.0 Internacionalhttp://creativecommons.org/licenses/by-nc-sa/4.0/Restringido (Solo Referencia)http://purl.org/coar/access_right/c_16ecDLIBReconocimiento facialDeeplensArquitectura en la NubeAngularMetadatos FacialesTiene Restricción de ReferenciaIngeniería de Sistemas - Tesis y Disertaciones AcadémicasServicios financieros - Servicio al clienteServicio al clienteRelaciones con los clientesBiometría - UsosFacial RecognitionDLIBDeeplensCloud ArchitectureFacial MetadataConstrucción e implementación de un prototipo para reconocimiento e identificación de clientes bancarios usando técnicas de recognition y deep learningBuild and Implementation of a Prototype for Recognition and Identification of Bank Clients Using Recognition and Deep Learning TechniquesPasantíainfo:eu-repo/semantics/bachelorThesishttp://purl.org/coar/resource_type/c_7a1fCC-LICENSElicense_rdflicense_rdfapplication/rdf+xml; charset=utf-81037http://repository.udistrital.edu.co/bitstream/11349/28897/4/license_rdf1487462a1490a8fc01f5999ce7b3b9ccMD54open accessLICENSElicense.txtlicense.txttext/plain; charset=utf-87167http://repository.udistrital.edu.co/bitstream/11349/28897/5/license.txt997daf6c648c962d566d7b082dac908dMD55open accessORIGINALTarraGutierrezOscarJunior.pdfTarraGutierrezOscarJunior.pdfapplication/pdf14302094http://repository.udistrital.edu.co/bitstream/11349/28897/1/TarraGutierrezOscarJunior.pdf09c517f19e57153812d4c0c05bd04c43MD51open accessLicencia y autorización de los autores para publicar.pdfLicencia y autorización de los autores para publicar.pdfapplication/pdf199252http://repository.udistrital.edu.co/bitstream/11349/28897/3/Licencia%20y%20autorizaci%c3%b3n%20de%20los%20autores%20para%20publicar.pdf51de948263f8e0c59fc76e025fabf6a1MD53metadata only accessTHUMBNAILTarraGutierrezOscarJunior.pdf.jpgTarraGutierrezOscarJunior.pdf.jpgIM Thumbnailimage/jpeg6749http://repository.udistrital.edu.co/bitstream/11349/28897/6/TarraGutierrezOscarJunior.pdf.jpg5b4452f9a36598984c02e88435da88c0MD56open accessLicencia y autorización de los autores para publicar.pdf.jpgLicencia y autorización de los autores para publicar.pdf.jpgIM Thumbnailimage/jpeg13508http://repository.udistrital.edu.co/bitstream/11349/28897/7/Licencia%20y%20autorizaci%c3%b3n%20de%20los%20autores%20para%20publicar.pdf.jpg5c8e5e973d1586131cfb24103dac7aa8MD57open access11349/28897oai:repository.udistrital.edu.co:11349/288972023-06-13 14:07:19.279open accessRepositorio Institucional Universidad Distrital - RIUDrepositorio@udistrital.edu.coTElDRU5DSUEgWSBBVVRPUklaQUNJw5NOIEVTUEVDSUFMIFBBUkEgUFVCTElDQVIgWSBQRVJNSVRJUiBMQSBDT05TVUxUQSBZIFVTTyBERSBDT05URU5JRE9TIEVOIEVMIFJFUE9TSVRPUklPIElOU1RJVFVDSU9OQUwgREUgTEEgVU5JVkVSU0lEQUQgRElTVFJJVEFMCgpUw6lybWlub3MgeSBjb25kaWNpb25lcyBkZSB1c28gcGFyYSBwdWJsaWNhY2nDs24gZGUgb2JyYXMgZW4gZWwgUmVwb3NpdG9yaW8gSW5zdGl0dWNpb25hbCBkZSBsYSBVbml2ZXJzaWRhZCBEaXN0cml0YWwgRnJhbmNpc2NvIEpvc8OpIGRlIENhbGRhcyAoUklVRCkKCkNvbW8gdGl0dWxhcihlcykgZGVsKG9zKSBkZXJlY2hvKHMpIGRlIGF1dG9yLCBjb25maWVybyAoZXJpbW9zKSBhIGxhIFVuaXZlcnNpZGFkIERpc3RyaXRhbCBGcmFuY2lzY28gSm9zw6kgZGUgQ2FsZGFzIChlbiBhZGVsYW50ZSwgTEEgVU5JVkVSU0lEQUQpIHVuYSBsaWNlbmNpYSBwYXJhIHVzbyBubyBleGNsdXNpdmEsIGxpbWl0YWRhIHkgZ3JhdHVpdGEgc29icmUgbGEgb2JyYSBxdWUgaW50ZWdyYXLDoSBlbCBSZXBvc2l0b3JpbyBJbnN0aXR1Y2lvbmFsIChlbiBhZGVsYW50ZSwgUklVRCksIGRlIGFjdWVyZG8gYSBsYXMgc2lndWllbnRlcyByZWdsYXMsIGxhcyBjdWFsZXMgZGVjbGFybyAoYW1vcykgY29ub2NlciB5IGFjZXB0YXI6CgphKQlFc3RhcsOhIHZpZ2VudGUgYSBwYXJ0aXIgZGUgbGEgZmVjaGEgZW4gcXVlIHNlIGluY2x1eWEgZW4gZWwgUklVRCB5IGhhc3RhIHBvciB1biBwbGF6byBkZSBkaWV6ICgxMCkgQcOxb3MsIHByb3Jyb2dhYmxlIGluZGVmaW5pZGFtZW50ZSBwb3IgZWwgdGllbXBvIHF1ZSBkdXJlIGVsIGRlcmVjaG8gUGF0cmltb25pYWwgZGVsIGF1dG9yOyBsYSBjdWFsIHBvZHLDoSBkYXJzZSBwb3IgdGVybWluYWRhIHByZXZpYSBzb2xpY2l0dWQgYSBMQSBVTklWRVJTSURBRCBwb3IgZXNjcml0byBjb24gdW5hIGFudGVsYWNpw7NuIGRlIGRvcyAoMikgbWVzZXMgYW50ZXMgZGVsIHZlbmNpbWllbnRvIGRlbCBwbGF6byBpbmljaWFsIG8gZWwgZGUgc3UocykgcHLDs3Jyb2dhKHMpLgoKYikJTEEgVU5JVkVSU0lEQUQgcG9kcsOhIHB1YmxpY2FyIGxhIG9icmEgZW4gbGFzIGRpc3RpbnRhcyB2ZXJzaW9uZXMgcmVxdWVyaWRhcyBwb3IgZWwgUklVRCAoZGlnaXRhbCwgaW1wcmVzbywgZWxlY3Ryw7NuaWNvIHUgb3RybyBtZWRpbyBjb25vY2lkbyBvIHBvciBjb25vY2VyKSBMQSBVTklWRVJTSURBRCBubyBzZXLDoSByZXNwb25zYWJsZSBlbiBlbCBldmVudG8gcXVlIGVsIGRvY3VtZW50byBhcGFyZXpjYSByZWZlcmVuY2lhZG8gZW4gbW90b3JlcyBkZSBiw7pzcXVlZGEgbyByZXBvc2l0b3Jpb3MgZGlmZXJlbnRlcyBhbCBSSVVELCB1bmEgdmV6IGVsKG9zKSBhdXRvcihlcykgc29saWNpdGVuIHN1IGVsaW1pbmFjacOzbiBkZWwgUklVRCwgZGFkbyBxdWUgbGEgbWlzbWEgc2Vyw6EgcHVibGljYWRhIGVuIEludGVybmV0LgoKYykJTGEgYXV0b3JpemFjacOzbiBzZSBoYWNlIGEgdMOtdHVsbyBncmF0dWl0bywgcG9yIGxvIHRhbnRvLCBsb3MgYXV0b3JlcyByZW51bmNpYW4gYSByZWNpYmlyIGJlbmVmaWNpbyBhbGd1bm8gcG9yIGxhIHB1YmxpY2FjacOzbiwgZGlzdHJpYnVjacOzbiwgY29tdW5pY2FjacOzbiBww7pibGljYSB5IGN1YWxxdWllciBvdHJvIHVzbyBxdWUgc2UgaGFnYSBlbiBsb3MgdMOpcm1pbm9zIGRlIGxhIHByZXNlbnRlIGxpY2VuY2lhIHkgZGUgbGEgbGljZW5jaWEgZGUgdXNvIGNvbiBxdWUgc2UgcHVibGljYSAoQ3JlYXRpdmUgQ29tbW9ucykuCgpkKQlMb3MgY29udGVuaWRvcyBwdWJsaWNhZG9zIGVuIGVsIFJJVUQgc29uIG9icmEocykgb3JpZ2luYWwoZXMpIHNvYnJlIGxhIGN1YWwoZXMpIGVsKG9zKSBhdXRvcihlcykgY29tbyB0aXR1bGFyZXMgZGUgbG9zIGRlcmVjaG9zIGRlIGF1dG9yLCBhc3VtZW4gdG90YWwgcmVzcG9uc2FiaWxpZGFkIHBvciBlbCBjb250ZW5pZG8gZGUgc3Ugb2JyYSBhbnRlIExBIFVOSVZFUlNJREFEIHkgYW50ZSB0ZXJjZXJvcy4gRW4gdG9kbyBjYXNvIExBIFVOSVZFUlNJREFEIHNlIGNvbXByb21ldGUgYSBpbmRpY2FyIHNpZW1wcmUgbGEgYXV0b3LDrWEgaW5jbHV5ZW5kbyBlbCBub21icmUgZGVsIGF1dG9yIHkgbGEgZmVjaGEgZGUgcHVibGljYWNpw7NuLgoKZSkJTEEgVU5JVkVSU0lEQUQgcG9kcsOhIGluY2x1aXIgbGEgb2JyYSBlbiBsb3Mgw61uZGljZXMgeSBidXNjYWRvcmVzIHF1ZSBlc3RpbWVuIG5lY2VzYXJpb3MgcGFyYSBtYXhpbWl6YXIgbGEgdmlzaWJpbGlkYWQgZWwgdXNvIHkgZWwgaW1wYWN0byBkZSBsYSBwcm9kdWNjacOzbiBjaWVudMOtZmljYSwgYXJ0w61zdGljYSB5IGFjYWTDqW1pY2EgZW4gbGEgY29tdW5pZGFkIGxvY2FsLCBuYWNpb25hbCBvIGludGVybmFjaW9uYWwuCgoKZikJTEEgVU5JVkVSU0lEQUQgcG9kcsOhIGNvbnZlcnRpciBsYSBvYnJhIGEgY3VhbHF1aWVyIG1lZGlvIG8gZm9ybWF0byBjb24gZWwgZmluIGRlIHN1IHByZXNlcnZhY2nDs24gZW4gZWwgdGllbXBvIHF1ZSBsYSBwcmVzZW50ZSBsaWNlbmNpYSB5IGxhIGRlIHN1cyBwcsOzcnJvZ2FzLgoKCkNvbiBiYXNlIGVuIGxvIGFudGVyaW9yIGF1dG9yaXpvKGFtb3MpLCBhIGZhdm9yIGRlbCBSSVVEIHkgZGUgc3VzIHVzdWFyaW9zLCBsYSBwdWJsaWNhY2nDs24geSBjb25zdWx0YSBkZSBsYSBzaWd1aWVudGUgb2JyYToKClRpdHVsbwoKQXV0b3IgICAgICAgQXBlbGxpZG9zICAgICAgICAgTm9tYnJlcwoKMQoKMgoKMwoKCmcpCUF1dG9yaXpvKGFtb3MpLCBxdWUgbGEgb2JyYSBzZWEgcHVlc3RhIGEgZGlzcG9zaWNpw7NuIGRlbCBww7pibGljbyBlbiBsb3MgdMOpcm1pbm9zIGVzdGFibGVjaWRvcyBlbiBsb3MgbGl0ZXJhbGVzIGFudGVyaW9yZXMsIGJham8gbG9zIGzDrW1pdGVzIGRlZmluaWRvcyBwb3IgTEEgVU5JVkVSU0lEQUQsIGVuIGxhcyDigJxDb25kaWNpb25lcyBkZSB1c28gZGUgZXN0cmljdG8gY3VtcGxpbWllbnRv4oCdIGRlIGxvcyByZWN1cnNvcyBwdWJsaWNhZG9zIGVuIGVsIFJJVUQsIGN1eW8gdGV4dG8gY29tcGxldG8gc2UgcHVlZGUgY29uc3VsdGFyIGVuIGh0dHA6Ly9yZXBvc2l0b3J5LnVkaXN0cml0YWwuZWR1LmNvLwoKaCkJQ29ub3pjbyhjZW1vcykgeSBhY2VwdG8oYW1vcykgcXVlIG90b3JnbyhhbW9zKSB1bmEgbGljZW5jaWEgZXNwZWNpYWwgcGFyYSBwdWJsaWNhY2nDs24gZGUgb2JyYXMgZW4gZWwgUmVwb3NpdG9yaW8gSW5zdGl0dWNpb25hbCBkZSBsYSBVbml2ZXJzaWRhZCBEaXN0cml0YWwgRnJhbmNpc2NvIEpvc8OpIGRlIENhbGRhcywgbGljZW5jaWEgICBkZSBsYSBjdWFsIGhlIChoZW1vcykgb2J0ZW5pZG8gdW5hIGNvcGlhLgoKaSkJTWFuaWZpZXN0byhhbW9zKSBtaSAobnVlc3RybykgdG90YWwgYWN1ZXJkbyBjb24gbGFzIGNvbmRpY2lvbmVzIGRlIHVzbyB5IHB1YmxpY2FjacOzbiBlbiBlbCBSZXBvc2l0b3JpbyBJbnN0aXR1Y2lvbmFsIGRlIGxhIFVuaXZlcnNpZGFkIERpc3RyaXRhbCBGcmFuY2lzY28gSm9zw6kgZGUgQ2FsZGFzIHF1ZSBzZSBkZXNjcmliZW4geSBleHBsaWNhbiBlbiBlbCBwcmVzZW50ZSBkb2N1bWVudG8uCgpqKQlDb25vemNvKGNlbW9zKSBsYSBub3JtYXRpdmlkYWQgaW50ZXJuYSBkZSAgTEEgVU5JVkVSU0lEQUQ7IGVuIGNvbmNyZXRvLCBlbCBBY3VlcmRvIDAwNCBkZSAyMDEyIGRlbCBDU1UsIEFjdWVyZG8gMDIzIGRlIDIwMTIgZGVsIENTVSBzb2JyZSBQb2zDrXRpY2EgRWRpdG9yaWFsLCBBY3VlcmRvIDAyNiAgZGVsIDMxIGRlIGp1bGlvIGRlIDIwMTIgc29icmUgZWwgcHJvY2VkaW1pZW50byBwYXJhIGxhIHB1YmxpY2FjacOzbiBkZSB0ZXNpcyBkZSBwb3N0Z3JhZG8gZGUgbG9zIGVzdHVkaWFudGVzIGRlIGxhIFVuaXZlcnNpZGFkIERpc3RyaXRhbCBGcmFuY2lzY28gSm9zw6kgZGUgQ2FsZGFzLCAgQWN1ZXJkbyAwMzAgZGVsIDAzIGRlIGRpY2llbWJyZSBkZSAyMDEzIHBvciBtZWRpbyBkZWwgY3VhbCBzZSBjcmVhIGVsIFJlcG9zaXRvcmlvIEluc3RpdHVjaW9uYWwgZGUgbGEgVW5pdmVyc2lkYWQgRGlzdHJpdGFsIEZyYW5jaXNjbyBKb3PDqSBkZSBDYWxkYXMsIEFjdWVyZG8gMDM4IGRlIDIwMTUgMjAxNSDigJxwb3IgZWwgY3VhbCBzZSBtb2RpZmljYSBlbCBBY3VlcmRvIDAzMSBkZSAyMDE0IGRlIDIwMTQgcXVlIHJlZ2xhbWVudGEgZWwgdHJhYmFqbyBkZSBncmFkbyBwYXJhIGxvcyBlc3R1ZGlhbnRlcyBkZSBwcmVncmFkbyBkZSBsYSBVbml2ZXJzaWRhZCBEaXN0cml0YWwgRnJhbmNpc2NvIEpvc8OpIGRlIENhbGRhcyB5IHNlIGRpY3RhbiBvdHJhcyBkaXJlY3RyaWNlc+KAnSB5IGxhcyBkZW3DoXMgbm9ybWFzIGNvbmNvcmRhbnRlIHkgY29tcGxlbWVudGFyaWFzIHF1ZSByaWdlbiBhbCByZXNwZWN0bywgZXNwZWNpYWxtZW50ZSBsYSBsZXkgMjMgZGUgMTk4MiwgbGEgbGV5IDQ0IGRlIDE5OTMgeSBsYSBkZWNpc2nDs24gQW5kaW5hIDM1MSBkZSAxOTkzLiBFc3RvcyBkb2N1bWVudG9zIHBvZHLDoW4gc2VyIGNvbnN1bHRhZG9zIHkgZGVzY2FyZ2Fkb3MgZW4gZWwgcG9ydGFsIHdlYiBkZSBsYSBiaWJsaW90ZWNhIGh0dHA6Ly9zaXN0ZW1hZGViaWJsaW90ZWNhcy51ZGlzdHJpdGFsLmVkdS5jby8KCmspCUFjZXB0byhhbW9zKSBxdWUgTEEgVU5JVkVSU0lEQUQgbm8gc2UgcmVzcG9uc2FiaWxpemEgcG9yIGxhcyBpbmZyYWNjaW9uZXMgYSBsYSBwcm9waWVkYWQgaW50ZWxlY3R1YWwgbyBEZXJlY2hvcyBkZSBBdXRvciBjYXVzYWRhcyBwb3IgbG9zIHRpdHVsYXJlcyBkZSBsYSBwcmVzZW50ZSBMaWNlbmNpYSB5IGRlY2xhcmFtb3MgcXVlIG1hbnRlbmRyw6kgKGVtb3MpIGluZGVtbmUgYSBMQSBVTklWRVJTSURBRCBwb3IgbGFzIHJlY2xhbWFjaW9uZXMgbGVnYWxlcyBkZSBjdWFscXVpZXIgdGlwbyBxdWUgbGxlZ2FyZW4gYSBwcmVzZW50YXJzZSBwb3IgdmlvbGFjacOzbiBkZSBkZXJlY2hvcyBhIGxhIHByb3BpZWRhZCBpbnRlbGVjdHVhbCBvIGRlIEF1dG9yIHJlbGFjaW9uYWRvcyBjb24gbG9zIGRvY3VtZW50b3MgcmVnaXN0cmFkb3MgZW4gZWwgUklVRC4KCmwpCUVsIChsb3MpIGF1dG9yKGVzKSBtYW5pZmllc3RhKG1vcykgcXVlIGxhIG9icmEgb2JqZXRvIGRlIGxhIHByZXNlbnRlIGF1dG9yaXphY2nDs24gZXMgb3JpZ2luYWwsIGRlIGV4Y2x1c2l2YSBhdXRvcsOtYSwgeSBzZSByZWFsaXrDsyBzaW4gdmlvbGFyIG8gdXN1cnBhciBkZXJlY2hvcyBkZSBhdXRvciBkZSB0ZXJjZXJvczsgZGUgdGFsIHN1ZXJ0ZSwgZW4gY2FzbyBkZSBwcmVzZW50YXJzZSBjdWFscXVpZXIgcmVjbGFtYWNpw7NuIG8gYWNjacOzbiBwb3IgcGFydGUgZGUgdW4gdGVyY2VybyBlbiBjdWFudG8gYSBsb3MgZGVyZWNob3MgZGUgYXV0b3Igc29icmUgbGEgb2JyYSwgZWwgKGxvcykgZXN0dWRpYW50ZShzKSDigJMgYXV0b3IoZXMpIGFzdW1pcsOhKG4pIHRvZGEgbGEgcmVzcG9uc2FiaWxpZGFkIHkgc2FsZHLDoShuKSBlbiBkZWZlbnNhIGRlIGxvcyBkZXJlY2hvcyBhcXXDrSBhdXRvcml6YWRvcy4gUGFyYSB0b2RvcyBsb3MgZWZlY3RvcywgTEEgVU5JVkVSU0lEQUQgYWN0w7phIGNvbW8gdW4gdGVyY2VybyBkZSBidWVuYSBmZS4KCgptKQlFbCAobG9zKSBhdXRvcihlcykgbWFuaWZpZXN0YShtb3MpIHF1ZSBjb25vemNvKGNlbW9zKSBsYSBhdXRvbm9tw61hIHkgbG9zIGRlcmVjaG9zLCBxdWUgcG9zZWUobW9zKSBzb2JyZSBsYSBvYnJhIHksIGNvbW8gdGFsLCBlcyAoc29tb3MpIHJlc3BvbnNhYmxlKHMpIGRlbCBhbGNhbmNlIGp1csOtZGljbyB5IGxlZ2FsLCBkZSBlc2NvZ2VyIGxhIG9wY2nDs24gZGUgbGEgcHVibGljYWNpw7NuIG8gZGUgcmVzdHJpY2Npw7NuIGRlIGxhIHB1YmxpY2FjacOzbiBkZWwgZG9jdW1lbnRvIHJlZ2lzdHJhZG8gZW4gZWwgUklVRC4KCgoKCgoKU0kgRUwgRE9DVU1FTlRPIFNFIEJBU0EgRU4gVU4gVFJBQkFKTyBRVUUgSEEgU0lETyBQQVRST0NJTkFETyBPIEFQT1lBRE8gUE9SIFVOQSBBR0VOQ0lBIE8gVU5BIE9SR0FOSVpBQ0nDk04sIENPTiBFWENFUENJw5NOIERFIExBIFVOSVZFUlNJREFEIERJU1RSSVRBTCBGUkFOQ0lTQ08gSk9TRSBERSBDQUxEQVMsIExPUyBBVVRPUkVTIEdBUkFOVElaQU4gUVVFIFNFIEhBIENVTVBMSURPIENPTiBMT1MKREVSRUNIT1MgWSBPQkxJR0FDSU9ORVMgUkVRVUVSSURPUyBQT1IgRUwgUkVTUEVDVElWTyBDT05UUkFUTyBPIEFDVUVSRE8uCgoKCgoKCgoKCgoKCgoKCgoKCgoKCkVuIGNvbnN0YW5jaWEgZGUgbG8gYW50ZXJpb3IsIGZpcm1vKGFtb3MpIGVsIHByZXNlbnRlIGRvY3VtZW50bywgZW4gbGEgY2l1ZGFkIGRlIEJvZ290w6EsIEQuQy4sIGEgbG9zCgoKRklSTUEgREUgTE9TIFRJVFVMQVJFUyBERSBERVJFQ0hPUyBERSBBVVRPUgoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fICAgQy5DLiBOby4gX19fX19fX19fX19fX19fX19fCgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18gICBDLkMuIE5vLiBfX19fX19fX19fX19fX19fX18KCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXyAgIEMuQy4gTm8uIF9fX19fX19fX19fX19fX19fXwoKCgpDb3JyZW8gRWxlY3Ryw7NuaWNvIEluc3RpdHVjaW9uYWwgZGVsIChkZSBsb3MpIEF1dG9yKGVzKToKCkF1dG9yCSAgICAgIENvcnJlbyBFbGVjdHLDs25pY28KCjEKCjIKCjMKCk5vbWJyZSBkZSBEaXJlY3RvcihlcykgZGUgR3JhZG86CgoxCgoyCgozCgpOb21icmUgRmFjdWx0YWQgeSBQcm95ZWN0byBDdXJyaWN1bGFyOgoKRmFjdWx0YWQJUHJveWVjdG8gQ3VycmljdWxhcgoKCgoKCgoKCk5vdGE6IEVuIGNhc28gcXVlIG5vIGVzdMOpIGRlIGFjdWVyZG8gY29uIGxhcyBjb25kaWNpb25lcyBkZSBsYSBwcmVzZW50ZSBsaWNlbmNpYSwgeSBtYW5pZmllc3RlIGFsZ3VuYSByZXN0cmljY2nDs24gc29icmUgbGEgb2JyYSwganVzdGlmaXF1ZSBsb3MgbW90aXZvcyBwb3IgbG9zIGN1YWxlcyBlbCBkb2N1bWVudG8geSBzdXMgYW5leG9zIG5vIHB1ZWRlbiBzZXIgcHVibGljYWRvcyBlbiBlbCBSZXBvc2l0b3JpbyBJbnN0aXR1Y2lvbmFsIGRlIGxhIFVuaXZlcnNpZGFkIERpc3RyaXRhbCBGcmFuY2lzY28gSm9zw6kgZGUgQ2FsZGFzIFJJVUQuCgoKU2kgcmVxdWllcmUgbcOhcyBlc3BhY2lvLCBwdWVkZSBhbmV4YXIgdW5hIGNvcGlhIHNpbWlsYXIgYSBlc3RhIGhvamEK |