Automated corneal endothelium image segmentation in the presence of cornea guttata via convolutional neural networks

Automated cell counting in in-vivo specular microscopy images is challenging, especially in situations where single-cell segmentation methods fail due to pathological conditions. This work aims to obtain reliable cell segmentation from specular microscopy images of both healthy and pathological corn...

Full description

Autores:
Sierra, Juan S.
Pineda, Jesus
Viteri, Eduardo
Rueda, Daniela
Tibaduiza, Beatriz
Berrospi, Rúben D.
Tello, Alejandro
Galvis, Virgilio
Volpe, Giovanni
Millán, María S.
Romero, Lenny A.
Marrugo Hernández, Andrés Guillermo
Tipo de recurso:
Fecha de publicación:
2020
Institución:
Universidad Tecnológica de Bolívar
Repositorio:
Repositorio Institucional UTB
Idioma:
eng
OAI Identifier:
oai:repositorio.utb.edu.co:20.500.12585/9561
Acceso en línea:
https://hdl.handle.net/20.500.12585/9561
https://www.spiedigitallibrary.org/conference-proceedings-of-spie/11511/115110H/Automated-corneal-endothelium-image-segmentation-in-the-presence-of-cornea/10.1117/12.2569258.short?SSO=1
Palabra clave:
Cell segmentation
Ophthalmic imaging
Diagnosis through images
Image processing
Rights
closedAccess
License
http://purl.org/coar/access_right/c_14cb
id UTB2_10fc2170d448f9de23c13564bbf49be6
oai_identifier_str oai:repositorio.utb.edu.co:20.500.12585/9561
network_acronym_str UTB2
network_name_str Repositorio Institucional UTB
repository_id_str
dc.title.spa.fl_str_mv Automated corneal endothelium image segmentation in the presence of cornea guttata via convolutional neural networks
title Automated corneal endothelium image segmentation in the presence of cornea guttata via convolutional neural networks
spellingShingle Automated corneal endothelium image segmentation in the presence of cornea guttata via convolutional neural networks
Cell segmentation
Ophthalmic imaging
Diagnosis through images
Image processing
title_short Automated corneal endothelium image segmentation in the presence of cornea guttata via convolutional neural networks
title_full Automated corneal endothelium image segmentation in the presence of cornea guttata via convolutional neural networks
title_fullStr Automated corneal endothelium image segmentation in the presence of cornea guttata via convolutional neural networks
title_full_unstemmed Automated corneal endothelium image segmentation in the presence of cornea guttata via convolutional neural networks
title_sort Automated corneal endothelium image segmentation in the presence of cornea guttata via convolutional neural networks
dc.creator.fl_str_mv Sierra, Juan S.
Pineda, Jesus
Viteri, Eduardo
Rueda, Daniela
Tibaduiza, Beatriz
Berrospi, Rúben D.
Tello, Alejandro
Galvis, Virgilio
Volpe, Giovanni
Millán, María S.
Romero, Lenny A.
Marrugo Hernández, Andrés Guillermo
dc.contributor.author.none.fl_str_mv Sierra, Juan S.
Pineda, Jesus
Viteri, Eduardo
Rueda, Daniela
Tibaduiza, Beatriz
Berrospi, Rúben D.
Tello, Alejandro
Galvis, Virgilio
Volpe, Giovanni
Millán, María S.
Romero, Lenny A.
Marrugo Hernández, Andrés Guillermo
dc.subject.keywords.spa.fl_str_mv Cell segmentation
Ophthalmic imaging
Diagnosis through images
Image processing
topic Cell segmentation
Ophthalmic imaging
Diagnosis through images
Image processing
description Automated cell counting in in-vivo specular microscopy images is challenging, especially in situations where single-cell segmentation methods fail due to pathological conditions. This work aims to obtain reliable cell segmentation from specular microscopy images of both healthy and pathological corneas. We cast the problem of cell segmentation as a supervised multi-class segmentation problem. The goal is to learn a mapping relation between an input specular microscopy image and its labeled counterpart, indicating healthy (cells) and pathological regions (e.g., guttae). We trained a U-net model by extracting 96×96 pixel patches from corneal endothelial cell images and the corresponding manual segmentation by a physician. Encouraging results show that the proposed method can deliver reliable feature segmentation enabling more accurate cell density estimations for assessing the state of the cornea.
publishDate 2020
dc.date.accessioned.none.fl_str_mv 2020-11-05T21:13:05Z
dc.date.available.none.fl_str_mv 2020-11-05T21:13:05Z
dc.date.issued.none.fl_str_mv 2020-08
dc.date.submitted.none.fl_str_mv 2020-11-03
dc.type.coarversion.fl_str_mv http://purl.org/coar/version/c_970fb48d4fbd8a85
dc.type.coar.fl_str_mv http://purl.org/coar/resource_type/c_8544
dc.type.driver.spa.fl_str_mv info:eu-repo/semantics/lecture
dc.type.hasversion.spa.fl_str_mv info:eu-repo/semantics/publishedVersion
dc.type.spa.spa.fl_str_mv http://purl.org/coar/resource_type/c_c94f
status_str publishedVersion
dc.identifier.citation.spa.fl_str_mv Juan S. Sierra, Jesus Pineda, Eduardo Viteri, Daniela Rueda, Beatriz Tibaduiza, Rúben D. Berrospi, Alejandro Tello, Virgilio Galvis, Giovanni Volpe, María S. Millán, Lenny A. Romero, and Andrés G. Marrugo "Automated corneal endothelium image segmentation in the presence of cornea guttata via convolutional neural networks", Proc. SPIE 11511, Applications of Machine Learning 2020, 115110H (19 August 2020); https://doi.org/10.1117/12.2569258
dc.identifier.uri.none.fl_str_mv https://hdl.handle.net/20.500.12585/9561
dc.identifier.url.none.fl_str_mv https://www.spiedigitallibrary.org/conference-proceedings-of-spie/11511/115110H/Automated-corneal-endothelium-image-segmentation-in-the-presence-of-cornea/10.1117/12.2569258.short?SSO=1
dc.identifier.doi.none.fl_str_mv 10.1117/12.2569258
dc.identifier.instname.spa.fl_str_mv Universidad Tecnológica de Bolívar
dc.identifier.reponame.spa.fl_str_mv Repositorio Universidad Tecnológica de Bolívar
identifier_str_mv Juan S. Sierra, Jesus Pineda, Eduardo Viteri, Daniela Rueda, Beatriz Tibaduiza, Rúben D. Berrospi, Alejandro Tello, Virgilio Galvis, Giovanni Volpe, María S. Millán, Lenny A. Romero, and Andrés G. Marrugo "Automated corneal endothelium image segmentation in the presence of cornea guttata via convolutional neural networks", Proc. SPIE 11511, Applications of Machine Learning 2020, 115110H (19 August 2020); https://doi.org/10.1117/12.2569258
10.1117/12.2569258
Universidad Tecnológica de Bolívar
Repositorio Universidad Tecnológica de Bolívar
url https://hdl.handle.net/20.500.12585/9561
https://www.spiedigitallibrary.org/conference-proceedings-of-spie/11511/115110H/Automated-corneal-endothelium-image-segmentation-in-the-presence-of-cornea/10.1117/12.2569258.short?SSO=1
dc.language.iso.spa.fl_str_mv eng
language eng
dc.rights.coar.fl_str_mv http://purl.org/coar/access_right/c_14cb
dc.rights.accessrights.spa.fl_str_mv info:eu-repo/semantics/closedAccess
eu_rights_str_mv closedAccess
rights_invalid_str_mv http://purl.org/coar/access_right/c_14cb
dc.format.mimetype.spa.fl_str_mv application/pdf
dc.publisher.place.spa.fl_str_mv Cartagena de Indias
dc.source.spa.fl_str_mv Proceedings Volume 11511, Applications of Machine Learning 2020; 115110H (2020)
institution Universidad Tecnológica de Bolívar
bitstream.url.fl_str_mv https://repositorio.utb.edu.co/bitstream/20.500.12585/9561/1/88.pdf
https://repositorio.utb.edu.co/bitstream/20.500.12585/9561/2/license.txt
https://repositorio.utb.edu.co/bitstream/20.500.12585/9561/3/88.pdf.txt
https://repositorio.utb.edu.co/bitstream/20.500.12585/9561/4/88.pdf.jpg
bitstream.checksum.fl_str_mv 755eb9be547b8c68d2618d571f9a8e35
e20ad307a1c5f3f25af9304a7a7c86b6
e77eb3335512c523a0c2717d826fc678
8b8cb29c8d0bf4bc7a7d599fb1b1a731
bitstream.checksumAlgorithm.fl_str_mv MD5
MD5
MD5
MD5
repository.name.fl_str_mv Repositorio Institucional UTB
repository.mail.fl_str_mv repositorioutb@utb.edu.co
_version_ 1814021784543952896
spelling Sierra, Juan S.225cb910-26f4-4ac4-9967-4da4e91f4debPineda, Jesusa6827c4e-c14f-4dc1-ba8e-4c5b1cd055ebViteri, Eduardo9f94b60b-8f9a-4d76-9280-2d9064767f54Rueda, Danielaa16eb811-7abb-4b60-93f2-69405e0136f0Tibaduiza, Beatrizaa0758b6-faf5-473c-9770-aeb69254cdefBerrospi, Rúben D.3ce144f8-f43a-4fb8-a62f-0ba43f48e2ceTello, Alejandrob88c245a-e5d9-4feb-a8e5-fc2a6555415dGalvis, Virgilio85e1c5d8-b4a4-4bed-828d-267cd8ca4b5bVolpe, Giovanni84cb6735-e854-4db6-af72-f7a4df329847Millán, María S.9fe60bec-aad5-4e2e-99bd-db4b5e8f4a1bRomero, Lenny A.4e34aa8a-f981-4e1d-ae32-d45acb6abcf9Marrugo Hernández, Andrés Guillermo00746131-f46c-4d8c-9c02-514385d7b36e2020-11-05T21:13:05Z2020-11-05T21:13:05Z2020-082020-11-03Juan S. Sierra, Jesus Pineda, Eduardo Viteri, Daniela Rueda, Beatriz Tibaduiza, Rúben D. Berrospi, Alejandro Tello, Virgilio Galvis, Giovanni Volpe, María S. Millán, Lenny A. Romero, and Andrés G. Marrugo "Automated corneal endothelium image segmentation in the presence of cornea guttata via convolutional neural networks", Proc. SPIE 11511, Applications of Machine Learning 2020, 115110H (19 August 2020); https://doi.org/10.1117/12.2569258https://hdl.handle.net/20.500.12585/9561https://www.spiedigitallibrary.org/conference-proceedings-of-spie/11511/115110H/Automated-corneal-endothelium-image-segmentation-in-the-presence-of-cornea/10.1117/12.2569258.short?SSO=110.1117/12.2569258Universidad Tecnológica de BolívarRepositorio Universidad Tecnológica de BolívarAutomated cell counting in in-vivo specular microscopy images is challenging, especially in situations where single-cell segmentation methods fail due to pathological conditions. This work aims to obtain reliable cell segmentation from specular microscopy images of both healthy and pathological corneas. We cast the problem of cell segmentation as a supervised multi-class segmentation problem. The goal is to learn a mapping relation between an input specular microscopy image and its labeled counterpart, indicating healthy (cells) and pathological regions (e.g., guttae). We trained a U-net model by extracting 96×96 pixel patches from corneal endothelial cell images and the corresponding manual segmentation by a physician. Encouraging results show that the proposed method can deliver reliable feature segmentation enabling more accurate cell density estimations for assessing the state of the cornea.application/pdfengProceedings Volume 11511, Applications of Machine Learning 2020; 115110H (2020)Automated corneal endothelium image segmentation in the presence of cornea guttata via convolutional neural networksinfo:eu-repo/semantics/lectureinfo:eu-repo/semantics/publishedVersionhttp://purl.org/coar/resource_type/c_c94fhttp://purl.org/coar/version/c_970fb48d4fbd8a85http://purl.org/coar/resource_type/c_8544Cell segmentationOphthalmic imagingDiagnosis through imagesImage processinginfo:eu-repo/semantics/closedAccesshttp://purl.org/coar/access_right/c_14cbCartagena de IndiasPúblico generalGalvis, V., Tello, A., Delgado, J., Guti´errez, A., Rodr´ıguez, L., and Chaparro, T., “Reproducibilidad de los resultados del an´alisis endothelial con el microscopio especular de no contacto topcon sp-3000p,” Revista Sociedad Colombiana de Oftalmolog´ıa 44(3), 253–260 (2011).Galvis, V., Tello, A., and Gutierrez, A. J., “Human corneal endothelium regeneration: effect of rock in- ´ hibitor,” Investigative ophthalmology & visual science 54(7), 4971–4973 (2013).Galvis, V., Tello, A., Carre˜no, N. I., Berrospi, R. D., and Ni˜no, C. A., “Potential use of thermoreversible hydrogel (poloxamer 407) to protect the corneal endothelium and the posterior capsule during phacoemulsification,” Journal of Cataract & Refractive Surgery 45(3), 389 (2019).Galvis, V., Villamil, J. F., Acu˜na, M. F., Camacho, P. A., Merayo-Lloves, J., Tello, A., Zambrano, S. L., Rey, J. J., Espinoza, J. V., and Prada, A. M., “Long-term endothelial cell loss with the iris-claw intraocular phakic lenses (artisan R ),” Graefe’s Archive for Clinical and Experimental Ophthalmology 257(12), 2775– 2787 (2019).Feizi, S., “Corneal endothelial cell dysfunction: etiologies and management,” Therapeutic Advances in Ophthalmology 10, 2515841418815802 (2018).Eghrari, A. O., Riazuddin, S. A., and Gottsch, J. D., “Fuchs corneal dystrophy,” in [Progress in molecular biology and translational science], 134, 79–97, Elsevier (2015).Galvis, V., Tello, A., Gomez, A. J., Rangel, C. M., Prada, A. M., and Camacho, P. A., “Corneal transplantation at an ophthalmological referral center in colombia: indications and techniques (2004-2011),” The open ophthalmology journal 7, 30 (2013)Galvis, V., Tello, A., Laiton, A. N., and Salcedo, S. L., “Indications and techniques of corneal transplantation in a referral center in colombia, south america (2012–2016),” International ophthalmology 39(8), 1723–1733 (2019)Laing, R. A., Leibowitz, H. M., Oak, S. S., Chang, R., Berrospi, A. R., and Theodore, J., “Endothelial mosaic in fuchs’ dystrophy: A qualitative evaluation with the specular microscope,” Archives of Ophthalmology 99(1), 80–83 (1981).Selig, B., Vermeer, K. A., Rieger, B., Hillenaar, T., and Hendriks, C. L. L., “Fully automatic evaluation of the corneal endothelium from in vivo confocal microscopy,” BMC medical imaging 15(1), 13 (2015).Al-Fahdawi, S., Qahwaji, R., Al-Waisy, A. S., Ipson, S., Ferdousi, M., Malik, R. A., and Brahma, A., “A fully automated cell segmentation and morphometric parameter system for quantifying corneal endothelial cell morphology,” Computer methods and programs in biomedicine 160, 11–23 (2018).Scarpa, F. and Ruggeri, A., “Automated morphometric description of human corneal endothelium from in-vivo specular and confocal microscopy,” in [2016 38th Annual International Conference of the IEEE Engineering in Medicine and Biology Society (EMBC) ], 1296–1299, IEEE (2016).Scarpa, F. and Ruggeri, A., “Development of a reliable automated algorithm for the morphometric analysis of human corneal endothelium,” Cornea 35(9), 1222–1228 (2016).Giasson, C. J., Graham, A., Blouin, J.-F., Solomon, L., Gresset, J., Melillo, M., and Polse, K. A., “Morphometry of cells and guttae in subjects with normal or guttate endothelium with a contour detection algorithm,” Eye & Contact Lens 31(4), 158–165 (2005).] Ruggeri, A., Scarpa, F., De Luca, M., Meltendorf, C., and Schroeter, J., “A system for the automatic estimation of morphometric parameters of corneal endothelium in alizarine red-stained images,” British Journal of Ophthalmology 94(5), 643–647 (2010).Nurzynska, K., “Deep learning as a tool for automatic segmentation of corneal endothelium images,” Symmetry 10(3), 60 (2018).Vigueras-Guill´en, J. P., Sari, B., Goes, S. F., Lemij, H. G., van Rooij, J., Vermeer, K. A., and van Vliet, L. J., “Fully convolutional architecture vs sliding-window cnn for corneal endothelium cell segmentation,” BMC Biomedical Engineering 1(1), 1–16 (2019).Daniel, M. C., Atzrodt, L., Bucher, F., Wacker, K., B¨ohringer, S., Reinhard, T., and B¨ohringer, D., “Automated segmentation of the corneal endothelium in a large set of ‘real-world’specular microscopy images using the u-net architecture,” Scientific reports 9(1), 1–7 (2019).Ronneberger, O., Fischer, P., and Brox, T., “U-net: Convolutional networks for biomedical image segmentation,” in [International Conference on Medical image computing and computer-assisted intervention], 234–241, Springer (2015)Falk, T., Mai, D., Bensch, R., C¸ i¸cek, O., Abdulkadir, A., Marrakchi, Y., B¨ohm, A., Deubner, J., J¨ackel, ¨ Z., Seiwald, K., et al., “U-net: deep learning for cell counting, detection, and morphometry,” Nature methods 16(1), 67–70 (2019).Carton, F.-X., Chabanas, M., Le Lann, F., and Noble, J. H., “Automatic segmentation of brain tumor resections in intraoperative ultrasound images using u-net,” Journal of Medical Imaging 7(3), 031503 (2020).Sierra, J. S., Pineda, J., Viteri, E., Tello, A., Mill´an, M. S., Galvis, V., Romero, L. A., and Marrugo, A. G., “Generating density maps for convolutional neural network-based cell counting in specular microscopy images,” Journal of Physics: Conf. Series 1547(1), 012019 (2020).Ounkomol, C., Seshamani, S., Maleckar, M. M., Collman, F., and Johnson, G. R., “Label-free prediction of three-dimensional fluorescence images from transmitted-light microscopy,” Nature methods 15(11), 917–920 (2018).Ioffe, S. and Szegedy, C., “Batch normalization: Accelerating deep network training by reducing internal covariate shift,” arXiv preprint arXiv:1502.03167 (2015)Kingma, D. P. and Ba, J., “Adam: A method for stochastic optimization,” arXiv preprint arXiv:1412.6980 (2014).] Helgadottir, S., Argun, A., and Volpe, G., “Digital video microscopy enhanced by deep learning,” Optica 6(4), 506–513 (2019).Midtvedt, B., Helgadottir, S., Argun, A., Midtvedt, D., and Volpe, G., “Deeptrack: A comprehensive deep learning framework for digital microscopy.” https://github.com/softmatterlab/DeepTrack-2.0. git (2020).http://purl.org/coar/resource_type/c_c94fORIGINAL88.pdf88.pdfapplication/pdf60934https://repositorio.utb.edu.co/bitstream/20.500.12585/9561/1/88.pdf755eb9be547b8c68d2618d571f9a8e35MD51LICENSElicense.txtlicense.txttext/plain; charset=utf-83182https://repositorio.utb.edu.co/bitstream/20.500.12585/9561/2/license.txte20ad307a1c5f3f25af9304a7a7c86b6MD52TEXT88.pdf.txt88.pdf.txtExtracted texttext/plain1054https://repositorio.utb.edu.co/bitstream/20.500.12585/9561/3/88.pdf.txte77eb3335512c523a0c2717d826fc678MD53THUMBNAIL88.pdf.jpg88.pdf.jpgGenerated Thumbnailimage/jpeg48548https://repositorio.utb.edu.co/bitstream/20.500.12585/9561/4/88.pdf.jpg8b8cb29c8d0bf4bc7a7d599fb1b1a731MD5420.500.12585/9561oai:repositorio.utb.edu.co:20.500.12585/95612023-05-26 16:37:05.802Repositorio Institucional UTBrepositorioutb@utb.edu.coQXV0b3Jpem8gKGF1dG9yaXphbW9zKSBhIGxhIEJpYmxpb3RlY2EgZGUgbGEgSW5zdGl0dWNpw7NuIHBhcmEgcXVlIGluY2x1eWEgdW5hIGNvcGlhLCBpbmRleGUgeSBkaXZ1bGd1ZSBlbiBlbCBSZXBvc2l0b3JpbyBJbnN0aXR1Y2lvbmFsLCBsYSBvYnJhIG1lbmNpb25hZGEgY29uIGVsIGZpbiBkZSBmYWNpbGl0YXIgbG9zIHByb2Nlc29zIGRlIHZpc2liaWxpZGFkIGUgaW1wYWN0byBkZSBsYSBtaXNtYSwgY29uZm9ybWUgYSBsb3MgZGVyZWNob3MgcGF0cmltb25pYWxlcyBxdWUgbWUobm9zKSBjb3JyZXNwb25kZShuKSB5IHF1ZSBpbmNsdXllbjogbGEgcmVwcm9kdWNjacOzbiwgY29tdW5pY2FjacOzbiBww7pibGljYSwgZGlzdHJpYnVjacOzbiBhbCBww7pibGljbywgdHJhbnNmb3JtYWNpw7NuLCBkZSBjb25mb3JtaWRhZCBjb24gbGEgbm9ybWF0aXZpZGFkIHZpZ2VudGUgc29icmUgZGVyZWNob3MgZGUgYXV0b3IgeSBkZXJlY2hvcyBjb25leG9zIHJlZmVyaWRvcyBlbiBhcnQuIDIsIDEyLCAzMCAobW9kaWZpY2FkbyBwb3IgZWwgYXJ0IDUgZGUgbGEgbGV5IDE1MjAvMjAxMiksIHkgNzIgZGUgbGEgbGV5IDIzIGRlIGRlIDE5ODIsIExleSA0NCBkZSAxOTkzLCBhcnQuIDQgeSAxMSBEZWNpc2nDs24gQW5kaW5hIDM1MSBkZSAxOTkzIGFydC4gMTEsIERlY3JldG8gNDYwIGRlIDE5OTUsIENpcmN1bGFyIE5vIDA2LzIwMDIgZGUgbGEgRGlyZWNjacOzbiBOYWNpb25hbCBkZSBEZXJlY2hvcyBkZSBhdXRvciwgYXJ0LiAxNSBMZXkgMTUyMCBkZSAyMDEyLCBsYSBMZXkgMTkxNSBkZSAyMDE4IHkgZGVtw6FzIG5vcm1hcyBzb2JyZSBsYSBtYXRlcmlhLgoKQWwgcmVzcGVjdG8gY29tbyBBdXRvcihlcykgbWFuaWZlc3RhbW9zIGNvbm9jZXIgcXVlOgoKLSBMYSBhdXRvcml6YWNpw7NuIGVzIGRlIGNhcsOhY3RlciBubyBleGNsdXNpdmEgeSBsaW1pdGFkYSwgZXN0byBpbXBsaWNhIHF1ZSBsYSBsaWNlbmNpYSB0aWVuZSB1bmEgdmlnZW5jaWEsIHF1ZSBubyBlcyBwZXJwZXR1YSB5IHF1ZSBlbCBhdXRvciBwdWVkZSBwdWJsaWNhciBvIGRpZnVuZGlyIHN1IG9icmEgZW4gY3VhbHF1aWVyIG90cm8gbWVkaW8sIGFzw60gY29tbyBsbGV2YXIgYSBjYWJvIGN1YWxxdWllciB0aXBvIGRlIGFjY2nDs24gc29icmUgZWwgZG9jdW1lbnRvLgoKLSBMYSBhdXRvcml6YWNpw7NuIHRlbmRyw6EgdW5hIHZpZ2VuY2lhIGRlIGNpbmNvIGHDsW9zIGEgcGFydGlyIGRlbCBtb21lbnRvIGRlIGxhIGluY2x1c2nDs24gZGUgbGEgb2JyYSBlbiBlbCByZXBvc2l0b3JpbywgcHJvcnJvZ2FibGUgaW5kZWZpbmlkYW1lbnRlIHBvciBlbCB0aWVtcG8gZGUgZHVyYWNpw7NuIGRlIGxvcyBkZXJlY2hvcyBwYXRyaW1vbmlhbGVzIGRlbCBhdXRvciB5IHBvZHLDoSBkYXJzZSBwb3IgdGVybWluYWRhIHVuYSB2ZXogZWwgYXV0b3IgbG8gbWFuaWZpZXN0ZSBwb3IgZXNjcml0byBhIGxhIGluc3RpdHVjacOzbiwgY29uIGxhIHNhbHZlZGFkIGRlIHF1ZSBsYSBvYnJhIGVzIGRpZnVuZGlkYSBnbG9iYWxtZW50ZSB5IGNvc2VjaGFkYSBwb3IgZGlmZXJlbnRlcyBidXNjYWRvcmVzIHkvbyByZXBvc2l0b3Jpb3MgZW4gSW50ZXJuZXQgbG8gcXVlIG5vIGdhcmFudGl6YSBxdWUgbGEgb2JyYSBwdWVkYSBzZXIgcmV0aXJhZGEgZGUgbWFuZXJhIGlubWVkaWF0YSBkZSBvdHJvcyBzaXN0ZW1hcyBkZSBpbmZvcm1hY2nDs24gZW4gbG9zIHF1ZSBzZSBoYXlhIGluZGV4YWRvLCBkaWZlcmVudGVzIGFsIHJlcG9zaXRvcmlvIGluc3RpdHVjaW9uYWwgZGUgbGEgSW5zdGl0dWNpw7NuLCBkZSBtYW5lcmEgcXVlIGVsIGF1dG9yKHJlcykgdGVuZHLDoW4gcXVlIHNvbGljaXRhciBsYSByZXRpcmFkYSBkZSBzdSBvYnJhIGRpcmVjdGFtZW50ZSBhIG90cm9zIHNpc3RlbWFzIGRlIGluZm9ybWFjacOzbiBkaXN0aW50b3MgYWwgZGUgbGEgSW5zdGl0dWNpw7NuIHNpIGRlc2VhIHF1ZSBzdSBvYnJhIHNlYSByZXRpcmFkYSBkZSBpbm1lZGlhdG8uCgotIExhIGF1dG9yaXphY2nDs24gZGUgcHVibGljYWNpw7NuIGNvbXByZW5kZSBlbCBmb3JtYXRvIG9yaWdpbmFsIGRlIGxhIG9icmEgeSB0b2RvcyBsb3MgZGVtw6FzIHF1ZSBzZSByZXF1aWVyYSBwYXJhIHN1IHB1YmxpY2FjacOzbiBlbiBlbCByZXBvc2l0b3Jpby4gSWd1YWxtZW50ZSwgbGEgYXV0b3JpemFjacOzbiBwZXJtaXRlIGEgbGEgaW5zdGl0dWNpw7NuIGVsIGNhbWJpbyBkZSBzb3BvcnRlIGRlIGxhIG9icmEgY29uIGZpbmVzIGRlIHByZXNlcnZhY2nDs24gKGltcHJlc28sIGVsZWN0csOzbmljbywgZGlnaXRhbCwgSW50ZXJuZXQsIGludHJhbmV0LCBvIGN1YWxxdWllciBvdHJvIGZvcm1hdG8gY29ub2NpZG8gbyBwb3IgY29ub2NlcikuCgotIExhIGF1dG9yaXphY2nDs24gZXMgZ3JhdHVpdGEgeSBzZSByZW51bmNpYSBhIHJlY2liaXIgY3VhbHF1aWVyIHJlbXVuZXJhY2nDs24gcG9yIGxvcyB1c29zIGRlIGxhIG9icmEsIGRlIGFjdWVyZG8gY29uIGxhIGxpY2VuY2lhIGVzdGFibGVjaWRhIGVuIGVzdGEgYXV0b3JpemFjacOzbi4KCi0gQWwgZmlybWFyIGVzdGEgYXV0b3JpemFjacOzbiwgc2UgbWFuaWZpZXN0YSBxdWUgbGEgb2JyYSBlcyBvcmlnaW5hbCB5IG5vIGV4aXN0ZSBlbiBlbGxhIG5pbmd1bmEgdmlvbGFjacOzbiBhIGxvcyBkZXJlY2hvcyBkZSBhdXRvciBkZSB0ZXJjZXJvcy4gRW4gY2FzbyBkZSBxdWUgZWwgdHJhYmFqbyBoYXlhIHNpZG8gZmluYW5jaWFkbyBwb3IgdGVyY2Vyb3MgZWwgbyBsb3MgYXV0b3JlcyBhc3VtZW4gbGEgcmVzcG9uc2FiaWxpZGFkIGRlbCBjdW1wbGltaWVudG8gZGUgbG9zIGFjdWVyZG9zIGVzdGFibGVjaWRvcyBzb2JyZSBsb3MgZGVyZWNob3MgcGF0cmltb25pYWxlcyBkZSBsYSBvYnJhIGNvbiBkaWNobyB0ZXJjZXJvLgoKLSBGcmVudGUgYSBjdWFscXVpZXIgcmVjbGFtYWNpw7NuIHBvciB0ZXJjZXJvcywgZWwgbyBsb3MgYXV0b3JlcyBzZXLDoW4gcmVzcG9uc2FibGVzLCBlbiBuaW5nw7puIGNhc28gbGEgcmVzcG9uc2FiaWxpZGFkIHNlcsOhIGFzdW1pZGEgcG9yIGxhIGluc3RpdHVjacOzbi4KCi0gQ29uIGxhIGF1dG9yaXphY2nDs24sIGxhIGluc3RpdHVjacOzbiBwdWVkZSBkaWZ1bmRpciBsYSBvYnJhIGVuIMOtbmRpY2VzLCBidXNjYWRvcmVzIHkgb3Ryb3Mgc2lzdGVtYXMgZGUgaW5mb3JtYWNpw7NuIHF1ZSBmYXZvcmV6Y2FuIHN1IHZpc2liaWxpZGFkCgo=