Towards Real-Time Semantics for a Distributed Event-Based MOP Language
This paper investigates rewriting logic as a suitable means to model the semantics of distributed and concurrent systems implemented using Monitoring Oriented Programming (MOP) frameworks. MOP tools close the gap between specification and implementation, allowing several formal specifications and co...
- Autores:
-
Sanabria, Mateo
Garzón Alfonso, Wilmer
Benavides Navarro, Luis Daniel
- Tipo de recurso:
- Book
- Fecha de publicación:
- 2018
- Institución:
- Escuela Colombiana de Ingeniería Julio Garavito
- Repositorio:
- Repositorio Institucional ECI
- Idioma:
- eng
- OAI Identifier:
- oai:repositorio.escuelaing.edu.co:001/1800
- Acceso en línea:
- https://repositorio.escuelaing.edu.co/handle/001/1800
- Palabra clave:
- Semántica de sistemas
Reestructura lógica
Programación orientada a eventos
Lenguaje de programación
REAL-T
Rewriting logic
Semantics
Distributed programming
Event oriented programming
Explicit time management
- Rights
- closedAccess
- License
- © Springer Nature Switzerland AG 2018
id |
ESCUELAIG2_29183c5fcfc9b4a6ac0358bd4d3f9a14 |
---|---|
oai_identifier_str |
oai:repositorio.escuelaing.edu.co:001/1800 |
network_acronym_str |
ESCUELAIG2 |
network_name_str |
Repositorio Institucional ECI |
repository_id_str |
|
dc.title.eng.fl_str_mv |
Towards Real-Time Semantics for a Distributed Event-Based MOP Language |
title |
Towards Real-Time Semantics for a Distributed Event-Based MOP Language |
spellingShingle |
Towards Real-Time Semantics for a Distributed Event-Based MOP Language Semántica de sistemas Reestructura lógica Programación orientada a eventos Lenguaje de programación REAL-T Rewriting logic Semantics Distributed programming Event oriented programming Explicit time management |
title_short |
Towards Real-Time Semantics for a Distributed Event-Based MOP Language |
title_full |
Towards Real-Time Semantics for a Distributed Event-Based MOP Language |
title_fullStr |
Towards Real-Time Semantics for a Distributed Event-Based MOP Language |
title_full_unstemmed |
Towards Real-Time Semantics for a Distributed Event-Based MOP Language |
title_sort |
Towards Real-Time Semantics for a Distributed Event-Based MOP Language |
dc.creator.fl_str_mv |
Sanabria, Mateo Garzón Alfonso, Wilmer Benavides Navarro, Luis Daniel |
dc.contributor.author.none.fl_str_mv |
Sanabria, Mateo Garzón Alfonso, Wilmer Benavides Navarro, Luis Daniel |
dc.contributor.researchgroup.spa.fl_str_mv |
Informática |
dc.subject.armarc.spa.fl_str_mv |
Semántica de sistemas Reestructura lógica Programación orientada a eventos Lenguaje de programación |
topic |
Semántica de sistemas Reestructura lógica Programación orientada a eventos Lenguaje de programación REAL-T Rewriting logic Semantics Distributed programming Event oriented programming Explicit time management |
dc.subject.armarc.eng.fl_str_mv |
REAL-T |
dc.subject.proposal.eng.fl_str_mv |
Rewriting logic Semantics Distributed programming Event oriented programming Explicit time management |
description |
This paper investigates rewriting logic as a suitable means to model the semantics of distributed and concurrent systems implemented using Monitoring Oriented Programming (MOP) frameworks. MOP tools close the gap between specification and implementation, allowing several formal specifications and concrete implementations to be combined into a single executing system. To address real-time monitoring of modern distributed applications, we recently proposed REAL-T, a reactive event-based distributed programming language with explicit support for distributions and time manipulation. REAL-T allows programmers to instrument distributed applications to monitor and enforce specific behavior. It also supports requirements of modern reactive applications (responsiveness, resiliency, elasticity and asynchronous communication). The REAL-T programming model is very flexible, making the semantic specifications very challenging. |
publishDate |
2018 |
dc.date.issued.none.fl_str_mv |
2018 |
dc.date.accessioned.none.fl_str_mv |
2021-11-04T20:38:04Z |
dc.date.available.none.fl_str_mv |
2021-11-04T20:38:04Z |
dc.type.spa.fl_str_mv |
Artículo de revista |
dc.type.coar.fl_str_mv |
http://purl.org/coar/resource_type/c_3248 |
dc.type.coarversion.fl_str_mv |
http://purl.org/coar/version/c_970fb48d4fbd8a85 |
dc.type.version.spa.fl_str_mv |
info:eu-repo/semantics/publishedVersion |
dc.type.coar.spa.fl_str_mv |
http://purl.org/coar/resource_type/c_2f33 |
dc.type.content.spa.fl_str_mv |
Text |
dc.type.driver.spa.fl_str_mv |
info:eu-repo/semantics/bookPart |
dc.type.redcol.spa.fl_str_mv |
https://purl.org/redcol/resource_type/CAP_LIB |
format |
http://purl.org/coar/resource_type/c_2f33 |
status_str |
publishedVersion |
dc.identifier.uri.none.fl_str_mv |
https://repositorio.escuelaing.edu.co/handle/001/1800 |
url |
https://repositorio.escuelaing.edu.co/handle/001/1800 |
dc.language.iso.spa.fl_str_mv |
eng |
language |
eng |
dc.relation.ispartofseries.none.fl_str_mv |
International Conference on Model and Data Engineering;MEDI 2018: New Trends in Model and Data Engineering |
dc.relation.citationendpage.spa.fl_str_mv |
243 |
dc.relation.citationstartpage.spa.fl_str_mv |
231 |
dc.relation.indexed.spa.fl_str_mv |
N/A |
dc.relation.ispartofbook.eng.fl_str_mv |
Communications in Computer and Information Science |
dc.relation.references.spa.fl_str_mv |
Agha, G.: Concurrent object-oriented programming. Commun. ACM 33(9), 125–141 (1990) Basu, A., Bensalem, S., Bozga, M., Bourgos, P., Sifakis, J.: Rigorous system design: the BIP approach. In: Kotásek, Z., Bouda, J., Černá, I., Sekanina, L., Vojnar, T., Antoš, D. (eds.) MEMICS 2011. LNCS, vol. 7119, pp. 1–19. Springer, Heidelberg (2012). Benavides Navarro, L.D., Douence, R., Núñez, A., Südholt, M.: LTS-based semantics and property analysis of distributed aspects and invasive patterns. In: Leuven, K.U. (ed.) Workshop on Aspects, Dependencies and Interactions. Technical Report, Belgium, vol. CW 517, pp. 36–45, July 2008. Benavides Navarro, L.D., Douence, R., Südholt, M.: Debugging and testing middleware with aspect-based control-flow and causal patterns. In: Issarny, V., Schantz, R. (eds.) Middleware 2008. LNCS, vol. 5346, pp. 183–202. Springer, Heidelberg (2008). Benavides Navarro, L.D., et al.: REAL-T: time modularization in reactive distributed applications. In: Serrano, C.J., Martínez-Santos, J. (eds.) CCC 2018. CCIS, vol. 885, pp. 113–127. Springer, Cham (2018). Bensalem, S., Bozga, M., Delahaye, B., Jegourel, C., Legay, A., Nouri, A.: Statistical model checking QoS properties of systems with SBIP. In: Margaria, T., Steffen, B. (eds.) ISoLA 2012. LNCS, vol. 7609, pp. 327–341. Springer, Heidelberg (2012). Bhat, G., Cleaveland, R., Lüttgen, G.: A practical approach to implementing real-time semantics. Ann. Softw. Eng. 7(1), 127–155 (1999) Charron-Bost, B., Mattern, F., Tel, G.: Synchronous, asynchronous, and causally ordered communication. Distrib. Comput. 9(4), 173–191 (1996). Chen, F., Roşu, G.: MOP: an efficient and generic runtime verification framework. In: ACM SIGPLAN Notices, vol. 42, pp. 569–588. ACM (2007) Clavel, M., et al.: The maude 2.0 system. In: Nieuwenhuis, R. (ed.) RTA 2003. LNCS, vol. 2706, pp. 76–87. Springer, Heidelberg (2003). Fisher, M.: An Introduction to Practical Formal Methods Using Temporal Logic. Wiley, Hoboken (2011) Fontana, P., Cleaveland, R.: A menagerie of timed automata. ACM Comput. Surv. 46(3), 40:1–40:56 (2014). Furia, C.A., Mandrioli, D., Morzenti, A., Rossi, M.: Modeling time in computing: a taxonomy and a comparative survey. ACM Comput. Surv. 42(2), 6:1–6:59 (2010) Haydar, M., Boroday, S., Petrenko, A., Sahraoui, H.: Propositional scopes in linear temporal logic. In: Proceedings of the 5th International Conference on Novelles Technologies de la Repartition (NOTERE 2005) (2005) Lamport, L.: Time, clocks, and the ordering of events in a distributed system. Commun. ACM 21(7), 558–565 (1978) Le Lann, G.: Distributed systems-towards a formal approach. In: IFIP Congress, Toronto, vol. 7, pp. 155–160 (1977) Magee, J., Kramer, J.: Concurrency: State Models and Java Programs, 2nd edn. Wiley, Hoboken (2006) Mallet, F.: Clock constraint specification language: specifying clock constraints with UML/MARTE. Innov. Syst. Softw. Eng. 4(3), 309–314 (2008). Mattern, F., et al.: Virtual time and global states of distributed systems. Parallel Distrib. Algorithms 1(23), 215–226 (1989) Meredith, P.O., Jin, D., Griffith, D., Chen, F., Roşu, G.: An overview of the mop runtime verification framework. Int. J. Softw. Tools Technol. Transfer 14(3), 249–289 (2012) Meseguer, J.: Twenty years of rewriting logic. J. Log. Algebr. Program. 81(7), 721–781 (2012). Roşu, G.: From rewriting logic, to programming language semantics, to program verification. In: Martí-Oliet, N., Ölveczky, P.C., Talcott, C. (eds.) Logic, Rewriting, and Concurrency. LNCS, vol. 9200, pp. 598–616. Springer, Cham (2015). Spiliopoulou, E.: Concurrent and distributed functional systems. Ph.D. thesis, University of Bristol (2000) Tabareau, N.: A theory of distributed aspects. In: Proceedings of the 9th International Conference on Aspect-Oriented Software Development, AOSD 2010, pp. 133–144. ACM, New York (2010). |
dc.rights.eng.fl_str_mv |
© Springer Nature Switzerland AG 2018 |
dc.rights.coar.fl_str_mv |
http://purl.org/coar/access_right/c_14cb |
dc.rights.uri.spa.fl_str_mv |
https://creativecommons.org/licenses/by/4.0/ |
dc.rights.accessrights.spa.fl_str_mv |
info:eu-repo/semantics/closedAccess |
dc.rights.creativecommons.spa.fl_str_mv |
Atribución 4.0 Internacional (CC BY 4.0) |
rights_invalid_str_mv |
© Springer Nature Switzerland AG 2018 https://creativecommons.org/licenses/by/4.0/ Atribución 4.0 Internacional (CC BY 4.0) http://purl.org/coar/access_right/c_14cb |
eu_rights_str_mv |
closedAccess |
dc.format.extent.spa.fl_str_mv |
13 páginas. |
dc.format.mimetype.spa.fl_str_mv |
application/pdf |
dc.publisher.spa.fl_str_mv |
Springer Nature |
dc.publisher.place.spa.fl_str_mv |
Switzerland. |
institution |
Escuela Colombiana de Ingeniería Julio Garavito |
bitstream.url.fl_str_mv |
https://repositorio.escuelaing.edu.co/bitstream/001/1800/5/Towards%20Real-Time%20Semantics%20for%20a%20Distributed%20Event-Based%20MOP%20Language.pdf.txt https://repositorio.escuelaing.edu.co/bitstream/001/1800/4/Towards%20Real-Time%20Semantics%20for%20a%20Distributed%20Event-Based%20MOP%20Language.png https://repositorio.escuelaing.edu.co/bitstream/001/1800/6/Towards%20Real-Time%20Semantics%20for%20a%20Distributed%20Event-Based%20MOP%20Language.pdf.jpg https://repositorio.escuelaing.edu.co/bitstream/001/1800/3/Towards%20Real-Time%20Semantics%20for%20a%20Distributed%20Event-Based%20MOP%20Language.pdf https://repositorio.escuelaing.edu.co/bitstream/001/1800/2/license.txt |
bitstream.checksum.fl_str_mv |
c1b4e3f589121c045530a85c1be8615b c58869f39e27694d4c502d9b7f81e439 c07d7201517c9f810e1c25298d3342d6 21cc7b9000d6a87968d075c2733aa83f 5a7ca94c2e5326ee169f979d71d0f06e |
bitstream.checksumAlgorithm.fl_str_mv |
MD5 MD5 MD5 MD5 MD5 |
repository.name.fl_str_mv |
Repositorio Escuela Colombiana de Ingeniería Julio Garavito |
repository.mail.fl_str_mv |
repositorio.eci@escuelaing.edu.co |
_version_ |
1814355595581456384 |
spelling |
Sanabria, Mateo7ce70020c113039fb221b87674cf694c600Garzón Alfonso, Wilmer1b470f3b03f18fae654a543b5af7a944600Benavides Navarro, Luis Daniel6fb8a207341d8b2f068df4c441aa67dd600Informática2021-11-04T20:38:04Z2021-11-04T20:38:04Z2018https://repositorio.escuelaing.edu.co/handle/001/1800This paper investigates rewriting logic as a suitable means to model the semantics of distributed and concurrent systems implemented using Monitoring Oriented Programming (MOP) frameworks. MOP tools close the gap between specification and implementation, allowing several formal specifications and concrete implementations to be combined into a single executing system. To address real-time monitoring of modern distributed applications, we recently proposed REAL-T, a reactive event-based distributed programming language with explicit support for distributions and time manipulation. REAL-T allows programmers to instrument distributed applications to monitor and enforce specific behavior. It also supports requirements of modern reactive applications (responsiveness, resiliency, elasticity and asynchronous communication). The REAL-T programming model is very flexible, making the semantic specifications very challenging.Este artículo investiga la lógica de reescritura como un medio adecuado para modelar la semántica de sistemas distribuidos y concurrentes implementados utilizando marcos de Programación Orientada a Monitoreo (MOP). Las herramientas MOP cierran la brecha entre la especificación y la implementación, lo que permite combinar varias especificaciones formales e implementaciones concretas en un solo sistema de ejecución. Para abordar el monitoreo en tiempo real de las aplicaciones distribuidas modernas, recientemente propusimos REAL-T, un lenguaje de programación distribuido basado en eventos reactivos con soporte explícito para distribuciones y manipulación del tiempo. REAL-T permite a los programadores instrumentar aplicaciones distribuidas para monitorear y hacer cumplir un comportamiento específico. También es compatible con los requisitos de las aplicaciones reactivas modernas (capacidad de respuesta, resiliencia, elasticidad y comunicación asíncrona). El modelo de programación REAL-T es muy flexible, lo que hace que las especificaciones semánticas sean muy desafiantes.13 páginas.application/pdfengSpringer NatureSwitzerland.International Conference on Model and Data Engineering;MEDI 2018: New Trends in Model and Data Engineering243231N/ACommunications in Computer and Information ScienceAgha, G.: Concurrent object-oriented programming. Commun. ACM 33(9), 125–141 (1990)Basu, A., Bensalem, S., Bozga, M., Bourgos, P., Sifakis, J.: Rigorous system design: the BIP approach. In: Kotásek, Z., Bouda, J., Černá, I., Sekanina, L., Vojnar, T., Antoš, D. (eds.) MEMICS 2011. LNCS, vol. 7119, pp. 1–19. Springer, Heidelberg (2012).Benavides Navarro, L.D., Douence, R., Núñez, A., Südholt, M.: LTS-based semantics and property analysis of distributed aspects and invasive patterns. In: Leuven, K.U. (ed.) Workshop on Aspects, Dependencies and Interactions. Technical Report, Belgium, vol. CW 517, pp. 36–45, July 2008.Benavides Navarro, L.D., Douence, R., Südholt, M.: Debugging and testing middleware with aspect-based control-flow and causal patterns. In: Issarny, V., Schantz, R. (eds.) Middleware 2008. LNCS, vol. 5346, pp. 183–202. Springer, Heidelberg (2008).Benavides Navarro, L.D., et al.: REAL-T: time modularization in reactive distributed applications. In: Serrano, C.J., Martínez-Santos, J. (eds.) CCC 2018. CCIS, vol. 885, pp. 113–127. Springer, Cham (2018).Bensalem, S., Bozga, M., Delahaye, B., Jegourel, C., Legay, A., Nouri, A.: Statistical model checking QoS properties of systems with SBIP. In: Margaria, T., Steffen, B. (eds.) ISoLA 2012. LNCS, vol. 7609, pp. 327–341. Springer, Heidelberg (2012).Bhat, G., Cleaveland, R., Lüttgen, G.: A practical approach to implementing real-time semantics. Ann. Softw. Eng. 7(1), 127–155 (1999)Charron-Bost, B., Mattern, F., Tel, G.: Synchronous, asynchronous, and causally ordered communication. Distrib. Comput. 9(4), 173–191 (1996).Chen, F., Roşu, G.: MOP: an efficient and generic runtime verification framework. In: ACM SIGPLAN Notices, vol. 42, pp. 569–588. ACM (2007)Clavel, M., et al.: The maude 2.0 system. In: Nieuwenhuis, R. (ed.) RTA 2003. LNCS, vol. 2706, pp. 76–87. Springer, Heidelberg (2003).Fisher, M.: An Introduction to Practical Formal Methods Using Temporal Logic. Wiley, Hoboken (2011)Fontana, P., Cleaveland, R.: A menagerie of timed automata. ACM Comput. Surv. 46(3), 40:1–40:56 (2014).Furia, C.A., Mandrioli, D., Morzenti, A., Rossi, M.: Modeling time in computing: a taxonomy and a comparative survey. ACM Comput. Surv. 42(2), 6:1–6:59 (2010)Haydar, M., Boroday, S., Petrenko, A., Sahraoui, H.: Propositional scopes in linear temporal logic. In: Proceedings of the 5th International Conference on Novelles Technologies de la Repartition (NOTERE 2005) (2005)Lamport, L.: Time, clocks, and the ordering of events in a distributed system. Commun. ACM 21(7), 558–565 (1978)Le Lann, G.: Distributed systems-towards a formal approach. In: IFIP Congress, Toronto, vol. 7, pp. 155–160 (1977)Magee, J., Kramer, J.: Concurrency: State Models and Java Programs, 2nd edn. Wiley, Hoboken (2006)Mallet, F.: Clock constraint specification language: specifying clock constraints with UML/MARTE. Innov. Syst. Softw. Eng. 4(3), 309–314 (2008).Mattern, F., et al.: Virtual time and global states of distributed systems. Parallel Distrib. Algorithms 1(23), 215–226 (1989)Meredith, P.O., Jin, D., Griffith, D., Chen, F., Roşu, G.: An overview of the mop runtime verification framework. Int. J. Softw. Tools Technol. Transfer 14(3), 249–289 (2012)Meseguer, J.: Twenty years of rewriting logic. J. Log. Algebr. Program. 81(7), 721–781 (2012).Roşu, G.: From rewriting logic, to programming language semantics, to program verification. In: Martí-Oliet, N., Ölveczky, P.C., Talcott, C. (eds.) Logic, Rewriting, and Concurrency. LNCS, vol. 9200, pp. 598–616. Springer, Cham (2015).Spiliopoulou, E.: Concurrent and distributed functional systems. Ph.D. thesis, University of Bristol (2000)Tabareau, N.: A theory of distributed aspects. In: Proceedings of the 9th International Conference on Aspect-Oriented Software Development, AOSD 2010, pp. 133–144. ACM, New York (2010).© Springer Nature Switzerland AG 2018https://creativecommons.org/licenses/by/4.0/info:eu-repo/semantics/closedAccessAtribución 4.0 Internacional (CC BY 4.0)http://purl.org/coar/access_right/c_14cbTowards Real-Time Semantics for a Distributed Event-Based MOP LanguageArtículo de revistainfo:eu-repo/semantics/publishedVersionhttp://purl.org/coar/resource_type/c_2f33http://purl.org/coar/resource_type/c_3248Textinfo:eu-repo/semantics/bookParthttps://purl.org/redcol/resource_type/CAP_LIBhttp://purl.org/coar/version/c_970fb48d4fbd8a85Semántica de sistemasReestructura lógicaProgramación orientada a eventosLenguaje de programaciónREAL-TRewriting logicSemanticsDistributed programmingEvent oriented programmingExplicit time managementTEXTTowards Real-Time Semantics for a Distributed Event-Based MOP Language.pdf.txtTowards Real-Time Semantics for a Distributed Event-Based MOP Language.pdf.txtExtracted texttext/plain28103https://repositorio.escuelaing.edu.co/bitstream/001/1800/5/Towards%20Real-Time%20Semantics%20for%20a%20Distributed%20Event-Based%20MOP%20Language.pdf.txtc1b4e3f589121c045530a85c1be8615bMD55metadata only accessTHUMBNAILTowards Real-Time Semantics for a Distributed Event-Based MOP Language.pngTowards Real-Time Semantics for a Distributed Event-Based MOP Language.pngimage/png95722https://repositorio.escuelaing.edu.co/bitstream/001/1800/4/Towards%20Real-Time%20Semantics%20for%20a%20Distributed%20Event-Based%20MOP%20Language.pngc58869f39e27694d4c502d9b7f81e439MD54open accessTowards Real-Time Semantics for a Distributed Event-Based MOP Language.pdf.jpgTowards Real-Time Semantics for a Distributed Event-Based MOP Language.pdf.jpgGenerated Thumbnailimage/jpeg11944https://repositorio.escuelaing.edu.co/bitstream/001/1800/6/Towards%20Real-Time%20Semantics%20for%20a%20Distributed%20Event-Based%20MOP%20Language.pdf.jpgc07d7201517c9f810e1c25298d3342d6MD56metadata only accessORIGINALTowards Real-Time Semantics for a Distributed Event-Based MOP Language.pdfTowards Real-Time Semantics for a Distributed Event-Based MOP Language.pdfArtículo de revistaapplication/pdf1376471https://repositorio.escuelaing.edu.co/bitstream/001/1800/3/Towards%20Real-Time%20Semantics%20for%20a%20Distributed%20Event-Based%20MOP%20Language.pdf21cc7b9000d6a87968d075c2733aa83fMD53metadata only accessLICENSElicense.txtlicense.txttext/plain; charset=utf-81881https://repositorio.escuelaing.edu.co/bitstream/001/1800/2/license.txt5a7ca94c2e5326ee169f979d71d0f06eMD52open access001/1800oai:repositorio.escuelaing.edu.co:001/18002022-11-24 03:01:26.816metadata only accessRepositorio Escuela Colombiana de Ingeniería Julio Garavitorepositorio.eci@escuelaing.edu.coU0kgVVNURUQgSEFDRSBQQVJURSBERUwgR1JVUE8gREUgUEFSRVMgRVZBTFVBRE9SRVMgREUgTEEgQ09MRUNDScOTTiAiUEVFUiBSRVZJRVciLCBPTUlUQSBFU1RBIExJQ0VOQ0lBLgoKQXV0b3Jpem8gYSBsYSBFc2N1ZWxhIENvbG9tYmlhbmEgZGUgSW5nZW5pZXLDrWEgSnVsaW8gR2FyYXZpdG8gcGFyYSBwdWJsaWNhciBlbCB0cmFiYWpvIGRlIGdyYWRvLCBhcnTDrWN1bG8sIHZpZGVvLCAKY29uZmVyZW5jaWEsIGxpYnJvLCBpbWFnZW4sIGZvdG9ncmFmw61hLCBhdWRpbywgcHJlc2VudGFjacOzbiB1IG90cm8gKGVuICAgIGFkZWxhbnRlIGRvY3VtZW50bykgcXVlIGVuIGxhIGZlY2hhIAplbnRyZWdvIGVuIGZvcm1hdG8gZGlnaXRhbCwgeSBsZSBwZXJtaXRvIGRlIGZvcm1hIGluZGVmaW5pZGEgcXVlIGxvIHB1YmxpcXVlIGVuIGVsIHJlcG9zaXRvcmlvIGluc3RpdHVjaW9uYWwsIAplbiBsb3MgdMOpcm1pbm9zIGVzdGFibGVjaWRvcyBlbiBsYSBMZXkgMjMgZGUgMTk4MiwgbGEgTGV5IDQ0IGRlIDE5OTMsIHkgZGVtw6FzIGxleWVzIHkganVyaXNwcnVkZW5jaWEgdmlnZW50ZQphbCByZXNwZWN0bywgcGFyYSBmaW5lcyBlZHVjYXRpdm9zIHkgbm8gbHVjcmF0aXZvcy4gRXN0YSBhdXRvcml6YWNpw7NuIGVzIHbDoWxpZGEgcGFyYSBsYXMgZmFjdWx0YWRlcyB5IGRlcmVjaG9zIGRlIAp1c28gc29icmUgbGEgb2JyYSBlbiBmb3JtYXRvIGRpZ2l0YWwsIGVsZWN0csOzbmljbywgdmlydHVhbDsgeSBwYXJhIHVzb3MgZW4gcmVkZXMsIGludGVybmV0LCBleHRyYW5ldCwgeSBjdWFscXVpZXIgCmZvcm1hdG8gbyBtZWRpbyBjb25vY2lkbyBvIHBvciBjb25vY2VyLgpFbiBtaSBjYWxpZGFkIGRlIGF1dG9yLCBleHByZXNvIHF1ZSBlbCBkb2N1bWVudG8gb2JqZXRvIGRlIGxhIHByZXNlbnRlIGF1dG9yaXphY2nDs24gZXMgb3JpZ2luYWwgeSBsbyBlbGFib3LDqSBzaW4gCnF1ZWJyYW50YXIgbmkgc3VwbGFudGFyIGxvcyBkZXJlY2hvcyBkZSBhdXRvciBkZSB0ZXJjZXJvcy4gUG9yIGxvIHRhbnRvLCBlcyBkZSBtaSBleGNsdXNpdmEgYXV0b3LDrWEgeSwgZW4gY29uc2VjdWVuY2lhLCAKdGVuZ28gbGEgdGl0dWxhcmlkYWQgc29icmUgw6lsLiBFbiBjYXNvIGRlIHF1ZWphIG8gYWNjacOzbiBwb3IgcGFydGUgZGUgdW4gdGVyY2VybyByZWZlcmVudGUgYSBsb3MgZGVyZWNob3MgZGUgYXV0b3Igc29icmUgCmVsIGRvY3VtZW50byBlbiBjdWVzdGnDs24sIGFzdW1pcsOpIGxhIHJlc3BvbnNhYmlsaWRhZCB0b3RhbCB5IHNhbGRyw6kgZW4gZGVmZW5zYSBkZSBsb3MgZGVyZWNob3MgYXF1w60gYXV0b3JpemFkb3MuIEVzdG8gCnNpZ25pZmljYSBxdWUsIHBhcmEgdG9kb3MgbG9zIGVmZWN0b3MsIGxhIEVzY3VlbGEgYWN0w7phIGNvbW8gdW4gdGVyY2VybyBkZSBidWVuYSBmZS4KVG9kYSBwZXJzb25hIHF1ZSBjb25zdWx0ZSBlbCBSZXBvc2l0b3JpbyBJbnN0aXR1Y2lvbmFsIGRlIGxhIEVzY3VlbGEsIGVsIENhdMOhbG9nbyBlbiBsw61uZWEgdSBvdHJvIG1lZGlvIGVsZWN0csOzbmljbywgCnBvZHLDoSBjb3BpYXIgYXBhcnRlcyBkZWwgdGV4dG8sIGNvbiBlbCBjb21wcm9taXNvIGRlIGNpdGFyIHNpZW1wcmUgbGEgZnVlbnRlLCBsYSBjdWFsIGluY2x1eWUgZWwgdMOtdHVsbyBkZWwgdHJhYmFqbyB5IGVsIAphdXRvci5Fc3RhIGF1dG9yaXphY2nDs24gbm8gaW1wbGljYSByZW51bmNpYSBhIGxhIGZhY3VsdGFkIHF1ZSB0ZW5nbyBkZSBwdWJsaWNhciB0b3RhbCBvIHBhcmNpYWxtZW50ZSBsYSBvYnJhIGVuIG90cm9zIAptZWRpb3MuRXN0YSBhdXRvcml6YWNpw7NuIGVzdMOhIHJlc3BhbGRhZGEgcG9yIGxhcyBmaXJtYXMgZGVsIChsb3MpIGF1dG9yKGVzKSBkZWwgZG9jdW1lbnRvLiAKU8OtIGF1dG9yaXpvIChhbWJvcykK |