{ "name": "NativeArraysAlgo", "structs": { "Vector": [ { "name": "x", "type": "uint64" }, { "name": "y", "type": "uint64" } ] }, "methods": [ { "name": "readonlyArray", "args": [], "returns": { "type": "void" }, "actions": { "create": [], "call": [ "NoOp" ] }, "readonly": false, "events": [], "recommendations": {} }, { "name": "arrayInObject", "args": [], "returns": { "type": "void" }, "actions": { "create": [], "call": [ "NoOp" ] }, "readonly": false, "events": [], "recommendations": {} }, { "name": "buildArray", "args": [], "returns": { "type": "uint64[]" }, "actions": { "create": [], "call": [ "NoOp" ] }, "readonly": false, "events": [], "recommendations": {} }, { "name": "arrayFromCtor", "args": [], "returns": { "type": "uint64[]" }, "actions": { "create": [], "call": [ "NoOp" ] }, "readonly": false, "events": [], "recommendations": {} }, { "name": "buildReadonly", "args": [], "returns": { "type": "uint64[]" }, "actions": { "create": [], "call": [ "NoOp" ] }, "readonly": false, "events": [], "recommendations": {} }, { "name": "doThings", "args": [], "returns": { "type": "void" }, "actions": { "create": [], "call": [ "NoOp" ] }, "readonly": false, "events": [], "recommendations": {} }, { "name": "fixedArray", "args": [ { "type": "uint64[50]", "name": "y" } ], "returns": { "type": "void" }, "actions": { "create": [], "call": [ "NoOp" ] }, "readonly": false, "events": [], "recommendations": {} }, { "name": "arc4Interop", "args": [], "returns": { "type": "void" }, "actions": { "create": [], "call": [ "NoOp" ] }, "readonly": false, "events": [], "recommendations": {} }, { "name": "structs", "args": [ { "type": "(uint64,uint64)", "struct": "Vector", "name": "p" } ], "returns": { "type": "(uint64,uint64)[]" }, "actions": { "create": [], "call": [ "NoOp" ] }, "readonly": false, "events": [], "recommendations": {} }, { "name": "booleans", "args": [], "returns": { "type": "bool[]" }, "actions": { "create": [], "call": [ "NoOp" ] }, "readonly": false, "events": [], "recommendations": {} }, { "name": "booleansStatic", "args": [], "returns": { "type": "(bool,bool,bool)" }, "actions": { "create": [], "call": [ "NoOp" ] }, "readonly": false, "events": [], "recommendations": {} }, { "name": "arc4Booleans", "args": [], "returns": { "type": "bool[]" }, "actions": { "create": [], "call": [ "NoOp" ] }, "readonly": false, "events": [], "recommendations": {} }, { "name": "arc4BooleansStatic", "args": [], "returns": { "type": "(bool,bool,bool)" }, "actions": { "create": [], "call": [ "NoOp" ] }, "readonly": false, "events": [], "recommendations": {} }, { "name": "aliasing", "args": [ { "type": "uint64[]", "name": "mutable" }, { "type": "uint64[]", "name": "readOnly" } ], "returns": { "type": "void" }, "actions": { "create": [], "call": [ "NoOp" ] }, "readonly": false, "events": [], "recommendations": {} }, { "name": "receiveMutable", "args": [ { "type": "uint64[]", "name": "a" } ], "returns": { "type": "void" }, "actions": { "create": [], "call": [ "NoOp" ] }, "readonly": false, "events": [], "recommendations": {} }, { "name": "receiveReadonly", "args": [ { "type": "uint64[]", "name": "a" } ], "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": [ 1650 ], "errorMessage": "These should not match" }, { "pc": [ 430, 510, 567, 623, 663, 837, 998, 1174, 1374, 1516, 1589 ], "errorMessage": "assert target is match for conditions" }, { "pc": [ 513 ], "errorMessage": "cannot pop from empty array" }, { "pc": [ 570, 575, 1645 ], "errorMessage": "index access is out of bounds" }, { "pc": [ 384, 456, 531, 580, 627, 733, 860, 1051, 1234, 1391, 1566, 1606, 1623, 1658, 1676 ], "errorMessage": "invalid array length header" }, { "pc": [ 1617, 1633, 1668, 1686 ], "errorMessage": "invalid number of bytes for arc4.dynamic_array" }, { "pc": [ 1528 ], "errorMessage": "invalid number of bytes for arc4.static_array" }, { "pc": [ 1543 ], "errorMessage": "invalid number of bytes for tests/approvals/native-arrays.algo.ts::Vector" } ], "pcOffsetMethod": "none" }, "clear": { "sourceInfo": [], "pcOffsetMethod": "none" } }, "source": { "approval": "I3ByYWdtYSB2ZXJzaW9uIDExCiNwcmFnbWEgdHlwZXRyYWNrIGZhbHNlCgovLyBAYWxnb3JhbmRmb3VuZGF0aW9uL2FsZ29yYW5kLXR5cGVzY3JpcHQvYXJjNC9pbmRleC5kLnRzOjpDb250cmFjdC5hcHByb3ZhbFByb2dyYW0oKSAtPiB1aW50NjQ6Cm1haW46CiAgICBpbnRjYmxvY2sgMSA0IDEwIDAKICAgIGJ5dGVjYmxvY2sgMHgxNTFmN2M3NWEwIDB4MTUxZjdjNzUwMDAzYTAgMHgxNTFmN2M3NTAwMDQwMDAwMDAwMDAwMDAwMDAxMDAwMDAwMDAwMDAwMDAwMjAwMDAwMDAwMDAwMDAwMDMwMDAwMDAwMDAwMDAwMDA0IDB4MDY4MTAxIDB4MDAwNTAwMDAwMDAwMDAwMDAwMDEwMDAwMDAwMDAwMDAwMDAyMDAwMDAwMDAwMDAwMDAwMzAwMDAwMDAwMDAwMDAwMDQwMDAwMDAwMDAwMDAwMDA1CiAgICAvLyB0ZXN0cy9hcHByb3ZhbHMvbmF0aXZlLWFycmF5cy5hbGdvLnRzOjYKICAgIC8vIGV4cG9ydCBjbGFzcyBOYXRpdmVBcnJheXNBbGdvIGV4dGVuZHMgQ29udHJhY3QgewogICAgdHhuIE51bUFwcEFyZ3MKICAgIGJ6IG1haW5fX19hbGdvdHNfXy5kZWZhdWx0Q3JlYXRlQDIzCiAgICB0eG4gT25Db21wbGV0aW9uCiAgICAhCiAgICBhc3NlcnQKICAgIHR4biBBcHBsaWNhdGlvbklECiAgICBhc3NlcnQKICAgIHB1c2hieXRlc3MgMHg3ZDMxODU4OSAweGIwYWM5MDY2IDB4MGY0YzExY2EgMHhhYWEyOWY3MCAweGUyZDVlMDM1IDB4MTNhNTg4YzggMHhkNmVjYzFlNiAweDc4N2I1MGIyIDB4ZWI4N2EwNjQgMHhiYzYxZDZiOCAweDhmNTQ0NDczIDB4NDNlN2VlNDUgMHhjYmUzYTRmOCAweDE0M2YyMjNiIDB4ZDk4OTU0NDIgMHhlMjEzZjViNiAvLyBtZXRob2QgInJlYWRvbmx5QXJyYXkoKXZvaWQiLCBtZXRob2QgImFycmF5SW5PYmplY3QoKXZvaWQiLCBtZXRob2QgImJ1aWxkQXJyYXkoKXVpbnQ2NFtdIiwgbWV0aG9kICJhcnJheUZyb21DdG9yKCl1aW50NjRbXSIsIG1ldGhvZCAiYnVpbGRSZWFkb25seSgpdWludDY0W10iLCBtZXRob2QgImRvVGhpbmdzKCl2b2lkIiwgbWV0aG9kICJmaXhlZEFycmF5KHVpbnQ2NFs1MF0pdm9pZCIsIG1ldGhvZCAiYXJjNEludGVyb3AoKXZvaWQiLCBtZXRob2QgInN0cnVjdHMoKHVpbnQ2NCx1aW50NjQpKSh1aW50NjQsdWludDY0KVtdIiwgbWV0aG9kICJib29sZWFucygpYm9vbFtdIiwgbWV0aG9kICJib29sZWFuc1N0YXRpYygpKGJvb2wsYm9vbCxib29sKSIsIG1ldGhvZCAiYXJjNEJvb2xlYW5zKClib29sW10iLCBtZXRob2QgImFyYzRCb29sZWFuc1N0YXRpYygpKGJvb2wsYm9vbCxib29sKSIsIG1ldGhvZCAiYWxpYXNpbmcodWludDY0W10sdWludDY0W10pdm9pZCIsIG1ldGhvZCAicmVjZWl2ZU11dGFibGUodWludDY0W10pdm9pZCIsIG1ldGhvZCAicmVjZWl2ZVJlYWRvbmx5KHVpbnQ2NFtdKXZvaWQiCiAgICB0eG5hIEFwcGxpY2F0aW9uQXJncyAwCiAgICBtYXRjaCBtYWluX3JlYWRvbmx5QXJyYXlfcm91dGVANCBtYWluX2FycmF5SW5PYmplY3Rfcm91dGVANSBtYWluX2J1aWxkQXJyYXlfcm91dGVANiBtYWluX2FycmF5RnJvbUN0b3Jfcm91dGVANyBtYWluX2J1aWxkUmVhZG9ubHlfcm91dGVAOCBkb1RoaW5ncyBmaXhlZEFycmF5IG1haW5fYXJjNEludGVyb3Bfcm91dGVAMTEgc3RydWN0cyBtYWluX2Jvb2xlYW5zX3JvdXRlQDEzIG1haW5fYm9vbGVhbnNTdGF0aWNfcm91dGVAMTQgbWFpbl9hcmM0Qm9vbGVhbnNfcm91dGVAMTUgbWFpbl9hcmM0Qm9vbGVhbnNTdGF0aWNfcm91dGVAMTYgYWxpYXNpbmcgcmVjZWl2ZU11dGFibGUgcmVjZWl2ZVJlYWRvbmx5CiAgICBlcnIKCm1haW5fYXJjNEJvb2xlYW5zU3RhdGljX3JvdXRlQDE2OgogICAgLy8gdGVzdHMvYXBwcm92YWxzL25hdGl2ZS1hcnJheXMuYWxnby50czoxOTEKICAgIC8vIGFyYzRCb29sZWFuc1N0YXRpYygpIHsKICAgIGJ5dGVjXzAgLy8gMHgxNTFmN2M3NWEwCiAgICBsb2cKICAgIGludGNfMCAvLyAxCiAgICByZXR1cm4KCm1haW5fYXJjNEJvb2xlYW5zX3JvdXRlQDE1OgogICAgLy8gdGVzdHMvYXBwcm92YWxzL25hdGl2ZS1hcnJheXMuYWxnby50czoxODcKICAgIC8vIGFyYzRCb29sZWFucygpIHsKICAgIGJ5dGVjXzEgLy8gMHgxNTFmN2M3NTAwMDNhMAogICAgbG9nCiAgICBpbnRjXzAgLy8gMQogICAgcmV0dXJuCgptYWluX2Jvb2xlYW5zU3RhdGljX3JvdXRlQDE0OgogICAgLy8gdGVzdHMvYXBwcm92YWxzL25hdGl2ZS1hcnJheXMuYWxnby50czoxODMKICAgIC8vIGJvb2xlYW5zU3RhdGljKCkgewogICAgYnl0ZWNfMCAvLyAweDE1MWY3Yzc1YTAKICAgIGxvZwogICAgaW50Y18wIC8vIDEKICAgIHJldHVybgoKbWFpbl9ib29sZWFuc19yb3V0ZUAxMzoKICAgIC8vIHRlc3RzL2FwcHJvdmFscy9uYXRpdmUtYXJyYXlzLmFsZ28udHM6MTc5CiAgICAvLyBib29sZWFucygpIHsKICAgIGJ5dGVjXzEgLy8gMHgxNTFmN2M3NTAwMDNhMAogICAgbG9nCiAgICBpbnRjXzAgLy8gMQogICAgcmV0dXJuCgptYWluX2FyYzRJbnRlcm9wX3JvdXRlQDExOgogICAgLy8gdGVzdHMvYXBwcm92YWxzL25hdGl2ZS1hcnJheXMuYWxnby50czoxNTcKICAgIC8vIGFyYzRJbnRlcm9wKCkgewogICAgaW50Y18wIC8vIDEKICAgIHJldHVybgoKbWFpbl9idWlsZFJlYWRvbmx5X3JvdXRlQDg6CiAgICAvLyB0ZXN0cy9hcHByb3ZhbHMvbmF0aXZlLWFycmF5cy5hbGdvLnRzOjM4CiAgICAvLyBidWlsZFJlYWRvbmx5KCk6IFJlYWRvbmx5QXJyYXk8dWludDY0PiB7CiAgICBieXRlY18yIC8vIDB4MTUxZjdjNzUwMDA0MDAwMDAwMDAwMDAwMDAwMTAwMDAwMDAwMDAwMDAwMDIwMDAwMDAwMDAwMDAwMDAzMDAwMDAwMDAwMDAwMDAwNAogICAgbG9nCiAgICBpbnRjXzAgLy8gMQogICAgcmV0dXJuCgptYWluX2FycmF5RnJvbUN0b3Jfcm91dGVANzoKICAgIC8vIHRlc3RzL2FwcHJvdmFscy9uYXRpdmUtYXJyYXlzLmFsZ28udHM6MzQKICAgIC8vIGFycmF5RnJvbUN0b3IoKTogQXJyYXk8dWludDY0PiB7CiAgICBwdXNoYnl0ZXMgMHgxNTFmN2M3NTAwMDMwMDAwMDAwMDAwMDAwMDAxMDAwMDAwMDAwMDAwMDAwMjAwMDAwMDAwMDAwMDAwMDMKICAgIGxvZwogICAgaW50Y18wIC8vIDEKICAgIHJldHVybgoKbWFpbl9idWlsZEFycmF5X3JvdXRlQDY6CiAgICAvLyB0ZXN0cy9hcHByb3ZhbHMvbmF0aXZlLWFycmF5cy5hbGdvLnRzOjMwCiAgICAvLyBidWlsZEFycmF5KCk6IEFycmF5PHVpbnQ2ND4gewogICAgYnl0ZWNfMiAvLyAweDE1MWY3Yzc1MDAwNDAwMDAwMDAwMDAwMDAwMDEwMDAwMDAwMDAwMDAwMDAyMDAwMDAwMDAwMDAwMDAwMzAwMDAwMDAwMDAwMDAwMDQKICAgIGxvZwogICAgaW50Y18wIC8vIDEKICAgIHJldHVybgoKbWFpbl9hcnJheUluT2JqZWN0X3JvdXRlQDU6CiAgICAvLyB0ZXN0cy9hcHByb3ZhbHMvbmF0aXZlLWFycmF5cy5hbGdvLnRzOjIwCiAgICAvLyBhcnJheUluT2JqZWN0KCkgewogICAgaW50Y18wIC8vIDEKICAgIHJldHVybgoKbWFpbl9yZWFkb25seUFycmF5X3JvdXRlQDQ6CiAgICAvLyB0ZXN0cy9hcHByb3ZhbHMvbmF0aXZlLWFycmF5cy5hbGdvLnRzOjcKICAgIC8vIHJlYWRvbmx5QXJyYXkoKSB7CiAgICBpbnRjXzAgLy8gMQogICAgcmV0dXJuCgptYWluX19fYWxnb3RzX18uZGVmYXVsdENyZWF0ZUAyMzoKICAgIC8vIHRlc3RzL2FwcHJvdmFscy9uYXRpdmUtYXJyYXlzLmFsZ28udHM6NgogICAgLy8gZXhwb3J0IGNsYXNzIE5hdGl2ZUFycmF5c0FsZ28gZXh0ZW5kcyBDb250cmFjdCB7CiAgICB0eG4gT25Db21wbGV0aW9uCiAgICAhCiAgICB0eG4gQXBwbGljYXRpb25JRAogICAgIQogICAgJiYKICAgIHJldHVybgoKCi8vIF9wdXlhX2xpYi5hcmM0LmR5bmFtaWNfYXJyYXlfcG9wX2ZpeGVkX3NpemUoYXJyYXk6IGJ5dGVzLCBmaXhlZF9ieXRlX3NpemU6IHVpbnQ2NCkgLT4gYnl0ZXM6CmR5bmFtaWNfYXJyYXlfcG9wX2ZpeGVkX3NpemU6CiAgICBwcm90byAyIDEKICAgIGZyYW1lX2RpZyAtMgogICAgbGVuCiAgICBmcmFtZV9kaWcgLTEKICAgIC0KICAgIGZyYW1lX2RpZyAtMgogICAgaW50Y18zIC8vIDAKICAgIHVuY292ZXIgMgogICAgc3Vic3RyaW5nMwogICAgZHVwCiAgICBpbnRjXzMgLy8gMAogICAgZXh0cmFjdF91aW50MTYKICAgIGludGNfMCAvLyAxCiAgICAtCiAgICBpdG9iCiAgICBleHRyYWN0IDYgMAogICAgcmVwbGFjZTIgMAogICAgcmV0c3ViCgoKLy8gdGVzdHMvYXBwcm92YWxzL25hdGl2ZS1hcnJheXMuYWxnby50czo6TmF0aXZlQXJyYXlzQWxnby5kb1RoaW5nc1tyb3V0aW5nXSgpIC0+IHZvaWQ6CmRvVGhpbmdzOgoKZG9UaGluZ3Nfd2hpbGVfdG9wQDI6CiAgICBwdXNoaW50IDE0MTAKICAgIGdsb2JhbCBPcGNvZGVCdWRnZXQKICAgID4KICAgIGJ6IGRvVGhpbmdzX2FmdGVyX3doaWxlQDcKICAgIGl0eG5fYmVnaW4KICAgIHB1c2hpbnQgNiAvLyBhcHBsCiAgICBpdHhuX2ZpZWxkIFR5cGVFbnVtCiAgICBwdXNoaW50IDUgLy8gRGVsZXRlQXBwbGljYXRpb24KICAgIGl0eG5fZmllbGQgT25Db21wbGV0aW9uCiAgICBieXRlY18zIC8vIDB4MDY4MTAxCiAgICBpdHhuX2ZpZWxkIEFwcHJvdmFsUHJvZ3JhbQogICAgYnl0ZWNfMyAvLyAweDA2ODEwMQogICAgaXR4bl9maWVsZCBDbGVhclN0YXRlUHJvZ3JhbQogICAgaW50Y18zIC8vIDAKICAgIGl0eG5fZmllbGQgRmVlCiAgICBpdHhuX3N1Ym1pdAogICAgYiBkb1RoaW5nc193aGlsZV90b3BAMgoKZG9UaGluZ3NfYWZ0ZXJfd2hpbGVANzoKICAgIC8vIHRlc3RzL2FwcHJvdmFscy9uYXRpdmUtYXJyYXlzLmFsZ28udHM6NDYKICAgIC8vIGFyci5wdXNoKDUpCiAgICBwdXNoaW50IDUKICAgIGl0b2IKICAgIGJ5dGVjIDQgLy8gMHgwMDA1MDAwMDAwMDAwMDAwMDAwMTAwMDAwMDAwMDAwMDAwMDIwMDAwMDAwMDAwMDAwMDAzMDAwMDAwMDAwMDAwMDAwNDAwMDAwMDAwMDAwMDAwMDUKICAgIC8vIHRlc3RzL2FwcHJvdmFscy9uYXRpdmUtYXJyYXlzLmFsZ28udHM6NDcKICAgIC8vIGFzc2VydChhcnIucG9wKCkhID09PSA1KQogICAgcHVzaGludCA4CiAgICBjYWxsc3ViIGR5bmFtaWNfYXJyYXlfcG9wX2ZpeGVkX3NpemUKICAgIC8vIHRlc3RzL2FwcHJvdmFscy9uYXRpdmUtYXJyYXlzLmFsZ28udHM6NDgKICAgIC8vIGFzc2VydE1hdGNoKGFyciwgWzEsIDIsIDMsIDRdKQogICAgZHVwCiAgICBpbnRjXzMgLy8gMAogICAgZXh0cmFjdF91aW50MTYgLy8gb24gZXJyb3I6IGludmFsaWQgYXJyYXkgbGVuZ3RoIGhlYWRlcgogICAgZHVwCiAgICBpbnRjXzEgLy8gNAogICAgPT0KICAgIGRpZyAyCiAgICBleHRyYWN0IDIgMAogICAgZGlnIDMKICAgIHB1c2hpbnQgMgogICAgZXh0cmFjdF91aW50NjQKICAgIGludGNfMCAvLyAxCiAgICA9PQogICAgdW5jb3ZlciAyCiAgICBkaWcgMQogICAgJiYKICAgIGRpZyA0CiAgICBpbnRjXzIgLy8gMTAKICAgIGV4dHJhY3RfdWludDY0CiAgICBwdXNoaW50IDIKICAgID09CiAgICAmJgogICAgZGlnIDQKICAgIHB1c2hpbnQgMTgKICAgIGV4dHJhY3RfdWludDY0CiAgICBwdXNoaW50IDMKICAgID09CiAgICAmJgogICAgZGlnIDQKICAgIHB1c2hpbnQgMjYKICAgIGV4dHJhY3RfdWludDY0CiAgICBpbnRjXzEgLy8gNAogICAgPT0KICAgICYmCiAgICBhc3NlcnQgLy8gYXNzZXJ0IHRhcmdldCBpcyBtYXRjaCBmb3IgY29uZGl0aW9ucwogICAgLy8gdGVzdHMvYXBwcm92YWxzL25hdGl2ZS1hcnJheXMuYWxnby50czo1MQogICAgLy8gYXNzZXJ0KGFyclswXSA9PT0gMSkKICAgIGFzc2VydAogICAgLy8gdGVzdHMvYXBwcm92YWxzL25hdGl2ZS1hcnJheXMuYWxnby50czo1MgogICAgLy8gYXNzZXJ0KGFyci5hdCgtMSkhID09PSA0KQogICAgZGlnIDEKICAgIGludGNfMCAvLyAxCiAgICAtCiAgICBwdXNoaW50IDgKICAgICoKICAgIGV4dHJhY3RfdWludDY0CiAgICBpbnRjXzEgLy8gNAogICAgPT0KICAgIGFzc2VydAogICAgLy8gdGVzdHMvYXBwcm92YWxzL25hdGl2ZS1hcnJheXMuYWxnby50czo1NQogICAgLy8gYXJyLnB1c2goVWludDY0KDUpKQogICAgaW50Y18wIC8vIDEKICAgICsKICAgIGl0b2IKICAgIGV4dHJhY3QgNiAwCiAgICByZXBsYWNlMiAwCiAgICBkaWcgMQogICAgY29uY2F0CiAgICAvLyB0ZXN0cy9hcHByb3ZhbHMvbmF0aXZlLWFycmF5cy5hbGdvLnRzOjU3CiAgICAvLyBhc3NlcnRNYXRjaChhcnIsIFsxLCAyLCAzLCA0LCA1XSkKICAgIGR1cAogICAgaW50Y18zIC8vIDAKICAgIGV4dHJhY3RfdWludDE2IC8vIG9uIGVycm9yOiBpbnZhbGlkIGFycmF5IGxlbmd0aCBoZWFkZXIKICAgIGR1cAogICAgcHVzaGludCA1CiAgICA9PQogICAgZGlnIDIKICAgIGV4dHJhY3QgMiAwCiAgICBkaWcgMwogICAgcHVzaGludCAyCiAgICBleHRyYWN0X3VpbnQ2NAogICAgaW50Y18wIC8vIDEKICAgID09CiAgICB1bmNvdmVyIDIKICAgICYmCiAgICBkaWcgMwogICAgaW50Y18yIC8vIDEwCiAgICBleHRyYWN0X3VpbnQ2NAogICAgcHVzaGludCAyCiAgICA9PQogICAgJiYKICAgIGRpZyAzCiAgICBwdXNoaW50IDE4CiAgICBleHRyYWN0X3VpbnQ2NAogICAgcHVzaGludCAzCiAgICA9PQogICAgJiYKICAgIGRpZyAzCiAgICBwdXNoaW50IDI2CiAgICBleHRyYWN0X3VpbnQ2NAogICAgaW50Y18xIC8vIDQKICAgID09CiAgICAmJgogICAgZGlnIDMKICAgIHB1c2hpbnQgMzQKICAgIGV4dHJhY3RfdWludDY0CiAgICBwdXNoaW50IDUKICAgID09CiAgICAmJgogICAgYXNzZXJ0IC8vIGFzc2VydCB0YXJnZXQgaXMgbWF0Y2ggZm9yIGNvbmRpdGlvbnMKICAgIC8vIHRlc3RzL2FwcHJvdmFscy9uYXRpdmUtYXJyYXlzLmFsZ28udHM6NjAKICAgIC8vIGNvbnN0IHRvcCA9IGFyci5wb3AoKSEKICAgIHN3YXAKICAgIGludGNfMCAvLyAxCiAgICAtIC8vIG9uIGVycm9yOiBjYW5ub3QgcG9wIGZyb20gZW1wdHkgYXJyYXkKICAgIHB1c2hpbnQgOAogICAgKgogICAgZXh0cmFjdF91aW50NjQKICAgIHN3YXAKICAgIHB1c2hpbnQgOAogICAgY2FsbHN1YiBkeW5hbWljX2FycmF5X3BvcF9maXhlZF9zaXplCiAgICAvLyB0ZXN0cy9hcHByb3ZhbHMvbmF0aXZlLWFycmF5cy5hbGdvLnRzOjYxCiAgICAvLyBhc3NlcnQodG9wID09PSA1KQogICAgc3dhcAogICAgcHVzaGludCA1CiAgICA9PQogICAgYXNzZXJ0CiAgICAvLyB0ZXN0cy9hcHByb3ZhbHMvbmF0aXZlLWFycmF5cy5hbGdvLnRzOjYzCiAgICAvLyBhc3NlcnRNYXRjaChhcnIsIFsxLCAyLCAzLCA0XSkKICAgIGR1cAogICAgaW50Y18zIC8vIDAKICAgIGV4dHJhY3RfdWludDE2IC8vIG9uIGVycm9yOiBpbnZhbGlkIGFycmF5IGxlbmd0aCBoZWFkZXIKICAgIGludGNfMSAvLyA0CiAgICA9PQogICAgZGlnIDEKICAgIHB1c2hpbnQgMgogICAgZXh0cmFjdF91aW50NjQKICAgIGludGNfMCAvLyAxCiAgICA9PQogICAgJiYKICAgIGRpZyAxCiAgICBpbnRjXzIgLy8gMTAKICAgIGV4dHJhY3RfdWludDY0CiAgICBwdXNoaW50IDIKICAgID09CiAgICAmJgogICAgZGlnIDEKICAgIHB1c2hpbnQgMTgKICAgIGV4dHJhY3RfdWludDY0CiAgICBwdXNoaW50IDMKICAgID09CiAgICAmJgogICAgZGlnIDEKICAgIHB1c2hpbnQgMjYKICAgIGV4dHJhY3RfdWludDY0CiAgICBpbnRjXzEgLy8gNAogICAgPT0KICAgICYmCiAgICBhc3NlcnQgLy8gYXNzZXJ0IHRhcmdldCBpcyBtYXRjaCBmb3IgY29uZGl0aW9ucwogICAgLy8gdGVzdHMvYXBwcm92YWxzL25hdGl2ZS1hcnJheXMuYWxnby50czo2NgogICAgLy8gYXJyWzFdID0gMTAKICAgIGludGNfMiAvLyAxMAogICAgaXRvYgogICAgcmVwbGFjZTIgMTAgLy8gb24gZXJyb3I6IGluZGV4IGFjY2VzcyBpcyBvdXQgb2YgYm91bmRzCiAgICAvLyB0ZXN0cy9hcHByb3ZhbHMvbmF0aXZlLWFycmF5cy5hbGdvLnRzOjY4CiAgICAvLyBjb25zdCBhcnIyID0gYXJyLndpdGgoMSwgNSkKICAgIGR1cAogICAgdW5jb3ZlciAyCiAgICByZXBsYWNlMiAxMCAvLyBvbiBlcnJvcjogaW5kZXggYWNjZXNzIGlzIG91dCBvZiBib3VuZHMKICAgIC8vIHRlc3RzL2FwcHJvdmFscy9uYXRpdmUtYXJyYXlzLmFsZ28udHM6NzAKICAgIC8vIGFzc2VydE1hdGNoKGFyciwgWzEsIDEwLCAzLCA0XSkKICAgIGRpZyAxCiAgICBpbnRjXzMgLy8gMAogICAgZXh0cmFjdF91aW50MTYgLy8gb24gZXJyb3I6IGludmFsaWQgYXJyYXkgbGVuZ3RoIGhlYWRlcgogICAgZHVwCiAgICBpbnRjXzEgLy8gNAogICAgPT0KICAgIGRpZyAzCiAgICBleHRyYWN0IDIgMAogICAgZGlnIDQKICAgIHB1c2hpbnQgMgogICAgZXh0cmFjdF91aW50NjQKICAgIGludGNfMCAvLyAxCiAgICA9PQogICAgdW5jb3ZlciAyCiAgICAmJgogICAgZGlnIDQKICAgIGludGNfMiAvLyAxMAogICAgZXh0cmFjdF91aW50NjQKICAgIGludGNfMiAvLyAxMAogICAgPT0KICAgICYmCiAgICBkaWcgNAogICAgcHVzaGludCAxOAogICAgZXh0cmFjdF91aW50NjQKICAgIHB1c2hpbnQgMwogICAgPT0KICAgICYmCiAgICBkaWcgNAogICAgcHVzaGludCAyNgogICAgZXh0cmFjdF91aW50NjQKICAgIGludGNfMSAvLyA0CiAgICA9PQogICAgJiYKICAgIGFzc2VydCAvLyBhc3NlcnQgdGFyZ2V0IGlzIG1hdGNoIGZvciBjb25kaXRpb25zCiAgICAvLyB0ZXN0cy9hcHByb3ZhbHMvbmF0aXZlLWFycmF5cy5hbGdvLnRzOjcxCiAgICAvLyBhc3NlcnRNYXRjaChhcnIyLCBbMSwgNSwgMywgNF0pCiAgICBkaWcgMgogICAgaW50Y18zIC8vIDAKICAgIGV4dHJhY3RfdWludDE2IC8vIG9uIGVycm9yOiBpbnZhbGlkIGFycmF5IGxlbmd0aCBoZWFkZXIKICAgIGludGNfMSAvLyA0CiAgICA9PQogICAgZGlnIDMKICAgIHB1c2hpbnQgMgogICAgZXh0cmFjdF91aW50NjQKICAgIGludGNfMCAvLyAxCiAgICA9PQogICAgJiYKICAgIGRpZyAzCiAgICBpbnRjXzIgLy8gMTAKICAgIGV4dHJhY3RfdWludDY0CiAgICBwdXNoaW50IDUKICAgID09CiAgICAmJgogICAgZGlnIDMKICAgIHB1c2hpbnQgMTgKICAgIGV4dHJhY3RfdWludDY0CiAgICBwdXNoaW50IDMKICAgID09CiAgICAmJgogICAgdW5jb3ZlciAzCiAgICBwdXNoaW50IDI2CiAgICBleHRyYWN0X3VpbnQ2NAogICAgaW50Y18xIC8vIDQKICAgID09CiAgICAmJgogICAgYXNzZXJ0IC8vIGFzc2VydCB0YXJnZXQgaXMgbWF0Y2ggZm9yIGNvbmRpdGlvbnMKICAgIGRpZyAxCiAgICB1bmNvdmVyIDIKICAgICsKICAgIGl0b2IKICAgIGV4dHJhY3QgNiAwCiAgICB1bmNvdmVyIDIKICAgIHN3YXAKICAgIHJlcGxhY2UyIDAKICAgIHN3YXAKICAgIGNvbmNhdAogICAgLy8gdGVzdHMvYXBwcm92YWxzL25hdGl2ZS1hcnJheXMuYWxnby50czo3NQogICAgLy8gYXJyID0gYXJyLmNvbmNhdChhcnIpLmNvbmNhdCgxMSkuY29uY2F0KHQxKQogICAgcHVzaGludCAxMQogICAgaXRvYgogICAgZGlnIDEKICAgIGludGNfMyAvLyAwCiAgICBleHRyYWN0X3VpbnQxNgogICAgLy8gdGVzdHMvYXBwcm92YWxzL25hdGl2ZS1hcnJheXMuYWxnby50czo3NQogICAgLy8gYXJyID0gYXJyLmNvbmNhdChhcnIpLmNvbmNhdCgxMSkuY29uY2F0KHQxKQogICAgaW50Y18wIC8vIDEKICAgICsKICAgIGl0b2IKICAgIGV4dHJhY3QgNiAwCiAgICB1bmNvdmVyIDIKICAgIHN3YXAKICAgIHJlcGxhY2UyIDAKICAgIHN3YXAKICAgIGNvbmNhdAogICAgZHVwCiAgICBpbnRjXzMgLy8gMAogICAgZXh0cmFjdF91aW50MTYKICAgIC8vIHRlc3RzL2FwcHJvdmFscy9uYXRpdmUtYXJyYXlzLmFsZ28udHM6NzUKICAgIC8vIGFyciA9IGFyci5jb25jYXQoYXJyKS5jb25jYXQoMTEpLmNvbmNhdCh0MSkKICAgIHB1c2hpbnQgMgogICAgKwogICAgaXRvYgogICAgZXh0cmFjdCA2IDAKICAgIHJlcGxhY2UyIDAKICAgIC8vIHRlc3RzL2FwcHJvdmFscy9uYXRpdmUtYXJyYXlzLmFsZ28udHM6NzQKICAgIC8vIGNvbnN0IHQxOiBbdWludDY0LCB1aW50NjRdID0gWzEyLCAxM10KICAgIHB1c2hieXRlcyAweDAwMDAwMDAwMDAwMDAwMGMwMDAwMDAwMDAwMDAwMDBkCiAgICBjb25jYXQKICAgIC8vIHRlc3RzL2FwcHJvdmFscy9uYXRpdmUtYXJyYXlzLmFsZ28udHM6NzYKICAgIC8vIGFzc2VydE1hdGNoKGFyciwgWzEsIDEwLCAzLCA0LCAxLCAxMCwgMywgNCwgMTEsIDEyLCAxM10pCiAgICBkdXAKICAgIGludGNfMyAvLyAwCiAgICBleHRyYWN0X3VpbnQxNiAvLyBvbiBlcnJvcjogaW52YWxpZCBhcnJheSBsZW5ndGggaGVhZGVyCiAgICBkdXAKICAgIHB1c2hpbnQgMTEKICAgID09CiAgICBkaWcgMgogICAgZXh0cmFjdCAyIDAKICAgIGRpZyAzCiAgICBwdXNoaW50IDIKICAgIGV4dHJhY3RfdWludDY0CiAgICBpbnRjXzAgLy8gMQogICAgPT0KICAgIHVuY292ZXIgMgogICAgJiYKICAgIGRpZyAzCiAgICBpbnRjXzIgLy8gMTAKICAgIGV4dHJhY3RfdWludDY0CiAgICBpbnRjXzIgLy8gMTAKICAgID09CiAgICAmJgogICAgZGlnIDMKICAgIHB1c2hpbnQgMTgKICAgIGV4dHJhY3RfdWludDY0CiAgICBwdXNoaW50IDMKICAgID09CiAgICAmJgogICAgZGlnIDMKICAgIHB1c2hpbnQgMjYKICAgIGV4dHJhY3RfdWludDY0CiAgICBpbnRjXzEgLy8gNAogICAgPT0KICAgICYmCiAgICBkaWcgMwogICAgcHVzaGludCAzNAogICAgZXh0cmFjdF91aW50NjQKICAgIGludGNfMCAvLyAxCiAgICA9PQogICAgJiYKICAgIGRpZyAzCiAgICBwdXNoaW50IDQyCiAgICBleHRyYWN0X3VpbnQ2NAogICAgaW50Y18yIC8vIDEwCiAgICA9PQogICAgJiYKICAgIGRpZyAzCiAgICBwdXNoaW50IDUwCiAgICBleHRyYWN0X3VpbnQ2NAogICAgcHVzaGludCAzCiAgICA9PQogICAgJiYKICAgIGRpZyAzCiAgICBwdXNoaW50IDU4CiAgICBleHRyYWN0X3VpbnQ2NAogICAgaW50Y18xIC8vIDQKICAgID09CiAgICAmJgogICAgZGlnIDMKICAgIHB1c2hpbnQgNjYKICAgIGV4dHJhY3RfdWludDY0CiAgICBwdXNoaW50IDExCiAgICA9PQogICAgJiYKICAgIGRpZyAzCiAgICBwdXNoaW50IDc0CiAgICBleHRyYWN0X3VpbnQ2NAogICAgcHVzaGludCAxMgogICAgPT0KICAgICYmCiAgICBkaWcgMwogICAgcHVzaGludCA4MgogICAgZXh0cmFjdF91aW50NjQKICAgIHB1c2hpbnQgMTMKICAgID09CiAgICAmJgogICAgYXNzZXJ0IC8vIGFzc2VydCB0YXJnZXQgaXMgbWF0Y2ggZm9yIGNvbmRpdGlvbnMKICAgIC8vIHRlc3RzL2FwcHJvdmFscy9uYXRpdmUtYXJyYXlzLmFsZ28udHM6ODMKICAgIC8vIGNvbnN0IGZBcnIxID0gbmV3IEZpeGVkQXJyYXk8dWludDY0LCA0PigpCiAgICBwdXNoaW50IDMyCiAgICBiemVybwogICAgcHVzaGludCA1CiAgICBkaWcgMwogICAgKwogICAgaXRvYgogICAgZXh0cmFjdCA2IDAKICAgIGJ5dGVjIDQgLy8gMHgwMDA1MDAwMDAwMDAwMDAwMDAwMTAwMDAwMDAwMDAwMDAwMDIwMDAwMDAwMDAwMDAwMDAzMDAwMDAwMDAwMDAwMDAwNDAwMDAwMDAwMDAwMDAwMDUKICAgIHN3YXAKICAgIHJlcGxhY2UyIDAKICAgIGRpZyAyCiAgICBjb25jYXQKICAgIC8vIHRlc3RzL2FwcHJvdmFscy9uYXRpdmUtYXJyYXlzLmFsZ28udHM6OTIKICAgIC8vIGFzc2VydE1hdGNoKGFycjQsIFsxLCAyLCAzLCA0LCA1LCAxLCAxMCwgMywgNCwgMSwgMTAsIDMsIDQsIDExLCAxMiwgMTNdKQogICAgZHVwCiAgICBpbnRjXzMgLy8gMAogICAgZXh0cmFjdF91aW50MTYgLy8gb24gZXJyb3I6IGludmFsaWQgYXJyYXkgbGVuZ3RoIGhlYWRlcgogICAgcHVzaGludCAxNgogICAgPT0KICAgIGRpZyAxCiAgICBwdXNoaW50IDIKICAgIGV4dHJhY3RfdWludDY0CiAgICBpbnRjXzAgLy8gMQogICAgPT0KICAgICYmCiAgICBkaWcgMQogICAgaW50Y18yIC8vIDEwCiAgICBleHRyYWN0X3VpbnQ2NAogICAgcHVzaGludCAyCiAgICA9PQogICAgJiYKICAgIGRpZyAxCiAgICBwdXNoaW50IDE4CiAgICBleHRyYWN0X3VpbnQ2NAogICAgcHVzaGludCAzCiAgICA9PQogICAgJiYKICAgIGRpZyAxCiAgICBwdXNoaW50IDI2CiAgICBleHRyYWN0X3VpbnQ2NAogICAgaW50Y18xIC8vIDQKICAgID09CiAgICAmJgogICAgZGlnIDEKICAgIHB1c2hpbnQgMzQKICAgIGV4dHJhY3RfdWludDY0CiAgICBwdXNoaW50IDUKICAgID09CiAgICAmJgogICAgZGlnIDEKICAgIHB1c2hpbnQgNDIKICAgIGV4dHJhY3RfdWludDY0CiAgICBpbnRjXzAgLy8gMQogICAgPT0KICAgICYmCiAgICBkaWcgMQogICAgcHVzaGludCA1MAogICAgZXh0cmFjdF91aW50NjQKICAgIGludGNfMiAvLyAxMAogICAgPT0KICAgICYmCiAgICBkaWcgMQogICAgcHVzaGludCA1OAogICAgZXh0cmFjdF91aW50NjQKICAgIHB1c2hpbnQgMwogICAgPT0KICAgICYmCiAgICBkaWcgMQogICAgcHVzaGludCA2NgogICAgZXh0cmFjdF91aW50NjQKICAgIGludGNfMSAvLyA0CiAgICA9PQogICAgJiYKICAgIGRpZyAxCiAgICBwdXNoaW50IDc0CiAgICBleHRyYWN0X3VpbnQ2NAogICAgaW50Y18wIC8vIDEKICAgID09CiAgICAmJgogICAgZGlnIDEKICAgIHB1c2hpbnQgODIKICAgIGV4dHJhY3RfdWludDY0CiAgICBpbnRjXzIgLy8gMTAKICAgID09CiAgICAmJgogICAgZGlnIDEKICAgIHB1c2hpbnQgOTAKICAgIGV4dHJhY3RfdWludDY0CiAgICBwdXNoaW50IDMKICAgID09CiAgICAmJgogICAgZGlnIDEKICAgIHB1c2hpbnQgOTgKICAgIGV4dHJhY3RfdWludDY0CiAgICBpbnRjXzEgLy8gNAogICAgPT0KICAgICYmCiAgICBkaWcgMQogICAgcHVzaGludCAxMDYKICAgIGV4dHJhY3RfdWludDY0CiAgICBwdXNoaW50IDExCiAgICA9PQogICAgJiYKICAgIGRpZyAxCiAgICBwdXNoaW50IDExNAogICAgZXh0cmFjdF91aW50NjQKICAgIHB1c2hpbnQgMTIKICAgID09CiAgICAmJgogICAgc3dhcAogICAgcHVzaGludCAxMjIKICAgIGV4dHJhY3RfdWludDY0CiAgICBwdXNoaW50IDEzCiAgICA9PQogICAgJiYKICAgIGFzc2VydCAvLyBhc3NlcnQgdGFyZ2V0IGlzIG1hdGNoIGZvciBjb25kaXRpb25zCiAgICBpbnRjXzEgLy8gNAogICAgZGlnIDMKICAgICsKICAgIGl0b2IKICAgIGV4dHJhY3QgNiAwCiAgICAvLyB0ZXN0cy9hcHByb3ZhbHMvbmF0aXZlLWFycmF5cy5hbGdvLnRzOjk3CiAgICAvLyBjb25zdCBhcnI2ID0gZkFycjEuY29uY2F0KGFycikKICAgIHB1c2hieXRlcyAweDAwMDQwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwCiAgICBzd2FwCiAgICByZXBsYWNlMiAwCiAgICB1bmNvdmVyIDIKICAgIGNvbmNhdAogICAgLy8gdGVzdHMvYXBwcm92YWxzL25hdGl2ZS1hcnJheXMuYWxnby50czo5OAogICAgLy8gYXNzZXJ0TWF0Y2goYXJyNiwgWzAsIDAsIDAsIDAsIDEsIDEwLCAzLCA0LCAxLCAxMCwgMywgNCwgMTEsIDEyLCAxM10pCiAgICBkdXAKICAgIGludGNfMyAvLyAwCiAgICBleHRyYWN0X3VpbnQxNiAvLyBvbiBlcnJvcjogaW52YWxpZCBhcnJheSBsZW5ndGggaGVhZGVyCiAgICBwdXNoaW50IDE1CiAgICA9PQogICAgZGlnIDEKICAgIHB1c2hpbnQgMgogICAgZXh0cmFjdF91aW50NjQKICAgICEKICAgICYmCiAgICBkaWcgMQogICAgaW50Y18yIC8vIDEwCiAgICBleHRyYWN0X3VpbnQ2NAogICAgIQogICAgJiYKICAgIGRpZyAxCiAgICBwdXNoaW50IDE4CiAgICBleHRyYWN0X3VpbnQ2NAogICAgIQogICAgJiYKICAgIGRpZyAxCiAgICBwdXNoaW50IDI2CiAgICBleHRyYWN0X3VpbnQ2NAogICAgIQogICAgJiYKICAgIGRpZyAxCiAgICBwdXNoaW50IDM0CiAgICBleHRyYWN0X3VpbnQ2NAogICAgaW50Y18wIC8vIDEKICAgID09CiAgICAmJgogICAgZGlnIDEKICAgIHB1c2hpbnQgNDIKICAgIGV4dHJhY3RfdWludDY0CiAgICBpbnRjXzIgLy8gMTAKICAgID09CiAgICAmJgogICAgZGlnIDEKICAgIHB1c2hpbnQgNTAKICAgIGV4dHJhY3RfdWludDY0CiAgICBwdXNoaW50IDMKICAgID09CiAgICAmJgogICAgZGlnIDEKICAgIHB1c2hpbnQgNTgKICAgIGV4dHJhY3RfdWludDY0CiAgICBpbnRjXzEgLy8gNAogICAgPT0KICAgICYmCiAgICBkaWcgMQogICAgcHVzaGludCA2NgogICAgZXh0cmFjdF91aW50NjQKICAgIGludGNfMCAvLyAxCiAgICA9PQogICAgJiYKICAgIGRpZyAxCiAgICBwdXNoaW50IDc0CiAgICBleHRyYWN0X3VpbnQ2NAogICAgaW50Y18yIC8vIDEwCiAgICA9PQogICAgJiYKICAgIGRpZyAxCiAgICBwdXNoaW50IDgyCiAgICBleHRyYWN0X3VpbnQ2NAogICAgcHVzaGludCAzCiAgICA9PQogICAgJiYKICAgIGRpZyAxCiAgICBwdXNoaW50IDkwCiAgICBleHRyYWN0X3VpbnQ2NAogICAgaW50Y18xIC8vIDQKICAgID09CiAgICAmJgogICAgZGlnIDEKICAgIHB1c2hpbnQgOTgKICAgIGV4dHJhY3RfdWludDY0CiAgICBwdXNoaW50IDExCiAgICA9PQogICAgJiYKICAgIGRpZyAxCiAgICBwdXNoaW50IDEwNgogICAgZXh0cmFjdF91aW50NjQKICAgIHB1c2hpbnQgMTIKICAgID09CiAgICAmJgogICAgc3dhcAogICAgcHVzaGludCAxMTQKICAgIGV4dHJhY3RfdWludDY0CiAgICBwdXNoaW50IDEzCiAgICA9PQogICAgJiYKICAgIGFzc2VydCAvLyBhc3NlcnQgdGFyZ2V0IGlzIG1hdGNoIGZvciBjb25kaXRpb25zCiAgICBkaWcgMQogICAgLy8gdGVzdHMvYXBwcm92YWxzL25hdGl2ZS1hcnJheXMuYWxnby50czoxMDAKICAgIC8vIGNvbnN0IGFycjcgPSBhcnIuY29uY2F0KHJBcnIxKQogICAgcHVzaGludCA1CiAgICArCiAgICBpdG9iCiAgICBleHRyYWN0IDYgMAogICAgZGlnIDMKICAgIHN3YXAKICAgIHJlcGxhY2UyIDAKICAgIC8vIHRlc3RzL2FwcHJvdmFscy9uYXRpdmUtYXJyYXlzLmFsZ28udHM6OTQKICAgIC8vIGNvbnN0IGFycjUgPSBmQXJyMS5jb25jYXQockFycjEpCiAgICBwdXNoYnl0ZXMgMHgwMDAwMDAwMDAwMDAwMDAxMDAwMDAwMDAwMDAwMDAwMjAwMDAwMDAwMDAwMDAwMDMwMDAwMDAwMDAwMDAwMDA0MDAwMDAwMDAwMDAwMDAwNQogICAgY29uY2F0CiAgICAvLyB0ZXN0cy9hcHByb3ZhbHMvbmF0aXZlLWFycmF5cy5hbGdvLnRzOjEwMQogICAgLy8gYXNzZXJ0KGFycjcubGVuZ3RoID09PSAxNikKICAgIGR1cAogICAgaW50Y18zIC8vIDAKICAgIGV4dHJhY3RfdWludDE2IC8vIG9uIGVycm9yOiBpbnZhbGlkIGFycmF5IGxlbmd0aCBoZWFkZXIKICAgIHB1c2hpbnQgMTYKICAgID09CiAgICBkdXAKICAgIGFzc2VydAogICAgLy8gdGVzdHMvYXBwcm92YWxzL25hdGl2ZS1hcnJheXMuYWxnby50czoxMDIKICAgIC8vIGFzc2VydE1hdGNoKGFycjcsIFsxLCAxMCwgMywgNCwgMSwgMTAsIDMsIDQsIDExLCAxMiwgMTMsIDEsIDIsIDMsIDQsIDVdKQogICAgZGlnIDEKICAgIHB1c2hpbnQgMgogICAgZXh0cmFjdF91aW50NjQKICAgIGludGNfMCAvLyAxCiAgICA9PQogICAgJiYKICAgIGRpZyAxCiAgICBpbnRjXzIgLy8gMTAKICAgIGV4dHJhY3RfdWludDY0CiAgICBpbnRjXzIgLy8gMTAKICAgID09CiAgICAmJgogICAgZGlnIDEKICAgIHB1c2hpbnQgMTgKICAgIGV4dHJhY3RfdWludDY0CiAgICBwdXNoaW50IDMKICAgID09CiAgICAmJgogICAgZGlnIDEKICAgIHB1c2hpbnQgMjYKICAgIGV4dHJhY3RfdWludDY0CiAgICBpbnRjXzEgLy8gNAogICAgPT0KICAgICYmCiAgICBkaWcgMQogICAgcHVzaGludCAzNAogICAgZXh0cmFjdF91aW50NjQKICAgIGludGNfMCAvLyAxCiAgICA9PQogICAgJiYKICAgIGRpZyAxCiAgICBwdXNoaW50IDQyCiAgICBleHRyYWN0X3VpbnQ2NAogICAgaW50Y18yIC8vIDEwCiAgICA9PQogICAgJiYKICAgIGRpZyAxCiAgICBwdXNoaW50IDUwCiAgICBleHRyYWN0X3VpbnQ2NAogICAgcHVzaGludCAzCiAgICA9PQogICAgJiYKICAgIGRpZyAxCiAgICBwdXNoaW50IDU4CiAgICBleHRyYWN0X3VpbnQ2NAogICAgaW50Y18xIC8vIDQKICAgID09CiAgICAmJgogICAgZGlnIDEKICAgIHB1c2hpbnQgNjYKICAgIGV4dHJhY3RfdWludDY0CiAgICBwdXNoaW50IDExCiAgICA9PQogICAgJiYKICAgIGRpZyAxCiAgICBwdXNoaW50IDc0CiAgICBleHRyYWN0X3VpbnQ2NAogICAgcHVzaGludCAxMgogICAgPT0KICAgICYmCiAgICBkaWcgMQogICAgcHVzaGludCA4MgogICAgZXh0cmFjdF91aW50NjQKICAgIHB1c2hpbnQgMTMKICAgID09CiAgICAmJgogICAgZGlnIDEKICAgIHB1c2hpbnQgOTAKICAgIGV4dHJhY3RfdWludDY0CiAgICBpbnRjXzAgLy8gMQogICAgPT0KICAgICYmCiAgICBkaWcgMQogICAgcHVzaGludCA5OAogICAgZXh0cmFjdF91aW50NjQKICAgIHB1c2hpbnQgMgogICAgPT0KICAgICYmCiAgICBkaWcgMQogICAgcHVzaGludCAxMDYKICAgIGV4dHJhY3RfdWludDY0CiAgICBwdXNoaW50IDMKICAgID09CiAgICAmJgogICAgZGlnIDEKICAgIHB1c2hpbnQgMTE0CiAgICBleHRyYWN0X3VpbnQ2NAogICAgaW50Y18xIC8vIDQKICAgID09CiAgICAmJgogICAgc3dhcAogICAgcHVzaGludCAxMjIKICAgIGV4dHJhY3RfdWludDY0CiAgICBwdXNoaW50IDUKICAgID09CiAgICAmJgogICAgYXNzZXJ0IC8vIGFzc2VydCB0YXJnZXQgaXMgbWF0Y2ggZm9yIGNvbmRpdGlvbnMKICAgIHN3YXAKICAgIC8vIHRlc3RzL2FwcHJvdmFscy9uYXRpdmUtYXJyYXlzLmFsZ28udHM6MTA0CiAgICAvLyBjb25zdCBhcnI4ID0gYXJyLmNvbmNhdChmQXJyMSkKICAgIGludGNfMSAvLyA0CiAgICArCiAgICBpdG9iCiAgICBleHRyYWN0IDYgMAogICAgdW5jb3ZlciAyCiAgICBzd2FwCiAgICByZXBsYWNlMiAwCiAgICBzd2FwCiAgICBjb25jYXQKICAgIC8vIHRlc3RzL2FwcHJvdmFscy9uYXRpdmUtYXJyYXlzLmFsZ28udHM6MTA1CiAgICAvLyBhc3NlcnQoYXJyOC5sZW5ndGggPT09IDE1KQogICAgZHVwCiAgICBpbnRjXzMgLy8gMAogICAgZXh0cmFjdF91aW50MTYgLy8gb24gZXJyb3I6IGludmFsaWQgYXJyYXkgbGVuZ3RoIGhlYWRlcgogICAgcHVzaGludCAxNQogICAgPT0KICAgIGR1cAogICAgYXNzZXJ0CiAgICAvLyB0ZXN0cy9hcHByb3ZhbHMvbmF0aXZlLWFycmF5cy5hbGdvLnRzOjEwNgogICAgLy8gYXNzZXJ0TWF0Y2goYXJyOCwgWzEsIDEwLCAzLCA0LCAxLCAxMCwgMywgNCwgMTEsIDEyLCAxMywgMCwgMCwgMCwgMF0pCiAgICBkaWcgMQogICAgcHVzaGludCAyCiAgICBleHRyYWN0X3VpbnQ2NAogICAgaW50Y18wIC8vIDEKICAgID09CiAgICAmJgogICAgZGlnIDEKICAgIGludGNfMiAvLyAxMAogICAgZXh0cmFjdF91aW50NjQKICAgIGludGNfMiAvLyAxMAogICAgPT0KICAgICYmCiAgICBkaWcgMQogICAgcHVzaGludCAxOAogICAgZXh0cmFjdF91aW50NjQKICAgIHB1c2hpbnQgMwogICAgPT0KICAgICYmCiAgICBkaWcgMQogICAgcHVzaGludCAyNgogICAgZXh0cmFjdF91aW50NjQKICAgIGludGNfMSAvLyA0CiAgICA9PQogICAgJiYKICAgIGRpZyAxCiAgICBwdXNoaW50IDM0CiAgICBleHRyYWN0X3VpbnQ2NAogICAgaW50Y18wIC8vIDEKICAgID09CiAgICAmJgogICAgZGlnIDEKICAgIHB1c2hpbnQgNDIKICAgIGV4dHJhY3RfdWludDY0CiAgICBpbnRjXzIgLy8gMTAKICAgID09CiAgICAmJgogICAgZGlnIDEKICAgIHB1c2hpbnQgNTAKICAgIGV4dHJhY3RfdWludDY0CiAgICBwdXNoaW50IDMKICAgID09CiAgICAmJgogICAgZGlnIDEKICAgIHB1c2hpbnQgNTgKICAgIGV4dHJhY3RfdWludDY0CiAgICBpbnRjXzEgLy8gNAogICAgPT0KICAgICYmCiAgICBkaWcgMQogICAgcHVzaGludCA2NgogICAgZXh0cmFjdF91aW50NjQKICAgIHB1c2hpbnQgMTEKICAgID09CiAgICAmJgogICAgZGlnIDEKICAgIHB1c2hpbnQgNzQKICAgIGV4dHJhY3RfdWludDY0CiAgICBwdXNoaW50IDEyCiAgICA9PQogICAgJiYKICAgIGRpZyAxCiAgICBwdXNoaW50IDgyCiAgICBleHRyYWN0X3VpbnQ2NAogICAgcHVzaGludCAxMwogICAgPT0KICAgICYmCiAgICBkaWcgMQogICAgcHVzaGludCA5MAogICAgZXh0cmFjdF91aW50NjQKICAgICEKICAgICYmCiAgICBkaWcgMQogICAgcHVzaGludCA5OAogICAgZXh0cmFjdF91aW50NjQKICAgICEKICAgICYmCiAgICBkaWcgMQogICAgcHVzaGludCAxMDYKICAgIGV4dHJhY3RfdWludDY0CiAgICAhCiAgICAmJgogICAgc3dhcAogICAgcHVzaGludCAxMTQKICAgIGV4dHJhY3RfdWludDY0CiAgICAhCiAgICAmJgogICAgYXNzZXJ0IC8vIGFzc2VydCB0YXJnZXQgaXMgbWF0Y2ggZm9yIGNvbmRpdGlvbnMKICAgIC8vIHRlc3RzL2FwcHJvdmFscy9uYXRpdmUtYXJyYXlzLmFsZ28udHM6NDIKICAgIC8vIGRvVGhpbmdzKCkgewogICAgaW50Y18wIC8vIDEKICAgIHJldHVybgoKCi8vIHRlc3RzL2FwcHJvdmFscy9uYXRpdmUtYXJyYXlzLmFsZ28udHM6Ok5hdGl2ZUFycmF5c0FsZ28uZml4ZWRBcnJheVtyb3V0aW5nXSgpIC0+IHZvaWQ6CmZpeGVkQXJyYXk6CiAgICAvLyB0ZXN0cy9hcHByb3ZhbHMvbmF0aXZlLWFycmF5cy5hbGdvLnRzOjEwOQogICAgLy8gZml4ZWRBcnJheSh5OiBGaXhlZEFycmF5PHVpbnQ2NCwgNTA+KSB7CiAgICB0eG5hIEFwcGxpY2F0aW9uQXJncyAxCiAgICBkdXAKICAgIGxlbgogICAgcHVzaGludCA0MDAKICAgID09CiAgICBhc3NlcnQgLy8gaW52YWxpZCBudW1iZXIgb2YgYnl0ZXMgZm9yIGFyYzQuc3RhdGljX2FycmF5PHVpbnQ2NCwgNTA+CiAgICAvLyB0ZXN0cy9hcHByb3ZhbHMvbmF0aXZlLWFycmF5cy5hbGdvLnRzOjExOQogICAgLy8gYXNzZXJ0KHhbMF0gPT09IHlbMF0pCiAgICBpbnRjXzMgLy8gMAogICAgZXh0cmFjdF91aW50NjQKICAgICEKICAgIGFzc2VydAogICAgLy8gdGVzdHMvYXBwcm92YWxzL25hdGl2ZS1hcnJheXMuYWxnby50czoxMDkKICAgIC8vIGZpeGVkQXJyYXkoeTogRml4ZWRBcnJheTx1aW50NjQsIDUwPikgewogICAgaW50Y18wIC8vIDEKICAgIHJldHVybgoKCi8vIHRlc3RzL2FwcHJvdmFscy9uYXRpdmUtYXJyYXlzLmFsZ28udHM6Ok5hdGl2ZUFycmF5c0FsZ28uc3RydWN0c1tyb3V0aW5nXSgpIC0+IHZvaWQ6CnN0cnVjdHM6CiAgICAvLyB0ZXN0cy9hcHByb3ZhbHMvbmF0aXZlLWFycmF5cy5hbGdvLnRzOjE3MAogICAgLy8gc3RydWN0cyh7IHgsIHkgfTogVmVjdG9yKSB7CiAgICB0eG5hIEFwcGxpY2F0aW9uQXJncyAxCiAgICBkdXAKICAgIGxlbgogICAgcHVzaGludCAxNgogICAgPT0KICAgIGFzc2VydCAvLyBpbnZhbGlkIG51bWJlciBvZiBieXRlcyBmb3IgdGVzdHMvYXBwcm92YWxzL25hdGl2ZS1hcnJheXMuYWxnby50czo6VmVjdG9yCiAgICBkdXAKICAgIGludGNfMyAvLyAwCiAgICBleHRyYWN0X3VpbnQ2NAogICAgc3dhcAogICAgcHVzaGludCA4CiAgICBleHRyYWN0X3VpbnQ2NAogICAgLy8gdGVzdHMvYXBwcm92YWxzL25hdGl2ZS1hcnJheXMuYWxnby50czoxNzMKICAgIC8vIG15VmVjdG9ycyA9IFt7IHgsIHkgfV0KICAgIGRpZyAxCiAgICBpdG9iCiAgICBkaWcgMQogICAgaXRvYgogICAgY29uY2F0CiAgICBwdXNoYnl0ZXMgMHgwMDAxCiAgICBzd2FwCiAgICBjb25jYXQKICAgIC8vIHRlc3RzL2FwcHJvdmFscy9uYXRpdmUtYXJyYXlzLmFsZ28udHM6MTc1CiAgICAvLyBhc3NlcnRNYXRjaChteVZlY3RvcnMsIFt7IHgsIHkgfV0pCiAgICBkdXAKICAgIGludGNfMyAvLyAwCiAgICBleHRyYWN0X3VpbnQxNiAvLyBvbiBlcnJvcjogaW52YWxpZCBhcnJheSBsZW5ndGggaGVhZGVyCiAgICBpbnRjXzAgLy8gMQogICAgPT0KICAgIGRpZyAxCiAgICBleHRyYWN0IDIgMTYKICAgIGR1cAogICAgaW50Y18zIC8vIDAKICAgIGV4dHJhY3RfdWludDY0CiAgICB1bmNvdmVyIDUKICAgID09CiAgICBzd2FwCiAgICBwdXNoaW50IDgKICAgIGV4dHJhY3RfdWludDY0CiAgICB1bmNvdmVyIDQKICAgID09CiAgICAmJgogICAgJiYKICAgIGFzc2VydCAvLyBhc3NlcnQgdGFyZ2V0IGlzIG1hdGNoIGZvciBjb25kaXRpb25zCiAgICAvLyB0ZXN0cy9hcHByb3ZhbHMvbmF0aXZlLWFycmF5cy5hbGdvLnRzOjE3MAogICAgLy8gc3RydWN0cyh7IHgsIHkgfTogVmVjdG9yKSB7CiAgICBwdXNoYnl0ZXMgMHgxNTFmN2M3NQogICAgc3dhcAogICAgY29uY2F0CiAgICBsb2cKICAgIGludGNfMCAvLyAxCiAgICByZXR1cm4KCgovLyB0ZXN0cy9hcHByb3ZhbHMvbmF0aXZlLWFycmF5cy5hbGdvLnRzOjpOYXRpdmVBcnJheXNBbGdvLmFsaWFzaW5nW3JvdXRpbmddKCkgLT4gdm9pZDoKYWxpYXNpbmc6CiAgICAvLyB0ZXN0cy9hcHByb3ZhbHMvbmF0aXZlLWFycmF5cy5hbGdvLnRzOjE5NQogICAgLy8gYWxpYXNpbmcobXV0YWJsZTogdWludDY0W10sIHJlYWRPbmx5OiByZWFkb25seSB1aW50NjRbXSkgewogICAgdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQogICAgZHVwCiAgICBpbnRjXzMgLy8gMAogICAgZXh0cmFjdF91aW50MTYgLy8gb24gZXJyb3I6IGludmFsaWQgYXJyYXkgbGVuZ3RoIGhlYWRlcgogICAgcHVzaGludCA4CiAgICAqCiAgICBwdXNoaW50IDIKICAgICsKICAgIGRpZyAxCiAgICBsZW4KICAgID09CiAgICBhc3NlcnQgLy8gaW52YWxpZCBudW1iZXIgb2YgYnl0ZXMgZm9yIGFyYzQuZHluYW1pY19hcnJheTx1aW50NjQ+CiAgICB0eG5hIEFwcGxpY2F0aW9uQXJncyAyCiAgICBkdXAKICAgIGludGNfMyAvLyAwCiAgICBleHRyYWN0X3VpbnQxNiAvLyBvbiBlcnJvcjogaW52YWxpZCBhcnJheSBsZW5ndGggaGVhZGVyCiAgICBwdXNoaW50IDgKICAgICoKICAgIHB1c2hpbnQgMgogICAgKwogICAgc3dhcAogICAgbGVuCiAgICA9PQogICAgYXNzZXJ0IC8vIGludmFsaWQgbnVtYmVyIG9mIGJ5dGVzIGZvciBhcmM0LmR5bmFtaWNfYXJyYXk8dWludDY0PgogICAgLy8gdGVzdHMvYXBwcm92YWxzL25hdGl2ZS1hcnJheXMuYWxnby50czoyMDYKICAgIC8vIG11dGFibGVbMV0gKz0gMgogICAgZHVwCiAgICBpbnRjXzIgLy8gMTAKICAgIGV4dHJhY3RfdWludDY0CiAgICBkdXAKICAgIHB1c2hpbnQgMgogICAgKwogICAgaXRvYgogICAgdW5jb3ZlciAyCiAgICBzd2FwCiAgICByZXBsYWNlMiAxMCAvLyBvbiBlcnJvcjogaW5kZXggYWNjZXNzIGlzIG91dCBvZiBib3VuZHMKICAgIGludGNfMiAvLyAxMAogICAgLy8gdGVzdHMvYXBwcm92YWxzL25hdGl2ZS1hcnJheXMuYWxnby50czoyMDgKICAgIC8vIGFzc2VydChtdXRhYmxlWzFdICE9PSBuZWVkQ2xvbmUyWzFdLCAnVGhlc2Ugc2hvdWxkIG5vdCBtYXRjaCcpCiAgICBleHRyYWN0X3VpbnQ2NAogICAgIT0KICAgIGFzc2VydCAvLyBUaGVzZSBzaG91bGQgbm90IG1hdGNoCiAgICAvLyB0ZXN0cy9hcHByb3ZhbHMvbmF0aXZlLWFycmF5cy5hbGdvLnRzOjE5NQogICAgLy8gYWxpYXNpbmcobXV0YWJsZTogdWludDY0W10sIHJlYWRPbmx5OiByZWFkb25seSB1aW50NjRbXSkgewogICAgaW50Y18wIC8vIDEKICAgIHJldHVybgoKCi8vIHRlc3RzL2FwcHJvdmFscy9uYXRpdmUtYXJyYXlzLmFsZ28udHM6Ok5hdGl2ZUFycmF5c0FsZ28ucmVjZWl2ZU11dGFibGVbcm91dGluZ10oKSAtPiB2b2lkOgpyZWNlaXZlTXV0YWJsZToKICAgIC8vIHRlc3RzL2FwcHJvdmFscy9uYXRpdmUtYXJyYXlzLmFsZ28udHM6MjIxCiAgICAvLyByZWNlaXZlTXV0YWJsZShhOiB1aW50NjRbXSkgewogICAgdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQogICAgZHVwCiAgICBpbnRjXzMgLy8gMAogICAgZXh0cmFjdF91aW50MTYgLy8gb24gZXJyb3I6IGludmFsaWQgYXJyYXkgbGVuZ3RoIGhlYWRlcgogICAgcHVzaGludCA4CiAgICAqCiAgICBwdXNoaW50IDIKICAgICsKICAgIHN3YXAKICAgIGxlbgogICAgPT0KICAgIGFzc2VydCAvLyBpbnZhbGlkIG51bWJlciBvZiBieXRlcyBmb3IgYXJjNC5keW5hbWljX2FycmF5PHVpbnQ2ND4KICAgIGludGNfMCAvLyAxCiAgICByZXR1cm4KCgovLyB0ZXN0cy9hcHByb3ZhbHMvbmF0aXZlLWFycmF5cy5hbGdvLnRzOjpOYXRpdmVBcnJheXNBbGdvLnJlY2VpdmVSZWFkb25seVtyb3V0aW5nXSgpIC0+IHZvaWQ6CnJlY2VpdmVSZWFkb25seToKICAgIC8vIHRlc3RzL2FwcHJvdmFscy9uYXRpdmUtYXJyYXlzLmFsZ28udHM6MjI1CiAgICAvLyByZWNlaXZlUmVhZG9ubHkoYTogcmVhZG9ubHkgdWludDY0W10pIHt9CiAgICB0eG5hIEFwcGxpY2F0aW9uQXJncyAxCiAgICBkdXAKICAgIGludGNfMyAvLyAwCiAgICBleHRyYWN0X3VpbnQxNiAvLyBvbiBlcnJvcjogaW52YWxpZCBhcnJheSBsZW5ndGggaGVhZGVyCiAgICBwdXNoaW50IDgKICAgICoKICAgIHB1c2hpbnQgMgogICAgKwogICAgc3dhcAogICAgbGVuCiAgICA9PQogICAgYXNzZXJ0IC8vIGludmFsaWQgbnVtYmVyIG9mIGJ5dGVzIGZvciBhcmM0LmR5bmFtaWNfYXJyYXk8dWludDY0PgogICAgaW50Y18wIC8vIDEKICAgIHJldHVybgo=", "clear": "I3ByYWdtYSB2ZXJzaW9uIDExCiNwcmFnbWEgdHlwZXRyYWNrIGZhbHNlCgovLyBAYWxnb3JhbmRmb3VuZGF0aW9uL2FsZ29yYW5kLXR5cGVzY3JpcHQvYmFzZS1jb250cmFjdC5kLnRzOjpCYXNlQ29udHJhY3QuY2xlYXJTdGF0ZVByb2dyYW0oKSAtPiB1aW50NjQ6Cm1haW46CiAgICBwdXNoaW50IDEKICAgIHJldHVybgo=" }, "byteCode": { "approval": "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", "clear": "C4EBQw==" }, "compilerInfo": { "compiler": "puya", "compilerVersion": { "major": 5, "minor": 10, "patch": 0 } }, "events": [], "templateVariables": {} }