IMPLEMENTACIÓN Y VALIDACIÓN DE A-CONNECT EN APLICACIONES DE RECONOCIMIENTO DE VOZ

Los sistemas de reconocimiento de voz permiten interactuar con sistemas utilizando nuestra voz, útil para aplicaciones como atención al cliente automatizada, asistentes de voz, etc. El desarrollo de estos sistemas se ha beneficiado de los avances en Deep Learning haciéndolos más fiables y precisos....

Full description

Autores:
Amaya Hernández, José David
León Suárez, Karen Dayanna
Tipo de recurso:
Trabajo de grado de pregrado
Fecha de publicación:
2022
Institución:
Universidad Industrial de Santander
Repositorio:
Repositorio UIS
Idioma:
eng
OAI Identifier:
oai:noesis.uis.edu.co:20.500.14071/11436
Acceso en línea:
https://noesis.uis.edu.co/handle/20.500.14071/11436
https://noesis.uis.edu.co
Palabra clave:
Redes neuronales recurrentes
Redes neuronales profundas
Detección de palabras clave
Recurrent Neural Networks
Deep Neural Networks
Keyword Spotting
Rights
openAccess
License
Attribution-NonCommercial 4.0 International (CC BY-NC 4.0)
id UISANTADR2_74be15987eb56ce19640cecda3e1cc4e
oai_identifier_str oai:noesis.uis.edu.co:20.500.14071/11436
network_acronym_str UISANTADR2
network_name_str Repositorio UIS
repository_id_str
dc.title.none.fl_str_mv IMPLEMENTACIÓN Y VALIDACIÓN DE A-CONNECT EN APLICACIONES DE RECONOCIMIENTO DE VOZ
dc.title.english.none.fl_str_mv IMPLEMENTATION AND VALIDATION OF A-CONNECT IN SPEECH RECOGNITION APPLICATIONS
title IMPLEMENTACIÓN Y VALIDACIÓN DE A-CONNECT EN APLICACIONES DE RECONOCIMIENTO DE VOZ
spellingShingle IMPLEMENTACIÓN Y VALIDACIÓN DE A-CONNECT EN APLICACIONES DE RECONOCIMIENTO DE VOZ
Redes neuronales recurrentes
Redes neuronales profundas
Detección de palabras clave
Recurrent Neural Networks
Deep Neural Networks
Keyword Spotting
title_short IMPLEMENTACIÓN Y VALIDACIÓN DE A-CONNECT EN APLICACIONES DE RECONOCIMIENTO DE VOZ
title_full IMPLEMENTACIÓN Y VALIDACIÓN DE A-CONNECT EN APLICACIONES DE RECONOCIMIENTO DE VOZ
title_fullStr IMPLEMENTACIÓN Y VALIDACIÓN DE A-CONNECT EN APLICACIONES DE RECONOCIMIENTO DE VOZ
title_full_unstemmed IMPLEMENTACIÓN Y VALIDACIÓN DE A-CONNECT EN APLICACIONES DE RECONOCIMIENTO DE VOZ
title_sort IMPLEMENTACIÓN Y VALIDACIÓN DE A-CONNECT EN APLICACIONES DE RECONOCIMIENTO DE VOZ
dc.creator.fl_str_mv Amaya Hernández, José David
León Suárez, Karen Dayanna
dc.contributor.advisor.none.fl_str_mv Roa Fuentes, Elkim Felipe
dc.contributor.author.none.fl_str_mv Amaya Hernández, José David
León Suárez, Karen Dayanna
dc.contributor.evaluator.none.fl_str_mv Moya Baquero, Juán Sebastián
Sepúlveda Sepúlveda, Franklin Alexander
dc.subject.none.fl_str_mv Redes neuronales recurrentes
Redes neuronales profundas
Detección de palabras clave
topic Redes neuronales recurrentes
Redes neuronales profundas
Detección de palabras clave
Recurrent Neural Networks
Deep Neural Networks
Keyword Spotting
dc.subject.keyword.none.fl_str_mv Recurrent Neural Networks
Deep Neural Networks
Keyword Spotting
description Los sistemas de reconocimiento de voz permiten interactuar con sistemas utilizando nuestra voz, útil para aplicaciones como atención al cliente automatizada, asistentes de voz, etc. El desarrollo de estos sistemas se ha beneficiado de los avances en Deep Learning haciéndolos más fiables y precisos. Sin embargo, el despliegue de estos sistemas suele requerir una gran cantidad de recursos de hardware y potencia para conseguir un buen rendimiento. Los aceleradores de redes neuronales analógicas son una posible solución, ya que proporcionan un rendimiento rápido con bajo consumo de energía a costa de precisión, ya que son susceptibles a variabilidad estocástica. Una solución a este problema es A-Connect, una metodología de entrenamiento que aumenta la resiliencia en precisión de las redes neuronales analógicas a la variabilidad estocástica. Se ha desarrollado una librería A-Connect en un proyecto anterior con implementaciones para capas totalmente conectadas y convolucionales. En este trabajo se extiende a diferentes tipos de RNNs utilizadas en aplicaciones de reconocimiento de voz como: FastGRNN, LSTM y GRU. Presentamos resultados utilizando las capas implementadas en diferentes modelos entrenados y probados en los datasets Spoken Digits y Speech Commands. Obtenemos con A-Connect un mejor rendimiento cuando se aplica error comparado con el modelo base, por ejemplo, con un modelo LSTM-S, logrando un 68,25% de precisión en el dataset Speech Commands utilizando A-Connect al 70%, lo que supone un 22,78% más que el modelo base. Además, presentamos la implementación en FPGA del modelo GRU. Una versión grande que alcanza el 94,78% en el dataset Speech Commands, y una versión pequeña entrenada con A-Connect 70% que alcanza una precisión del 72,19% en el dataset Speech Commands, un 27,54% más que el modelo base. También proporcionamos una demostración que ofrece una interfaz web permitiendo al usuario grabar un clip de audio y realizar inferencia en FPGA.
publishDate 2022
dc.date.accessioned.none.fl_str_mv 2022-09-15T17:35:04Z
dc.date.available.none.fl_str_mv 2022-09-15T17:35:04Z
dc.date.created.none.fl_str_mv 2022-09-09
dc.date.issued.none.fl_str_mv 2022-09-09
dc.type.local.none.fl_str_mv Tesis/Trabajo de grado - Monografía - Pregrado
dc.type.hasversion.none.fl_str_mv http://purl.org/coar/version/c_b1a7d7d4d402bcce
dc.type.coar.none.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 https://noesis.uis.edu.co/handle/20.500.14071/11436
dc.identifier.instname.none.fl_str_mv Universidad Industrial de Santander
dc.identifier.reponame.none.fl_str_mv Universidad Industrial de Santander
dc.identifier.repourl.none.fl_str_mv https://noesis.uis.edu.co
url https://noesis.uis.edu.co/handle/20.500.14071/11436
https://noesis.uis.edu.co
identifier_str_mv Universidad Industrial de Santander
dc.language.iso.none.fl_str_mv eng
language eng
dc.rights.none.fl_str_mv info:eu-repo/semantics/openAccess
dc.rights.license.none.fl_str_mv Attribution-NonCommercial 4.0 International (CC BY-NC 4.0)
dc.rights.uri.none.fl_str_mv http://creativecommons.org/licenses/by-nc-nd/4.0/
dc.rights.coar.none.fl_str_mv http://purl.org/coar/access_right/c_abf2
dc.rights.accessrights.none.fl_str_mv info:eu-repo/semantics/openAccess
dc.rights.creativecommons.none.fl_str_mv Atribución-NoComercial-SinDerivadas 4.0 Internacional (CC BY-NC-ND 4.0)
rights_invalid_str_mv Attribution-NonCommercial 4.0 International (CC BY-NC 4.0)
http://creativecommons.org/licenses/by-nc-nd/4.0/
http://purl.org/coar/access_right/c_abf2
Atribución-NoComercial-SinDerivadas 4.0 Internacional (CC BY-NC-ND 4.0)
eu_rights_str_mv openAccess
dc.format.mimetype.none.fl_str_mv application/pdf
dc.publisher.none.fl_str_mv Universidad Industrial de Santander
dc.publisher.faculty.none.fl_str_mv Facultad de Ingeníerias Fisicomecánicas
dc.publisher.program.none.fl_str_mv Ingeniería Electrónica
dc.publisher.school.none.fl_str_mv Escuela de Ingenierías Eléctrica, Electrónica y Telecomunicaciones
publisher.none.fl_str_mv Universidad Industrial de Santander
institution Universidad Industrial de Santander
bitstream.url.fl_str_mv https://noesis.uis.edu.co/bitstreams/0a63d11e-2144-49e8-b9ca-37cc6363bcd2/download
https://noesis.uis.edu.co/bitstreams/0b3d9f7d-765f-463f-90b9-d084f8fe464e/download
https://noesis.uis.edu.co/bitstreams/54996931-509d-4251-aaa2-f0926b8d3f9b/download
https://noesis.uis.edu.co/bitstreams/545e3274-46b5-4578-a6cc-103e6bedcacb/download
https://noesis.uis.edu.co/bitstreams/7e77971d-7bb2-4e19-a202-0d2f5107e74a/download
https://noesis.uis.edu.co/bitstreams/16f78079-9b20-4e37-89aa-9ae94441ea85/download
https://noesis.uis.edu.co/bitstreams/5df8b93b-46ec-4459-887e-2aed121e810a/download
https://noesis.uis.edu.co/bitstreams/91fec7cd-5524-40fe-b926-d12fd0f2a0b3/download
https://noesis.uis.edu.co/bitstreams/d16bf410-96ab-4bbc-bfd7-07e8736156ee/download
https://noesis.uis.edu.co/bitstreams/a9363509-8061-4f29-860f-086fdce5c0fd/download
bitstream.checksum.fl_str_mv aa0836efb887fc10b220b1d7369f896c
d9d014bf021951e0d3bb73eaf13bee53
61f904ceee3bfcb58f940437b57a6672
d6298274a8378d319ac744759540b71b
4f561a9dec122f2d45c4b76c34a4cf44
68b329da9893e34099c7d8ad5cb9c940
33b8864c5478bfaa3cac868b83ec2852
538d73a34db8f2aeba64e18fe604f1dd
317cd3877aa491d54f62127637068116
04403fb26923bebe92af4df5583fd9b2
bitstream.checksumAlgorithm.fl_str_mv MD5
MD5
MD5
MD5
MD5
MD5
MD5
MD5
MD5
MD5
repository.name.fl_str_mv DSpace at UIS
repository.mail.fl_str_mv noesis@uis.edu.co
_version_ 1808402376079441920
spelling Attribution-NonCommercial 4.0 International (CC BY-NC 4.0)info:eu-repo/semantics/openAccesshttp://creativecommons.org/licenses/by-nc-nd/4.0/http://purl.org/coar/access_right/c_abf2info:eu-repo/semantics/openAccessAtribución-NoComercial-SinDerivadas 4.0 Internacional (CC BY-NC-ND 4.0)Roa Fuentes, Elkim FelipeAmaya Hernández, José DavidLeón Suárez, Karen DayannaMoya Baquero, Juán SebastiánSepúlveda Sepúlveda, Franklin Alexander2022-09-15T17:35:04Z2022-09-15T17:35:04Z2022-09-092022-09-09https://noesis.uis.edu.co/handle/20.500.14071/11436Universidad Industrial de SantanderUniversidad Industrial de Santanderhttps://noesis.uis.edu.coLos sistemas de reconocimiento de voz permiten interactuar con sistemas utilizando nuestra voz, útil para aplicaciones como atención al cliente automatizada, asistentes de voz, etc. El desarrollo de estos sistemas se ha beneficiado de los avances en Deep Learning haciéndolos más fiables y precisos. Sin embargo, el despliegue de estos sistemas suele requerir una gran cantidad de recursos de hardware y potencia para conseguir un buen rendimiento. Los aceleradores de redes neuronales analógicas son una posible solución, ya que proporcionan un rendimiento rápido con bajo consumo de energía a costa de precisión, ya que son susceptibles a variabilidad estocástica. Una solución a este problema es A-Connect, una metodología de entrenamiento que aumenta la resiliencia en precisión de las redes neuronales analógicas a la variabilidad estocástica. Se ha desarrollado una librería A-Connect en un proyecto anterior con implementaciones para capas totalmente conectadas y convolucionales. En este trabajo se extiende a diferentes tipos de RNNs utilizadas en aplicaciones de reconocimiento de voz como: FastGRNN, LSTM y GRU. Presentamos resultados utilizando las capas implementadas en diferentes modelos entrenados y probados en los datasets Spoken Digits y Speech Commands. Obtenemos con A-Connect un mejor rendimiento cuando se aplica error comparado con el modelo base, por ejemplo, con un modelo LSTM-S, logrando un 68,25% de precisión en el dataset Speech Commands utilizando A-Connect al 70%, lo que supone un 22,78% más que el modelo base. Además, presentamos la implementación en FPGA del modelo GRU. Una versión grande que alcanza el 94,78% en el dataset Speech Commands, y una versión pequeña entrenada con A-Connect 70% que alcanza una precisión del 72,19% en el dataset Speech Commands, un 27,54% más que el modelo base. También proporcionamos una demostración que ofrece una interfaz web permitiendo al usuario grabar un clip de audio y realizar inferencia en FPGA.PregradoIngeniero ElectrónicoSpeech recognition systems allow us to interface with systems using our voice, useful for applications such as automated customer service, voice assistants, etc. The development of these systems has benefited from advances in Deep Learning making them more reliable and precise. However, the deployment of these systems requires a high amount of hardware resources and power to achieve good performance. Analog neural network accelerators are a possible solution as they provide fast performance with low power consumption at the cost of lower accuracy because they are susceptible to stochastic variability. A solution to this problem is A-Connect, a training methodology that increases analog neural network accuracy resilience to stochastic variability. An A-Connect library has already been developed in a previous undergraduate project containing implementations for fully connected and convolutional layers. In this work, the library is extended to different kinds of recurrent neural networks (RNNs) used in speech recognition applications such as: Fast, Accurate, Stable, and Tiny Gated Recurrent Neural Network (FastGRNN), Long Short-Term Memory (LSTM), and Gated Recurrent Unit (GRU). We present results using the implemented layers on different models trained and tested on the Spoken Digits and Speech Commands datasets. A-Connect shows better performance when error is applied compared to the base model, for example, for the LSTM-S model, achieving up to 68.25% accuracy on Speech Commands dataset using A-Connect 70%, which is 22.78% higher than the base model. In addition, we present the FPGA implementation of a GRU model. A large version which achieves 94.78% on Speech Commands dataset, and a small version trained with A-Connect 70% which achieves an accuracy of 72.19% on Speech Commands dataset, 27.54% higher than the base model. We also provide a demo that offers a web interface that allows the user to record an audio clip and perform inference on FPGA.https://scienti.minciencias.gov.co/cvlac/visualizador/generarCurriculoCv.do?cod_rh=0001944665application/pdfengUniversidad Industrial de SantanderFacultad de Ingeníerias FisicomecánicasIngeniería ElectrónicaEscuela de Ingenierías Eléctrica, Electrónica y TelecomunicacionesRedes neuronales recurrentesRedes neuronales profundasDetección de palabras claveRecurrent Neural NetworksDeep Neural NetworksKeyword SpottingIMPLEMENTACIÓN Y VALIDACIÓN DE A-CONNECT EN APLICACIONES DE RECONOCIMIENTO DE VOZIMPLEMENTATION AND VALIDATION OF A-CONNECT IN SPEECH RECOGNITION APPLICATIONSTesis/Trabajo de grado - Monografía - Pregradohttp://purl.org/coar/version/c_b1a7d7d4d402bccehttp://purl.org/coar/resource_type/c_7a1fORIGINALDocumento.pdfDocumento.pdfapplication/pdf9685099https://noesis.uis.edu.co/bitstreams/0a63d11e-2144-49e8-b9ca-37cc6363bcd2/downloadaa0836efb887fc10b220b1d7369f896cMD51Nota de proyecto.pdfNota de proyecto.pdfapplication/pdf1535659https://noesis.uis.edu.co/bitstreams/0b3d9f7d-765f-463f-90b9-d084f8fe464e/downloadd9d014bf021951e0d3bb73eaf13bee53MD53Carta de autorización.pdfCarta de autorización.pdfapplication/pdf218825https://noesis.uis.edu.co/bitstreams/54996931-509d-4251-aaa2-f0926b8d3f9b/download61f904ceee3bfcb58f940437b57a6672MD54LICENSElicense.txtlicense.txttext/plain; charset=utf-82237https://noesis.uis.edu.co/bitstreams/545e3274-46b5-4578-a6cc-103e6bedcacb/downloadd6298274a8378d319ac744759540b71bMD55TEXTDocumento.pdf.txtDocumento.pdf.txtExtracted texttext/plain82457https://noesis.uis.edu.co/bitstreams/7e77971d-7bb2-4e19-a202-0d2f5107e74a/download4f561a9dec122f2d45c4b76c34a4cf44MD56Nota de proyecto.pdf.txtNota de proyecto.pdf.txtExtracted texttext/plain1https://noesis.uis.edu.co/bitstreams/16f78079-9b20-4e37-89aa-9ae94441ea85/download68b329da9893e34099c7d8ad5cb9c940MD58Carta de autorización.pdf.txtCarta de autorización.pdf.txtExtracted texttext/plain6692https://noesis.uis.edu.co/bitstreams/5df8b93b-46ec-4459-887e-2aed121e810a/download33b8864c5478bfaa3cac868b83ec2852MD510THUMBNAILDocumento.pdf.jpgDocumento.pdf.jpgGenerated Thumbnailimage/jpeg2788https://noesis.uis.edu.co/bitstreams/91fec7cd-5524-40fe-b926-d12fd0f2a0b3/download538d73a34db8f2aeba64e18fe604f1ddMD57Nota de proyecto.pdf.jpgNota de proyecto.pdf.jpgGenerated Thumbnailimage/jpeg4360https://noesis.uis.edu.co/bitstreams/d16bf410-96ab-4bbc-bfd7-07e8736156ee/download317cd3877aa491d54f62127637068116MD59Carta de autorización.pdf.jpgCarta de autorización.pdf.jpgGenerated Thumbnailimage/jpeg5686https://noesis.uis.edu.co/bitstreams/a9363509-8061-4f29-860f-086fdce5c0fd/download04403fb26923bebe92af4df5583fd9b2MD51120.500.14071/11436oai:noesis.uis.edu.co:20.500.14071/114362022-10-14 08:38:56.365http://creativecommons.org/licenses/by-nc-nd/4.0/info:eu-repo/semantics/openAccessopen.accesshttps://noesis.uis.edu.coDSpace at UISnoesis@uis.edu.coRWwgc3VzY3JpdG8gQVVUT1Ig4oCTIEVTVFVESUFOVEUsIGlkZW50aWZpY2FkbyBjb21vIGFwYXJlY2UgYWwgcGllIGRlIG1pIGZpcm1hLCBhY3R1YW5kbyBlbiBub21icmUgcHJvcGlvLCB5IGVuIG1pIGNhbGlkYWQgZGUgYXV0b3IgZGVsIHRyYWJham8gZGUgZ3JhZG8sIGRlbCB0cmFiYWpvIGRlIGludmVzdGlnYWNpw7NuLCBvIGRlIGxhIHRlc2lzIGRlbm9taW5hZGEgY29tbyBzZSBlc3BlY2lmaWNhIGVuIGVsIGNhbXBvIOKAmFTDrXR1bG/igJksIHBvciBtZWRpbyBkZWwgcHJlc2VudGUgZG9jdW1lbnRvIGF1dG9yaXpvIGEgbGEgVU5JVkVSU0lEQUQgSU5EVVNUUklBTCBERSBTQU5UQU5ERVIsIHBhcmEgcXVlIGVuIGxvcyB0w6lybWlub3MgZXN0YWJsZWNpZG9zIGVuIGxhIExleSAyMyBkZSAxOTgyLCBsYSBMZXkgNDQgZGUgMTk5MywgZWwgRGVjcmV0byA0NjAgZGUgMTk5NSwgbGEgRGVjaXNpw7NuIEFuZGluYSAzNTEgZGUgMTk5MywgeSBkZW3DoXMgbm9ybWFzIGdlbmVyYWxlcyBzb2JyZSBkZXJlY2hvcyBkZSBhdXRvciwgcmVhbGljZSBsYSByZXByb2R1Y2Npw7NuLCBjb211bmljYWNpw7NuIHDDumJsaWNhLCBlZGljacOzbiwgZGlzdHJpYnVjacOzbiBiYWpvIGxhIG1vZGFsaWRhZCBkZSBhbHF1aWxlciwgcHLDqXN0YW1vIHDDumJsaWNvIG8gaW1wb3J0YWNpw7NuIGVuIGZvcm1hdG8gaW1wcmVzbyB5IGRpZ2l0YWwsIGxhIHRyYW5zZm9ybWFjacOzbiwgbGEgcHVibGljYWNpw7NuIGNvbW8gb2JyYSBsaXRlcmFyaWEsIGxpYnJvIGVsZWN0csOzbmljbyAoZS1Cb29rKSBvIHJldmlzdGEgZWxlY3Ryw7NuaWNhLCBpbmNsdXllbmRvIGxhIHBvc2liaWxpZGFkIGRlIGRpc3RyaWJ1aXJsYSBwb3IgbWVkaW9zIHRyYWRpY2lvbmFsZXMgbyBwb3IgSW50ZXJuZXQgYSBjdWFscXVpZXIgdMOtdHVsbyAgcG9yIGxhIFVuaXZlcnNpZGFkIHkgY29uIHF1aWVuIHRlbmdhIGNvbnZlbmlvIHBhcmEgZWxsbywgaW5jbHV5ZW5kbyBsYSBwb3NpYmlsaWRhZCBkZSBoYWNlciBhZGFwdGFjaW9uZXMsIGFjdHVhbGl6YWNpb25lcyB5IHRyYWR1Y2Npb25lcyBlbiB0b2RvcyBsb3MgaWRpb21hczsgbGEgaW5jb3Jwb3JhY2nDs24gYSB1bmEgY29sZWNjacOzbiBvIGNvbXBpbGFjacOzbiwgbGEgdHJhZHVjY2nDs24sIGZpamFjacOzbiBlbiBmb25vZ3JhbWEsIHB1ZXN0YSBhIGRpc3Bvc2ljacOzbiBlbiBmb3JtYXRvIGFuw6Fsb2dvLCBkaWdpdGFsLCBhdWRpb3Zpc3VhbCwgbWFnbsOpdGljbywgeSwgZW4gZ2VuZXJhbCwgbG9zIGZvcm1hdG9zIGVuICBxdWUgc2UgcHVlZGEgcmVwcm9kdWNpciB5IGNvbXVuaWNhciAgZGUgbWFuZXJhIHRvdGFsIHkgcGFyY2lhbCBtaSB0cmFiYWpvIGRlIGdyYWRvIG8gdGVzaXMuIAoKTGEgcHJlc2VudGUgYXV0b3JpemFjacOzbiBzZSBoYWNlIGV4dGVuc2l2YSBhIGxhcyBmYWN1bHRhZGVzIHkgZGVyZWNob3MgZGUgdXNvIHNvYnJlIGxhIG9icmEgZW4gZm9ybWF0byBvIHNvcG9ydGUgYW7DoWxvZ28sIGZvcm1hdG8gdmlydHVhbCwgZWxlY3Ryw7NuaWNvLCBkaWdpdGFsLCDDs3B0aWNvLCB1c28gZW4gcmVkLCBJbnRlcm5ldCwgZXh0cmFuZXQsIGludHJhbmV0LCBlbnRyZSBvdHJvcyBmb3JtYXRvcyB5IG1lZGlvcy4KCkVsIEFVVE9SIOKAkyBFU1RVRElBTlRFLCBtYW5pZmllc3RhIHF1ZSBsYSBvYnJhIG9iamV0byBkZSBsYSBwcmVzZW50ZSBhdXRvcml6YWNpw7NuIGVzIG9yaWdpbmFsIHkgbGEgcmVhbGl6w7Mgc2luIHZpb2xhciBvIHVzdXJwYXIgZGVyZWNob3MgZGUgYXV0b3IgZGUgdGVyY2Vyb3MsIHBvciBsbyB0YW50bywgbGEgb2JyYSBlcyBkZSBzdSBleGNsdXNpdmEgYXV0b3LDrWEgeSBkZXRlbnRhIGxhIHRpdHVsYXJpZGFkIHNvYnJlIGxhIG1pc21hLiAgCgpQYXJhIHRvZG9zIGxvcyBlZmVjdG9zIGxhIFVOSVZFUlNJREFEIElORFVTVFJJQUwgREUgU0FOVEFOREVSIGFjdMO6YSBjb21vIHVuIHRlcmNlcm8gZGUgYnVlbmEgZmU7IGVuIGNvbnNlY3VlbmNpYSwgZW4gY2FzbyBkZSBwcmVzZW50YXJzZSBjdWFscXVpZXIgcmVjbGFtYWNpw7NuIG8gYWNjacOzbiBwb3IgcGFydGUgZGUgdW4gdGVyY2VybyBlbiBjdWFudG8gYSBsb3MgZGVyZWNob3MgZGUgYXV0b3Igc29icmUgbGEgb2JyYSBlbiBjdWVzdGnDs24sIEVsIEFVVE9SIOKAkyBFU1RVRElBTlRFLCBhc3VtaXLDoSB0b2RhIGxhIHJlc3BvbnNhYmlsaWRhZCwgeSBzYWxkcsOhIGVuIGRlZmVuc2EgZGUgbG9zIGRlcmVjaG9zIGFxdcOtIGF1dG9yaXphZG9zLgo=