Transaction executed successfully
Transaction Details
Inspect execution, participants, message data, gas usage, events and raw transaction data.
Transaction hash
B918B1C70BDF76153C8FC55E314D7844429447F105DB0275BD59BC29DD0F9755
Transaction overview
Execution summary
TX INDEX
0
Position in block
GAS WANTED
30,000,000
Requested gas limit
GAS USED
15,957,597
Gas consumed
FEE
60000ugnot
Transaction fee
Participants
Message
Message #1
m_addpkg
Arguments
g136j0m08pkm2lwwde9dmlx8uee26llent9s5cpf5000000ugnot
Execution log
msg:0,success:true,log:,events:[]
Events
No events emitted by this transaction.
Raw encoded transaction
Cr0+Cgwvdm0ubV9hZGRwa2cSrD4KKGcxMzZqMG0wOHBrbTJsd3dkZTlkbWx4OHVlZTI2bGxlbnQ5czVjcGYS8T0KE21lbWJhX21hcmtldF9jb25maWcSJmduby5sYW5kL3Ivc2FtY3Jldy9tZW1iYV9tYXJrZXRfY29uZmlnGosTCglhZG1pbi5nbm8S/RIvLyBBZG1pbiBvcGVyYXRpb25zIOKAlCBEQU8tZ2F0ZWQsIHdpdGggYSAyLXN0ZXAgYWRtaW4gaGFuZG9mZiBhbmQgYSBoYXJkIGZlZSBjZWlsaW5nLgovLyBUaGVyZSBpcyBpbnRlbnRpb25hbGx5IE5PIFBhdXNlKCkgaGVyZSAoc2VlIGNvbmZpZy5nbm8gU0FGRVRZIG5vdGUpOiBwYXVzaW5nIHRoZQovLyBmZWUgc3BpbmUgd291bGQgYnJpY2sgZXZlcnkgZW5naW5lIGF0IG9uY2UuIFBlci1lbmdpbmUgUGF1c2UoKSBpcyB0aGUga2lsbCBzd2l0Y2guCnBhY2thZ2UgbWVtYmFfbWFya2V0X2NvbmZpZwoKaW1wb3J0ICgKCSJzdHJjb252IgoKCSJjaGFpbiIKKQoKZnVuYyBpdG9hKG4gaW50NjQpIHN0cmluZyB7IHJldHVybiBzdHJjb252LkZvcm1hdEludChuLCAxMCkgfQoKZnVuYyBhc3NlcnRBZG1pbigpIHsKCWlmIGNhbGxlcigpICE9IGFkbWluIHsKCQlwYW5pYygiYWRtaW4gb25seSIpCgl9Cn0KCi8vIFNldEZlZUJQUyBzZXRzIGEgbGFuZSdzIHByb3RvY29sIGZlZSBpbiBiYXNpcyBwb2ludHMsIGNsYW1wZWQgdG8gWzAsIE1heEZlZUJQU10uCi8vIEEgdmFsdWUgYWJvdmUgdGhlIDUlIGNlaWxpbmcgaXMgcmVqZWN0ZWQgc28gYSBtaXNjb25maWd1cmF0aW9uIGNhbiBuZXZlciBvdmVyY2hhcmdlLgpmdW5jIFNldEZlZUJQUyhjdXIgcmVhbG0sIGxhbmUgc3RyaW5nLCBicHMgaW50NjQpIHsKCWFzc2VydEFkbWluKCkKCWlmIGxhbmUgPT0gIiIgewoJCXBhbmljKCJlbXB0eSBsYW5lIikKCX0KCWlmIGJwcyA8IDAgfHwgYnBzID4gTWF4RmVlQlBTIHsKCQlwYW5pYygiZmVlQlBTIG91dCBvZiByYW5nZSIpCgl9CglmZWVCeUxhbmUuU2V0KGxhbmUsIGJwcykKCWNoYWluLkVtaXQoIkZlZUJQU0NoYW5nZWQiLCAibGFuZSIsIGxhbmUsICJicHMiLCBpdG9hKGJwcykpCn0KCi8vIFNldFRyZWFzdXJ5IHJlcG9pbnRzIHdoZXJlIGV2ZXJ5IGxhbmUncyBwcm90b2NvbCBmZWUgZmxvd3MuCmZ1bmMgU2V0VHJlYXN1cnkoY3VyIHJlYWxtLCBhZGRyIGFkZHJlc3MpIHsKCWFzc2VydEFkbWluKCkKCWlmIGFkZHIgPT0gIiIgewoJCXBhbmljKCJlbXB0eSB0cmVhc3VyeSIpCgl9Cgl0cmVhc3VyeSA9IGFkZHIKCWNoYWluLkVtaXQoIlRyZWFzdXJ5Q2hhbmdlZCIsICJ0cmVhc3VyeSIsIGFkZHIuU3RyaW5nKCkpCn0KCi8vIFRyYW5zZmVyQWRtaW4gcHJvcG9zZXMgYSBuZXcgYWRtaW4gKHRoZSBtZW1iYV9kYW8gZXhlY3V0b3IpLiBUaGUgMi1zdGVwIGhhbmRvZmYKLy8gcmVxdWlyZXMgdGhlIG5ldyBhZG1pbiB0byBBY2NlcHRBZG1pbiwgc28gYSB0cmFuc2ZlciB0byBhIHdyb25nIG9yIHVuY29udHJvbGxlZAovLyBhZGRyZXNzIGNhbm5vdCBsb2NrIHRoZSByZWFsbS4KZnVuYyBUcmFuc2ZlckFkbWluKGN1ciByZWFsbSwgbmV3QWRtaW4gYWRkcmVzcykgewoJYXNzZXJ0QWRtaW4oKQoJaWYgbmV3QWRtaW4gPT0gIiIgewoJCXBhbmljKCJlbXB0eSBhZG1pbiIpCgl9CglpZiAhbmV3QWRtaW4uSXNWYWxpZCgpIHsKCQlwYW5pYygiaW52YWxpZCBhZGRyZXNzOiAiICsgbmV3QWRtaW4uU3RyaW5nKCkpCgl9CglpZiBuZXdBZG1pbiA9PSBhZG1pbiB7CgkJcGFuaWMoIm5ld0FkbWluIGlzIHRoZSBjdXJyZW50IGFkbWluIikKCX0KCXBlbmRpbmdBZG1pbiA9IG5ld0FkbWluCgljaGFpbi5FbWl0KCJBZG1pblRyYW5zZmVyUHJvcG9zZWQiLCAicGVuZGluZyIsIG5ld0FkbWluLlN0cmluZygpKQp9CgovLyBDYW5jZWxBZG1pblRyYW5zZmVyIHdpdGhkcmF3cyBhIHN0YWdlZCBoYW5kb2ZmLiBBZG1pbiBvbmx5LgpmdW5jIENhbmNlbEFkbWluVHJhbnNmZXIoY3VyIHJlYWxtKSB7Cglhc3NlcnRBZG1pbigpCglpZiBwZW5kaW5nQWRtaW4gPT0gIiIgewoJCXBhbmljKCJubyBwZW5kaW5nIGFkbWluIikKCX0KCWNhbmNlbGxlZCA6PSBwZW5kaW5nQWRtaW4KCXBlbmRpbmdBZG1pbiA9ICIiCgljaGFpbi5FbWl0KCJBZG1pblRyYW5zZmVyQ2FuY2VsbGVkIiwgInBlbmRpbmciLCBjYW5jZWxsZWQuU3RyaW5nKCkpCn0KCi8vIEFjY2VwdEFkbWluIGNvbXBsZXRlcyB0aGUgaGFuZG9mZi4gT25seSB0aGUgcGVuZGluZyBhZG1pbiBjYW4gY2FsbCBpdC4KZnVuYyBBY2NlcHRBZG1pbihjdXIgcmVhbG0pIHsKCWlmIHBlbmRpbmdBZG1pbiA9PSAiIiB7CgkJcGFuaWMoIm5vIHBlbmRpbmcgYWRtaW4iKQoJfQoJaWYgY2FsbGVyKCkgIT0gcGVuZGluZ0FkbWluIHsKCQlwYW5pYygibm90IHBlbmRpbmcgYWRtaW4iKQoJfQoJYWRtaW4gPSBwZW5kaW5nQWRtaW4KCXBlbmRpbmdBZG1pbiA9ICIiCgljaGFpbi5FbWl0KCJBZG1pbkFjY2VwdGVkIiwgImFkbWluIiwgYWRtaW4uU3RyaW5nKCkpCn0KCi8vIEdldFBlbmRpbmdBZG1pbiByZXR1cm5zIHRoZSBzdGFnZWQgc3VjY2Vzc29yLCBvciB0aGUgZW1wdHkgYWRkcmVzcy4KZnVuYyBHZXRQZW5kaW5nQWRtaW4oKSBhZGRyZXNzIHsgcmV0dXJuIHBlbmRpbmdBZG1pbiB9ChqoIQoKY29uZmlnLmdubxKZIS8vIFBhY2thZ2UgbWVtYmFfbWFya2V0X2NvbmZpZyBpcyB0aGUgREFPLW93bmVkIGZlZSBzcGluZSBmb3IgdGhlIE1lbWJhIG1hcmtldHBsYWNlLgovLyBJdCBpcyB0aGUgc2luZ2xlIHNvdXJjZSBvZiB0cnV0aCBmb3IgdGhlIHBlci1sYW5lIHByb3RvY29sIGZlZSAoYmFzaXMgcG9pbnRzKSBhbmQKLy8gdGhlIHRyZWFzdXJ5IHRoYXQgcmVjZWl2ZXMgaXQuIEV2ZXJ5IHRyYWRlIGVuZ2luZSAoTkZULCBzZXJ2aWNlcywgdG9rZW4tT1RDLCBhZ2VudHMpCi8vIHJlYWRzIEdldEZlZUJQUyhsYW5lKSArIEdldFRyZWFzdXJ5KCkgYXQgc2V0dGxlbWVudCwgc28gdGhlIERBTyBzZXRzIHRoZSByYXRlIE9OQ0UKLy8gYW5kIGl0IGFwcGxpZXMgZXZlcnl3aGVyZSDigJQgdGhhdCBzaGFyZWQgcmVhZCBpcyB3aGF0IG1ha2VzIHRoZSBsYW5lcyBvbmUgbWFya2V0cGxhY2UuCi8vCi8vIFNBRkVUWSAocGFuZWwgZmluZGluZyBDMSk6IHRoZSByZWFkIGdldHRlcnMgYXJlIFBVUkUgYW5kIE5PTi1GQUlMSU5HIOKAlCB0aGV5IG5ldmVyCi8vIHBhbmljLCBhbmQgdGhlcmUgaXMgaW50ZW50aW9uYWxseSBOTyBQYXVzZSgpLiBBIHBlci10cmFkZSBjcm9zcy1yZWFsbSByZWFkIHRoYXQKLy8gY291bGQgZmFpbCBvciBoYWx0IHdvdWxkIGJlIGEgc2luZ2xlIHBvaW50IG9mIGZhaWx1cmUgYWJsZSB0byBicmljayBldmVyeSBlbmdpbmUgYXQKLy8gb25jZTsgaW5zdGVhZCBhbiBlbmdpbmUgYWx3YXlzIGdldHMgYSB1c2FibGUsIGJvdW5kZWQgdmFsdWUgaGVyZSBhbmQgY2xhbXBzIGxvY2FsbHksCi8vIHdoaWxlIGVhY2ggZW5naW5lIGtlZXBzIGl0cyBPV04gUGF1c2UoKSBhcyB0aGUgcmVhbCBraWxsIHN3aXRjaC4gVGhlIGZlZSBpcyBib3VuZGVkCi8vIHRvIFswLCBNYXhGZWVCUFNdIG9uIHdyaXRlLCBzbyBhIHJlYWRlciBjYW4gdHJ1c3QgdGhlIGJvdW5kIHdpdGhvdXQgcmUtY2hlY2tpbmcuCnBhY2thZ2UgbWVtYmFfbWFya2V0X2NvbmZpZwoKaW1wb3J0ICgKCSJjaGFpbiIKCSJjaGFpbi9ydW50aW1lL3Vuc2FmZSIKCgkiZ25vLmxhbmQvcC9zYW1jcmV3L2F2bCIKKQoKLy8gTm8gYXV0aG9yaXR5IGFkZHJlc3MgaXMgY29tcGlsZWQgaW4uIFRoZSBwdWJsaXNoaW5nIHRyYW5zYWN0aW9uJ3Mgc2lnbmVyIChvbgovLyBnbm9sYW5kLTEgdGhlIHNhbWNyZXcgbmFtZXNwYWNlIG11bHRpc2lnLCB0aGUgc3RhbXBlZCBjcmVhdG9yIGF0IGVuYWJsZSB0aW1lKQovLyBpcyBzZWVkZWQgYXMgYWRtaW4gQU5EIHRyZWFzdXJ5IGF0IHBhY2thZ2UgbG9hZDsgdGhlIERBTyB0YWtlcyBvdmVyIHRocm91Z2ggdGhlCi8vIHR3by1zdGVwIFRyYW5zZmVyQWRtaW4vQWNjZXB0QWRtaW4gYW5kIHJlcG9pbnRzIGZlZXMgd2l0aCBTZXRUcmVhc3VyeS4KLy8KLy8gVW5kZXIgYGdubyB0ZXN0YCBldmVyeSBwYWNrYWdlIGlzIGluaXRpYWxpemVkIHdpdGggYW4gZW1wdHkgb3JpZ2luIGNhbGxlciwgYW5kCi8vIHRoaXMgcmVhbG0gaXMgcmVhZCBjcm9zcy1yZWFsbSBieSBldmVyeSBlbmdpbmUncyB0ZXN0IHN1aXRlLCBzbyBhbiBlbXB0eSBzZWVkCi8vIHdvdWxkIGxlYXZlIHRoZSBlbmdpbmVzJyBmZWUtc3BpbmUgdGVzdHMgbm90aGluZyB0byBhc3NlcnQgYWdhaW5zdC4gSW4gdGhhdAovLyBvbmUgY2FzZSB0aGUgc2VlZCBiZWNvbWVzIHVuc2VlZGVkQXV0aG9yaXR5OiBhIHN1Yi1hZGRyZXNzIG9mIHRoaXMgcmVhbG0gdGhhdAovLyBubyBjb2RlIGV2ZXIgbWludHMsIHNvIG5vIG9uLWNoYWluIGNhbGxlciBjYW4gZXZlciBiZSBpdCwgd2hpbGUgYSB0ZXN0IGNhbgovLyBpbXBlcnNvbmF0ZSBpdCB3aXRoIHRlc3RpbmcuTmV3VXNlclJlYWxtLiBPbiBjaGFpbiB0aGUgb3JpZ2luIGNhbGxlciBhdCBsb2FkCi8vIGlzIG5ldmVyIGVtcHR5LCBzbyB0aGlzIGJyYW5jaCBpcyB1bnJlYWNoYWJsZSB0aGVyZS4KCmNvbnN0ICgKCS8vIE1heEZlZUJQUyBpcyB0aGUgNSUgaGFyZCBjZWlsaW5nLiBTZXRGZWVCUFMgcmVqZWN0cyBhbnl0aGluZyBhYm92ZSBpdCwgc28gYQoJLy8gZmF0LWZpbmdlciBvciBhIGNvbXByb21pc2VkIHByb3Bvc2FsIGNhbiBuZXZlciBtYWtlIGEgbGFuZSBvdmVyY2hhcmdlLgoJTWF4RmVlQlBTID0gaW50NjQoNTAwKQoJLy8gRGVmYXVsdEZlZUJQUyBpcyByZXR1cm5lZCBmb3IgYW4gdW5zZXQvdW5rbm93biBsYW5lIHNvIGVuZ2luZXMgYWx3YXlzIGdldCBhCgkvLyB1c2FibGUgdmFsdWUgKDIuMCUpLgoJRGVmYXVsdEZlZUJQUyA9IGludDY0KDIwMCkKKQoKdmFyICgKCWFkbWluICAgICAgICBhZGRyZXNzCglwZW5kaW5nQWRtaW4gYWRkcmVzcwoJdHJlYXN1cnkgICAgIGFkZHJlc3MKCWZlZUJ5TGFuZSAgICA9IGF2bC5OZXdUcmVlKCkgLy8gbGFuZSBzdHJpbmcgLT4gaW50NjQgYnBzCikKCi8vIHVuc2VlZGVkQXV0aG9yaXR5IGlzIHRoZSB0ZXN0LVZNIHN0YW5kLWluIGZvciBhIHB1Ymxpc2hlcjsgc2VlIHRoZSBub3RlIGFib3ZlLgp2YXIgdW5zZWVkZWRBdXRob3JpdHkgPSBjaGFpbi5EZXJpdmVQa2dTdWJBZGRyKCJnbm8ubGFuZC9yL3NhbWNyZXcvbWVtYmFfbWFya2V0X2NvbmZpZyIsICJ1bnNlZWRlZCIpCgovLyBzZWVkQXV0aG9yaXR5IG1ha2VzIHRoZSBwdWJsaXNoZXIgYWRtaW4gYW5kIHRyZWFzdXJ5LiBJdCBydW5zIG9uY2UgYXQgbG9hZC4KZnVuYyBzZWVkQXV0aG9yaXR5KHB1Ymxpc2hlciBhZGRyZXNzKSB7CglpZiBwdWJsaXNoZXIgPT0gIiIgewoJCXB1Ymxpc2hlciA9IHVuc2VlZGVkQXV0aG9yaXR5Cgl9CglhZG1pbiA9IHB1Ymxpc2hlcgoJcGVuZGluZ0FkbWluID0gIiIKCXRyZWFzdXJ5ID0gcHVibGlzaGVyCn0KCmZ1bmMgaW5pdCgpIHsKCXNlZWRBdXRob3JpdHkodW5zYWZlLk9yaWdpbkNhbGxlcigpKQoJLy8gU2VlZCB0aGUgbGF1bmNoIGxhbmVzLiAiYWdlbnQiIGlzIGludGVudGlvbmFsbHkgdW5zZXQgKFRCRCkgYW5kIHJlc29sdmVzIHRvCgkvLyBEZWZhdWx0RmVlQlBTIHVudGlsIHRoZSBEQU8gc2V0cyBpdCB3aGVuIHRoYXQgbGFuZSBpcyBidWlsdC4KCWZlZUJ5TGFuZS5TZXQoIm5mdCIsIGludDY0KDIwMCkpICAgICAvLyAyLjAlCglmZWVCeUxhbmUuU2V0KCJzZXJ2aWNlIiwgaW50NjQoMjAwKSkgLy8gMi4wJSByZWxlYXNlIGZlZSAodGhlIDUlIGNhbmNlbCBmZWUgaXMgZXNjcm93LWludGVybmFsIOKGkiBmcmVlbGFuY2VyKQoJZmVlQnlMYW5lLlNldCgidG9rZW4iLCBpbnQ2NCg1MCkpICAgIC8vIDAuNSUgT1RDIOKAlCBjb21wZXRpdGl2ZSB2cyBERVggfjAuMyUKfQoKZnVuYyBjYWxsZXIoKSBhZGRyZXNzIHsgcmV0dXJuIHVuc2FmZS5QcmV2aW91c1JlYWxtKCkuQWRkcmVzcygpIH0KCi8vIOKUgOKUgCBSZWFkIGdldHRlcnMg4oCUIFBVUkUsIE5PTi1GQUlMSU5HIChuZXZlciBwYW5pYywgbm8gUGF1c2UpIOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgAoKLy8gR2V0RmVlQlBTIHJldHVybnMgdGhlIHByb3RvY29sIGZlZSBpbiBiYXNpcyBwb2ludHMgZm9yIGEgbGFuZS4gQW4gdW5zZXQgb3IgdW5rbm93bgovLyBsYW5lIHJldHVybnMgRGVmYXVsdEZlZUJQUy4gVGhlIHJlc3VsdCBpcyBhbHdheXMgd2l0aGluIFswLCBNYXhGZWVCUFNdIChlbmZvcmNlZCBvbgovLyB3cml0ZSkuIE5ldmVyIHBhbmljcyDigJQgYW4gZW5naW5lIG11c3QgYWx3YXlzIGJlIGFibGUgdG8gc2V0dGxlLgpmdW5jIEdldEZlZUJQUyhsYW5lIHN0cmluZykgaW50IHsKCXYsIG9rIDo9IGZlZUJ5TGFuZS5HZXQobGFuZSkKCWlmICFvayB7CgkJcmV0dXJuIGludChEZWZhdWx0RmVlQlBTKQoJfQoJcmV0dXJuIGludCh2LihpbnQ2NCkpCn0KCi8vIEdldFRyZWFzdXJ5IHJldHVybnMgdGhlIGFkZHJlc3MgdGhhdCByZWNlaXZlcyB0aGUgcHJvdG9jb2wgZmVlIG9uIGV2ZXJ5IGxhbmUuCmZ1bmMgR2V0VHJlYXN1cnkoKSBhZGRyZXNzIHsgcmV0dXJuIHRyZWFzdXJ5IH0KCi8vIEdldExhbmVDb25maWcgcmV0dXJucyAoZmVlQlBTLCB0cmVhc3VyeSkgaW4gb25lIHJlYWQgZm9yIGFuIGVuZ2luZSdzIHNldHRsZW1lbnQgcGF0aC4KZnVuYyBHZXRMYW5lQ29uZmlnKGxhbmUgc3RyaW5nKSAoaW50LCBhZGRyZXNzKSB7CglyZXR1cm4gR2V0RmVlQlBTKGxhbmUpLCB0cmVhc3VyeQp9CgovLyBHZXRBZG1pbiByZXR1cm5zIHRoZSBjdXJyZW50IGFkbWluICh0aGUgbXVsdGlzaWcsIG9yIHRoZSBtZW1iYV9kYW8gZXhlY3V0b3IgYWZ0ZXIKLy8gdGhlIDItc3RlcCBoYW5kb2ZmKS4KZnVuYyBHZXRBZG1pbigpIGFkZHJlc3MgeyByZXR1cm4gYWRtaW4gfQoaTQoLZ25vbW9kLnRvbWwSPm1vZHVsZSA9ICJnbm8ubGFuZC9yL3NhbWNyZXcvbWVtYmFfbWFya2V0X2NvbmZpZyIKZ25vID0gIjAuOSIKGoUICgpyZW5kZXIuZ25vEvYHLy8gUmVuZGVyIOKAlCBwdWJsaWMgcmVhZC1vbmx5IHZpZXcgKyBhdWRpdCBzdXJmYWNlIGZvciB0aGUgZmVlIGNvbmZpZy4KcGFja2FnZSBtZW1iYV9tYXJrZXRfY29uZmlnCgppbXBvcnQgKAoJInN0cmluZ3MiCgoJImduby5sYW5kL3AvbnQvdWZtdC92MCIKKQoKZnVuYyBSZW5kZXIocGF0aCBzdHJpbmcpIHN0cmluZyB7Cgl2YXIgc2Igc3RyaW5ncy5CdWlsZGVyCglzYi5Xcml0ZVN0cmluZygiIyBNZW1iYSBNYXJrZXRwbGFjZSDigJQgRmVlIENvbmZpZ1xuXG4iKQoJc2IuV3JpdGVTdHJpbmcoIkRBTy1vd25lZCBwZXItbGFuZSBwcm90b2NvbCBmZWUgKyB0cmVhc3VyeS4gRW5naW5lcyByZWFkIHRoaXMgYXQgc2V0dGxlbWVudC5cblxuIikKCXNiLldyaXRlU3RyaW5nKHVmbXQuU3ByaW50ZigiKipBZG1pbjoqKiAlc1xuIiwgYWRtaW4uU3RyaW5nKCkpKQoJaWYgcGVuZGluZ0FkbWluICE9ICIiIHsKCQlzYi5Xcml0ZVN0cmluZyh1Zm10LlNwcmludGYoIioqUGVuZGluZyBhZG1pbjoqKiAlc1xuIiwgcGVuZGluZ0FkbWluLlN0cmluZygpKSkKCX0KCXNiLldyaXRlU3RyaW5nKHVmbXQuU3ByaW50ZigiKipUcmVhc3VyeToqKiAlc1xuIiwgdHJlYXN1cnkuU3RyaW5nKCkpKQoJc2IuV3JpdGVTdHJpbmcodWZtdC5TcHJpbnRmKCIqKkZlZSBjZWlsaW5nOioqICVkIGJwcyAoNSUlKVxuXG4iLCBNYXhGZWVCUFMpKQoKCXNiLldyaXRlU3RyaW5nKCJ8IExhbmUgfCBGZWUgKGJwcykgfFxufC0tLS0tLXwtLS0tLS0tLS0tLXxcbiIpCglmZWVCeUxhbmUuSXRlcmF0ZSgiIiwgIiIsIGZ1bmMoa2V5IHN0cmluZywgdmFsIGludGVyZmFjZXt9KSBib29sIHsKCQlzYi5Xcml0ZVN0cmluZyh1Zm10LlNwcmludGYoInwgJXMgfCAlZCB8XG4iLCBrZXksIHZhbC4oaW50NjQpKSkKCQlyZXR1cm4gZmFsc2UKCX0pCglzYi5Xcml0ZVN0cmluZyh1Zm10LlNwcmludGYoIlxuKlVuc2V0IGxhbmVzIGRlZmF1bHQgdG8gJWQgYnBzLipcbiIsIERlZmF1bHRGZWVCUFMpKQoJcmV0dXJuIHNiLlN0cmluZygpCn0KIiIKEy9nbm8uTWVtUGFja2FnZVR5cGUSCwoJTVBVc2VyQWxsIgw1MDAwMDAwdWdub3QSEQiAjs4cEgo2MDAwMHVnbm90GogDCs0BChIvdG0uUHViS2V5TXVsdGlzaWcStgEIAhI6ChMvdG0uUHViS2V5U2VjcDI1NmsxEiMKIQNdTsrzjy2oA1bKxxCiASBMVUReZbe8FQo/n1GUQS9f7RI6ChMvdG0uUHViS2V5U2VjcDI1NmsxEiMKIQMo44neuGQmEOBJpWfwt5YFd/18PcgdS1Pidavq3ZGmeBI6ChMvdG0uUHViS2V5U2VjcDI1NmsxEiMKIQMg5X9eKuwtmgamq/0K8oenVUfVQAsVWVenzmjN1+WBABKLAQoFCAMSAaASQNd2NqXSAxd46fAznAi3HtRFDY9Mf4AXrGf9GRi+AOLOWy8jBWTf+6G9OQprl4MuJsYJdOUmfvBAKOwKcISgLMISQEJCN788dxwK+tDWlwBA90Hnzmq60rSTXqtrJsCpaer4QO2PGhEuQQqpDwwNVj8QiqYb84kc4Zzei635uyxZ8ZkaKGcxcXFxcXFxcXFxcXFxcXFxcXFxcXFxcXFxcXFxcXFxcXFxbHV1eGU=