{ "name": "LibPCG32TestHarnessAlgoPy", "structs": {}, "methods": [ { "name": "get_pcg32_sequence_arc4_uint32_return", "args": [ { "type": "byte[8]", "name": "seed" }, { "type": "uint32", "name": "lower_bound" }, { "type": "uint32", "name": "upper_bound" }, { "type": "uint16", "name": "length" } ], "returns": { "type": "uint32[]" }, "actions": { "create": [], "call": [ "NoOp" ] }, "readonly": false, "events": [], "recommendations": {} }, { "name": "get_pcg32_sequence_arc4_uint16_return", "args": [ { "type": "byte[8]", "name": "seed" }, { "type": "uint16", "name": "lower_bound" }, { "type": "uint16", "name": "upper_bound" }, { "type": "uint16", "name": "length" } ], "returns": { "type": "uint16[]" }, "actions": { "create": [], "call": [ "NoOp" ] }, "readonly": false, "events": [], "recommendations": {} }, { "name": "get_pcg32_sequence_arc4_uint8_return", "args": [ { "type": "byte[8]", "name": "seed" }, { "type": "uint8", "name": "lower_bound" }, { "type": "uint8", "name": "upper_bound" }, { "type": "uint16", "name": "length" } ], "returns": { "type": "uint8[]" }, "actions": { "create": [], "call": [ "NoOp" ] }, "readonly": false, "events": [], "recommendations": {} }, { "name": "runtime_asserts_pcg32_stack_array", "args": [], "returns": { "type": "void" }, "actions": { "create": [], "call": [ "NoOp" ] }, "readonly": false, "events": [], "recommendations": {} }, { "name": "runtime_asserts_pcg16_stack_array", "args": [], "returns": { "type": "void" }, "actions": { "create": [], "call": [ "NoOp" ] }, "readonly": false, "events": [], "recommendations": {} }, { "name": "runtime_asserts_pcg8_stack_array", "args": [], "returns": { "type": "void" }, "actions": { "create": [], "call": [ "NoOp" ] }, "readonly": false, "events": [], "recommendations": {} }, { "name": "runtime_failure_stack_byteslice_overflow", "args": [], "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": [ 489, 557, 625 ], "errorMessage": "invalid number of bytes for arc4.static_array" }, { "pc": [ 516, 566, 575, 584, 650 ], "errorMessage": "invalid number of bytes for arc4.uint16" }, { "pc": [ 498, 507 ], "errorMessage": "invalid number of bytes for arc4.uint32" }, { "pc": [ 633, 641 ], "errorMessage": "invalid number of bytes for arc4.uint8" }, { "pc": [ 165 ], "errorMessage": "overflow" } ], "pcOffsetMethod": "none" }, "clear": { "sourceInfo": [], "pcOffsetMethod": "none" } }, "source": { "approval": "I3ByYWdtYSB2ZXJzaW9uIDExCiNwcmFnbWEgdHlwZXRyYWNrIGZhbHNlCgovLyBhbGdvcHkuYXJjNC5BUkM0Q29udHJhY3QuYXBwcm92YWxfcHJvZ3JhbSgpIC0+IHVpbnQ2NDoKbWFpbjoKICAgIGludGNibG9jayAxIDggMCA0Mjk0OTY3Mjk1IDYzNjQxMzYyMjM4NDY3OTMwMDUgMTQ0MjY5NTA0MDg4ODk2MzQwNwogICAgYnl0ZWNibG9jayAweDE1MWY3Yzc1CiAgICB0eG4gTnVtQXBwQXJncwogICAgYnogbWFpbl9fX2FsZ29weV9kZWZhdWx0X2NyZWF0ZUAxNAogICAgdHhuIE9uQ29tcGxldGlvbgogICAgIQogICAgYXNzZXJ0CiAgICB0eG4gQXBwbGljYXRpb25JRAogICAgYXNzZXJ0CiAgICBwdXNoYnl0ZXNzIDB4MGM4NDc4ZmIgMHhhZTc4ZTZlMCAweDg5ZDdmNTRhIDB4MTNiOTUyZDcgMHhkMjA3MTYyMyAweGMyMmQxOGRmIDB4NmMwYjQ4OTggLy8gbWV0aG9kICJnZXRfcGNnMzJfc2VxdWVuY2VfYXJjNF91aW50MzJfcmV0dXJuKGJ5dGVbOF0sdWludDMyLHVpbnQzMix1aW50MTYpdWludDMyW10iLCBtZXRob2QgImdldF9wY2czMl9zZXF1ZW5jZV9hcmM0X3VpbnQxNl9yZXR1cm4oYnl0ZVs4XSx1aW50MTYsdWludDE2LHVpbnQxNil1aW50MTZbXSIsIG1ldGhvZCAiZ2V0X3BjZzMyX3NlcXVlbmNlX2FyYzRfdWludDhfcmV0dXJuKGJ5dGVbOF0sdWludDgsdWludDgsdWludDE2KXVpbnQ4W10iLCBtZXRob2QgInJ1bnRpbWVfYXNzZXJ0c19wY2czMl9zdGFja19hcnJheSgpdm9pZCIsIG1ldGhvZCAicnVudGltZV9hc3NlcnRzX3BjZzE2X3N0YWNrX2FycmF5KCl2b2lkIiwgbWV0aG9kICJydW50aW1lX2Fzc2VydHNfcGNnOF9zdGFja19hcnJheSgpdm9pZCIsIG1ldGhvZCAicnVudGltZV9mYWlsdXJlX3N0YWNrX2J5dGVzbGljZV9vdmVyZmxvdygpdm9pZCIKICAgIHR4bmEgQXBwbGljYXRpb25BcmdzIDAKICAgIG1hdGNoIGdldF9wY2czMl9zZXF1ZW5jZV9hcmM0X3VpbnQzMl9yZXR1cm4gZ2V0X3BjZzMyX3NlcXVlbmNlX2FyYzRfdWludDE2X3JldHVybiBnZXRfcGNnMzJfc2VxdWVuY2VfYXJjNF91aW50OF9yZXR1cm4gcnVudGltZV9hc3NlcnRzX3BjZzMyX3N0YWNrX2FycmF5IHJ1bnRpbWVfYXNzZXJ0c19wY2cxNl9zdGFja19hcnJheSBydW50aW1lX2Fzc2VydHNfcGNnOF9zdGFja19hcnJheSBydW50aW1lX2ZhaWx1cmVfc3RhY2tfYnl0ZXNsaWNlX292ZXJmbG93CiAgICBlcnIKCm1haW5fX19hbGdvcHlfZGVmYXVsdF9jcmVhdGVAMTQ6CiAgICB0eG4gT25Db21wbGV0aW9uCiAgICAhCiAgICB0eG4gQXBwbGljYXRpb25JRAogICAgIQogICAgJiYKICAgIHJldHVybgoKCi8vIGxpYl9wY2cucGNnMzIucGNnMzJfaW5pdChzZWVkOiBieXRlcykgLT4gdWludDY0OgpwY2czMl9pbml0OgogICAgcHJvdG8gMSAxCiAgICBmcmFtZV9kaWcgLTEKICAgIGxlbgogICAgaW50Y18xIC8vIDgKICAgID09CiAgICBhc3NlcnQKICAgIGZyYW1lX2RpZyAtMQogICAgYnRvaQogICAgaW50Y18yIC8vIDAKICAgIGludGMgNCAvLyA2MzY0MTM2MjIzODQ2NzkzMDA1CiAgICBtdWx3CiAgICBidXJ5IDEKICAgIGludGMgNSAvLyAxNDQyNjk1MDQwODg4OTYzNDA3CiAgICBhZGR3CiAgICBidXJ5IDEKICAgIGFkZHcKICAgIGJ1cnkgMQogICAgaW50YyA0IC8vIDYzNjQxMzYyMjM4NDY3OTMwMDUKICAgIG11bHcKICAgIGJ1cnkgMQogICAgaW50YyA1IC8vIDE0NDI2OTUwNDA4ODg5NjM0MDcKICAgIGFkZHcKICAgIGJ1cnkgMQogICAgcmV0c3ViCgoKLy8gbGliX3BjZy5wY2czMi5fX3BjZzMyX2JvdW5kZWRfc2VxdWVuY2Uoc3RhdGU6IHVpbnQ2NCwgYml0X3NpemU6IHVpbnQ2NCwgbG93ZXJfYm91bmQ6IHVpbnQ2NCwgdXBwZXJfYm91bmQ6IHVpbnQ2NCwgbGVuZ3RoOiB1aW50NjQpIC0+IHVpbnQ2NCwgYnl0ZXM6Cl9fcGNnMzJfYm91bmRlZF9zZXF1ZW5jZToKICAgIHByb3RvIDUgMgogICAgcHVzaGJ5dGVzICIiCiAgICBkdXBuIDUKICAgIGZyYW1lX2RpZyAtMQogICAgaXRvYgogICAgZHVwCiAgICBiaXRsZW4KICAgIHB1c2hpbnQgMTYKICAgIDw9CiAgICBhc3NlcnQgLy8gb3ZlcmZsb3cKICAgIGV4dHJhY3QgNiAyCiAgICBmcmFtZV9kaWcgLTQKICAgIGludGNfMSAvLyA4CiAgICA9PQogICAgYm56IF9fcGNnMzJfYm91bmRlZF9zZXF1ZW5jZV9ib29sX3RydWVAMwogICAgZnJhbWVfZGlnIC00CiAgICBwdXNoaW50IDE2CiAgICA9PQogICAgYm56IF9fcGNnMzJfYm91bmRlZF9zZXF1ZW5jZV9ib29sX3RydWVAMwogICAgZnJhbWVfZGlnIC00CiAgICBwdXNoaW50IDMyCiAgICA9PQogICAgYnogX19wY2czMl9ib3VuZGVkX3NlcXVlbmNlX2Jvb2xfZmFsc2VANAoKX19wY2czMl9ib3VuZGVkX3NlcXVlbmNlX2Jvb2xfdHJ1ZUAzOgogICAgaW50Y18wIC8vIDEKCl9fcGNnMzJfYm91bmRlZF9zZXF1ZW5jZV9ib29sX21lcmdlQDU6CiAgICBhc3NlcnQKICAgIGZyYW1lX2RpZyAtNAogICAgcHVzaGludCAzCiAgICBzaHIKICAgIGR1cAogICAgZnJhbWVfYnVyeSAxCiAgICBpbnRjXzEgLy8gOAogICAgc3dhcAogICAgLQogICAgZnJhbWVfYnVyeSA1CiAgICBmcmFtZV9kaWcgLTMKICAgIGJueiBfX3BjZzMyX2JvdW5kZWRfc2VxdWVuY2VfZWxzZV9ib2R5QDEyCiAgICBmcmFtZV9kaWcgLTIKICAgIGJueiBfX3BjZzMyX2JvdW5kZWRfc2VxdWVuY2VfZWxzZV9ib2R5QDEyCiAgICBpbnRjXzIgLy8gMAogICAgZnJhbWVfYnVyeSAzCgpfX3BjZzMyX2JvdW5kZWRfc2VxdWVuY2VfZm9yX2hlYWRlckA4OgogICAgZnJhbWVfZGlnIDMKICAgIGZyYW1lX2RpZyAtMQogICAgPAogICAgYnogX19wY2czMl9ib3VuZGVkX3NlcXVlbmNlX2FmdGVyX2lmX2Vsc2VAMjUKICAgIGZyYW1lX2RpZyAtNQogICAgaW50YyA0IC8vIDYzNjQxMzYyMjM4NDY3OTMwMDUKICAgIG11bHcKICAgIGJ1cnkgMQogICAgaW50YyA1IC8vIDE0NDI2OTUwNDA4ODg5NjM0MDcKICAgIGFkZHcKICAgIGJ1cnkgMQogICAgZnJhbWVfZGlnIC01CiAgICBwdXNoaW50IDE4CiAgICBzaHIKICAgIGZyYW1lX2RpZyAtNQogICAgXgogICAgcHVzaGludCAyNwogICAgc2hyCiAgICBpbnRjXzMgLy8gNDI5NDk2NzI5NQogICAgJgogICAgZnJhbWVfZGlnIC01CiAgICBwdXNoaW50IDU5CiAgICBzaHIKICAgIGR1cDIKICAgIHNocgogICAgc3dhcAogICAgfgogICAgaW50Y18wIC8vIDEKICAgIGFkZHcKICAgIGJ1cnkgMQogICAgcHVzaGludCAzMQogICAgJgogICAgdW5jb3ZlciAyCiAgICBzd2FwCiAgICBzaGwKICAgIGludGNfMyAvLyA0Mjk0OTY3Mjk1CiAgICAmCiAgICB8CiAgICBpdG9iCiAgICBmcmFtZV9kaWcgNQogICAgZnJhbWVfZGlnIDEKICAgIGV4dHJhY3QzCiAgICBmcmFtZV9kaWcgNgogICAgc3dhcAogICAgY29uY2F0CiAgICBmcmFtZV9idXJ5IDYKICAgIGZyYW1lX2RpZyAzCiAgICBpbnRjXzAgLy8gMQogICAgKwogICAgZnJhbWVfYnVyeSAzCiAgICBmcmFtZV9idXJ5IC01CiAgICBiIF9fcGNnMzJfYm91bmRlZF9zZXF1ZW5jZV9mb3JfaGVhZGVyQDgKCl9fcGNnMzJfYm91bmRlZF9zZXF1ZW5jZV9hZnRlcl9pZl9lbHNlQDI1OgogICAgZnJhbWVfZGlnIC01CiAgICBmcmFtZV9kaWcgNgogICAgZnJhbWVfYnVyeSAxCiAgICBmcmFtZV9idXJ5IDAKICAgIHJldHN1YgoKX19wY2czMl9ib3VuZGVkX3NlcXVlbmNlX2Vsc2VfYm9keUAxMjoKICAgIGZyYW1lX2RpZyAtMgogICAgYnogX19wY2czMl9ib3VuZGVkX3NlcXVlbmNlX2Vsc2VfYm9keUAxNAogICAgZnJhbWVfZGlnIC0yCiAgICBpbnRjXzAgLy8gMQogICAgPgogICAgYXNzZXJ0CiAgICBpbnRjXzAgLy8gMQogICAgZnJhbWVfZGlnIC00CiAgICBzaGwKICAgIGZyYW1lX2RpZyAtMgogICAgPgogICAgYXNzZXJ0CiAgICBmcmFtZV9kaWcgLTIKICAgIGludGNfMCAvLyAxCiAgICAtCiAgICBmcmFtZV9kaWcgLTMKICAgID4KICAgIGFzc2VydAogICAgZnJhbWVfZGlnIC0yCiAgICBmcmFtZV9kaWcgLTMKICAgIC0KICAgIGZyYW1lX2J1cnkgMAoKX19wY2czMl9ib3VuZGVkX3NlcXVlbmNlX2FmdGVyX2lmX2Vsc2VAMTU6CiAgICBmcmFtZV9kaWcgMAogICAgZHVwCiAgICB+CiAgICBpbnRjXzAgLy8gMQogICAgYWRkdwogICAgYnVyeSAxCiAgICBpbnRjXzMgLy8gNDI5NDk2NzI5NQogICAgJgogICAgc3dhcAogICAgJQogICAgZnJhbWVfYnVyeSA0CiAgICBpbnRjXzIgLy8gMAogICAgZnJhbWVfYnVyeSAzCgpfX3BjZzMyX2JvdW5kZWRfc2VxdWVuY2VfZm9yX2hlYWRlckAxNjoKICAgIGZyYW1lX2RpZyAzCiAgICBmcmFtZV9kaWcgLTEKICAgIDwKICAgIGJ6IF9fcGNnMzJfYm91bmRlZF9zZXF1ZW5jZV9hZnRlcl9pZl9lbHNlQDI1CgpfX3BjZzMyX2JvdW5kZWRfc2VxdWVuY2Vfd2hpbGVfdG9wQDE4OgogICAgZnJhbWVfZGlnIC01CiAgICBpbnRjIDQgLy8gNjM2NDEzNjIyMzg0Njc5MzAwNQogICAgbXVsdwogICAgYnVyeSAxCiAgICBpbnRjIDUgLy8gMTQ0MjY5NTA0MDg4ODk2MzQwNwogICAgYWRkdwogICAgYnVyeSAxCiAgICBmcmFtZV9kaWcgLTUKICAgIHB1c2hpbnQgMTgKICAgIHNocgogICAgZnJhbWVfZGlnIC01CiAgICBeCiAgICBwdXNoaW50IDI3CiAgICBzaHIKICAgIGludGNfMyAvLyA0Mjk0OTY3Mjk1CiAgICAmCiAgICBmcmFtZV9kaWcgLTUKICAgIHB1c2hpbnQgNTkKICAgIHNocgogICAgZHVwMgogICAgc2hyCiAgICBzd2FwCiAgICB+CiAgICBpbnRjXzAgLy8gMQogICAgYWRkdwogICAgYnVyeSAxCiAgICBwdXNoaW50IDMxCiAgICAmCiAgICB1bmNvdmVyIDIKICAgIHN3YXAKICAgIHNobAogICAgaW50Y18zIC8vIDQyOTQ5NjcyOTUKICAgICYKICAgIHwKICAgIGR1cAogICAgZnJhbWVfYnVyeSAyCiAgICBmcmFtZV9kaWcgNAogICAgPj0KICAgIGJ6IF9fcGNnMzJfYm91bmRlZF9zZXF1ZW5jZV9hZnRlcl9pZl9lbHNlQDIxCiAgICBmcmFtZV9kaWcgMgogICAgZnJhbWVfZGlnIDAKICAgICUKICAgIGZyYW1lX2RpZyAtMwogICAgKwogICAgaXRvYgogICAgZnJhbWVfZGlnIDUKICAgIGZyYW1lX2RpZyAxCiAgICBleHRyYWN0MwogICAgZnJhbWVfZGlnIDYKICAgIHN3YXAKICAgIGNvbmNhdAogICAgZnJhbWVfYnVyeSA2CiAgICBmcmFtZV9kaWcgMwogICAgaW50Y18wIC8vIDEKICAgICsKICAgIGZyYW1lX2J1cnkgMwogICAgZnJhbWVfYnVyeSAtNQogICAgYiBfX3BjZzMyX2JvdW5kZWRfc2VxdWVuY2VfZm9yX2hlYWRlckAxNgoKX19wY2czMl9ib3VuZGVkX3NlcXVlbmNlX2FmdGVyX2lmX2Vsc2VAMjE6CiAgICBmcmFtZV9idXJ5IC01CiAgICBiIF9fcGNnMzJfYm91bmRlZF9zZXF1ZW5jZV93aGlsZV90b3BAMTgKCl9fcGNnMzJfYm91bmRlZF9zZXF1ZW5jZV9lbHNlX2JvZHlAMTQ6CiAgICBpbnRjXzAgLy8gMQogICAgZnJhbWVfZGlnIC00CiAgICBzaGwKICAgIGR1cAogICAgaW50Y18wIC8vIDEKICAgIC0KICAgIGZyYW1lX2RpZyAtMwogICAgPgogICAgYXNzZXJ0CiAgICBmcmFtZV9kaWcgLTMKICAgIC0KICAgIGZyYW1lX2J1cnkgMAogICAgYiBfX3BjZzMyX2JvdW5kZWRfc2VxdWVuY2VfYWZ0ZXJfaWZfZWxzZUAxNQoKX19wY2czMl9ib3VuZGVkX3NlcXVlbmNlX2Jvb2xfZmFsc2VANDoKICAgIGludGNfMiAvLyAwCiAgICBiIF9fcGNnMzJfYm91bmRlZF9zZXF1ZW5jZV9ib29sX21lcmdlQDUKCgovLyBzbWFydF9jb250cmFjdHMubGliX3BjZzMyX3Rlc3RfaGFybmVzcy5jb250cmFjdC5MaWJQQ0czMlRlc3RIYXJuZXNzQWxnb1B5LmdldF9wY2czMl9zZXF1ZW5jZV9hcmM0X3VpbnQzMl9yZXR1cm5bcm91dGluZ10oKSAtPiB2b2lkOgpnZXRfcGNnMzJfc2VxdWVuY2VfYXJjNF91aW50MzJfcmV0dXJuOgogICAgdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQogICAgZHVwCiAgICBsZW4KICAgIGludGNfMSAvLyA4CiAgICA9PQogICAgYXNzZXJ0IC8vIGludmFsaWQgbnVtYmVyIG9mIGJ5dGVzIGZvciBhcmM0LnN0YXRpY19hcnJheTxhcmM0LnVpbnQ4LCA4PgogICAgdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMgogICAgZHVwCiAgICBsZW4KICAgIHB1c2hpbnQgNAogICAgPT0KICAgIGFzc2VydCAvLyBpbnZhbGlkIG51bWJlciBvZiBieXRlcyBmb3IgYXJjNC51aW50MzIKICAgIHR4bmEgQXBwbGljYXRpb25BcmdzIDMKICAgIGR1cAogICAgbGVuCiAgICBwdXNoaW50IDQKICAgID09CiAgICBhc3NlcnQgLy8gaW52YWxpZCBudW1iZXIgb2YgYnl0ZXMgZm9yIGFyYzQudWludDMyCiAgICB0eG5hIEFwcGxpY2F0aW9uQXJncyA0CiAgICBkdXAKICAgIGxlbgogICAgcHVzaGludCAyCiAgICA9PQogICAgYXNzZXJ0IC8vIGludmFsaWQgbnVtYmVyIG9mIGJ5dGVzIGZvciBhcmM0LnVpbnQxNgogICAgdW5jb3ZlciAzCiAgICBjYWxsc3ViIHBjZzMyX2luaXQKICAgIHVuY292ZXIgMwogICAgYnRvaQogICAgdW5jb3ZlciAzCiAgICBidG9pCiAgICB1bmNvdmVyIDMKICAgIGJ0b2kKICAgIHVuY292ZXIgMwogICAgcHVzaGludCAzMgogICAgY292ZXIgNAogICAgY292ZXIgNAogICAgY2FsbHN1YiBfX3BjZzMyX2JvdW5kZWRfc2VxdWVuY2UKICAgIGJ1cnkgMQogICAgYnl0ZWNfMCAvLyAweDE1MWY3Yzc1CiAgICBzd2FwCiAgICBjb25jYXQKICAgIGxvZwogICAgaW50Y18wIC8vIDEKICAgIHJldHVybgoKCi8vIHNtYXJ0X2NvbnRyYWN0cy5saWJfcGNnMzJfdGVzdF9oYXJuZXNzLmNvbnRyYWN0LkxpYlBDRzMyVGVzdEhhcm5lc3NBbGdvUHkuZ2V0X3BjZzMyX3NlcXVlbmNlX2FyYzRfdWludDE2X3JldHVybltyb3V0aW5nXSgpIC0+IHZvaWQ6CmdldF9wY2czMl9zZXF1ZW5jZV9hcmM0X3VpbnQxNl9yZXR1cm46CiAgICB0eG5hIEFwcGxpY2F0aW9uQXJncyAxCiAgICBkdXAKICAgIGxlbgogICAgaW50Y18xIC8vIDgKICAgID09CiAgICBhc3NlcnQgLy8gaW52YWxpZCBudW1iZXIgb2YgYnl0ZXMgZm9yIGFyYzQuc3RhdGljX2FycmF5PGFyYzQudWludDgsIDg+CiAgICB0eG5hIEFwcGxpY2F0aW9uQXJncyAyCiAgICBkdXAKICAgIGxlbgogICAgcHVzaGludCAyCiAgICA9PQogICAgYXNzZXJ0IC8vIGludmFsaWQgbnVtYmVyIG9mIGJ5dGVzIGZvciBhcmM0LnVpbnQxNgogICAgdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMwogICAgZHVwCiAgICBsZW4KICAgIHB1c2hpbnQgMgogICAgPT0KICAgIGFzc2VydCAvLyBpbnZhbGlkIG51bWJlciBvZiBieXRlcyBmb3IgYXJjNC51aW50MTYKICAgIHR4bmEgQXBwbGljYXRpb25BcmdzIDQKICAgIGR1cAogICAgbGVuCiAgICBwdXNoaW50IDIKICAgID09CiAgICBhc3NlcnQgLy8gaW52YWxpZCBudW1iZXIgb2YgYnl0ZXMgZm9yIGFyYzQudWludDE2CiAgICB1bmNvdmVyIDMKICAgIGNhbGxzdWIgcGNnMzJfaW5pdAogICAgdW5jb3ZlciAzCiAgICBidG9pCiAgICB1bmNvdmVyIDMKICAgIGJ0b2kKICAgIHVuY292ZXIgMwogICAgYnRvaQogICAgdW5jb3ZlciAzCiAgICBwdXNoaW50IDE2CiAgICBjb3ZlciA0CiAgICBjb3ZlciA0CiAgICBjYWxsc3ViIF9fcGNnMzJfYm91bmRlZF9zZXF1ZW5jZQogICAgYnVyeSAxCiAgICBieXRlY18wIC8vIDB4MTUxZjdjNzUKICAgIHN3YXAKICAgIGNvbmNhdAogICAgbG9nCiAgICBpbnRjXzAgLy8gMQogICAgcmV0dXJuCgoKLy8gc21hcnRfY29udHJhY3RzLmxpYl9wY2czMl90ZXN0X2hhcm5lc3MuY29udHJhY3QuTGliUENHMzJUZXN0SGFybmVzc0FsZ29QeS5nZXRfcGNnMzJfc2VxdWVuY2VfYXJjNF91aW50OF9yZXR1cm5bcm91dGluZ10oKSAtPiB2b2lkOgpnZXRfcGNnMzJfc2VxdWVuY2VfYXJjNF91aW50OF9yZXR1cm46CiAgICB0eG5hIEFwcGxpY2F0aW9uQXJncyAxCiAgICBkdXAKICAgIGxlbgogICAgaW50Y18xIC8vIDgKICAgID09CiAgICBhc3NlcnQgLy8gaW52YWxpZCBudW1iZXIgb2YgYnl0ZXMgZm9yIGFyYzQuc3RhdGljX2FycmF5PGFyYzQudWludDgsIDg+CiAgICB0eG5hIEFwcGxpY2F0aW9uQXJncyAyCiAgICBkdXAKICAgIGxlbgogICAgaW50Y18wIC8vIDEKICAgID09CiAgICBhc3NlcnQgLy8gaW52YWxpZCBudW1iZXIgb2YgYnl0ZXMgZm9yIGFyYzQudWludDgKICAgIHR4bmEgQXBwbGljYXRpb25BcmdzIDMKICAgIGR1cAogICAgbGVuCiAgICBpbnRjXzAgLy8gMQogICAgPT0KICAgIGFzc2VydCAvLyBpbnZhbGlkIG51bWJlciBvZiBieXRlcyBmb3IgYXJjNC51aW50OAogICAgdHhuYSBBcHBsaWNhdGlvbkFyZ3MgNAogICAgZHVwCiAgICBsZW4KICAgIHB1c2hpbnQgMgogICAgPT0KICAgIGFzc2VydCAvLyBpbnZhbGlkIG51bWJlciBvZiBieXRlcyBmb3IgYXJjNC51aW50MTYKICAgIHVuY292ZXIgMwogICAgY2FsbHN1YiBwY2czMl9pbml0CiAgICB1bmNvdmVyIDMKICAgIGJ0b2kKICAgIHVuY292ZXIgMwogICAgYnRvaQogICAgdW5jb3ZlciAzCiAgICBidG9pCiAgICB1bmNvdmVyIDMKICAgIGludGNfMSAvLyA4CiAgICBjb3ZlciA0CiAgICBjb3ZlciA0CiAgICBjYWxsc3ViIF9fcGNnMzJfYm91bmRlZF9zZXF1ZW5jZQogICAgYnVyeSAxCiAgICBieXRlY18wIC8vIDB4MTUxZjdjNzUKICAgIHN3YXAKICAgIGNvbmNhdAogICAgbG9nCiAgICBpbnRjXzAgLy8gMQogICAgcmV0dXJuCgoKLy8gc21hcnRfY29udHJhY3RzLmxpYl9wY2czMl90ZXN0X2hhcm5lc3MuY29udHJhY3QuTGliUENHMzJUZXN0SGFybmVzc0FsZ29QeS5ydW50aW1lX2Fzc2VydHNfcGNnMzJfc3RhY2tfYXJyYXlbcm91dGluZ10oKSAtPiB2b2lkOgpydW50aW1lX2Fzc2VydHNfcGNnMzJfc3RhY2tfYXJyYXk6CiAgICBpbnRjXzEgLy8gOAogICAgYnplcm8KICAgIGNhbGxzdWIgcGNnMzJfaW5pdAogICAgcHVzaGludCAzMgogICAgaW50Y18yIC8vIDAKICAgIGR1cAogICAgcHVzaGludCAxMDIzCiAgICBjYWxsc3ViIF9fcGNnMzJfYm91bmRlZF9zZXF1ZW5jZQogICAgcG9wbiAyCiAgICBpbnRjXzAgLy8gMQogICAgcmV0dXJuCgoKLy8gc21hcnRfY29udHJhY3RzLmxpYl9wY2czMl90ZXN0X2hhcm5lc3MuY29udHJhY3QuTGliUENHMzJUZXN0SGFybmVzc0FsZ29QeS5ydW50aW1lX2Fzc2VydHNfcGNnMTZfc3RhY2tfYXJyYXlbcm91dGluZ10oKSAtPiB2b2lkOgpydW50aW1lX2Fzc2VydHNfcGNnMTZfc3RhY2tfYXJyYXk6CiAgICBpbnRjXzEgLy8gOAogICAgYnplcm8KICAgIGNhbGxzdWIgcGNnMzJfaW5pdAogICAgcHVzaGludCAxNgogICAgaW50Y18yIC8vIDAKICAgIGR1cAogICAgcHVzaGludCAyMDQ3CiAgICBjYWxsc3ViIF9fcGNnMzJfYm91bmRlZF9zZXF1ZW5jZQogICAgcG9wbiAyCiAgICBpbnRjXzAgLy8gMQogICAgcmV0dXJuCgoKLy8gc21hcnRfY29udHJhY3RzLmxpYl9wY2czMl90ZXN0X2hhcm5lc3MuY29udHJhY3QuTGliUENHMzJUZXN0SGFybmVzc0FsZ29QeS5ydW50aW1lX2Fzc2VydHNfcGNnOF9zdGFja19hcnJheVtyb3V0aW5nXSgpIC0+IHZvaWQ6CnJ1bnRpbWVfYXNzZXJ0c19wY2c4X3N0YWNrX2FycmF5OgogICAgaW50Y18xIC8vIDgKICAgIGJ6ZXJvCiAgICBjYWxsc3ViIHBjZzMyX2luaXQKICAgIGludGNfMSAvLyA4CiAgICBpbnRjXzIgLy8gMAogICAgZHVwCiAgICBwdXNoaW50IDQwOTQKICAgIGNhbGxzdWIgX19wY2czMl9ib3VuZGVkX3NlcXVlbmNlCiAgICBwb3BuIDIKICAgIGludGNfMCAvLyAxCiAgICByZXR1cm4KCgovLyBzbWFydF9jb250cmFjdHMubGliX3BjZzMyX3Rlc3RfaGFybmVzcy5jb250cmFjdC5MaWJQQ0czMlRlc3RIYXJuZXNzQWxnb1B5LnJ1bnRpbWVfZmFpbHVyZV9zdGFja19ieXRlc2xpY2Vfb3ZlcmZsb3dbcm91dGluZ10oKSAtPiB2b2lkOgpydW50aW1lX2ZhaWx1cmVfc3RhY2tfYnl0ZXNsaWNlX292ZXJmbG93OgogICAgaW50Y18xIC8vIDgKICAgIGJ6ZXJvCiAgICBjYWxsc3ViIHBjZzMyX2luaXQKICAgIHB1c2hpbnQgMzIKICAgIGludGNfMiAvLyAwCiAgICBkdXAKICAgIHB1c2hpbnQgMTAyNAogICAgY2FsbHN1YiBfX3BjZzMyX2JvdW5kZWRfc2VxdWVuY2UKICAgIHBvcG4gMgogICAgaW50Y18wIC8vIDEKICAgIHJldHVybgo=", "clear": "I3ByYWdtYSB2ZXJzaW9uIDExCiNwcmFnbWEgdHlwZXRyYWNrIGZhbHNlCgovLyBhbGdvcHkuYXJjNC5BUkM0Q29udHJhY3QuY2xlYXJfc3RhdGVfcHJvZ3JhbSgpIC0+IHVpbnQ2NDoKbWFpbjoKICAgIHB1c2hpbnQgMQogICAgcmV0dXJuCg==" }, "byteCode": { "approval": "CyAGAQgA/////w+t/tXk1IX9qFjPgp677+/eghQmAQQVH3x1MRtBAEAxGRREMRhEggcEDIR4+wSueObgBInX9UoEE7lS1wTSBxYjBMItGN8EbAtImDYaAI4HAXoBvgICAkMCVgJpAnsAMRkUMRgUEEOKAQGL/xUjEkSL/xckIQQdRQEhBR5FAR5FASEEHUUBIQUeRQGJigUCgABHBYv/FkmTgRAORFcGAov8IxJAABCL/IEQEkAACIv8gSASQQEeIkSL/IEDkUmMASNMCYwFi/1AAGCL/kAAWySMA4sDi/8MQQBHi/shBB1FASEFHkUBi/uBEpGL+xuBG5ElGov7gTuRSpFMHCIeRQGBHxpPAkyQJRoZFosFiwFYiwZMUIwGiwMiCIwDjPtC/7GL+4sGjAGMAImL/kEAkov+Ig1EIov8kIv+DUSL/iIJi/0NRIv+i/0JjACLAEkcIh5FASUaTBiMBCSMA4sDi/8MQf+9i/shBB1FASEFHkUBi/uBEpGL+xuBG5ElGov7gTuRSpFMHCIeRQGBHxpPAkyQJRoZSYwCiwQPQQAfiwKLABiL/QgWiwWLAViLBkxQjAaLAyIIjAOM+0L/oIz7Qv+jIov8kEkiCYv9DUSL/QmMAEL/dyRC/t82GgFJFSMSRDYaAkkVgQQSRDYaA0kVgQQSRDYaBEkVgQISRE8DiP5nTwMXTwMXTwMXTwOBIE4ETgSI/nhFAShMULAiQzYaAUkVIxJENhoCSRWBAhJENhoDSRWBAhJENhoESRWBAhJETwOI/iNPAxdPAxdPAxdPA4EQTgROBIj+NEUBKExQsCJDNhoBSRUjEkQ2GgJJFSISRDYaA0kVIhJENhoESRWBAhJETwOI/eFPAxdPAxdPAxdPAyNOBE4EiP3zRQEoTFCwIkMjr4j9wYEgJEmB/weI/dxGAiJDI6+I/a6BECRJgf8PiP3JRgIiQyOviP2bIyRJgf4fiP23RgIiQyOviP2JgSAkSYGACIj9pEYCIkM=", "clear": "C4EBQw==" }, "compilerInfo": { "compiler": "puya", "compilerVersion": { "major": 5, "minor": 8, "patch": 1 } }, "events": [], "templateVariables": {} }