Transaction executed successfully
Transaction Details
Inspect execution, participants, message data, gas usage, events and raw transaction data.
Transaction hash
3B4E9DB9B08A63F53B6EBCF3C456C746277E8765D3BF9740F786DCD9E9425842
Transaction overview
Execution summary
TX INDEX
0
Position in block
GAS WANTED
15,991,920
Requested gas limit
GAS USED
13,326,550
Gas consumed
FEE
1000000ugnot
Transaction fee
Participants
Message
Message #1
m_addpkg
Arguments
g1manfred47kzduec920z88wfr64ylksmdcedlf5
Execution log
msg:0,success:true,log:,events:[]
Events
No events emitted by this transaction.
Raw encoded transaction
CuZECgwvdm0ubV9hZGRwa2cS1UQKKGcxbWFuZnJlZDQ3a3pkdWVjOTIwejg4d2ZyNjR5bGtzbWRjZWRsZjUSqEQKCWJ1bGxzY293cxIkZ25vLmxhbmQvci9tb3VsL3gvZGFpbHkvYnVsbHNjb3dzL3YwGo0VCglSRUFETUUubWQS/xQjIEJ1bGxzICYgQ293cwoKPiDimqDvuI8gKipFeHBlcmltZW50YWwg4oCUIGdlbmVyYXRlZCB3aXRoIG5vIGh1bWFuIHN1cGVydmlzaW9uLioqIFRoaXMgcmVhbG0gd2FzCj4gcHJvZHVjZWQgYXV0b21hdGljYWxseSBieSBhbiBNQ1AtZHJpdmVuIGFnZW50IHRvIGV4ZXJjaXNlIHRoZSBnbm8gTUNQIHNlcnZlcgo+IGFuZCB0b29saW5nLCBhbmQgdG8gZ2VuZXJhdGUgdGVzdCBjb250ZW50IGZvciBnbm8gY29tcGlsZXJzLCBsaW50ZXJzIGFuZAo+IGZvcm1hdHRlcnMuICoqTm90IGF1ZGl0ZWQuIE5vdCBmb3IgcHJvZHVjdGlvbi4qKiBGdWxsIGNvbnRleHQgJiBmb2xkZXIgUkVBRE1FOgo+IFtyL21vdWwveC9kYWlseV0oaHR0cHM6Ly9naXRodWIuY29tL21vdWwvZ25vLWNvbnRyYWN0cy9ibG9iL21haW4vci9tb3VsL3gvZGFpbHkvUkVBRE1FLm1kKQoKLS0tCgoKQSBzaGFyZWQgb24tY2hhaW4gW0J1bGxzICYgQ293c10oaHR0cHM6Ly9lbi53aWtpcGVkaWEub3JnL3dpa2kvQnVsbHNfYW5kX0Nvd3MpIHB1enpsZQoodGhlIGNsYXNzaWMgYW5jZXN0b3Igb2YgTWFzdGVybWluZCBhbmQgV29yZGxlLWZvci1kaWdpdHMpLiBPbmUgc2VjcmV0IDQtZGlnaXQgY29kZQp3aXRoIG5vIHJlcGVhdGVkIGRpZ2l0cyBpcyBsaXZlIGF0IGEgdGltZTsgYW55b25lIGNhbiBjYWxsIGBHdWVzc2Agd2l0aCBhIGNhbmRpZGF0ZQpjb2RlIGFuZCBnZXRzIGJhY2sgKipidWxscyoqIChyaWdodCBkaWdpdCwgcmlnaHQgcG9zaXRpb24pIGFuZCAqKmNvd3MqKiAocmlnaHQgZGlnaXQsCndyb25nIHBvc2l0aW9uKS4gRmlyc3QgY2FsbGVyIHRvIGxhbmQgNCBidWxscyBjcmFja3MgdGhlIHJvdW5kLCBsYW5kcyBvbiB0aGUKbGVhZGVyYm9hcmQsIGFuZCBhIGZyZXNoIHNlY3JldCBpcyBkcmF3biBpbW1lZGlhdGVseSBzbyB0aGUgbmV4dCByb3VuZCBzdGFydHMgYXQgb25jZS4KClJlYWxtOiBgZ25vLmxhbmQvci9nMTJjczRjZWh1anBmZnBqcHl3bWtxajQzbTZ1NXlhNTNuajY5c2p6L2J1bGxzY293c2AKCiMjIEV4YW1wbGUgY2FsbHMKCmBgYApHdWVzcygiMTk3MiIpICAgLT4gIjE5NzIgLT4gMSBidWxscywgMiBjb3dzIgpHdWVzcygiNzE5MiIpICAgLT4gIioqKiBTT0xWRUQgKioqIDcxOTIgd2FzIGl0IOKAlCByb3VuZCAzIGNyYWNrZWQgaW4gNSBndWVzc2VzLiBOZXcgcm91bmQgNCBoYXMgYmVndW4sIGdvb2QgbHVjayEiCkdpdmVVcCgpICAgICAgICAtPiAicm91bmQgNCdzIGNvZGUgd2FzIDQwODIg4oCUIHJvdW5kIDUgaXMgbGl2ZSBub3cuIgpgYGAKCmBSZW5kZXIoIiIpYCBzaG93cyB0aGUgY3VycmVudCByb3VuZCwgYXR0ZW1wdHMgc28gZmFyLCB0aGUgbGFzdCAxMCBndWVzc2VzIHdpdGgKdGhlaXIgYnVsbHMvY293cywgYW5kIHRoZSB0b3AtNSBmYXN0ZXN0LXNvbHZlIGxlYWRlcmJvYXJkLgoKVGhlIHNlY3JldCBpcyBnZW5lcmF0ZWQgZGV0ZXJtaW5pc3RpY2FsbHkgZnJvbSB0aGUgb24tY2hhaW4gYmxvY2sgaGVpZ2h0IGFuZCB0aGUKcm91bmQgY291bnRlciB2aWEgYSBzbWFsbCBMQ0cgKGBuZXdTZWNyZXRgL2BuZXh0UmFuZGAgaW4gYGJ1bGxzY293cy5nbm9gKSDigJQgbm8KZXh0ZXJuYWwgcmFuZG9tbmVzcyBuZWVkZWQsIGFuZCBub2JvZHkgY2FuIHByZWNvbXB1dGUgdGhlIG5leHQgY29kZSBiZWZvcmUgaXRzCnJvdW5kIGFjdHVhbGx5IHN0YXJ0cy4KCiMjIFRvb2xjaGFpbiBzdGF0dXMKClZlcmlmaWVkIGxvY2FsbHkgd2l0aCBgZ25vIHRlc3QgLXYgLmAgYW5kIGBnbm8gbGludCAuYCBhZ2FpbnN0IGEgYGduby5sYW5kL2dub2xhbmcvZ25vYAptYXN0ZXIgY2hlY2tvdXQgdXNlZCBhcyBgR05PUk9PVGAgKHRoZSBkZWZhdWx0IGluc3RhbGxlZCBgZ25vYCBiaW5hcnkgaGFkIGEgc3RhbGUvCm1pc3NpbmcgYEdOT1JPT1RgLCBzbyBgR05PUk9PVD08cGF0aC10by1nbm9sYW5nL2dubz4gZ25vIHRlc3QgLmAgd2FzIHVzZWQgaW5zdGVhZCkuCkFsbCA3IHRlc3RzIHBhc3MsIGxpbnQgaXMgY2xlYW4uIFRoaXMgZXhlcmNpc2VzIGN1cnJlbnQgc2FwcGhpcmUgKGdubyAwLjkpIHN0ZGxpYgpwYXRocyAoYGNoYWluL3J1bnRpbWVgLCBubyBgc3RkYCBwYWNrYWdlKSBhbmQgdGhlIGBjdXIgcmVhbG1gIC8gYGNyb3NzKGN1cilgIGNyb3NzaW5nCmNvbnZlbnRpb24uCgo8IS0tIEJFR0lOIEdOT0NPTlRSQUNUUyBGT09URVIgKGdlbmVyYXRlZCBieSBgbWFrZSByZWFkbWVzYDsgZG8gbm90IGVkaXQgYmVsb3cpIC0tPgoKLS0tCgpQYXJ0IG9mICoqW21vdWwvZ25vLWNvbnRyYWN0c10oaHR0cHM6Ly9naXRodWIuY29tL21vdWwvZ25vLWNvbnRyYWN0cykqKiDigJQgbW91bCdzIHZlcnNpb25lZCBnbm8ubGFuZCBjb250cmFjdHMuIFNlZSB0aGUgcmVwb3NpdG9yeSBmb3IgdGhlIGZ1bGwgY2F0YWxvZywgYnVpbGQvdGVzdCB0b29saW5nLCBhbmQgdXNhZ2UuCgo+IPCfp6ogKipIaWdobHkgZXhwZXJpbWVudGFsIOKAlCBwb3RlbnRpYWxseSB2aWJlLWNvZGVkLioqIE5vdCBhdWRpdGVkOyBtYXkgYnJlYWssIGNoYW5nZSwgb3IgYmUgcmVtb3ZlZCBhdCBhbnkgdGltZS4gRG8gbm90IHVzZSB3aXRoIGFueXRoaW5nIG9mIHZhbHVlLiBGdWxsIGRpc2NsYWltZXI6IFtESVNDTEFJTUVSXShodHRwczovL2dpdGh1Yi5jb20vbW91bC9nbm8tY29udHJhY3RzL2Jsb2IvbWFpbi9ESVNDTEFJTUVSLm1kKS4KCjwhLS0gRU5EIEdOT0NPTlRSQUNUUyBGT09URVIgLS0+ChryLQoNYnVsbHNjb3dzLmdubxLgLS8vIFBhY2thZ2UgYnVsbHNjb3dzIGlzIGEgc2hhcmVkIG9uLWNoYWluIEJ1bGxzICYgQ293cyBwdXp6bGU6IG9uZSBzZWNyZXQKLy8gNC1kaWdpdCBjb2RlIChkaXN0aW5jdCBkaWdpdHMpIHBlciByb3VuZCwgZ3Vlc3NlZCBjb29wZXJhdGl2ZWx5L2NvbXBldGl0aXZlbHkKLy8gYnkgYW55b25lIHdobyBjYWxscyBHdWVzcy4gQnVsbHMgPSByaWdodCBkaWdpdCwgcmlnaHQgc3BvdC4gQ293cyA9IHJpZ2h0Ci8vIGRpZ2l0LCB3cm9uZyBzcG90LiBXaG9ldmVyIGhpdHMgNCBidWxscyB3aW5zIHRoZSByb3VuZCBhbmQgYSBsZWFkZXJib2FyZAovLyBlbnRyeTsgYSBmcmVzaCBzZWNyZXQgaXMgZHJhd24gaW1tZWRpYXRlbHkgYWZ0ZXIuCnBhY2thZ2UgYnVsbHNjb3dzCgppbXBvcnQgKAoJImNoYWluL3J1bnRpbWUiCgkic3RyY29udiIKCSJzdHJpbmdzIgopCgpjb25zdCAoCgltYXhIaXN0b3J5ID0gMTAKCW1heFJlY29yZHMgPSA1CikKCnR5cGUgZ3Vlc3NMb2cgc3RydWN0IHsKCXBsYXllciAgIHN0cmluZwoJZ3Vlc3MgICAgc3RyaW5nCglidWxscyAgICBpbnQKCWNvd3MgICAgIGludAp9Cgp0eXBlIHJlY29yZCBzdHJ1Y3QgewoJcGxheWVyICAgc3RyaW5nCglhdHRlbXB0cyBpbnQKCXJvdW5kICAgIGludAp9Cgp2YXIgKAoJc2VjcmV0ICAgWzRdaW50Cglyb3VuZCAgICBpbnQKCWF0dGVtcHRzIGludAoJaGlzdG9yeSAgW11ndWVzc0xvZwoJcmVjb3JkcyAgW11yZWNvcmQKKQoKZnVuYyBpbml0KCkgewoJcm91bmQgPSAxCglzZWNyZXQgPSBuZXdTZWNyZXQoc2VlZEZvcihyb3VuZCkpCn0KCi8vIHNlZWRGb3IgZGVyaXZlcyBhIHBlci1yb3VuZCBQUk5HIHNlZWQgZnJvbSB0aGUgY3VycmVudCBjaGFpbiBoZWlnaHQgc28KLy8gbm9ib2R5IGNhbiBwcmVjb21wdXRlIHRoZSBuZXh0IHNlY3JldCBiZWZvcmUgdGhlIHJvdW5kIGFjdHVhbGx5IHN0YXJ0cy4KZnVuYyBzZWVkRm9yKHIgaW50KSBpbnQ2NCB7CglyZXR1cm4gcnVudGltZS5DaGFpbkhlaWdodCgpKjEwMDAwMDMgKyBpbnQ2NChyKSo3OTE5ICsgMTcKfQoKLy8gbmV4dFJhbmQgaXMgYSBtaW5pbWFsIExDRyAoZ2xpYmMgY29uc3RhbnRzKSDigJQgbm8gY3J5cHRvIHN0cmVuZ3RoIG5lZWRlZAovLyBmb3IgYSBjYXN1YWwgcHV6emxlLCBqdXN0IGVub3VnaCBzcHJlYWQgYWNyb3NzIGRpZ2l0cy4KZnVuYyBuZXh0UmFuZChzZWVkIGludDY0KSBpbnQ2NCB7CglyZXR1cm4gKHNlZWQqMTEwMzUxNTI0NSArIDEyMzQ1KSAmIDB4N2ZmZmZmZmYKfQoKZnVuYyBuZXdTZWNyZXQoc2VlZCBpbnQ2NCkgWzRdaW50IHsKCXZhciB1c2VkIFsxMF1ib29sCgl2YXIgZGlnaXRzIFs0XWludAoJcyA6PSBzZWVkCglmb3IgaSA6PSAwOyBpIDwgNDsgaSsrIHsKCQlmb3IgewoJCQlzID0gbmV4dFJhbmQocykKCQkJZCA6PSBpbnQocyAlIDEwKQoJCQlpZiAhdXNlZFtkXSB7CgkJCQl1c2VkW2RdID0gdHJ1ZQoJCQkJZGlnaXRzW2ldID0gZAoJCQkJYnJlYWsKCQkJfQoJCX0KCX0KCXJldHVybiBkaWdpdHMKfQoKLy8gcGFyc2VHdWVzcyB2YWxpZGF0ZXMgYSA0LWRpZ2l0LCBkaXN0aW5jdC1kaWdpdCBndWVzcyBzdHJpbmcuCmZ1bmMgcGFyc2VHdWVzcyhndWVzcyBzdHJpbmcpIChbNF1pbnQsIGJvb2wpIHsKCXZhciBvdXQgWzRdaW50CglpZiBsZW4oZ3Vlc3MpICE9IDQgewoJCXJldHVybiBvdXQsIGZhbHNlCgl9Cgl2YXIgdXNlZCBbMTBdYm9vbAoJZm9yIGkgOj0gMDsgaSA8IDQ7IGkrKyB7CgkJYyA6PSBndWVzc1tpXQoJCWlmIGMgPCAnMCcgfHwgYyA+ICc5JyB7CgkJCXJldHVybiBvdXQsIGZhbHNlCgkJfQoJCWQgOj0gaW50KGMgLSAnMCcpCgkJaWYgdXNlZFtkXSB7CgkJCXJldHVybiBvdXQsIGZhbHNlCgkJfQoJCXVzZWRbZF0gPSB0cnVlCgkJb3V0W2ldID0gZAoJfQoJcmV0dXJuIG91dCwgdHJ1ZQp9CgovLyBzY29yZSByZXR1cm5zIChidWxscywgY293cykgZm9yIGd1ZXNzIGFnYWluc3QgdGFyZ2V0LCBhc3N1bWluZyBib3RoIGhhdmUKLy8gZGlzdGluY3QgZGlnaXRzIChndWFyYW50ZWVkIGJ5IHBhcnNlR3Vlc3MgLyBuZXdTZWNyZXQpLgpmdW5jIHNjb3JlKHRhcmdldCwgZ3Vlc3MgWzRdaW50KSAoaW50LCBpbnQpIHsKCWJ1bGxzLCBjb3dzIDo9IDAsIDAKCWZvciBpIDo9IDA7IGkgPCA0OyBpKysgewoJCWlmIGd1ZXNzW2ldID09IHRhcmdldFtpXSB7CgkJCWJ1bGxzKysKCQkJY29udGludWUKCQl9CgkJZm9yIGogOj0gMDsgaiA8IDQ7IGorKyB7CgkJCWlmIGkgIT0gaiAmJiBndWVzc1tpXSA9PSB0YXJnZXRbal0gewoJCQkJY293cysrCgkJCQlicmVhawoJCQl9CgkJfQoJfQoJcmV0dXJuIGJ1bGxzLCBjb3dzCn0KCmZ1bmMgYWRkSGlzdG9yeShsIGd1ZXNzTG9nKSB7CgloaXN0b3J5ID0gYXBwZW5kKGhpc3RvcnksIGwpCglpZiBsZW4oaGlzdG9yeSkgPiBtYXhIaXN0b3J5IHsKCQloaXN0b3J5ID0gaGlzdG9yeVtsZW4oaGlzdG9yeSktbWF4SGlzdG9yeTpdCgl9Cn0KCi8vIGFkZFJlY29yZCBrZWVwcyB0aGUgdG9wIG1heFJlY29yZHMgZmFzdGVzdCBzb2x2ZXMsIGFzY2VuZGluZyBieSBhdHRlbXB0cy4KZnVuYyBhZGRSZWNvcmQociByZWNvcmQpIHsKCXJlY29yZHMgPSBhcHBlbmQocmVjb3JkcywgcikKCWZvciBpIDo9IGxlbihyZWNvcmRzKSAtIDE7IGkgPiAwICYmIHJlY29yZHNbaV0uYXR0ZW1wdHMgPCByZWNvcmRzW2ktMV0uYXR0ZW1wdHM7IGktLSB7CgkJcmVjb3Jkc1tpXSwgcmVjb3Jkc1tpLTFdID0gcmVjb3Jkc1tpLTFdLCByZWNvcmRzW2ldCgl9CglpZiBsZW4ocmVjb3JkcykgPiBtYXhSZWNvcmRzIHsKCQlyZWNvcmRzID0gcmVjb3Jkc1s6bWF4UmVjb3Jkc10KCX0KfQoKZnVuYyBzdGFydE5ld1JvdW5kKCkgewoJcm91bmQrKwoJYXR0ZW1wdHMgPSAwCgloaXN0b3J5ID0gbmlsCglzZWNyZXQgPSBuZXdTZWNyZXQoc2VlZEZvcihyb3VuZCkpCn0KCi8vIEd1ZXNzIHN1Ym1pdHMgYSA0LWRpc3RpbmN0LWRpZ2l0IGNvZGUgYWdhaW5zdCB0aGUgY3VycmVudCByb3VuZCdzIHNlY3JldC4KLy8gUmV0dXJucyB0aGUgYnVsbHMvY293cyBmZWVkYmFjaywgb3IgInNvbHZlZCEiIHRleHQgd2hlbiBpdCdzIGEgd2luLgpmdW5jIEd1ZXNzKGN1ciByZWFsbSwgZ3Vlc3Mgc3RyaW5nKSBzdHJpbmcgewoJZGlnaXRzLCBvayA6PSBwYXJzZUd1ZXNzKGd1ZXNzKQoJaWYgIW9rIHsKCQlwYW5pYygiZ3Vlc3MgbXVzdCBiZSA0IGRpZ2l0cywgMC05LCBubyByZXBlYXRzIChlLmcuIFwiMTk3MlwiKSIpCgl9CgoJcGxheWVyIDo9IGN1ci5QcmV2aW91cygpLkFkZHJlc3MoKS5TdHJpbmcoKQoJYXR0ZW1wdHMrKwoJYnVsbHMsIGNvd3MgOj0gc2NvcmUoc2VjcmV0LCBkaWdpdHMpCglhZGRIaXN0b3J5KGd1ZXNzTG9ne3BsYXllcjogcGxheWVyLCBndWVzczogZ3Vlc3MsIGJ1bGxzOiBidWxscywgY293czogY293c30pCgoJaWYgYnVsbHMgPT0gNCB7CgkJd29uUm91bmQgOj0gcm91bmQKCQl3b25BdHRlbXB0cyA6PSBhdHRlbXB0cwoJCWFkZFJlY29yZChyZWNvcmR7cGxheWVyOiBwbGF5ZXIsIGF0dGVtcHRzOiB3b25BdHRlbXB0cywgcm91bmQ6IHdvblJvdW5kfSkKCQlzdGFydE5ld1JvdW5kKCkKCQlyZXR1cm4gIioqKiBTT0xWRUQgKioqICIgKyBndWVzcyArICIgd2FzIGl0IOKAlCByb3VuZCAiICsgc3RyY29udi5JdG9hKHdvblJvdW5kKSArCgkJCSIgY3JhY2tlZCBpbiAiICsgc3RyY29udi5JdG9hKHdvbkF0dGVtcHRzKSArICIgZ3Vlc3Nlcy4gTmV3IHJvdW5kICIgKwoJCQlzdHJjb252Lkl0b2Eocm91bmQpICsgIiBoYXMgYmVndW4sIGdvb2QgbHVjayEiCgl9CgoJcmV0dXJuIGd1ZXNzICsgIiAtPiAiICsgc3RyY29udi5JdG9hKGJ1bGxzKSArICIgYnVsbHMsICIgKyBzdHJjb252Lkl0b2EoY293cykgKyAiIGNvd3MiCn0KCi8vIEdpdmVVcCByZXZlYWxzIHRoZSBjdXJyZW50IHNlY3JldCBhbmQgc3RhcnRzIGEgZnJlc2ggcm91bmQgd2l0aG91dAovLyBhd2FyZGluZyBhIGxlYWRlcmJvYXJkIHJlY29yZC4KZnVuYyBHaXZlVXAoY3VyIHJlYWxtKSBzdHJpbmcgewoJcmV2ZWFsZWQgOj0gZGlnaXRzVG9TdHJpbmcoc2VjcmV0KQoJb2xkUm91bmQgOj0gcm91bmQKCXN0YXJ0TmV3Um91bmQoKQoJcmV0dXJuICJyb3VuZCAiICsgc3RyY29udi5JdG9hKG9sZFJvdW5kKSArICIncyBjb2RlIHdhcyAiICsgcmV2ZWFsZWQgKwoJCSIg4oCUIHJvdW5kICIgKyBzdHJjb252Lkl0b2Eocm91bmQpICsgIiBpcyBsaXZlIG5vdy4iCn0KCmZ1bmMgZGlnaXRzVG9TdHJpbmcoZCBbNF1pbnQpIHN0cmluZyB7Cgl2YXIgc2Igc3RyaW5ncy5CdWlsZGVyCglmb3IgXywgdiA6PSByYW5nZSBkIHsKCQlzYi5Xcml0ZVN0cmluZyhzdHJjb252Lkl0b2EodikpCgl9CglyZXR1cm4gc2IuU3RyaW5nKCkKfQoKZnVuYyBSZW5kZXIocGF0aCBzdHJpbmcpIHN0cmluZyB7Cgl2YXIgc2Igc3RyaW5ncy5CdWlsZGVyCglzYi5Xcml0ZVN0cmluZygiIyBCdWxscyAmIENvd3NcblxuIikKCXNiLldyaXRlU3RyaW5nKCJPbmUgc2hhcmVkIHNlY3JldCA0LWRpZ2l0IGNvZGUgKG5vIHJlcGVhdGVkIGRpZ2l0cykuIENhbGwgYEd1ZXNzKFwiMTk3MlwiKWAgIikKCXNiLldyaXRlU3RyaW5nKCJ0byBnZXQgKipidWxscyoqIChyaWdodCBkaWdpdCwgcmlnaHQgc3BvdCkgYW5kICoqY293cyoqIChyaWdodCBkaWdpdCwgd3Jvbmcgc3BvdCkuICIpCglzYi5Xcml0ZVN0cmluZygiRmlyc3QgdG8gNCBidWxscyB3aW5zIHRoZSByb3VuZDsgYEdpdmVVcCgpYCByZXZlYWxzIHRoZSBjb2RlIGFuZCBzdGFydHMgb3Zlci5cblxuIikKCglzYi5Xcml0ZVN0cmluZygiIyMgUm91bmQgIiArIHN0cmNvbnYuSXRvYShyb3VuZCkgKyAiXG5cbiIpCglzYi5Xcml0ZVN0cmluZygiQXR0ZW1wdHMgc28gZmFyOiAqKiIgKyBzdHJjb252Lkl0b2EoYXR0ZW1wdHMpICsgIioqXG5cbiIpCgoJaWYgbGVuKGhpc3RvcnkpID09IDAgewoJCXNiLldyaXRlU3RyaW5nKCJfTm8gZ3Vlc3NlcyB5ZXQgdGhpcyByb3VuZCDigJQgYmUgdGhlIGZpcnN0Ll9cblxuIikKCX0gZWxzZSB7CgkJc2IuV3JpdGVTdHJpbmcoIiMjIyBSZWNlbnQgZ3Vlc3Nlc1xuXG4iKQoJCXNiLldyaXRlU3RyaW5nKCJ8IHBsYXllciB8IGd1ZXNzIHwgYnVsbHMgfCBjb3dzIHxcbnwtLS18LS0tfC0tLXwtLS18XG4iKQoJCWZvciBpIDo9IGxlbihoaXN0b3J5KSAtIDE7IGkgPj0gMDsgaS0tIHsKCQkJaCA6PSBoaXN0b3J5W2ldCgkJCXNiLldyaXRlU3RyaW5nKCJ8ICIgKyBzaG9ydEFkZHIoaC5wbGF5ZXIpICsgIiB8ICIgKyBoLmd1ZXNzICsgIiB8ICIgKwoJCQkJc3RyY29udi5JdG9hKGguYnVsbHMpICsgIiB8ICIgKyBzdHJjb252Lkl0b2EoaC5jb3dzKSArICIgfFxuIikKCQl9CgkJc2IuV3JpdGVTdHJpbmcoIlxuIikKCX0KCglzYi5Xcml0ZVN0cmluZygiIyMgTGVhZGVyYm9hcmQgKGZhc3Rlc3Qgc29sdmVzKVxuXG4iKQoJaWYgbGVuKHJlY29yZHMpID09IDAgewoJCXNiLldyaXRlU3RyaW5nKCJfTm9ib2R5IGhhcyBjcmFja2VkIGEgY29kZSB5ZXQuX1xuIikKCX0gZWxzZSB7CgkJc2IuV3JpdGVTdHJpbmcoInwgcmFuayB8IHBsYXllciB8IGF0dGVtcHRzIHwgcm91bmQgfFxufC0tLXwtLS18LS0tfC0tLXxcbiIpCgkJZm9yIGksIHIgOj0gcmFuZ2UgcmVjb3JkcyB7CgkJCXNiLldyaXRlU3RyaW5nKCJ8ICIgKyBzdHJjb252Lkl0b2EoaSsxKSArICIgfCAiICsgc2hvcnRBZGRyKHIucGxheWVyKSArICIgfCAiICsKCQkJCXN0cmNvbnYuSXRvYShyLmF0dGVtcHRzKSArICIgfCAiICsgc3RyY29udi5JdG9hKHIucm91bmQpICsgIiB8XG4iKQoJCX0KCX0KCglyZXR1cm4gc2IuU3RyaW5nKCkKfQoKZnVuYyBzaG9ydEFkZHIoYSBzdHJpbmcpIHN0cmluZyB7CglpZiBsZW4oYSkgPD0gMTIgewoJCXJldHVybiBhCgl9CglyZXR1cm4gYVs6Nl0gKyAi4oCmIiArIGFbbGVuKGEpLTQ6XQp9ChpLCgtnbm9tb2QudG9tbBI8bW9kdWxlID0gImduby5sYW5kL3IvbW91bC94L2RhaWx5L2J1bGxzY293cy92MCIKZ25vID0gIjAuOSIKIiMKEy9nbm8uTWVtUGFja2FnZVR5cGUSDAoKTVBVc2VyUHJvZBITCOCRoA8SDDEwMDAwMDB1Z25vdBqoAQo6ChMvdG0uUHViS2V5U2VjcDI1NmsxEiMKIQIAUko/jSwAOonEP0X+r2647UW246Nfe75rO0n/ni2DyBJA3KTidoNU1Baa8kcCR6frhgZOXu2VEym93l9lGHKkCdV4hCA8spZ7+1DmBCamVAWeNSXQozQcXvRhG2I9j3mV6xooZzFxcXFxcXFxcXFxcXFxcXFxcXFxcXFxcXFxcXFxcXFxcXFsdXV4ZSIKZ25vcHVibGlzaA==