{ "name": "NumericEncodeRoundTrips", "structs": {}, "methods": [ { "name": "arc4_uint32_via_uint64", "args": [ { "type": "uint32", "name": "x" } ], "returns": { "type": "uint32" }, "actions": { "create": [], "call": [ "NoOp" ] }, "readonly": false, "events": [], "recommendations": {} }, { "name": "arc4_uint64_via_uint64", "args": [ { "type": "uint64", "name": "x" } ], "returns": { "type": "uint64" }, "actions": { "create": [], "call": [ "NoOp" ] }, "readonly": false, "events": [], "recommendations": {} }, { "name": "arc4_uint128_via_uint64", "args": [ { "type": "uint128", "name": "x" } ], "returns": { "type": "uint128" }, "actions": { "create": [], "call": [ "NoOp" ] }, "readonly": false, "events": [], "recommendations": {} }, { "name": "uint64_via_arc4_uint32", "args": [ { "type": "uint64", "name": "x" } ], "returns": { "type": "uint64" }, "actions": { "create": [], "call": [ "NoOp" ] }, "readonly": false, "events": [], "recommendations": {} }, { "name": "uint64_via_arc4_uint64", "args": [ { "type": "uint64", "name": "x" } ], "returns": { "type": "uint64" }, "actions": { "create": [], "call": [ "NoOp" ] }, "readonly": false, "events": [], "recommendations": {} }, { "name": "uint64_via_arc4_uint128", "args": [ { "type": "uint64", "name": "x" } ], "returns": { "type": "uint64" }, "actions": { "create": [], "call": [ "NoOp" ] }, "readonly": false, "events": [], "recommendations": {} }, { "name": "arc4_uint32_via_biguint", "args": [ { "type": "uint32", "name": "x" } ], "returns": { "type": "uint32" }, "actions": { "create": [], "call": [ "NoOp" ] }, "readonly": false, "events": [], "recommendations": {} }, { "name": "arc4_uint64_via_biguint", "args": [ { "type": "uint64", "name": "x" } ], "returns": { "type": "uint64" }, "actions": { "create": [], "call": [ "NoOp" ] }, "readonly": false, "events": [], "recommendations": {} }, { "name": "arc4_uint128_via_biguint", "args": [ { "type": "uint128", "name": "x" } ], "returns": { "type": "uint128" }, "actions": { "create": [], "call": [ "NoOp" ] }, "readonly": false, "events": [], "recommendations": {} }, { "name": "biguint_via_arc4_uint32", "args": [ { "type": "uint512", "name": "x" } ], "returns": { "type": "uint512" }, "actions": { "create": [], "call": [ "NoOp" ] }, "readonly": false, "events": [], "recommendations": {} }, { "name": "biguint_via_arc4_uint64", "args": [ { "type": "uint512", "name": "x" } ], "returns": { "type": "uint512" }, "actions": { "create": [], "call": [ "NoOp" ] }, "readonly": false, "events": [], "recommendations": {} }, { "name": "biguint_via_arc4_uint128", "args": [ { "type": "uint512", "name": "x" } ], "returns": { "type": "uint512" }, "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": {} } }, "bareActions": { "create": [ "NoOp" ], "call": [] }, "sourceInfo": { "approval": { "sourceInfo": [ { "pc": [ 163, 273 ], "errorMessage": "invalid number of bytes for arc4.uint128" }, { "pc": [ 133, 244 ], "errorMessage": "invalid number of bytes for arc4.uint32" }, { "pc": [ 288, 317, 346 ], "errorMessage": "invalid number of bytes for arc4.uint512" }, { "pc": [ 147, 191, 216, 230, 258 ], "errorMessage": "invalid number of bytes for arc4.uint64" }, { "pc": [ 169, 199, 291, 299, 320, 328, 350, 359 ], "errorMessage": "overflow" } ], "pcOffsetMethod": "none" }, "clear": { "sourceInfo": [], "pcOffsetMethod": "none" } }, "source": { "approval": "I3ByYWdtYSB2ZXJzaW9uIDExCiNwcmFnbWEgdHlwZXRyYWNrIGZhbHNlCgovLyBhbGdvcHkuYXJjNC5BUkM0Q29udHJhY3QuYXBwcm92YWxfcHJvZ3JhbSgpIC0+IHVpbnQ2NDoKbWFpbjoKICAgIGludGNibG9jayAxIDY0IDggNAogICAgYnl0ZWNibG9jayAweDE1MWY3Yzc1CiAgICAvLyByZWdyZXNzaW9uX3Rlc3RzL251bWVyaWNfZW5jb2RlX3JvdW5kX3RyaXBzLnB5OjQKICAgIC8vIGNsYXNzIE51bWVyaWNFbmNvZGVSb3VuZFRyaXBzKEFSQzRDb250cmFjdCk6CiAgICB0eG4gTnVtQXBwQXJncwogICAgYnogbWFpbl9fX2FsZ29weV9kZWZhdWx0X2NyZWF0ZUAxOQogICAgdHhuIE9uQ29tcGxldGlvbgogICAgIQogICAgYXNzZXJ0CiAgICB0eG4gQXBwbGljYXRpb25JRAogICAgYXNzZXJ0CiAgICBwdXNoYnl0ZXNzIDB4NzkxYjczMzggMHhmYTI5N2MwOSAweGRjNDllMWJlIDB4MzI3NmMxZmYgMHhkZmRlMTI4ZCAweGIxZjVjYjE1IDB4NTcwMTAxNDggMHhmZjQwZTg3NCAweGZjMmQ3ZjJiIDB4YThkOWRkNmIgMHhkMGZjZmMxMSAweDk5ZDIxNzZlIC8vIG1ldGhvZCAiYXJjNF91aW50MzJfdmlhX3VpbnQ2NCh1aW50MzIpdWludDMyIiwgbWV0aG9kICJhcmM0X3VpbnQ2NF92aWFfdWludDY0KHVpbnQ2NCl1aW50NjQiLCBtZXRob2QgImFyYzRfdWludDEyOF92aWFfdWludDY0KHVpbnQxMjgpdWludDEyOCIsIG1ldGhvZCAidWludDY0X3ZpYV9hcmM0X3VpbnQzMih1aW50NjQpdWludDY0IiwgbWV0aG9kICJ1aW50NjRfdmlhX2FyYzRfdWludDY0KHVpbnQ2NCl1aW50NjQiLCBtZXRob2QgInVpbnQ2NF92aWFfYXJjNF91aW50MTI4KHVpbnQ2NCl1aW50NjQiLCBtZXRob2QgImFyYzRfdWludDMyX3ZpYV9iaWd1aW50KHVpbnQzMil1aW50MzIiLCBtZXRob2QgImFyYzRfdWludDY0X3ZpYV9iaWd1aW50KHVpbnQ2NCl1aW50NjQiLCBtZXRob2QgImFyYzRfdWludDEyOF92aWFfYmlndWludCh1aW50MTI4KXVpbnQxMjgiLCBtZXRob2QgImJpZ3VpbnRfdmlhX2FyYzRfdWludDMyKHVpbnQ1MTIpdWludDUxMiIsIG1ldGhvZCAiYmlndWludF92aWFfYXJjNF91aW50NjQodWludDUxMil1aW50NTEyIiwgbWV0aG9kICJiaWd1aW50X3ZpYV9hcmM0X3VpbnQxMjgodWludDUxMil1aW50NTEyIgogICAgdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAogICAgbWF0Y2ggYXJjNF91aW50MzJfdmlhX3VpbnQ2NCBhcmM0X3VpbnQ2NF92aWFfdWludDY0IGFyYzRfdWludDEyOF92aWFfdWludDY0IHVpbnQ2NF92aWFfYXJjNF91aW50MzIgdWludDY0X3ZpYV9hcmM0X3VpbnQ2NCB1aW50NjRfdmlhX2FyYzRfdWludDEyOCBhcmM0X3VpbnQzMl92aWFfYmlndWludCBhcmM0X3VpbnQ2NF92aWFfYmlndWludCBhcmM0X3VpbnQxMjhfdmlhX2JpZ3VpbnQgYmlndWludF92aWFfYXJjNF91aW50MzIgYmlndWludF92aWFfYXJjNF91aW50NjQgYmlndWludF92aWFfYXJjNF91aW50MTI4CiAgICBlcnIKCm1haW5fX19hbGdvcHlfZGVmYXVsdF9jcmVhdGVAMTk6CiAgICB0eG4gT25Db21wbGV0aW9uCiAgICAhCiAgICB0eG4gQXBwbGljYXRpb25JRAogICAgIQogICAgJiYKICAgIHJldHVybgoKCi8vIHRlc3RfY2FzZXMucmVncmVzc2lvbl90ZXN0cy5udW1lcmljX2VuY29kZV9yb3VuZF90cmlwcy5OdW1lcmljRW5jb2RlUm91bmRUcmlwcy5hcmM0X3VpbnQzMl92aWFfdWludDY0W3JvdXRpbmddKCkgLT4gdm9pZDoKYXJjNF91aW50MzJfdmlhX3VpbnQ2NDoKICAgIC8vIHJlZ3Jlc3Npb25fdGVzdHMvbnVtZXJpY19lbmNvZGVfcm91bmRfdHJpcHMucHk6NS02CiAgICAvLyAjIEFSQzQgVUludCAtPiBVSW50NjQgLT4gQVJDNCBVSW50CiAgICAvLyBAcHVibGljCiAgICB0eG5hIEFwcGxpY2F0aW9uQXJncyAxCiAgICBkdXAKICAgIGxlbgogICAgaW50Y18zIC8vIDQKICAgID09CiAgICBhc3NlcnQgLy8gaW52YWxpZCBudW1iZXIgb2YgYnl0ZXMgZm9yIGFyYzQudWludDMyCiAgICBieXRlY18wIC8vIDB4MTUxZjdjNzUKICAgIHN3YXAKICAgIGNvbmNhdAogICAgbG9nCiAgICBpbnRjXzAgLy8gMQogICAgcmV0dXJuCgoKLy8gdGVzdF9jYXNlcy5yZWdyZXNzaW9uX3Rlc3RzLm51bWVyaWNfZW5jb2RlX3JvdW5kX3RyaXBzLk51bWVyaWNFbmNvZGVSb3VuZFRyaXBzLmFyYzRfdWludDY0X3ZpYV91aW50NjRbcm91dGluZ10oKSAtPiB2b2lkOgphcmM0X3VpbnQ2NF92aWFfdWludDY0OgogICAgLy8gcmVncmVzc2lvbl90ZXN0cy9udW1lcmljX2VuY29kZV9yb3VuZF90cmlwcy5weToxMAogICAgLy8gQHB1YmxpYwogICAgdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQogICAgZHVwCiAgICBsZW4KICAgIGludGNfMiAvLyA4CiAgICA9PQogICAgYXNzZXJ0IC8vIGludmFsaWQgbnVtYmVyIG9mIGJ5dGVzIGZvciBhcmM0LnVpbnQ2NAogICAgYnl0ZWNfMCAvLyAweDE1MWY3Yzc1CiAgICBzd2FwCiAgICBjb25jYXQKICAgIGxvZwogICAgaW50Y18wIC8vIDEKICAgIHJldHVybgoKCi8vIHRlc3RfY2FzZXMucmVncmVzc2lvbl90ZXN0cy5udW1lcmljX2VuY29kZV9yb3VuZF90cmlwcy5OdW1lcmljRW5jb2RlUm91bmRUcmlwcy5hcmM0X3VpbnQxMjhfdmlhX3VpbnQ2NFtyb3V0aW5nXSgpIC0+IHZvaWQ6CmFyYzRfdWludDEyOF92aWFfdWludDY0OgogICAgLy8gcmVncmVzc2lvbl90ZXN0cy9udW1lcmljX2VuY29kZV9yb3VuZF90cmlwcy5weToxNAogICAgLy8gQHB1YmxpYwogICAgdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQogICAgZHVwCiAgICBsZW4KICAgIGR1cAogICAgcHVzaGludCAxNgogICAgPT0KICAgIGFzc2VydCAvLyBpbnZhbGlkIG51bWJlciBvZiBieXRlcyBmb3IgYXJjNC51aW50MTI4CiAgICAvLyByZWdyZXNzaW9uX3Rlc3RzL251bWVyaWNfZW5jb2RlX3JvdW5kX3RyaXBzLnB5OjE2CiAgICAvLyByZXR1cm4gYXJjNC5VSW50MTI4KHguYXNfdWludDY0KCkpCiAgICBkaWcgMQogICAgYml0bGVuCiAgICBpbnRjXzEgLy8gNjQKICAgIDw9CiAgICBhc3NlcnQgLy8gb3ZlcmZsb3cKICAgIGludGNfMiAvLyA4CiAgICAtCiAgICBpbnRjXzIgLy8gOAogICAgZXh0cmFjdDMKICAgIHB1c2hpbnQgMTYKICAgIGJ6ZXJvCiAgICBifAogICAgLy8gcmVncmVzc2lvbl90ZXN0cy9udW1lcmljX2VuY29kZV9yb3VuZF90cmlwcy5weToxNAogICAgLy8gQHB1YmxpYwogICAgYnl0ZWNfMCAvLyAweDE1MWY3Yzc1CiAgICBzd2FwCiAgICBjb25jYXQKICAgIGxvZwogICAgaW50Y18wIC8vIDEKICAgIHJldHVybgoKCi8vIHRlc3RfY2FzZXMucmVncmVzc2lvbl90ZXN0cy5udW1lcmljX2VuY29kZV9yb3VuZF90cmlwcy5OdW1lcmljRW5jb2RlUm91bmRUcmlwcy51aW50NjRfdmlhX2FyYzRfdWludDMyW3JvdXRpbmddKCkgLT4gdm9pZDoKdWludDY0X3ZpYV9hcmM0X3VpbnQzMjoKICAgIC8vIHJlZ3Jlc3Npb25fdGVzdHMvbnVtZXJpY19lbmNvZGVfcm91bmRfdHJpcHMucHk6MTgtMTkKICAgIC8vICMgVUludDY0IC0+IEFSQzQgVUludCAtPiBVSW50NjQKICAgIC8vIEBwdWJsaWMKICAgIHR4bmEgQXBwbGljYXRpb25BcmdzIDEKICAgIGR1cAogICAgbGVuCiAgICBpbnRjXzIgLy8gOAogICAgPT0KICAgIGFzc2VydCAvLyBpbnZhbGlkIG51bWJlciBvZiBieXRlcyBmb3IgYXJjNC51aW50NjQKICAgIGJ0b2kKICAgIC8vIHJlZ3Jlc3Npb25fdGVzdHMvbnVtZXJpY19lbmNvZGVfcm91bmRfdHJpcHMucHk6MjEKICAgIC8vIHJldHVybiBhcmM0LlVJbnQzMih4KS5hc191aW50NjQoKQogICAgaXRvYgogICAgZHVwCiAgICBiaXRsZW4KICAgIHB1c2hpbnQgMzIKICAgIDw9CiAgICBhc3NlcnQgLy8gb3ZlcmZsb3cKICAgIGludGNfMyAvLyA0CiAgICBleHRyYWN0X3VpbnQzMgogICAgLy8gcmVncmVzc2lvbl90ZXN0cy9udW1lcmljX2VuY29kZV9yb3VuZF90cmlwcy5weToxOC0xOQogICAgLy8gIyBVSW50NjQgLT4gQVJDNCBVSW50IC0+IFVJbnQ2NAogICAgLy8gQHB1YmxpYwogICAgaXRvYgogICAgYnl0ZWNfMCAvLyAweDE1MWY3Yzc1CiAgICBzd2FwCiAgICBjb25jYXQKICAgIGxvZwogICAgaW50Y18wIC8vIDEKICAgIHJldHVybgoKCi8vIHRlc3RfY2FzZXMucmVncmVzc2lvbl90ZXN0cy5udW1lcmljX2VuY29kZV9yb3VuZF90cmlwcy5OdW1lcmljRW5jb2RlUm91bmRUcmlwcy51aW50NjRfdmlhX2FyYzRfdWludDY0W3JvdXRpbmddKCkgLT4gdm9pZDoKdWludDY0X3ZpYV9hcmM0X3VpbnQ2NDoKICAgIC8vIHJlZ3Jlc3Npb25fdGVzdHMvbnVtZXJpY19lbmNvZGVfcm91bmRfdHJpcHMucHk6MjMKICAgIC8vIEBwdWJsaWMKICAgIHR4bmEgQXBwbGljYXRpb25BcmdzIDEKICAgIGR1cAogICAgbGVuCiAgICBpbnRjXzIgLy8gOAogICAgPT0KICAgIGFzc2VydCAvLyBpbnZhbGlkIG51bWJlciBvZiBieXRlcyBmb3IgYXJjNC51aW50NjQKICAgIGJ5dGVjXzAgLy8gMHgxNTFmN2M3NQogICAgc3dhcAogICAgY29uY2F0CiAgICBsb2cKICAgIGludGNfMCAvLyAxCiAgICByZXR1cm4KCgovLyB0ZXN0X2Nhc2VzLnJlZ3Jlc3Npb25fdGVzdHMubnVtZXJpY19lbmNvZGVfcm91bmRfdHJpcHMuTnVtZXJpY0VuY29kZVJvdW5kVHJpcHMudWludDY0X3ZpYV9hcmM0X3VpbnQxMjhbcm91dGluZ10oKSAtPiB2b2lkOgp1aW50NjRfdmlhX2FyYzRfdWludDEyODoKICAgIC8vIHJlZ3Jlc3Npb25fdGVzdHMvbnVtZXJpY19lbmNvZGVfcm91bmRfdHJpcHMucHk6MjcKICAgIC8vIEBwdWJsaWMKICAgIHR4bmEgQXBwbGljYXRpb25BcmdzIDEKICAgIGR1cAogICAgbGVuCiAgICBpbnRjXzIgLy8gOAogICAgPT0KICAgIGFzc2VydCAvLyBpbnZhbGlkIG51bWJlciBvZiBieXRlcyBmb3IgYXJjNC51aW50NjQKICAgIGJ5dGVjXzAgLy8gMHgxNTFmN2M3NQogICAgc3dhcAogICAgY29uY2F0CiAgICBsb2cKICAgIGludGNfMCAvLyAxCiAgICByZXR1cm4KCgovLyB0ZXN0X2Nhc2VzLnJlZ3Jlc3Npb25fdGVzdHMubnVtZXJpY19lbmNvZGVfcm91bmRfdHJpcHMuTnVtZXJpY0VuY29kZVJvdW5kVHJpcHMuYXJjNF91aW50MzJfdmlhX2JpZ3VpbnRbcm91dGluZ10oKSAtPiB2b2lkOgphcmM0X3VpbnQzMl92aWFfYmlndWludDoKICAgIC8vIHJlZ3Jlc3Npb25fdGVzdHMvbnVtZXJpY19lbmNvZGVfcm91bmRfdHJpcHMucHk6MzEtMzIKICAgIC8vICMgQVJDNCBVSW50IC0+IEJpZ1VJbnQgLT4gQVJDNCBVSW50CiAgICAvLyBAcHVibGljCiAgICB0eG5hIEFwcGxpY2F0aW9uQXJncyAxCiAgICBkdXAKICAgIGxlbgogICAgaW50Y18zIC8vIDQKICAgID09CiAgICBhc3NlcnQgLy8gaW52YWxpZCBudW1iZXIgb2YgYnl0ZXMgZm9yIGFyYzQudWludDMyCiAgICBieXRlY18wIC8vIDB4MTUxZjdjNzUKICAgIHN3YXAKICAgIGNvbmNhdAogICAgbG9nCiAgICBpbnRjXzAgLy8gMQogICAgcmV0dXJuCgoKLy8gdGVzdF9jYXNlcy5yZWdyZXNzaW9uX3Rlc3RzLm51bWVyaWNfZW5jb2RlX3JvdW5kX3RyaXBzLk51bWVyaWNFbmNvZGVSb3VuZFRyaXBzLmFyYzRfdWludDY0X3ZpYV9iaWd1aW50W3JvdXRpbmddKCkgLT4gdm9pZDoKYXJjNF91aW50NjRfdmlhX2JpZ3VpbnQ6CiAgICAvLyByZWdyZXNzaW9uX3Rlc3RzL251bWVyaWNfZW5jb2RlX3JvdW5kX3RyaXBzLnB5OjM2CiAgICAvLyBAcHVibGljCiAgICB0eG5hIEFwcGxpY2F0aW9uQXJncyAxCiAgICBkdXAKICAgIGxlbgogICAgaW50Y18yIC8vIDgKICAgID09CiAgICBhc3NlcnQgLy8gaW52YWxpZCBudW1iZXIgb2YgYnl0ZXMgZm9yIGFyYzQudWludDY0CiAgICBieXRlY18wIC8vIDB4MTUxZjdjNzUKICAgIHN3YXAKICAgIGNvbmNhdAogICAgbG9nCiAgICBpbnRjXzAgLy8gMQogICAgcmV0dXJuCgoKLy8gdGVzdF9jYXNlcy5yZWdyZXNzaW9uX3Rlc3RzLm51bWVyaWNfZW5jb2RlX3JvdW5kX3RyaXBzLk51bWVyaWNFbmNvZGVSb3VuZFRyaXBzLmFyYzRfdWludDEyOF92aWFfYmlndWludFtyb3V0aW5nXSgpIC0+IHZvaWQ6CmFyYzRfdWludDEyOF92aWFfYmlndWludDoKICAgIC8vIHJlZ3Jlc3Npb25fdGVzdHMvbnVtZXJpY19lbmNvZGVfcm91bmRfdHJpcHMucHk6NDAKICAgIC8vIEBwdWJsaWMKICAgIHR4bmEgQXBwbGljYXRpb25BcmdzIDEKICAgIGR1cAogICAgbGVuCiAgICBwdXNoaW50IDE2CiAgICA9PQogICAgYXNzZXJ0IC8vIGludmFsaWQgbnVtYmVyIG9mIGJ5dGVzIGZvciBhcmM0LnVpbnQxMjgKICAgIGJ5dGVjXzAgLy8gMHgxNTFmN2M3NQogICAgc3dhcAogICAgY29uY2F0CiAgICBsb2cKICAgIGludGNfMCAvLyAxCiAgICByZXR1cm4KCgovLyB0ZXN0X2Nhc2VzLnJlZ3Jlc3Npb25fdGVzdHMubnVtZXJpY19lbmNvZGVfcm91bmRfdHJpcHMuTnVtZXJpY0VuY29kZVJvdW5kVHJpcHMuYmlndWludF92aWFfYXJjNF91aW50MzJbcm91dGluZ10oKSAtPiB2b2lkOgpiaWd1aW50X3ZpYV9hcmM0X3VpbnQzMjoKICAgIC8vIHJlZ3Jlc3Npb25fdGVzdHMvbnVtZXJpY19lbmNvZGVfcm91bmRfdHJpcHMucHk6NDQtNDUKICAgIC8vICMgQmlnVUludCAtPiBBUkM0IFVJbnQgLT4gQmlnVUludAogICAgLy8gQHB1YmxpYwogICAgdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQogICAgZHVwCiAgICBsZW4KICAgIGR1cAogICAgaW50Y18xIC8vIDY0CiAgICA9PQogICAgYXNzZXJ0IC8vIGludmFsaWQgbnVtYmVyIG9mIGJ5dGVzIGZvciBhcmM0LnVpbnQ1MTIKICAgIC8vIHJlZ3Jlc3Npb25fdGVzdHMvbnVtZXJpY19lbmNvZGVfcm91bmRfdHJpcHMucHk6NDcKICAgIC8vIHJldHVybiBhcmM0LlVJbnQzMih4KS5hc19iaWd1aW50KCkKICAgIGludGNfMyAvLyA0CiAgICA8PQogICAgYXNzZXJ0IC8vIG92ZXJmbG93CiAgICBpbnRjXzMgLy8gNAogICAgYnplcm8KICAgIGJ8CiAgICAvLyByZWdyZXNzaW9uX3Rlc3RzL251bWVyaWNfZW5jb2RlX3JvdW5kX3RyaXBzLnB5OjQ0LTQ1CiAgICAvLyAjIEJpZ1VJbnQgLT4gQVJDNCBVSW50IC0+IEJpZ1VJbnQKICAgIC8vIEBwdWJsaWMKICAgIGR1cAogICAgbGVuCiAgICBpbnRjXzEgLy8gNjQKICAgIDw9CiAgICBhc3NlcnQgLy8gb3ZlcmZsb3cKICAgIGludGNfMSAvLyA2NAogICAgYnplcm8KICAgIGJ8CiAgICBieXRlY18wIC8vIDB4MTUxZjdjNzUKICAgIHN3YXAKICAgIGNvbmNhdAogICAgbG9nCiAgICBpbnRjXzAgLy8gMQogICAgcmV0dXJuCgoKLy8gdGVzdF9jYXNlcy5yZWdyZXNzaW9uX3Rlc3RzLm51bWVyaWNfZW5jb2RlX3JvdW5kX3RyaXBzLk51bWVyaWNFbmNvZGVSb3VuZFRyaXBzLmJpZ3VpbnRfdmlhX2FyYzRfdWludDY0W3JvdXRpbmddKCkgLT4gdm9pZDoKYmlndWludF92aWFfYXJjNF91aW50NjQ6CiAgICAvLyByZWdyZXNzaW9uX3Rlc3RzL251bWVyaWNfZW5jb2RlX3JvdW5kX3RyaXBzLnB5OjQ5CiAgICAvLyBAcHVibGljCiAgICB0eG5hIEFwcGxpY2F0aW9uQXJncyAxCiAgICBkdXAKICAgIGxlbgogICAgZHVwCiAgICBpbnRjXzEgLy8gNjQKICAgID09CiAgICBhc3NlcnQgLy8gaW52YWxpZCBudW1iZXIgb2YgYnl0ZXMgZm9yIGFyYzQudWludDUxMgogICAgLy8gcmVncmVzc2lvbl90ZXN0cy9udW1lcmljX2VuY29kZV9yb3VuZF90cmlwcy5weTo1MQogICAgLy8gcmV0dXJuIGFyYzQuVUludDY0KHgpLmFzX2JpZ3VpbnQoKQogICAgaW50Y18yIC8vIDgKICAgIDw9CiAgICBhc3NlcnQgLy8gb3ZlcmZsb3cKICAgIGludGNfMiAvLyA4CiAgICBiemVybwogICAgYnwKICAgIC8vIHJlZ3Jlc3Npb25fdGVzdHMvbnVtZXJpY19lbmNvZGVfcm91bmRfdHJpcHMucHk6NDkKICAgIC8vIEBwdWJsaWMKICAgIGR1cAogICAgbGVuCiAgICBpbnRjXzEgLy8gNjQKICAgIDw9CiAgICBhc3NlcnQgLy8gb3ZlcmZsb3cKICAgIGludGNfMSAvLyA2NAogICAgYnplcm8KICAgIGJ8CiAgICBieXRlY18wIC8vIDB4MTUxZjdjNzUKICAgIHN3YXAKICAgIGNvbmNhdAogICAgbG9nCiAgICBpbnRjXzAgLy8gMQogICAgcmV0dXJuCgoKLy8gdGVzdF9jYXNlcy5yZWdyZXNzaW9uX3Rlc3RzLm51bWVyaWNfZW5jb2RlX3JvdW5kX3RyaXBzLk51bWVyaWNFbmNvZGVSb3VuZFRyaXBzLmJpZ3VpbnRfdmlhX2FyYzRfdWludDEyOFtyb3V0aW5nXSgpIC0+IHZvaWQ6CmJpZ3VpbnRfdmlhX2FyYzRfdWludDEyODoKICAgIC8vIHJlZ3Jlc3Npb25fdGVzdHMvbnVtZXJpY19lbmNvZGVfcm91bmRfdHJpcHMucHk6NTMKICAgIC8vIEBwdWJsaWMKICAgIHR4bmEgQXBwbGljYXRpb25BcmdzIDEKICAgIGR1cAogICAgbGVuCiAgICBkdXAKICAgIGludGNfMSAvLyA2NAogICAgPT0KICAgIGFzc2VydCAvLyBpbnZhbGlkIG51bWJlciBvZiBieXRlcyBmb3IgYXJjNC51aW50NTEyCiAgICAvLyByZWdyZXNzaW9uX3Rlc3RzL251bWVyaWNfZW5jb2RlX3JvdW5kX3RyaXBzLnB5OjU1CiAgICAvLyByZXR1cm4gYXJjNC5VSW50MTI4KHgpLmFzX2JpZ3VpbnQoKQogICAgcHVzaGludCAxNgogICAgPD0KICAgIGFzc2VydCAvLyBvdmVyZmxvdwogICAgcHVzaGludCAxNgogICAgYnplcm8KICAgIGJ8CiAgICAvLyByZWdyZXNzaW9uX3Rlc3RzL251bWVyaWNfZW5jb2RlX3JvdW5kX3RyaXBzLnB5OjUzCiAgICAvLyBAcHVibGljCiAgICBkdXAKICAgIGxlbgogICAgaW50Y18xIC8vIDY0CiAgICA8PQogICAgYXNzZXJ0IC8vIG92ZXJmbG93CiAgICBpbnRjXzEgLy8gNjQKICAgIGJ6ZXJvCiAgICBifAogICAgYnl0ZWNfMCAvLyAweDE1MWY3Yzc1CiAgICBzd2FwCiAgICBjb25jYXQKICAgIGxvZwogICAgaW50Y18wIC8vIDEKICAgIHJldHVybgo=", "clear": "I3ByYWdtYSB2ZXJzaW9uIDExCiNwcmFnbWEgdHlwZXRyYWNrIGZhbHNlCgovLyBhbGdvcHkuYXJjNC5BUkM0Q29udHJhY3QuY2xlYXJfc3RhdGVfcHJvZ3JhbSgpIC0+IHVpbnQ2NDoKbWFpbjoKICAgIHB1c2hpbnQgMQogICAgcmV0dXJuCg==" }, "byteCode": { "approval": "CyAEAUAIBCYBBBUffHUxG0EAYzEZFEQxGESCDAR5G3M4BPopfAkE3EnhvgQydsH/BN/eEo0EsfXLFQRXAQFIBP9A6HQE/C1/KwSo2d1rBND8/BEEmdIXbjYaAI4MAAkAFwAlAEMAXABqAHgAhgCUAKMAwADdADEZFDEYFBBDNhoBSRUlEkQoTFCwIkM2GgFJFSQSRChMULAiQzYaAUkVSYEQEkRLAZMjDkQkCSRYgRCvqyhMULAiQzYaAUkVJBJEFxZJk4EgDkQlWhYoTFCwIkM2GgFJFSQSRChMULAiQzYaAUkVJBJEKExQsCJDNhoBSRUlEkQoTFCwIkM2GgFJFSQSRChMULAiQzYaAUkVgRASRChMULAiQzYaAUkVSSMSRCUORCWvq0kVIw5EI6+rKExQsCJDNhoBSRVJIxJEJA5EJK+rSRUjDkQjr6soTFCwIkM2GgFJFUkjEkSBEA5EgRCvq0kVIw5EI6+rKExQsCJD", "clear": "C4EBQw==" }, "compilerInfo": { "compiler": "puya", "compilerVersion": { "major": 99, "minor": 99, "patch": 99 } }, "events": [], "templateVariables": {} }