Construcción de una plataforma de gestión de misiones y recompensas basadas en tokens no fungibles (NFTs) para Ashara Studios.
El proyecto de pasantía tuvo como objetivo desarrollar una plataforma web para Ashara Studios que automatizara la gestión de misiones y la entrega de recompensas basadas en NFTs, resolviendo las ineficiencias de su sistema manual. Utilizando una arquitectura basada en el patrón MVC y tecnologías com...
- Autores:
-
Ramírez Silva, Andrea Liliana
- Tipo de recurso:
- Fecha de publicación:
- 2024
- Institución:
- Universidad Distrital Francisco José de Caldas
- Repositorio:
- RIUD: repositorio U. Distrital
- Idioma:
- OAI Identifier:
- oai:repository.udistrital.edu.co:11349/93351
- Acceso en línea:
- http://hdl.handle.net/11349/93351
- Palabra clave:
- Blockchain
NFTs
Gestión de Misiones
Plataforma Web
Videojuegos UGC
Pasantía
Ingeniería de sistemas -- Tesis y disertaciones académicas
Blockchain
NFTs
Mission Management
Web Platform
UGC Video Games
Internship
- Rights
- License
- Abierto (Texto Completo)
id |
UDISTRITA2_8fe19b1dd18d06ace77308fa764bc380 |
---|---|
oai_identifier_str |
oai:repository.udistrital.edu.co:11349/93351 |
network_acronym_str |
UDISTRITA2 |
network_name_str |
RIUD: repositorio U. Distrital |
repository_id_str |
|
dc.title.none.fl_str_mv |
Construcción de una plataforma de gestión de misiones y recompensas basadas en tokens no fungibles (NFTs) para Ashara Studios. |
dc.title.titleenglish.none.fl_str_mv |
Construction of a mission and reward management platform based on non-fungible tokens (NFTs) for Ashara Studios. |
title |
Construcción de una plataforma de gestión de misiones y recompensas basadas en tokens no fungibles (NFTs) para Ashara Studios. |
spellingShingle |
Construcción de una plataforma de gestión de misiones y recompensas basadas en tokens no fungibles (NFTs) para Ashara Studios. Blockchain NFTs Gestión de Misiones Plataforma Web Videojuegos UGC Pasantía Ingeniería de sistemas -- Tesis y disertaciones académicas Blockchain NFTs Mission Management Web Platform UGC Video Games Internship |
title_short |
Construcción de una plataforma de gestión de misiones y recompensas basadas en tokens no fungibles (NFTs) para Ashara Studios. |
title_full |
Construcción de una plataforma de gestión de misiones y recompensas basadas en tokens no fungibles (NFTs) para Ashara Studios. |
title_fullStr |
Construcción de una plataforma de gestión de misiones y recompensas basadas en tokens no fungibles (NFTs) para Ashara Studios. |
title_full_unstemmed |
Construcción de una plataforma de gestión de misiones y recompensas basadas en tokens no fungibles (NFTs) para Ashara Studios. |
title_sort |
Construcción de una plataforma de gestión de misiones y recompensas basadas en tokens no fungibles (NFTs) para Ashara Studios. |
dc.creator.fl_str_mv |
Ramírez Silva, Andrea Liliana |
dc.contributor.advisor.none.fl_str_mv |
Martínez Rodríguez, Fernando |
dc.contributor.author.none.fl_str_mv |
Ramírez Silva, Andrea Liliana |
dc.contributor.orcid.none.fl_str_mv |
Martínez Rodríguez, Fernando [0000-0002-2016-0787] |
dc.subject.none.fl_str_mv |
Blockchain NFTs Gestión de Misiones Plataforma Web Videojuegos UGC Pasantía |
topic |
Blockchain NFTs Gestión de Misiones Plataforma Web Videojuegos UGC Pasantía Ingeniería de sistemas -- Tesis y disertaciones académicas Blockchain NFTs Mission Management Web Platform UGC Video Games Internship |
dc.subject.lemb.none.fl_str_mv |
Ingeniería de sistemas -- Tesis y disertaciones académicas |
dc.subject.keyword.none.fl_str_mv |
Blockchain NFTs Mission Management Web Platform UGC Video Games Internship |
description |
El proyecto de pasantía tuvo como objetivo desarrollar una plataforma web para Ashara Studios que automatizara la gestión de misiones y la entrega de recompensas basadas en NFTs, resolviendo las ineficiencias de su sistema manual. Utilizando una arquitectura basada en el patrón MVC y tecnologías como MongoDB, Node.js, y React.js, se implementaron funcionalidades para que los jugadores enviaran pruebas digitales y los administradores validaran misiones de forma eficiente. Además, se integraron contratos inteligentes en la red Polygon para gestionar las recompensas. La solución mejoró significativamente la experiencia de usuario, incrementó la eficiencia operativa y fue clave durante la temporada 2 de Ashara Studios, destacando en eventos competitivos como The Sandbox Builders’ Challenge. Este trabajo, que utilizó la metodología ágil SCRUM, también implementó métricas estratégicas y estableció una base tecnológica sólida para futuras expansiones, posicionando a Ashara Studios como líder en videojuegos UGC basados en blockchain. |
publishDate |
2024 |
dc.date.created.none.fl_str_mv |
2024-11-29 |
dc.date.accessioned.none.fl_str_mv |
2025-03-06T19:21:57Z |
dc.date.available.none.fl_str_mv |
2025-03-06T19:21:57Z |
dc.type.none.fl_str_mv |
bachelorThesis |
dc.type.coar.fl_str_mv |
http://purl.org/coar/resource_type/c_7a1f |
dc.type.degree.none.fl_str_mv |
Pasantía |
dc.identifier.uri.none.fl_str_mv |
http://hdl.handle.net/11349/93351 |
url |
http://hdl.handle.net/11349/93351 |
dc.relation.references.none.fl_str_mv |
Steven T. Wright. (2018, junio). ‘Rocket League’ director talks Rocket Pass, loot boxes, bonuses and penalties. Variety. https://variety.com/2018/gaming/features/rocket-league-rocket-pass-1202850769/ Channel news peru. (2024, febrero). Play to Airdrop: la nueva tendencia de los juegos Web 3.0 llega para transformar la experiencia gamer. https://channelnewsperu.com/play-to-airdrop-la-nueva-tendencia-de-los-juegos-web-3-0-llega-para-tran sformar-la-experiencia-gamer Paula Croft. (2019, abril). Rocket League presenta el Rocket Pass 3 y los Desafíos. Meristation. https://as.com/meristation/2019/04/09/avances/1554818267_283753.html Adrian Carrillo. (2021, junio). Genshin Impact: misiones semanales del Pase de Batalla. Mundo Deportivo. https://www.mundodeportivo.com/alfabeta/guia/guia-completa-de-genshin-impact-trucos-secretos-con sejos-y-mas/genshin-impact-misiones-semanales-pase-de-batalla Andrew Hayward. (2022, mayo). ¿Qué es The Sandbox? El Juego NFT del Metaverso de Ethereum. Decrypt. https://decrypt.co/es/resources/que-es-the-sandbox-juego-nft-metaverso-ethereum Toolify. (2024, febrero). El UGC está cambiando la forma en que jugamos y creamos juegos. https://www.toolify.ai/es/ai-news-es/el-ugc-est-cambiando-la-forma-en-que-jugamos-y-creamos-juegos827867 Preukschat, A. (2018). Fundamentos de la tecnología Blockchain. Blockchain: La Revolución Industrial de Internet (pp.29-36). Planeta Colombiana S.A. IBM. ¿Qué son los contratos inteligentes en blockchain?. https://www.ibm.com/es-es/topics/smart-contracts Loza-Vega, Ismael. (2022). Valor y precio de los Non-Fungible Tokens (NFTs) un estudio bibliométrico. Dialnet. https://dialnet.unirioja.es/servlet/articulo?codigo=8804992 Binance Academy. (2022, 23 de octubre). ¿Cuál es la relación entre blockchain y Web3? Binance Academy. https://academy.binance.com/en/articles/what-s-the-relationship-between-blockchain-and-web3 Robert Hoogendoorn. (2023, diciembre). Which Games Have Play-to-Airdrop and What is it?. Dappradar. https://dappradar.com/blog/web3-games-play-to-airdrop-crypto-tokens Daniels, J., & Verges, J. (2024, 27 de febrero). Introducing the unified thirdweb SDK. Thirdweb. https://blog.thirdweb.com/introducing-unified-thirdweb-sdk/ OpenSea. (n.d.). About us. https://opensea.io/es/about OpenSea. (n.d.). opensea-js. GitHub. https://github.com/ProjectOpenSea/opensea-js/tree/main López, A. (2024, 22 de marzo). ¿Qué es Polygon?. Crypto Conexión. https://cryptoconexion.com/polygon/#:~:text=Polygon%2C%20que%20antes%20era%20conocido,Ethere um%20registra%20problemas%20de%20escalabilidad. React.(n.d.) https://es.react.dev/blog MDN contributors. (2024, 28 de julio). Express Web Framework (Node.js/JavaScript). Mozilla Developer Network. https://developer.mozilla.org/es/docs/Learn/Server-side/Express_Nodejs |
dc.rights.coar.fl_str_mv |
http://purl.org/coar/access_right/c_abf2 |
dc.rights.acceso.none.fl_str_mv |
Abierto (Texto Completo) |
rights_invalid_str_mv |
Abierto (Texto Completo) http://purl.org/coar/access_right/c_abf2 |
dc.format.mimetype.none.fl_str_mv |
pdf |
institution |
Universidad Distrital Francisco José de Caldas |
bitstream.url.fl_str_mv |
https://repository.udistrital.edu.co/bitstreams/a9df4d93-b61c-4b41-b6af-40907c848c11/download https://repository.udistrital.edu.co/bitstreams/b175fe0c-d3bf-429d-bf89-85ea710054e5/download https://repository.udistrital.edu.co/bitstreams/715a841d-84b6-4ff2-be25-bb624bba5017/download https://repository.udistrital.edu.co/bitstreams/0fa026f6-9e69-4b99-b5d3-140c933c878a/download https://repository.udistrital.edu.co/bitstreams/643868ec-30b9-49e5-88f4-8d5847ece261/download https://repository.udistrital.edu.co/bitstreams/464053cb-0c8c-4e00-b2e9-38a972d18fc8/download |
bitstream.checksum.fl_str_mv |
7d7d4335f9e109823c089791a421dd59 93156a71c5332a342a0d09dd9df47990 c1282e56006f7adf10ca7ca6cb31a338 997daf6c648c962d566d7b082dac908d f3ab70cb47bafd854ebe4d62daa8eb29 395cad45b033327823240aa586484627 |
bitstream.checksumAlgorithm.fl_str_mv |
MD5 MD5 MD5 MD5 MD5 MD5 |
repository.name.fl_str_mv |
Repositorio Universidad Distrital |
repository.mail.fl_str_mv |
repositorio@udistrital.edu.co |
_version_ |
1828164771310993408 |
spelling |
Martínez Rodríguez, FernandoRamírez Silva, Andrea LilianaMartínez Rodríguez, Fernando [0000-0002-2016-0787]2025-03-06T19:21:57Z2025-03-06T19:21:57Z2024-11-29http://hdl.handle.net/11349/93351El proyecto de pasantía tuvo como objetivo desarrollar una plataforma web para Ashara Studios que automatizara la gestión de misiones y la entrega de recompensas basadas en NFTs, resolviendo las ineficiencias de su sistema manual. Utilizando una arquitectura basada en el patrón MVC y tecnologías como MongoDB, Node.js, y React.js, se implementaron funcionalidades para que los jugadores enviaran pruebas digitales y los administradores validaran misiones de forma eficiente. Además, se integraron contratos inteligentes en la red Polygon para gestionar las recompensas. La solución mejoró significativamente la experiencia de usuario, incrementó la eficiencia operativa y fue clave durante la temporada 2 de Ashara Studios, destacando en eventos competitivos como The Sandbox Builders’ Challenge. Este trabajo, que utilizó la metodología ágil SCRUM, también implementó métricas estratégicas y estableció una base tecnológica sólida para futuras expansiones, posicionando a Ashara Studios como líder en videojuegos UGC basados en blockchain.The internship project aimed to develop a web platform for Ashara Studios to automate the management of missions and the delivery of NFT-based rewards, addressing inefficiencies in their manual system. Using an architecture based on the MVC pattern and technologies such as MongoDB, Node.js, and React.js, functionalities were implemented to enable players to submit digital evidence and administrators to efficiently validate missions. Additionally, smart contracts on the Polygon network were integrated to manage rewards. The solution significantly improved the user experience, enhanced operational efficiency, and proved crucial during Ashara Studios' Season 2, achieving recognition in competitive events such as The Sandbox Builders’ Challenge. This project, executed under the SCRUM agile methodology, also included strategic metrics and established a robust technological foundation for future scalability, strengthening Ashara Studios’ position as a leader in blockchain-based UGC video games.pdfBlockchainNFTsGestión de MisionesPlataforma WebVideojuegos UGCPasantíaIngeniería de sistemas -- Tesis y disertaciones académicasBlockchainNFTsMission ManagementWeb PlatformUGC Video GamesInternshipConstrucción de una plataforma de gestión de misiones y recompensas basadas en tokens no fungibles (NFTs) para Ashara Studios.Construction of a mission and reward management platform based on non-fungible tokens (NFTs) for Ashara Studios.bachelorThesisPasantíahttp://purl.org/coar/resource_type/c_7a1fAbierto (Texto Completo)http://purl.org/coar/access_right/c_abf2Steven T. Wright. (2018, junio). ‘Rocket League’ director talks Rocket Pass, loot boxes, bonuses and penalties. Variety. https://variety.com/2018/gaming/features/rocket-league-rocket-pass-1202850769/Channel news peru. (2024, febrero). Play to Airdrop: la nueva tendencia de los juegos Web 3.0 llega para transformar la experiencia gamer. https://channelnewsperu.com/play-to-airdrop-la-nueva-tendencia-de-los-juegos-web-3-0-llega-para-tran sformar-la-experiencia-gamerPaula Croft. (2019, abril). Rocket League presenta el Rocket Pass 3 y los Desafíos. Meristation. https://as.com/meristation/2019/04/09/avances/1554818267_283753.htmlAdrian Carrillo. (2021, junio). Genshin Impact: misiones semanales del Pase de Batalla. Mundo Deportivo. https://www.mundodeportivo.com/alfabeta/guia/guia-completa-de-genshin-impact-trucos-secretos-con sejos-y-mas/genshin-impact-misiones-semanales-pase-de-batallaAndrew Hayward. (2022, mayo). ¿Qué es The Sandbox? El Juego NFT del Metaverso de Ethereum. Decrypt. https://decrypt.co/es/resources/que-es-the-sandbox-juego-nft-metaverso-ethereumToolify. (2024, febrero). El UGC está cambiando la forma en que jugamos y creamos juegos. https://www.toolify.ai/es/ai-news-es/el-ugc-est-cambiando-la-forma-en-que-jugamos-y-creamos-juegos827867Preukschat, A. (2018). Fundamentos de la tecnología Blockchain. Blockchain: La Revolución Industrial de Internet (pp.29-36). Planeta Colombiana S.A.IBM. ¿Qué son los contratos inteligentes en blockchain?. https://www.ibm.com/es-es/topics/smart-contractsLoza-Vega, Ismael. (2022). Valor y precio de los Non-Fungible Tokens (NFTs) un estudio bibliométrico. Dialnet. https://dialnet.unirioja.es/servlet/articulo?codigo=8804992Binance Academy. (2022, 23 de octubre). ¿Cuál es la relación entre blockchain y Web3? Binance Academy. https://academy.binance.com/en/articles/what-s-the-relationship-between-blockchain-and-web3Robert Hoogendoorn. (2023, diciembre). Which Games Have Play-to-Airdrop and What is it?. Dappradar. https://dappradar.com/blog/web3-games-play-to-airdrop-crypto-tokensDaniels, J., & Verges, J. (2024, 27 de febrero). Introducing the unified thirdweb SDK. Thirdweb. https://blog.thirdweb.com/introducing-unified-thirdweb-sdk/OpenSea. (n.d.). About us. https://opensea.io/es/aboutOpenSea. (n.d.). opensea-js. GitHub. https://github.com/ProjectOpenSea/opensea-js/tree/mainLópez, A. (2024, 22 de marzo). ¿Qué es Polygon?. Crypto Conexión. https://cryptoconexion.com/polygon/#:~:text=Polygon%2C%20que%20antes%20era%20conocido,Ethere um%20registra%20problemas%20de%20escalabilidad.React.(n.d.) https://es.react.dev/blogMDN contributors. (2024, 28 de julio). Express Web Framework (Node.js/JavaScript). Mozilla Developer Network. https://developer.mozilla.org/es/docs/Learn/Server-side/Express_NodejsORIGINALRamirezSilvaAndreaLiliana2025.pdfRamirezSilvaAndreaLiliana2025.pdfapplication/pdf18089162https://repository.udistrital.edu.co/bitstreams/a9df4d93-b61c-4b41-b6af-40907c848c11/download7d7d4335f9e109823c089791a421dd59MD51RamirezSilvaAndreaLiliana2025Anexos.rarRamirezSilvaAndreaLiliana2025Anexos.rarapplication/octet-stream1151944https://repository.udistrital.edu.co/bitstreams/b175fe0c-d3bf-429d-bf89-85ea710054e5/download93156a71c5332a342a0d09dd9df47990MD52Licencia de uso y publicacion.pdfLicencia de uso y publicacion.pdfapplication/pdf313230https://repository.udistrital.edu.co/bitstreams/715a841d-84b6-4ff2-be25-bb624bba5017/downloadc1282e56006f7adf10ca7ca6cb31a338MD53LICENSElicense.txtlicense.txttext/plain; charset=utf-87167https://repository.udistrital.edu.co/bitstreams/0fa026f6-9e69-4b99-b5d3-140c933c878a/download997daf6c648c962d566d7b082dac908dMD54THUMBNAILRamirezSilvaAndreaLiliana2025.pdf.jpgRamirezSilvaAndreaLiliana2025.pdf.jpgIM Thumbnailimage/jpeg4293https://repository.udistrital.edu.co/bitstreams/643868ec-30b9-49e5-88f4-8d5847ece261/downloadf3ab70cb47bafd854ebe4d62daa8eb29MD55Licencia de uso y publicacion.pdf.jpgLicencia de uso y publicacion.pdf.jpgIM Thumbnailimage/jpeg12282https://repository.udistrital.edu.co/bitstreams/464053cb-0c8c-4e00-b2e9-38a972d18fc8/download395cad45b033327823240aa586484627MD5611349/93351oai:repository.udistrital.edu.co:11349/933512025-03-07 01:01:36.121open.accesshttps://repository.udistrital.edu.coRepositorio Universidad Distritalrepositorio@udistrital.edu.coTElDRU5DSUEgWSBBVVRPUklaQUNJw5NOIEVTUEVDSUFMIFBBUkEgUFVCTElDQVIgWSBQRVJNSVRJUiBMQSBDT05TVUxUQSBZIFVTTyBERSBDT05URU5JRE9TIEVOIEVMIFJFUE9TSVRPUklPIElOU1RJVFVDSU9OQUwgREUgTEEgVU5JVkVSU0lEQUQgRElTVFJJVEFMCgpUw6lybWlub3MgeSBjb25kaWNpb25lcyBkZSB1c28gcGFyYSBwdWJsaWNhY2nDs24gZGUgb2JyYXMgZW4gZWwgUmVwb3NpdG9yaW8gSW5zdGl0dWNpb25hbCBkZSBsYSBVbml2ZXJzaWRhZCBEaXN0cml0YWwgRnJhbmNpc2NvIEpvc8OpIGRlIENhbGRhcyAoUklVRCkKCkNvbW8gdGl0dWxhcihlcykgZGVsKG9zKSBkZXJlY2hvKHMpIGRlIGF1dG9yLCBjb25maWVybyAoZXJpbW9zKSBhIGxhIFVuaXZlcnNpZGFkIERpc3RyaXRhbCBGcmFuY2lzY28gSm9zw6kgZGUgQ2FsZGFzIChlbiBhZGVsYW50ZSwgTEEgVU5JVkVSU0lEQUQpIHVuYSBsaWNlbmNpYSBwYXJhIHVzbyBubyBleGNsdXNpdmEsIGxpbWl0YWRhIHkgZ3JhdHVpdGEgc29icmUgbGEgb2JyYSBxdWUgaW50ZWdyYXLDoSBlbCBSZXBvc2l0b3JpbyBJbnN0aXR1Y2lvbmFsIChlbiBhZGVsYW50ZSwgUklVRCksIGRlIGFjdWVyZG8gYSBsYXMgc2lndWllbnRlcyByZWdsYXMsIGxhcyBjdWFsZXMgZGVjbGFybyAoYW1vcykgY29ub2NlciB5IGFjZXB0YXI6CgphKQlFc3RhcsOhIHZpZ2VudGUgYSBwYXJ0aXIgZGUgbGEgZmVjaGEgZW4gcXVlIHNlIGluY2x1eWEgZW4gZWwgUklVRCB5IGhhc3RhIHBvciB1biBwbGF6byBkZSBkaWV6ICgxMCkgQcOxb3MsIHByb3Jyb2dhYmxlIGluZGVmaW5pZGFtZW50ZSBwb3IgZWwgdGllbXBvIHF1ZSBkdXJlIGVsIGRlcmVjaG8gUGF0cmltb25pYWwgZGVsIGF1dG9yOyBsYSBjdWFsIHBvZHLDoSBkYXJzZSBwb3IgdGVybWluYWRhIHByZXZpYSBzb2xpY2l0dWQgYSBMQSBVTklWRVJTSURBRCBwb3IgZXNjcml0byBjb24gdW5hIGFudGVsYWNpw7NuIGRlIGRvcyAoMikgbWVzZXMgYW50ZXMgZGVsIHZlbmNpbWllbnRvIGRlbCBwbGF6byBpbmljaWFsIG8gZWwgZGUgc3UocykgcHLDs3Jyb2dhKHMpLgoKYikJTEEgVU5JVkVSU0lEQUQgcG9kcsOhIHB1YmxpY2FyIGxhIG9icmEgZW4gbGFzIGRpc3RpbnRhcyB2ZXJzaW9uZXMgcmVxdWVyaWRhcyBwb3IgZWwgUklVRCAoZGlnaXRhbCwgaW1wcmVzbywgZWxlY3Ryw7NuaWNvIHUgb3RybyBtZWRpbyBjb25vY2lkbyBvIHBvciBjb25vY2VyKSBMQSBVTklWRVJTSURBRCBubyBzZXLDoSByZXNwb25zYWJsZSBlbiBlbCBldmVudG8gcXVlIGVsIGRvY3VtZW50byBhcGFyZXpjYSByZWZlcmVuY2lhZG8gZW4gbW90b3JlcyBkZSBiw7pzcXVlZGEgbyByZXBvc2l0b3Jpb3MgZGlmZXJlbnRlcyBhbCBSSVVELCB1bmEgdmV6IGVsKG9zKSBhdXRvcihlcykgc29saWNpdGVuIHN1IGVsaW1pbmFjacOzbiBkZWwgUklVRCwgZGFkbyBxdWUgbGEgbWlzbWEgc2Vyw6EgcHVibGljYWRhIGVuIEludGVybmV0LgoKYykJTGEgYXV0b3JpemFjacOzbiBzZSBoYWNlIGEgdMOtdHVsbyBncmF0dWl0bywgcG9yIGxvIHRhbnRvLCBsb3MgYXV0b3JlcyByZW51bmNpYW4gYSByZWNpYmlyIGJlbmVmaWNpbyBhbGd1bm8gcG9yIGxhIHB1YmxpY2FjacOzbiwgZGlzdHJpYnVjacOzbiwgY29tdW5pY2FjacOzbiBww7pibGljYSB5IGN1YWxxdWllciBvdHJvIHVzbyBxdWUgc2UgaGFnYSBlbiBsb3MgdMOpcm1pbm9zIGRlIGxhIHByZXNlbnRlIGxpY2VuY2lhIHkgZGUgbGEgbGljZW5jaWEgZGUgdXNvIGNvbiBxdWUgc2UgcHVibGljYSAoQ3JlYXRpdmUgQ29tbW9ucykuCgpkKQlMb3MgY29udGVuaWRvcyBwdWJsaWNhZG9zIGVuIGVsIFJJVUQgc29uIG9icmEocykgb3JpZ2luYWwoZXMpIHNvYnJlIGxhIGN1YWwoZXMpIGVsKG9zKSBhdXRvcihlcykgY29tbyB0aXR1bGFyZXMgZGUgbG9zIGRlcmVjaG9zIGRlIGF1dG9yLCBhc3VtZW4gdG90YWwgcmVzcG9uc2FiaWxpZGFkIHBvciBlbCBjb250ZW5pZG8gZGUgc3Ugb2JyYSBhbnRlIExBIFVOSVZFUlNJREFEIHkgYW50ZSB0ZXJjZXJvcy4gRW4gdG9kbyBjYXNvIExBIFVOSVZFUlNJREFEIHNlIGNvbXByb21ldGUgYSBpbmRpY2FyIHNpZW1wcmUgbGEgYXV0b3LDrWEgaW5jbHV5ZW5kbyBlbCBub21icmUgZGVsIGF1dG9yIHkgbGEgZmVjaGEgZGUgcHVibGljYWNpw7NuLgoKZSkJTEEgVU5JVkVSU0lEQUQgcG9kcsOhIGluY2x1aXIgbGEgb2JyYSBlbiBsb3Mgw61uZGljZXMgeSBidXNjYWRvcmVzIHF1ZSBlc3RpbWVuIG5lY2VzYXJpb3MgcGFyYSBtYXhpbWl6YXIgbGEgdmlzaWJpbGlkYWQgZWwgdXNvIHkgZWwgaW1wYWN0byBkZSBsYSBwcm9kdWNjacOzbiBjaWVudMOtZmljYSwgYXJ0w61zdGljYSB5IGFjYWTDqW1pY2EgZW4gbGEgY29tdW5pZGFkIGxvY2FsLCBuYWNpb25hbCBvIGludGVybmFjaW9uYWwuCgoKZikJTEEgVU5JVkVSU0lEQUQgcG9kcsOhIGNvbnZlcnRpciBsYSBvYnJhIGEgY3VhbHF1aWVyIG1lZGlvIG8gZm9ybWF0byBjb24gZWwgZmluIGRlIHN1IHByZXNlcnZhY2nDs24gZW4gZWwgdGllbXBvIHF1ZSBsYSBwcmVzZW50ZSBsaWNlbmNpYSB5IGxhIGRlIHN1cyBwcsOzcnJvZ2FzLgoKCkNvbiBiYXNlIGVuIGxvIGFudGVyaW9yIGF1dG9yaXpvKGFtb3MpLCBhIGZhdm9yIGRlbCBSSVVEIHkgZGUgc3VzIHVzdWFyaW9zLCBsYSBwdWJsaWNhY2nDs24geSBjb25zdWx0YSBkZSBsYSBzaWd1aWVudGUgb2JyYToKClRpdHVsbwoKQXV0b3IgICAgICAgQXBlbGxpZG9zICAgICAgICAgTm9tYnJlcwoKMQoKMgoKMwoKCmcpCUF1dG9yaXpvKGFtb3MpLCBxdWUgbGEgb2JyYSBzZWEgcHVlc3RhIGEgZGlzcG9zaWNpw7NuIGRlbCBww7pibGljbyBlbiBsb3MgdMOpcm1pbm9zIGVzdGFibGVjaWRvcyBlbiBsb3MgbGl0ZXJhbGVzIGFudGVyaW9yZXMsIGJham8gbG9zIGzDrW1pdGVzIGRlZmluaWRvcyBwb3IgTEEgVU5JVkVSU0lEQUQsIGVuIGxhcyDigJxDb25kaWNpb25lcyBkZSB1c28gZGUgZXN0cmljdG8gY3VtcGxpbWllbnRv4oCdIGRlIGxvcyByZWN1cnNvcyBwdWJsaWNhZG9zIGVuIGVsIFJJVUQsIGN1eW8gdGV4dG8gY29tcGxldG8gc2UgcHVlZGUgY29uc3VsdGFyIGVuIGh0dHA6Ly9yZXBvc2l0b3J5LnVkaXN0cml0YWwuZWR1LmNvLwoKaCkJQ29ub3pjbyhjZW1vcykgeSBhY2VwdG8oYW1vcykgcXVlIG90b3JnbyhhbW9zKSB1bmEgbGljZW5jaWEgZXNwZWNpYWwgcGFyYSBwdWJsaWNhY2nDs24gZGUgb2JyYXMgZW4gZWwgUmVwb3NpdG9yaW8gSW5zdGl0dWNpb25hbCBkZSBsYSBVbml2ZXJzaWRhZCBEaXN0cml0YWwgRnJhbmNpc2NvIEpvc8OpIGRlIENhbGRhcywgbGljZW5jaWEgICBkZSBsYSBjdWFsIGhlIChoZW1vcykgb2J0ZW5pZG8gdW5hIGNvcGlhLgoKaSkJTWFuaWZpZXN0byhhbW9zKSBtaSAobnVlc3RybykgdG90YWwgYWN1ZXJkbyBjb24gbGFzIGNvbmRpY2lvbmVzIGRlIHVzbyB5IHB1YmxpY2FjacOzbiBlbiBlbCBSZXBvc2l0b3JpbyBJbnN0aXR1Y2lvbmFsIGRlIGxhIFVuaXZlcnNpZGFkIERpc3RyaXRhbCBGcmFuY2lzY28gSm9zw6kgZGUgQ2FsZGFzIHF1ZSBzZSBkZXNjcmliZW4geSBleHBsaWNhbiBlbiBlbCBwcmVzZW50ZSBkb2N1bWVudG8uCgpqKQlDb25vemNvKGNlbW9zKSBsYSBub3JtYXRpdmlkYWQgaW50ZXJuYSBkZSAgTEEgVU5JVkVSU0lEQUQ7IGVuIGNvbmNyZXRvLCBlbCBBY3VlcmRvIDAwNCBkZSAyMDEyIGRlbCBDU1UsIEFjdWVyZG8gMDIzIGRlIDIwMTIgZGVsIENTVSBzb2JyZSBQb2zDrXRpY2EgRWRpdG9yaWFsLCBBY3VlcmRvIDAyNiAgZGVsIDMxIGRlIGp1bGlvIGRlIDIwMTIgc29icmUgZWwgcHJvY2VkaW1pZW50byBwYXJhIGxhIHB1YmxpY2FjacOzbiBkZSB0ZXNpcyBkZSBwb3N0Z3JhZG8gZGUgbG9zIGVzdHVkaWFudGVzIGRlIGxhIFVuaXZlcnNpZGFkIERpc3RyaXRhbCBGcmFuY2lzY28gSm9zw6kgZGUgQ2FsZGFzLCAgQWN1ZXJkbyAwMzAgZGVsIDAzIGRlIGRpY2llbWJyZSBkZSAyMDEzIHBvciBtZWRpbyBkZWwgY3VhbCBzZSBjcmVhIGVsIFJlcG9zaXRvcmlvIEluc3RpdHVjaW9uYWwgZGUgbGEgVW5pdmVyc2lkYWQgRGlzdHJpdGFsIEZyYW5jaXNjbyBKb3PDqSBkZSBDYWxkYXMsIEFjdWVyZG8gMDM4IGRlIDIwMTUgMjAxNSDigJxwb3IgZWwgY3VhbCBzZSBtb2RpZmljYSBlbCBBY3VlcmRvIDAzMSBkZSAyMDE0IGRlIDIwMTQgcXVlIHJlZ2xhbWVudGEgZWwgdHJhYmFqbyBkZSBncmFkbyBwYXJhIGxvcyBlc3R1ZGlhbnRlcyBkZSBwcmVncmFkbyBkZSBsYSBVbml2ZXJzaWRhZCBEaXN0cml0YWwgRnJhbmNpc2NvIEpvc8OpIGRlIENhbGRhcyB5IHNlIGRpY3RhbiBvdHJhcyBkaXJlY3RyaWNlc+KAnSB5IGxhcyBkZW3DoXMgbm9ybWFzIGNvbmNvcmRhbnRlIHkgY29tcGxlbWVudGFyaWFzIHF1ZSByaWdlbiBhbCByZXNwZWN0bywgZXNwZWNpYWxtZW50ZSBsYSBsZXkgMjMgZGUgMTk4MiwgbGEgbGV5IDQ0IGRlIDE5OTMgeSBsYSBkZWNpc2nDs24gQW5kaW5hIDM1MSBkZSAxOTkzLiBFc3RvcyBkb2N1bWVudG9zIHBvZHLDoW4gc2VyIGNvbnN1bHRhZG9zIHkgZGVzY2FyZ2Fkb3MgZW4gZWwgcG9ydGFsIHdlYiBkZSBsYSBiaWJsaW90ZWNhIGh0dHA6Ly9zaXN0ZW1hZGViaWJsaW90ZWNhcy51ZGlzdHJpdGFsLmVkdS5jby8KCmspCUFjZXB0byhhbW9zKSBxdWUgTEEgVU5JVkVSU0lEQUQgbm8gc2UgcmVzcG9uc2FiaWxpemEgcG9yIGxhcyBpbmZyYWNjaW9uZXMgYSBsYSBwcm9waWVkYWQgaW50ZWxlY3R1YWwgbyBEZXJlY2hvcyBkZSBBdXRvciBjYXVzYWRhcyBwb3IgbG9zIHRpdHVsYXJlcyBkZSBsYSBwcmVzZW50ZSBMaWNlbmNpYSB5IGRlY2xhcmFtb3MgcXVlIG1hbnRlbmRyw6kgKGVtb3MpIGluZGVtbmUgYSBMQSBVTklWRVJTSURBRCBwb3IgbGFzIHJlY2xhbWFjaW9uZXMgbGVnYWxlcyBkZSBjdWFscXVpZXIgdGlwbyBxdWUgbGxlZ2FyZW4gYSBwcmVzZW50YXJzZSBwb3IgdmlvbGFjacOzbiBkZSBkZXJlY2hvcyBhIGxhIHByb3BpZWRhZCBpbnRlbGVjdHVhbCBvIGRlIEF1dG9yIHJlbGFjaW9uYWRvcyBjb24gbG9zIGRvY3VtZW50b3MgcmVnaXN0cmFkb3MgZW4gZWwgUklVRC4KCmwpCUVsIChsb3MpIGF1dG9yKGVzKSBtYW5pZmllc3RhKG1vcykgcXVlIGxhIG9icmEgb2JqZXRvIGRlIGxhIHByZXNlbnRlIGF1dG9yaXphY2nDs24gZXMgb3JpZ2luYWwsIGRlIGV4Y2x1c2l2YSBhdXRvcsOtYSwgeSBzZSByZWFsaXrDsyBzaW4gdmlvbGFyIG8gdXN1cnBhciBkZXJlY2hvcyBkZSBhdXRvciBkZSB0ZXJjZXJvczsgZGUgdGFsIHN1ZXJ0ZSwgZW4gY2FzbyBkZSBwcmVzZW50YXJzZSBjdWFscXVpZXIgcmVjbGFtYWNpw7NuIG8gYWNjacOzbiBwb3IgcGFydGUgZGUgdW4gdGVyY2VybyBlbiBjdWFudG8gYSBsb3MgZGVyZWNob3MgZGUgYXV0b3Igc29icmUgbGEgb2JyYSwgZWwgKGxvcykgZXN0dWRpYW50ZShzKSDigJMgYXV0b3IoZXMpIGFzdW1pcsOhKG4pIHRvZGEgbGEgcmVzcG9uc2FiaWxpZGFkIHkgc2FsZHLDoShuKSBlbiBkZWZlbnNhIGRlIGxvcyBkZXJlY2hvcyBhcXXDrSBhdXRvcml6YWRvcy4gUGFyYSB0b2RvcyBsb3MgZWZlY3RvcywgTEEgVU5JVkVSU0lEQUQgYWN0w7phIGNvbW8gdW4gdGVyY2VybyBkZSBidWVuYSBmZS4KCgptKQlFbCAobG9zKSBhdXRvcihlcykgbWFuaWZpZXN0YShtb3MpIHF1ZSBjb25vemNvKGNlbW9zKSBsYSBhdXRvbm9tw61hIHkgbG9zIGRlcmVjaG9zLCBxdWUgcG9zZWUobW9zKSBzb2JyZSBsYSBvYnJhIHksIGNvbW8gdGFsLCBlcyAoc29tb3MpIHJlc3BvbnNhYmxlKHMpIGRlbCBhbGNhbmNlIGp1csOtZGljbyB5IGxlZ2FsLCBkZSBlc2NvZ2VyIGxhIG9wY2nDs24gZGUgbGEgcHVibGljYWNpw7NuIG8gZGUgcmVzdHJpY2Npw7NuIGRlIGxhIHB1YmxpY2FjacOzbiBkZWwgZG9jdW1lbnRvIHJlZ2lzdHJhZG8gZW4gZWwgUklVRC4KCgoKCgoKU0kgRUwgRE9DVU1FTlRPIFNFIEJBU0EgRU4gVU4gVFJBQkFKTyBRVUUgSEEgU0lETyBQQVRST0NJTkFETyBPIEFQT1lBRE8gUE9SIFVOQSBBR0VOQ0lBIE8gVU5BIE9SR0FOSVpBQ0nDk04sIENPTiBFWENFUENJw5NOIERFIExBIFVOSVZFUlNJREFEIERJU1RSSVRBTCBGUkFOQ0lTQ08gSk9TRSBERSBDQUxEQVMsIExPUyBBVVRPUkVTIEdBUkFOVElaQU4gUVVFIFNFIEhBIENVTVBMSURPIENPTiBMT1MKREVSRUNIT1MgWSBPQkxJR0FDSU9ORVMgUkVRVUVSSURPUyBQT1IgRUwgUkVTUEVDVElWTyBDT05UUkFUTyBPIEFDVUVSRE8uCgoKCgoKCgoKCgoKCgoKCgoKCgoKCkVuIGNvbnN0YW5jaWEgZGUgbG8gYW50ZXJpb3IsIGZpcm1vKGFtb3MpIGVsIHByZXNlbnRlIGRvY3VtZW50bywgZW4gbGEgY2l1ZGFkIGRlIEJvZ290w6EsIEQuQy4sIGEgbG9zCgoKRklSTUEgREUgTE9TIFRJVFVMQVJFUyBERSBERVJFQ0hPUyBERSBBVVRPUgoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fICAgQy5DLiBOby4gX19fX19fX19fX19fX19fX19fCgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18gICBDLkMuIE5vLiBfX19fX19fX19fX19fX19fX18KCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXyAgIEMuQy4gTm8uIF9fX19fX19fX19fX19fX19fXwoKCgpDb3JyZW8gRWxlY3Ryw7NuaWNvIEluc3RpdHVjaW9uYWwgZGVsIChkZSBsb3MpIEF1dG9yKGVzKToKCkF1dG9yCSAgICAgIENvcnJlbyBFbGVjdHLDs25pY28KCjEKCjIKCjMKCk5vbWJyZSBkZSBEaXJlY3RvcihlcykgZGUgR3JhZG86CgoxCgoyCgozCgpOb21icmUgRmFjdWx0YWQgeSBQcm95ZWN0byBDdXJyaWN1bGFyOgoKRmFjdWx0YWQJUHJveWVjdG8gQ3VycmljdWxhcgoKCgoKCgoKCk5vdGE6IEVuIGNhc28gcXVlIG5vIGVzdMOpIGRlIGFjdWVyZG8gY29uIGxhcyBjb25kaWNpb25lcyBkZSBsYSBwcmVzZW50ZSBsaWNlbmNpYSwgeSBtYW5pZmllc3RlIGFsZ3VuYSByZXN0cmljY2nDs24gc29icmUgbGEgb2JyYSwganVzdGlmaXF1ZSBsb3MgbW90aXZvcyBwb3IgbG9zIGN1YWxlcyBlbCBkb2N1bWVudG8geSBzdXMgYW5leG9zIG5vIHB1ZWRlbiBzZXIgcHVibGljYWRvcyBlbiBlbCBSZXBvc2l0b3JpbyBJbnN0aXR1Y2lvbmFsIGRlIGxhIFVuaXZlcnNpZGFkIERpc3RyaXRhbCBGcmFuY2lzY28gSm9zw6kgZGUgQ2FsZGFzIFJJVUQuCgoKU2kgcmVxdWllcmUgbcOhcyBlc3BhY2lvLCBwdWVkZSBhbmV4YXIgdW5hIGNvcGlhIHNpbWlsYXIgYSBlc3RhIGhvamEK |