{
  "jsonrpc": "2.0",
  "id": "",
  "result": {
    "hash": "/rS1Wa7NGESU9MB4ZzLvziY2JoEe3U9LrPsrlWPB8qA=",
    "height": "572441",
    "index": 0,
    "tx_result": {
      "ResponseBase": {
        "Error": null,
        "Data": null,
        "Events": [
          {
            "@type": "/tm.StorageDepositEvent",
            "bytes_delta": "11976",
            "fee_delta": "1197600ugnot",
            "pkg_path": "gno.land/p/g1ut6uspuh73e02yauxpmyt8g3wwddaq8utagvm3/feeledger"
          }
        ],
        "Log": "msg:0,success:true,log:,events:[]",
        "Info": ""
      },
      "GasWanted": "26189901",
      "GasUsed": "17459924"
    },
    "tx": "CqVGCgwvdm0ubV9hZGRwa2cSlEYKKGcxdXQ2dXNwdWg3M2UwMnlhdXhwbXl0OGczd3dkZGFxOHV0YWd2bTMS2EUKCWZlZWxlZGdlchI9Z25vLmxhbmQvcC9nMXV0NnVzcHVoNzNlMDJ5YXV4cG15dDhnM3d3ZGRhcTh1dGFndm0zL2ZlZWxlZGdlchqlRAoNZmVlbGVkZ2VyLmdubxKTRC8vIFBhY2thZ2UgZmVlbGVkZ2VyIGlzIGEgcHVyZSBhY2NvdW50aW5nIHByaW1pdGl2ZSBmb3IgcmVhbG1zIHRoYXQgaG9sZAovLyBjb2lucyBvbiBiZWhhbGYgb2YgdXNlcnMgYW5kIGNoYXJnZSBhbiBleHBsaWNpdCBwcm90b2NvbCBmZWUgb24KLy8gZGVwb3NpdHMuIEl0IHRyYWNrcyBwZXItYWNjb3VudCBiYWxhbmNlcywgdGhlIHN1bSBvZiB1c2VyIGxpYWJpbGl0aWVzLAovLyBhbmQgYSBzZXBhcmF0ZWx5LWFjY3J1ZWQgZmVlIHBvdC4gSXQgbmV2ZXIgdG91Y2hlcyBjb2lucyBpdHNlbGY6IHRoZQovLyBpbXBvcnRpbmcgcmVhbG0gbW92ZXMgY29pbnMgYW5kIGRyaXZlcyB0aGlzIGxlZGdlciwga2VlcGluZyB0aGUgdHdvIGluCi8vIGxvY2stc3RlcCBzbyB0aGF0Ci8vCi8vCWNvaW5zIGhlbGQgYnkgcmVhbG0gPT0gVXNlcnNUb3RhbCgpICsgRmVlc0FjY3J1ZWQoKSArIHN1cnBsdXMKLy8KLy8gd2hlcmUgc3VycGx1cyBpcyBjb2lucyBwdXNoZWQgdG8gdGhlIHJlYWxtIG91dHNpZGUgdGhlIGxlZGdlcidzIGZsb3cKLy8gKGFsd2F5cyA+PSAwLCBhbmQgMCBpZiBldmVyeSBjb2luIG1vdmVtZW50IGdvZXMgdGhyb3VnaCB0aGUgbGVkZ2VyKS4KLy8KLy8gRmVlIG1vZGVsOgovLyAgIC0gRmVlcyBhcmUgZXhwcmVzc2VkIGluIGJhc2lzIHBvaW50cyAoMSBicHMgPSAwLjAxJSk7IEJwc0Rlbm9taW5hdG9yCi8vICAgICBpcyAxMDAwMCwgc28gYnBzID09IDEwMDAwIG1lYW5zIHRoZSB3aG9sZSBkZXBvc2l0IGlzIGZlZS4KLy8gICAtIGZlZSA9IGZsb29yKGFtb3VudCAqIGJwcyAvIDEwMDAwKS4gUm91bmRpbmcgYWx3YXlzIGZhdm9ycyB0aGUKLy8gICAgIERFUE9TSVRPUjogYW55IGZyYWN0aW9uYWwgZmVlIGlzIGRyb3BwZWQsIHRoZSBhY2NvdW50IGlzIGNyZWRpdGVkCi8vICAgICBhbW91bnQgLSBmZWUuIEEgc21hbGwgZGVwb3NpdCBtYXkgdGhlcmVmb3JlIHBheSB6ZXJvIGZlZS4KLy8gICAtIFRoZXJlIGlzIG5vIG1pbmltdW0gZmVlLiBUaGUgbWF4aW11bSBmZWUgaXMgYm91bmRlZCBieSB0aGUKLy8gICAgIHBlci1sZWRnZXIgY2FwIHNldCBhdCBjb25zdHJ1Y3Rpb24gKG1heEZlZUJwcyA8PSAxMDAwMCksIHNvIGEgZmVlCi8vICAgICBjYW4gbmV2ZXIgZXhjZWVkIGl0cyBkZXBvc2l0LgovLyAgIC0gYnBzID09IDAgaXMgYSB2YWxpZCBjb25maWd1cmF0aW9uOiBmZWUgaXMgZXhhY3RseSAwIGFuZCB0aGUgZnVsbAovLyAgICAgYW1vdW50IGlzIGNyZWRpdGVkLgovLwovLyBBbGwgZmFpbHVyZXMgYXJlIHJldHVybmVkIGFzIGVycm9ycyBhbmQgbGVhdmUgdGhlIGxlZGdlciBDT01QTEVURUxZCi8vIFVOQ0hBTkdFRDsgY2FsbGVycyBpbiByZWFsbXMgdHlwaWNhbGx5IHdyYXAgY2FsbHMgc28gYW4gZXJyb3IgcGFuaWNzCi8vIGFuZCBhYm9ydHMgdGhlIHRyYW5zYWN0aW9uLiBNdXN0KiB3cmFwcGVycyBhcmUgcHJvdmlkZWQgYW5kIGFyZSB0aGUKLy8gb25seSBmdW5jdGlvbnMgaW4gdGhpcyBwYWNrYWdlIHRoYXQgcGFuaWMuCi8vCi8vIFRoZSBsZWRnZXIgaXMgYWRkcmVzcy1hZ25vc3RpYzogYWNjb3VudHMgYXJlIG5vbi1lbXB0eSBzdHJpbmdzLiBSZWFsbXMKLy8gbm9ybWFsbHkgdXNlIGFkZHJlc3MuU3RyaW5nKCkuCnBhY2thZ2UgZmVlbGVkZ2VyCgppbXBvcnQgKAoJImVycm9ycyIKCgkiZ25vLmxhbmQvcC9udC9hdmwvdjAiCikKCi8vIEJwc0Rlbm9taW5hdG9yIGlzIHRoZSBmZWUgYmFzaXM6IGZlZXMgYXJlIGJwcy9CcHNEZW5vbWluYXRvciBvZiB0aGUKLy8gZGVwb3NpdGVkIGFtb3VudC4KY29uc3QgQnBzRGVub21pbmF0b3IgPSBpbnQ2NCgxMDAwMCkKCi8vIEVycm9ycyByZXR1cm5lZCBieSBMZWRnZXIgb3BlcmF0aW9ucy4KdmFyICgKCUVyckVtcHR5QWNjb3VudCAgPSBlcnJvcnMuTmV3KCJmZWVsZWRnZXI6IGVtcHR5IGFjY291bnQga2V5IikKCUVyckludmFsaWRBbW91bnQgPSBlcnJvcnMuTmV3KCJmZWVsZWRnZXI6IGFtb3VudCBtdXN0IGJlIHBvc2l0aXZlIikKCUVyckludmFsaWRCcHMgICAgPSBlcnJvcnMuTmV3KCJmZWVsZWRnZXI6IGZlZSBicHMgb3V0IG9mIHJhbmdlIikKCUVyckluc3VmZmljaWVudCAgPSBlcnJvcnMuTmV3KCJmZWVsZWRnZXI6IGluc3VmZmljaWVudCBiYWxhbmNlIikKCUVyck92ZXJmbG93ICAgICAgPSBlcnJvcnMuTmV3KCJmZWVsZWRnZXI6IGludDY0IG92ZXJmbG93IikKKQoKLy8gTGVkZ2VyIHRyYWNrcyBwZXItYWNjb3VudCBiYWxhbmNlcywgdGhlaXIgc3VtICh1c2VyIGxpYWJpbGl0aWVzKSwgYW5kCi8vIHNlcGFyYXRlbHktYWNjcnVlZCBwcm90b2NvbCBmZWVzLiBUaGUgemVybyB2YWx1ZSBpcyBub3QgdXNhYmxlOwovLyBjb25zdHJ1Y3Qgd2l0aCBOZXcuCnR5cGUgTGVkZ2VyIHN0cnVjdCB7CgltYXhGZWVCcHMgICBpbnQ2NAoJYmFsYW5jZXMgICAgKmF2bC5UcmVlIC8vIGFjY291bnQgc3RyaW5nIC0+IGludDY0IChhbHdheXMgPiAwKQoJdXNlcnNUb3RhbCAgaW50NjQgICAgIC8vID09IHN1bSBvZiBhbGwgYmFsYW5jZXMKCWZlZXNBY2NydWVkIGludDY0ICAgICAvLyBmZWVzIGNoYXJnZWQgYnV0IG5vdCB5ZXQgd2l0aGRyYXduCn0KCi8vIE5ldyByZXR1cm5zIGFuIGVtcHR5IGxlZGdlciB0aGF0IHJlamVjdHMgZGVwb3NpdCBmZWVzIGFib3ZlIG1heEZlZUJwcy4KLy8gbWF4RmVlQnBzIG11c3QgYmUgaW4gWzAsIEJwc0Rlbm9taW5hdG9yXS4KZnVuYyBOZXcobWF4RmVlQnBzIGludDY0KSAoKkxlZGdlciwgZXJyb3IpIHsKCWlmIG1heEZlZUJwcyA8IDAgfHwgbWF4RmVlQnBzID4gQnBzRGVub21pbmF0b3IgewoJCXJldHVybiBuaWwsIEVyckludmFsaWRCcHMKCX0KCXJldHVybiAmTGVkZ2VyewoJCW1heEZlZUJwczogbWF4RmVlQnBzLAoJCWJhbGFuY2VzOiAgYXZsLk5ld1RyZWUoKSwKCX0sIG5pbAp9CgovLyBNdXN0TmV3IGlzIE5ldyBidXQgcGFuaWNzIG9uIGVycm9yLgpmdW5jIE11c3ROZXcobWF4RmVlQnBzIGludDY0KSAqTGVkZ2VyIHsKCWwsIGVyciA6PSBOZXcobWF4RmVlQnBzKQoJaWYgZXJyICE9IG5pbCB7CgkJcGFuaWMoZXJyKQoJfQoJcmV0dXJuIGwKfQoKLy8gTWF4RmVlQnBzIHJldHVybnMgdGhlIGxlZGdlcidzIGhhcmQgZmVlIGNhcC4KZnVuYyAobCAqTGVkZ2VyKSBNYXhGZWVCcHMoKSBpbnQ2NCB7CglyZXR1cm4gbC5tYXhGZWVCcHMKfQoKLy8gRmVlRm9yIHJldHVybnMgdGhlIGZlZSBjaGFyZ2VkIG9uIGFtb3VudCBhdCBicHMsIHVzaW5nIHRoZSBsZWRnZXIncwovLyByb3VuZGluZyBydWxlOiBmbG9vcihhbW91bnQgKiBicHMgLyBCcHNEZW5vbWluYXRvcikuIEl0IGlzIGEgcHVyZQovLyBwcmV2aWV3IOKAlCBubyBzdGF0ZSBpcyByZWFkIG9yIHdyaXR0ZW4gYmV5b25kIHZhbGlkYXRpb24gYWdhaW5zdAovLyBCcHNEZW5vbWluYXRvciAoTk9UIHRoZSBsZWRnZXIgY2FwOyB1c2UgaXQgdG8gaW5zcGVjdCBhbnkgcG9saWN5KS4KLy8gYW1vdW50IG11c3QgYmUgPj0gMCBhbmQgYnBzIGluIFswLCBCcHNEZW5vbWluYXRvcl0uCmZ1bmMgRmVlRm9yKGFtb3VudCwgYnBzIGludDY0KSAoaW50NjQsIGVycm9yKSB7CglpZiBhbW91bnQgPCAwIHsKCQlyZXR1cm4gMCwgRXJySW52YWxpZEFtb3VudAoJfQoJaWYgYnBzIDwgMCB8fCBicHMgPiBCcHNEZW5vbWluYXRvciB7CgkJcmV0dXJuIDAsIEVyckludmFsaWRCcHMKCX0KCXJldHVybiBmZWVGb3IoYW1vdW50LCBicHMpLCBuaWwKfQoKLy8gZmVlRm9yIGNvbXB1dGVzIGZsb29yKGFtb3VudCpicHMvQnBzRGVub21pbmF0b3IpIHdpdGhvdXQgaW50ZXJtZWRpYXRlCi8vIG92ZXJmbG93OiBhbW91bnQgPSBxKkJwc0Rlbm9taW5hdG9yICsgciwgc28gdGhlIGZlZSBpcwovLyBxKmJwcyArIGZsb29yKHIqYnBzL0Jwc0Rlbm9taW5hdG9yKS4gcSpicHMgPD0gYW1vdW50IGJlY2F1c2UKLy8gYnBzIDw9IEJwc0Rlbm9taW5hdG9yLCBhbmQgcipicHMgPCBCcHNEZW5vbWluYXRvcl4yICgxMF44KSwgc28gZXZlcnkKLy8gaW50ZXJtZWRpYXRlIGZpdHMgY29tZm9ydGFibHkgaW4gaW50NjQuIElucHV0cyBtdXN0IGJlIHByZS12YWxpZGF0ZWQuCmZ1bmMgZmVlRm9yKGFtb3VudCwgYnBzIGludDY0KSBpbnQ2NCB7CglxIDo9IGFtb3VudCAvIEJwc0Rlbm9taW5hdG9yCglyIDo9IGFtb3VudCAlIEJwc0Rlbm9taW5hdG9yCglyZXR1cm4gcSpicHMgKyByKmJwcy9CcHNEZW5vbWluYXRvcgp9CgovLyBEZXBvc2l0IGNyZWRpdHMgYWNjb3VudCB3aXRoIGFtb3VudCBtaW51cyB0aGUgZmVlIGF0IGZlZUJwcywgYWNjcnVpbmcKLy8gdGhlIGZlZSB0byB0aGUgZmVlIHBvdC4gUmV0dXJucyB0aGUgY3JlZGl0ZWQgYW1vdW50IGFuZCB0aGUgZmVlCi8vIChjcmVkaXRlZCArIGZlZSA9PSBhbW91bnQgYWx3YXlzKS4gRmFpbHMgd2l0aCBFcnJFbXB0eUFjY291bnQsCi8vIEVyckludmFsaWRBbW91bnQgKGFtb3VudCA8PSAwKSwgRXJySW52YWxpZEJwcyAoZmVlQnBzIG91dHNpZGUKLy8gWzAsIE1heEZlZUJwc10pLCBvciBFcnJPdmVyZmxvdyBpZiB0aGUgYWNjb3VudCBiYWxhbmNlIG9yIHRvdGFsCi8vIGxpYWJpbGl0aWVzIHdvdWxkIGxlYXZlIGludDY0IHJhbmdlLiBPbiBlcnJvciBub3RoaW5nIGlzIG1vZGlmaWVkLgpmdW5jIChsICpMZWRnZXIpIERlcG9zaXQoYWNjb3VudCBzdHJpbmcsIGFtb3VudCwgZmVlQnBzIGludDY0KSAoY3JlZGl0ZWQsIGZlZSBpbnQ2NCwgZXJyIGVycm9yKSB7CglpZiBhY2NvdW50ID09ICIiIHsKCQlyZXR1cm4gMCwgMCwgRXJyRW1wdHlBY2NvdW50Cgl9CglpZiBhbW91bnQgPD0gMCB7CgkJcmV0dXJuIDAsIDAsIEVyckludmFsaWRBbW91bnQKCX0KCWlmIGZlZUJwcyA8IDAgfHwgZmVlQnBzID4gbC5tYXhGZWVCcHMgewoJCXJldHVybiAwLCAwLCBFcnJJbnZhbGlkQnBzCgl9CgoJZmVlID0gZmVlRm9yKGFtb3VudCwgZmVlQnBzKQoJY3JlZGl0ZWQgPSBhbW91bnQgLSBmZWUgLy8gPj0gMDsgPiAwIHdoZW5ldmVyIGZlZUJwcyA8IEJwc0Rlbm9taW5hdG9yCgoJbmV3QmFsYW5jZSwgb2sgOj0gY2hlY2tlZEFkZChsLkJhbGFuY2VPZihhY2NvdW50KSwgY3JlZGl0ZWQpCglpZiAhb2sgewoJCXJldHVybiAwLCAwLCBFcnJPdmVyZmxvdwoJfQoJbmV3VXNlcnNUb3RhbCwgb2sgOj0gY2hlY2tlZEFkZChsLnVzZXJzVG90YWwsIGNyZWRpdGVkKQoJaWYgIW9rIHsKCQlyZXR1cm4gMCwgMCwgRXJyT3ZlcmZsb3cKCX0KCW5ld0ZlZXNBY2NydWVkLCBvayA6PSBjaGVja2VkQWRkKGwuZmVlc0FjY3J1ZWQsIGZlZSkKCWlmICFvayB7CgkJcmV0dXJuIDAsIDAsIEVyck92ZXJmbG93Cgl9CgkvLyBUb3RhbCBsaWFiaWxpdGllcyBtdXN0IHN0YXkgcmVwcmVzZW50YWJsZSBhcyBvbmUgaW50NjQsIHNpbmNlIHRoZXkKCS8vIG1pcnJvciBhIHNpbmdsZSBjb2luIGJhbGFuY2UgaGVsZCBieSB0aGUgaW1wb3J0aW5nIHJlYWxtLgoJaWYgXywgb2sgOj0gY2hlY2tlZEFkZChuZXdVc2Vyc1RvdGFsLCBuZXdGZWVzQWNjcnVlZCk7ICFvayB7CgkJcmV0dXJuIDAsIDAsIEVyck92ZXJmbG93Cgl9CgoJaWYgbmV3QmFsYW5jZSA+IDAgewoJCWwuYmFsYW5jZXMuU2V0KGFjY291bnQsIG5ld0JhbGFuY2UpCgl9CglsLnVzZXJzVG90YWwgPSBuZXdVc2Vyc1RvdGFsCglsLmZlZXNBY2NydWVkID0gbmV3RmVlc0FjY3J1ZWQKCXJldHVybiBjcmVkaXRlZCwgZmVlLCBuaWwKfQoKLy8gTXVzdERlcG9zaXQgaXMgRGVwb3NpdCBidXQgcGFuaWNzIG9uIGVycm9yLgpmdW5jIChsICpMZWRnZXIpIE11c3REZXBvc2l0KGFjY291bnQgc3RyaW5nLCBhbW91bnQsIGZlZUJwcyBpbnQ2NCkgKGNyZWRpdGVkLCBmZWUgaW50NjQpIHsKCWNyZWRpdGVkLCBmZWUsIGVyciA6PSBsLkRlcG9zaXQoYWNjb3VudCwgYW1vdW50LCBmZWVCcHMpCglpZiBlcnIgIT0gbmlsIHsKCQlwYW5pYyhlcnIpCgl9CglyZXR1cm4gY3JlZGl0ZWQsIGZlZQp9CgovLyBXaXRoZHJhdyBkZWJpdHMgYW1vdW50IGZyb20gYWNjb3VudC4gRmFpbHMgd2l0aCBFcnJFbXB0eUFjY291bnQsCi8vIEVyckludmFsaWRBbW91bnQgKGFtb3VudCA8PSAwKSwgb3IgRXJySW5zdWZmaWNpZW50IGlmIHRoZSBiYWxhbmNlIGlzCi8vIHNtYWxsZXIgdGhhbiBhbW91bnQuIEEgYmFsYW5jZSBkcmFpbmVkIHRvIHplcm8gaXMgcmVtb3ZlZCBmcm9tCi8vIHN0b3JhZ2UuIE9uIGVycm9yIG5vdGhpbmcgaXMgbW9kaWZpZWQuCmZ1bmMgKGwgKkxlZGdlcikgV2l0aGRyYXcoYWNjb3VudCBzdHJpbmcsIGFtb3VudCBpbnQ2NCkgZXJyb3IgewoJaWYgYWNjb3VudCA9PSAiIiB7CgkJcmV0dXJuIEVyckVtcHR5QWNjb3VudAoJfQoJaWYgYW1vdW50IDw9IDAgewoJCXJldHVybiBFcnJJbnZhbGlkQW1vdW50Cgl9CgliYWxhbmNlIDo9IGwuQmFsYW5jZU9mKGFjY291bnQpCglpZiBiYWxhbmNlIDwgYW1vdW50IHsKCQlyZXR1cm4gRXJySW5zdWZmaWNpZW50Cgl9CglpZiBiYWxhbmNlID09IGFtb3VudCB7CgkJbC5iYWxhbmNlcy5SZW1vdmUoYWNjb3VudCkKCX0gZWxzZSB7CgkJbC5iYWxhbmNlcy5TZXQoYWNjb3VudCwgYmFsYW5jZS1hbW91bnQpCgl9CgkvLyB1c2Vyc1RvdGFsID49IGJhbGFuY2UgPj0gYW1vdW50IGJ5IHRoZSBzdW0gaW52YXJpYW50LCBzbyB0aGlzCgkvLyBjYW5ub3QgdW5kZXJmbG93LgoJbC51c2Vyc1RvdGFsIC09IGFtb3VudAoJcmV0dXJuIG5pbAp9CgovLyBNdXN0V2l0aGRyYXcgaXMgV2l0aGRyYXcgYnV0IHBhbmljcyBvbiBlcnJvci4KZnVuYyAobCAqTGVkZ2VyKSBNdXN0V2l0aGRyYXcoYWNjb3VudCBzdHJpbmcsIGFtb3VudCBpbnQ2NCkgewoJaWYgZXJyIDo9IGwuV2l0aGRyYXcoYWNjb3VudCwgYW1vdW50KTsgZXJyICE9IG5pbCB7CgkJcGFuaWMoZXJyKQoJfQp9CgovLyBXaXRoZHJhd0FsbCBkcmFpbnMgYWNjb3VudCdzIGVudGlyZSBiYWxhbmNlIGFuZCByZXR1cm5zIGl0LiBSZXR1cm5zCi8vICgwLCBuaWwpIGlmIHRoZSBhY2NvdW50IGhvbGRzIG5vdGhpbmcuIEZhaWxzIG9ubHkgd2l0aAovLyBFcnJFbXB0eUFjY291bnQuCmZ1bmMgKGwgKkxlZGdlcikgV2l0aGRyYXdBbGwoYWNjb3VudCBzdHJpbmcpIChpbnQ2NCwgZXJyb3IpIHsKCWlmIGFjY291bnQgPT0gIiIgewoJCXJldHVybiAwLCBFcnJFbXB0eUFjY291bnQKCX0KCWJhbGFuY2UgOj0gbC5CYWxhbmNlT2YoYWNjb3VudCkKCWlmIGJhbGFuY2UgPT0gMCB7CgkJcmV0dXJuIDAsIG5pbAoJfQoJbC5iYWxhbmNlcy5SZW1vdmUoYWNjb3VudCkKCWwudXNlcnNUb3RhbCAtPSBiYWxhbmNlCglyZXR1cm4gYmFsYW5jZSwgbmlsCn0KCi8vIFdpdGhkcmF3RmVlcyBkcmFpbnMgdGhlIGFjY3J1ZWQgZmVlIHBvdCBhbmQgcmV0dXJucyB0aGUgYW1vdW50Ci8vICgwIGlmIG5vdGhpbmcgaGFzIGFjY3J1ZWQpLiBOZXZlciBmYWlscy4KZnVuYyAobCAqTGVkZ2VyKSBXaXRoZHJhd0ZlZXMoKSBpbnQ2NCB7CglmZWVzIDo9IGwuZmVlc0FjY3J1ZWQKCWwuZmVlc0FjY3J1ZWQgPSAwCglyZXR1cm4gZmVlcwp9CgovLyBCYWxhbmNlT2YgcmV0dXJucyBhY2NvdW50J3MgYmFsYW5jZSwgb3IgMCBpZiBhYnNlbnQuCmZ1bmMgKGwgKkxlZGdlcikgQmFsYW5jZU9mKGFjY291bnQgc3RyaW5nKSBpbnQ2NCB7Cgl2IDo9IGwuYmFsYW5jZXMuR2V0KGFjY291bnQpCglpZiB2ID09IG5pbCB7CgkJcmV0dXJuIDAKCX0KCXJldHVybiB2LihpbnQ2NCkKfQoKLy8gVXNlcnNUb3RhbCByZXR1cm5zIHRoZSBzdW0gb2YgYWxsIGFjY291bnQgYmFsYW5jZXMgKHVzZXIgbGlhYmlsaXRpZXMpLgpmdW5jIChsICpMZWRnZXIpIFVzZXJzVG90YWwoKSBpbnQ2NCB7CglyZXR1cm4gbC51c2Vyc1RvdGFsCn0KCi8vIEZlZXNBY2NydWVkIHJldHVybnMgdGhlIGZlZSBwb3Q6IGNoYXJnZWQgYnV0IG5vdCB5ZXQgd2l0aGRyYXduLgpmdW5jIChsICpMZWRnZXIpIEZlZXNBY2NydWVkKCkgaW50NjQgewoJcmV0dXJuIGwuZmVlc0FjY3J1ZWQKfQoKLy8gTGlhYmlsaXRpZXMgcmV0dXJucyBVc2Vyc1RvdGFsKCkgKyBGZWVzQWNjcnVlZCgpIOKAlCBldmVyeXRoaW5nIHRoZQovLyBpbXBvcnRpbmcgcmVhbG0gb3dlcy4gRGVwb3NpdCBndWFyYW50ZWVzIHRoaXMgc3VtIGZpdHMgaW4gaW50NjQuCmZ1bmMgKGwgKkxlZGdlcikgTGlhYmlsaXRpZXMoKSBpbnQ2NCB7CglyZXR1cm4gbC51c2Vyc1RvdGFsICsgbC5mZWVzQWNjcnVlZAp9CgovLyBBY2NvdW50cyByZXR1cm5zIHRoZSBudW1iZXIgb2YgYWNjb3VudHMgd2l0aCBhIG5vbi16ZXJvIGJhbGFuY2UuCmZ1bmMgKGwgKkxlZGdlcikgQWNjb3VudHMoKSBpbnQgewoJcmV0dXJuIGwuYmFsYW5jZXMuU2l6ZSgpCn0KCi8vIEl0ZXJhdGUgY2FsbHMgZm4gZm9yIGVhY2ggYWNjb3VudCBpbiBzb3J0ZWQgb3JkZXIgd2l0aCBpdHMgYmFsYW5jZS4KLy8gSXRlcmF0aW9uIHN0b3BzIGVhcmx5IHdoZW4gZm4gcmV0dXJucyB0cnVlLgpmdW5jIChsICpMZWRnZXIpIEl0ZXJhdGUoZm4gZnVuYyhhY2NvdW50IHN0cmluZywgYmFsYW5jZSBpbnQ2NCkgYm9vbCkgewoJbC5iYWxhbmNlcy5JdGVyYXRlKCIiLCAiIiwgZnVuYyhrZXkgc3RyaW5nLCB2YWx1ZSBhbnkpIGJvb2wgewoJCXJldHVybiBmbihrZXksIHZhbHVlLihpbnQ2NCkpCgl9KQp9CgovLyBjaGVja2VkQWRkIHJldHVybnMgYStiIGFuZCByZXBvcnRzIHdoZXRoZXIgdGhlIGFkZGl0aW9uIGRpZCBub3QKLy8gb3ZlcmZsb3cgaW50NjQuCmZ1bmMgY2hlY2tlZEFkZChhLCBiIGludDY0KSAoaW50NjQsIGJvb2wpIHsKCXN1bSA6PSBhICsgYgoJaWYgKGIgPiAwICYmIHN1bSA8IGEpIHx8IChiIDwgMCAmJiBzdW0gPiBhKSB7CgkJcmV0dXJuIDAsIGZhbHNlCgl9CglyZXR1cm4gc3VtLCB0cnVlCn0KGmQKC2dub21vZC50b21sElUKbW9kdWxlID0gImduby5sYW5kL3AvZzF1dDZ1c3B1aDczZTAyeWF1eHBteXQ4ZzN3d2RkYXE4dXRhZ3ZtMy9mZWVsZWRnZXIiCmdubyA9ICIwLjkiIg0xMDAwMDAwMHVnbm90EhEImoH9GBIKNTIzODB1Z25vdBqoAQo6ChMvdG0uUHViS2V5U2VjcDI1NmsxEiMKIQIW9DF2ySV4zjQumeJvrSn3/nxG7XBDVv+rkxV/YrsOmBJAVYvp72/TH1INagg8Vuj5AQWTnS+EIk5vRst7ViNUwuQygWfIPLKfMz8cB/ImsDFxTf1WW/l4WoUipwcyd2G73BooZzFxcXFxcXFxcXFxcXFxcXFxcXFxcXFxcXFxcXFxcXFxcXFsdXV4ZQ=="
  }
}