{ "name": "Contract", "structs": {}, "methods": [ { "name": "append", "args": [], "returns": { "type": "void" }, "actions": { "create": [], "call": [ "NoOp" ] }, "readonly": false, "events": [], "recommendations": {} }, { "name": "modify", "args": [], "returns": { "type": "void" }, "actions": { "create": [], "call": [ "NoOp" ] }, "readonly": false, "events": [], "recommendations": {} }, { "name": "get", "args": [], "returns": { "type": "(uint64,string)[]" }, "actions": { "create": [], "call": [ "NoOp" ] }, "readonly": false, "events": [], "recommendations": {} } ], "arcs": [ 22, 28 ], "networks": {}, "state": { "schema": { "global": { "ints": 0, "bytes": 1 }, "local": { "ints": 0, "bytes": 1 } }, "keys": { "global": { "glob": { "keyType": "AVMString", "valueType": "(uint64,string)[]", "key": "Z2xvYg==" } }, "local": { "loc": { "keyType": "AVMString", "valueType": "(uint64,string)[]", "key": "bG9j" } }, "box": { "box": { "keyType": "AVMString", "valueType": "(uint64,string)[]", "key": "Ym94" } } }, "maps": { "global": {}, "local": {}, "box": { "map": { "keyType": "AVMBytes", "valueType": "(uint64,string)[]", "prefix": "bWFw" } } } }, "bareActions": { "create": [ "NoOp" ], "call": [ "OptIn" ] }, "sourceInfo": { "approval": { "sourceInfo": [ { "pc": [ 557, 604, 647, 698 ], "errorMessage": "Index access is out of bounds" }, { "pc": [ 96, 117, 129 ], "errorMessage": "OnCompletion is not NoOp" }, { "pc": [ 160 ], "errorMessage": "can only call when creating" }, { "pc": [ 99, 120, 132, 151 ], "errorMessage": "can only call when not creating" }, { "pc": [ 494, 634, 741 ], "errorMessage": "check self.box exists" }, { "pc": [ 452, 544, 732 ], "errorMessage": "check self.glob exists" }, { "pc": [ 475, 591, 738 ], "errorMessage": "check self.loc exists for account" }, { "pc": [ 521, 685, 748 ], "errorMessage": "check self.map entry exists" }, { "pc": [ 760 ], "errorMessage": "expected box == global" }, { "pc": [ 754 ], "errorMessage": "expected local == global" }, { "pc": [ 764 ], "errorMessage": "expected map == global" } ], "pcOffsetMethod": "none" }, "clear": { "sourceInfo": [], "pcOffsetMethod": "none" } }, "source": { "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCiNwcmFnbWEgdHlwZXRyYWNrIGZhbHNlCgovLyB0ZXN0X2Nhc2VzLnN0YXRlX211dGF0aW9ucy5jb250cmFjdC5Db250cmFjdC5fX2FsZ29weV9lbnRyeXBvaW50X3dpdGhfaW5pdCgpIC0+IHVpbnQ2NDoKbWFpbjoKICAgIGludGNibG9jayAwIDEgMiA4CiAgICBieXRlY2Jsb2NrICJib3giICJnbG9iIiAibG9jIiAweDAwMDAgIm1hcCIgMHgwMDAyMDAwMDAwMDAwMDAwMDAwMTAwMGEwMDAzNjI2MTdhIDB4MDAwODZkNmY2NDY5NjY2OTY1NjQKICAgIC8vIHN0YXRlX211dGF0aW9ucy9jb250cmFjdC5weToyMgogICAgLy8gY2xhc3MgQ29udHJhY3QoQVJDNENvbnRyYWN0KToKICAgIHR4biBOdW1BcHBBcmdzCiAgICBieiBtYWluX2JhcmVfcm91dGluZ0A4CiAgICBwdXNoYnl0ZXNzIDB4NTI2ZThiYmYgMHg5NWZlZjEzZCAweDBjMjk0NDRiIC8vIG1ldGhvZCAiYXBwZW5kKCl2b2lkIiwgbWV0aG9kICJtb2RpZnkoKXZvaWQiLCBtZXRob2QgImdldCgpKHVpbnQ2NCxzdHJpbmcpW10iCiAgICB0eG5hIEFwcGxpY2F0aW9uQXJncyAwCiAgICBtYXRjaCBtYWluX2FwcGVuZF9yb3V0ZUA1IG1haW5fbW9kaWZ5X3JvdXRlQDYgbWFpbl9nZXRfcm91dGVANwoKbWFpbl9hZnRlcl9pZl9lbHNlQDExOgogICAgLy8gc3RhdGVfbXV0YXRpb25zL2NvbnRyYWN0LnB5OjIyCiAgICAvLyBjbGFzcyBDb250cmFjdChBUkM0Q29udHJhY3QpOgogICAgaW50Y18wIC8vIDAKICAgIHJldHVybgoKbWFpbl9nZXRfcm91dGVANzoKICAgIC8vIHN0YXRlX211dGF0aW9ucy9jb250cmFjdC5weTo1MQogICAgLy8gQGFyYzQuYWJpbWV0aG9kCiAgICB0eG4gT25Db21wbGV0aW9uCiAgICAhCiAgICBhc3NlcnQgLy8gT25Db21wbGV0aW9uIGlzIG5vdCBOb09wCiAgICB0eG4gQXBwbGljYXRpb25JRAogICAgYXNzZXJ0IC8vIGNhbiBvbmx5IGNhbGwgd2hlbiBub3QgY3JlYXRpbmcKICAgIGNhbGxzdWIgZ2V0CiAgICBwdXNoYnl0ZXMgMHgxNTFmN2M3NQogICAgc3dhcAogICAgY29uY2F0CiAgICBsb2cKICAgIGludGNfMSAvLyAxCiAgICByZXR1cm4KCm1haW5fbW9kaWZ5X3JvdXRlQDY6CiAgICAvLyBzdGF0ZV9tdXRhdGlvbnMvY29udHJhY3QucHk6NDQKICAgIC8vIEBhcmM0LmFiaW1ldGhvZAogICAgdHhuIE9uQ29tcGxldGlvbgogICAgIQogICAgYXNzZXJ0IC8vIE9uQ29tcGxldGlvbiBpcyBub3QgTm9PcAogICAgdHhuIEFwcGxpY2F0aW9uSUQKICAgIGFzc2VydCAvLyBjYW4gb25seSBjYWxsIHdoZW4gbm90IGNyZWF0aW5nCiAgICBjYWxsc3ViIG1vZGlmeQogICAgaW50Y18xIC8vIDEKICAgIHJldHVybgoKbWFpbl9hcHBlbmRfcm91dGVANToKICAgIC8vIHN0YXRlX211dGF0aW9ucy9jb250cmFjdC5weTozNgogICAgLy8gQGFyYzQuYWJpbWV0aG9kCiAgICB0eG4gT25Db21wbGV0aW9uCiAgICAhCiAgICBhc3NlcnQgLy8gT25Db21wbGV0aW9uIGlzIG5vdCBOb09wCiAgICB0eG4gQXBwbGljYXRpb25JRAogICAgYXNzZXJ0IC8vIGNhbiBvbmx5IGNhbGwgd2hlbiBub3QgY3JlYXRpbmcKICAgIGNhbGxzdWIgYXBwZW5kCiAgICBpbnRjXzEgLy8gMQogICAgcmV0dXJuCgptYWluX2JhcmVfcm91dGluZ0A4OgogICAgLy8gc3RhdGVfbXV0YXRpb25zL2NvbnRyYWN0LnB5OjIyCiAgICAvLyBjbGFzcyBDb250cmFjdChBUkM0Q29udHJhY3QpOgogICAgdHhuIE9uQ29tcGxldGlvbgogICAgc3dpdGNoIG1haW5fX19hbGdvcHlfZGVmYXVsdF9jcmVhdGVAMTAgbWFpbl9vcHRfaW5AOQogICAgYiBtYWluX2FmdGVyX2lmX2Vsc2VAMTEKCm1haW5fb3B0X2luQDk6CiAgICAvLyBzdGF0ZV9tdXRhdGlvbnMvY29udHJhY3QucHk6MjkKICAgIC8vIEBhcmM0LmJhcmVtZXRob2QoYWxsb3dfYWN0aW9ucz1bIk9wdEluIl0pCiAgICB0eG4gQXBwbGljYXRpb25JRAogICAgYXNzZXJ0IC8vIGNhbiBvbmx5IGNhbGwgd2hlbiBub3QgY3JlYXRpbmcKICAgIGNhbGxzdWIgb3B0X2luCiAgICBpbnRjXzEgLy8gMQogICAgcmV0dXJuCgptYWluX19fYWxnb3B5X2RlZmF1bHRfY3JlYXRlQDEwOgogICAgdHhuIEFwcGxpY2F0aW9uSUQKICAgICEKICAgIGFzc2VydCAvLyBjYW4gb25seSBjYWxsIHdoZW4gY3JlYXRpbmcKICAgIGludGNfMSAvLyAxCiAgICByZXR1cm4KCgovLyBfcHV5YV9saWIuYXJjNC5keW5hbWljX2FycmF5X2NvbmNhdF9keW5hbWljX2VsZW1lbnQoYXJyYXlfaXRlbXNfY291bnQ6IHVpbnQ2NCwgYXJyYXlfaGVhZF9hbmRfdGFpbDogYnl0ZXMsIG5ld19pdGVtc19jb3VudDogdWludDY0LCBuZXdfaGVhZF9hbmRfdGFpbDogYnl0ZXMpIC0+IGJ5dGVzOgpkeW5hbWljX2FycmF5X2NvbmNhdF9keW5hbWljX2VsZW1lbnQ6CiAgICBwcm90byA0IDEKICAgIHB1c2hieXRlcyAiIgogICAgZHVwCiAgICBmcmFtZV9kaWcgLTIKICAgIGludGNfMiAvLyAyCiAgICAqCiAgICBmcmFtZV9kaWcgLTQKICAgIGludGNfMiAvLyAyCiAgICAqCiAgICBpbnRjXzAgLy8gMAoKZHluYW1pY19hcnJheV9jb25jYXRfZHluYW1pY19lbGVtZW50X2Zvcl9oZWFkZXJAMToKICAgIGZyYW1lX2RpZyA0CiAgICBmcmFtZV9kaWcgMwogICAgPAogICAgYnogZHluYW1pY19hcnJheV9jb25jYXRfZHluYW1pY19lbGVtZW50X2FmdGVyX2ZvckA0CiAgICBmcmFtZV9kaWcgLTMKICAgIGZyYW1lX2RpZyA0CiAgICBkdXAKICAgIGNvdmVyIDIKICAgIGV4dHJhY3RfdWludDE2CiAgICBmcmFtZV9kaWcgMgogICAgKwogICAgaXRvYgogICAgZXh0cmFjdCA2IDIKICAgIGZyYW1lX2RpZyAxCiAgICBzd2FwCiAgICBjb25jYXQKICAgIGZyYW1lX2J1cnkgMQogICAgaW50Y18yIC8vIDIKICAgICsKICAgIGZyYW1lX2J1cnkgNAogICAgYiBkeW5hbWljX2FycmF5X2NvbmNhdF9keW5hbWljX2VsZW1lbnRfZm9yX2hlYWRlckAxCgpkeW5hbWljX2FycmF5X2NvbmNhdF9keW5hbWljX2VsZW1lbnRfYWZ0ZXJfZm9yQDQ6CiAgICBmcmFtZV9kaWcgLTMKICAgIGxlbgogICAgZnJhbWVfYnVyeSAwCiAgICBpbnRjXzAgLy8gMAogICAgZnJhbWVfYnVyeSA0CgpkeW5hbWljX2FycmF5X2NvbmNhdF9keW5hbWljX2VsZW1lbnRfZm9yX2hlYWRlckA1OgogICAgZnJhbWVfZGlnIDQKICAgIGZyYW1lX2RpZyAyCiAgICA8CiAgICBieiBkeW5hbWljX2FycmF5X2NvbmNhdF9keW5hbWljX2VsZW1lbnRfYWZ0ZXJfZm9yQDgKICAgIGZyYW1lX2RpZyAtMQogICAgZnJhbWVfZGlnIDQKICAgIGR1cAogICAgY292ZXIgMgogICAgZXh0cmFjdF91aW50MTYKICAgIGZyYW1lX2RpZyAwCiAgICArCiAgICBpdG9iCiAgICBleHRyYWN0IDYgMgogICAgZnJhbWVfZGlnIDEKICAgIHN3YXAKICAgIGNvbmNhdAogICAgZnJhbWVfYnVyeSAxCiAgICBpbnRjXzIgLy8gMgogICAgKwogICAgZnJhbWVfYnVyeSA0CiAgICBiIGR5bmFtaWNfYXJyYXlfY29uY2F0X2R5bmFtaWNfZWxlbWVudF9mb3JfaGVhZGVyQDUKCmR5bmFtaWNfYXJyYXlfY29uY2F0X2R5bmFtaWNfZWxlbWVudF9hZnRlcl9mb3JAODoKICAgIGZyYW1lX2RpZyAtNAogICAgZnJhbWVfZGlnIC0yCiAgICArCiAgICBpdG9iCiAgICBleHRyYWN0IDYgMgogICAgZnJhbWVfZGlnIDEKICAgIGNvbmNhdAogICAgZnJhbWVfZGlnIC0zCiAgICBmcmFtZV9kaWcgMwogICAgZnJhbWVfZGlnIDAKICAgIHN1YnN0cmluZzMKICAgIGNvbmNhdAogICAgZnJhbWVfZGlnIC0xCiAgICBsZW4KICAgIGZyYW1lX2RpZyAtMQogICAgZnJhbWVfZGlnIDIKICAgIHVuY292ZXIgMgogICAgc3Vic3RyaW5nMwogICAgY29uY2F0CiAgICBmcmFtZV9idXJ5IDAKICAgIHJldHN1YgoKCi8vIF9wdXlhX2xpYi5hcmM0LmR5bmFtaWNfYXJyYXlfcmVwbGFjZV9keW5hbWljX2VsZW1lbnQoc291cmNlOiBieXRlcywgbmV3X2l0ZW06IGJ5dGVzLCBpbmRleDogdWludDY0KSAtPiBieXRlczoKZHluYW1pY19hcnJheV9yZXBsYWNlX2R5bmFtaWNfZWxlbWVudDoKICAgIHByb3RvIDMgMQogICAgZnJhbWVfZGlnIC0zCiAgICBzdWJzdHJpbmcgMCAyCiAgICBkdXAKICAgIGJ0b2kKICAgIGZyYW1lX2RpZyAtMwogICAgZXh0cmFjdCAyIDAKICAgIGZyYW1lX2RpZyAtMQogICAgaW50Y18yIC8vIDIKICAgICoKICAgIGRpZyAxCiAgICBzd2FwCiAgICBleHRyYWN0X3VpbnQxNgogICAgZnJhbWVfZGlnIC0xCiAgICBpbnRjXzEgLy8gMQogICAgKwogICAgaW50Y18yIC8vIDIKICAgICoKICAgIGR1cAogICAgY292ZXIgNAogICAgZGlnIDIKICAgIHN3YXAKICAgIGV4dHJhY3RfdWludDE2CiAgICBkaWcgMgogICAgbGVuCiAgICBkaWcgNAogICAgZnJhbWVfZGlnIC0xCiAgICAtCiAgICBpbnRjXzEgLy8gMQogICAgLQogICAgZGlnIDEKICAgIHVuY292ZXIgMwogICAgdW5jb3ZlciAyCiAgICBzZWxlY3QKICAgIGR1cAogICAgZGlnIDMKICAgIC0KICAgIGNvdmVyIDUKICAgIGZyYW1lX2RpZyAtMgogICAgbGVuCiAgICBjb3ZlciA1CiAgICBkaWcgMwogICAgaW50Y18wIC8vIDAKICAgIHVuY292ZXIgNAogICAgc3Vic3RyaW5nMwogICAgZnJhbWVfZGlnIC0yCiAgICBjb25jYXQKICAgIHVuY292ZXIgMwogICAgdW5jb3ZlciAyCiAgICB1bmNvdmVyIDMKICAgIHN1YnN0cmluZzMKICAgIGNvbmNhdAogICAgc3dhcAogICAgaW50Y18yIC8vIDIKICAgICoKCmR5bmFtaWNfYXJyYXlfcmVwbGFjZV9keW5hbWljX2VsZW1lbnRfZm9yX2hlYWRlckAyOgogICAgZnJhbWVfZGlnIDEKICAgIGZyYW1lX2RpZyA1CiAgICA8CiAgICBieiBkeW5hbWljX2FycmF5X3JlcGxhY2VfZHluYW1pY19lbGVtZW50X2FmdGVyX2ZvckA1CiAgICBmcmFtZV9kaWcgNAogICAgZHVwCiAgICBmcmFtZV9kaWcgMQogICAgZHVwCiAgICBjb3ZlciAzCiAgICBleHRyYWN0X3VpbnQxNgogICAgZnJhbWVfZGlnIDMKICAgICsKICAgIGZyYW1lX2RpZyAyCiAgICAtCiAgICBpdG9iCiAgICBleHRyYWN0IDYgMgogICAgZGlnIDIKICAgIHN3YXAKICAgIHJlcGxhY2UzCiAgICBmcmFtZV9idXJ5IDQKICAgIGludGNfMiAvLyAyCiAgICArCiAgICBmcmFtZV9idXJ5IDEKICAgIGIgZHluYW1pY19hcnJheV9yZXBsYWNlX2R5bmFtaWNfZWxlbWVudF9mb3JfaGVhZGVyQDIKCmR5bmFtaWNfYXJyYXlfcmVwbGFjZV9keW5hbWljX2VsZW1lbnRfYWZ0ZXJfZm9yQDU6CiAgICBmcmFtZV9kaWcgMAogICAgZnJhbWVfZGlnIDQKICAgIGNvbmNhdAogICAgZnJhbWVfYnVyeSAwCiAgICByZXRzdWIKCgovLyB0ZXN0X2Nhc2VzLnN0YXRlX211dGF0aW9ucy5jb250cmFjdC5Db250cmFjdC5vcHRfaW4oKSAtPiB2b2lkOgpvcHRfaW46CiAgICAvLyBzdGF0ZV9tdXRhdGlvbnMvY29udHJhY3QucHk6MzEKICAgIC8vIHNlbGYuZ2xvYi52YWx1ZSA9IE15QXJyYXkoKQogICAgYnl0ZWNfMSAvLyAiZ2xvYiIKICAgIGJ5dGVjXzMgLy8gMHgwMDAwCiAgICBhcHBfZ2xvYmFsX3B1dAogICAgLy8gc3RhdGVfbXV0YXRpb25zL2NvbnRyYWN0LnB5OjMyCiAgICAvLyBzZWxmLmJveC52YWx1ZSA9IE15QXJyYXkoKQogICAgYnl0ZWNfMCAvLyAiYm94IgogICAgYm94X2RlbAogICAgcG9wCiAgICBieXRlY18wIC8vICJib3giCiAgICBieXRlY18zIC8vIDB4MDAwMAogICAgYm94X3B1dAogICAgLy8gc3RhdGVfbXV0YXRpb25zL2NvbnRyYWN0LnB5OjMzCiAgICAvLyBzZWxmLmxvY1tUeG4uc2VuZGVyXSA9IE15QXJyYXkoKQogICAgdHhuIFNlbmRlcgogICAgYnl0ZWNfMiAvLyAibG9jIgogICAgYnl0ZWNfMyAvLyAweDAwMDAKICAgIGFwcF9sb2NhbF9wdXQKICAgIC8vIHN0YXRlX211dGF0aW9ucy9jb250cmFjdC5weTozNAogICAgLy8gc2VsZi5tYXBbVHhuLnNlbmRlcl0gPSBNeUFycmF5KCkKICAgIGJ5dGVjIDQgLy8gIm1hcCIKICAgIHR4biBTZW5kZXIKICAgIGNvbmNhdAogICAgZHVwCiAgICBib3hfZGVsCiAgICBwb3AKICAgIGJ5dGVjXzMgLy8gMHgwMDAwCiAgICBib3hfcHV0CiAgICByZXRzdWIKCgovLyB0ZXN0X2Nhc2VzLnN0YXRlX211dGF0aW9ucy5jb250cmFjdC5Db250cmFjdC5hcHBlbmQoKSAtPiB2b2lkOgphcHBlbmQ6CiAgICAvLyBzdGF0ZV9tdXRhdGlvbnMvY29udHJhY3QucHk6MzkKICAgIC8vIHNlbGYuZ2xvYi52YWx1ZS5hcHBlbmQoc3RydWN0LmNvcHkoKSkKICAgIGludGNfMCAvLyAwCiAgICBieXRlY18xIC8vICJnbG9iIgogICAgYXBwX2dsb2JhbF9nZXRfZXgKICAgIGFzc2VydCAvLyBjaGVjayBzZWxmLmdsb2IgZXhpc3RzCiAgICBkdXAKICAgIGludGNfMCAvLyAwCiAgICBleHRyYWN0X3VpbnQxNgogICAgc3dhcAogICAgZXh0cmFjdCAyIDAKICAgIGludGNfMSAvLyAxCiAgICBieXRlYyA1IC8vIDB4MDAwMjAwMDAwMDAwMDAwMDAwMDEwMDBhMDAwMzYyNjE3YQogICAgY2FsbHN1YiBkeW5hbWljX2FycmF5X2NvbmNhdF9keW5hbWljX2VsZW1lbnQKICAgIGJ5dGVjXzEgLy8gImdsb2IiCiAgICBzd2FwCiAgICBhcHBfZ2xvYmFsX3B1dAogICAgLy8gc3RhdGVfbXV0YXRpb25zL2NvbnRyYWN0LnB5OjQwCiAgICAvLyBzZWxmLmxvY1tUeG4uc2VuZGVyXS5hcHBlbmQoc3RydWN0LmNvcHkoKSkKICAgIHR4biBTZW5kZXIKICAgIGR1cAogICAgaW50Y18wIC8vIDAKICAgIGJ5dGVjXzIgLy8gImxvYyIKICAgIGFwcF9sb2NhbF9nZXRfZXgKICAgIGFzc2VydCAvLyBjaGVjayBzZWxmLmxvYyBleGlzdHMgZm9yIGFjY291bnQKICAgIGR1cAogICAgaW50Y18wIC8vIDAKICAgIGV4dHJhY3RfdWludDE2CiAgICBzd2FwCiAgICBleHRyYWN0IDIgMAogICAgaW50Y18xIC8vIDEKICAgIGJ5dGVjIDUgLy8gMHgwMDAyMDAwMDAwMDAwMDAwMDAwMTAwMGEwMDAzNjI2MTdhCiAgICBjYWxsc3ViIGR5bmFtaWNfYXJyYXlfY29uY2F0X2R5bmFtaWNfZWxlbWVudAogICAgYnl0ZWNfMiAvLyAibG9jIgogICAgc3dhcAogICAgYXBwX2xvY2FsX3B1dAogICAgLy8gc3RhdGVfbXV0YXRpb25zL2NvbnRyYWN0LnB5OjQxCiAgICAvLyBzZWxmLmJveC52YWx1ZS5hcHBlbmQoc3RydWN0LmNvcHkoKSkKICAgIGJ5dGVjXzAgLy8gImJveCIKICAgIGJveF9nZXQKICAgIGFzc2VydCAvLyBjaGVjayBzZWxmLmJveCBleGlzdHMKICAgIGR1cAogICAgaW50Y18wIC8vIDAKICAgIGV4dHJhY3RfdWludDE2CiAgICBzd2FwCiAgICBleHRyYWN0IDIgMAogICAgaW50Y18xIC8vIDEKICAgIGJ5dGVjIDUgLy8gMHgwMDAyMDAwMDAwMDAwMDAwMDAwMTAwMGEwMDAzNjI2MTdhCiAgICBjYWxsc3ViIGR5bmFtaWNfYXJyYXlfY29uY2F0X2R5bmFtaWNfZWxlbWVudAogICAgYnl0ZWNfMCAvLyAiYm94IgogICAgYm94X2RlbAogICAgcG9wCiAgICBieXRlY18wIC8vICJib3giCiAgICBzd2FwCiAgICBib3hfcHV0CiAgICAvLyBzdGF0ZV9tdXRhdGlvbnMvY29udHJhY3QucHk6NDIKICAgIC8vIHNlbGYubWFwW1R4bi5zZW5kZXJdLmFwcGVuZChzdHJ1Y3QuY29weSgpKQogICAgYnl0ZWMgNCAvLyAibWFwIgogICAgdHhuIFNlbmRlcgogICAgY29uY2F0CiAgICBkdXAKICAgIGJveF9nZXQKICAgIGFzc2VydCAvLyBjaGVjayBzZWxmLm1hcCBlbnRyeSBleGlzdHMKICAgIGR1cAogICAgaW50Y18wIC8vIDAKICAgIGV4dHJhY3RfdWludDE2CiAgICBzd2FwCiAgICBleHRyYWN0IDIgMAogICAgaW50Y18xIC8vIDEKICAgIGJ5dGVjIDUgLy8gMHgwMDAyMDAwMDAwMDAwMDAwMDAwMTAwMGEwMDAzNjI2MTdhCiAgICBjYWxsc3ViIGR5bmFtaWNfYXJyYXlfY29uY2F0X2R5bmFtaWNfZWxlbWVudAogICAgZGlnIDEKICAgIGJveF9kZWwKICAgIHBvcAogICAgYm94X3B1dAogICAgcmV0c3ViCgoKLy8gdGVzdF9jYXNlcy5zdGF0ZV9tdXRhdGlvbnMuY29udHJhY3QuQ29udHJhY3QubW9kaWZ5KCkgLT4gdm9pZDoKbW9kaWZ5OgogICAgLy8gc3RhdGVfbXV0YXRpb25zL2NvbnRyYWN0LnB5OjQ2CiAgICAvLyBzZWxmLmdsb2IudmFsdWVbMF0uYmF6ID0gYXJjNC5TdHJpbmcoIm1vZGlmaWVkIikKICAgIGludGNfMCAvLyAwCiAgICBieXRlY18xIC8vICJnbG9iIgogICAgYXBwX2dsb2JhbF9nZXRfZXgKICAgIGFzc2VydCAvLyBjaGVjayBzZWxmLmdsb2IgZXhpc3RzCiAgICBkdXAKICAgIGV4dHJhY3QgMiAwCiAgICBkdXAKICAgIGludGNfMCAvLyAwCiAgICBleHRyYWN0X3VpbnQxNgogICAgZGlnIDIKICAgIGludGNfMCAvLyAwCiAgICBleHRyYWN0X3VpbnQxNgogICAgaW50Y18xIC8vIDEKICAgIC0gLy8gb24gZXJyb3I6IEluZGV4IGFjY2VzcyBpcyBvdXQgb2YgYm91bmRzCiAgICBkaWcgMgogICAgbGVuCiAgICBkaWcgMwogICAgaW50Y18yIC8vIDIKICAgIGV4dHJhY3RfdWludDE2CiAgICB1bmNvdmVyIDIKICAgIHNlbGVjdAogICAgc3Vic3RyaW5nMwogICAgZHVwCiAgICBpbnRjXzMgLy8gOAogICAgZXh0cmFjdF91aW50MTYKICAgIGludGNfMCAvLyAwCiAgICBzd2FwCiAgICBleHRyYWN0MwogICAgYnl0ZWMgNiAvLyAweDAwMDg2ZDZmNjQ2OTY2Njk2NTY0CiAgICBjb25jYXQKICAgIGludGNfMCAvLyAwCiAgICBjYWxsc3ViIGR5bmFtaWNfYXJyYXlfcmVwbGFjZV9keW5hbWljX2VsZW1lbnQKICAgIGJ5dGVjXzEgLy8gImdsb2IiCiAgICBzd2FwCiAgICBhcHBfZ2xvYmFsX3B1dAogICAgLy8gc3RhdGVfbXV0YXRpb25zL2NvbnRyYWN0LnB5OjQ3CiAgICAvLyBzZWxmLmxvY1tUeG4uc2VuZGVyXVswXS5iYXogPSBhcmM0LlN0cmluZygibW9kaWZpZWQiKQogICAgdHhuIFNlbmRlcgogICAgZHVwCiAgICBpbnRjXzAgLy8gMAogICAgYnl0ZWNfMiAvLyAibG9jIgogICAgYXBwX2xvY2FsX2dldF9leAogICAgYXNzZXJ0IC8vIGNoZWNrIHNlbGYubG9jIGV4aXN0cyBmb3IgYWNjb3VudAogICAgZHVwCiAgICBleHRyYWN0IDIgMAogICAgZHVwCiAgICBpbnRjXzAgLy8gMAogICAgZXh0cmFjdF91aW50MTYKICAgIGRpZyAyCiAgICBpbnRjXzAgLy8gMAogICAgZXh0cmFjdF91aW50MTYKICAgIGludGNfMSAvLyAxCiAgICAtIC8vIG9uIGVycm9yOiBJbmRleCBhY2Nlc3MgaXMgb3V0IG9mIGJvdW5kcwogICAgZGlnIDIKICAgIGxlbgogICAgZGlnIDMKICAgIGludGNfMiAvLyAyCiAgICBleHRyYWN0X3VpbnQxNgogICAgdW5jb3ZlciAyCiAgICBzZWxlY3QKICAgIHN1YnN0cmluZzMKICAgIGR1cAogICAgaW50Y18zIC8vIDgKICAgIGV4dHJhY3RfdWludDE2CiAgICBpbnRjXzAgLy8gMAogICAgc3dhcAogICAgZXh0cmFjdDMKICAgIGJ5dGVjIDYgLy8gMHgwMDA4NmQ2ZjY0Njk2NjY5NjU2NAogICAgY29uY2F0CiAgICBpbnRjXzAgLy8gMAogICAgY2FsbHN1YiBkeW5hbWljX2FycmF5X3JlcGxhY2VfZHluYW1pY19lbGVtZW50CiAgICBieXRlY18yIC8vICJsb2MiCiAgICBzd2FwCiAgICBhcHBfbG9jYWxfcHV0CiAgICAvLyBzdGF0ZV9tdXRhdGlvbnMvY29udHJhY3QucHk6NDgKICAgIC8vIHNlbGYuYm94LnZhbHVlWzBdLmJheiA9IGFyYzQuU3RyaW5nKCJtb2RpZmllZCIpCiAgICBieXRlY18wIC8vICJib3giCiAgICBib3hfZ2V0CiAgICBhc3NlcnQgLy8gY2hlY2sgc2VsZi5ib3ggZXhpc3RzCiAgICBkdXAKICAgIGV4dHJhY3QgMiAwCiAgICBkdXAKICAgIGludGNfMCAvLyAwCiAgICBleHRyYWN0X3VpbnQxNgogICAgZGlnIDIKICAgIGludGNfMCAvLyAwCiAgICBleHRyYWN0X3VpbnQxNgogICAgaW50Y18xIC8vIDEKICAgIC0gLy8gb24gZXJyb3I6IEluZGV4IGFjY2VzcyBpcyBvdXQgb2YgYm91bmRzCiAgICBkaWcgMgogICAgbGVuCiAgICBkaWcgMwogICAgaW50Y18yIC8vIDIKICAgIGV4dHJhY3RfdWludDE2CiAgICB1bmNvdmVyIDIKICAgIHNlbGVjdAogICAgc3Vic3RyaW5nMwogICAgZHVwCiAgICBpbnRjXzMgLy8gOAogICAgZXh0cmFjdF91aW50MTYKICAgIGludGNfMCAvLyAwCiAgICBzd2FwCiAgICBleHRyYWN0MwogICAgYnl0ZWMgNiAvLyAweDAwMDg2ZDZmNjQ2OTY2Njk2NTY0CiAgICBjb25jYXQKICAgIGludGNfMCAvLyAwCiAgICBjYWxsc3ViIGR5bmFtaWNfYXJyYXlfcmVwbGFjZV9keW5hbWljX2VsZW1lbnQKICAgIGJ5dGVjXzAgLy8gImJveCIKICAgIGJveF9kZWwKICAgIHBvcAogICAgYnl0ZWNfMCAvLyAiYm94IgogICAgc3dhcAogICAgYm94X3B1dAogICAgLy8gc3RhdGVfbXV0YXRpb25zL2NvbnRyYWN0LnB5OjQ5CiAgICAvLyBzZWxmLm1hcFtUeG4uc2VuZGVyXVswXS5iYXogPSBhcmM0LlN0cmluZygibW9kaWZpZWQiKQogICAgYnl0ZWMgNCAvLyAibWFwIgogICAgdHhuIFNlbmRlcgogICAgY29uY2F0CiAgICBkdXAKICAgIGJveF9nZXQKICAgIGFzc2VydCAvLyBjaGVjayBzZWxmLm1hcCBlbnRyeSBleGlzdHMKICAgIGR1cAogICAgZXh0cmFjdCAyIDAKICAgIGR1cAogICAgaW50Y18wIC8vIDAKICAgIGV4dHJhY3RfdWludDE2CiAgICBkaWcgMgogICAgaW50Y18wIC8vIDAKICAgIGV4dHJhY3RfdWludDE2CiAgICBpbnRjXzEgLy8gMQogICAgLSAvLyBvbiBlcnJvcjogSW5kZXggYWNjZXNzIGlzIG91dCBvZiBib3VuZHMKICAgIGRpZyAyCiAgICBsZW4KICAgIGRpZyAzCiAgICBpbnRjXzIgLy8gMgogICAgZXh0cmFjdF91aW50MTYKICAgIHVuY292ZXIgMgogICAgc2VsZWN0CiAgICBzdWJzdHJpbmczCiAgICBkdXAKICAgIGludGNfMyAvLyA4CiAgICBleHRyYWN0X3VpbnQxNgogICAgaW50Y18wIC8vIDAKICAgIHN3YXAKICAgIGV4dHJhY3QzCiAgICBieXRlYyA2IC8vIDB4MDAwODZkNmY2NDY5NjY2OTY1NjQKICAgIGNvbmNhdAogICAgaW50Y18wIC8vIDAKICAgIGNhbGxzdWIgZHluYW1pY19hcnJheV9yZXBsYWNlX2R5bmFtaWNfZWxlbWVudAogICAgZGlnIDEKICAgIGJveF9kZWwKICAgIHBvcAogICAgYm94X3B1dAogICAgcmV0c3ViCgoKLy8gdGVzdF9jYXNlcy5zdGF0ZV9tdXRhdGlvbnMuY29udHJhY3QuQ29udHJhY3QuZ2V0KCkgLT4gYnl0ZXM6CmdldDoKICAgIC8vIHN0YXRlX211dGF0aW9ucy9jb250cmFjdC5weTo1MwogICAgLy8gYTEgPSBzZWxmLmdsb2IudmFsdWUuY29weSgpCiAgICBpbnRjXzAgLy8gMAogICAgYnl0ZWNfMSAvLyAiZ2xvYiIKICAgIGFwcF9nbG9iYWxfZ2V0X2V4CiAgICBhc3NlcnQgLy8gY2hlY2sgc2VsZi5nbG9iIGV4aXN0cwogICAgLy8gc3RhdGVfbXV0YXRpb25zL2NvbnRyYWN0LnB5OjU0CiAgICAvLyBhMiA9IHNlbGYubG9jW1R4bi5zZW5kZXJdLmNvcHkoKQogICAgdHhuIFNlbmRlcgogICAgaW50Y18wIC8vIDAKICAgIGJ5dGVjXzIgLy8gImxvYyIKICAgIGFwcF9sb2NhbF9nZXRfZXgKICAgIGFzc2VydCAvLyBjaGVjayBzZWxmLmxvYyBleGlzdHMgZm9yIGFjY291bnQKICAgIC8vIHN0YXRlX211dGF0aW9ucy9jb250cmFjdC5weTo1NQogICAgLy8gYTMgPSBzZWxmLmJveC52YWx1ZS5jb3B5KCkKICAgIGJ5dGVjXzAgLy8gImJveCIKICAgIGJveF9nZXQKICAgIGFzc2VydCAvLyBjaGVjayBzZWxmLmJveCBleGlzdHMKICAgIC8vIHN0YXRlX211dGF0aW9ucy9jb250cmFjdC5weTo1NgogICAgLy8gYTQgPSBzZWxmLm1hcFtUeG4uc2VuZGVyXS5jb3B5KCkKICAgIGJ5dGVjIDQgLy8gIm1hcCIKICAgIHR4biBTZW5kZXIKICAgIGNvbmNhdAogICAgYm94X2dldAogICAgYXNzZXJ0IC8vIGNoZWNrIHNlbGYubWFwIGVudHJ5IGV4aXN0cwogICAgLy8gc3RhdGVfbXV0YXRpb25zL2NvbnRyYWN0LnB5OjU4CiAgICAvLyBhc3NlcnQgYTEgPT0gYTIsICJleHBlY3RlZCBsb2NhbCA9PSBnbG9iYWwiCiAgICBkaWcgMwogICAgdW5jb3ZlciAzCiAgICA9PQogICAgYXNzZXJ0IC8vIGV4cGVjdGVkIGxvY2FsID09IGdsb2JhbAogICAgLy8gc3RhdGVfbXV0YXRpb25zL2NvbnRyYWN0LnB5OjU5CiAgICAvLyBhc3NlcnQgYTEgPT0gYTMsICJleHBlY3RlZCBib3ggPT0gZ2xvYmFsIgogICAgZGlnIDIKICAgIHVuY292ZXIgMgogICAgPT0KICAgIGFzc2VydCAvLyBleHBlY3RlZCBib3ggPT0gZ2xvYmFsCiAgICAvLyBzdGF0ZV9tdXRhdGlvbnMvY29udHJhY3QucHk6NjAKICAgIC8vIGFzc2VydCBhMSA9PSBhNCwgImV4cGVjdGVkIG1hcCA9PSBnbG9iYWwiCiAgICBkaWcgMQogICAgPT0KICAgIGFzc2VydCAvLyBleHBlY3RlZCBtYXAgPT0gZ2xvYmFsCiAgICAvLyBzdGF0ZV9tdXRhdGlvbnMvY29udHJhY3QucHk6NjEKICAgIC8vIHJldHVybiBhMQogICAgcmV0c3ViCg==", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEwCiNwcmFnbWEgdHlwZXRyYWNrIGZhbHNlCgovLyBhbGdvcHkuYXJjNC5BUkM0Q29udHJhY3QuY2xlYXJfc3RhdGVfcHJvZ3JhbSgpIC0+IHVpbnQ2NDoKbWFpbjoKICAgIHB1c2hpbnQgMSAvLyAxCiAgICByZXR1cm4K" }, "byteCode": { "approval": "CiAEAAECCCYHA2JveARnbG9iA2xvYwIAAANtYXARAAIAAAAAAAAAAQAKAANiYXoKAAhtb2RpZmllZDEbQQBLggMEUm6LvwSV/vE9BAwpREs2GgCOAwAjABcAAiJDMRkURDEYRIgCcoAEFR98dUxQsCNDMRkURDEYRIgBoSNDMRkURDEYRIgBOSNDMRmNAgALAANC/8YxGESIAQ0jQzEYFEQjQ4oEAYAASYv+JAuL/CQLIosEiwMMQQAci/2LBElOAlmLAggWVwYCiwFMUIwBJAiMBEL/3Iv9FYwAIowEiwSLAgxBAByL/4sESU4CWYsACBZXBgKLAUxQjAEkCIwEQv/ci/yL/ggWVwYCiwFQi/2LA4sAUlCL/xWL/4sCTwJSUIwAiYoDAYv9UQACSReL/VcCAIv/JAtLAUxZi/8jCCQLSU4ESwJMWUsCFUsEi/8JIwlLAU8DTwJNSUsDCU4Fi/4VTgVLAyJPBFKL/lBPA08CTwNSUEwkC4sBiwUMQQAgiwRJiwFJTgNZiwMIiwIJFlcGAksCTF2MBCQIjAFC/9iLAIsEUIwAiSkrZyi8SCgrvzEAKitmJwQxAFBJvEgrv4kiKWVESSJZTFcCACMnBYj+0SlMZzEASSIqY0RJIllMVwIAIycFiP66KkxmKL5ESSJZTFcCACMnBYj+pyi8SChMvycEMQBQSb5ESSJZTFcCACMnBYj+jEsBvEi/iSIpZURJVwIASSJZSwIiWSMJSwIVSwMkWU8CTVJJJVkiTFgnBlAiiP7eKUxnMQBJIipjRElXAgBJIllLAiJZIwlLAhVLAyRZTwJNUkklWSJMWCcGUCKI/q8qTGYovkRJVwIASSJZSwIiWSMJSwIVSwMkWU8CTVJJJVkiTFgnBlAiiP6EKLxIKEy/JwQxAFBJvkRJVwIASSJZSwIiWSMJSwIVSwMkWU8CTVJJJVkiTFgnBlAiiP5RSwG8SL+JIillRDEAIipjRCi+RCcEMQBQvkRLA08DEkRLAk8CEkRLARJEiQ==", "clear": "CoEBQw==" }, "compilerInfo": { "compiler": "puya", "compilerVersion": { "major": 99, "minor": 99, "patch": 99 } }, "events": [], "templateVariables": {} }