Sistema de acondicionamiento y filtrado de señales fotopletismográficas implementando metodologías de aprendizaje de máquina

Este trabajo presenta el desarrollo de un sistema para el acondicionamiento y filtrado de señales fotopletismográficas (PPG), con el objetivo de mitigar el ruido causado por interferencia de la red eléctrica, por desviaciones en la línea base y por artefactos de movimiento presentes en la señal. Se...

Full description

Autores:
Martínez Duque, Eduardo
Tipo de recurso:
Trabajo de grado de pregrado
Fecha de publicación:
2024
Institución:
Universidad Tecnológica de Pereira
Repositorio:
Repositorio Institucional UTP
Idioma:
spa
OAI Identifier:
oai:repositorio.utp.edu.co:11059/15284
Acceso en línea:
https://hdl.handle.net/11059/15284
https://repositorio.utp.edu.co/home
Palabra clave:
620 - Ingeniería y operaciones afines::621 - Física aplicada
Aprendizaje automático (Inteligencia artificial)
Aprendizaje de máquina
Interferencia (Sonido)
Acondicionamiento de señales
Aprendizaje automático
Arboles de decisión
Artefactos de movimiento
Descomposición de modo empírico
Estimación de frecuencia cardíaca
Estimación de presión arterial
Fotopletismografía (PPG)
Mitigación de ruido
Procesamiento de señales
Remoción de artefactos
Rights
openAccess
License
Atribución-NoComercial-SinDerivadas 4.0 Internacional (CC BY-NC-ND 4.0)
id UTP2_18bb1e63300d8bf24c87f4aa8692bd6d
oai_identifier_str oai:repositorio.utp.edu.co:11059/15284
network_acronym_str UTP2
network_name_str Repositorio Institucional UTP
repository_id_str
dc.title.spa.fl_str_mv Sistema de acondicionamiento y filtrado de señales fotopletismográficas implementando metodologías de aprendizaje de máquina
title Sistema de acondicionamiento y filtrado de señales fotopletismográficas implementando metodologías de aprendizaje de máquina
spellingShingle Sistema de acondicionamiento y filtrado de señales fotopletismográficas implementando metodologías de aprendizaje de máquina
620 - Ingeniería y operaciones afines::621 - Física aplicada
Aprendizaje automático (Inteligencia artificial)
Aprendizaje de máquina
Interferencia (Sonido)
Acondicionamiento de señales
Aprendizaje automático
Arboles de decisión
Artefactos de movimiento
Descomposición de modo empírico
Estimación de frecuencia cardíaca
Estimación de presión arterial
Fotopletismografía (PPG)
Mitigación de ruido
Procesamiento de señales
Remoción de artefactos
title_short Sistema de acondicionamiento y filtrado de señales fotopletismográficas implementando metodologías de aprendizaje de máquina
title_full Sistema de acondicionamiento y filtrado de señales fotopletismográficas implementando metodologías de aprendizaje de máquina
title_fullStr Sistema de acondicionamiento y filtrado de señales fotopletismográficas implementando metodologías de aprendizaje de máquina
title_full_unstemmed Sistema de acondicionamiento y filtrado de señales fotopletismográficas implementando metodologías de aprendizaje de máquina
title_sort Sistema de acondicionamiento y filtrado de señales fotopletismográficas implementando metodologías de aprendizaje de máquina
dc.creator.fl_str_mv Martínez Duque, Eduardo
dc.contributor.advisor.none.fl_str_mv Daza Santacoloma, Genaro
dc.contributor.author.none.fl_str_mv Martínez Duque, Eduardo
dc.subject.ddc.none.fl_str_mv 620 - Ingeniería y operaciones afines::621 - Física aplicada
topic 620 - Ingeniería y operaciones afines::621 - Física aplicada
Aprendizaje automático (Inteligencia artificial)
Aprendizaje de máquina
Interferencia (Sonido)
Acondicionamiento de señales
Aprendizaje automático
Arboles de decisión
Artefactos de movimiento
Descomposición de modo empírico
Estimación de frecuencia cardíaca
Estimación de presión arterial
Fotopletismografía (PPG)
Mitigación de ruido
Procesamiento de señales
Remoción de artefactos
dc.subject.armarc.none.fl_str_mv Aprendizaje automático (Inteligencia artificial)
Aprendizaje de máquina
Interferencia (Sonido)
dc.subject.proposal.spa.fl_str_mv Acondicionamiento de señales
Aprendizaje automático
Arboles de decisión
Artefactos de movimiento
Descomposición de modo empírico
Estimación de frecuencia cardíaca
Estimación de presión arterial
Fotopletismografía (PPG)
Mitigación de ruido
Procesamiento de señales
Remoción de artefactos
description Este trabajo presenta el desarrollo de un sistema para el acondicionamiento y filtrado de señales fotopletismográficas (PPG), con el objetivo de mitigar el ruido causado por interferencia de la red eléctrica, por desviaciones en la línea base y por artefactos de movimiento presentes en la señal. Se exploran dos técnicas para la remoción de artefactos de movimiento. La primera técnica se basa en la descomposición de modo empírico, que filtra la señal reconstruyéndola con funciones de modo intrínseco libres de componentes frecuenciales asociados a los artefactos de movimiento. Por otro lado, se desarrolla un modelo de aprendizaje automático basado en arboles de decisión capaz de identificar segmentos de señales PPG afectados por artefactos de movimiento. A partir de este modelo, se crea un algoritmo para la detección automática de segmentos corruptos en las señales PPG adquiridas. Finalmente, se realiza una comparación entre ambas técnicas cuya finalidad es estimar la frecuencia cardíaca y la presión arterial a partir de las señales PPG. Ambas técnicas muestran mejoras en la precisión de estos parámetros, aunque se destaca que la técnica basada en aprendizaje de máquina exhibe un rendimiento superior.
publishDate 2024
dc.date.accessioned.none.fl_str_mv 2024-08-30T17:02:02Z
dc.date.available.none.fl_str_mv 2024-08-30T17:02:02Z
dc.date.issued.none.fl_str_mv 2024
dc.type.none.fl_str_mv Trabajo de grado - Pregrado
dc.type.version.none.fl_str_mv info:eu-repo/semantics/acceptedVersion
dc.type.coar.none.fl_str_mv http://purl.org/coar/resource_type/c_7a1f
dc.type.content.none.fl_str_mv Text
dc.type.driver.none.fl_str_mv info:eu-repo/semantics/bachelorThesis
format http://purl.org/coar/resource_type/c_7a1f
status_str acceptedVersion
dc.identifier.uri.none.fl_str_mv https://hdl.handle.net/11059/15284
dc.identifier.instname.none.fl_str_mv Universidad Tecnológica de Pereira
dc.identifier.reponame.none.fl_str_mv Repositorio Universidad Tecnológica de Pereira
dc.identifier.repourl.none.fl_str_mv https://repositorio.utp.edu.co/home
url https://hdl.handle.net/11059/15284
https://repositorio.utp.edu.co/home
identifier_str_mv Universidad Tecnológica de Pereira
Repositorio Universidad Tecnológica de Pereira
dc.language.iso.none.fl_str_mv spa
language spa
dc.relation.references.none.fl_str_mv J. Park, H. S. Seok, S. S. Kim, and H. Shin, “Photoplethysmogram analysis and applications: An integrative review,” Frontiers in Physiology, vol. 12, 3 2022.
A. Ambardar, Digital Signal Processing: A Modern Introduction. Thomson, 2007. [Online]. Available: https://books.google.com.co/books?id=SJqvPQAACAAJ
A. Hina, H. Nadeem, and W. Saadeh, “A single led photoplethysmography-based noninvasive glucose monitoring prototype system,” in 2019 IEEE International Symposium on Circuits and Systems (ISCAS). IEEE, 5 2019, pp. 1–5. [Online]. Available: https://ieeexplore.ieee.org/document/8702747/
T. T. Islam, M. S. Ahmed, M. Hassanuzzaman, S. A. B. Amir, and T. Rahman, “Blood glucose level regression for smartphone ppg signals using machine learning,” Applied Sciences, vol. 11, 2021.
G. Vega-Martinez, C. Alvarado-Serrano, and L. Leija-Salas, “Ecg baseline drift removal using discrete wavelet transform,” in 2011 8th International Conference on Electrical Engineering, Computing Science and Automatic Control. IEEE, 10 2011, pp. 1–5. [Online]. Available: http://ieeexplore.ieee.org/document/6106625
J. A. Sukor, S. J. Redmond, and N. H. Lovell, “Signal quality measures for pulse oximetry through waveform morphology analysis,” Physiological Measurement, vol. 32, no. 3, pp. 369–384, 2011.
S.-H. Liu, J.-J. Wang, W. Chen, K.-L. Pan, and C.-H. Su, “Classification of photoplethysmographic signal quality with fuzzy neural network for improvement of stroke volume measurement,” Applied Sciences, vol. 10, no. 4, p. 1476, 2020.
N. Selvaraj, Y. Mendelson, K. H. Shelley, D. G. Silverman, and K. H. Chon, “Statistical approach for the detection of motion/noise artifacts in photoplethysmogram,” in 2011 Annual International Conference of the IEEE Engineering in Medicine and Biology Society, 2011, pp. 4972–4975.
D. Pollreisz and N. TaheriNejad, “Detection and removal of motion artifacts in ppg signals,” Mobile Networks and Applications, vol. 27, pp. 728–738, 4 2022. [Online]. Available: https://link.springer.com/10.1007/s11036-019-01323-6
Q. Wang, P. Yang, and Y. Zhang, “Artifact reduction based on empirical mode decomposition (emd) in photoplethysmography for pulse rate detection,” in 2010 Annual International Conference of the IEEE Engineering in Medicine and Biology, 2010, pp. 959–962.
K. T. Tanweer, S. R. Hasan, and A. M. Kamboh, “Motion artifact reduction from ppg signals during intense exercise using filtered x-lms,” in 2017 IEEE International Symposium on Circuits and Systems (ISCAS). IEEE, 5 2017, pp. 1–4.
C.-C. Wu, I.-W. Chen, and W.-C. Fang, “An implementation of motion artifacts elimination for ppg signal processing based on recursive least squares adaptive filter,” in 2017 IEEE Biomedical Circuits and Systems Conference (BioCAS). IEEE, 10 2017, pp. 1–4.
P. Ghosal, S. Himavathi, and E. Srinivasan, “Ppg motion artifact reduction using neural network and spline interpolation,” in 2020 7th International Conference on Smart Structures and Systems (ICSSS), 2020, pp. 1–6.
E. Monte-Moreno, “Non-invasive estimate of blood glucose and blood pressure from a photoplethysmograph by means of machine learning techniques,” Artificial Intelligence in Medicine, vol. 53, pp. 127–138, 10 2011.
A. V. Challoner and C. A. Ramsay, “A photoelectric plethysmograph for the measurement of cutaneous blood flow,” Physics in medicine and biology, vol. 19, no. 3, pp. 317–328, 1974. [Online]. Available: https: //doi.org/10.1088/0031-9155/19/3/003
J. Spigulis, L. Gailite, A. Lihachev, and R. Erts, “Simultaneous recording of skin blood pulsations at different vascular depths by multiwavelength photoplethysmography,” Appl. Opt., vol. 46, no. 10, pp. 1754–1759, Apr 2007. [Online]. Available: https://opg.optica.org/ao/abstract.cfm?URI=ao-46-10-1754
J. Liu, B. P. Yan, Y.-T. Zhang, X.-R. Ding, P. Su, and N. Zhao, “Multi-wavelength photoplethysmography enabling continuous blood pressure measurement with compact wearable electronics,” IEEE Transactions on Biomedical Engineering, vol. 66, no. 6, pp. 1514–1525, 2019.
X.-R. Ding and Y.-T. Zhang, “Photoplethysmogram intensity ratio: A potential indicator for improving the accuracy of ptt-based cuffless blood pressure estimation,” in 2015 37th Annual International Conference of the IEEE Engineering in Medicine and Biology Society (EMBC), 2015, pp. 398–401.
L. Evdochim, A. E. Zhdanov, L. Dobrescu, D. Dobrescu, and A. Y. Dolganov, “Blood pressure and photoplethysmography signal pairs characterization by dicrotic notch,” in 2022 IEEE 23rd International Conference of Young Professionals in Electron Devices and Materials (EDM), 2022, pp. 543–546.
M. H. Chowdhury, M. N. I. Shuzan, M. E. Chowdhury, Z. B. Mahbub, M. M. Uddin, A. Khandakar, and M. B. I. Reaz, “Estimating blood pressure from the photoplethysmogram signal and demographic features using machine learning techniques,” Sensors (Switzerland), vol. 20, 6 2020.
L. Frey, C. Menon, and M. Elgendi, “Blood pressure measurement using only a smartphone,” NPJ Digital Medicine, vol. 5, no. 1, p. 86, 2022. [Online]. Available: https://doi.org/10.1038/s41746-022-00629-2
W. G. Zijlstra, A. Buursma, and W. P. Meeuwsen-van der Roest, “Absorption spectra of human fetal and adult oxyhemoglobin, de-oxyhemoglobin, carboxyhemoglobin, and methemoglobin,” Clinical Chemistry, vol. 37, no. 9, pp. 1633–1638, 1991.
N. Pinheiro, R. Couceiro, J. Henriques, J. Muehlsteff, I. Quintal, L. Goncalves, and P. Carvalho, “Can ppg be used for hrv analysis?” in 2016 Annual International Conference of the IEEE Engineering in Medicine and Biology Society (EMBC). IEEE, Aug 2016, pp. 2945–2949.
S. S. Mousavi, M. Firouzmand, M. Charmi, M. Hemmati, M. Moghadam, and Y. Ghorbani, “Blood pressure estimation from appropriate and inappropriate ppg signals using a whole-based method,” Biomedical Signal Processing and Control, vol. 47, pp. 196–206, 1 2019.
T. Sharma and K. K. Sharma, “Power line interference removal from ecg signals using wavelet transform based component-retrieval,” in 2016 International Conference on Advances in Computing, Communications and Informatics (ICACCI), 2016, pp. 95–101.
M. Elgendi, “On the analysis of fingertip photoplethysmogram signals,” Current cardiology reviews, vol. 8, pp. 14–25, 02 2012.
F. Scholkmann, J. Boss, and M. Wolf, “An efficient algorithm for automatic peak detection in noisy periodic and quasi-periodic signals,” Algorithms, vol. 5, no. 4, pp. 588–603, 2012. [Online]. Available: https://doi.org/10.3390/a5040588
D. M. Ballesteros and D. Renza Torres, INTRODUCCIÓN A LOS FILTROS DIGITALES: Un enfoque teórico-práctico. REDIPE Red Iberoamericana de Pedagogía, enero 2018.
S. Hanyu and C. Xiaohui, “Motion artifact detection and reduction in ppg signals based on statistics analysis,” IEEE, pp. 3114–3119, 5 2017. [Online]. Available: http://ieeexplore.ieee.org/document/7979043/
S. K. Bashar, D. Han, A. Soni, D. D. McManus, and K. H. Chon, “Developing a novel noise artifact detection algorithm for smartphone ppg signals: Preliminary results,” IEEE, pp. 79–82, 3 2018. [Online]. Available: http://ieeexplore.ieee.org/document/8333374/
M. Raghuram, K. Sivani, and K. A. Reddy, “Use of complex emd generated noise reference for adaptive reduction of motion artifacts from ppg signals,” in 2016 International Conference on Electrical, Electronics, and Optimization Techniques (ICEEOT). IEEE, 3 2016, pp. 1816–1820. [Online]. Available: http://ieeexplore.ieee.org/document/7755001/
M. C. Peel, G. E. Amirthanathan, G. G. S. Pegram, T. A. Mcmahon, and F. H. S. Chiew, “Issues with the application of empirical mode decomposition analysis.”
S. Hara, T. Shimazaki, H. Okuhata, H. Nakamura, T. Kawabata, K. Cai, and T. Takubo, “Parameter optimization of motion artifact canceling ppg-based heart rate sensor by means of cross validation,” in 2017 11th International Symposium on Medical Information and Communication Technology (ISMICT). IEEE, 2 2017, pp. 73–76. [Online]. Available: http://ieeexplore.ieee.org/document/7891771/
N. Huang, Z. Shen, S. Long, M. Wu, H. Shih, Q. Zheng, N.-C. Yen, C.-C. Tung, and H. Liu, “The empirical mode decomposition and the hilbert spectrum for nonlinear and non-stationary time series analysis,” Proceedings of the Royal Society of London. Series A: Mathematical, Physical and Engineering Sciences, vol. 454, pp. 903–995, 03 1998.
H. Liang, Z. Lin, and R. W. McCallum, “Artifact reduction in electrogastrogram based on empirical mode decomposition method,” Medical & Biological Engineering & Computing, vol. 38, pp. 35–41, 2000. [Online]. Available: https://doi.org/10.1007/BF02344686
F. R. Kschischang, “The hilbert transform,” The Edward S. Rogers Sr. Department of Electrical and Computer Engineering, University of Toronto, 2015, october 22, 2006; updated March 10, 2015.
L. Charris, C. Henriquez, S. Hernandez, L. Jimeno, O. Guillen, and S. Moreno, “Análisis comparativo de algoritmos de árboles de decisión en el procesamiento de datos biológicos,” Universidad Simón Bolívar, Barranquilla-Colombia, 2023.
M. Wójcikowski and B. Pankiewicz, “Photoplethysmographic time-domain heart rate measurement algorithm for resource-constrained wearable devices and its implementation,” Sensors, vol. 20, no. 6, p. 1783, 2020. [Online]. Available: https://doi.org/10.3390/s20061783
S. R. Yadhuraj, H. Harsha, and K. V. Padmaja, “Removal of noise in ppg signals using wavelets,” International Journal of Computer Science and Mobile Computing (IJCSMC), vol. 2, no. 6, pp. 444–451, June 2013.
N. V. Chawla, K. W. Bowyer, L. O. Hall, and W. P. Kegelmeyer, “Smote: Synthetic minority over-sampling technique,” Journal of Artificial Intelligence Research, vol. 16, pp. 321–357, 2002. [Online]. Available: https: //doi.org/10.48550/arXiv.1106.1813
M. Awad and S. Fraihat, “Recursive feature elimination with cross-validation with decision tree: Feature selection method for machine learning-based intrusion detection systems,” Journal of Sensor and Actuator Networks, vol. 12, no. 5, 2023. [Online]. Available: https://www.mdpi.com/2224-2708/12/5/67
dc.rights.license.none.fl_str_mv Atribución-NoComercial-SinDerivadas 4.0 Internacional (CC BY-NC-ND 4.0)
dc.rights.uri.none.fl_str_mv https://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
rights_invalid_str_mv Atribución-NoComercial-SinDerivadas 4.0 Internacional (CC BY-NC-ND 4.0)
https://creativecommons.org/licenses/by-nc-nd/4.0/
http://purl.org/coar/access_right/c_abf2
eu_rights_str_mv openAccess
dc.format.extent.none.fl_str_mv 66 Páginas
dc.format.mimetype.none.fl_str_mv application/pdf
dc.publisher.none.fl_str_mv Universidad Tecnológica de Pereira
dc.publisher.program.none.fl_str_mv Ingeniería Eléctrica
dc.publisher.faculty.none.fl_str_mv Facultad de Ingenierías
dc.publisher.place.none.fl_str_mv Pereira
publisher.none.fl_str_mv Universidad Tecnológica de Pereira
institution Universidad Tecnológica de Pereira
bitstream.url.fl_str_mv https://dspace7-utp.metabuscador.org/bitstreams/7426f730-d50e-45e1-9d15-f967fe7fdb75/download
https://dspace7-utp.metabuscador.org/bitstreams/54c83ea4-0560-4a65-b9d5-5d425e3f0373/download
https://dspace7-utp.metabuscador.org/bitstreams/cc67b10b-9433-4e4d-bc10-6a2aad79fd1c/download
https://dspace7-utp.metabuscador.org/bitstreams/cc235375-28b5-4221-9c0f-3b9a57ace691/download
bitstream.checksum.fl_str_mv 291aa98c42c41df170a1387c8d839bca
2f9959eaf5b71fae44bbf9ec84150c7a
431a489aa9d4c04eeb5808a3b65c34ea
84c9ba52516df69b9f43d55d63cb9b20
bitstream.checksumAlgorithm.fl_str_mv MD5
MD5
MD5
MD5
repository.name.fl_str_mv Repositorio de la Universidad Tecnológica de Pereira
repository.mail.fl_str_mv bdigital@metabiblioteca.com
_version_ 1812205312584712192
spelling Atribución-NoComercial-SinDerivadas 4.0 Internacional (CC BY-NC-ND 4.0)Manifiesto (Manifestamos) en este documento la voluntad de autorizar a la Biblioteca Jorge Roa Martínez de la Universidad Tecnológica de Pereira la publicación en el Repositorio institucional (http://biblioteca.utp.edu.co), la versión electrónica de la OBRA titulada: La Universidad Tecnológica de Pereira, entidad académica sin ánimo de lucro, queda por lo tanto facultada para ejercer plenamente la autorización anteriormente descrita en su actividad ordinaria de investigación, docencia y publicación. La autorización otorgada se ajusta a lo que establece la Ley 23 de 1982. Con todo, en mi (nuestra) condición de autor (es) me (nos) reservo (reservamos) los derechos morales de la OBRA antes citada con arreglo al artículo 30 de la Ley 23 de 1982. En concordancia suscribo (suscribimos) este documento en el momento mismo que hago (hacemos) entrega de mi (nuestra) OBRA a la Biblioteca “Jorge Roa Martínez” de la Universidad Tecnológica de Pereira. Manifiesto (manifestamos) que la OBRA objeto de la presente autorización es original y la realicé (realizamos) sin violar o usurpar derechos de autor de terceros, por lo tanto, mi (nuestra) OBRA es de exclusiva autoría y tiene la titularidad sobre la misma. PARAGRAFO: En caso de presentarse cualquier reclamación o acción por parte de un tercero en cuanto a los derechos de autor sobre la OBRA en cuestión, El (los) Autor(es), asumirá (n) toda la responsabilidad, y saldrá (n) en defensa de los derechos aquí autorizados. Para todos los efectos La Universidad actúa como un tercero de buena fe. Manifiesto (manifestamos) que soy (somos) conocedor (es) del alcance mundial de la publicación de mi (nuestra) obra en internet y específicamente en el Repositorio Institucional. Manifiesto (manifestamos) que mi (nuestra) OBRA no está limitada ni protegida por ningún acuerdo de confidencialidad, no es un secreto industrial, no es una invención patentable y no cuenta con ningún otro tipo de restricción para su publicación. Acepto (aceptamos) que la autorización se hace a título gratuito, por lo tanto, renuncio (renunciamos) a recibir pago alguno por su distribución, comunicación pública y cualquier otro uso que se haga en los términos de la presente licencia. Autorizo (autorizamos) a la Universidad Tecnológica de Pereira para incluir la presente OBRA en los índices y buscadores que la Universidad estime convenientes para su visibilidad. Acepto (aceptamos) que la Universidad Tecnológica de Pereira convierta el documento en cualquier medio o formato para su preservación digital. En constancia de lo anterior, autorizo (autorizamos) publicar mi (nuestra) OBRA bajo las Licencias Creative Commons 4.0 (cuyo texto se puede consultar en: http://creativecommons.org/licenses/): Se autoriza el uso comercial de mi (nuestra) OBRA: SI____ NO_____ Se autorizan modificaciones de mi (nuestra) OBRA: SI____ NO_____ “Los derechos de autor recaen sobre las obras científicas, literarias y artísticas en las cuales se comprenden las creaciones del espíritu en el campo científico, literario y artístico, cualquiera que sea el modo o forma de expresión y cualquiera que sea su destinación, tales como: los libros, folletos y otros escritos; las conferencias, alocuciones, sermones y otras obras de la misma naturaleza; las obras dramáticas o dramático-musicales; las obras coreográficas y las pantomimas; las composiciones musicales con letra o sin ella; las obras cinematográficas, a las cuales se asimilan las obras expresadas por procedimiento análogo a la cinematografía, inclusive los videogramas, las obras de dibujo, pintura, arquitectura, escultura, grabado, litografía; las obras fotográficas a las cuales se asimilan las expresas por procedimiento análogo o la fotografía; las obras de artes plásticas; las ilustraciones, mapas, planos, croquis y obras plásticas relativas a la geografía, a la topografía a la arquitectura o a las ciencias, en fin, toda producción del dominio científico, literario o artístico que puedan producirse o definirse por cualquier forma de impresión o de reproducción, por fonografía, radiotelefonía o cualquier otro medio conocido o por conocer”. (Artículo 2 de la ley 23 de 1982).https://creativecommons.org/licenses/by-nc-nd/4.0/http://purl.org/coar/access_right/c_abf2info:eu-repo/semantics/openAccessDaza Santacoloma, GenaroMartínez Duque, Eduardo2024-08-30T17:02:02Z2024-08-30T17:02:02Z2024https://hdl.handle.net/11059/15284Universidad Tecnológica de PereiraRepositorio Universidad Tecnológica de Pereirahttps://repositorio.utp.edu.co/homeEste trabajo presenta el desarrollo de un sistema para el acondicionamiento y filtrado de señales fotopletismográficas (PPG), con el objetivo de mitigar el ruido causado por interferencia de la red eléctrica, por desviaciones en la línea base y por artefactos de movimiento presentes en la señal. Se exploran dos técnicas para la remoción de artefactos de movimiento. La primera técnica se basa en la descomposición de modo empírico, que filtra la señal reconstruyéndola con funciones de modo intrínseco libres de componentes frecuenciales asociados a los artefactos de movimiento. Por otro lado, se desarrolla un modelo de aprendizaje automático basado en arboles de decisión capaz de identificar segmentos de señales PPG afectados por artefactos de movimiento. A partir de este modelo, se crea un algoritmo para la detección automática de segmentos corruptos en las señales PPG adquiridas. Finalmente, se realiza una comparación entre ambas técnicas cuya finalidad es estimar la frecuencia cardíaca y la presión arterial a partir de las señales PPG. Ambas técnicas muestran mejoras en la precisión de estos parámetros, aunque se destaca que la técnica basada en aprendizaje de máquina exhibe un rendimiento superior.This work presents the development of a system for the conditioning and filtering of photoplethysmographic (PPG) signals, aimed at mitigating noise caused by electrical network interference, baseline deviations, and motion artifacts present in the signal. Two techniques for motion artifact removal are explored. The first technique is based on empirical mode decomposition, which filters the signal by reconstructing it with intrinsic mode functions free from frequency components associated with motion artifacts. On the other hand, a machine learning model based on decision trees is developed, capable of identifying segments of PPG signals affected by motion artifacts. From this model, an algorithm is created for the automatic detection of corrupted segments in the acquired PPG signals. Finally, a comparison is made between both techniques, with the aim of estimating heart rate and blood pressure from the PPG signals. Both techniques show improvements in the accuracy of these parameters, although it is highlighted that the machine learning-based technique exhibits superior performance.Índice general iii Índice de figuras v Índice de tablas vi Agradecimientos vii Resumen viii Abstract ix I Preliminares 1 1. Introducción 2 2. Objetivos 4 2.1. Objetivo general . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4 2.2. Objetivos específicos . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4 II Marco teórico 5 3. Señal fotopletismográfica 6 3.1. Forma de onda de una señal PPG . . . . . . . . . . . . . . . . . . . . . 7 3.2. Características de la señal PPG y aplicaciones clínicas . . . . . . . . . . 9 3.3. Ruido en señales PPG . . . . . . . . . . . . . . . . . . . . . . . . . . . 10 4. Métodos de remoción de ruido en señales PPG 11 4.1. Corrección de desviaciones en la línea base . . . . . . . . . . . . . . . . 11 4.1.1. Remoción de desviación de línea base usando la transformada discreta de Wavelet . . . . . . . . . . . . . . . . . . . . . . . . . 11 4.2. Interferencias de líneas de potencia . . . . . . . . . . . . . . . . . . . . 12 4.2.1. Filtros FIR . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12 4.3. Remoción de artefactos de movimiento . . . . . . . . . . . . . . . . . . 15 4.3.1. Empirical Mode Decomposition (EMD) . . . . . . . . . . . . . . 16 4.3.2. Remoción de MA basada en clasificación automática . . . . . . 18 5. Signos vitales a partir de la señal PPG 22 5.1. Estimación de la frecuencia cardiaca basada en AMPD. . . . . . . . . . 22 5.2. Estimación de presión arterial en señales PPG . . . . . . . . . . . . . . 23 5.2.1. Preprocesamiento de la señal . . . . . . . . . . . . . . . . . . . . 24 5.2.2. Extracción de características . . . . . . . . . . . . . . . . . . . . 24 5.2.3. Reducción de dimensión . . . . . . . . . . . . . . . . . . . . . . 24 5.2.4. Modelos de aprendizaje automático . . . . . . . . . . . . . . . . 24 III Marco experimental 26 6. Esquema de trabajo 27 6.1. Dispositivo de registro de la señal PPG . . . . . . . . . . . . . . . . . . 27 6.2. Descripción de la toma de muestras y base de datos . . . . . . . . . . . 28 6.3. Remoción de la desviación de línea base . . . . . . . . . . . . . . . . . 29 6.4. Descripción de la remoción de PLI . . . . . . . . . . . . . . . . . . . . 30 6.5. Descripción de remoción de artefactos de movimiento . . . . . . . . . . 32 6.5.1. Metodología basada en EMD . . . . . . . . . . . . . . . . . . . 32 6.5.2. Metodología basada en aprendizaje de máquina . . . . . . . . . 32 6.6. Descripción de la evaluación de desempeño . . . . . . . . . . . . . . . . 34 6.6.1. Estimación de frecuencia cardiaca . . . . . . . . . . . . . . . . . 34 6.6.2. Estimación de presiones arteriales . . . . . . . . . . . . . . . . . 35 7. Resultados 37 7.1. Resultados del preprocesamiento de la señal . . . . . . . . . . . . . . . 37 7.2. Resultados de la aplicación del EMD . . . . . . . . . . . . . . . . . . . 38 7.3. Resultados de la aplicación del método de aprendizaje de máquina . . . 40 7.4. Resultados de la evaluación de desempeño . . . . . . . . . . . . . . . . 41 7.4.1. Comparación de metodologías de remoción de MA mediante la estimación de frecuencias cardíacas . . . . . . . . . . . . . . . . 41 7.4.2. Comparación de metodologías de remoción de MA mediante la estimación de presiones arteriales . . . . . . . . . . . . . . . . . 44 IV Discusión y conclusiones 47 8. Discusión de los resultados 48 9. Conclusiones 50PregradoIngeniero(a) Electricista66 Páginasapplication/pdfspaUniversidad Tecnológica de PereiraIngeniería EléctricaFacultad de IngenieríasPereira620 - Ingeniería y operaciones afines::621 - Física aplicadaAprendizaje automático (Inteligencia artificial)Aprendizaje de máquinaInterferencia (Sonido)Acondicionamiento de señalesAprendizaje automáticoArboles de decisiónArtefactos de movimientoDescomposición de modo empíricoEstimación de frecuencia cardíacaEstimación de presión arterialFotopletismografía (PPG)Mitigación de ruidoProcesamiento de señalesRemoción de artefactosSistema de acondicionamiento y filtrado de señales fotopletismográficas implementando metodologías de aprendizaje de máquinaTrabajo de grado - Pregradoinfo:eu-repo/semantics/acceptedVersionhttp://purl.org/coar/resource_type/c_7a1fTextinfo:eu-repo/semantics/bachelorThesisJ. Park, H. S. Seok, S. S. Kim, and H. Shin, “Photoplethysmogram analysis and applications: An integrative review,” Frontiers in Physiology, vol. 12, 3 2022.A. Ambardar, Digital Signal Processing: A Modern Introduction. Thomson, 2007. [Online]. Available: https://books.google.com.co/books?id=SJqvPQAACAAJA. Hina, H. Nadeem, and W. Saadeh, “A single led photoplethysmography-based noninvasive glucose monitoring prototype system,” in 2019 IEEE International Symposium on Circuits and Systems (ISCAS). IEEE, 5 2019, pp. 1–5. [Online]. Available: https://ieeexplore.ieee.org/document/8702747/T. T. Islam, M. S. Ahmed, M. Hassanuzzaman, S. A. B. Amir, and T. Rahman, “Blood glucose level regression for smartphone ppg signals using machine learning,” Applied Sciences, vol. 11, 2021.G. Vega-Martinez, C. Alvarado-Serrano, and L. Leija-Salas, “Ecg baseline drift removal using discrete wavelet transform,” in 2011 8th International Conference on Electrical Engineering, Computing Science and Automatic Control. IEEE, 10 2011, pp. 1–5. [Online]. Available: http://ieeexplore.ieee.org/document/6106625J. A. Sukor, S. J. Redmond, and N. H. Lovell, “Signal quality measures for pulse oximetry through waveform morphology analysis,” Physiological Measurement, vol. 32, no. 3, pp. 369–384, 2011.S.-H. Liu, J.-J. Wang, W. Chen, K.-L. Pan, and C.-H. Su, “Classification of photoplethysmographic signal quality with fuzzy neural network for improvement of stroke volume measurement,” Applied Sciences, vol. 10, no. 4, p. 1476, 2020.N. Selvaraj, Y. Mendelson, K. H. Shelley, D. G. Silverman, and K. H. Chon, “Statistical approach for the detection of motion/noise artifacts in photoplethysmogram,” in 2011 Annual International Conference of the IEEE Engineering in Medicine and Biology Society, 2011, pp. 4972–4975.D. Pollreisz and N. TaheriNejad, “Detection and removal of motion artifacts in ppg signals,” Mobile Networks and Applications, vol. 27, pp. 728–738, 4 2022. [Online]. Available: https://link.springer.com/10.1007/s11036-019-01323-6Q. Wang, P. Yang, and Y. Zhang, “Artifact reduction based on empirical mode decomposition (emd) in photoplethysmography for pulse rate detection,” in 2010 Annual International Conference of the IEEE Engineering in Medicine and Biology, 2010, pp. 959–962.K. T. Tanweer, S. R. Hasan, and A. M. Kamboh, “Motion artifact reduction from ppg signals during intense exercise using filtered x-lms,” in 2017 IEEE International Symposium on Circuits and Systems (ISCAS). IEEE, 5 2017, pp. 1–4.C.-C. Wu, I.-W. Chen, and W.-C. Fang, “An implementation of motion artifacts elimination for ppg signal processing based on recursive least squares adaptive filter,” in 2017 IEEE Biomedical Circuits and Systems Conference (BioCAS). IEEE, 10 2017, pp. 1–4.P. Ghosal, S. Himavathi, and E. Srinivasan, “Ppg motion artifact reduction using neural network and spline interpolation,” in 2020 7th International Conference on Smart Structures and Systems (ICSSS), 2020, pp. 1–6.E. Monte-Moreno, “Non-invasive estimate of blood glucose and blood pressure from a photoplethysmograph by means of machine learning techniques,” Artificial Intelligence in Medicine, vol. 53, pp. 127–138, 10 2011.A. V. Challoner and C. A. Ramsay, “A photoelectric plethysmograph for the measurement of cutaneous blood flow,” Physics in medicine and biology, vol. 19, no. 3, pp. 317–328, 1974. [Online]. Available: https: //doi.org/10.1088/0031-9155/19/3/003J. Spigulis, L. Gailite, A. Lihachev, and R. Erts, “Simultaneous recording of skin blood pulsations at different vascular depths by multiwavelength photoplethysmography,” Appl. Opt., vol. 46, no. 10, pp. 1754–1759, Apr 2007. [Online]. Available: https://opg.optica.org/ao/abstract.cfm?URI=ao-46-10-1754J. Liu, B. P. Yan, Y.-T. Zhang, X.-R. Ding, P. Su, and N. Zhao, “Multi-wavelength photoplethysmography enabling continuous blood pressure measurement with compact wearable electronics,” IEEE Transactions on Biomedical Engineering, vol. 66, no. 6, pp. 1514–1525, 2019.X.-R. Ding and Y.-T. Zhang, “Photoplethysmogram intensity ratio: A potential indicator for improving the accuracy of ptt-based cuffless blood pressure estimation,” in 2015 37th Annual International Conference of the IEEE Engineering in Medicine and Biology Society (EMBC), 2015, pp. 398–401.L. Evdochim, A. E. Zhdanov, L. Dobrescu, D. Dobrescu, and A. Y. Dolganov, “Blood pressure and photoplethysmography signal pairs characterization by dicrotic notch,” in 2022 IEEE 23rd International Conference of Young Professionals in Electron Devices and Materials (EDM), 2022, pp. 543–546.M. H. Chowdhury, M. N. I. Shuzan, M. E. Chowdhury, Z. B. Mahbub, M. M. Uddin, A. Khandakar, and M. B. I. Reaz, “Estimating blood pressure from the photoplethysmogram signal and demographic features using machine learning techniques,” Sensors (Switzerland), vol. 20, 6 2020.L. Frey, C. Menon, and M. Elgendi, “Blood pressure measurement using only a smartphone,” NPJ Digital Medicine, vol. 5, no. 1, p. 86, 2022. [Online]. Available: https://doi.org/10.1038/s41746-022-00629-2W. G. Zijlstra, A. Buursma, and W. P. Meeuwsen-van der Roest, “Absorption spectra of human fetal and adult oxyhemoglobin, de-oxyhemoglobin, carboxyhemoglobin, and methemoglobin,” Clinical Chemistry, vol. 37, no. 9, pp. 1633–1638, 1991.N. Pinheiro, R. Couceiro, J. Henriques, J. Muehlsteff, I. Quintal, L. Goncalves, and P. Carvalho, “Can ppg be used for hrv analysis?” in 2016 Annual International Conference of the IEEE Engineering in Medicine and Biology Society (EMBC). IEEE, Aug 2016, pp. 2945–2949.S. S. Mousavi, M. Firouzmand, M. Charmi, M. Hemmati, M. Moghadam, and Y. Ghorbani, “Blood pressure estimation from appropriate and inappropriate ppg signals using a whole-based method,” Biomedical Signal Processing and Control, vol. 47, pp. 196–206, 1 2019.T. Sharma and K. K. Sharma, “Power line interference removal from ecg signals using wavelet transform based component-retrieval,” in 2016 International Conference on Advances in Computing, Communications and Informatics (ICACCI), 2016, pp. 95–101.M. Elgendi, “On the analysis of fingertip photoplethysmogram signals,” Current cardiology reviews, vol. 8, pp. 14–25, 02 2012.F. Scholkmann, J. Boss, and M. Wolf, “An efficient algorithm for automatic peak detection in noisy periodic and quasi-periodic signals,” Algorithms, vol. 5, no. 4, pp. 588–603, 2012. [Online]. Available: https://doi.org/10.3390/a5040588D. M. Ballesteros and D. Renza Torres, INTRODUCCIÓN A LOS FILTROS DIGITALES: Un enfoque teórico-práctico. REDIPE Red Iberoamericana de Pedagogía, enero 2018.S. Hanyu and C. Xiaohui, “Motion artifact detection and reduction in ppg signals based on statistics analysis,” IEEE, pp. 3114–3119, 5 2017. [Online]. Available: http://ieeexplore.ieee.org/document/7979043/S. K. Bashar, D. Han, A. Soni, D. D. McManus, and K. H. Chon, “Developing a novel noise artifact detection algorithm for smartphone ppg signals: Preliminary results,” IEEE, pp. 79–82, 3 2018. [Online]. Available: http://ieeexplore.ieee.org/document/8333374/M. Raghuram, K. Sivani, and K. A. Reddy, “Use of complex emd generated noise reference for adaptive reduction of motion artifacts from ppg signals,” in 2016 International Conference on Electrical, Electronics, and Optimization Techniques (ICEEOT). IEEE, 3 2016, pp. 1816–1820. [Online]. Available: http://ieeexplore.ieee.org/document/7755001/M. C. Peel, G. E. Amirthanathan, G. G. S. Pegram, T. A. Mcmahon, and F. H. S. Chiew, “Issues with the application of empirical mode decomposition analysis.”S. Hara, T. Shimazaki, H. Okuhata, H. Nakamura, T. Kawabata, K. Cai, and T. Takubo, “Parameter optimization of motion artifact canceling ppg-based heart rate sensor by means of cross validation,” in 2017 11th International Symposium on Medical Information and Communication Technology (ISMICT). IEEE, 2 2017, pp. 73–76. [Online]. Available: http://ieeexplore.ieee.org/document/7891771/N. Huang, Z. Shen, S. Long, M. Wu, H. Shih, Q. Zheng, N.-C. Yen, C.-C. Tung, and H. Liu, “The empirical mode decomposition and the hilbert spectrum for nonlinear and non-stationary time series analysis,” Proceedings of the Royal Society of London. Series A: Mathematical, Physical and Engineering Sciences, vol. 454, pp. 903–995, 03 1998.H. Liang, Z. Lin, and R. W. McCallum, “Artifact reduction in electrogastrogram based on empirical mode decomposition method,” Medical & Biological Engineering & Computing, vol. 38, pp. 35–41, 2000. [Online]. Available: https://doi.org/10.1007/BF02344686F. R. Kschischang, “The hilbert transform,” The Edward S. Rogers Sr. Department of Electrical and Computer Engineering, University of Toronto, 2015, october 22, 2006; updated March 10, 2015.L. Charris, C. Henriquez, S. Hernandez, L. Jimeno, O. Guillen, and S. Moreno, “Análisis comparativo de algoritmos de árboles de decisión en el procesamiento de datos biológicos,” Universidad Simón Bolívar, Barranquilla-Colombia, 2023.M. Wójcikowski and B. Pankiewicz, “Photoplethysmographic time-domain heart rate measurement algorithm for resource-constrained wearable devices and its implementation,” Sensors, vol. 20, no. 6, p. 1783, 2020. [Online]. Available: https://doi.org/10.3390/s20061783S. R. Yadhuraj, H. Harsha, and K. V. Padmaja, “Removal of noise in ppg signals using wavelets,” International Journal of Computer Science and Mobile Computing (IJCSMC), vol. 2, no. 6, pp. 444–451, June 2013.N. V. Chawla, K. W. Bowyer, L. O. Hall, and W. P. Kegelmeyer, “Smote: Synthetic minority over-sampling technique,” Journal of Artificial Intelligence Research, vol. 16, pp. 321–357, 2002. [Online]. Available: https: //doi.org/10.48550/arXiv.1106.1813M. Awad and S. Fraihat, “Recursive feature elimination with cross-validation with decision tree: Feature selection method for machine learning-based intrusion detection systems,” Journal of Sensor and Actuator Networks, vol. 12, no. 5, 2023. [Online]. Available: https://www.mdpi.com/2224-2708/12/5/67PublicationORIGINALTRABAJO DE GRADO.pdfTRABAJO DE GRADO.pdfapplication/pdf2670854https://dspace7-utp.metabuscador.org/bitstreams/7426f730-d50e-45e1-9d15-f967fe7fdb75/download291aa98c42c41df170a1387c8d839bcaMD51LICENSElicense.txtlicense.txttext/plain; charset=utf-814828https://dspace7-utp.metabuscador.org/bitstreams/54c83ea4-0560-4a65-b9d5-5d425e3f0373/download2f9959eaf5b71fae44bbf9ec84150c7aMD52TEXTTRABAJO DE GRADO.pdf.txtTRABAJO DE GRADO.pdf.txtExtracted texttext/plain115902https://dspace7-utp.metabuscador.org/bitstreams/cc67b10b-9433-4e4d-bc10-6a2aad79fd1c/download431a489aa9d4c04eeb5808a3b65c34eaMD53THUMBNAILTRABAJO DE GRADO.pdf.jpgTRABAJO DE GRADO.pdf.jpgGenerated Thumbnailimage/jpeg9157https://dspace7-utp.metabuscador.org/bitstreams/cc235375-28b5-4221-9c0f-3b9a57ace691/download84c9ba52516df69b9f43d55d63cb9b20MD5411059/15284oai:dspace7-utp.metabuscador.org:11059/152842024-09-05 17:08:54.07https://creativecommons.org/licenses/by-nc-nd/4.0/Manifiesto (Manifestamos) en este documento la voluntad de autorizar a la Biblioteca Jorge Roa Martínez de la Universidad Tecnológica de Pereira la publicación en el Repositorio institucional (http://biblioteca.utp.edu.co), la versión electrónica de la OBRA titulada: La Universidad Tecnológica de Pereira, entidad académica sin ánimo de lucro, queda por lo tanto facultada para ejercer plenamente la autorización anteriormente descrita en su actividad ordinaria de investigación, docencia y publicación. La autorización otorgada se ajusta a lo que establece la Ley 23 de 1982. Con todo, en mi (nuestra) condición de autor (es) me (nos) reservo (reservamos) los derechos morales de la OBRA antes citada con arreglo al artículo 30 de la Ley 23 de 1982. En concordancia suscribo (suscribimos) este documento en el momento mismo que hago (hacemos) entrega de mi (nuestra) OBRA a la Biblioteca “Jorge Roa Martínez” de la Universidad Tecnológica de Pereira. Manifiesto (manifestamos) que la OBRA objeto de la presente autorización es original y la realicé (realizamos) sin violar o usurpar derechos de autor de terceros, por lo tanto, mi (nuestra) OBRA es de exclusiva autoría y tiene la titularidad sobre la misma. PARAGRAFO: En caso de presentarse cualquier reclamación o acción por parte de un tercero en cuanto a los derechos de autor sobre la OBRA en cuestión, El (los) Autor(es), asumirá (n) toda la responsabilidad, y saldrá (n) en defensa de los derechos aquí autorizados. Para todos los efectos La Universidad actúa como un tercero de buena fe. Manifiesto (manifestamos) que soy (somos) conocedor (es) del alcance mundial de la publicación de mi (nuestra) obra en internet y específicamente en el Repositorio Institucional. Manifiesto (manifestamos) que mi (nuestra) OBRA no está limitada ni protegida por ningún acuerdo de confidencialidad, no es un secreto industrial, no es una invención patentable y no cuenta con ningún otro tipo de restricción para su publicación. Acepto (aceptamos) que la autorización se hace a título gratuito, por lo tanto, renuncio (renunciamos) a recibir pago alguno por su distribución, comunicación pública y cualquier otro uso que se haga en los términos de la presente licencia. Autorizo (autorizamos) a la Universidad Tecnológica de Pereira para incluir la presente OBRA en los índices y buscadores que la Universidad estime convenientes para su visibilidad. Acepto (aceptamos) que la Universidad Tecnológica de Pereira convierta el documento en cualquier medio o formato para su preservación digital. En constancia de lo anterior, autorizo (autorizamos) publicar mi (nuestra) OBRA bajo las Licencias Creative Commons 4.0 (cuyo texto se puede consultar en: http://creativecommons.org/licenses/): Se autoriza el uso comercial de mi (nuestra) OBRA: SI____ NO_____ Se autorizan modificaciones de mi (nuestra) OBRA: SI____ NO_____ “Los derechos de autor recaen sobre las obras científicas, literarias y artísticas en las cuales se comprenden las creaciones del espíritu en el campo científico, literario y artístico, cualquiera que sea el modo o forma de expresión y cualquiera que sea su destinación, tales como: los libros, folletos y otros escritos; las conferencias, alocuciones, sermones y otras obras de la misma naturaleza; las obras dramáticas o dramático-musicales; las obras coreográficas y las pantomimas; las composiciones musicales con letra o sin ella; las obras cinematográficas, a las cuales se asimilan las obras expresadas por procedimiento análogo a la cinematografía, inclusive los videogramas, las obras de dibujo, pintura, arquitectura, escultura, grabado, litografía; las obras fotográficas a las cuales se asimilan las expresas por procedimiento análogo o la fotografía; las obras de artes plásticas; las ilustraciones, mapas, planos, croquis y obras plásticas relativas a la geografía, a la topografía a la arquitectura o a las ciencias, en fin, toda producción del dominio científico, literario o artístico que puedan producirse o definirse por cualquier forma de impresión o de reproducción, por fonografía, radiotelefonía o cualquier otro medio conocido o por conocer”. (Artículo 2 de la ley 23 de 1982).open.accesshttps://dspace7-utp.metabuscador.orgRepositorio de la Universidad Tecnológica de Pereirabdigital@metabiblioteca.comTEEgT0JSQSAoVEFMIFkgQ09NTyBTRSBERUZJTkUgTcOBUyBBREVMQU5URSkgU0UgT1RPUkdBIEJBSk8gTE9TIFRFUk1JTk9TIERFIEVTVEEgTElDRU5DSUEgUMOaQkxJQ0EgREUgQ1JFQVRJVkUgQ09NTU9OUyAo4oCcTFBDQ+KAnSBPIOKAnExJQ0VOQ0lB4oCdKS4gTEEgT0JSQSBFU1TDgSBQUk9URUdJREEgUE9SIERFUkVDSE9TIERFIEFVVE9SIFkvVSBPVFJBUyBMRVlFUyBBUExJQ0FCTEVTLiBRVUVEQSBQUk9ISUJJRE8gQ1VBTFFVSUVSIFVTTyBRVUUgU0UgSEFHQSBERSBMQSBPQlJBIFFVRSBOTyBDVUVOVEUgQ09OIExBIEFVVE9SSVpBQ0nDk04gUEVSVElORU5URSBERSBDT05GT1JNSURBRCBDT04gTE9TIFTDiVJNSU5PUyBERSBFU1RBIExJQ0VOQ0lBIFkgREUgTEEgTEVZIERFIERFUkVDSE8gREUgQVVUT1IuCgpNRURJQU5URSBFTCBFSkVSQ0lDSU8gREUgQ1VBTFFVSUVSQSBERSBMT1MgREVSRUNIT1MgUVVFIFNFIE9UT1JHQU4gRU4gRVNUQSBMSUNFTkNJQSwgVVNURUQgQUNFUFRBIFkgQUNVRVJEQSBRVUVEQVIgT0JMSUdBRE8gRU4gTE9TIFRFUk1JTk9TIFFVRSBTRSBTRcORQUxBTiBFTiBFTExBLiBFTCBMSUNFTkNJQU5URSBDT05DRURFIEEgVVNURUQgTE9TIERFUkVDSE9TIENPTlRFTklET1MgRU4gRVNUQSBMSUNFTkNJQSBDT05ESUNJT05BRE9TIEEgTEEgQUNFUFRBQ0nDk04gREUgU1VTIFRFUk1JTk9TIFkgQ09ORElDSU9ORVMuCjEuIERlZmluaWNpb25lcwoKYS4JT2JyYSBDb2xlY3RpdmEgZXMgdW5hIG9icmEsIHRhbCBjb21vIHVuYSBwdWJsaWNhY2nDs24gcGVyacOzZGljYSwgdW5hIGFudG9sb2fDrWEsIG8gdW5hIGVuY2ljbG9wZWRpYSwgZW4gbGEgcXVlIGxhIG9icmEgZW4gc3UgdG90YWxpZGFkLCBzaW4gbW9kaWZpY2FjacOzbiBhbGd1bmEsIGp1bnRvIGNvbiB1biBncnVwbyBkZSBvdHJhcyBjb250cmlidWNpb25lcyBxdWUgY29uc3RpdHV5ZW4gb2JyYXMgc2VwYXJhZGFzIGUgaW5kZXBlbmRpZW50ZXMgZW4gc8OtIG1pc21hcywgc2UgaW50ZWdyYW4gZW4gdW4gdG9kbyBjb2xlY3Rpdm8uIFVuYSBPYnJhIHF1ZSBjb25zdGl0dXllIHVuYSBvYnJhIGNvbGVjdGl2YSBubyBzZSBjb25zaWRlcmFyw6EgdW5hIE9icmEgRGVyaXZhZGEgKGNvbW8gc2UgZGVmaW5lIGFiYWpvKSBwYXJhIGxvcyBwcm9ww7NzaXRvcyBkZSBlc3RhIGxpY2VuY2lhLiBhcXVlbGxhIHByb2R1Y2lkYSBwb3IgdW4gZ3J1cG8gZGUgYXV0b3JlcywgZW4gcXVlIGxhIE9icmEgc2UgZW5jdWVudHJhIHNpbiBtb2RpZmljYWNpb25lcywganVudG8gY29uIHVuYSBjaWVydGEgY2FudGlkYWQgZGUgb3RyYXMgY29udHJpYnVjaW9uZXMsIHF1ZSBjb25zdGl0dXllbiBlbiBzw60gbWlzbW9zIHRyYWJham9zIHNlcGFyYWRvcyBlIGluZGVwZW5kaWVudGVzLCBxdWUgc29uIGludGVncmFkb3MgYWwgdG9kbyBjb2xlY3Rpdm8sIHRhbGVzIGNvbW8gcHVibGljYWNpb25lcyBwZXJpw7NkaWNhcywgYW50b2xvZ8OtYXMgbyBlbmNpY2xvcGVkaWFzLgoKYi4JT2JyYSBEZXJpdmFkYSBzaWduaWZpY2EgdW5hIG9icmEgYmFzYWRhIGVuIGxhIG9icmEgb2JqZXRvIGRlIGVzdGEgbGljZW5jaWEgbyBlbiDDqXN0YSB5IG90cmFzIG9icmFzIHByZWV4aXN0ZW50ZXMsIHRhbGVzIGNvbW8gdHJhZHVjY2lvbmVzLCBhcnJlZ2xvcyBtdXNpY2FsZXMsIGRyYW1hdGl6YWNpb25lcywg4oCcZmljY2lvbmFsaXphY2lvbmVz4oCdLCB2ZXJzaW9uZXMgcGFyYSBjaW5lLCDigJxncmFiYWNpb25lcyBkZSBzb25pZG/igJ0sIHJlcHJvZHVjY2lvbmVzIGRlIGFydGUsIHJlc8O6bWVuZXMsIGNvbmRlbnNhY2lvbmVzLCBvIGN1YWxxdWllciBvdHJhIGVuIGxhIHF1ZSBsYSBvYnJhIHB1ZWRhIHNlciB0cmFuc2Zvcm1hZGEsIGNhbWJpYWRhIG8gYWRhcHRhZGEsIGV4Y2VwdG8gYXF1ZWxsYXMgcXVlIGNvbnN0aXR1eWFuIHVuYSBvYnJhIGNvbGVjdGl2YSwgbGFzIHF1ZSBubyBzZXLDoW4gY29uc2lkZXJhZGFzIHVuYSBvYnJhIGRlcml2YWRhIHBhcmEgZWZlY3RvcyBkZSBlc3RhIGxpY2VuY2lhLiAoUGFyYSBldml0YXIgZHVkYXMsIGVuIGVsIGNhc28gZGUgcXVlIGxhIE9icmEgc2VhIHVuYSBjb21wb3NpY2nDs24gbXVzaWNhbCBvIHVuYSBncmFiYWNpw7NuIHNvbm9yYSwgcGFyYSBsb3MgZWZlY3RvcyBkZSBlc3RhIExpY2VuY2lhIGxhIHNpbmNyb25pemFjacOzbiB0ZW1wb3JhbCBkZSBsYSBPYnJhIGNvbiB1bmEgaW1hZ2VuIGVuIG1vdmltaWVudG8gc2UgY29uc2lkZXJhcsOhIHVuYSBPYnJhIERlcml2YWRhIHBhcmEgbG9zIGZpbmVzIGRlIGVzdGEgbGljZW5jaWEpLgoKYy4JTGljZW5jaWFudGUsIGVzIGVsIGluZGl2aWR1byBvIGxhIGVudGlkYWQgdGl0dWxhciBkZSBsb3MgZGVyZWNob3MgZGUgYXV0b3IgcXVlIG9mcmVjZSBsYSBPYnJhIGVuIGNvbmZvcm1pZGFkIGNvbiBsYXMgY29uZGljaW9uZXMgZGUgZXN0YSBMaWNlbmNpYS4KCmQuCUF1dG9yIG9yaWdpbmFsLCBlcyBlbCBpbmRpdmlkdW8gcXVlIGNyZcOzIGxhIE9icmEuCgplLglPYnJhLCBlcyBhcXVlbGxhIG9icmEgc3VzY2VwdGlibGUgZGUgcHJvdGVjY2nDs24gcG9yIGVsIHLDqWdpbWVuIGRlIERlcmVjaG8gZGUgQXV0b3IgeSBxdWUgZXMgb2ZyZWNpZGEgZW4gbG9zIHTDqXJtaW5vcyBkZSBlc3RhIGxpY2VuY2lhCgpmLglVc3RlZCwgZXMgZWwgaW5kaXZpZHVvIG8gbGEgZW50aWRhZCBxdWUgZWplcmNpdGEgbG9zIGRlcmVjaG9zIG90b3JnYWRvcyBhbCBhbXBhcm8gZGUgZXN0YSBMaWNlbmNpYSB5IHF1ZSBjb24gYW50ZXJpb3JpZGFkIG5vIGhhIHZpb2xhZG8gbGFzIGNvbmRpY2lvbmVzIGRlIGxhIG1pc21hIHJlc3BlY3RvIGEgbGEgT2JyYSwgbyBxdWUgaGF5YSBvYnRlbmlkbyBhdXRvcml6YWNpw7NuIGV4cHJlc2EgcG9yIHBhcnRlIGRlbCBMaWNlbmNpYW50ZSBwYXJhIGVqZXJjZXIgbG9zIGRlcmVjaG9zIGFsIGFtcGFybyBkZSBlc3RhIExpY2VuY2lhIHBlc2UgYSB1bmEgdmlvbGFjacOzbiBhbnRlcmlvci4KCjIuIERlcmVjaG9zIGRlIFVzb3MgSG9ucmFkb3MgeSBleGNlcGNpb25lcyBMZWdhbGVzLgpOYWRhIGVuIGVzdGEgTGljZW5jaWEgcG9kcsOhIHNlciBpbnRlcnByZXRhZG8gY29tbyB1bmEgZGlzbWludWNpw7NuLCBsaW1pdGFjacOzbiBvIHJlc3RyaWNjacOzbiBkZSBsb3MgZGVyZWNob3MgZGVyaXZhZG9zIGRlbCB1c28gaG9ucmFkbyB5IG90cmFzIGxpbWl0YWNpb25lcyBvIGV4Y2VwY2lvbmVzIGEgbG9zIGRlcmVjaG9zIGRlbCBhdXRvciBiYWpvIGVsIHLDqWdpbWVuIGxlZ2FsIHZpZ2VudGUgbyBkZXJpdmFkbyBkZSBjdWFscXVpZXIgb3RyYSBub3JtYSBxdWUgc2UgbGUgYXBsaXF1ZS4KCjMuIENvbmNlc2nDs24gZGUgbGEgTGljZW5jaWEuCkJham8gbG9zIHTDqXJtaW5vcyB5IGNvbmRpY2lvbmVzIGRlIGVzdGEgTGljZW5jaWEsIGVsIExpY2VuY2lhbnRlIG90b3JnYSBhIFVzdGVkIHVuYSBsaWNlbmNpYSBtdW5kaWFsLCBsaWJyZSBkZSByZWdhbMOtYXMsIG5vIGV4Y2x1c2l2YSB5IHBlcnBldHVhIChkdXJhbnRlIHRvZG8gZWwgcGVyw61vZG8gZGUgdmlnZW5jaWEgZGUgbG9zIGRlcmVjaG9zIGRlIGF1dG9yKSBwYXJhIGVqZXJjZXIgZXN0b3MgZGVyZWNob3Mgc29icmUgbGEgT2JyYSB0YWwgeSBjb21vIHNlIGluZGljYSBhIGNvbnRpbnVhY2nDs246CgphLglSZXByb2R1Y2lyIGxhIE9icmEsIGluY29ycG9yYXIgbGEgT2JyYSBlbiB1bmEgbyBtw6FzIE9icmFzIENvbGVjdGl2YXMsIHkgcmVwcm9kdWNpciBsYSBPYnJhIGluY29ycG9yYWRhIGVuIGxhcyBPYnJhcyBDb2xlY3RpdmFzLgoKYi4JRGlzdHJpYnVpciBjb3BpYXMgbyBmb25vZ3JhbWFzIGRlIGxhcyBPYnJhcywgZXhoaWJpcmxhcyBww7pibGljYW1lbnRlLCBlamVjdXRhcmxhcyBww7pibGljYW1lbnRlIHkvbyBwb25lcmxhcyBhIGRpc3Bvc2ljacOzbiBww7pibGljYSwgaW5jbHV5w6luZG9sYXMgY29tbyBpbmNvcnBvcmFkYXMgZW4gT2JyYXMgQ29sZWN0aXZhcywgc2Vnw7puIGNvcnJlc3BvbmRhLgoKYy4JRGlzdHJpYnVpciBjb3BpYXMgZGUgbGFzIE9icmFzIERlcml2YWRhcyBxdWUgc2UgZ2VuZXJlbiwgZXhoaWJpcmxhcyBww7pibGljYW1lbnRlLCBlamVjdXRhcmxhcyBww7pibGljYW1lbnRlIHkvbyBwb25lcmxhcyBhIGRpc3Bvc2ljacOzbiBww7pibGljYS4KTG9zIGRlcmVjaG9zIG1lbmNpb25hZG9zIGFudGVyaW9ybWVudGUgcHVlZGVuIHNlciBlamVyY2lkb3MgZW4gdG9kb3MgbG9zIG1lZGlvcyB5IGZvcm1hdG9zLCBhY3R1YWxtZW50ZSBjb25vY2lkb3MgbyBxdWUgc2UgaW52ZW50ZW4gZW4gZWwgZnV0dXJvLiBMb3MgZGVyZWNob3MgYW50ZXMgbWVuY2lvbmFkb3MgaW5jbHV5ZW4gZWwgZGVyZWNobyBhIHJlYWxpemFyIGRpY2hhcyBtb2RpZmljYWNpb25lcyBlbiBsYSBtZWRpZGEgcXVlIHNlYW4gdMOpY25pY2FtZW50ZSBuZWNlc2FyaWFzIHBhcmEgZWplcmNlciBsb3MgZGVyZWNob3MgZW4gb3RybyBtZWRpbyBvIGZvcm1hdG9zLCBwZXJvIGRlIG90cmEgbWFuZXJhIHVzdGVkIG5vIGVzdMOhIGF1dG9yaXphZG8gcGFyYSByZWFsaXphciBvYnJhcyBkZXJpdmFkYXMuIFRvZG9zIGxvcyBkZXJlY2hvcyBubyBvdG9yZ2Fkb3MgZXhwcmVzYW1lbnRlIHBvciBlbCBMaWNlbmNpYW50ZSBxdWVkYW4gcG9yIGVzdGUgbWVkaW8gcmVzZXJ2YWRvcywgaW5jbHV5ZW5kbyBwZXJvIHNpbiBsaW1pdGFyc2UgYSBhcXVlbGxvcyBxdWUgc2UgbWVuY2lvbmFuIGVuIGxhcyBzZWNjaW9uZXMgNChkKSB5IDQoZSkuCgo0LiBSZXN0cmljY2lvbmVzLgpMYSBsaWNlbmNpYSBvdG9yZ2FkYSBlbiBsYSBhbnRlcmlvciBTZWNjacOzbiAzIGVzdMOhIGV4cHJlc2FtZW50ZSBzdWpldGEgeSBsaW1pdGFkYSBwb3IgbGFzIHNpZ3VpZW50ZXMgcmVzdHJpY2Npb25lczoKCmEuCVVzdGVkIHB1ZWRlIGRpc3RyaWJ1aXIsIGV4aGliaXIgcMO6YmxpY2FtZW50ZSwgZWplY3V0YXIgcMO6YmxpY2FtZW50ZSwgbyBwb25lciBhIGRpc3Bvc2ljacOzbiBww7pibGljYSBsYSBPYnJhIHPDs2xvIGJham8gbGFzIGNvbmRpY2lvbmVzIGRlIGVzdGEgTGljZW5jaWEsIHkgVXN0ZWQgZGViZSBpbmNsdWlyIHVuYSBjb3BpYSBkZSBlc3RhIGxpY2VuY2lhIG8gZGVsIElkZW50aWZpY2Fkb3IgVW5pdmVyc2FsIGRlIFJlY3Vyc29zIGRlIGxhIG1pc21hIGNvbiBjYWRhIGNvcGlhIGRlIGxhIE9icmEgcXVlIGRpc3RyaWJ1eWEsIGV4aGliYSBww7pibGljYW1lbnRlLCBlamVjdXRlIHDDumJsaWNhbWVudGUgbyBwb25nYSBhIGRpc3Bvc2ljacOzbiBww7pibGljYS4gTm8gZXMgcG9zaWJsZSBvZnJlY2VyIG8gaW1wb25lciBuaW5ndW5hIGNvbmRpY2nDs24gc29icmUgbGEgT2JyYSBxdWUgYWx0ZXJlIG8gbGltaXRlIGxhcyBjb25kaWNpb25lcyBkZSBlc3RhIExpY2VuY2lhIG8gZWwgZWplcmNpY2lvIGRlIGxvcyBkZXJlY2hvcyBkZSBsb3MgZGVzdGluYXRhcmlvcyBvdG9yZ2Fkb3MgZW4gZXN0ZSBkb2N1bWVudG8uIE5vIGVzIHBvc2libGUgc3VibGljZW5jaWFyIGxhIE9icmEuIFVzdGVkIGRlYmUgbWFudGVuZXIgaW50YWN0b3MgdG9kb3MgbG9zIGF2aXNvcyBxdWUgaGFnYW4gcmVmZXJlbmNpYSBhIGVzdGEgTGljZW5jaWEgeSBhIGxhIGNsw6F1c3VsYSBkZSBsaW1pdGFjacOzbiBkZSBnYXJhbnTDrWFzLiBVc3RlZCBubyBwdWVkZSBkaXN0cmlidWlyLCBleGhpYmlyIHDDumJsaWNhbWVudGUsIGVqZWN1dGFyIHDDumJsaWNhbWVudGUsIG8gcG9uZXIgYSBkaXNwb3NpY2nDs24gcMO6YmxpY2EgbGEgT2JyYSBjb24gYWxndW5hIG1lZGlkYSB0ZWNub2zDs2dpY2EgcXVlIGNvbnRyb2xlIGVsIGFjY2VzbyBvIGxhIHV0aWxpemFjacOzbiBkZSBlbGxhIGRlIHVuYSBmb3JtYSBxdWUgc2VhIGluY29uc2lzdGVudGUgY29uIGxhcyBjb25kaWNpb25lcyBkZSBlc3RhIExpY2VuY2lhLiBMbyBhbnRlcmlvciBzZSBhcGxpY2EgYSBsYSBPYnJhIGluY29ycG9yYWRhIGEgdW5hIE9icmEgQ29sZWN0aXZhLCBwZXJvIGVzdG8gbm8gZXhpZ2UgcXVlIGxhIE9icmEgQ29sZWN0aXZhIGFwYXJ0ZSBkZSBsYSBvYnJhIG1pc21hIHF1ZWRlIHN1amV0YSBhIGxhcyBjb25kaWNpb25lcyBkZSBlc3RhIExpY2VuY2lhLiBTaSBVc3RlZCBjcmVhIHVuYSBPYnJhIENvbGVjdGl2YSwgcHJldmlvIGF2aXNvIGRlIGN1YWxxdWllciBMaWNlbmNpYW50ZSBkZWJlLCBlbiBsYSBtZWRpZGEgZGUgbG8gcG9zaWJsZSwgZWxpbWluYXIgZGUgbGEgT2JyYSBDb2xlY3RpdmEgY3VhbHF1aWVyIHJlZmVyZW5jaWEgYSBkaWNobyBMaWNlbmNpYW50ZSBvIGFsIEF1dG9yIE9yaWdpbmFsLCBzZWfDum4gbG8gc29saWNpdGFkbyBwb3IgZWwgTGljZW5jaWFudGUgeSBjb25mb3JtZSBsbyBleGlnZSBsYSBjbMOhdXN1bGEgNChjKS4KCmIuCVVzdGVkIG5vIHB1ZWRlIGVqZXJjZXIgbmluZ3VubyBkZSBsb3MgZGVyZWNob3MgcXVlIGxlIGhhbiBzaWRvIG90b3JnYWRvcyBlbiBsYSBTZWNjacOzbiAzIHByZWNlZGVudGUgZGUgbW9kbyBxdWUgZXN0w6luIHByaW5jaXBhbG1lbnRlIGRlc3RpbmFkb3MgbyBkaXJlY3RhbWVudGUgZGlyaWdpZG9zIGEgY29uc2VndWlyIHVuIHByb3ZlY2hvIGNvbWVyY2lhbCBvIHVuYSBjb21wZW5zYWNpw7NuIG1vbmV0YXJpYSBwcml2YWRhLiBFbCBpbnRlcmNhbWJpbyBkZSBsYSBPYnJhIHBvciBvdHJhcyBvYnJhcyBwcm90ZWdpZGFzIHBvciBkZXJlY2hvcyBkZSBhdXRvciwgeWEgc2VhIGEgdHJhdsOpcyBkZSB1biBzaXN0ZW1hIHBhcmEgY29tcGFydGlyIGFyY2hpdm9zIGRpZ2l0YWxlcyAoZGlnaXRhbCBmaWxlLXNoYXJpbmcpIG8gZGUgY3VhbHF1aWVyIG90cmEgbWFuZXJhIG5vIHNlcsOhIGNvbnNpZGVyYWRvIGNvbW8gZXN0YXIgZGVzdGluYWRvIHByaW5jaXBhbG1lbnRlIG8gZGlyaWdpZG8gZGlyZWN0YW1lbnRlIGEgY29uc2VndWlyIHVuIHByb3ZlY2hvIGNvbWVyY2lhbCBvIHVuYSBjb21wZW5zYWNpw7NuIG1vbmV0YXJpYSBwcml2YWRhLCBzaWVtcHJlIHF1ZSBubyBzZSByZWFsaWNlIHVuIHBhZ28gbWVkaWFudGUgdW5hIGNvbXBlbnNhY2nDs24gbW9uZXRhcmlhIGVuIHJlbGFjacOzbiBjb24gZWwgaW50ZXJjYW1iaW8gZGUgb2JyYXMgcHJvdGVnaWRhcyBwb3IgZWwgZGVyZWNobyBkZSBhdXRvci4KCmMuCVNpIHVzdGVkIGRpc3RyaWJ1eWUsIGV4aGliZSBww7pibGljYW1lbnRlLCBlamVjdXRhIHDDumJsaWNhbWVudGUgbyBlamVjdXRhIHDDumJsaWNhbWVudGUgZW4gZm9ybWEgZGlnaXRhbCBsYSBPYnJhIG8gY3VhbHF1aWVyIE9icmEgRGVyaXZhZGEgdSBPYnJhIENvbGVjdGl2YSwgVXN0ZWQgZGViZSBtYW50ZW5lciBpbnRhY3RhIHRvZGEgbGEgaW5mb3JtYWNpw7NuIGRlIGRlcmVjaG8gZGUgYXV0b3IgZGUgbGEgT2JyYSB5IHByb3BvcmNpb25hciwgZGUgZm9ybWEgcmF6b25hYmxlIHNlZ8O6biBlbCBtZWRpbyBvIG1hbmVyYSBxdWUgVXN0ZWQgZXN0w6kgdXRpbGl6YW5kbzogKGkpIGVsIG5vbWJyZSBkZWwgQXV0b3IgT3JpZ2luYWwgc2kgZXN0w6EgcHJvdmlzdG8gKG8gc2V1ZMOzbmltbywgc2kgZnVlcmUgYXBsaWNhYmxlKSwgeS9vIChpaSkgZWwgbm9tYnJlIGRlIGxhIHBhcnRlIG8gbGFzIHBhcnRlcyBxdWUgZWwgQXV0b3IgT3JpZ2luYWwgeS9vIGVsIExpY2VuY2lhbnRlIGh1YmllcmVuIGRlc2lnbmFkbyBwYXJhIGxhIGF0cmlidWNpw7NuICh2LmcuLCB1biBpbnN0aXR1dG8gcGF0cm9jaW5hZG9yLCBlZGl0b3JpYWwsIHB1YmxpY2FjacOzbikgZW4gbGEgaW5mb3JtYWNpw7NuIGRlIGxvcyBkZXJlY2hvcyBkZSBhdXRvciBkZWwgTGljZW5jaWFudGUsIHTDqXJtaW5vcyBkZSBzZXJ2aWNpb3MgbyBkZSBvdHJhcyBmb3JtYXMgcmF6b25hYmxlczsgZWwgdMOtdHVsbyBkZSBsYSBPYnJhIHNpIGVzdMOhIHByb3Zpc3RvOyBlbiBsYSBtZWRpZGEgZGUgbG8gcmF6b25hYmxlbWVudGUgZmFjdGlibGUgeSwgc2kgZXN0w6EgcHJvdmlzdG8sIGVsIElkZW50aWZpY2Fkb3IgVW5pZm9ybWUgZGUgUmVjdXJzb3MgKFVuaWZvcm0gUmVzb3VyY2UgSWRlbnRpZmllcikgcXVlIGVsIExpY2VuY2lhbnRlIGVzcGVjaWZpY2EgcGFyYSBzZXIgYXNvY2lhZG8gY29uIGxhIE9icmEsIHNhbHZvIHF1ZSB0YWwgVVJJIG5vIHNlIHJlZmllcmEgYSBsYSBub3RhIHNvYnJlIGxvcyBkZXJlY2hvcyBkZSBhdXRvciBvIGEgbGEgaW5mb3JtYWNpw7NuIHNvYnJlIGVsIGxpY2VuY2lhbWllbnRvIGRlIGxhIE9icmE7IHkgZW4gZWwgY2FzbyBkZSB1bmEgT2JyYSBEZXJpdmFkYSwgYXRyaWJ1aXIgZWwgY3LDqWRpdG8gaWRlbnRpZmljYW5kbyBlbCB1c28gZGUgbGEgT2JyYSBlbiBsYSBPYnJhIERlcml2YWRhICh2LmcuLCAiVHJhZHVjY2nDs24gRnJhbmNlc2EgZGUgbGEgT2JyYSBkZWwgQXV0b3IgT3JpZ2luYWwsIiBvICJHdWnDs24gQ2luZW1hdG9ncsOhZmljbyBiYXNhZG8gZW4gbGEgT2JyYSBvcmlnaW5hbCBkZWwgQXV0b3IgT3JpZ2luYWwiKS4gVGFsIGNyw6lkaXRvIHB1ZWRlIHNlciBpbXBsZW1lbnRhZG8gZGUgY3VhbHF1aWVyIGZvcm1hIHJhem9uYWJsZTsgZW4gZWwgY2Fzbywgc2luIGVtYmFyZ28sIGRlIE9icmFzIERlcml2YWRhcyB1IE9icmFzIENvbGVjdGl2YXMsIHRhbCBjcsOpZGl0byBhcGFyZWNlcsOhLCBjb21vIG3DrW5pbW8sIGRvbmRlIGFwYXJlY2UgZWwgY3LDqWRpdG8gZGUgY3VhbHF1aWVyIG90cm8gYXV0b3IgY29tcGFyYWJsZSB5IGRlIHVuYSBtYW5lcmEsIGFsIG1lbm9zLCB0YW4gZGVzdGFjYWRhIGNvbW8gZWwgY3LDqWRpdG8gZGUgb3RybyBhdXRvciBjb21wYXJhYmxlLgoKZC4JUGFyYSBldml0YXIgdG9kYSBjb25mdXNpw7NuLCBlbCBMaWNlbmNpYW50ZSBhY2xhcmEgcXVlLCBjdWFuZG8gbGEgb2JyYSBlcyB1bmEgY29tcG9zaWNpw7NuIG11c2ljYWw6CgppLglSZWdhbMOtYXMgcG9yIGludGVycHJldGFjacOzbiB5IGVqZWN1Y2nDs24gYmFqbyBsaWNlbmNpYXMgZ2VuZXJhbGVzLiBFbCBMaWNlbmNpYW50ZSBzZSByZXNlcnZhIGVsIGRlcmVjaG8gZXhjbHVzaXZvIGRlIGF1dG9yaXphciBsYSBlamVjdWNpw7NuIHDDumJsaWNhIG8gbGEgZWplY3VjacOzbiBww7pibGljYSBkaWdpdGFsIGRlIGxhIG9icmEgeSBkZSByZWNvbGVjdGFyLCBzZWEgaW5kaXZpZHVhbG1lbnRlIG8gYSB0cmF2w6lzIGRlIHVuYSBzb2NpZWRhZCBkZSBnZXN0acOzbiBjb2xlY3RpdmEgZGUgZGVyZWNob3MgZGUgYXV0b3IgeSBkZXJlY2hvcyBjb25leG9zIChwb3IgZWplbXBsbywgU0FZQ08pLCBsYXMgcmVnYWzDrWFzIHBvciBsYSBlamVjdWNpw7NuIHDDumJsaWNhIG8gcG9yIGxhIGVqZWN1Y2nDs24gcMO6YmxpY2EgZGlnaXRhbCBkZSBsYSBvYnJhIChwb3IgZWplbXBsbyBXZWJjYXN0KSBsaWNlbmNpYWRhIGJham8gbGljZW5jaWFzIGdlbmVyYWxlcywgc2kgbGEgaW50ZXJwcmV0YWNpw7NuIG8gZWplY3VjacOzbiBkZSBsYSBvYnJhIGVzdMOhIHByaW1vcmRpYWxtZW50ZSBvcmllbnRhZGEgcG9yIG8gZGlyaWdpZGEgYSBsYSBvYnRlbmNpw7NuIGRlIHVuYSB2ZW50YWphIGNvbWVyY2lhbCBvIHVuYSBjb21wZW5zYWNpw7NuIG1vbmV0YXJpYSBwcml2YWRhLgoKaWkuCVJlZ2Fsw61hcyBwb3IgRm9ub2dyYW1hcy4gRWwgTGljZW5jaWFudGUgc2UgcmVzZXJ2YSBlbCBkZXJlY2hvIGV4Y2x1c2l2byBkZSByZWNvbGVjdGFyLCBpbmRpdmlkdWFsbWVudGUgbyBhIHRyYXbDqXMgZGUgdW5hIHNvY2llZGFkIGRlIGdlc3Rpw7NuIGNvbGVjdGl2YSBkZSBkZXJlY2hvcyBkZSBhdXRvciB5IGRlcmVjaG9zIGNvbmV4b3MgKHBvciBlamVtcGxvLCBsb3MgY29uc2FncmFkb3MgcG9yIGxhIFNBWUNPKSwgdW5hIGFnZW5jaWEgZGUgZGVyZWNob3MgbXVzaWNhbGVzIG8gYWxnw7puIGFnZW50ZSBkZXNpZ25hZG8sIGxhcyByZWdhbMOtYXMgcG9yIGN1YWxxdWllciBmb25vZ3JhbWEgcXVlIFVzdGVkIGNyZWUgYSBwYXJ0aXIgZGUgbGEgb2JyYSAo4oCcdmVyc2nDs24gY292ZXLigJ0pIHkgZGlzdHJpYnV5YSwgZW4gbG9zIHTDqXJtaW5vcyBkZWwgcsOpZ2ltZW4gZGUgZGVyZWNob3MgZGUgYXV0b3IsIHNpIGxhIGNyZWFjacOzbiBvIGRpc3RyaWJ1Y2nDs24gZGUgZXNhIHZlcnNpw7NuIGNvdmVyIGVzdMOhIHByaW1vcmRpYWxtZW50ZSBkZXN0aW5hZGEgbyBkaXJpZ2lkYSBhIG9idGVuZXIgdW5hIHZlbnRhamEgY29tZXJjaWFsIG8gdW5hIGNvbXBlbnNhY2nDs24gbW9uZXRhcmlhIHByaXZhZGEuCgplLglHZXN0acOzbiBkZSBEZXJlY2hvcyBkZSBBdXRvciBzb2JyZSBJbnRlcnByZXRhY2lvbmVzIHkgRWplY3VjaW9uZXMgRGlnaXRhbGVzIChXZWJDYXN0aW5nKS4gUGFyYSBldml0YXIgdG9kYSBjb25mdXNpw7NuLCBlbCBMaWNlbmNpYW50ZSBhY2xhcmEgcXVlLCBjdWFuZG8gbGEgb2JyYSBzZWEgdW4gZm9ub2dyYW1hLCBlbCBMaWNlbmNpYW50ZSBzZSByZXNlcnZhIGVsIGRlcmVjaG8gZXhjbHVzaXZvIGRlIGF1dG9yaXphciBsYSBlamVjdWNpw7NuIHDDumJsaWNhIGRpZ2l0YWwgZGUgbGEgb2JyYSAocG9yIGVqZW1wbG8sIHdlYmNhc3QpIHkgZGUgcmVjb2xlY3RhciwgaW5kaXZpZHVhbG1lbnRlIG8gYSB0cmF2w6lzIGRlIHVuYSBzb2NpZWRhZCBkZSBnZXN0acOzbiBjb2xlY3RpdmEgZGUgZGVyZWNob3MgZGUgYXV0b3IgeSBkZXJlY2hvcyBjb25leG9zIChwb3IgZWplbXBsbywgQUNJTlBSTyksIGxhcyByZWdhbMOtYXMgcG9yIGxhIGVqZWN1Y2nDs24gcMO6YmxpY2EgZGlnaXRhbCBkZSBsYSBvYnJhIChwb3IgZWplbXBsbywgd2ViY2FzdCksIHN1amV0YSBhIGxhcyBkaXNwb3NpY2lvbmVzIGFwbGljYWJsZXMgZGVsIHLDqWdpbWVuIGRlIERlcmVjaG8gZGUgQXV0b3IsIHNpIGVzdGEgZWplY3VjacOzbiBww7pibGljYSBkaWdpdGFsIGVzdMOhIHByaW1vcmRpYWxtZW50ZSBkaXJpZ2lkYSBhIG9idGVuZXIgdW5hIHZlbnRhamEgY29tZXJjaWFsIG8gdW5hIGNvbXBlbnNhY2nDs24gbW9uZXRhcmlhIHByaXZhZGEuCgo1LiBSZXByZXNlbnRhY2lvbmVzLCBHYXJhbnTDrWFzIHkgTGltaXRhY2lvbmVzIGRlIFJlc3BvbnNhYmlsaWRhZC4KQSBNRU5PUyBRVUUgTEFTIFBBUlRFUyBMTyBBQ09SREFSQU4gREUgT1RSQSBGT1JNQSBQT1IgRVNDUklUTywgRUwgTElDRU5DSUFOVEUgT0ZSRUNFIExBIE9CUkEgKEVOIEVMIEVTVEFETyBFTiBFTCBRVUUgU0UgRU5DVUVOVFJBKSDigJxUQUwgQ1VBTOKAnSwgU0lOIEJSSU5EQVIgR0FSQU5Uw41BUyBERSBDTEFTRSBBTEdVTkEgUkVTUEVDVE8gREUgTEEgT0JSQSwgWUEgU0VBIEVYUFJFU0EsIElNUEzDjUNJVEEsIExFR0FMIE8gQ1VBTFFVSUVSQSBPVFJBLCBJTkNMVVlFTkRPLCBTSU4gTElNSVRBUlNFIEEgRUxMQVMsIEdBUkFOVMONQVMgREUgVElUVUxBUklEQUQsIENPTUVSQ0lBQklMSURBRCwgQURBUFRBQklMSURBRCBPIEFERUNVQUNJw5NOIEEgUFJPUMOTU0lUTyBERVRFUk1JTkFETywgQVVTRU5DSUEgREUgSU5GUkFDQ0nDk04sIERFIEFVU0VOQ0lBIERFIERFRkVDVE9TIExBVEVOVEVTIE8gREUgT1RSTyBUSVBPLCBPIExBIFBSRVNFTkNJQSBPIEFVU0VOQ0lBIERFIEVSUk9SRVMsIFNFQU4gTyBOTyBERVNDVUJSSUJMRVMgKFBVRURBTiBPIE5PIFNFUiBFU1RPUyBERVNDVUJJRVJUT1MpLiBBTEdVTkFTIEpVUklTRElDQ0lPTkVTIE5PIFBFUk1JVEVOIExBIEVYQ0xVU0nDk04gREUgR0FSQU5Uw41BUyBJTVBMw41DSVRBUywgRU4gQ1VZTyBDQVNPIEVTVEEgRVhDTFVTScOTTiBQVUVERSBOTyBBUExJQ0FSU0UgQSBVU1RFRC4KCjYuIExpbWl0YWNpw7NuIGRlIHJlc3BvbnNhYmlsaWRhZC4KQSBNRU5PUyBRVUUgTE8gRVhJSkEgRVhQUkVTQU1FTlRFIExBIExFWSBBUExJQ0FCTEUsIEVMIExJQ0VOQ0lBTlRFIE5PIFNFUsOBIFJFU1BPTlNBQkxFIEFOVEUgVVNURUQgUE9SIERBw5FPIEFMR1VOTywgU0VBIFBPUiBSRVNQT05TQUJJTElEQUQgRVhUUkFDT05UUkFDVFVBTCwgUFJFQ09OVFJBQ1RVQUwgTyBDT05UUkFDVFVBTCwgT0JKRVRJVkEgTyBTVUJKRVRJVkEsIFNFIFRSQVRFIERFIERBw5FPUyBNT1JBTEVTIE8gUEFUUklNT05JQUxFUywgRElSRUNUT1MgTyBJTkRJUkVDVE9TLCBQUkVWSVNUT1MgTyBJTVBSRVZJU1RPUyBQUk9EVUNJRE9TIFBPUiBFTCBVU08gREUgRVNUQSBMSUNFTkNJQSBPIERFIExBIE9CUkEsIEFVTiBDVUFORE8gRUwgTElDRU5DSUFOVEUgSEFZQSBTSURPIEFEVkVSVElETyBERSBMQSBQT1NJQklMSURBRCBERSBESUNIT1MgREHDkU9TLiBBTEdVTkFTIExFWUVTIE5PIFBFUk1JVEVOIExBIEVYQ0xVU0nDk04gREUgQ0lFUlRBIFJFU1BPTlNBQklMSURBRCwgRU4gQ1VZTyBDQVNPIEVTVEEgRVhDTFVTScOTTiBQVUVERSBOTyBBUExJQ0FSU0UgQSBVU1RFRC4KCjcuIFTDqXJtaW5vLgoKYS4JRXN0YSBMaWNlbmNpYSB5IGxvcyBkZXJlY2hvcyBvdG9yZ2Fkb3MgZW4gdmlydHVkIGRlIGVsbGEgdGVybWluYXLDoW4gYXV0b23DoXRpY2FtZW50ZSBzaSBVc3RlZCBpbmZyaW5nZSBhbGd1bmEgY29uZGljacOzbiBlc3RhYmxlY2lkYSBlbiBlbGxhLiBTaW4gZW1iYXJnbywgbG9zIGluZGl2aWR1b3MgbyBlbnRpZGFkZXMgcXVlIGhhbiByZWNpYmlkbyBPYnJhcyBEZXJpdmFkYXMgbyBDb2xlY3RpdmFzIGRlIFVzdGVkIGRlIGNvbmZvcm1pZGFkIGNvbiBlc3RhIExpY2VuY2lhLCBubyB2ZXLDoW4gdGVybWluYWRhcyBzdXMgbGljZW5jaWFzLCBzaWVtcHJlIHF1ZSBlc3RvcyBpbmRpdmlkdW9zIG8gZW50aWRhZGVzIHNpZ2FuIGN1bXBsaWVuZG8gw61udGVncmFtZW50ZSBsYXMgY29uZGljaW9uZXMgZGUgZXN0YXMgbGljZW5jaWFzLiBMYXMgU2VjY2lvbmVzIDEsIDIsIDUsIDYsIDcsIHkgOCBzdWJzaXN0aXLDoW4gYSBjdWFscXVpZXIgdGVybWluYWNpw7NuIGRlIGVzdGEgTGljZW5jaWEuCgpiLglTdWpldGEgYSBsYXMgY29uZGljaW9uZXMgeSB0w6lybWlub3MgYW50ZXJpb3JlcywgbGEgbGljZW5jaWEgb3RvcmdhZGEgYXF1w60gZXMgcGVycGV0dWEgKGR1cmFudGUgZWwgcGVyw61vZG8gZGUgdmlnZW5jaWEgZGUgbG9zIGRlcmVjaG9zIGRlIGF1dG9yIGRlIGxhIG9icmEpLiBObyBvYnN0YW50ZSBsbyBhbnRlcmlvciwgZWwgTGljZW5jaWFudGUgc2UgcmVzZXJ2YSBlbCBkZXJlY2hvIGEgcHVibGljYXIgeS9vIGVzdHJlbmFyIGxhIE9icmEgYmFqbyBjb25kaWNpb25lcyBkZSBsaWNlbmNpYSBkaWZlcmVudGVzIG8gYSBkZWphciBkZSBkaXN0cmlidWlybGEgZW4gbG9zIHTDqXJtaW5vcyBkZSBlc3RhIExpY2VuY2lhIGVuIGN1YWxxdWllciBtb21lbnRvOyBlbiBlbCBlbnRlbmRpZG8sIHNpbiBlbWJhcmdvLCBxdWUgZXNhIGVsZWNjacOzbiBubyBzZXJ2aXLDoSBwYXJhIHJldm9jYXIgZXN0YSBsaWNlbmNpYSBvIHF1ZSBkZWJhIHNlciBvdG9yZ2FkYSAsIGJham8gbG9zIHTDqXJtaW5vcyBkZSBlc3RhIGxpY2VuY2lhKSwgeSBlc3RhIGxpY2VuY2lhIGNvbnRpbnVhcsOhIGVuIHBsZW5vIHZpZ29yIHkgZWZlY3RvIGEgbWVub3MgcXVlIHNlYSB0ZXJtaW5hZGEgY29tbyBzZSBleHByZXNhIGF0csOhcy4gTGEgTGljZW5jaWEgcmV2b2NhZGEgY29udGludWFyw6Egc2llbmRvIHBsZW5hbWVudGUgdmlnZW50ZSB5IGVmZWN0aXZhIHNpIG5vIHNlIGxlIGRhIHTDqXJtaW5vIGVuIGxhcyBjb25kaWNpb25lcyBpbmRpY2FkYXMgYW50ZXJpb3JtZW50ZS4KCjguIFZhcmlvcy4KCmEuCUNhZGEgdmV6IHF1ZSBVc3RlZCBkaXN0cmlidXlhIG8gcG9uZ2EgYSBkaXNwb3NpY2nDs24gcMO6YmxpY2EgbGEgT2JyYSBvIHVuYSBPYnJhIENvbGVjdGl2YSwgZWwgTGljZW5jaWFudGUgb2ZyZWNlcsOhIGFsIGRlc3RpbmF0YXJpbyB1bmEgbGljZW5jaWEgZW4gbG9zIG1pc21vcyB0w6lybWlub3MgeSBjb25kaWNpb25lcyBxdWUgbGEgbGljZW5jaWEgb3RvcmdhZGEgYSBVc3RlZCBiYWpvIGVzdGEgTGljZW5jaWEuCgpiLglTaSBhbGd1bmEgZGlzcG9zaWNpw7NuIGRlIGVzdGEgTGljZW5jaWEgcmVzdWx0YSBpbnZhbGlkYWRhIG8gbm8gZXhpZ2libGUsIHNlZ8O6biBsYSBsZWdpc2xhY2nDs24gdmlnZW50ZSwgZXN0byBubyBhZmVjdGFyw6EgbmkgbGEgdmFsaWRleiBuaSBsYSBhcGxpY2FiaWxpZGFkIGRlbCByZXN0byBkZSBjb25kaWNpb25lcyBkZSBlc3RhIExpY2VuY2lhIHksIHNpbiBhY2Npw7NuIGFkaWNpb25hbCBwb3IgcGFydGUgZGUgbG9zIHN1amV0b3MgZGUgZXN0ZSBhY3VlcmRvLCBhcXXDqWxsYSBzZSBlbnRlbmRlcsOhIHJlZm9ybWFkYSBsbyBtw61uaW1vIG5lY2VzYXJpbyBwYXJhIGhhY2VyIHF1ZSBkaWNoYSBkaXNwb3NpY2nDs24gc2VhIHbDoWxpZGEgeSBleGlnaWJsZS4KCmMuCU5pbmfDum4gdMOpcm1pbm8gbyBkaXNwb3NpY2nDs24gZGUgZXN0YSBMaWNlbmNpYSBzZSBlc3RpbWFyw6EgcmVudW5jaWFkYSB5IG5pbmd1bmEgdmlvbGFjacOzbiBkZSBlbGxhIHNlcsOhIGNvbnNlbnRpZGEgYSBtZW5vcyBxdWUgZXNhIHJlbnVuY2lhIG8gY29uc2VudGltaWVudG8gc2VhIG90b3JnYWRvIHBvciBlc2NyaXRvIHkgZmlybWFkbyBwb3IgbGEgcGFydGUgcXVlIHJlbnVuY2llIG8gY29uc2llbnRhLgoKZC4JRXN0YSBMaWNlbmNpYSByZWZsZWphIGVsIGFjdWVyZG8gcGxlbm8gZW50cmUgbGFzIHBhcnRlcyByZXNwZWN0byBhIGxhIE9icmEgYXF1w60gbGljZW5jaWFkYS4gTm8gaGF5IGFycmVnbG9zLCBhY3VlcmRvcyBvIGRlY2xhcmFjaW9uZXMgcmVzcGVjdG8gYSBsYSBPYnJhIHF1ZSBubyBlc3TDqW4gZXNwZWNpZmljYWRvcyBlbiBlc3RlIGRvY3VtZW50by4gRWwgTGljZW5jaWFudGUgbm8gc2UgdmVyw6EgbGltaXRhZG8gcG9yIG5pbmd1bmEgZGlzcG9zaWNpw7NuIGFkaWNpb25hbCBxdWUgcHVlZGEgc3VyZ2lyIGVuIGFsZ3VuYSBjb211bmljYWNpw7NuIGVtYW5hZGEgZGUgVXN0ZWQuIEVzdGEgTGljZW5jaWEgbm8gcHVlZGUgc2VyIG1vZGlmaWNhZGEgc2luIGVsIGNvbnNlbnRpbWllbnRvIG11dHVvIHBvciBlc2NyaXRvIGRlbCBMaWNlbmNpYW50ZSB5IFVzdGVkLgo=