{ "name": "ArrayAccessContract", "structs": {}, "methods": [ { "name": "test_branching_array_call", "args": [ { "type": "bool", "name": "maybe" } ], "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": {} } }, "bareActions": { "create": [ "NoOp" ], "call": [] }, "sourceInfo": { "approval": { "sourceInfo": [ { "pc": [ 41 ], "errorMessage": "OnCompletion is not NoOp" }, { "pc": [ 61 ], "errorMessage": "can only call when creating" }, { "pc": [ 44 ], "errorMessage": "can only call when not creating" }, { "pc": [ 107, 120 ], "errorMessage": "correct args used 1" }, { "pc": [ 113, 128 ], "errorMessage": "correct args used 2" }, { "pc": [ 136 ], "errorMessage": "correct args used 3" } ], "pcOffsetMethod": "none" }, "clear": { "sourceInfo": [], "pcOffsetMethod": "none" } }, "source": { "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCiNwcmFnbWEgdHlwZXRyYWNrIGZhbHNlCgovLyBhbGdvcHkuYXJjNC5BUkM0Q29udHJhY3QuYXBwcm92YWxfcHJvZ3JhbSgpIC0+IHVpbnQ2NDoKbWFpbjoKICAgIGludGNibG9jayAwIDEgNgogICAgYnl0ZWNibG9jayAweDA5ODEwMSAweDMxIDB4MzIgMHgzMwogICAgLy8gaW5uZXJfdHJhbnNhY3Rpb25zL2FycmF5X2FjY2Vzcy5weToyMAogICAgLy8gY2xhc3MgQXJyYXlBY2Nlc3NDb250cmFjdChBUkM0Q29udHJhY3QpOgogICAgdHhuIE51bUFwcEFyZ3MKICAgIGJ6IG1haW5fYmFyZV9yb3V0aW5nQDYKICAgIHB1c2hieXRlcyAweDg5YTgyMjBhIC8vIG1ldGhvZCAidGVzdF9icmFuY2hpbmdfYXJyYXlfY2FsbChib29sKXZvaWQiCiAgICB0eG5hIEFwcGxpY2F0aW9uQXJncyAwCiAgICBtYXRjaCBtYWluX3Rlc3RfYnJhbmNoaW5nX2FycmF5X2NhbGxfcm91dGVAMwoKbWFpbl9hZnRlcl9pZl9lbHNlQDEwOgogICAgLy8gaW5uZXJfdHJhbnNhY3Rpb25zL2FycmF5X2FjY2Vzcy5weToyMAogICAgLy8gY2xhc3MgQXJyYXlBY2Nlc3NDb250cmFjdChBUkM0Q29udHJhY3QpOgogICAgaW50Y18wIC8vIDAKICAgIHJldHVybgoKbWFpbl90ZXN0X2JyYW5jaGluZ19hcnJheV9jYWxsX3JvdXRlQDM6CiAgICAvLyBpbm5lcl90cmFuc2FjdGlvbnMvYXJyYXlfYWNjZXNzLnB5OjIxCiAgICAvLyBAYXJjNC5hYmltZXRob2QKICAgIHR4biBPbkNvbXBsZXRpb24KICAgICEKICAgIGFzc2VydCAvLyBPbkNvbXBsZXRpb24gaXMgbm90IE5vT3AKICAgIHR4biBBcHBsaWNhdGlvbklECiAgICBhc3NlcnQgLy8gY2FuIG9ubHkgY2FsbCB3aGVuIG5vdCBjcmVhdGluZwogICAgLy8gaW5uZXJfdHJhbnNhY3Rpb25zL2FycmF5X2FjY2Vzcy5weToyMAogICAgLy8gY2xhc3MgQXJyYXlBY2Nlc3NDb250cmFjdChBUkM0Q29udHJhY3QpOgogICAgdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQogICAgLy8gaW5uZXJfdHJhbnNhY3Rpb25zL2FycmF5X2FjY2Vzcy5weToyMQogICAgLy8gQGFyYzQuYWJpbWV0aG9kCiAgICBjYWxsc3ViIHRlc3RfYnJhbmNoaW5nX2FycmF5X2NhbGwKICAgIGludGNfMSAvLyAxCiAgICByZXR1cm4KCm1haW5fYmFyZV9yb3V0aW5nQDY6CiAgICAvLyBpbm5lcl90cmFuc2FjdGlvbnMvYXJyYXlfYWNjZXNzLnB5OjIwCiAgICAvLyBjbGFzcyBBcnJheUFjY2Vzc0NvbnRyYWN0KEFSQzRDb250cmFjdCk6CiAgICB0eG4gT25Db21wbGV0aW9uCiAgICBibnogbWFpbl9hZnRlcl9pZl9lbHNlQDEwCiAgICB0eG4gQXBwbGljYXRpb25JRAogICAgIQogICAgYXNzZXJ0IC8vIGNhbiBvbmx5IGNhbGwgd2hlbiBjcmVhdGluZwogICAgaW50Y18xIC8vIDEKICAgIHJldHVybgoKCi8vIHRlc3RfY2FzZXMuaW5uZXJfdHJhbnNhY3Rpb25zLmFycmF5X2FjY2Vzcy5BcnJheUFjY2Vzc0NvbnRyYWN0LnRlc3RfYnJhbmNoaW5nX2FycmF5X2NhbGwobWF5YmU6IGJ5dGVzKSAtPiB2b2lkOgp0ZXN0X2JyYW5jaGluZ19hcnJheV9jYWxsOgogICAgLy8gaW5uZXJfdHJhbnNhY3Rpb25zL2FycmF5X2FjY2Vzcy5weToyMS0yMgogICAgLy8gQGFyYzQuYWJpbWV0aG9kCiAgICAvLyBkZWYgdGVzdF9icmFuY2hpbmdfYXJyYXlfY2FsbChzZWxmLCBtYXliZTogYXJjNC5Cb29sKSAtPiBOb25lOgogICAgcHJvdG8gMSAwCiAgICAvLyBpbm5lcl90cmFuc2FjdGlvbnMvYXJyYXlfYWNjZXNzLnB5OjIzCiAgICAvLyBpZiBtYXliZToKICAgIGZyYW1lX2RpZyAtMQogICAgcHVzaGJ5dGVzIDB4MDAKICAgICE9CiAgICBkdXAKICAgIGJ6IHRlc3RfYnJhbmNoaW5nX2FycmF5X2NhbGxfZWxzZV9ib2R5QDMKICAgIC8vIGlubmVyX3RyYW5zYWN0aW9ucy9hcnJheV9hY2Nlc3MucHk6MjQtMjgKICAgIC8vIGNyZWF0ZV9hcHBfdHhuID0gaXR4bi5BcHBsaWNhdGlvbkNhbGwoCiAgICAvLyAgICAgYXBwcm92YWxfcHJvZ3JhbT1BTFdBWVNfQVBQUk9WRSwKICAgIC8vICAgICBjbGVhcl9zdGF0ZV9wcm9ncmFtPUFMV0FZU19BUFBST1ZFLAogICAgLy8gICAgIGFwcF9hcmdzPShCeXRlcyhiIjEiKSwgQnl0ZXMoYiIyIikpLAogICAgLy8gKS5zdWJtaXQoKQogICAgaXR4bl9iZWdpbgogICAgLy8gaW5uZXJfdHJhbnNhY3Rpb25zL2FycmF5X2FjY2Vzcy5weToyNwogICAgLy8gYXBwX2FyZ3M9KEJ5dGVzKGIiMSIpLCBCeXRlcyhiIjIiKSksCiAgICBieXRlY18xIC8vIDB4MzEKICAgIGl0eG5fZmllbGQgQXBwbGljYXRpb25BcmdzCiAgICBieXRlY18yIC8vIDB4MzIKICAgIGl0eG5fZmllbGQgQXBwbGljYXRpb25BcmdzCiAgICAvLyBpbm5lcl90cmFuc2FjdGlvbnMvYXJyYXlfYWNjZXNzLnB5OjI2CiAgICAvLyBjbGVhcl9zdGF0ZV9wcm9ncmFtPUFMV0FZU19BUFBST1ZFLAogICAgYnl0ZWNfMCAvLyAweDA5ODEwMQogICAgaXR4bl9maWVsZCBDbGVhclN0YXRlUHJvZ3JhbVBhZ2VzCiAgICAvLyBpbm5lcl90cmFuc2FjdGlvbnMvYXJyYXlfYWNjZXNzLnB5OjI1CiAgICAvLyBhcHByb3ZhbF9wcm9ncmFtPUFMV0FZU19BUFBST1ZFLAogICAgYnl0ZWNfMCAvLyAweDA5ODEwMQogICAgaXR4bl9maWVsZCBBcHByb3ZhbFByb2dyYW1QYWdlcwogICAgLy8gaW5uZXJfdHJhbnNhY3Rpb25zL2FycmF5X2FjY2Vzcy5weToyNAogICAgLy8gY3JlYXRlX2FwcF90eG4gPSBpdHhuLkFwcGxpY2F0aW9uQ2FsbCgKICAgIGludGNfMiAvLyBhcHBsCiAgICBpdHhuX2ZpZWxkIFR5cGVFbnVtCiAgICBpbnRjXzAgLy8gMAogICAgaXR4bl9maWVsZCBGZWUKICAgIC8vIGlubmVyX3RyYW5zYWN0aW9ucy9hcnJheV9hY2Nlc3MucHk6MjQtMjgKICAgIC8vIGNyZWF0ZV9hcHBfdHhuID0gaXR4bi5BcHBsaWNhdGlvbkNhbGwoCiAgICAvLyAgICAgYXBwcm92YWxfcHJvZ3JhbT1BTFdBWVNfQVBQUk9WRSwKICAgIC8vICAgICBjbGVhcl9zdGF0ZV9wcm9ncmFtPUFMV0FZU19BUFBST1ZFLAogICAgLy8gICAgIGFwcF9hcmdzPShCeXRlcyhiIjEiKSwgQnl0ZXMoYiIyIikpLAogICAgLy8gKS5zdWJtaXQoKQogICAgaXR4bl9zdWJtaXQKCnRlc3RfYnJhbmNoaW5nX2FycmF5X2NhbGxfYWZ0ZXJfaWZfZWxzZUA1OgogICAgLy8gaW5uZXJfdHJhbnNhY3Rpb25zL2FycmF5X2FjY2Vzcy5weTozNgogICAgLy8gaWYgbWF5YmU6CiAgICBmcmFtZV9kaWcgMAogICAgYnogdGVzdF9icmFuY2hpbmdfYXJyYXlfY2FsbF9lbHNlX2JvZHlANwogICAgLy8gaW5uZXJfdHJhbnNhY3Rpb25zL2FycmF5X2FjY2Vzcy5weTozNwogICAgLy8gYXNzZXJ0IGNyZWF0ZV9hcHBfdHhuLmFwcF9hcmdzKDApID09IGIiMSIsICJjb3JyZWN0IGFyZ3MgdXNlZCAxIgogICAgaXR4bmEgQXBwbGljYXRpb25BcmdzIDAKICAgIGJ5dGVjXzEgLy8gMHgzMQogICAgPT0KICAgIGFzc2VydCAvLyBjb3JyZWN0IGFyZ3MgdXNlZCAxCiAgICAvLyBpbm5lcl90cmFuc2FjdGlvbnMvYXJyYXlfYWNjZXNzLnB5OjM4CiAgICAvLyBhc3NlcnQgY3JlYXRlX2FwcF90eG4uYXBwX2FyZ3MoMSkgPT0gYiIyIiwgImNvcnJlY3QgYXJncyB1c2VkIDIiCiAgICBpdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQogICAgYnl0ZWNfMiAvLyAweDMyCiAgICA9PQogICAgYXNzZXJ0IC8vIGNvcnJlY3QgYXJncyB1c2VkIDIKICAgIHJldHN1YgoKdGVzdF9icmFuY2hpbmdfYXJyYXlfY2FsbF9lbHNlX2JvZHlANzoKICAgIC8vIGlubmVyX3RyYW5zYWN0aW9ucy9hcnJheV9hY2Nlc3MucHk6NDAKICAgIC8vIGFzc2VydCBjcmVhdGVfYXBwX3R4bi5hcHBfYXJncygwKSA9PSBiIjMiLCAiY29ycmVjdCBhcmdzIHVzZWQgMSIKICAgIGl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCiAgICBieXRlY18zIC8vIDB4MzMKICAgID09CiAgICBhc3NlcnQgLy8gY29ycmVjdCBhcmdzIHVzZWQgMQogICAgLy8gaW5uZXJfdHJhbnNhY3Rpb25zL2FycmF5X2FjY2Vzcy5weTo0MQogICAgLy8gYXNzZXJ0IGNyZWF0ZV9hcHBfdHhuLmFwcF9hcmdzKDEpID09IGIiNCIsICJjb3JyZWN0IGFyZ3MgdXNlZCAyIgogICAgaXR4bmEgQXBwbGljYXRpb25BcmdzIDEKICAgIHB1c2hieXRlcyAweDM0CiAgICA9PQogICAgYXNzZXJ0IC8vIGNvcnJlY3QgYXJncyB1c2VkIDIKICAgIC8vIGlubmVyX3RyYW5zYWN0aW9ucy9hcnJheV9hY2Nlc3MucHk6NDIKICAgIC8vIGFzc2VydCBjcmVhdGVfYXBwX3R4bi5hcHBfYXJncygyKSA9PSBiIjUiLCAiY29ycmVjdCBhcmdzIHVzZWQgMyIKICAgIGl0eG5hIEFwcGxpY2F0aW9uQXJncyAyCiAgICBwdXNoYnl0ZXMgMHgzNQogICAgPT0KICAgIGFzc2VydCAvLyBjb3JyZWN0IGFyZ3MgdXNlZCAzCiAgICByZXRzdWIKCnRlc3RfYnJhbmNoaW5nX2FycmF5X2NhbGxfZWxzZV9ib2R5QDM6CiAgICAvLyBpbm5lcl90cmFuc2FjdGlvbnMvYXJyYXlfYWNjZXNzLnB5OjMwLTM1CiAgICAvLyBjcmVhdGVfYXBwX3R4biA9IGl0eG4uQXBwbGljYXRpb25DYWxsKAogICAgLy8gICAgIGFwcHJvdmFsX3Byb2dyYW09QUxXQVlTX0FQUFJPVkUsCiAgICAvLyAgICAgY2xlYXJfc3RhdGVfcHJvZ3JhbT1BTFdBWVNfQVBQUk9WRSwKICAgIC8vICAgICBhcHBfYXJncz0oQnl0ZXMoYiIzIiksIEJ5dGVzKGIiNCIpLCBCeXRlcyhiIjUiKSksCiAgICAvLyAgICAgbm90ZT1iImRpZmZlcmVudCBwYXJhbSBzZXQiLAogICAgLy8gKS5zdWJtaXQoKQogICAgaXR4bl9iZWdpbgogICAgLy8gaW5uZXJfdHJhbnNhY3Rpb25zL2FycmF5X2FjY2Vzcy5weTozNAogICAgLy8gbm90ZT1iImRpZmZlcmVudCBwYXJhbSBzZXQiLAogICAgcHVzaGJ5dGVzIDB4NjQ2OTY2NjY2NTcyNjU2ZTc0MjA3MDYxNzI2MTZkMjA3MzY1NzQKICAgIGl0eG5fZmllbGQgTm90ZQogICAgLy8gaW5uZXJfdHJhbnNhY3Rpb25zL2FycmF5X2FjY2Vzcy5weTozMwogICAgLy8gYXBwX2FyZ3M9KEJ5dGVzKGIiMyIpLCBCeXRlcyhiIjQiKSwgQnl0ZXMoYiI1IikpLAogICAgYnl0ZWNfMyAvLyAweDMzCiAgICBpdHhuX2ZpZWxkIEFwcGxpY2F0aW9uQXJncwogICAgcHVzaGJ5dGVzIDB4MzQKICAgIGl0eG5fZmllbGQgQXBwbGljYXRpb25BcmdzCiAgICBwdXNoYnl0ZXMgMHgzNQogICAgaXR4bl9maWVsZCBBcHBsaWNhdGlvbkFyZ3MKICAgIC8vIGlubmVyX3RyYW5zYWN0aW9ucy9hcnJheV9hY2Nlc3MucHk6MzIKICAgIC8vIGNsZWFyX3N0YXRlX3Byb2dyYW09QUxXQVlTX0FQUFJPVkUsCiAgICBieXRlY18wIC8vIDB4MDk4MTAxCiAgICBpdHhuX2ZpZWxkIENsZWFyU3RhdGVQcm9ncmFtUGFnZXMKICAgIC8vIGlubmVyX3RyYW5zYWN0aW9ucy9hcnJheV9hY2Nlc3MucHk6MzEKICAgIC8vIGFwcHJvdmFsX3Byb2dyYW09QUxXQVlTX0FQUFJPVkUsCiAgICBieXRlY18wIC8vIDB4MDk4MTAxCiAgICBpdHhuX2ZpZWxkIEFwcHJvdmFsUHJvZ3JhbVBhZ2VzCiAgICAvLyBpbm5lcl90cmFuc2FjdGlvbnMvYXJyYXlfYWNjZXNzLnB5OjMwCiAgICAvLyBjcmVhdGVfYXBwX3R4biA9IGl0eG4uQXBwbGljYXRpb25DYWxsKAogICAgaW50Y18yIC8vIGFwcGwKICAgIGl0eG5fZmllbGQgVHlwZUVudW0KICAgIGludGNfMCAvLyAwCiAgICBpdHhuX2ZpZWxkIEZlZQogICAgLy8gaW5uZXJfdHJhbnNhY3Rpb25zL2FycmF5X2FjY2Vzcy5weTozMC0zNQogICAgLy8gY3JlYXRlX2FwcF90eG4gPSBpdHhuLkFwcGxpY2F0aW9uQ2FsbCgKICAgIC8vICAgICBhcHByb3ZhbF9wcm9ncmFtPUFMV0FZU19BUFBST1ZFLAogICAgLy8gICAgIGNsZWFyX3N0YXRlX3Byb2dyYW09QUxXQVlTX0FQUFJPVkUsCiAgICAvLyAgICAgYXBwX2FyZ3M9KEJ5dGVzKGIiMyIpLCBCeXRlcyhiIjQiKSwgQnl0ZXMoYiI1IikpLAogICAgLy8gICAgIG5vdGU9YiJkaWZmZXJlbnQgcGFyYW0gc2V0IiwKICAgIC8vICkuc3VibWl0KCkKICAgIGl0eG5fc3VibWl0CiAgICBiIHRlc3RfYnJhbmNoaW5nX2FycmF5X2NhbGxfYWZ0ZXJfaWZfZWxzZUA1Cg==", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEwCiNwcmFnbWEgdHlwZXRyYWNrIGZhbHNlCgovLyBhbGdvcHkuYXJjNC5BUkM0Q29udHJhY3QuY2xlYXJfc3RhdGVfcHJvZ3JhbSgpIC0+IHVpbnQ2NDoKbWFpbjoKICAgIHB1c2hpbnQgMSAvLyAxCiAgICByZXR1cm4K" }, "byteCode": { "approval": "CiADAAEGJgQDCYEBATEBMgEzMRtBAB6ABImoIgo2GgCOAQACIkMxGRREMRhENhoBiAANI0MxGUD/6jEYFEQjQ4oBAIv/gAEAE0lBAD2xKbIaKrIaKLJCKLJAJLIQIrIBs4sAQQANtRoAKRJEtRoBKhJEibUaACsSRLUaAYABNBJEtRoCgAE1EkSJsYATZGlmZmVyZW50IHBhcmFtIHNldLIFK7IagAE0shqAATWyGiiyQiiyQCSyECKyAbNC/6I=", "clear": "CoEBQw==" }, "compilerInfo": { "compiler": "puya", "compilerVersion": { "major": 99, "minor": 99, "patch": 99 } }, "events": [], "templateVariables": {} }