{ "name": "Deshopsdk", "structs": { "ListingRecord": [ { "name": "seller", "type": "address" }, { "name": "price", "type": "uint64" }, { "name": "creator", "type": "address" }, { "name": "royalty_bps", "type": "uint64" } ] }, "methods": [ { "name": "setupAsset", "args": [ { "type": "uint64", "name": "asset" }, { "type": "pay", "name": "mbr_pay" } ], "returns": { "type": "void" }, "actions": { "create": [], "call": [ "NoOp" ] }, "readonly": false, "events": [], "recommendations": {} }, { "name": "listAsset", "args": [ { "type": "axfer", "name": "axfer" }, { "type": "uint64", "name": "price" }, { "type": "address", "name": "creator" }, { "type": "uint64", "name": "royalty_bps" } ], "returns": { "type": "void" }, "actions": { "create": [], "call": [ "NoOp" ] }, "readonly": false, "events": [], "recommendations": {} }, { "name": "buyAsset", "args": [ { "type": "uint64", "name": "asset" }, { "type": "pay", "name": "payment" } ], "returns": { "type": "void" }, "actions": { "create": [], "call": [ "NoOp" ] }, "readonly": false, "events": [], "recommendations": {} }, { "name": "cancelListing", "args": [ { "type": "uint64", "name": "asset" } ], "returns": { "type": "void" }, "actions": { "create": [], "call": [ "NoOp" ] }, "readonly": false, "events": [], "recommendations": {} } ], "arcs": [ 22, 28 ], "networks": {}, "state": { "schema": { "global": { "ints": 0, "bytes": 0 }, "local": { "ints": 0, "bytes": 0 } }, "keys": { "global": {}, "local": {}, "box": {} }, "maps": { "global": {}, "local": {}, "box": { "listings": { "keyType": "uint64", "valueType": "ListingRecord", "prefix": "bGlzdF8=" } } } }, "bareActions": { "create": [ "NoOp" ], "call": [] }, "sourceInfo": { "approval": { "sourceInfo": [ { "pc": [ 199 ], "errorMessage": "already listed" }, { "pc": [ 166 ], "errorMessage": "axfer not to contract" }, { "pc": [ 286 ], "errorMessage": "insufficient payment" }, { "pc": [ 150 ], "errorMessage": "invalid number of bytes for arc4.static_array" }, { "pc": [ 78, 141, 158, 221, 382 ], "errorMessage": "invalid number of bytes for arc4.uint64" }, { "pc": [ 181 ], "errorMessage": "must be sender" }, { "pc": [ 104 ], "errorMessage": "must pay 0.1 ALGO for ASA MBR" }, { "pc": [ 173 ], "errorMessage": "must transfer 1 asset" }, { "pc": [ 246, 393 ], "errorMessage": "not listed" }, { "pc": [ 403 ], "errorMessage": "not owner" }, { "pc": [ 278 ], "errorMessage": "pay contract" }, { "pc": [ 96 ], "errorMessage": "pay exact mbr" }, { "pc": [ 185 ], "errorMessage": "price > 0" }, { "pc": [ 294 ], "errorMessage": "sender mismatch" }, { "pc": [ 133 ], "errorMessage": "transaction type is axfer" }, { "pc": [ 89, 233 ], "errorMessage": "transaction type is pay" } ], "pcOffsetMethod": "none" }, "clear": { "sourceInfo": [], "pcOffsetMethod": "none" } }, "source": { "approval": "I3ByYWdtYSB2ZXJzaW9uIDExCiNwcmFnbWEgdHlwZXRyYWNrIGZhbHNlCgovLyBhbGdvcHkuYXJjNC5BUkM0Q29udHJhY3QuYXBwcm92YWxfcHJvZ3JhbSgpIC0+IHVpbnQ2NDoKbWFpbjoKICAgIGludGNibG9jayAxIDAgOCA0CiAgICBieXRlY2Jsb2NrIDB4NmM2OTczNzQ1ZgogICAgLy8gc21hcnRfY29udHJhY3RzL2Rlc2hvcHNkay9jb250cmFjdC5weTo5CiAgICAvLyBjbGFzcyBEZXNob3BzZGsoQVJDNENvbnRyYWN0KToKICAgIHR4biBOdW1BcHBBcmdzCiAgICBieiBtYWluX19fYWxnb3B5X2RlZmF1bHRfY3JlYXRlQDEzCiAgICB0eG4gT25Db21wbGV0aW9uCiAgICAhCiAgICBhc3NlcnQKICAgIHR4biBBcHBsaWNhdGlvbklECiAgICBhc3NlcnQKICAgIHB1c2hieXRlc3MgMHhiYjI0MGU5NyAweDE3ZDVhODMyIDB4MzRiZTc5ZDIgMHhiNjM5ZDRiYyAvLyBtZXRob2QgInNldHVwQXNzZXQodWludDY0LHBheSl2b2lkIiwgbWV0aG9kICJsaXN0QXNzZXQoYXhmZXIsdWludDY0LGFkZHJlc3MsdWludDY0KXZvaWQiLCBtZXRob2QgImJ1eUFzc2V0KHVpbnQ2NCxwYXkpdm9pZCIsIG1ldGhvZCAiY2FuY2VsTGlzdGluZyh1aW50NjQpdm9pZCIKICAgIHR4bmEgQXBwbGljYXRpb25BcmdzIDAKICAgIG1hdGNoIHNldHVwQXNzZXQgbGlzdEFzc2V0IGJ1eUFzc2V0IGNhbmNlbExpc3RpbmcKICAgIGVycgoKbWFpbl9fX2FsZ29weV9kZWZhdWx0X2NyZWF0ZUAxMzoKICAgIHR4biBPbkNvbXBsZXRpb24KICAgICEKICAgIHR4biBBcHBsaWNhdGlvbklECiAgICAhCiAgICAmJgogICAgcmV0dXJuCgoKLy8gc21hcnRfY29udHJhY3RzLmRlc2hvcHNkay5jb250cmFjdC5EZXNob3BzZGsuc2V0dXBBc3NldFtyb3V0aW5nXSgpIC0+IHZvaWQ6CnNldHVwQXNzZXQ6CiAgICAvLyBzbWFydF9jb250cmFjdHMvZGVzaG9wc2RrL2NvbnRyYWN0LnB5OjEzCiAgICAvLyBAYXJjNC5hYmltZXRob2QKICAgIHR4bmEgQXBwbGljYXRpb25BcmdzIDEKICAgIGR1cAogICAgbGVuCiAgICBpbnRjXzIgLy8gOAogICAgPT0KICAgIGFzc2VydCAvLyBpbnZhbGlkIG51bWJlciBvZiBieXRlcyBmb3IgYXJjNC51aW50NjQKICAgIGJ0b2kKICAgIHR4biBHcm91cEluZGV4CiAgICBpbnRjXzAgLy8gMQogICAgLQogICAgZHVwCiAgICBndHhucyBUeXBlRW51bQogICAgaW50Y18wIC8vIHBheQogICAgPT0KICAgIGFzc2VydCAvLyB0cmFuc2FjdGlvbiB0eXBlIGlzIHBheQogICAgLy8gc21hcnRfY29udHJhY3RzL2Rlc2hvcHNkay9jb250cmFjdC5weToxNS0xNgogICAgLy8gIyBDb250cmFjdCBuZWVkcyB0byBvcHQtaW4gdG8gdGhlIGFzc2V0LiBSZXF1aXJlcyAxMDAsMDAwIEFMR08gZm9yIE1CUiBsb2dpYy4KICAgIC8vIGFzc2VydCBtYnJfcGF5LnJlY2VpdmVyID09IEdsb2JhbC5jdXJyZW50X2FwcGxpY2F0aW9uX2FkZHJlc3MsICJwYXkgZXhhY3QgbWJyIgogICAgZHVwCiAgICBndHhucyBSZWNlaXZlcgogICAgZ2xvYmFsIEN1cnJlbnRBcHBsaWNhdGlvbkFkZHJlc3MKICAgID09CiAgICBhc3NlcnQgLy8gcGF5IGV4YWN0IG1icgogICAgLy8gc21hcnRfY29udHJhY3RzL2Rlc2hvcHNkay9jb250cmFjdC5weToxNwogICAgLy8gYXNzZXJ0IG1icl9wYXkuYW1vdW50ID09IFVJbnQ2NCgxMDBfMDAwKSwgIm11c3QgcGF5IDAuMSBBTEdPIGZvciBBU0EgTUJSIgogICAgZ3R4bnMgQW1vdW50CiAgICBwdXNoaW50IDEwMDAwMAogICAgPT0KICAgIGFzc2VydCAvLyBtdXN0IHBheSAwLjEgQUxHTyBmb3IgQVNBIE1CUgogICAgLy8gc21hcnRfY29udHJhY3RzL2Rlc2hvcHNkay9jb250cmFjdC5weToxOC0yMwogICAgLy8gaXR4bi5Bc3NldFRyYW5zZmVyKAogICAgLy8gICAgIHhmZXJfYXNzZXQ9YXNzZXQsCiAgICAvLyAgICAgYXNzZXRfcmVjZWl2ZXI9R2xvYmFsLmN1cnJlbnRfYXBwbGljYXRpb25fYWRkcmVzcywKICAgIC8vICAgICBhc3NldF9hbW91bnQ9MCwKICAgIC8vICAgICBmZWU9MAogICAgLy8gKS5zdWJtaXQoKQogICAgaXR4bl9iZWdpbgogICAgLy8gc21hcnRfY29udHJhY3RzL2Rlc2hvcHNkay9jb250cmFjdC5weToyMAogICAgLy8gYXNzZXRfcmVjZWl2ZXI9R2xvYmFsLmN1cnJlbnRfYXBwbGljYXRpb25fYWRkcmVzcywKICAgIGdsb2JhbCBDdXJyZW50QXBwbGljYXRpb25BZGRyZXNzCiAgICAvLyBzbWFydF9jb250cmFjdHMvZGVzaG9wc2RrL2NvbnRyYWN0LnB5OjIxCiAgICAvLyBhc3NldF9hbW91bnQ9MCwKICAgIGludGNfMSAvLyAwCiAgICBpdHhuX2ZpZWxkIEFzc2V0QW1vdW50CiAgICBpdHhuX2ZpZWxkIEFzc2V0UmVjZWl2ZXIKICAgIGl0eG5fZmllbGQgWGZlckFzc2V0CiAgICAvLyBzbWFydF9jb250cmFjdHMvZGVzaG9wc2RrL2NvbnRyYWN0LnB5OjE4CiAgICAvLyBpdHhuLkFzc2V0VHJhbnNmZXIoCiAgICBpbnRjXzMgLy8gYXhmZXIKICAgIGl0eG5fZmllbGQgVHlwZUVudW0KICAgIC8vIHNtYXJ0X2NvbnRyYWN0cy9kZXNob3BzZGsvY29udHJhY3QucHk6MjIKICAgIC8vIGZlZT0wCiAgICBpbnRjXzEgLy8gMAogICAgaXR4bl9maWVsZCBGZWUKICAgIC8vIHNtYXJ0X2NvbnRyYWN0cy9kZXNob3BzZGsvY29udHJhY3QucHk6MTgtMjMKICAgIC8vIGl0eG4uQXNzZXRUcmFuc2ZlcigKICAgIC8vICAgICB4ZmVyX2Fzc2V0PWFzc2V0LAogICAgLy8gICAgIGFzc2V0X3JlY2VpdmVyPUdsb2JhbC5jdXJyZW50X2FwcGxpY2F0aW9uX2FkZHJlc3MsCiAgICAvLyAgICAgYXNzZXRfYW1vdW50PTAsCiAgICAvLyAgICAgZmVlPTAKICAgIC8vICkuc3VibWl0KCkKICAgIGl0eG5fc3VibWl0CiAgICAvLyBzbWFydF9jb250cmFjdHMvZGVzaG9wc2RrL2NvbnRyYWN0LnB5OjEzCiAgICAvLyBAYXJjNC5hYmltZXRob2QKICAgIGludGNfMCAvLyAxCiAgICByZXR1cm4KCgovLyBzbWFydF9jb250cmFjdHMuZGVzaG9wc2RrLmNvbnRyYWN0LkRlc2hvcHNkay5saXN0QXNzZXRbcm91dGluZ10oKSAtPiB2b2lkOgpsaXN0QXNzZXQ6CiAgICAvLyBzbWFydF9jb250cmFjdHMvZGVzaG9wc2RrL2NvbnRyYWN0LnB5OjI1CiAgICAvLyBAYXJjNC5hYmltZXRob2QKICAgIHR4biBHcm91cEluZGV4CiAgICBpbnRjXzAgLy8gMQogICAgLQogICAgZHVwCiAgICBndHhucyBUeXBlRW51bQogICAgaW50Y18zIC8vIGF4ZmVyCiAgICA9PQogICAgYXNzZXJ0IC8vIHRyYW5zYWN0aW9uIHR5cGUgaXMgYXhmZXIKICAgIHR4bmEgQXBwbGljYXRpb25BcmdzIDEKICAgIGR1cAogICAgbGVuCiAgICBpbnRjXzIgLy8gOAogICAgPT0KICAgIGFzc2VydCAvLyBpbnZhbGlkIG51bWJlciBvZiBieXRlcyBmb3IgYXJjNC51aW50NjQKICAgIHR4bmEgQXBwbGljYXRpb25BcmdzIDIKICAgIGR1cAogICAgbGVuCiAgICBwdXNoaW50IDMyCiAgICA9PQogICAgYXNzZXJ0IC8vIGludmFsaWQgbnVtYmVyIG9mIGJ5dGVzIGZvciBhcmM0LnN0YXRpY19hcnJheTxhcmM0LnVpbnQ4LCAzMj4KICAgIHR4bmEgQXBwbGljYXRpb25BcmdzIDMKICAgIGR1cAogICAgbGVuCiAgICBpbnRjXzIgLy8gOAogICAgPT0KICAgIGFzc2VydCAvLyBpbnZhbGlkIG51bWJlciBvZiBieXRlcyBmb3IgYXJjNC51aW50NjQKICAgIC8vIHNtYXJ0X2NvbnRyYWN0cy9kZXNob3BzZGsvY29udHJhY3QucHk6MjcKICAgIC8vIGFzc2VydCBheGZlci5hc3NldF9yZWNlaXZlciA9PSBHbG9iYWwuY3VycmVudF9hcHBsaWNhdGlvbl9hZGRyZXNzLCAiYXhmZXIgbm90IHRvIGNvbnRyYWN0IgogICAgZGlnIDMKICAgIGd0eG5zIEFzc2V0UmVjZWl2ZXIKICAgIGdsb2JhbCBDdXJyZW50QXBwbGljYXRpb25BZGRyZXNzCiAgICA9PQogICAgYXNzZXJ0IC8vIGF4ZmVyIG5vdCB0byBjb250cmFjdAogICAgLy8gc21hcnRfY29udHJhY3RzL2Rlc2hvcHNkay9jb250cmFjdC5weToyOAogICAgLy8gYXNzZXJ0IGF4ZmVyLmFzc2V0X2Ftb3VudCA9PSBVSW50NjQoMSksICJtdXN0IHRyYW5zZmVyIDEgYXNzZXQiCiAgICBkaWcgMwogICAgZ3R4bnMgQXNzZXRBbW91bnQKICAgIGludGNfMCAvLyAxCiAgICA9PQogICAgYXNzZXJ0IC8vIG11c3QgdHJhbnNmZXIgMSBhc3NldAogICAgLy8gc21hcnRfY29udHJhY3RzL2Rlc2hvcHNkay9jb250cmFjdC5weToyOQogICAgLy8gYXNzZXJ0IGF4ZmVyLnNlbmRlciA9PSBUeG4uc2VuZGVyLCAibXVzdCBiZSBzZW5kZXIiCiAgICBkaWcgMwogICAgZ3R4bnMgU2VuZGVyCiAgICB0eG4gU2VuZGVyCiAgICA9PQogICAgYXNzZXJ0IC8vIG11c3QgYmUgc2VuZGVyCiAgICAvLyBzbWFydF9jb250cmFjdHMvZGVzaG9wc2RrL2NvbnRyYWN0LnB5OjMwCiAgICAvLyBhc3NlcnQgcHJpY2UubmF0aXZlID4gMCwgInByaWNlID4gMCIKICAgIGRpZyAyCiAgICBidG9pCiAgICBhc3NlcnQgLy8gcHJpY2UgPiAwCiAgICAvLyBzbWFydF9jb250cmFjdHMvZGVzaG9wc2RrL2NvbnRyYWN0LnB5OjMyCiAgICAvLyBhc3NldF9pZCA9IGF4ZmVyLnhmZXJfYXNzZXQuaWQKICAgIHVuY292ZXIgMwogICAgZ3R4bnMgWGZlckFzc2V0CiAgICAvLyBzbWFydF9jb250cmFjdHMvZGVzaG9wc2RrL2NvbnRyYWN0LnB5OjMzCiAgICAvLyBhc3NlcnQgYXNzZXRfaWQgbm90IGluIHNlbGYubGlzdGluZ3MsICJhbHJlYWR5IGxpc3RlZCIKICAgIGl0b2IKICAgIGJ5dGVjXzAgLy8gMHg2YzY5NzM3NDVmCiAgICBzd2FwCiAgICBjb25jYXQKICAgIGR1cAogICAgYm94X2xlbgogICAgYnVyeSAxCiAgICAhCiAgICBhc3NlcnQgLy8gYWxyZWFkeSBsaXN0ZWQKICAgIC8vIHNtYXJ0X2NvbnRyYWN0cy9kZXNob3BzZGsvY29udHJhY3QucHk6MzYKICAgIC8vIGFyYzQuQWRkcmVzcyhUeG4uc2VuZGVyKSwKICAgIHR4biBTZW5kZXIKICAgIC8vIHNtYXJ0X2NvbnRyYWN0cy9kZXNob3BzZGsvY29udHJhY3QucHk6MzUtNDAKICAgIC8vIHNlbGYubGlzdGluZ3NbYXNzZXRfaWRdID0gTGlzdGluZ1JlY29yZCgKICAgIC8vICAgICBhcmM0LkFkZHJlc3MoVHhuLnNlbmRlciksCiAgICAvLyAgICAgcHJpY2UsCiAgICAvLyAgICAgY3JlYXRvciwKICAgIC8vICAgICByb3lhbHR5X2JwcwogICAgLy8gKQogICAgdW5jb3ZlciA0CiAgICBjb25jYXQKICAgIHVuY292ZXIgMwogICAgY29uY2F0CiAgICB1bmNvdmVyIDIKICAgIGNvbmNhdAogICAgYm94X3B1dAogICAgLy8gc21hcnRfY29udHJhY3RzL2Rlc2hvcHNkay9jb250cmFjdC5weToyNQogICAgLy8gQGFyYzQuYWJpbWV0aG9kCiAgICBpbnRjXzAgLy8gMQogICAgcmV0dXJuCgoKLy8gc21hcnRfY29udHJhY3RzLmRlc2hvcHNkay5jb250cmFjdC5EZXNob3BzZGsuYnV5QXNzZXRbcm91dGluZ10oKSAtPiB2b2lkOgpidXlBc3NldDoKICAgIC8vIHNtYXJ0X2NvbnRyYWN0cy9kZXNob3BzZGsvY29udHJhY3QucHk6NDIKICAgIC8vIEBhcmM0LmFiaW1ldGhvZAogICAgdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQogICAgZHVwCiAgICBsZW4KICAgIGludGNfMiAvLyA4CiAgICA9PQogICAgYXNzZXJ0IC8vIGludmFsaWQgbnVtYmVyIG9mIGJ5dGVzIGZvciBhcmM0LnVpbnQ2NAogICAgYnRvaQogICAgZHVwCiAgICB0eG4gR3JvdXBJbmRleAogICAgaW50Y18wIC8vIDEKICAgIC0KICAgIGR1cAogICAgZ3R4bnMgVHlwZUVudW0KICAgIGludGNfMCAvLyBwYXkKICAgID09CiAgICBhc3NlcnQgLy8gdHJhbnNhY3Rpb24gdHlwZSBpcyBwYXkKICAgIC8vIHNtYXJ0X2NvbnRyYWN0cy9kZXNob3BzZGsvY29udHJhY3QucHk6NDUKICAgIC8vIGFzc2VydCBhc3NldF9pZCBpbiBzZWxmLmxpc3RpbmdzLCAibm90IGxpc3RlZCIKICAgIHN3YXAKICAgIGl0b2IKICAgIGJ5dGVjXzAgLy8gMHg2YzY5NzM3NDVmCiAgICBzd2FwCiAgICBjb25jYXQKICAgIGR1cAogICAgY292ZXIgMgogICAgZHVwCiAgICBib3hfbGVuCiAgICBidXJ5IDEKICAgIGFzc2VydCAvLyBub3QgbGlzdGVkCiAgICAvLyBzbWFydF9jb250cmFjdHMvZGVzaG9wc2RrL2NvbnRyYWN0LnB5OjQ3CiAgICAvLyBsaXN0aW5nID0gc2VsZi5saXN0aW5nc1thc3NldF9pZF0uY29weSgpCiAgICBib3hfZ2V0CiAgICBwb3AKICAgIC8vIHNtYXJ0X2NvbnRyYWN0cy9kZXNob3BzZGsvY29udHJhY3QucHk6NDgKICAgIC8vIHByaWNlID0gbGlzdGluZy5wcmljZS5uYXRpdmUKICAgIGR1cAogICAgcHVzaGludCAzMgogICAgZXh0cmFjdF91aW50NjQKICAgIC8vIHNtYXJ0X2NvbnRyYWN0cy9kZXNob3BzZGsvY29udHJhY3QucHk6NDkKICAgIC8vIHNlbGxlciA9IGxpc3Rpbmcuc2VsbGVyLm5hdGl2ZQogICAgZGlnIDEKICAgIGV4dHJhY3QgMCAzMgogICAgY292ZXIgMwogICAgLy8gc21hcnRfY29udHJhY3RzL2Rlc2hvcHNkay9jb250cmFjdC5weTo1MAogICAgLy8gY3JlYXRvciA9IGxpc3RpbmcuY3JlYXRvci5uYXRpdmUKICAgIGRpZyAxCiAgICBleHRyYWN0IDQwIDMyCiAgICBjb3ZlciAzCiAgICAvLyBzbWFydF9jb250cmFjdHMvZGVzaG9wc2RrL2NvbnRyYWN0LnB5OjUxCiAgICAvLyByb3lhbHR5X2JwcyA9IGxpc3Rpbmcucm95YWx0eV9icHMubmF0aXZlCiAgICBzd2FwCiAgICBwdXNoaW50IDcyCiAgICBleHRyYWN0X3VpbnQ2NAogICAgLy8gc21hcnRfY29udHJhY3RzL2Rlc2hvcHNkay9jb250cmFjdC5weTo1MwogICAgLy8gYXNzZXJ0IHBheW1lbnQucmVjZWl2ZXIgPT0gR2xvYmFsLmN1cnJlbnRfYXBwbGljYXRpb25fYWRkcmVzcywgInBheSBjb250cmFjdCIKICAgIGRpZyAyCiAgICBndHhucyBSZWNlaXZlcgogICAgZ2xvYmFsIEN1cnJlbnRBcHBsaWNhdGlvbkFkZHJlc3MKICAgID09CiAgICBhc3NlcnQgLy8gcGF5IGNvbnRyYWN0CiAgICAvLyBzbWFydF9jb250cmFjdHMvZGVzaG9wc2RrL2NvbnRyYWN0LnB5OjU0CiAgICAvLyBhc3NlcnQgcGF5bWVudC5hbW91bnQgPj0gcHJpY2UsICJpbnN1ZmZpY2llbnQgcGF5bWVudCIKICAgIGRpZyAyCiAgICBndHhucyBBbW91bnQKICAgIGRpZyAyCiAgICA+PQogICAgYXNzZXJ0IC8vIGluc3VmZmljaWVudCBwYXltZW50CiAgICAvLyBzbWFydF9jb250cmFjdHMvZGVzaG9wc2RrL2NvbnRyYWN0LnB5OjU1CiAgICAvLyBhc3NlcnQgcGF5bWVudC5zZW5kZXIgPT0gVHhuLnNlbmRlciwgInNlbmRlciBtaXNtYXRjaCIKICAgIHVuY292ZXIgMgogICAgZ3R4bnMgU2VuZGVyCiAgICB0eG4gU2VuZGVyCiAgICA9PQogICAgYXNzZXJ0IC8vIHNlbmRlciBtaXNtYXRjaAogICAgLy8gc21hcnRfY29udHJhY3RzL2Rlc2hvcHNkay9jb250cmFjdC5weTo1NwogICAgLy8gcm95YWx0eSA9IChwcmljZSAqIHJveWFsdHlfYnBzKSAvLyBVSW50NjQoMTBfMDAwKQogICAgZGlnIDEKICAgICoKICAgIHB1c2hpbnQgMTAwMDAKICAgIC8KICAgIGR1cAogICAgY292ZXIgMgogICAgLy8gc21hcnRfY29udHJhY3RzL2Rlc2hvcHNkay9jb250cmFjdC5weTo1OAogICAgLy8gc2VsbGVyX2Ftb3VudCA9IHByaWNlIC0gcm95YWx0eQogICAgLQogICAgZHVwCiAgICAvLyBzbWFydF9jb250cmFjdHMvZGVzaG9wc2RrL2NvbnRyYWN0LnB5OjYwCiAgICAvLyBpZiBzZWxsZXJfYW1vdW50ID4gMDoKICAgIGJ6IGJ1eUFzc2V0X2FmdGVyX2lmX2Vsc2VANAogICAgLy8gc21hcnRfY29udHJhY3RzL2Rlc2hvcHNkay9jb250cmFjdC5weTo2MQogICAgLy8gaXR4bi5QYXltZW50KHJlY2VpdmVyPXNlbGxlciwgYW1vdW50PXNlbGxlcl9hbW91bnQsIGZlZT0wKS5zdWJtaXQoKQogICAgaXR4bl9iZWdpbgogICAgZHVwCiAgICBpdHhuX2ZpZWxkIEFtb3VudAogICAgZGlnIDMKICAgIGl0eG5fZmllbGQgUmVjZWl2ZXIKICAgIGludGNfMCAvLyBwYXkKICAgIGl0eG5fZmllbGQgVHlwZUVudW0KICAgIGludGNfMSAvLyAwCiAgICBpdHhuX2ZpZWxkIEZlZQogICAgaXR4bl9zdWJtaXQKCmJ1eUFzc2V0X2FmdGVyX2lmX2Vsc2VANDoKICAgIC8vIHNtYXJ0X2NvbnRyYWN0cy9kZXNob3BzZGsvY29udHJhY3QucHk6NjIKICAgIC8vIGlmIHJveWFsdHkgPiAwOgogICAgZGlnIDEKICAgIGJ6IGJ1eUFzc2V0X2FmdGVyX2lmX2Vsc2VANwogICAgLy8gc21hcnRfY29udHJhY3RzL2Rlc2hvcHNkay9jb250cmFjdC5weTo2MwogICAgLy8gaXR4bi5QYXltZW50KHJlY2VpdmVyPWNyZWF0b3IsIGFtb3VudD1yb3lhbHR5LCBmZWU9MCkuc3VibWl0KCkKICAgIGl0eG5fYmVnaW4KICAgIGRpZyAxCiAgICBpdHhuX2ZpZWxkIEFtb3VudAogICAgZGlnIDIKICAgIGl0eG5fZmllbGQgUmVjZWl2ZXIKICAgIGludGNfMCAvLyBwYXkKICAgIGl0eG5fZmllbGQgVHlwZUVudW0KICAgIGludGNfMSAvLyAwCiAgICBpdHhuX2ZpZWxkIEZlZQogICAgaXR4bl9zdWJtaXQKCmJ1eUFzc2V0X2FmdGVyX2lmX2Vsc2VANzoKICAgIC8vIHNtYXJ0X2NvbnRyYWN0cy9kZXNob3BzZGsvY29udHJhY3QucHk6NjUtNzEKICAgIC8vIGl0eG4uQXNzZXRUcmFuc2ZlcigKICAgIC8vICAgICB4ZmVyX2Fzc2V0PWFzc2V0LAogICAgLy8gICAgIGFzc2V0X3JlY2VpdmVyPVR4bi5zZW5kZXIsCiAgICAvLyAgICAgYXNzZXRfYW1vdW50PTEsCiAgICAvLyAgICAgYXNzZXRfY2xvc2VfdG89c2VsbGVyLAogICAgLy8gICAgIGZlZT0wCiAgICAvLyApLnN1Ym1pdCgpCiAgICBpdHhuX2JlZ2luCiAgICAvLyBzbWFydF9jb250cmFjdHMvZGVzaG9wc2RrL2NvbnRyYWN0LnB5OjY3CiAgICAvLyBhc3NldF9yZWNlaXZlcj1UeG4uc2VuZGVyLAogICAgdHhuIFNlbmRlcgogICAgZGlnIDQKICAgIGl0eG5fZmllbGQgQXNzZXRDbG9zZVRvCiAgICAvLyBzbWFydF9jb250cmFjdHMvZGVzaG9wc2RrL2NvbnRyYWN0LnB5OjY4CiAgICAvLyBhc3NldF9hbW91bnQ9MSwKICAgIGludGNfMCAvLyAxCiAgICBpdHhuX2ZpZWxkIEFzc2V0QW1vdW50CiAgICBpdHhuX2ZpZWxkIEFzc2V0UmVjZWl2ZXIKICAgIGRpZyA1CiAgICBpdHhuX2ZpZWxkIFhmZXJBc3NldAogICAgLy8gc21hcnRfY29udHJhY3RzL2Rlc2hvcHNkay9jb250cmFjdC5weTo2NQogICAgLy8gaXR4bi5Bc3NldFRyYW5zZmVyKAogICAgaW50Y18zIC8vIGF4ZmVyCiAgICBpdHhuX2ZpZWxkIFR5cGVFbnVtCiAgICAvLyBzbWFydF9jb250cmFjdHMvZGVzaG9wc2RrL2NvbnRyYWN0LnB5OjcwCiAgICAvLyBmZWU9MAogICAgaW50Y18xIC8vIDAKICAgIGl0eG5fZmllbGQgRmVlCiAgICAvLyBzbWFydF9jb250cmFjdHMvZGVzaG9wc2RrL2NvbnRyYWN0LnB5OjY1LTcxCiAgICAvLyBpdHhuLkFzc2V0VHJhbnNmZXIoCiAgICAvLyAgICAgeGZlcl9hc3NldD1hc3NldCwKICAgIC8vICAgICBhc3NldF9yZWNlaXZlcj1UeG4uc2VuZGVyLAogICAgLy8gICAgIGFzc2V0X2Ftb3VudD0xLAogICAgLy8gICAgIGFzc2V0X2Nsb3NlX3RvPXNlbGxlciwKICAgIC8vICAgICBmZWU9MAogICAgLy8gKS5zdWJtaXQoKQogICAgaXR4bl9zdWJtaXQKICAgIC8vIHNtYXJ0X2NvbnRyYWN0cy9kZXNob3BzZGsvY29udHJhY3QucHk6NzMKICAgIC8vIGRlbCBzZWxmLmxpc3RpbmdzW2Fzc2V0X2lkXQogICAgZGlnIDQKICAgIGJveF9kZWwKICAgIHBvcAogICAgLy8gc21hcnRfY29udHJhY3RzL2Rlc2hvcHNkay9jb250cmFjdC5weTo0MgogICAgLy8gQGFyYzQuYWJpbWV0aG9kCiAgICBpbnRjXzAgLy8gMQogICAgcmV0dXJuCgoKLy8gc21hcnRfY29udHJhY3RzLmRlc2hvcHNkay5jb250cmFjdC5EZXNob3BzZGsuY2FuY2VsTGlzdGluZ1tyb3V0aW5nXSgpIC0+IHZvaWQ6CmNhbmNlbExpc3Rpbmc6CiAgICAvLyBzbWFydF9jb250cmFjdHMvZGVzaG9wc2RrL2NvbnRyYWN0LnB5Ojc1CiAgICAvLyBAYXJjNC5hYmltZXRob2QKICAgIHR4bmEgQXBwbGljYXRpb25BcmdzIDEKICAgIGR1cAogICAgbGVuCiAgICBpbnRjXzIgLy8gOAogICAgPT0KICAgIGFzc2VydCAvLyBpbnZhbGlkIG51bWJlciBvZiBieXRlcyBmb3IgYXJjNC51aW50NjQKICAgIGJ0b2kKICAgIC8vIHNtYXJ0X2NvbnRyYWN0cy9kZXNob3BzZGsvY29udHJhY3QucHk6NzgKICAgIC8vIGFzc2VydCBhc3NldF9pZCBpbiBzZWxmLmxpc3RpbmdzLCAibm90IGxpc3RlZCIKICAgIGR1cAogICAgaXRvYgogICAgYnl0ZWNfMCAvLyAweDZjNjk3Mzc0NWYKICAgIHN3YXAKICAgIGNvbmNhdAogICAgZHVwCiAgICBib3hfbGVuCiAgICBidXJ5IDEKICAgIGFzc2VydCAvLyBub3QgbGlzdGVkCiAgICAvLyBzbWFydF9jb250cmFjdHMvZGVzaG9wc2RrL2NvbnRyYWN0LnB5Ojc5CiAgICAvLyBsaXN0aW5nID0gc2VsZi5saXN0aW5nc1thc3NldF9pZF0uY29weSgpCiAgICBkdXAKICAgIGJveF9nZXQKICAgIHBvcAogICAgLy8gc21hcnRfY29udHJhY3RzL2Rlc2hvcHNkay9jb250cmFjdC5weTo4MAogICAgLy8gYXNzZXJ0IGxpc3Rpbmcuc2VsbGVyLm5hdGl2ZSA9PSBUeG4uc2VuZGVyLCAibm90IG93bmVyIgogICAgZXh0cmFjdCAwIDMyCiAgICB0eG4gU2VuZGVyCiAgICA9PQogICAgYXNzZXJ0IC8vIG5vdCBvd25lcgogICAgLy8gc21hcnRfY29udHJhY3RzL2Rlc2hvcHNkay9jb250cmFjdC5weTo4Mi04OAogICAgLy8gaXR4bi5Bc3NldFRyYW5zZmVyKAogICAgLy8gICAgIHhmZXJfYXNzZXQ9YXNzZXQsCiAgICAvLyAgICAgYXNzZXRfcmVjZWl2ZXI9VHhuLnNlbmRlciwKICAgIC8vICAgICBhc3NldF9hbW91bnQ9MSwKICAgIC8vICAgICBhc3NldF9jbG9zZV90bz1UeG4uc2VuZGVyLAogICAgLy8gICAgIGZlZT0wCiAgICAvLyApLnN1Ym1pdCgpCiAgICBpdHhuX2JlZ2luCiAgICAvLyBzbWFydF9jb250cmFjdHMvZGVzaG9wc2RrL2NvbnRyYWN0LnB5Ojg0CiAgICAvLyBhc3NldF9yZWNlaXZlcj1UeG4uc2VuZGVyLAogICAgdHhuIFNlbmRlcgogICAgLy8gc21hcnRfY29udHJhY3RzL2Rlc2hvcHNkay9jb250cmFjdC5weTo4NgogICAgLy8gYXNzZXRfY2xvc2VfdG89VHhuLnNlbmRlciwKICAgIGR1cAogICAgaXR4bl9maWVsZCBBc3NldENsb3NlVG8KICAgIC8vIHNtYXJ0X2NvbnRyYWN0cy9kZXNob3BzZGsvY29udHJhY3QucHk6ODUKICAgIC8vIGFzc2V0X2Ftb3VudD0xLAogICAgaW50Y18wIC8vIDEKICAgIGl0eG5fZmllbGQgQXNzZXRBbW91bnQKICAgIGl0eG5fZmllbGQgQXNzZXRSZWNlaXZlcgogICAgc3dhcAogICAgaXR4bl9maWVsZCBYZmVyQXNzZXQKICAgIC8vIHNtYXJ0X2NvbnRyYWN0cy9kZXNob3BzZGsvY29udHJhY3QucHk6ODIKICAgIC8vIGl0eG4uQXNzZXRUcmFuc2ZlcigKICAgIGludGNfMyAvLyBheGZlcgogICAgaXR4bl9maWVsZCBUeXBlRW51bQogICAgLy8gc21hcnRfY29udHJhY3RzL2Rlc2hvcHNkay9jb250cmFjdC5weTo4NwogICAgLy8gZmVlPTAKICAgIGludGNfMSAvLyAwCiAgICBpdHhuX2ZpZWxkIEZlZQogICAgLy8gc21hcnRfY29udHJhY3RzL2Rlc2hvcHNkay9jb250cmFjdC5weTo4Mi04OAogICAgLy8gaXR4bi5Bc3NldFRyYW5zZmVyKAogICAgLy8gICAgIHhmZXJfYXNzZXQ9YXNzZXQsCiAgICAvLyAgICAgYXNzZXRfcmVjZWl2ZXI9VHhuLnNlbmRlciwKICAgIC8vICAgICBhc3NldF9hbW91bnQ9MSwKICAgIC8vICAgICBhc3NldF9jbG9zZV90bz1UeG4uc2VuZGVyLAogICAgLy8gICAgIGZlZT0wCiAgICAvLyApLnN1Ym1pdCgpCiAgICBpdHhuX3N1Ym1pdAogICAgLy8gc21hcnRfY29udHJhY3RzL2Rlc2hvcHNkay9jb250cmFjdC5weTo5MAogICAgLy8gZGVsIHNlbGYubGlzdGluZ3NbYXNzZXRfaWRdCiAgICBib3hfZGVsCiAgICBwb3AKICAgIC8vIHNtYXJ0X2NvbnRyYWN0cy9kZXNob3BzZGsvY29udHJhY3QucHk6NzUKICAgIC8vIEBhcmM0LmFiaW1ldGhvZAogICAgaW50Y18wIC8vIDEKICAgIHJldHVybgo=", "clear": "I3ByYWdtYSB2ZXJzaW9uIDExCiNwcmFnbWEgdHlwZXRyYWNrIGZhbHNlCgovLyBhbGdvcHkuYXJjNC5BUkM0Q29udHJhY3QuY2xlYXJfc3RhdGVfcHJvZ3JhbSgpIC0+IHVpbnQ2NDoKbWFpbjoKICAgIHB1c2hpbnQgMQogICAgcmV0dXJuCg==" }, "byteCode": { "approval": "CyAEAQAIBCYBBWxpc3RfMRtBACsxGRREMRhEggQEuyQOlwQX1agyBDS+edIEtjnUvDYaAI4EAAkAPgCYATkAMRkUMRgUEEM2GgFJFSQSRBcxFiIJSTgQIhJESTgHMgoSRDgIgaCNBhJEsTIKI7ISshSyESWyECOyAbMiQzEWIglJOBAlEkQ2GgFJFSQSRDYaAkkVgSASRDYaA0kVJBJESwM4FDIKEkRLAzgSIhJESwM4ADEAEkRLAhdETwM4ERYoTFBJvUUBFEQxAE8EUE8DUE8CUL8iQzYaAUkVJBJEF0kxFiIJSTgQIhJETBYoTFBJTgJJvUUBRL5ISYEgW0sBVwAgTgNLAVcoIE4DTIFIW0sCOAcyChJESwI4CEsCD0RPAjgAMQASREsBC4GQTgpJTgIJSUEAD7FJsghLA7IHIrIQI7IBs0sBQQAQsUsBsghLArIHIrIQI7IBs7ExAEsEshUishKyFEsFshElshAjsgGzSwS8SCJDNhoBSRUkEkQXSRYoTFBJvUUBREm+SFcAIDEAEkSxMQBJshUishKyFEyyESWyECOyAbO8SCJD", "clear": "C4EBQw==" }, "compilerInfo": { "compiler": "puya", "compilerVersion": { "major": 5, "minor": 8, "patch": 0 } }, "events": [], "templateVariables": {} }