{ "name": "ArrayDestructuringAlgo", "structs": {}, "methods": [ { "name": "testNested", "args": [ { "type": "(uint64,(uint512,uint512))", "name": "arg" } ], "returns": { "type": "(uint64,(uint512,uint512),uint64,uint512)" }, "actions": { "create": [], "call": [ "NoOp" ] }, "readonly": false, "events": [], "recommendations": {} }, { "name": "test", "args": [], "returns": { "type": "void" }, "actions": { "create": [], "call": [ "NoOp" ] }, "readonly": false, "events": [], "recommendations": {} }, { "name": "testLiteralDestructuring", "args": [], "returns": { "type": "void" }, "actions": { "create": [], "call": [ "NoOp" ] }, "readonly": false, "events": [], "recommendations": {} }, { "name": "produceFixed", "args": [], "returns": { "type": "uint64[3]" }, "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": [ 424 ], "errorMessage": "assert target is match for conditions" }, { "pc": [ 151 ], "errorMessage": "invalid number of bytes for arc4.tuple>" }, { "pc": [ 209, 222, 239 ], "errorMessage": "overflow" } ], "pcOffsetMethod": "none" }, "clear": { "sourceInfo": [], "pcOffsetMethod": "none" } }, "source": { "approval": "I3ByYWdtYSB2ZXJzaW9uIDExCiNwcmFnbWEgdHlwZXRyYWNrIGZhbHNlCgovLyBAYWxnb3JhbmRmb3VuZGF0aW9uL2FsZ29yYW5kLXR5cGVzY3JpcHQvYXJjNC9pbmRleC5kLnRzOjpDb250cmFjdC5hcHByb3ZhbFByb2dyYW0oKSAtPiB1aW50NjQ6Cm1haW46CiAgICBpbnRjYmxvY2sgMCA2NCAxIDgKICAgIGJ5dGVjYmxvY2sgMHggMHgwNiAweDE1MWY3Yzc1CiAgICBiIG1haW5fYmxvY2tAMAoKbWFpbl9ibG9ja0AwOgogICAgYiBtYWluX2Jsb2NrQDEKCm1haW5fYmxvY2tAMToKICAgIC8vIHRlc3RzL2FwcHJvdmFscy9hcnJheS1kZXN0cnVjdHVyaW5nLmFsZ28udHM6NAogICAgLy8gZXhwb3J0IGNsYXNzIEFycmF5RGVzdHJ1Y3R1cmluZ0FsZ28gZXh0ZW5kcyBDb250cmFjdCB7CiAgICB0eG4gTnVtQXBwQXJncwogICAgaW50Y18wIC8vIDAKICAgICE9CiAgICBieiBtYWluX19fYWxnb3RzX18uZGVmYXVsdENyZWF0ZUAxMQogICAgYiBtYWluX2FiaV9yb3V0aW5nQDIKCm1haW5fYWJpX3JvdXRpbmdAMjoKICAgIC8vIHRlc3RzL2FwcHJvdmFscy9hcnJheS1kZXN0cnVjdHVyaW5nLmFsZ28udHM6NAogICAgLy8gZXhwb3J0IGNsYXNzIEFycmF5RGVzdHJ1Y3R1cmluZ0FsZ28gZXh0ZW5kcyBDb250cmFjdCB7CiAgICB0eG4gT25Db21wbGV0aW9uCiAgICBpbnRjXzAgLy8gTm9PcAogICAgPT0KICAgIGFzc2VydAogICAgdHhuIEFwcGxpY2F0aW9uSUQKICAgIGludGNfMCAvLyAwCiAgICAhPQogICAgYnogbWFpbl9jcmVhdGVfTm9PcEA5CiAgICBiIG1haW5fY2FsbF9Ob09wQDMKCm1haW5fY2FsbF9Ob09wQDM6CiAgICAvLyB0ZXN0cy9hcHByb3ZhbHMvYXJyYXktZGVzdHJ1Y3R1cmluZy5hbGdvLnRzOjQKICAgIC8vIGV4cG9ydCBjbGFzcyBBcnJheURlc3RydWN0dXJpbmdBbGdvIGV4dGVuZHMgQ29udHJhY3QgewogICAgdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAogICAgcHVzaGJ5dGVzIDB4NzRiN2U4ZGYgLy8gbWV0aG9kICJ0ZXN0TmVzdGVkKCh1aW50NjQsKHVpbnQ1MTIsdWludDUxMikpKSh1aW50NjQsKHVpbnQ1MTIsdWludDUxMiksdWludDY0LHVpbnQ1MTIpIgogICAgcHVzaGJ5dGVzIDB4YTc4MDAwZGUgLy8gbWV0aG9kICJ0ZXN0KCl2b2lkIgogICAgcHVzaGJ5dGVzIDB4MmRhZmM2YzYgLy8gbWV0aG9kICJ0ZXN0TGl0ZXJhbERlc3RydWN0dXJpbmcoKXZvaWQiCiAgICBwdXNoYnl0ZXMgMHhkNDhiNjk4MyAvLyBtZXRob2QgInByb2R1Y2VGaXhlZCgpdWludDY0WzNdIgogICAgdW5jb3ZlciA0CiAgICBtYXRjaCBtYWluX3Rlc3ROZXN0ZWRfcm91dGVANCBtYWluX3Rlc3Rfcm91dGVANSBtYWluX3Rlc3RMaXRlcmFsRGVzdHJ1Y3R1cmluZ19yb3V0ZUA2IG1haW5fcHJvZHVjZUZpeGVkX3JvdXRlQDcKICAgIGIgbWFpbl9zd2l0Y2hfY2FzZV9uZXh0QDgKCm1haW5fc3dpdGNoX2Nhc2VfbmV4dEA4OgogICAgYiBtYWluX2FmdGVyX2lmX2Vsc2VAMTAKCm1haW5fYWZ0ZXJfaWZfZWxzZUAxMDoKICAgIGIgbWFpbl9hZnRlcl9pZl9lbHNlQDEyCgptYWluX2FmdGVyX2lmX2Vsc2VAMTI6CiAgICAvLyB0ZXN0cy9hcHByb3ZhbHMvYXJyYXktZGVzdHJ1Y3R1cmluZy5hbGdvLnRzOjQKICAgIC8vIGV4cG9ydCBjbGFzcyBBcnJheURlc3RydWN0dXJpbmdBbGdvIGV4dGVuZHMgQ29udHJhY3QgewogICAgZXJyCgptYWluX3Byb2R1Y2VGaXhlZF9yb3V0ZUA3OgogICAgLy8gdGVzdHMvYXBwcm92YWxzL2FycmF5LWRlc3RydWN0dXJpbmcuYWxnby50czo0NAogICAgLy8gcHJvZHVjZUZpeGVkKCk6IEZpeGVkQXJyYXk8dWludDY0LCAzPiB7CiAgICBjYWxsc3ViIHByb2R1Y2VGaXhlZAogICAgYiBtYWluX3N3aXRjaF9jYXNlX25leHRAOAoKbWFpbl90ZXN0TGl0ZXJhbERlc3RydWN0dXJpbmdfcm91dGVANjoKICAgIC8vIHRlc3RzL2FwcHJvdmFscy9hcnJheS1kZXN0cnVjdHVyaW5nLmFsZ28udHM6MzQKICAgIC8vIHRlc3RMaXRlcmFsRGVzdHJ1Y3R1cmluZygpIHsKICAgIGNhbGxzdWIgdGVzdExpdGVyYWxEZXN0cnVjdHVyaW5nCiAgICBiIG1haW5fc3dpdGNoX2Nhc2VfbmV4dEA4CgptYWluX3Rlc3Rfcm91dGVANToKICAgIC8vIHRlc3RzL2FwcHJvdmFscy9hcnJheS1kZXN0cnVjdHVyaW5nLmFsZ28udHM6MTEKICAgIC8vIHRlc3QoKSB7CiAgICBjYWxsc3ViIHRlc3QKICAgIGIgbWFpbl9zd2l0Y2hfY2FzZV9uZXh0QDgKCm1haW5fdGVzdE5lc3RlZF9yb3V0ZUA0OgogICAgLy8gdGVzdHMvYXBwcm92YWxzL2FycmF5LWRlc3RydWN0dXJpbmcuYWxnby50czo1CiAgICAvLyB0ZXN0TmVzdGVkKGFyZzogcmVhZG9ubHkgW3VpbnQ2NCwgcmVhZG9ubHkgW2JpZ3VpbnQsIGJpZ3VpbnRdXSkgewogICAgY2FsbHN1YiB0ZXN0TmVzdGVkCiAgICBiIG1haW5fc3dpdGNoX2Nhc2VfbmV4dEA4CgptYWluX2NyZWF0ZV9Ob09wQDk6CiAgICBiIG1haW5fYWZ0ZXJfaWZfZWxzZUAxMAoKbWFpbl9fX2FsZ290c19fLmRlZmF1bHRDcmVhdGVAMTE6CiAgICAvLyB0ZXN0cy9hcHByb3ZhbHMvYXJyYXktZGVzdHJ1Y3R1cmluZy5hbGdvLnRzOjQKICAgIC8vIGV4cG9ydCBjbGFzcyBBcnJheURlc3RydWN0dXJpbmdBbGdvIGV4dGVuZHMgQ29udHJhY3QgewogICAgdHhuIE9uQ29tcGxldGlvbgogICAgaW50Y18wIC8vIE5vT3AKICAgID09CiAgICB0eG4gQXBwbGljYXRpb25JRAogICAgaW50Y18wIC8vIDAKICAgID09CiAgICAmJgogICAgYXNzZXJ0CiAgICBjYWxsc3ViIF9fYWxnb3RzX18uZGVmYXVsdENyZWF0ZQogICAgaW50Y18yIC8vIDEKICAgIHJldHVybgoKCi8vIHRlc3RzL2FwcHJvdmFscy9hcnJheS1kZXN0cnVjdHVyaW5nLmFsZ28udHM6OkFycmF5RGVzdHJ1Y3R1cmluZ0FsZ28udGVzdE5lc3RlZFtyb3V0aW5nXSgpIC0+IHZvaWQ6CnRlc3ROZXN0ZWQ6CiAgICBiIHRlc3ROZXN0ZWRfYmxvY2tAMAoKdGVzdE5lc3RlZF9ibG9ja0AwOgogICAgLy8gdGVzdHMvYXBwcm92YWxzL2FycmF5LWRlc3RydWN0dXJpbmcuYWxnby50czo1CiAgICAvLyB0ZXN0TmVzdGVkKGFyZzogcmVhZG9ubHkgW3VpbnQ2NCwgcmVhZG9ubHkgW2JpZ3VpbnQsIGJpZ3VpbnRdXSkgewogICAgdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQogICAgZHVwCiAgICBsZW4KICAgIHB1c2hpbnQgMTM2CiAgICA9PQogICAgYXNzZXJ0IC8vIGludmFsaWQgbnVtYmVyIG9mIGJ5dGVzIGZvciBhcmM0LnR1cGxlPGFyYzQudWludDY0LGFyYzQudHVwbGU8YXJjNC51aW50NTEyLGFyYzQudWludDUxMj4+CiAgICBkdXAKICAgIGludGNfMCAvLyAwCiAgICBpbnRjXzMgLy8gOAogICAgZXh0cmFjdDMKICAgIGJ0b2kKICAgIGNvdmVyIDEKICAgIGludGNfMyAvLyA4CiAgICBwdXNoaW50IDEyOAogICAgZXh0cmFjdDMKICAgIGR1cAogICAgaW50Y18wIC8vIDAKICAgIGludGNfMSAvLyA2NAogICAgZXh0cmFjdDMKICAgIGNvdmVyIDEKICAgIGludGNfMSAvLyA2NAogICAgaW50Y18xIC8vIDY0CiAgICBleHRyYWN0MwogICAgdW5jb3ZlciAyCiAgICBjb3ZlciAxCiAgICB1bmNvdmVyIDIKICAgIHVuY292ZXIgMQogICAgdW5jb3ZlciAyCiAgICB1bmNvdmVyIDIKICAgIHVuY292ZXIgMgogICAgY2FsbHN1YiB0ZXN0cy9hcHByb3ZhbHMvYXJyYXktZGVzdHJ1Y3R1cmluZy5hbGdvLnRzOjpBcnJheURlc3RydWN0dXJpbmdBbGdvLnRlc3ROZXN0ZWQKICAgIGNvdmVyIDQKICAgIGNvdmVyIDMKICAgIGNvdmVyIDIKICAgIGNvdmVyIDEKICAgIGl0b2IKICAgIGJ5dGVjXzAgLy8gMHgKICAgIHVuY292ZXIgMQogICAgY29uY2F0CiAgICBjb3ZlciAyCiAgICBkdXAKICAgIGxlbgogICAgaW50Y18xIC8vIDY0CiAgICA8PQogICAgYXNzZXJ0IC8vIG92ZXJmbG93CiAgICBpbnRjXzEgLy8gNjQKICAgIGJ6ZXJvCiAgICBifAogICAgYnl0ZWNfMCAvLyAweAogICAgdW5jb3ZlciAxCiAgICBjb25jYXQKICAgIGRpZyAxCiAgICBsZW4KICAgIGludGNfMSAvLyA2NAogICAgPD0KICAgIGFzc2VydCAvLyBvdmVyZmxvdwogICAgaW50Y18xIC8vIDY0CiAgICBiemVybwogICAgdW5jb3ZlciAyCiAgICBifAogICAgY29uY2F0CiAgICBjb25jYXQKICAgIHVuY292ZXIgMQogICAgaXRvYgogICAgY29uY2F0CiAgICBkaWcgMQogICAgbGVuCiAgICBpbnRjXzEgLy8gNjQKICAgIDw9CiAgICBhc3NlcnQgLy8gb3ZlcmZsb3cKICAgIGludGNfMSAvLyA2NAogICAgYnplcm8KICAgIHVuY292ZXIgMgogICAgYnwKICAgIGNvbmNhdAogICAgYnl0ZWNfMiAvLyAweDE1MWY3Yzc1CiAgICB1bmNvdmVyIDEKICAgIGNvbmNhdAogICAgbG9nCiAgICBpbnRjXzIgLy8gMQogICAgcmV0dXJuCgoKLy8gdGVzdHMvYXBwcm92YWxzL2FycmF5LWRlc3RydWN0dXJpbmcuYWxnby50czo6QXJyYXlEZXN0cnVjdHVyaW5nQWxnby50ZXN0W3JvdXRpbmddKCkgLT4gdm9pZDoKdGVzdDoKICAgIGIgdGVzdF9ibG9ja0AwCgp0ZXN0X2Jsb2NrQDA6CiAgICAvLyB0ZXN0cy9hcHByb3ZhbHMvYXJyYXktZGVzdHJ1Y3R1cmluZy5hbGdvLnRzOjExCiAgICAvLyB0ZXN0KCkgewogICAgY2FsbHN1YiB0ZXN0cy9hcHByb3ZhbHMvYXJyYXktZGVzdHJ1Y3R1cmluZy5hbGdvLnRzOjpBcnJheURlc3RydWN0dXJpbmdBbGdvLnRlc3QKICAgIGludGNfMiAvLyAxCiAgICByZXR1cm4KCgovLyB0ZXN0cy9hcHByb3ZhbHMvYXJyYXktZGVzdHJ1Y3R1cmluZy5hbGdvLnRzOjpBcnJheURlc3RydWN0dXJpbmdBbGdvLnRlc3RMaXRlcmFsRGVzdHJ1Y3R1cmluZ1tyb3V0aW5nXSgpIC0+IHZvaWQ6CnRlc3RMaXRlcmFsRGVzdHJ1Y3R1cmluZzoKICAgIGIgdGVzdExpdGVyYWxEZXN0cnVjdHVyaW5nX2Jsb2NrQDAKCnRlc3RMaXRlcmFsRGVzdHJ1Y3R1cmluZ19ibG9ja0AwOgogICAgLy8gdGVzdHMvYXBwcm92YWxzL2FycmF5LWRlc3RydWN0dXJpbmcuYWxnby50czozNAogICAgLy8gdGVzdExpdGVyYWxEZXN0cnVjdHVyaW5nKCkgewogICAgY2FsbHN1YiB0ZXN0cy9hcHByb3ZhbHMvYXJyYXktZGVzdHJ1Y3R1cmluZy5hbGdvLnRzOjpBcnJheURlc3RydWN0dXJpbmdBbGdvLnRlc3RMaXRlcmFsRGVzdHJ1Y3R1cmluZwogICAgaW50Y18yIC8vIDEKICAgIHJldHVybgoKCi8vIHRlc3RzL2FwcHJvdmFscy9hcnJheS1kZXN0cnVjdHVyaW5nLmFsZ28udHM6OkFycmF5RGVzdHJ1Y3R1cmluZ0FsZ28ucHJvZHVjZUZpeGVkW3JvdXRpbmddKCkgLT4gdm9pZDoKcHJvZHVjZUZpeGVkOgogICAgYiBwcm9kdWNlRml4ZWRfYmxvY2tAMAoKcHJvZHVjZUZpeGVkX2Jsb2NrQDA6CiAgICAvLyB0ZXN0cy9hcHByb3ZhbHMvYXJyYXktZGVzdHJ1Y3R1cmluZy5hbGdvLnRzOjQ0CiAgICAvLyBwcm9kdWNlRml4ZWQoKTogRml4ZWRBcnJheTx1aW50NjQsIDM+IHsKICAgIGNhbGxzdWIgdGVzdHMvYXBwcm92YWxzL2FycmF5LWRlc3RydWN0dXJpbmcuYWxnby50czo6QXJyYXlEZXN0cnVjdHVyaW5nQWxnby5wcm9kdWNlRml4ZWQKICAgIGJ5dGVjXzIgLy8gMHgxNTFmN2M3NQogICAgdW5jb3ZlciAxCiAgICBjb25jYXQKICAgIGxvZwogICAgaW50Y18yIC8vIDEKICAgIHJldHVybgoKCi8vIHRlc3RzL2FwcHJvdmFscy9hcnJheS1kZXN0cnVjdHVyaW5nLmFsZ28udHM6OkFycmF5RGVzdHJ1Y3R1cmluZ0FsZ28udGVzdE5lc3RlZChhcmcuMDogdWludDY0LCBhcmcuMS4wOiBieXRlcywgYXJnLjEuMTogYnl0ZXMpIC0+IHVpbnQ2NCwgYnl0ZXMsIGJ5dGVzLCB1aW50NjQsIGJ5dGVzOgp0ZXN0cy9hcHByb3ZhbHMvYXJyYXktZGVzdHJ1Y3R1cmluZy5hbGdvLnRzOjpBcnJheURlc3RydWN0dXJpbmdBbGdvLnRlc3ROZXN0ZWQ6CiAgICAvLyB0ZXN0cy9hcHByb3ZhbHMvYXJyYXktZGVzdHJ1Y3R1cmluZy5hbGdvLnRzOjUKICAgIC8vIHRlc3ROZXN0ZWQoYXJnOiByZWFkb25seSBbdWludDY0LCByZWFkb25seSBbYmlndWludCwgYmlndWludF1dKSB7CiAgICBwcm90byAzIDUKICAgIGIgdGVzdHMvYXBwcm92YWxzL2FycmF5LWRlc3RydWN0dXJpbmcuYWxnby50czo6QXJyYXlEZXN0cnVjdHVyaW5nQWxnby50ZXN0TmVzdGVkX2Jsb2NrQDAKCnRlc3RzL2FwcHJvdmFscy9hcnJheS1kZXN0cnVjdHVyaW5nLmFsZ28udHM6OkFycmF5RGVzdHJ1Y3R1cmluZ0FsZ28udGVzdE5lc3RlZF9ibG9ja0AwOgogICAgLy8gdGVzdHMvYXBwcm92YWxzL2FycmF5LWRlc3RydWN0dXJpbmcuYWxnby50czo2CiAgICAvLyBjb25zdCBbYSwgYl0gPSBhcmcKICAgIGZyYW1lX2RpZyAtMwogICAgZnJhbWVfZGlnIC0yCiAgICBmcmFtZV9kaWcgLTEKICAgIC8vIHRlc3RzL2FwcHJvdmFscy9hcnJheS1kZXN0cnVjdHVyaW5nLmFsZ28udHM6NwogICAgLy8gY29uc3QgW2MsIFtkXV0gPSBhcmcKICAgIGZyYW1lX2RpZyAtMwogICAgZnJhbWVfZGlnIC0yCiAgICAvLyB0ZXN0cy9hcHByb3ZhbHMvYXJyYXktZGVzdHJ1Y3R1cmluZy5hbGdvLnRzOjgKICAgIC8vIHJldHVybiBbYSwgYiwgYywgZF0gYXMgY29uc3QKICAgIHVuY292ZXIgNAogICAgdW5jb3ZlciA0CiAgICB1bmNvdmVyIDQKICAgIHVuY292ZXIgNAogICAgdW5jb3ZlciA0CiAgICByZXRzdWIKCgovLyB0ZXN0cy9hcHByb3ZhbHMvYXJyYXktZGVzdHJ1Y3R1cmluZy5hbGdvLnRzOjpBcnJheURlc3RydWN0dXJpbmdBbGdvLnRlc3QoKSAtPiB2b2lkOgp0ZXN0cy9hcHByb3ZhbHMvYXJyYXktZGVzdHJ1Y3R1cmluZy5hbGdvLnRzOjpBcnJheURlc3RydWN0dXJpbmdBbGdvLnRlc3Q6CiAgICAvLyB0ZXN0cy9hcHByb3ZhbHMvYXJyYXktZGVzdHJ1Y3R1cmluZy5hbGdvLnRzOjExCiAgICAvLyB0ZXN0KCkgewogICAgcHJvdG8gMCAwCiAgICBiIHRlc3RzL2FwcHJvdmFscy9hcnJheS1kZXN0cnVjdHVyaW5nLmFsZ28udHM6OkFycmF5RGVzdHJ1Y3R1cmluZ0FsZ28udGVzdF9ibG9ja0AwCgp0ZXN0cy9hcHByb3ZhbHMvYXJyYXktZGVzdHJ1Y3R1cmluZy5hbGdvLnRzOjpBcnJheURlc3RydWN0dXJpbmdBbGdvLnRlc3RfYmxvY2tAMDoKICAgIC8vIHRlc3RzL2FwcHJvdmFscy9hcnJheS1kZXN0cnVjdHVyaW5nLmFsZ28udHM6MTIKICAgIC8vIGNvbnN0IFthLCBiLCBjLCBkXSA9IHRoaXMucHJvZHVjZUl0ZW1zKCkKICAgIGNhbGxzdWIgcHJvZHVjZUl0ZW1zCiAgICBjb3ZlciAzCiAgICBjb3ZlciAyCiAgICBjb3ZlciAxCiAgICBjb3ZlciAzCiAgICBjb3ZlciAzCiAgICBjb3ZlciAzCiAgICBjb3ZlciAzCiAgICAvLyB0ZXN0cy9hcHByb3ZhbHMvYXJyYXktZGVzdHJ1Y3R1cmluZy5hbGdvLnRzOjEzCiAgICAvLyBjb25zdCBbLCAsIGVdID0gdGhpcy5wcm9kdWNlSXRlbXMoKQogICAgY2FsbHN1YiBwcm9kdWNlSXRlbXMKICAgIGNvdmVyIDcKICAgIGNvdmVyIDIKICAgIGNvdmVyIDYKICAgIGNvdmVyIDUKICAgIGNvdmVyIDMKICAgIC8vIHRlc3RzL2FwcHJvdmFscy9hcnJheS1kZXN0cnVjdHVyaW5nLmFsZ28udHM6MTYKICAgIC8vIGNvbnN0IGYgPSAoW2csICwgLCBpXSA9IHRoaXMucHJvZHVjZUl0ZW1zKCkpCiAgICBjYWxsc3ViIHByb2R1Y2VJdGVtcwogICAgY292ZXIgMwogICAgY292ZXIgMwogICAgY292ZXIgMgogICAgZHVwCiAgICBjb3ZlciA3CiAgICBkaWcgMQogICAgY292ZXIgMTAKICAgIGNvdmVyIDEwCiAgICB1bmNvdmVyIDEKICAgIGNvdmVyIDEwCiAgICB1bmNvdmVyIDEKICAgIGNvdmVyIDEwCiAgICBjb3ZlciAxMAogICAgLy8gdGVzdHMvYXBwcm92YWxzL2FycmF5LWRlc3RydWN0dXJpbmcuYWxnby50czoxOAogICAgLy8gYXNzZXJ0KGEgPT09IDUpCiAgICBwdXNoaW50IDUKICAgID09CiAgICBhc3NlcnQKICAgIC8vIHRlc3RzL2FwcHJvdmFscy9hcnJheS1kZXN0cnVjdHVyaW5nLmFsZ28udHM6MTkKICAgIC8vIGFzc2VydChiID09PSBCeXRlcygpKQogICAgYnl0ZWNfMCAvLyAweAogICAgPT0KICAgIGFzc2VydAogICAgLy8gdGVzdHMvYXBwcm92YWxzL2FycmF5LWRlc3RydWN0dXJpbmcuYWxnby50czoyMAogICAgLy8gYXNzZXJ0KCFjKQogICAgIQogICAgYXNzZXJ0CiAgICAvLyB0ZXN0cy9hcHByb3ZhbHMvYXJyYXktZGVzdHJ1Y3R1cmluZy5hbGdvLnRzOjIxCiAgICAvLyBhc3NlcnQoZCA9PT0gNm4pCiAgICB1bmNvdmVyIDIKICAgIGJ5dGVjXzEgLy8gMHgwNgogICAgYj09CiAgICBhc3NlcnQKICAgIC8vIHRlc3RzL2FwcHJvdmFscy9hcnJheS1kZXN0cnVjdHVyaW5nLmFsZ28udHM6MjIKICAgIC8vIGFzc2VydCghZSkKICAgIHVuY292ZXIgMQogICAgIQogICAgYXNzZXJ0CiAgICAvLyB0ZXN0cy9hcHByb3ZhbHMvYXJyYXktZGVzdHJ1Y3R1cmluZy5hbGdvLnRzOjIzCiAgICAvLyBhc3NlcnQoZyA9PT0gNSkKICAgIHB1c2hpbnQgNQogICAgPT0KICAgIGFzc2VydAogICAgLy8gdGVzdHMvYXBwcm92YWxzL2FycmF5LWRlc3RydWN0dXJpbmcuYWxnby50czoyNAogICAgLy8gYXNzZXJ0KGkgPT09IDZuKQogICAgYnl0ZWNfMSAvLyAweDA2CiAgICBiPT0KICAgIGFzc2VydAogICAgLy8gdGVzdHMvYXBwcm92YWxzL2FycmF5LWRlc3RydWN0dXJpbmcuYWxnby50czoyNQogICAgLy8gYXNzZXJ0TWF0Y2goZiwgWzUsIEJ5dGVzKCksIGZhbHNlLCA2bl0pCiAgICBwdXNoaW50IDQKICAgIHB1c2hpbnQgNAogICAgPT0KICAgIHVuY292ZXIgMQogICAgcHVzaGludCA1CiAgICA9PQogICAgJiYKICAgIHVuY292ZXIgMQogICAgYnl0ZWNfMCAvLyAweAogICAgPT0KICAgICYmCiAgICB1bmNvdmVyIDEKICAgIGludGNfMCAvLyAwCiAgICA9PQogICAgJiYKICAgIHVuY292ZXIgMQogICAgYnl0ZWNfMSAvLyAweDA2CiAgICBiPT0KICAgICYmCiAgICBhc3NlcnQgLy8gYXNzZXJ0IHRhcmdldCBpcyBtYXRjaCBmb3IgY29uZGl0aW9ucwogICAgLy8gdGVzdHMvYXBwcm92YWxzL2FycmF5LWRlc3RydWN0dXJpbmcuYWxnby50czoyNwogICAgLy8gY29uc3QgW3gsIHksIHpdID0gdGhpcy5wcm9kdWNlRml4ZWQoKQogICAgY2FsbHN1YiB0ZXN0cy9hcHByb3ZhbHMvYXJyYXktZGVzdHJ1Y3R1cmluZy5hbGdvLnRzOjpBcnJheURlc3RydWN0dXJpbmdBbGdvLnByb2R1Y2VGaXhlZAogICAgcmV0c3ViCgoKLy8gdGVzdHMvYXBwcm92YWxzL2FycmF5LWRlc3RydWN0dXJpbmcuYWxnby50czo6QXJyYXlEZXN0cnVjdHVyaW5nQWxnby5wcm9kdWNlSXRlbXMoKSAtPiB1aW50NjQsIGJ5dGVzLCB1aW50NjQsIGJ5dGVzOgpwcm9kdWNlSXRlbXM6CiAgICBiIHByb2R1Y2VJdGVtc19ibG9ja0AwCgpwcm9kdWNlSXRlbXNfYmxvY2tAMDoKICAgIC8vIHRlc3RzL2FwcHJvdmFscy9hcnJheS1kZXN0cnVjdHVyaW5nLmFsZ28udHM6MzEKICAgIC8vIHJldHVybiBbNSwgQnl0ZXMoKSwgZmFsc2UsIDZuXQogICAgcHVzaGludCA1CiAgICBieXRlY18wIC8vIDB4CiAgICBpbnRjXzAgLy8gMAogICAgYnl0ZWNfMSAvLyAweDA2CiAgICByZXRzdWIKCgovLyB0ZXN0cy9hcHByb3ZhbHMvYXJyYXktZGVzdHJ1Y3R1cmluZy5hbGdvLnRzOjpBcnJheURlc3RydWN0dXJpbmdBbGdvLnRlc3RMaXRlcmFsRGVzdHJ1Y3R1cmluZygpIC0+IHZvaWQ6CnRlc3RzL2FwcHJvdmFscy9hcnJheS1kZXN0cnVjdHVyaW5nLmFsZ28udHM6OkFycmF5RGVzdHJ1Y3R1cmluZ0FsZ28udGVzdExpdGVyYWxEZXN0cnVjdHVyaW5nOgogICAgYiB0ZXN0cy9hcHByb3ZhbHMvYXJyYXktZGVzdHJ1Y3R1cmluZy5hbGdvLnRzOjpBcnJheURlc3RydWN0dXJpbmdBbGdvLnRlc3RMaXRlcmFsRGVzdHJ1Y3R1cmluZ19ibG9ja0AwCgp0ZXN0cy9hcHByb3ZhbHMvYXJyYXktZGVzdHJ1Y3R1cmluZy5hbGdvLnRzOjpBcnJheURlc3RydWN0dXJpbmdBbGdvLnRlc3RMaXRlcmFsRGVzdHJ1Y3R1cmluZ19ibG9ja0AwOgogICAgLy8gdGVzdHMvYXBwcm92YWxzL2FycmF5LWRlc3RydWN0dXJpbmcuYWxnby50czozNQogICAgLy8gbGV0IGEgPSBVaW50NjQoMSkKICAgIGludGNfMiAvLyAxCiAgICAvLyB0ZXN0cy9hcHByb3ZhbHMvYXJyYXktZGVzdHJ1Y3R1cmluZy5hbGdvLnRzOjM4CiAgICAvLyBjb25zdCBbeCwgeV0gPSAoW2IsIGFdID0gW2EsIGJdKQogICAgaXRvYgogICAgYnl0ZWNfMCAvLyAweAogICAgdW5jb3ZlciAxCiAgICBjb25jYXQKICAgIC8vIHRlc3RzL2FwcHJvdmFscy9hcnJheS1kZXN0cnVjdHVyaW5nLmFsZ28udHM6MzYKICAgIC8vIGxldCBiID0gVWludDY0KDIpCiAgICBwdXNoaW50IDIKICAgIC8vIHRlc3RzL2FwcHJvdmFscy9hcnJheS1kZXN0cnVjdHVyaW5nLmFsZ28udHM6MzgKICAgIC8vIGNvbnN0IFt4LCB5XSA9IChbYiwgYV0gPSBbYSwgYl0pCiAgICBpdG9iCiAgICBjb25jYXQKICAgIGR1cAogICAgaW50Y18wIC8vIDAKICAgIGludGNfMyAvLyA4CiAgICBleHRyYWN0MwogICAgYnRvaQogICAgY292ZXIgMQogICAgaW50Y18zIC8vIDgKICAgIGludGNfMyAvLyA4CiAgICBleHRyYWN0MwogICAgYnRvaQogICAgY292ZXIgMQogICAgLy8gdGVzdHMvYXBwcm92YWxzL2FycmF5LWRlc3RydWN0dXJpbmcuYWxnby50czozNQogICAgLy8gbGV0IGEgPSBVaW50NjQoMSkKICAgIGludGNfMiAvLyAxCiAgICAvLyB0ZXN0cy9hcHByb3ZhbHMvYXJyYXktZGVzdHJ1Y3R1cmluZy5hbGdvLnRzOjQwCiAgICAvLyBhc3NlcnQoeCA9PT0gYikKICAgID09CiAgICBhc3NlcnQKICAgIC8vIHRlc3RzL2FwcHJvdmFscy9hcnJheS1kZXN0cnVjdHVyaW5nLmFsZ28udHM6MzYKICAgIC8vIGxldCBiID0gVWludDY0KDIpCiAgICBwdXNoaW50IDIKICAgIC8vIHRlc3RzL2FwcHJvdmFscy9hcnJheS1kZXN0cnVjdHVyaW5nLmFsZ28udHM6NDEKICAgIC8vIGFzc2VydCh5ID09PSBhKQogICAgPT0KICAgIGFzc2VydAogICAgcmV0c3ViCgoKLy8gdGVzdHMvYXBwcm92YWxzL2FycmF5LWRlc3RydWN0dXJpbmcuYWxnby50czo6QXJyYXlEZXN0cnVjdHVyaW5nQWxnby5wcm9kdWNlRml4ZWQoKSAtPiBieXRlczoKdGVzdHMvYXBwcm92YWxzL2FycmF5LWRlc3RydWN0dXJpbmcuYWxnby50czo6QXJyYXlEZXN0cnVjdHVyaW5nQWxnby5wcm9kdWNlRml4ZWQ6CiAgICBiIHRlc3RzL2FwcHJvdmFscy9hcnJheS1kZXN0cnVjdHVyaW5nLmFsZ28udHM6OkFycmF5RGVzdHJ1Y3R1cmluZ0FsZ28ucHJvZHVjZUZpeGVkX2Jsb2NrQDAKCnRlc3RzL2FwcHJvdmFscy9hcnJheS1kZXN0cnVjdHVyaW5nLmFsZ28udHM6OkFycmF5RGVzdHJ1Y3R1cmluZ0FsZ28ucHJvZHVjZUZpeGVkX2Jsb2NrQDA6CiAgICAvLyB0ZXN0cy9hcHByb3ZhbHMvYXJyYXktZGVzdHJ1Y3R1cmluZy5hbGdvLnRzOjQ1CiAgICAvLyByZXR1cm4gbmV3IEZpeGVkQXJyYXk8dWludDY0LCAzPigxLCAyLCAzKQogICAgaW50Y18yIC8vIDEKICAgIGl0b2IKICAgIGJ5dGVjXzAgLy8gMHgKICAgIHVuY292ZXIgMQogICAgY29uY2F0CiAgICBwdXNoaW50IDIKICAgIGl0b2IKICAgIGNvbmNhdAogICAgcHVzaGludCAzCiAgICBpdG9iCiAgICBjb25jYXQKICAgIHJldHN1YgoKCi8vIHRlc3RzL2FwcHJvdmFscy9hcnJheS1kZXN0cnVjdHVyaW5nLmFsZ28udHM6OkFycmF5RGVzdHJ1Y3R1cmluZ0FsZ28uX19hbGdvdHNfXy5kZWZhdWx0Q3JlYXRlKCkgLT4gdm9pZDoKX19hbGdvdHNfXy5kZWZhdWx0Q3JlYXRlOgogICAgYiBfX2FsZ290c19fLmRlZmF1bHRDcmVhdGVfYmxvY2tAMAoKX19hbGdvdHNfXy5kZWZhdWx0Q3JlYXRlX2Jsb2NrQDA6CiAgICByZXRzdWIK", "clear": "I3ByYWdtYSB2ZXJzaW9uIDExCiNwcmFnbWEgdHlwZXRyYWNrIGZhbHNlCgovLyBAYWxnb3JhbmRmb3VuZGF0aW9uL2FsZ29yYW5kLXR5cGVzY3JpcHQvYmFzZS1jb250cmFjdC5kLnRzOjpCYXNlQ29udHJhY3QuY2xlYXJTdGF0ZVByb2dyYW0oKSAtPiB1aW50NjQ6Cm1haW46CiAgICBiIG1haW5fYmxvY2tAMAoKbWFpbl9ibG9ja0AwOgogICAgcHVzaGludCAxCiAgICByZXR1cm4K" }, "byteCode": { "approval": "CyAEAEABCCYDAAEGBBUffHVCAABCAAAxGyITQQBeQgAAMRkiEkQxGCITQQBMQgAANhoAgAR0t+jfgASngADegAQtr8bGgATUi2mDTwSOBAAcABYAEAAKQgAAQgAAQgAAAIgAqUL/84gAm0L/7YgAjUL/54gAFUL/4UL/4TEZIhIxGCISEESIAWEkQ0IAADYaAUkVgYgBEkRJIiVYF04BJYGAAVhJIiNYTgEjI1hPAk4BTwJPAU8CTwJPAogAXE4ETgNOAk4BFihPAVBOAkkVIw5EI6+rKE8BUEsBFSMORCOvTwKrUFBPARZQSwEVIw5EI69PAqtQKk8BULAkQ0IAAIgAMiRDQgAAiACrJENCAACIAMUqTwFQsCRDigMFQgAAi/2L/ov/i/2L/k8ETwRPBE8ETwSJigAAQgAAiABvTgNOAk4BTgNOA04DTgOIAF5OB04CTgZOBU4DiABRTgNOA04CSU4HSwFOCk4KTwFOCk8BTgpOCoEFEkQoEkQURE8CKahETwEURIEFEkQpqESBBIEEEk8BgQUSEE8BKBIQTwEiEhBPASmoEESIACyJQgAAgQUoIimJQgAAJBYoTwFQgQIWUEkiJVgXTgElJVgXTgEkEkSBAhJEiUIAACQWKE8BUIECFlCBAxZQiUIAAIk=", "clear": "C0IAAIEBQw==" }, "compilerInfo": { "compiler": "puya", "compilerVersion": { "major": 5, "minor": 10, "patch": 0 } }, "events": [], "templateVariables": {} }