Transaction executed successfully

Transaction Details

Inspect execution, participants, message data, gas usage, events and raw transaction data.

Transaction hash
CCF4E83BD838392D5779CDA7CF4D0B27E1FDD9BCDD243CFF7BFBF02A75241B46

Transaction overview

Status
Success
Execution completed
Block
#357687
Included in block
Message Type
m_addpkg
Primary message

Execution summary

TX INDEX
1
Position in block
GAS WANTED
19,883,276
Requested gas limit
GAS USED
15,294,798
Gas consumed
FEE
19884ugnot
Transaction fee

Participants

Sender
Package / Realm
Not available
Memo
None

Message

Message #1
m_addpkg
Caller
Arguments
g17cjym5e9hhws46lt6329pv2gtx2ay0503hgems6000000ugnot

Execution log

msg:0,success:true,log:,events:[]

Events

No events emitted by this transaction.

Raw encoded transaction

Cq1QCgwvdm0ubV9hZGRwa2cSnFAKKGcxN2NqeW01ZTloaHdzNDZsdDYzMjlwdjJndHgyYXkwNTAzaGdlbXMS4U8KBGdlbXMSO2duby5sYW5kL3IvZzE3Y2p5bTVlOWhod3M0Nmx0NjMyOXB2Mmd0eDJheTA1MDNoZ2Vtcy9nZW1zL3YxGmIKC2dub21vZC50b21sElNtb2R1bGUgPSAiZ25vLmxhbmQvci9nMTdjanltNWU5aGh3czQ2bHQ2MzI5cHYyZ3R4MmF5MDUwM2hnZW1zL2dlbXMvdjEiCmdubyA9ICIwLjkiChqTTgoGdjEuZ25vEohOLy8gUGFja2FnZSBnZW1zNnYyIChkZXBsb3llZCBhdCAuLi4vZ2VtczZ2Mi92NSwgd2lyZWQgdG8gLi4vc3RhYmxldjU7IHY0IHdpdGggdGhlIGdlbXNhcnQzZDIgYXJ0KSBpcyB0aGUgbWludC1tZWNoYW5pY3MKLy8gaGFsZiBvZiB0aGUgZ2VtczZ2MiBjYW5kaWRhdGUgZGVzaWduOiB0cmFpdCBhc3NlbWJseSBhbmQgY2hhaW4tCi8vIHJvc3RlciBtYW5hZ2VtZW50IGxpdmUgaGVyZSwgc2FtZSBhcyB0aGUgcmVhbCBnZW1zNi92MS4gVGhlIG9uZQovLyByZWFsIGRpZmZlcmVuY2UgaXMgd2hhdCBNaW50QXNzZW1ibGVkIGRvZXMgd2l0aCB0aGUgYXNzZW1ibGVkCi8vIHRyYWl0czogaXQgbmV2ZXIgcmVuZGVycyBhbnl0aGluZyAtLSBubyBnZW1zYXJ0LlJlbmRlclRva2VuU1ZHIGNhbGwKLy8gYXQgYWxsIC0tIGl0IGp1c3QgaGFuZHMgdGhlIHJhdyB0cmFpdCBmaWVsZHMgdG8gLi4vc3RhYmxlJ3MKLy8gUmVjb3JkTWludCwgd2hpY2ggd3JpdGVzIGEgY2hlYXAgc2VhbGVkIHBsYWNlaG9sZGVyLiBSZW5kZXJpbmcKLy8gaGFwcGVucyBsYXRlciwgbGF6aWx5LCBvbiBhIHJlYWQgKHNlZSAuLi9zdGFibGUncyBjdXJyZW50TWV0YWRhdGEpLgovLyBUaGlzIHJlYWxtIHN0aWxsIGltcG9ydHMgZ2Vtc2FydGZhYiwgYnV0IG9ubHkgZm9yIGl0cyByb3N0ZXIgaGVscGVyCi8vIGZ1bmN0aW9ucyAoU3RvbmVGb3JDaGFpbiwgQ29sb3JQYWxldHRlU2l6ZSwgU2hhcGVOYW1lcywgLi4uKSB1c2VkIHRvCi8vIHBpY2sgYSB2YWxpZCByYW5kb20gY29tYmluYXRpb24gLS0gbmV2ZXIgZm9yIHRoZSBleHBlbnNpdmUgcmVuZGVyCi8vIGl0c2VsZi4KcGFja2FnZSBnZW1zCgppbXBvcnQgKAoJImNoYWluIgoJImNoYWluL2JhbmtlciIKCSJjaGFpbi9ydW50aW1lIgoJdW5zYWZlcmVhbG0gImNoYWluL3J1bnRpbWUvdW5zYWZlIgoJImNyeXB0by9zaGEyNTYiCgkic3RyaW5ncyIKCglnZW1zYXJ0ICJnbm8ubGFuZC9wL2cxN2NqeW01ZTloaHdzNDZsdDYzMjlwdjJndHgyYXkwNTAzaGdlbXMvZ2Vtc2FydDNkMiIKCSJnbm8ubGFuZC9wL250L2dyYzcyMS92MCIKCXN0YWJsZSAiZ25vLmxhbmQvci9nMTdjanltNWU5aGh3czQ2bHQ2MzI5cHYyZ3R4MmF5MDUwM2hnZW1zL2dlbXMvc3RhYmxlIgoJImduby5sYW5kL3AvbnQvc2VxaWQvdjAiCgkiZ25vLmxhbmQvcC9udC91Zm10L3YwIgopCgp2YXIgKAoJY29sbGVjdGlvbk93bmVySGVyZSBhZGRyZXNzID0gImcxN2NqeW01ZTloaHdzNDZsdDYzMjlwdjJndHgyYXkwNTAzaGdlbXMiCgoJbWludGluZ09wZW4gPSB0cnVlCgoJbWF4TWludHNQZXJXYWxsZXQgaW50NjQgPSAwCgoJbmV4dElEIHNlcWlkLklECikKCi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tIE1pbnRpbmcgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqLwoKLy8gTWludEFzc2VtYmxlZDogYXNzZW1ibGVzIGEgZnJlc2ggcmFuZG9tIChjaGFpbiwgc2hhcGUsIGNvbG9yLCBtZXRhbCwKLy8gYWN0aXZlKSBjb21iaW5hdGlvbiwgdmVyaWZpZXMgcGF5bWVudCBhZ2FpbnN0IC4uL3N0YWJsZSdzIGRpc2NvdW50LQovLyBhZGp1c3RlZCBwcmljZSwgdGhlbiBoYW5kcyB0aGUgUkFXIHRyYWl0IGZpZWxkcyAobm90IGEgcmVuZGVyZWQKLy8gaW1hZ2UpIHRvIC4uL3N0YWJsZS5SZWNvcmRNaW50IC0tIHRoZSByZW5kZXIgaGFwcGVucyBsYXRlciwgbGF6aWx5LAovLyBvbiBhIHJlYWQuIFRoaXMgaXMgdGhlIHdob2xlIGZpeDogbm90aGluZyBzaGFwZS1kZXBlbmRlbnQgcnVucwovLyBpbnNpZGUgdGhpcyB0cmFuc2FjdGlvbiwgc28gaXRzIHJlYWwgZ2FzIGNvc3Qgc3RheXMgc21hbGwgYW5kCi8vIHVuaWZvcm0gcmVnYXJkbGVzcyBvZiB3aGljaCByYW5kb20gdHJhaXQgY29tYmluYXRpb24gZ2V0cyBkcmF3bgovLyAoY29uZmlybWVkIG9uIHRoZSB0aHJvd2F3YXkgcmV2ZWFscG9jIHNwaWtlIGJlZm9yZSB0aGlzIHJlYWwKLy8gc3BsaXQtcmVhbG0gdmVyc2lvbiB3YXMgYnVpbHQpLgpmdW5jIE1pbnRBc3NlbWJsZWQoY3VyIHJlYWxtLCB0byBhZGRyZXNzKSBncmM3MjEuVG9rZW5JRCB7CglpZiAhbWludGluZ09wZW4gewoJCXBhbmljKCJtaW50aW5nIGlzIGNsb3NlZCIpCgl9CglpZiBtYXhNaW50c1BlcldhbGxldCA+IDAgJiYgY2FsbGVyQWRkcmVzcygpICE9IGNvbGxlY3Rpb25Pd25lckhlcmUgJiYgc3RhYmxlLk1pbnRzQnlXYWxsZXQodG8pID49IG1heE1pbnRzUGVyV2FsbGV0IHsKCQlwYW5pYyh1Zm10LlNwcmludGYoIndhbGxldCAlcyBoYXMgYWxyZWFkeSByZWFjaGVkIHRoZSAlZC1taW50IGxpbWl0IGZvciB0aGlzIGNvbGxlY3Rpb24iLCB0by5TdHJpbmcoKSwgbWF4TWludHNQZXJXYWxsZXQpKQoJfQoKCWNhbGxlciA6PSBjYWxsZXJBZGRyZXNzKCkKCXJlcXVpcmVkUHJpY2UgOj0gc3RhYmxlLkVmZmVjdGl2ZVByaWNlKGNhbGxlcikKCWlmIHJlcXVpcmVkUHJpY2UgIT0gMCB7CgkJcnVudGltZS5Bc3NlcnRPcmlnaW5DYWxsKCkKCQlpZiAhdW5zYWZlcmVhbG0uUHJldmlvdXNSZWFsbSgpLklzVXNlckNhbGwoKSB7CgkJCXBhbmljKCJwYXltZW50IHZlcmlmaWNhdGlvbiByZXF1aXJlcyBhIGRpcmVjdCB1c2VyIGNhbGwiKQoJCX0KCQlnb3QgOj0gdW5zYWZlcmVhbG0uT3JpZ2luU2VuZCgpLkFtb3VudE9mKCJ1Z25vdCIpCgkJaWYgZ290ICE9IHJlcXVpcmVkUHJpY2UgewoJCQlwYW5pYyh1Zm10LlNwcmludGYoInBheW1lbnQgcmVxdWlyZWQ6IGV4YWN0bHkgJWQgdWdub3QsIGdvdCAlZCIsIHJlcXVpcmVkUHJpY2UsIGdvdCkpCgkJfQoJCWIgOj0gYmFua2VyLk5ld0JhbmtlcihiYW5rZXIuQmFua2VyVHlwZVJlYWxtU2VuZCwgY3VyKQoJCWIuU2VuZENvaW5zKGN1ci5BZGRyZXNzKCksIHN0YWJsZS5Pd25lcigpLCBjaGFpbi5Db2luc3t7RGVub206ICJ1Z25vdCIsIEFtb3VudDogZ290fX0pCgl9CgoJdHAsIGNvbWJvS2V5IDo9IGFzc2VtYmxlVW5pcXVlVHJhaXRzKCkKCgkvLyBwbGFpbiBudW1iZXJzIGZyb20gMSAoIzEsICMyLCAuLi4pLCBub3Qgc2VxaWQncyBwYWRkZWQgYmFzZS0zMgoJLy8gc3RyaW5nICgiMDAwMDAzcSIpOiB3aGF0IGNvbGxlY3RvcnMgYW5kIG1hcmtldHBsYWNlcyBleHBlY3QgdG8gcmVhZAoJdGlkIDo9IGdyYzcyMS5Ub2tlbklEKHVmbXQuU3ByaW50ZigiJWQiLCB1aW50NjQobmV4dElEKSsxKSkKCXN0YWJsZS5SZWNvcmRNaW50KGNyb3NzKGN1ciksIHRvLCBjYWxsZXIsIHRpZCwgdHAuQ2hhaW4sIHRwLlNoYXBlSWR4LCB0cC5Db2xvcklkeCwgdHAuTWV0YWwsIHRwLkFjdGl2ZSwgY29tYm9LZXksIHJhcml0eVRpZXIodHApKQoKCW5leHRJRC5OZXh0KCkKCglyZXR1cm4gdGlkCn0KCi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSB0cmFpdCBhc3NlbWJseSAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi8KCnR5cGUgdHJhaXRQcmVzZXQgc3RydWN0IHsKCUNoYWluICAgIHN0cmluZwoJU2hhcGVJZHggaW50CglDb2xvcklkeCBpbnQKCU1ldGFsICAgIHN0cmluZwoJQWN0aXZlICAgYm9vbAp9CgpmdW5jIHRyYWl0Q29tYm9LZXkoY2hhaW5OYW1lIHN0cmluZywgc2hhcGVJZHgsIGNvbG9ySWR4IGludCwgbWV0YWwgc3RyaW5nLCBhY3RpdmUgYm9vbCkgc3RyaW5nIHsKCXJldHVybiB1Zm10LlNwcmludGYoIiVzfCVkfCVkfCVzfCV0IiwgY2hhaW5OYW1lLCBzaGFwZUlkeCwgY29sb3JJZHgsIG1ldGFsLCBhY3RpdmUpCn0KCmNvbnN0IGFjdGl2ZVByb2JhYmlsaXR5ID0gMC4yCgp0eXBlIHBybmcgc3RydWN0IHsKCXNlZWQgc3RyaW5nCgluICAgIGludAp9CgpmdW5jIG5ld1BSTkcoc2VlZCBzdHJpbmcpICpwcm5nIHsgcmV0dXJuICZwcm5ne3NlZWQ6IHNlZWR9IH0KCmZ1bmMgKHAgKnBybmcpIG5leHQoKSB1aW50NjQgewoJcC5uKysKCW1hdGVyaWFsIDo9IHVmbXQuU3ByaW50ZigiJXM6JWQiLCBwLnNlZWQsIHAubikKCXN1bSA6PSBzaGEyNTYuU3VtMjU2KFtdYnl0ZShtYXRlcmlhbCkpCgl2YXIgdiB1aW50NjQKCWZvciBpIDo9IDA7IGkgPCA4OyBpKysgewoJCXYgPSB2PDw4IHwgdWludDY0KHN1bVtpXSkKCX0KCXJldHVybiB2Cn0KCmZ1bmMgKHAgKnBybmcpIGZsb2F0SW4obG8sIGhpIGZsb2F0NjQpIGZsb2F0NjQgewoJZnJhYyA6PSBmbG9hdDY0KHAubmV4dCgpJTEwMDAwMDApIC8gMTAwMDAwMC4wCglyZXR1cm4gbG8gKyBmcmFjKihoaS1sbykKfQoKZnVuYyAocCAqcHJuZykgaW50bihuIGludCkgaW50IHsKCWlmIG4gPD0gMSB7CgkJcmV0dXJuIDAKCX0KCXJldHVybiBpbnQocC5uZXh0KCkgJSB1aW50NjQobikpCn0KCmZ1bmMgcmFuZG9tVHJhaXRQcmVzZXQoYXR0ZW1wdCBpbnQpIHRyYWl0UHJlc2V0IHsKCW1hdGVyaWFsIDo9IHVmbXQuU3ByaW50ZigiYXNzZW1ibGU6JWQ6JWQ6JXM6JWQiLAoJCXJ1bnRpbWUuQ2hhaW5IZWlnaHQoKSwgdWludDY0KG5leHRJRCksIGNhbGxlckFkZHJlc3MoKS5TdHJpbmcoKSwgYXR0ZW1wdCkKCXJuZCA6PSBuZXdQUk5HKG1hdGVyaWFsKQoKCWNoYWluTmFtZSA6PSBjaGFpblJvc3RlcltybmQuaW50bihsZW4oY2hhaW5Sb3N0ZXIpKV0KCXN0b25lIDo9IGdlbXNhcnQuU3RvbmVGb3JDaGFpbihjaGFpbk5hbWUpCgkvLyBjb2xvdXIgYnkgdGhlIHN0b25lJ3MgcmVhbC13b3JsZCBvZGRzIChnZW1zYXJ0LmNvbG9yV2VpZ2h0cykKCWNvbG9ySWR4IDo9IGdlbXNhcnQuUGlja0NvbG9ySW5kZXgoc3RvbmUsIHJuZC5uZXh0KCkpCgkvLyBvbmx5IGN1dHMgdGhlIHN0b25lIGlzIHJlYWxseSBzb2xkIGluOyBwZWFybHMgaGF2ZSB0aGVpciBvd24gc2hhcGVzCgl2YXIgc2hhcGVJZHggaW50CglpZiBzdG9uZSA9PSAiUGVhcmwiIHsKCQlzaGFwZUlkeCA9IHJuZC5pbnRuKGxlbihnZW1zYXJ0LlBlYXJsU2hhcGVOYW1lcykpCgl9IGVsc2UgewoJCWN1dHMgOj0gZ2Vtc2FydC5DdXRzRm9yU3RvbmUoc3RvbmUpCgkJc2hhcGVJZHggPSBjdXRzW3JuZC5pbnRuKGxlbihjdXRzKSldCgl9CgltZXRhbCA6PSBnZW1zYXJ0Lk1ldGFsTmFtZXNbcm5kLmludG4obGVuKGdlbXNhcnQuTWV0YWxOYW1lcykpXQoJLy8gbWFpbm5ldCBuZXZlciBzdW5zZXRzOiBhbHdheXMgQWN0aXZlLCBzbyBtZXRhZGF0YSBtYXRjaGVzIHRoZSBpbWFnZQoJYWN0aXZlIDo9IHJuZC5mbG9hdEluKDAsIDEpIDwgYWN0aXZlUHJvYmFiaWxpdHkgfHwgZ2Vtc2FydC5DaGFpbkFsd2F5c0FjdGl2ZShjaGFpbk5hbWUpCgoJcmV0dXJuIHRyYWl0UHJlc2V0e0NoYWluOiBjaGFpbk5hbWUsIFNoYXBlSWR4OiBzaGFwZUlkeCwgQ29sb3JJZHg6IGNvbG9ySWR4LCBNZXRhbDogbWV0YWwsIEFjdGl2ZTogYWN0aXZlfQp9Cgpjb25zdCBtYXhBc3NlbWJsZUF0dGVtcHRzID0gMjAwCgpmdW5jIGFzc2VtYmxlVW5pcXVlVHJhaXRzKCkgKHRyYWl0UHJlc2V0LCBzdHJpbmcpIHsKCWZvciBhdHRlbXB0IDo9IDA7IGF0dGVtcHQgPCBtYXhBc3NlbWJsZUF0dGVtcHRzOyBhdHRlbXB0KysgewoJCXRwIDo9IHJhbmRvbVRyYWl0UHJlc2V0KGF0dGVtcHQpCgkJa2V5IDo9IHRyYWl0Q29tYm9LZXkodHAuQ2hhaW4sIHRwLlNoYXBlSWR4LCB0cC5Db2xvcklkeCwgdHAuTWV0YWwsIHRwLkFjdGl2ZSkKCQlpZiBzdGFibGUuSXNUcmFpdENvbWJvQXZhaWxhYmxlKGtleSkgewoJCQlyZXR1cm4gdHAsIGtleQoJCX0KCX0KCXBhbmljKCJjb3VsZCBub3QgZmluZCBhbiB1bnVzZWQgdHJhaXQgY29tYmluYXRpb24gYWZ0ZXIgbWFueSBhdHRlbXB0cyAtLSB0aGUgY29sbGVjdGlvbiBtYXkgYmUgZnVsbHkgbWludGVkIikKfQoKZnVuYyBJc1RyYWl0Q29tYm9BdmFpbGFibGUoY2hhaW5OYW1lIHN0cmluZywgc2hhcGVJZHgsIGNvbG9ySWR4IGludCwgbWV0YWwgc3RyaW5nLCBhY3RpdmUgYm9vbCkgYm9vbCB7CglrZXkgOj0gdHJhaXRDb21ib0tleShjaGFpbk5hbWUsIHNoYXBlSWR4LCBjb2xvcklkeCwgbWV0YWwsIGFjdGl2ZSkKCXJldHVybiBzdGFibGUuSXNUcmFpdENvbWJvQXZhaWxhYmxlKGtleSkKfQoKZnVuYyBNYXhVbmlxdWVUcmFpdENvbWJvcygpIGludDY0IHsKCXZhciB0b3RhbCBpbnQ2NAoJZm9yIF8sIGNoYWluTmFtZSA6PSByYW5nZSBjaGFpblJvc3RlciB7CgkJc3RvbmUgOj0gZ2Vtc2FydC5TdG9uZUZvckNoYWluKGNoYWluTmFtZSkKCQlzaGFwZUNvdW50IDo9IGxlbihnZW1zYXJ0LkN1dHNGb3JTdG9uZShzdG9uZSkpCgkJaWYgc3RvbmUgPT0gIlBlYXJsIiB7CgkJCXNoYXBlQ291bnQgPSBsZW4oZ2Vtc2FydC5QZWFybFNoYXBlTmFtZXMpCgkJfQoJCXN0YXRlcyA6PSBpbnQ2NCgyKSAvLyBhY3RpdmUgb3Igc3Vuc2V0CgkJaWYgZ2Vtc2FydC5DaGFpbkFsd2F5c0FjdGl2ZShjaGFpbk5hbWUpIHsKCQkJc3RhdGVzID0gMQoJCX0KCQl0b3RhbCArPSBpbnQ2NChnZW1zYXJ0LkNvbG9yUGFsZXR0ZVNpemUoc3RvbmUpKSAqIGludDY0KHNoYXBlQ291bnQpICogc3RhdGVzCgl9CglyZXR1cm4gdG90YWwgKiBpbnQ2NChsZW4oZ2Vtc2FydC5NZXRhbE5hbWVzKSkKfQoKLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gcmFyaXR5IC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovCgovLyBDb21ib1Byb2JhYmlsaXR5IGlzIHRoZSBjaGFuY2UgKDAuLjEpIHRoYXQgb25lIG1pbnQgZHJhd3MgdGhpcyBwaWVjZSdzCi8vIGxvb2s6IGl0cyBzdG9uZSAodGhlIHNoYXJlIG9mIHJvc3RlciBjaGFpbnMgdGhhdCBjYXJyeSBpdCksIGl0cyBjdXQKLy8gKGV2ZW4gYW1vbmcgdGhlIHN0b25lJ3MgY3V0cyksIGl0cyBjb2xvdXIgKHRoZSBzdG9uZSdzIGNvbG91ciBvZGRzKSBhbmQKLy8gaXRzIHN0YXR1cyAoMjAlIGFjdGl2ZTsgYWx3YXlzIGFjdGl2ZSBvbiBtYWlubmV0KS4gUmluZyBtZXRhbCBhbmQgdGhlCi8vIGNoYWluJ3Mgb3duIG5hbWUgYXJlIGVxdWFsbHkgbGlrZWx5IGZvciBldmVyeSBwaWVjZSwgc28gdGhleSBsZWF2ZSB0aGUKLy8gcmFua2luZyB1bmNoYW5nZWQgYW5kIGFyZSBsZWZ0IG91dC4KZnVuYyBDb21ib1Byb2JhYmlsaXR5KGNoYWluTmFtZSBzdHJpbmcsIHNoYXBlSWR4LCBjb2xvcklkeCBpbnQsIGFjdGl2ZSBib29sKSBmbG9hdDY0IHsKCXN0b25lIDo9IGdlbXNhcnQuU3RvbmVGb3JDaGFpbihjaGFpbk5hbWUpCglzYW1lIDo9IDAKCWZvciBfLCBjIDo9IHJhbmdlIGNoYWluUm9zdGVyIHsKCQlpZiBnZW1zYXJ0LlN0b25lRm9yQ2hhaW4oYykgPT0gc3RvbmUgewoJCQlzYW1lKysKCQl9Cgl9CglwIDo9IGZsb2F0NjQoc2FtZSkgLyBmbG9hdDY0KGxlbihjaGFpblJvc3RlcikpCglpZiBzdG9uZSA9PSAiUGVhcmwiIHsKCQlwIC89IGZsb2F0NjQobGVuKGdlbXNhcnQuUGVhcmxTaGFwZU5hbWVzKSkKCX0gZWxzZSB7CgkJcCAvPSBmbG9hdDY0KGxlbihnZW1zYXJ0LkN1dHNGb3JTdG9uZShzdG9uZSkpKQoJfQoJcCAqPSBnZW1zYXJ0LkNvbG9yUHJvYmFiaWxpdHkoc3RvbmUsIGNvbG9ySWR4KQoJaWYgIWdlbXNhcnQuQ2hhaW5BbHdheXNBY3RpdmUoY2hhaW5OYW1lKSB7CgkJaWYgYWN0aXZlIHsKCQkJcCAqPSBhY3RpdmVQcm9iYWJpbGl0eQoJCX0gZWxzZSB7CgkJCXAgKj0gMSAtIGFjdGl2ZVByb2JhYmlsaXR5CgkJfQoJfQoJcmV0dXJuIHAKfQoKLy8gcmFyaXR5VGllcnMgYXJlIHVwcGVyIGJvdW5kcyBvbiBDb21ib1Byb2JhYmlsaXR5LCByYXJlc3QgZmlyc3QuIFNldAovLyAoMjAyNi0wOS0yNSkgZnJvbSB0aGUgZnVsbCBkaXN0cmlidXRpb24gb2YgYWxsIDY5MSBsb29rcyBvbiB0aGUKLy8gMTgtY2hhaW4gcm9zdGVyLCBlYWNoIGJvdW5kIHRoZSBtaWRwb2ludCBiZXR3ZWVuIHR3byBuZWlnaGJvdXJpbmcKLy8gcHJvYmFiaWxpdHkgdmFsdWVzLCBzbyBubyB0d28gZXF1YWxseSBsaWtlbHkgbG9va3MgZmFsbCBvbiBkaWZmZXJlbnQKLy8gc2lkZXMgYW5kIGZsb2F0IHJvdW5kaW5nIGNhbm5vdCBtb3ZlIG9uZS4gU2hhcmVzIG9mIG1pbnRzOgovLyAgIExlZ2VuZGFyeSAxLjMlLCBFcGljIDMuNSUsIFJhcmUgMTEuMSUsIFVuY29tbW9uIDI1LjAlLCBDb21tb24gNTkuMSUuCi8vIEEgdGllciBpcyBmaXhlZCBhdCBtaW50IChzdG9yZWQgd2l0aCB0aGUgdG9rZW4pOyBhZGRpbmcgYSBjaGFpbiBsYXRlcgovLyBvbmx5IGNoYW5nZXMgdGhlIG9kZHMgb2YgbmV3IG1pbnRzLCBuZXZlciBhbiBleGlzdGluZyB0b2tlbidzIHRpZXIuCnZhciByYXJpdHlUaWVycyA9IFtdc3RydWN0IHsKCW5hbWUgc3RyaW5nCgltYXhQIGZsb2F0NjQKfXsKCXsiTGVnZW5kYXJ5IiwgMC4wMDAxMjcyMzM4Nzd9LAoJeyJFcGljIiwgMC4wMDA0MjM0NjU0MjN9LAoJeyJSYXJlIiwgMC4wMDA3NTQ5ODU3NTV9LAoJeyJVbmNvbW1vbiIsIDAuMDAzNjQ5NTcyNjV9LAp9CgpmdW5jIHJhcml0eVRpZXIodHAgdHJhaXRQcmVzZXQpIHN0cmluZyB7CglwIDo9IENvbWJvUHJvYmFiaWxpdHkodHAuQ2hhaW4sIHRwLlNoYXBlSWR4LCB0cC5Db2xvcklkeCwgdHAuQWN0aXZlKQoJZm9yIF8sIHQgOj0gcmFuZ2UgcmFyaXR5VGllcnMgewoJCWlmIHAgPD0gdC5tYXhQIHsKCQkJcmV0dXJuIHQubmFtZQoJCX0KCX0KCXJldHVybiAiQ29tbW9uIgp9CgovKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSBDaGFpbiByb3N0ZXIgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqLwoKdmFyIGNoYWluUm9zdGVyID0gW11zdHJpbmd7CgkiVEVTVC0xIiwgIlRFU1QtMiIsICJURVNULTMiLCAiVEVTVC00IiwgIlRFU1QtNSIsICJURVNULTYiLCAiVEVTVC03IiwKCSJURVNULTgiLCAiVEVTVC05IiwgIlRFU1QtMTAiLCAiVEVTVC0xMSIsICJURVNULTEyIiwgIlRFU1QtMTMiLAoJIlRPUEFaLTEiLCAiU0FQUEhJUkUtMSIsICJQRUFSTC0xIiwgIkJFVEFORVQiLCAiR05PTEFORC0xIiwKfQoKZnVuYyBBZGRDaGFpbihjdXIgcmVhbG0sIGNoYWluTmFtZSBzdHJpbmcpIHsKCWFzc2VydE93bmVyKCkKCWlmIGNoYWluTmFtZSA9PSAiIiB7CgkJcGFuaWMoImNoYWluIG5hbWUgbXVzdCBub3QgYmUgZW1wdHkiKQoJfQoJZm9yIF8sIGMgOj0gcmFuZ2UgY2hhaW5Sb3N0ZXIgewoJCWlmIGMgPT0gY2hhaW5OYW1lIHsKCQkJcGFuaWMoImNoYWluIGFscmVhZHkgaW4gdGhlIHJvc3RlciIpCgkJfQoJfQoJY2hhaW5Sb3N0ZXIgPSBhcHBlbmQoY2hhaW5Sb3N0ZXIsIGNoYWluTmFtZSkKfQoKZnVuYyBDaGFpblJvc3RlclNpemUoKSBpbnQ2NCB7IHJldHVybiBpbnQ2NChsZW4oY2hhaW5Sb3N0ZXIpKSB9CmZ1bmMgQ2hhaW5Sb3N0ZXJDU1YoKSBzdHJpbmcgeyByZXR1cm4gc3RyaW5ncy5Kb2luKGNoYWluUm9zdGVyLCAiOyIpIH0KCi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tIE93bmVyIGNvbnRyb2xzIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovCgpmdW5jIGNhbGxlckFkZHJlc3MoKSBhZGRyZXNzIHsKCXJldHVybiB1bnNhZmVyZWFsbS5QcmV2aW91c1JlYWxtKCkuQWRkcmVzcygpCn0KCmZ1bmMgYXNzZXJ0T3duZXIoKSB7CglpZiBjYWxsZXJBZGRyZXNzKCkgIT0gY29sbGVjdGlvbk93bmVySGVyZSB7CgkJcGFuaWMoInVuYXV0aG9yaXplZDogY2FsbGVyIGlzIG5vdCB0aGUgY29sbGVjdGlvbiBvd25lciIpCgl9Cn0KCmZ1bmMgTWludGluZ09wZW4oKSBib29sIHsgcmV0dXJuIG1pbnRpbmdPcGVuIH0KCmZ1bmMgU2V0TWludGluZ09wZW4oY3VyIHJlYWxtLCBvcGVuIGJvb2wpIHsKCWFzc2VydE93bmVyKCkKCW1pbnRpbmdPcGVuID0gb3BlbgoJc3RhYmxlLlJlcG9ydE1pbnRpbmdPcGVuKGNyb3NzKGN1ciksIG9wZW4pCn0KCmZ1bmMgTWF4TWludHNQZXJXYWxsZXQoKSBpbnQ2NCB7IHJldHVybiBtYXhNaW50c1BlcldhbGxldCB9CgpmdW5jIFNldE1heE1pbnRzUGVyV2FsbGV0KGN1ciByZWFsbSwgbWF4IGludDY0KSB7Cglhc3NlcnRPd25lcigpCglpZiBtYXggPCAwIHsKCQlwYW5pYygibWF4IG11c3QgYmUgbm9uLW5lZ2F0aXZlICgwID0gdW5saW1pdGVkKSIpCgl9CgltYXhNaW50c1BlcldhbGxldCA9IG1heAoJc3RhYmxlLlJlcG9ydE1heE1pbnRzUGVyV2FsbGV0KGNyb3NzKGN1ciksIG1heCkKfQoKZnVuYyBNaW50c0J5V2FsbGV0KG93bmVyIGFkZHJlc3MpIGludDY0IHsKCXJldHVybiBzdGFibGUuTWludHNCeVdhbGxldChvd25lcikKfQoiIgoTL2duby5NZW1QYWNrYWdlVHlwZRILCglNUFVzZXJBbGwiDDYwMDAwMDB1Z25vdBIRCJiU+xISCjE5ODg0dWdub3QaqAEKOgoTL3RtLlB1YktleVNlY3AyNTZrMRIjCiECws3es/r95y15On9t+yR960SgmrC7RTiHf4Rcwnc1djQSQOZ24914aqOC8D9LNriotHXakrIzIOkHhcwz7w5Ue20WAuTCK1tCRdLEAyKxeyLzTyUCUXpujqqe192nyAdUijAaKGcxcXFxcXFxcXFxcXFxcXFxcXFxcXFxcXFxcXFxcXFxcXFxbHV1eGU=

Raw transaction data

Raw JSON data